Разработка прототипа ядра микроЭВМ

Методы проектирования аппаратных средств вычислительной техники. Этапы разработки прототипа ядра микроЭВМ на элементной базе с обеспечением максимальной надежности. Структура ядра, его функциональные элементы. Процесс формирования формата микрокоманды.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 23.09.2013
Размер файла 724,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

41

Содержание

  • Введение
  • 1. Цели работы
  • 2. Цель проектирования
  • 3. Исходные данные
  • 3.1 Общие исходные данные
  • 3.2 Индивидуальные исходные данные
  • 4. Форматы машинных команд
  • 4.1 Команда типа регистр - регистр
  • 4.2 Команда типа регистр - память
  • 4.3 Команда типа регистр - индексируемая память
  • 4.4 Команда типа регистр-память (непосредственный адрес)
  • 4.5 Команда типа память-память
  • 4.6 Команда типа регистр - память - непосредственные данные
  • 4.7 Команда безусловного перехода
  • 5. Форматы данных
  • 6. Разработка операционного блока микропроцессора
  • 6.1 Структурное описание ОБ
  • 6.2 Описание компонентов операционного блока
  • 6.2.1 Центральный процессорный элемент (ЦПЭ) Am29332
  • 6.2.2 Регистровый файл Am29334
  • 6.2.3 Буферные регистры (SN54ABTH32543)
  • 6.2.4 Мультиплексоры выбора условий
  • 6.2.5 Устройство контроля паритета
  • 6.3 Описание работы ОБ
  • 6.4 Функциональная схема ОБ
  • 6.5 Расчет минимальной длительности цикла ОБ
  • 7. Разработка микропрограммного устройства управления (МУУ)
  • 7.1 Структурное описание МУУ
  • 7.2 Описание компонентов МУУ
  • 7.2.1 Секвенсер микрокоманд (СКМ) Am29331
  • 7.2.2 Регистр команд (SN74LVC32374A)
  • 7.2.3 Преобразователь начального адреса (ПНА)
  • 7.2.4 Микропрограммная память (МПП)
  • 7.2.5 Конвеерный регистр (Регистр микрокоманд)
  • 7.2.6 Буферные регистры
  • 7.2.7 Устройство контроля паритета
  • 7.2.8 Генератор паритетных битов
  • 7.3 Описание работы МУУ
  • 7.4 Функциональная схема МУУ
  • 7.5 Расчет минимальной длительности цикла МУУ
  • 8. Разработка основной памяти
  • 8.1 Выбор микросхем памяти и компоновка блока
  • 8.2 Карта памяти
  • 8.3 Описание работы
  • 8.4 Функциональная схема основной памяти
  • 8.5 Расчет длительности цикла основной памяти
  • 9. Начальная установка
  • 10. Блок синхронизации
  • 11. Разработка формата микрокоманды
  • 12. Заключение
  • 13. Список используемой литературы

Введение

Курсовой проект направлен на достижение нескольких целей:

· В освоении элементов методологии проектирования аппаратных средств вычислительной техники;

· В приобретение практического опыта разработки функциональных устройств и узлов, выполнения схемотехнических расчётов и оформления схемной документации;

· В закреплении и углублении знаний о современной элементной базе.

Разработка прототипа ядра микроЭВМ состоит из нескольких этапов. На начальном этапе, после получения технического задания, ведётся определение недостающих данных. На следующем этапе идёт разработка структуры ядра, определяются его основные функциональные элементы. В дальнейшем производится понижении уровня иерархии. Рассматривается отдельно каждый из составных элементов. Одновременно с этим идёт процесс формирования формата микрокоманды. После разработки составных частей ядра идёт расчёт длительности цикла, и на финальном уровне строятся временные диаграммы, отражающие работу полученного прототипа.

В ходе данной работы будут закреплены знания в области проектирования микросхем и в частности ядра микроЭВМ

1. Цели работы

Цели данного курсового проекта заключаются в следующем:

· закрепить сведения о методах проектирования аппаратных средств вычислительной техники;

· лучше узнать элементную базу;

· приобрести практический опыт разработки функциональных устройств;

· укрепить свои знания и умения в области схемотехнических решений.

2. Цель проектирования

Целью проектирования данного курсового проекта является разработка прототипа ядра микроЭВМ на заданной элементной базе с обеспечением максимальной надежности, простотой схемных решений, а также, по возможности, достижением максимального быстродействия. Под надёжностью понимается отсутствие в схемах критических временных соотношений, риска сбоя и гонок сигналов.

ядро микрокоманда прототип формат

3. Исходные данные

3.1 Общие исходные данные

В состав разрабатываемого объекта входят: микропрограммируемый микропроцессор, запоминающие устройства (память), реализующие функции основной памяти, средства интерфейса, обеспечивающие информационную и электрическую совместимость процессора и памяти, и блок синхронизации.

Интерфейс реализуется на основе магистрали и логических (функциональных) узлов, являющихся составной частью процессора и/или других элементов ядра. Прототип ядра микроЭВМ должен соответствовать следующим требованиям к его характеристикам и параметрам:

· система команд - гипотетическая. Форматы команд: одно-, двухадресные и безадресные. Допускается детализация структуры ядра только для одно - и двухадресного форматов команд;

· количество программно-доступных регистров общего назначения - не менее 8;

· формат представления данных в процессоре - с фиксированной точкой целочисленный в дополнительном коде и с разрядностью слова, определяемой индивидуальными исходными данными;

· минимально доступный элемент данных памяти, непосредственно адресуемой процессором, - слово;

· разрядность адреса памяти равна разрядности данных;

· структура магистрали - трехшинная;

· обмен данными процессор - память - синхронный без квитирования;

· процессор должен быть оснащен схемными средствами поддержки начальной установки при включении и возобновлении (после сбоев) питания.

3.2 Индивидуальные исходные данные

3.2.1 Состав, элементная база и разрядность операционного блока:

Процессорный модуль: Am29332

Регистровый файл Am29334

Разрядность ПМ: 32 бит

3.2.2 Требования к микропрограммному устройству управления:

Секвенсор микрокоманд (SEQ МК): Am29331

Разрядность адреса секвенсора МК: 16 бит

Ёмкость микропрограммной памяти (МПП): 8 Кслов с контролем паритета

3.2.3 Емкость основной памяти:

SRAM (8KB)

PROM (16KB)

4. Форматы машинных команд

Команда должна размещаться в основной памяти и состоит из одного или из двух 32-тиразрядных слов

В 32-ти разрядной команде в поле команды, занимающей крайние левые байты, находится код операции (КОП), он позволяет представить 256 основных команд.

За ним, в зависимости от операции могут находиться поля адреса для регистров или для памяти, причем для выбора РОН (регистров общего назначения) выделено 6 бит, так как регистровый файл Am29334 может хранить до 64 слов. Для адреса ячейки памяти выделено 13 бит.

В команде из двух слов (64-разрядной) первое слово по формату соответствует 32-тиразрядной команде. Второе слово представляет собой 32-разрядную величину, представляющую собой либо данные, либо адрес ячейки памяти.

Формат 32-х разрядной команды:

КОП

R1

R2

31 24

23 18

17 12

11 0

Формат 64-х разрядной команды:

КОП

R1

R2

31 24

23 18

17 12

11 0

I

31 0

4.1 Команда типа регистр - регистр

КОП

R1

R2

31 24

23 18

17 12

11 0

При выполнении команды содержимое выполняется операция над содержимым РОН R1 и R2. Результат заносится в регистр R2. Последние 12 бит остаются незадействованными.

КОП - код операции

R1 - регистр источник

R2 - регистр источник/приёмник.

4.2 Команда типа регистр - память

КОП

R1

X2

31 24

23 18

17 12

11 0

При выполнении команды данного формата, которые используют и РОН, и память в битах 23-18 содержится адрес регистра, в следующих 6 (17-12) - адрес регистра общего назначения, содержащего адрес ячейки памяти.

КОП - код операции

R1 - регистр источник/приемник

X2 - регистр приемник/источник, содержащий адрес ячейки памяти

4.3 Команда типа регистр - индексируемая память

КОП

R1

X2

d

31 24

23 18

17 12

11 0

При выполнении команды данного формата, которые используют и РОН, и память в битах 23-18 содержится адрес регистра, в следующих 6 (17-12) - адрес регистра общего назначения, содержащего адрес ячейки памяти. Остальные биты указывают смещение относительно регистра X2

КОП - код операции

R1 - регистр источник/приемник

X2 - регистр, содержащий адрес ячейки памяти приемника/источника

d - смещение относительно адреса, содержащегося в X2

4.4 Команда типа регистр-память (непосредственный адрес)

КОП

R1

A

31 24

23 18

17 5

4 0

При выполнении команды данного формата, которые используют и РОН, и память в битах 23-18 содержится адрес регистра, в следующих 13 - адрес ячейки памяти.

КОП - код операции

R1 - регистр источник/приемник

A - адрес ячейки памяти приёмника/источника.

4.5 Команда типа память-память

КОП

X1

X2

31 24

23 18

17 12

11 0

При выполнении команды данного формата биты 23-18 и следующие 6 указывают на регистры, содержащие адреса ячеек памяти.

КОП - код операции

X1 - регистр, содержащий адрес ячейки памяти

X2 - регистр, содержащий адрес ячейки памяти

4.6 Команда типа регистр - память - непосредственные данные

1 слово:

КОП

R1

X2

31 24

23 18

17 12

11 0

2 слово:

I

31 0

При выполнении команды данного формата в битах 23-18 содержится адрес регистра, в следующих 6 (17-12) - адрес регистра общего назначения, содержащего адрес ячейки памяти, во втором слове содержатся непосредственные данные.

КОП - код операции

R1 - регистр источник/приемник

X2 - регистр приемник/источник, содержащий адрес ячейки памяти

I - непосредственные данные

4.7 Команда безусловного перехода

КОП

X2

d

31 24

23 18

17 12

11 0

При выполнении команды данного формата биты 23-18 содержат адрес.

При выполнении команды данного формата биты 23-18 содержат адрес ячейки, на которую указывает содержимое регистра X2 либо непосредственно, либо со смещением d.

КОП - код операции

X2 - регистр, содержащий адрес ячейки памяти

d - смещение.

5. Форматы данных

В процессоре данные представляются следующими форматами: целые двоичные, двоично-кодированные десятичные (ВСD), битовые поля переменной ширины (разрядности).

6. Разработка операционного блока микропроцессора

6.1 Структурное описание ОБ

В общем случае в операционном блоке (ОБ) МП можно выделить следующие устройства:

центральный процессорный элемент (ЦПЭ), предназначенный для преобразования операндов и адресации памяти;

файл регистров общего назначения, необходимый для оперативного хранения адресов и данных;

блок статусного регистра для временного хранения признаков АЛУ, возможно, для формирования композитных признаков и выполнения логических операций над словом/битами признаков;

средства интерфейса, обеспечивающие взаимодействие ОБ с системной магистралью.

6.2 Описание компонентов операционного блока

6.2.1 Центральный процессорный элемент (ЦПЭ) Am29332

СБИС Am29332 представляет собой нерасширяемый 32-разрядный центральный процессорный модуль. Содержит трехвходовое комбинационное АЛУ. Поддерживает 80-90 нс микроцикл для 32 - разрядных устройств, время цикла для всех инструкций одинаковое. Имеет два входных и один выходной порты данных, обеспечивающие возможность компоновки параллельных или магистральных структур. Регистровый файл отделен от ЦПЭ и выполнен в виде автономного прибора (Am29334). Внутренний 64-разрядный групповой сдвигатель выполняет сдвиг влево, вправо или циклический на заданное число разрядов в одном цикле. Поддерживает 1-, 2-, 3 - и 4-байтовые форматы данных для всех операций и битовые поля переменной длины для логических операций. Оснащён встроенными схемными средствами выполнения многотактных операций (умножения - по модифицированному алгоритму Бута и деления по алгоритму без восстановления остатка). Имеет развитые встроенные средства контроля ошибок.

Большинство входов ЦПЭ контролируются битами микрокоманды, вход SLAVE не используется.

6.2.2 Регистровый файл Am29334

Аm29334 представляет собой 4-портовую регистровую память с двухсторонним доступом с организацией (64x18) бит. Имеет два порта записи и два порта считывания для данных и четыре 6-битовых адресных порта. Пара адресных портов (один для записи и один для чтения) связана с соответствующей парой портов записи и чтения данных. Многопортовая организация и развитое управление прибора позволяет выполнять два чтения и две записи за один цикл. Разрядность регистрового файла позволяет сохранять контрольные биты, сопровождающие два информационных байта, и поддерживает контроль и генерацию паритета в АЛУ Аm29332.

Применяются в качестве высокоскоростной совместно используемой памяти для СБИС семейства Аm29300 или как почтовый ящик в мультипроцессорной системе.

Имеет время доступа 24 нс.

Так как нет необходимости использовать функцию записи в нижние и верхние биты входы Wl, Wh и Wc объединены.

Для обеспечения необходимой разрядности - 32бита используется 2 Am29334, соединенных параллельно.

Рис. 1 32-х разрядный регистровый файл.

6.2.3 Буферные регистры (SN54ABTH32543)

В качестве буферных 36-разрядных тристабильных регистров, используемых для ввода и вывода данных выбраны регистры SN54ABTH32543 фирмы Texas Instruments. Управление состоянием выходной шины регистров осуществляется из микрокоманды. 36-разряда позволяет использовать 4 бита для контроля паритета 32-х разрядных данных.

Для вывода адреса используется микросхема CY74FCT16373T (16-разрядный регистр), на ее входы поступают только входы адреса, без паритетные битов.

Управление регистрами осуществляется соответствующими битами микрокоманды.

6.2.4 Мультиплексоры выбора условий

Для выбора адреса РОН (из регистра команд или регистра микрокоманд) используется 6-битный мультиплексор, построенный из 2-х 4-битных SN54AHCT157 (два входа не используются).

Для выбора ввода данных из микрокоманды или с шины данных, а также для выбора вывода из регистра или из АЛУ используются 36-ти битные мультиплексоры, построенные из двух 16-х битных (SN74CBT16233) и одного 4-х битного (SN54AHCT157) мультиплексоров.

Управление входом A#/B осуществляется битами, поступающими из регистра микрокоманд.

На рисунках 1 и 2 представлены функциональные схемы используемых мультиплексоров.

Рис. 2 6-ти битный мультиплексор.

Рис. 3 36-ти битный мультиплексор.

6.2.5 Устройство контроля паритета

Для проверки данных (поступивших из шины данных или из микрокоманды) используется контроль четности, для этого было выбрано устройство контроля паритета DM93S62. Так как необходим контроль паритета для 32-х битных данных, нужное нам устройство компонуется из 4-х DM93S62 и элемента И-НЕ SN54HC20.

Рис. 4 36-ти битное устройство контроля паритета.

Примечание к Рис.4: Каждый крайний бит (Y8,Y17,Y26 и Y35) - паритетный бит.

6.3 Описание работы ОБ

Когда начинается новый цикл биты микрокоманды из локальной шины CPUB поступают на АЛУ, РФ, регистры и мультиплексоры. Если задействован регистр входных данных, то в него помещаются, либо данные с шины DB, либо данные из микрокоманды и поступают на входную шину Da регистрового файла. Эти данные могут быть записаны в регистровый файл при соответствующих битах микрокоманды. Чтение и запись в регистровый файл производится по 6-ти разрядным адресам, которые берутся, либо из соответствующего поля регистра команд, либо из МК. Регистровым файлом обеспечивается чтение данных по выходной шине РФ Ya при записи по адресу Aa. По шине Db регистрового файла в начале цикла либо происходит чтение по адресу, который также может браться из МК или регистра команд, либо происходит запись из выходного регистра. Выходные шины Da и Db регистрового файла управляются из МК. МК.

Необходимые данные, прочитанные из регистрового файла по шинам Da и Db поступают на АЛУ. В зависимости от поступивших инструкций на входы управления АЛУ, над этими данными производится нужная операция, результат которой будет выдан на Y-шину. Результат с Y-шины в конце текущего цикла можно поместить в регистр адреса памяти и выдать его на адресную шину в начале следующего цикла (используются 13 младших разрядов), в регистр выходных данных и выдать его на шину данных в начале следующего цикла или поместить в регистровый файл по шине Db.

Данные из регистра микрокоманд и регистра команд поступают на ОБ из МУУ через внутреннюю шину микропроцессора (CPUB). Сигналы ошибки при проверке на четность выводятся на шину управления CB.

6.4 Функциональная схема ОБ

6.5 Расчет минимальной длительности цикла ОБ

Рассмотрим несколько вариантов путей прохождения сигнала в ОБ:

Путь 1:

RMk (от С) > MUX2 > RF > ALU > t предустановки для признаков состояния

RMk (от С) - 7.9ns

MUX1 (от данных) - 9.5ns

RF (от A) - 24ns

ALU (от D до признаков C, Z, V, N, L) - 45ns

tпред - 25ns

7.9ns + 9.5ns + 24ns + 45ns + 25ns = 111.4ns

Путь 2:

RMk (от С) > RG1 (входной) > MUX1 > RF > ALU > MUX4 > RGout (t предустановки)

RMk (от С) - 7.9ns

RG1 (входной от Mk) - 7.9ns

MUX1 (от данных) - 9.5ns

RF (от D) - 33ns

ALU (от D до Y) - 42ns

MUX4 (от Y) - 9.5ns

RGout (t предустановки) - 2.6ns

7.9ns + 7.9ns + 9.5ns + 24ns + 35ns + 9.5ns + 2.6ns = 112.4ns

Путь 3:

RMk (от С) > RG1 (входной) > MUX1 > RF > ALU > t пред для признаков состояния

RMk (от С) - 7.9ns

RG1 (входной от Mk) - 7.9ns

MUX1 (от данных) - 9.5ns

RF (от D) - 33ns

ALU (от D до признаков C, Z, V, N, L) - 43ns

tпред - 25ns

7.9ns + 7.9ns + 9.5ns + 24ns + 35ns + 9.5ns + 2.6ns = 126.3ns

Самым длинным оказался путь 3 - минимальная длительность цикла ОБ = 126.3ns.

7. Разработка микропрограммного устройства управления (МУУ)

7.1 Структурное описание МУУ

Микропрограммное устройство управления (МУУ) объединяет в себе регистр команд и средства формирования микрокоманд (МК) - преобразователь начальных адресов (ПНА), секвенсер МК, микропрограммную память (ROM), конвейерный регистр и средства интерфейса.

7.2 Описание компонентов МУУ

7.2.1 Секвенсер микрокоманд (СКМ) Am29331

БИС имеет фиксированную разрядность 16 бит, объём адресуемой памяти микропрограмм до 64К слов. Поддерживает 80-90 нс микроцикл для высокопроизводительных 32-разрядных систем, построенных из приборов семейства Аm29300/Am29C300. Поддерживает прерывания реального времени на макро - и микроуровнях управления с временем реакции, не превышающем длительность микроцикла. Обладает встроенной логикой тестирования входных условий, а также встроенной логикой обнаружения контрольной точки в микрокоде для отладки микропрограмм и накопления статистики. Обеспечивает контроль ошибок в режиме "ведущий-ведомый”. Содержит 33-уровневый стек для организации вложенных прерываний, циклов и подпрограмм.

16-ти разрядный позволяет адресовать 64Kслов, но так как нам необходимо реализовать МПП с объемом 8Kслов 3 последних разряда останутся неиспользованными.

В данной работе нет необходимости реализовывать прерывания, использовать режим секвенсора Master/Slave и HOLD, поэтому соответствующие входы следует заземлить.

7.2.2 Регистр команд (SN74LVC32374A)

Так как мы работаем с 32-х разрядными командами, в качестве регистра команд был выбран 32-х битный регистр SN74LVC32374A фирмы Texas Instruments.

В регистр команд по шине данных поступает 32-х разрядная команда, которая при соответствующем бите микрокоманды выводится на локальную шину данных (CPUB) и на ПНА.

Регистр команд хранит текущую программу на всем протяжении ее выполнения, до поступления следующей (контроль записи также осуществляется микрокомандой).

7.2.3 Преобразователь начального адреса (ПНА)

Поскольку под код операции в машинной команде отведено 8 разрядов, а требуемая разрядность МПП 8Kслов (для адресации требуется 13 бит), то в качестве ПНА требуется PROM с организацией 256x13. Для обеспечения разрядности 13 используем две микросхемы CY7C281A с разрядностью 8 бит, неиспользуемые разряды могут быть зарезервированы для расширения МПП до большего количества слов, оставшийся объем дает возможность расширить количество операций.

7.2.4 Микропрограммная память (МПП)

В качестве МПП используется память типа PROM с заданной емкостью (8Кслов), ее разрядность определяется разрядностью микрокоманды и равна 111 битам. PROM такой организации не существует, так что мы используем 14 микросхем CY7C266 (8kx8), соединенных последовательно (на адресный вход всех 8 микросхем поступает один и тот же адрес) последний разряд не используем.

7.2.5 Конвеерный регистр (Регистр микрокоманд)

Так как в микрокоманде 13 последних битов используется только для контроля паритета МПП, которые не поступают в регистр, то разрядность регистра микрокоманд должна быть равна 98 битам. Для реализации используем 3 36-ти битных регистра SN54ABTH32543 фирмы Texas Instruments.

Рис. 6 Конвеерный регистр

7.2.6 Буферные регистры

В качестве буферных 16-разрядных регистров, используемых для вывода из регистра команд на шины AB и DB выбраны регистры CY74FCT16373T фирмы Texas Instruments. Управление состоянием выходной шины регистров осуществляется из микрокоманды.

7.2.7 Устройство контроля паритета

Для проверки данных поступивших из МПП используется контроль четности, для этого было выбрано устройство контроля паритета DM93S62. Так как необходим контроль паритета для 111-х битных данных (где последние 13 бит это паритетные биты), нужное нам устройство компонуется на подобии устройства контроля паритета для ОБ из 13-ти DM93S62, 12-ти входового элемента И-НЕ SN54S134 и элемента ИЛИ.

7.2.8 Генератор паритетных битов

Для генерации паритетных битов для 32-х разрядных данных, поступивших из МПП было выбрано устройство контроля/генерации паритета DM93S62. Так как необходим контроль паритета для 32-х битных данных нужное нам устройство компонуется из 4-х DM93S62 (на входы I8 каждой микросхемы подаётся 0). На выходе на выходную шину PY [0-3] поступают паритетные биты (н. п. PY [0] - бит, в сумме с которым младший байт данных дает четное число).

Рис. 7 Генератор паритетных битов

7.3 Описание работы МУУ

В начале цикла команда (если разрешено чтение команды битом микрокоманды) считывается с шины данных в регистр команд. Старшие 8 бит команды являются кодом операции, выполняемой процессором. Эти биты поступают на ПНА. Следующие биты поступают в буферные регистры, для дальнейшей передачи на AB или DB и на локальную шину данных CPUB (Причем для данных, предназначенных для записи в РФ генерируются паритетные биты).

ПНА преобразует код операции в начальный адрес команды (адрес первой микрокоманды в МПП) и передается на шину A секвенсера. Секвенсер обрабатывает полученный адрес (программирование секвенсора ведется из микрокоманды) и вырабатывает адрес следующей микрокоманды.

По адресу, полученному из секвенсера из микропрограммной памяти читается следующая микрокоманда и записывается в конвеерный регистр, из которого часть битов идёт на шину управления, локальную шину (к ОБ), а вторая часть задает инструкции и адрес для следующей микрокоманды.

На выходе из МПП микрокоманда проверяется на четность, сигнал ошибки поступает на CB.

7.4 Функциональная схема МУУ

7.5 Расчет минимальной длительности цикла МУУ

Рассмотрим несколько вариантов путей прохождения сигнала в МУУ

Путь 1:

RK (от С) > ПНА > СМК > МПП > t предустановки для RMk

RK (от С) - 6.5ns

ПНА (от адреса) - 25ns

СМК (от A) - 19ns

МПП (от адреса) - 20ns

tпред - 2.6ns

6.5ns + 25ns + 19ns +20ns + 2.6ns = 73.1ns

Путь 2:

RMk (от С) > СМК > МПП > t предустановки для RMk

RMk (от С) - 7.9ns

СМК (от D) - 19ns

МПП (от адреса) - 20ns

tпред (от D) - 2.6ns

7.9ns + 19ns + 20ns + 2.6ns = 49.5ns

Самым длинным оказался путь 1 - минимальная длительность цикла МУУ = 73.1ns.

8. Разработка основной памяти

8.1 Выбор микросхем памяти и компоновка блока

Выбор микросхем памяти производился по заданной информационной емкости (8KB для SRAM и 16KB для PROM) и времени обращения.

Так как по временному критерию зарубежные схемы гораздо быстрее, будем использовать их. В следствии того, что мы работаем с 32-х разрядными данными, необходимым объемом памяти будут обладать SRAM 2K X 32 и PROM 4K X 32.

Учитывая вышеприведенные требования к памяти были выбраны следующие микросхемы:

SRAM CY7C133 и CY7C143 (каждая имеет организацию 2K X 16). Данные микросхемы специально созданы для 32-х разрядных данных, в этом случае CY7C133 работает в режиме MASTER, а CY7C143 - в режиме SLAVE.

PROM MR27V3202F с организацией 4K X 8. Данная организация позволяет получить требуемую разрядность параллельно соединив 4 микросхемы.

8.2 Карта памяти

Адресация памяти организована по шине АВ. Выбор ПЗУ-ОЗУ осуществляется с помощью адресного селектора (4-х битный мультиплексор 2->1), который декодирует старший (13-й) бит с шины адреса. Если старший бит = 0, то идет адресация в PROM, если = 1 то в SRAM. Адресная карта памяти приведена на рис.8.

0xxxxxxxxxxxxx (полностью используются 12 разрядов адреса)

PROM

10xxxxxxxxxxxx (полностью используются 11 разрядов адреса)

SRAM

11xxxxxxxxxxxx (остается возможность адресовать еще 2Kслов)

Не используется

Рис. 9. Карта памяти.

За обращением к адресам неиспользуемого адресного пространства контроль не ведется, за этим должен следит пользователь. Таким образом, микросхемы памяти SRAM и EPROM работают в взаимоисключающем режиме.

Все операции с памятью происходят с активной микрокомандой MEM#=1 (Мk [48]). Управление чтением/записью SRAM осуществляется микрокомандой : 1 - чтение / 0 - запись (МК 49).

Доступ к обоим типам памяти асинхронный.

8.3 Описание работы

Функциональная схема памяти содержит: микросхемы памяти, адресный селектор (SN54AHCT157), буферный регистр адреса (16-ти разрядныйCY74FCT16373T) и трансивер (36-ти разрядный SN54ABTH32245 (еще 4 бита для передачи битов паритета)). В ней можно выделить следующие основные элементы: буферы адреса и данных, адресный селектор и собственно сами модули памяти.

Для проверки полученных из шины D данных, а также для генерации паритетных битов, прочтенных из памяти, используются устройства проверки паритета и генератор паритета, рассмотренные выше.

Подробная документация используемых микросхем находятся в приложении.

Если нет обращений к памяти (MEM#=1), то адресный селектор, трансивер и регистр переводятся в Z-состояние, исключая тем самым возможные конфликты на шинах DB и AB, если обращение к памяти есть (MEM#=0), то микросхемы буферов и адресный селектор переводятся в активное состояние, и осуществляется обмен данными. С шины AB поступает адрес на буферный регистр. Затем этот адрес идет на модули памяти (PROM использует 12 бит, а SRAM - 11 бит этого адреса). Загрузка адреса производится в один либо в ОЗУ либо ПЗУ. Выбор модуля, который будет использоваться, определяет адресный селектор, на вход которого подается 13-ый бит с шины AB и 49-ый бит микрокоманды, задающий режим чтения/записи для SRAM. Если требуется обращение к PROM, то на вход A#/B селектора нужно подать 0: выход Y1 передаст 0 на вход OE# PROM и разрешит чтение из него, выход Y3 же подаст 1 на SRAM (работа запрещена). Аналогичным образом выполняется обращение к SRAM (Y4 отвечает за передачу сигнала R/W#).

При обращении к SRAM направление передачи трансивера регулируется сигналом R/W#, при обращении к PROM на вход DIR подается 1 (вывод).

8.4 Функциональная схема основной памяти

8.5 Расчет длительности цикла основной памяти

Рассмотрим несколько вариантов путей прохождения сигнала в основной памяти:

Путь 1:

RMk (от С) > AS (Адресный селектор от Mk) > Чтение из ОЗУ > Передача по трансиверу

RMk (от С) - 7.9ns

AS - 10ns

PROM - 90ns

TR - 8.2ns

7.9ns + 10ns + 8.2ns +90ns = 116.1ns

Путь 2:

RMk (от С) > AS (Адресный селектор от Mk) > Передача по трансиверу > Запись в ОЗУ RMk (от С) - 7.9ns

AS - 10ns

TR - 8.2ns

SRAM - 25ns

7.9ns + 10ns + 8.2ns +25ns = 51.1ns

Самым длинным оказался путь 1 - минимальная длительность цикла ОБ = 73.1ns.

9. Начальная установка

При включении питания, необходимо установить секвенсор по нулевому адресу. Осуществляется путем подачи сигнала RST# секвенсора. Схема начальной установки выполнена с применением микросхемы LM8364 фирмы National Semiconductor. Микросхема LM8364 предназначена для выработки асинхронного сигнала RESET#.

Производитель не рекомендует делать время начальной установки схемы менее 300мкс.

Рис 11. Схема начальной установки.

10. Блок синхронизации

Используя полученные данные о минимальной длительности цикла работы микропроцессора приступим к разработке блока синхронизации (БС).

Блок синхронизации формирует тактовые импульсы определённой частоты, подаваемые на тактовые входы элементов разработанного микропроцессора.

Определим необходимую частоту тактовых импульсов.

Ранее определили, что время цикла равно tц=126.3ns. Откуда получаем частота сигналов:

.

Свой выбор остановим на микросхеме фирмы CYPRESS - CY22150. Выбранная микросхема представляет собой программируемый частотный генератор. Данная ИМС позволяет получить выходной сигнал необходимой частоты при напряжении питания 5 В, что полностью удовлетворяет нашим требованиям. Документация приведена в приложении.

11. Разработка формата микрокоманды

Поле МК

Биты МК

Бит

Наименование поля

Описание

Операционный блок

АЛУ Am29332

1

0 - 8

9

I8…0

Микроинструкции определяющие выполняемую операцию

2

9

1

BR

Вход заёма

3

10

1

OEY#

Вход разрешения вывода данных c Y - шины МПС (активный L уровень)

4

11

1

HOLD

Вход сохранения статусного и Q-регистра

5

12

1

RS

Селекторный вход, идет выбор признаков либо из статусного регистра, либо из АЛУ

6

13

1

M/m#

Селекторный вход. При H выбирается MLINK и MCin вместо данных из статусного регистра.

7

14

1

MLINK

Вход внешнего бита связи

8

15

1

MCin

Вход внешнего переноса

9

16-21

6

P [0.5]

Шина задания позиции, для сдвигателя определяет направление сдвига и количество сдвигаемых разрядов

10

22-26

5

W [0.4]

Шина задания ширины битового поля

Регистр входных данных SN54ABTH32543

11

27

1

OEAB#

Разрешение вывода данных на мультиплексор №1

Мультиплексор №1 (36-bit)

FC

(Mk [86])

Выбор данных для регистрового файла: FC (Mk []) = 0 - с шины данных, = 1 - из микрокоманды (Mk [])

Mk [50-81]

Данные, поступившие из микрокоманды (выводится в регистровый файл только при FC=1)

Мультиплексор N2 (для A)

12

28

1

A#/B

Выбор адреса для регистрового файла (для тракта А): =0 - из регистра команд, = 1 - из конвеерного регистра

13

29-34

6

A [0.5]

Адрес для регистрового файла (для тракта А)

Мультиплексор N3 (для B)

14

35

1

A#/B

Выбор адреса для регистрового файла (для тракта B): =0 - из регистра команд, = 1 - из конвеерного регистра

15

36-41

6

B [0.5]

Адрес для регистрового файла (для тракта B)

Регистровый файл (Два Am29334)

16

42

1

OE#

Разрешение вывода на Y шину

17

43

1

WEa#

Разрешение записи по тракту А

18

44

1

WEb#

Разрешение записи по тракту B

Мультиплексор N4 (вывод с АЛУ или из регистрового файла)

19

45

1

A#/B

Выбор данных для вывода: = 0 - регистрового файла, = 1 - из АЛУ

Регистр выходных данных SN54ABTH32543

20

46

1

OED#

Разрешение вывода данных на шину данных

Регистр выходного адреса SN54ABTH32543

21

47

1

OED#

Разрешение вывода данных на шину адреса

Основная память

22

48

1

МЕМ#

Признак обращения к памяти

23

49

1

R/W#

Признак записи/чтения SRAM

Микропрограммное устройство управления

Регистр команд

24

50

1

OE#

Разрешение вывода новой команды из регистра команд на А

25

51

1

СE#

Разрешение ввода новой команды в регистр команд

Секвенсор Am29331

26

52-64

13

D [0.12]

Адрес следующей микрокоманды

27

65-70

6

I [0.5]

Входы-инструкции. Определяют одну из 64 микроинструкций

28

71-86

16

M [0.15]

Входы многоканального ветвления

29

87

1

FC

Задает CONTINUE вне зависимо от инструкций

30

88

1

OED

Вход разрешения вывода D-шины.

31

89

1

Cin#

Входной перенос инкрементера

32

90-93

4

S [0.3]

Входы выбора одного из 16 тестируемых условий

33

94

1

T [0]

Входы задания условия (при S = "0000”), T [2.7] не используются

34

95

1

RST#

Вход сброса секвенсора

Регистр адреса

35

96

1

OE#

Вход разрешения вывода адреса из регистра команд на шину AB

Регистр данных

36

97

1

OE#

Вход разрешения вывода данных из регистра команд на шину DB

Устройство контроля паритета

37

98-110

13

Pmk [0.12]

Паритетные биты для паритета МПП

12. Заключение

На основании цели проектирования было разработано ядро микроЭВМ, состоящее из трёх основных блоков: памяти, процессора и блока синхронизации, в свою очередь процессор состоит из ОБ и МУУ. Минимальное время цикла ядра микроЭВМ составляет 126.3 нс. Разработанное ядро удовлетворяет требованиям к быстродействию и надежности, чему способствовало применение зарубежной элементной базы.

Работа потребовала детального изучения архитектуры микроЭВМ и особенностей функционирования отдельных ее составляющих. В особенности это касается МУУ, поскольку заданием было определено построение принципиальной схемы данного функционально узла. В процессе проектирования закрепились на практике теоретические знания, полученные по курсу "Cхемотехника", понимание взаимодействий между различными элементами микропроцессора. Также был получен опыт в проектировании схем.

В целом работа оказала большую помощь в приобретении практических знаний по разработке устройств ЭВМ, и способствовала более углубленному изучению современных пакетов систем автоматизированного проектирования (все схемы были начерчены с использованием САПР OrCAD 9.1).

13. Список используемой литературы

1. Схемотехника. Руководство к курсовой работе/Соболев В.И. - Новосибирск: НГТУ, 1997.

2. Дж. Мик, Дж. Брик. Проектирование микропроцессорных устройств с разрядно-модульной организацией: в 2 кн. / пер. с англ. - М.: Мир, 1984.

3. База данных технической документации www.datasheetarchive.com

4. Русскоязычная база данных технической документации www.chipfind.ru

5. Норенков И.П. Введение в автоматизированное проектирование технических устройств и систем: Учеб. Пособие для ВТУЗов-2-е изд., перераб. и доп. - М.: Высш. шк., 1986. - 304 с.

Размещено на Allbest.ru

...

Подобные документы

  • Структура внешнего интерфейса. Алгоритмы функционирования микроЭВМ, его структурная и функциональная схемы. Формат микрокоманд и разработка микропрограммы. Диаграмма синхроимпульсов при использовании микропроцессора. Временная диаграмма работы микроЭВМ.

    курсовая работа [2,6 M], добавлен 18.06.2012

  • Дослідження внутрішньої структури операційної системи Windows. Архітектура NT і структура ядра. Методи перехоплення функцій у режимі ядра та режимі користувача. Поняття драйверу. Пакети вводу-виводу. Оцінка стабільності та безпеки системи Windows.

    курсовая работа [239,3 K], добавлен 02.01.2014

  • Неекспортовані символи ядра. Оптимальний підхід до реалізації пошуку символів у ядрі. Виконання, підміна, додавання та приховання системних викликів. Завантаження модуля ядра із програмного коду та з коду іншого модуля. Робота з UNIX-сигналами.

    курсовая работа [84,0 K], добавлен 23.05.2013

  • История создания, архитектура операционной системы и перечень возможностей, реализуемых в Linux. Инструментальные средства и цикл разработки новой версии ядра. Жизненный цикл патча. Структура принятия решений при добавлении новых функций (патчей) в ядро.

    лекция [303,8 K], добавлен 29.07.2012

  • Разработка вычислительного ядра для программного комплекса ModelBuilder. Общая архитектура взаимодействия с моделью. Подход для работы с двухмерной графикой. Визуализация модели в 3D. Алгоритм вставки цилиндра в модель. Матрица физических параметров.

    курсовая работа [2,2 M], добавлен 14.03.2012

  • Порядок и принципы документирования работ, выполняемых на этапе анализа и проектирования в жизненном цикле программных средств, нормативная основа. Описание пользовательского интерфейса прототипа разработанной информационной системы, его структура.

    курсовая работа [472,9 K], добавлен 11.11.2014

  • Структурная организация операционной системы на основе различных программных модулей. Функции, выполняемые модулями ядра. Модули операционной системы, оформленные в виде утилит. Ядро в привилегированном режиме. Многослойная структура ядра системы.

    презентация [705,2 K], добавлен 16.01.2012

  • Компоненты вычислительной системы, предоставляющие клиенту доступ к определенным ресурсам и обмен информацией. Функциональные возможности ядра веб-сервера Apache. Механизм авторизации пользователей для доступа к директории на основе HTTP-аутентификации.

    курсовая работа [105,6 K], добавлен 07.06.2014

  • Понятие автоматизированных информационных систем, средства их разработки. Последовательность проектирования и разработки автоматизированной информационной системы "Туристическое агентство". Разработка ядра системы, создание интерфейса, внедрение.

    курсовая работа [464,9 K], добавлен 22.04.2015

  • Разработка драйверов ядра Windows. Драйвер виртуальных устройств Windows - компьютерная программа, с помощью которой другая программа получает доступ к аппаратному обеспечению стандартным образом. Доступ к драйверам из приложений пользовательского режима.

    курсовая работа [436,1 K], добавлен 25.10.2012

  • Структура мережевої підсистеми Linux. Створення мережевого інтерфейсу. Передача пакетів та аналіз поведінки інтерфейсу. Протокол транспортного рівня. Використання модулів ядра. Вплив маршрутизації на процес розробки і налагодження мережевих модулів.

    курсовая работа [56,2 K], добавлен 23.05.2013

  • Изучение механизма работы программных инструментов как трудная часть отладочного процесса. Отладчики пользовательского режима, их основные типы. Автоматический запуск приложений в отладчике. Быстрые клавиши прерываний. Отладка ядра операционной системы.

    реферат [260,0 K], добавлен 25.11.2016

  • Разработка микропроцессорной системы на базе однокристальной микроЭВМ, также программного обеспечения, реализующего заданный набор функций. Структура и схема микроконтроллера PIC16. Разработка программы на языке ассемблер в среде MPLAB IDE v8.84.

    курсовая работа [515,3 K], добавлен 11.07.2012

  • Особенности архитектуры MIPS компании MIPS Technology. Иерархия памяти. Обработка команд перехода. Адресная очередь. Переименование регистров. Обоснование выбора операционной системы. Perl-эмулятор и сборка ядра. Электрическая и пожарная безопасность.

    дипломная работа [180,2 K], добавлен 06.03.2013

  • Классификация подсистем операционной системы автономного компьютера. Характеристика особенностей аппаратных платформ. Интерфейс прикладного программирования. Архитектура операционной системы с ядром в привилегированном режиме. Основные свойства ядра.

    презентация [97,9 K], добавлен 20.12.2013

  • Структура режима пользователя, предоставляющего возможность пользователю вступать во взаимодействие с системой. Описание режима ядра, который обеспечивает безопасное выполнение приложений (программ) пользователя. Уровень аппаратных абстракций Windows NT.

    презентация [29,6 K], добавлен 23.10.2013

  • Методика и этапы проектирования ядра системы управления сайтом с помощью среды Zend Studio 8. Разработка обработчиков событий, для управления этой системой. Создание каскадных таблиц стилей для оформления панели администрирования с помощью Notepad++.

    дипломная работа [4,6 M], добавлен 30.06.2011

  • Разработка интерфейса и программного обеспечения виртуальной библиотеки. Проектирование структуры экранов и навигационной системы. Построение прототипа пользовательского интерфейса. Тестирование и модификация прототипа. Экспертная оценка разработки.

    курсовая работа [41,2 K], добавлен 19.12.2010

  • Разработка информационно-аналитической системы анализа и оптимизации конфигурации вычислительной техники. Структура автоматизированного управления средствами вычислительной техники. Программное обеспечение, обоснование экономической эффективности проекта.

    дипломная работа [831,1 K], добавлен 20.05.2013

  • Методы моделирования и продвижения web-сайта, анализ средств для его создания: языки программирования, фреймворки, CMS. Разработка прототипа онлайнового портала об автомобилях, его основные услуги и функциональные возможности; администрирование web-сайта.

    курсовая работа [436,3 K], добавлен 07.11.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.