Автор работы: Пользователь скрыл имя, 18 Мая 2015 в 13:29, курсовая работа
Описание работы
Проектированиекомпьютеров специального назначения является одной из важнейших задач, стоящих перед разработчиками цифровой аппаратуры. Основное назначение спецкомпьютеров – это отработка определенного класса алгоритмов в некоторой заданной проблемно-ориентированной области. В частности, большой класс вычислительных систем используется в блоках управления механическими подвижными платформами в целях коррекции их траектории движения. Эффективность решения нетривиальных задач при этом во многом зависит от качества бортовых компьютеров и их программного обеспечения, входящих в состав управляемых объектов.
Содержание работы
ВВЕДЕНИЕ3 1. РАЗРАБОТКА АРХИТЕКТУРЫ СПЕЦИАЛИЗИРОВАННОГО КОМПЬЮТЕРА6 1.1. Анализ известных реализаций спецкомпьютеров, формирование требований к разрабатываемому компьютеру6 1.2. Исследование арифметической функции, решаемой специализированным компьютером8 1.3. Проектирование системы команд12 1.4. Проектирование ЗУ микрокомпьютера 19 1.5. Разработка обобщенной структуры микроЭВМ на основе системы команд 23 2. ПРОЕКТИРОВАНИЕ ОСНОВНЫХ СТРУКТУРНЫХ КОМПОНЕНТОВ СХЕМЫКОМПЬЮТЕРА28 2.1. Разработка схемы блока обработки данных28 2.2. Разработка устройства управления32 2.3. Разработка системы ввода-вывода данных35 3. ПРОЕКТИРОВАНИЕ ВНУТРЕННЕГО ИНТЕРФЕЙСА КОМПЬЮТЕРА39 3.1. Включение системы прерываний в схему устройства управления спецкомпьютера39 3.2. Проектирование системы прямого доступа к памяти40 4. РАЗРАБОТКА МИКРОПРОГРАММНОГО ОБЕСПЕЧЕНИЯ42 4.1. Формат микрокоманды. Микропрограммная интерпретация команд компьютера42 4.2. Разработка микропрограмм арифметических операций51 4.3. Разработка служебного микропрограммного обеспечения53
Фаза исполнения включает в
себя четыре шага. На первом шаге осуществляется
декодирование кода операции и распознавание
общей длины управляющего слова. В результате
выясняется последовательность действий,
необходимая для выполнения преобразований
и, если требуется, с использо-ванием системной
шины дочитывается оставшаяся часть команды.
На втором шаге совместные действия
БУ (или БМУ – блока микропрограммного
управления) и БОД позволяют сформировать
адреса операндов и передать считанные
данные во внутренние регистры БОД для
обработки.
Третий шаг – это преобразование
данных с учетом кода операции. При этом
БМУ формирует сигналы управления для
БОД и определяет характер действий, необходимых
для получения результата. Арифметикологическое
устройство на основе сформированного
результата формирует признаки (или флаги),
которые передаются в устройство управления
и далее используются для ветвления вычислительного
процесса.
На четвертом шаге осуществляется
запись результата в ОЗУ или другой приемник
в соответствии с алгоритмом отработки
текущей команды. В целом перечисленные
действия определяют наличие двунаправленных
линий связи между блоками и устройствами
проектируемого компьютера. Последней
микрооперацией фазы исполнения является
микрооперация инкрементирования счетчика
команд, после чего блок управления вновь
реализует фазу выборки.
Для формирования уточненной
структуры компьютера, выделим регистр
команды как отдельную компоненту структуры.
Поместим в регистр команды формата прямой
/ непосредственной адресации (рис. 1.12).
В рамках совершенствования
внутреннего интерфейса следует учитывать,
что адресный вход памяти может принимать
информацию от двух источников: от регистра
команды RG K и из счетчика СчАК. Это предполагает
включение в соответствующей точке интерфейса
мультиплексора MUX c управлением от БМУ.
Кроме того, работа ОЗУ, БОД и УВВ на общую
шину данных также предполагает введение
дополнительных линий для управления
двунаправленными выводами DIO с целью
арбитража ШД, т.е. общей шины компьютера.
Рис. 1.12. Уточненная структура
компьютера (прямая и непосредственная
адресации)
Эмуляция в структуре спецкомпьютера
форматов относительной, автоинкрементной
и регистровой адресации предполагает
введение в сформированную блок–схему дополнительных линий
связи.
Разряды смещения при относительной
адресации или разряды операнда при непосредственной
адресации передаются по дополнительным
линиям связи на ШД и далее через схемы
коммутации компьютера на DI вход БОД.
Доработка блок-схемы компьютера,
приведенной на рис. 1.13., с учетом подсистемы
памяти приведена на рис. 1.14.
Рис. 1.13. Уточненная структура
компьютера
Последующее формирование структуры
спецкомпьютера будем вести с учетом известного
принципа проектирования «сверху вниз».
При этом систему, аналогично вышеизложенной
методологии, будем развертывать в структурную
схему путем перехода от абстрактных представлений
о вычислениях к реализации соответствующего
аппаратного и микропрограммного обеспечения.
Подобная методология проектирования
получила название поэтапного усовершенствования
системы.
С практической точки зрения
структуру блоков компьютера во многом
определяют требования, предъявляемые
к решениям задач, требования к скорости
получения данных решений, принципам верификации
результатов. Однако применение конкретных
комплектов БИС предопределило стандартность
многих архитектурных реализаций подсистем,
что привело к необходимости эмуляции
заданных вычислений в микропрограммируемых
средах. Соответственно и проектирование
БОД, БМУ и УВВ далее будем выполнять с
учетом стандартных схем, определяемых
справочной литературой, а также путем
формирования внутреннего интерфейса
системы, позволяющего получить компьютер
с заданной проблемной ориентацией.
Рис. 1.14. Уточненная структура
компьютера с учётом подсистемы памяти
ПРОЕКТИРОВАНИЕ ОСНОВНЫХ
СТРУКТУРНЫХ
КОМПОНЕНТОВ СХЕМЫ
КОМПЬЮТЕРА
Разработка схемы
блока обработки данных
Микропроцессорная секция К1804ВС1
предназначена для построения процессоров
с длиной слова, кратной четырем. Она рассчитана
на микропрограммное управление, имеет
двухвходовое АЛУ, двухпортовую регистровую
память 16x4, рабочий регистр Q, тристабильную
выходную шину Y3-Y0 и две пары
двунаправленных тристабильных линий
сдвига.
Рис. 2.1. Структурная схема К1804ВС1
Блок внутренней памяти содержит
в своем составе регистровое ЗУ с двумя
независимыми каналами выбора информации
– канал адреса А и канал адреса В. На входе
РЗУ включен сдвигатель А (CD A), позволяющий
записывать в ЗУ информацию как без сдвига,
так и со сдвигом вправо или влево на один
разряд. Запись в РЗУ возможна только по
адресу, указанному на линиях канала В.
Регистры RG A и RG B, установленные
на выходах РЗУ, представляют собой 4 разрядные
устройства с синхронной записью информации.
Выбор из БВП любого РОН в качестве
источника информации осуществляется
путем подачи на входы А и В адресной информации
без программирования каких-либо других
управляющих сигналов. Из РЗУ одновременно
могут быть считаны 2 операнда. При этом,
если на входах А и В установлены одинаковые
адреса (выполняется обращение к одному
и тому же РОН), то на обоих выходах РЗУ
появляются идентичные данные.
Запись данных в РЗУ выполняется
только по каналу В, при этом адрес по каналу
А игнорируется. Моментом начала записи
в РЗУ является момент перехода тактового
импульса из состояния «1» в состояние
«0».
Информация перед записью может
быть сдвинута влево или вправо на один
разряд. Эту операцию выполняет сдвигатель
данных СD А, управляемый сигналами с дешифратора
приемника результата.
Арифметико-логический блок
включает в свой состав двухвходовое АЛУ,
выполняющее 8 арифметических и логических
операций и формирующее 4 признака результата:
С4 – перенос
из старшего разряда результата;
OVR – переполнение; OVR
=1, если С4Å С3 =1;
F3 – знак числа
или значения старшего разряда на выходе
АЛУ;
Z – признак нулевого результата.
С выхода АЛУ информация подается
на первый вход селектора выходных данных
(СВД). На второй вход селектора данные
передаются прямо с выхода RG A, минуя АЛУ.
C выхода СВД информация через управляемые
усилители передается на выходную шину
МПС – трехстабильную шину Y.
Селектор источников данных
выбирает операнды для R и S входов АЛУ.
Причем выбор источников операндов осуществляется
сигналами микрокоманды I2-I0, приемника
результата - сигналами I8-I6, а функции
АЛУ - сигналами I5-I3.
Арифметические операции в
АЛУ выполняются с учетом значения сигнала
входного переноса С0 и по правилам
дополнительного кода при представлении
отрицательных чисел.
Выводы
АЛУ позволяют с помощью внешних
схем организовать между секциями ускоренный
перенос при комплексировании их в блок
с разрядностью, кратной четырем.
Сигналы признаков, формируемые
АЛУ, используются следующим образом.
Вывод F3 – старший
разряд АЛУ - может быть использован, например,
для определения знака арифметической
операции. При этом отсутствует необходимость
отпирания трехстабильной выходной шины
данных, что упрощает выполнение команд
перехода в мультипроцессорных системах.
При соединении нескольких МПС знаком
является вывод F3 старшей
секции. Выводы F3 остальных
секций не используются.
Выход Z выполнен по схеме с
открытым коллектором, и при объединении
нескольких МПС все выводы z соединяются
в общей точке, подключаемой через резистор
к источнику питания. Потенциал этой точки
имеет высокий уровень, если все выходы
АЛУ одновременно нулевые.
Блок регистра Q состоит из дополнительного
регистра RG Q и сдвигателя СD Р. Сдвигатель
данных позволяет перезаписывать информацию
в RG Q как без сдвига, так и со сдвигом влево
или вправо на один разряд. Запись данных
в RG Q выполняется по положительному
фронту сигнала синхроимпульса.
Блок управления формирует
управляющие сигналы для остальных блоков
МПС. Входами данной подсхемы является
шина микрокоманды I8-I0, которую условно
можно разделить на три части.
Блок управления соответственно
также может быть представлен в виде совокупности
трех частей, причем первая – вырабатывает
сигналы управления для СИД, вторая
– используется для управления функцией
АЛУ, а третья – для управления СВД, RG Q,
СD Р, СD А.
Инверсный сигнал предназначен для
управления Y-выходами МПС. При разрешается
вывод информации через Y-выходы на ШД,
если выходная шина отключается (переводится
в состояние Roff).
Кроме МПС К1804ВС1 в блоке обработки
данных будем использовать схему ускоренного
переноса К1804ВР1 и схему управления состоянием
и сдвигами К1804ВР2.
Одна схема ускоренного переноса
(СУП) К1804ВР1 позволяет организовать параллельные
цепи переноса в блоке обработки данных
разрядностью до 16. При разрядности БОД
больше 16 может быть использовано каскадное
включение СУП.
Схема управления состоянием
и сдвигами (СУСС) предназначена для выполнения
различных функций обслуживания АЛУ: формирования
сигнала входного переноса; организации
арифметических, логических и циклических
сдвигов чисел обычной и двойной длины;
выполнение операций как с целым словом
так и с отдельными битами любого из двух
регистров состояния, проверки за такт
одного из 16 различных условий, которые
поступают с выхода одного из двух регистров
состояния или МПС.
Блок входного и выходного регистров
предназначен для фиксации результата
операции (регистр выходных данных)
и входных данных (регистр
входных данных). Оба регистра имеют
вход OE , переводящий выходы МС в высокоомное
состояние.
Выходы регистра выходных данных
необходимо отключать от шины данных в
любом из следующих трёх случаев: при выборке
слова из ОЗУ; при чтении из портов ввода;
во время работы канала ПДП.
Выходы регистра входных данных
необходимо переводить в высокоомное
состояние во время разрешения съёма данных
с БВП.
Все МПС, регистры, схемы СУСС
и СУП синхронизируются от единого источника
тактовых импульсов.
Требуемая разрядность операционного
устройства реализуемого на базе МПС 1804ВС1
(разрядность 4) обеспечивается объединением
необходимого числа микропроцессорных
секций. Так как разрядность обрабатываемых
в БОД слов равна 24, то схема МПБ будет
состоять из 6 МПС 1804ВС1.
Рис. 2.2. УГО К1804ВС1
С целью повышения скорости
выполнения арифметических операций в
МПБ применяют схемы ускоренного переноса
(СУП) на базе К1804ВР1.
Для ускорения процесса организации
сдвига ветвления и усложнения условия
перехода используют в БОД схему управления
состояниями и сдвигами (СУСС) реализованной
на базе К1804ВР2. Для реализации микроопераций
сдвига и обработки слова состояния процессора
в БОД будет использована одна К1804ВР2.
Разработка устройства
управления
Четырехразрядная секция К1804ВУ1
используется для построения блоков микропрограммного
управления различных цифровых устройств.
Основной функцией этих БИС является формирование
адреса микрокоманды под воздействием
внешних управляющих сигналов. В БИС К1804ВУ1
реализованы три способа адресации микрокоманд:
последовательная по счетчику микрокоманд,
выборка адреса из одного из внутренних
или внешних источников адреса, модификация
младших разрядов адреса микрокоманды.
БИС обеспечивает шесть различных управляющих
конструкций в алгоритмах микропрограммного
управления: безусловный переход, условный
переход по одному или нескольким направлениям,
цикл проверки условия, повторение предыдущего
адреса микрокоманды, условный переход
к микропрограмме и возврат по условию,
безусловный переход к программе и возврат.
Реализация перечисленных способов
адресации и управляющих конструкций
обеспечивается с помощью блока выбора
адреса, регистра адреса, счетчика микрокоманд
и стека (рис.2.3).
В микросхеме предусматривается
четыре источника адреса, каждый из которых
может выдать 4-разрядный двоичный адрес:
счетчик микрокоманд, регистр адреса,
стек и входная шина адреса D. Блок выбора
адреса содержит мультиплексор, с помощью
которого в зависимости от управляющих
сигналов SO и S1 выбирается один из источников
адреса (см.табл.2.1).
Выбранный адрес может быть
модифицирован с помощью маски, подаваемой
по шине QKO-QR3. Кроме того, блок выбора адреса
имеет вход, который используется для
установки на его выходе нулевого значения
адреса, обеспечиваемого при подаче на
этот вход нулевого сигнала. Рассмотрим
подробнее узлы, служащие источниками
адреса.
Счетчик микрокоманд состоит
из 4-разрядного регистра, в который при
положительном фронте тактовых импульсов
заносится значение, имеющееся на выходе
блока выбора адреса. Инкрементор может
увеличить этот адрес на единицу при С0 = 1. В инкременторе
имеется выход переноса C4. При объединении
микросхем схем управления адресом микрокоманды
выходная цепь переноса С4 подключается
к входной цепи переноса следующей (старшей)
секции. Таким образом, при подаче на вход
младшей секции логической единицы в начале
каждого тактового периода в счетчик микрокоманд
заносится значение адреса, увеличенное
на единицу по сравнению со значением
адреса в предыдущем тактовом периоде.
Так формируется адрес микрокоманды, если
не нарушается естественный порядок следования
адресов, т.е. в отсутствие условных и безусловных
переходов. Адрес микрокоманды, записанный
в регистре счетчика микрокоманд, передается
либо в стек, либо снова в блок выбора адреса.