Разработка архитектуры специализированного микрокомпьютера

Автор: Пользователь скрыл имя, 09 Сентября 2011 в 09:28, курсовая работа

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

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

Содержание

Введение ………………………………………………………………………
1. Разработка архитектуры специализированного микрокомпьютера.
1.1. Анализ известных реализаций спецкомпьютеров, критика аналогов проектируемой системы, формулирование требований к разрабатываемому микрокомпьютеру ……………………………………………………..
1.2. Проектирование алгоритмов, выбор состава микроопераций и программирование задач …………………………………………………………
1.3. Разработка обобщенной структуры микроЭВМ на основе алгоритмов решения задач ……………………………………………………………
2. Проектирование основных структурных компонентов схемы микрокомпьютера.
2.1. Разработка схемы блока обработки данных ……………………………
2.2. Проектирование ОЗУ микрокомпьютера ………………….……….….
2.3. Разработка устройства управления ……………………………………..
2.4. Разработка системы ввода-вывода данных …………………………….
3. Проектирование внутреннего интерфейса микрокомпьютера.
3.1. Проектирование системы адресации …………………………………...
3.2. Включение системы прерываний в схему устройства управления спецкомпьютера ………………………………………………………………
3.3. Проектирование системы ПДП …………………………………………
3.4. Разработка блока регенерации памяти …………………………………
4. Разработка микропрограммного обеспечения.
4.1. Формат микрокоманды. Микропрограммная интерпретация команд языка компьютера ……………………………………………………………
4.2. Разработка микропрограмм арифметических операций ………………
4.3. Разработка служебного микропрограммного обеспечения …………...
Заключение ……………………………………………………………………
Литература …………………………………………………………………….

Работа содержит 1 файл

Курсач_ded-2.doc

— 1.06 Мб (Скачать)

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

      Микропрограммное  управление повышает гибкость устройств  за счет смены микропрограмм, увеличивает  регулярность устройств за счет широкого использования матричных структур типа памяти, обеспечивает параллелизм решения задач при рассредоточенном управлении и распределении памяти, повышает надежность устройств за счет применения серийно освоенных БИС памяти, упрощает контроль функционирования устройства (контроль блока микропрограммного управления сводится, по существу к контролю содержимого ЗУ).

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

      Регулярность  структуры. Принцип регулярности предполагает закономерную  повторяемость элементов структуры и связей между ними. Регулярность системы следует рассматривать на различных уровнях ее организации. Применение данного принципа позволяет повысить эффективность интегрального исполнения устройств путём увеличения интегральной плотности, уменьшения длин связей на кристалле, упрощения и сокращения времени топологического и схемотехнического проектирования БИС, упрощения процедур контроля топологии, уменьшения числа пересечений, сокращения числа типов функциональных и конструктивных элементов, повышения серийности и снижения стоимости средств.

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

Рис. 1.1.3. Обобщенная логическая схема микроЭВМ.

     Принцип её работы заключается в следующем. Микропроцессор МП ведет обработку данных, адресует в памяти команды и операнды, управляет работой устройств ввода-вывода УВВ, подключенных к шинам адреса ША, данных ШД и управления ШУ через блоки электрического согласования — адаптеры АД. Постоянное запоминающее устройство ПЗУ  хранит программы и константы для их выполнения; в оперативном запоминающем устройстве ОЗУ хранятся данные, промежуточные результаты и микропрограммы. Работа процессора синхронизируется тактовыми сигналами СИ, поступающего на его входы от генератора синхронизации ГС.

     В данной архитектуре реализуется  все три дисциплины взаимодействия микропроцессора и внешних устройств. Программный опрос, когда ввод вывод осуществляется под управлением микропроцессора, постоянно сканирующего сигналы запросов на обслуживание  от УВВ.

     Прерывания  микропроцессора, осуществляются по инициативе внешних устройств через контроллер прерываний сигналами запросов INT.

     Прямой  доступ внешних устройств к памяти микропроцессора путем захвата  системных шин адреса и данных через контроллер прямого доступа  DMA выдачей сигналов прямого доступа RQM и управления системной памяти.

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

     Для проектирования специализированного  компьютера будем также использовать вышеперечисленные методы. Положительным моментом при реализации проектируемого компьютера является его быстродействие при вычислении заданной в постановке функции. Отрицательным – невозможность широкого применения из-за специализации и использования устаревшей элементарной базы. 

      1.2. Проектирование алгоритмов, выбор состава микроопераций и программирование задач.

       В соответствии с заданием разрядность данных - 28 бит, данные должны быть представлены в обратном коде с плавающей запятой. Должны быть реализованы следующие способы адресации операндов: прямая, непосредственная, автоинкрементная и относительная адресация. Необходимо разработать программное обеспечение для выполнения арифметической операции: xi/n, где: xi>n, xi=b∙ai, и алгоритм функционирования ОЗУ по тесту «Диагональ».

     Задача  выбора разрядности мантиссы и порядка  заключается в нахождении компромисса между диапазоном возможных значений  и точность. В большинстве случаев оптимальное соотношение разрядностей  мантиссы и порядка можно определить по формуле   

          ,

             где  p – разрядность порядка;

            m – разрядность мантиссы.

     При разработке ЭВМ на микропроцессорных  секциях серии К1804 желательно, также, чтобы разрядности порядка и мантиссы были кратны четырем. Следовательно, при выборе количества бит для порядка и мантиссы будем руководствоваться условием: мантисса 8 бит (7 бит значение + 1 бит на знак), порядок 20 бит (19 бит значение + 1 бит на знак).

     Получим формат для чисел с плавающей запятой следующий:

    Зн.М Мантисса Зн.Р Порядок
    27 26…….20 19 18…….0

     Для выполнения арифметической операции: xi/n, где: xi>n, xi=b∙ai, нам потребуются две арифметические операции:  произведение и деление двух чисел в обратном коде.

      Общее описание порядка работы проектируемой  микроЭВМ следующий – после запуска микроЭВМ выполняет проверку ОЗУ по тесту «Диагональ», если тест выявил ошибку, то аппаратно формируется прерывание процессора, и вычисление останавливается, иначе выполняется микропрограмма вычисления арифметического выражения.

       Для диагностики функционирования микроЭВМ  необходимо иметь определенный набор программ для контроля ее состояния. Функциональный контроль решает следующие задачи: определение факта наличия неисправности в блоке и определения места неисправности. Вывод в правильном функционировании ОЗУ делается либо по результатам выполнения очередного элементарного теста, либо по конечному результату выполнения теста.

       Рассматриваемый тест “Диагональ” является тестом, пригодным для предварительной  оценки ОЗУ на наличие катастрофических неисправностей.

       Следует отметить, что перебор всех 2(N+K)  возможных состояний ОЗУ, где N - число запоминающих элементов, K – число функциональных входов, становится нереальным при N  принимающем значение более 64. Поэтому алгоритм “Диагональ”, как и большинство алгоритмов функционального контроля ОЗУ имеет ограниченный набор входных тестовых комбинаций (циклов обращения), обеспечивающий обнаружение типовых отказов в дешифраторе и матрице памяти ОЗУ.

       Суть  теста «Диагональ» заключается  в следующем, последовательно по всем адресам производится запись фона 0. Затем во все адреса у которых совпадает номер строки и столбца (диагональ), т.е. AI = AJ, записывается . Далее происходит считывание информации по адресам AIJ, меняющимся по столбцам в соответствии с алгоритмом. Затем производится инверсия фоновой информации (запись фона 1) и цикл проверки повторяется. Блок-схема алгоритма теста  «Диагональ» приведена на рис. 1.2.1.

       Условные  обозначения принятые на блок-схеме:

       I, J - номер строки и столбца (L - конечный адрес строки, M - конечный адрес столбца).

       АIJ – ячейка с соответствующими адресами.

       Контроль - сравнение считанной информации с эталонной.

        - логический ноль, Т- логическая единица.

Общее описание порядка вычисления арифметического выражения в проектируемой микроЭВМ следующий:

     Шаг 1: Загрузка данных в соответствующие регистры.

     Шаг 2: Проверка условия деления на ноль, если n = 0, то в биты регистра результата помещаются единицы, что означает некорректность введённых данных или ошибку вычислений.

     Шаг 3: Проверка значения мантисс b и ai на равенство нулю. Если одна из них равна нулю, то результат равен нулю и вычисление выражения прекращается.

     Шаг 4: Нормализация мантисс входных  данных. Напомним, что нормализованной называется такая мантисса, в старшем незнаковом разряде которой стоит 1, иначе мантисса требует нормализации. При нормализация происходит сдвиг мантиссы влево на 1 разряд и уменьшение порядка на единицу.

     Шаг 5: Порядок выполнения операции произведения b и ai следующий:

     

     - вычисляется результирующий порядок, равный порядок b плюс порядок ai, (Если при суммировании порядков возникло переполнение и порядок отрицательный, это означает, что произведение меньше минимально представленного на заданной разрядной сетке числа. В этом случае в качестве результата умножения можно принять ноль без перемножения мантисс. Если при суммировании порядков возникает переполнение и порядок положительный то в биты регистра результата помещаются единицы, что означает некорректность введённых данных или ошибку вычислений (следует заметить, что результат может находится в диапазоне чисел, представленных на разрядной сетке и переполнение может исчезнуть после нормализации результатов).

     - производится умножение мантисс, причём эта операция производится по правилам умножения двух чисел с фиксированной запятой в обратном коде (суть алгоритма, в том, что умножение начинается с младших разрядов ai со сдвигом частичных сумм в вправо, младшие разряды которых игнорируются, в случае если ai < 0, вводится поправка в алгоритм),

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

     - результат умножения помещается в регистр x.

     Шаг 6: Порядок выполнения операции деления x на n следующий:

     - вычисляется результирующий порядок, равный порядок x минус порядок n,

     - производится деление мантисс, причём эта операция производится по правилам деления двух чисел с фиксированной запятой в обратном коде (операция деления мантисс x на n в обратных кодах без восстановления остатка, обязательное условие х > n, иначе результат равен нулю и вычисление выражения прекращается),

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

     - результат деления помещается в регистр результата r.

     Шаг 7: Завершение работы.

     Граф-схема алгоритма вычисления арифметической операции показана на рис. 1.2.2. 

     Операции  над порядками и мантиссами чисел  с плавающей запятой будем производить последовательно во времени с использованием одного и того же оборудования, основу которого составляют семь 4-разрядных МПС К1804ВС2 (7МПС × 4разряда = 28 разрядов). Исходные данные b, ai, n (нормализованные или ненормализованные) к моменту выполнения арифметической операции должны быть занесены из портов ввода-вывода во внутренние регистры блока обработки данных (БОД). После окончания вычислений результат должен быть из внутреннего регистра БОД занесён в соответствующий порт ввода-вывода. Для повторных вычислений вносится только переменная ai, константы b, ai, во внутренних регистрах БОД не меняют своего значения (могут быть только нормализованы при первом вычислении).

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

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

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

Информация о работе Разработка архитектуры специализированного микрокомпьютера