Проектирование универсального процессора
Разработка структурной схемы операционного устройства и арифметического устройства для операций над числами с плавающей запятой. Расчёт быстродействия процессора, выбор форматов данных. Проектирование граф-схем алгоритмов работы микропроцессора.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 01.02.2013 |
Размер файла | 2,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Реферат
Лошкарев Д.А., Мигалев Ф.В. Проектирование универсального процессора. Курсовой проект; ВятГУ, каф. ЭВМ; рук. Матвеев В.Д. - Киров, 2009. ПЗ 62 с., рис.22, табл.28, 3 прил.
ПРОЦЕССОР, ОПЕРАЦИОННОЕ УСТРОЙСТВО, УСТРОЙСТВО УПРАВЛЕНИЯ, АППАРАТУРА ПРЕРЫВАНИЙ, КОНВЕЙЕР, ОЧЕРЕДЬ КОМАНД.
Объект разработки - универсальный процессор.
Цель работы - разработка универсального процессора с заданным быстродействием. Процессор должен удовлетворять следующему техническому заданию:
быстродействие - 4.0 млн. оп/сек;
объём ОЗУ - 256 Мбайт;
ширина выборки из памяти - 64 бит;
количество прерываний - 13, вложенность - 5;
форматы данных с ФЗ - 8/16/32 разряда;
форматы данных с ПЗ - 64 разряда;
время доступа к ОЗУ 150 нс;
дополнительная функция - y =ln (x2)
Разработана структурная схема и технические задания на операционное устройство, устройства управления, оперативное запоминающее устройство, постоянное запоминающее устройство и арифметическое устройство для операций над числами с плавающей запятой. Произведен расчёт быстродействия процессора.
Содержание
Введение
1. Постановка задачи
2. Разработка архитектуры процессора
2.1 Выбор форматов данных
2.2 Определение РОН
2.3 Выбор видов адресации
2.4 Выбор форматов команд
2.5 Разработка системы команд
2.6 Определение внутренних регистров
2.7 Выбор системы управления памятью
3. Разработка структуры процессора
3.1 Разработка ступеней конвейера
3.2 Разработка операционного устройства
3.3 Разработка структуры ОЗУ
3.4 Разработка кэш-памяти
3.5 Разработка очереди команд
3.6 Разработка аппаратуры прерываний
3.7 Разработка устройства управления и форматов микрокоманд
3.8 Математический сопроцессор
3.9 Внешние устройства
3.10 Разработка арбитра шины
4. Разработка граф-схем алгоритмов работы микропроцессора
4.1 Разработка блока формирования эффективного и физического адреса
4.2 Разработка ГСА командного цикла микропроцессора
5. Расчетная часть
5.1 Расчёт быстродействия
5.2 Расчёт надёжности аппаратуры процессора
5.3 Расчет потребляемой мощности
6. Разработка подпрограммы вычисления функций
Заключение
Перечень сокращений
Библиографический список
Приложение
Введение
Процессор (ПР) занимает центральное место в структуре ЭВМ, так как он осуществляет управление взаимодействием устройств, входящих в состав ЭВМ.
Процессором называется устройство, непосредственно осуществляющее процесс обработки данных и программное управление этим процессом. Процессор дешифрирует и выполняет команды программы, организует обращения к оперативной памяти, в нужных случаях инициирует работу периферийных устройств, воспринимает и обрабатывает запросы, поступающие из устройств машины и из внешней среды.
Современные процессоры способны работать с различными способами представления чисел, различающиеся как разрядностью (восемь, шестнадцать или тридцать два), так и формой (с плавающей запятой (ПЗ) и фиксированной (ФЗ)).
Набор операций, выполняемых универсальным процессором, должен обладать функциональной полнотой, то есть быть достаточным для описания любых алгоритмов с использованием данных операций.
Команда - это упорядоченная совокупность битов информации, представляющая наименование операции, инициируемой командой, и адреса операндов, участвующих в выполнении операции. Машинная операция - это действие, инициируемое одной командой и реализуемое оборудованием ЭВМ. Выполнение команды разделено на более мелкие этапы - микрокоманды, во время которых выполняются определенные элементарные действия. Конкретный состав микрокоманды определяется системой команд и логической структурой данной ЭВМ. Последовательность микрокоманд, реализующих данную команду, образует микропрограмму операции.
В современных компьютерах адресная часть команды представлена в виде логического адреса (ЛА), а не физического (ФА). Главными причинами такого представления являются необходимость защиты данных и программ в многозадачных режимах работы, динамического распределения памяти и эффективного ее использования, а также переносимости программ с младших моделей.
Основные части процессора включают: арифметико-логическое устройство (АЛУ), управляющее устройство, блок управляющих регистров, блок регистровой памяти, блок связи с оперативной памятью (ОП) и некоторые другие.
Для повышения производительности процессоров, помимо выбора более быстродействующей элементарной базы, используют структурные методы ее повышения. В частности к ним относятся использование КЭШ-памяти различных уровней, памяти с расслоением обращений, двухпортовой памяти, очереди команд, параллельного выполнения стадий командного цикла на конвейере.
Основным показателем, характеризующим процессор является его производительность или быстродействие.
При разработке процессоров широко используются микропроцессорные секции - микропроцессорные интегральные микросхемы, реализующие часть микропроцессора (микроконтроллера) и обладающие средствами простого функционального объединения с однотипными или другими микропроцессорными секциями для построения законченных микропроцессоров. Такой подход дает широкие возможности по созданию новых процессоров в короткие сроки и низкой стоимостью.
1. Постановка задачи
Разработать универсальный ПР со следующими характеристиками:
быстродействие - 4.0 млн. оп/сек;
объём ОЗУ - 256 Мбайт;
ширина выборки из памяти - 64 бит;
количество прерываний - 13, вложенность - 5;
форматы данных с ФЗ - 8/16/32 разряда;
форматы данных с ПЗ - 64 разряда;
время доступа к ОЗУ 150 нс;
дополнительная функция - y =ln (x2)
2. Разработка архитектуры процессора
2.1 Выбор форматов данных
По техническому заданию ПР должен поддерживать (использовать в качестве операндов) числа в формате с фиксированной запятой (ФЗ): байт - 8 бит, слово - 16 бит и двойное слово - 32 бита. Действительные числа в формате с плавающей запятой (ПЗ) обрабатывает сопроцессор (СоПР) с разрядностью 64 бита.
Для ускорения передачи данных шины данных (ШД) имеют разрядность 32 бита. 8-битные и 16-битные данные при передаче по ШД располагаются в младших разрядах.
Целые числа без знака представлены в прямом коде (ПК), целые числа со знаком - в дополнительном коде (ДК). Процессор не различает числа со знаком и без знака, это решает программист.
Форматы данных:
1) Байт со знаком. Диапазон представления чисел от -128 до 127.
2) Байт без знака. Диапазон представления чисел от 0 до 255.
3) Слово со знаком. Диапазон представления чисел от -32768 до 32767.
4) Слово без знака. Диапазон представления чисел от 0 до 65535.
5) Двойное слово со знаком. Диапазон представления чисел от -2147483648 до 2147483647.
6) Двойное слово без знака. Диапазон представления чисел от 0 до 4294967295.
7) Формат чисел с плавающей запятой. Диапазон представления чисел от 4,94 Ч 10?324 до 1.79 Ч 10308.
Данные такого типа состоят из знака, положительной мантиссы (51 бит) и смещенного порядка (12 бит).
2.2 Определение регистров общего назначения
Регистры этой группы используются в программе для хранения:
1) операндов логических и арифметических операций;
2) компонент адреса;
3) указателей на ячейки памяти.
Регистры общего назначения, или арифметические регистры, обозначаются AX, BX, CX и DX (рис.2.2). Каждый из них можно также рассматривать как пару независимо адресуемых восьмиразрядных регистров. Левый байт является старшей частью (high), а правый - младшей частью (low) и соответственно обозначаются старшие - AH, BH, CH и DH, младшие - AL, BL, CL и DL. В команде разрядность данных определяется полем P и состоянием триггера разрядности Тр, следовательно, при Тр=0 и P=0 команда работает с 8-разрядными данными, при Тр=0 и P=1 - с 16-разрядными, а при Тр=1- с 32-разрядными.
В таблице 1 представлен формат регистров общего назначения. В таблице 2 представлено кодирование РОН в командах.
Таблица 1 - Формат регистров общего назначения
31 16 15 8 7 0
EAX |
AH |
AL |
||
AX |
||||
EBX |
BH |
BL |
||
BX |
||||
ECX |
CH |
CL |
||
CX |
||||
EDX |
DH |
DL |
||
DX |
||||
DI |
||||
SI |
||||
BP |
||||
19 SP 0 |
- EAX - аккумулятор, может использоваться в качестве неявного операнда в некоторых командах;
- EBX, BP - базовые регистры, используются в качестве базового регистра, при базовой адресации;
- SI, DI - индексные регистры, используются в качестве индекса при индексной адресации.
- ECX - счетчик, является счетчиком при организации циклов;
- EDX - данные, является расширением регистра AX при умножении двойных слов, а также при операциях деления хранит остаток;
- SP - указатель стека.
- AX - регистр аккумулятор и основной регистр, используемый в арифметических операциях.
- BX часто используется для хранения адреса начала таблицы перекодирования символов, а также может содержать смещение для косвенной адресации.
- CX - счетчик числа повторений циклов и блочных пересылок.
- DX используется как расширение аккумулятора для операций, дающих 32-разрядный результат. Регистры общего назначения используются также для передачи значений или адресов параметров к подпрограммам.
Таблица 2 - Кодирование РОН в командах.
РЕГ |
Регистр (Тр и Р = 0и0/0и1/1иX) |
РЕГ |
Регистр (Тр и Р = 0и0/0и1/1иX) |
|
000 |
AL / AX / EAX |
100 |
AH / BP / BP |
|
001 |
BL / BX / EBX |
101 |
BH / SP / SP |
|
010 |
CL / CX / ECX |
110 |
CH / SI / SI |
|
011 |
DL / DX / EDX |
111 |
DH / DI / DI |
2.3 Выбор видов адресации
Система команд процессора предусматривает десять видов адресации (таблица 3).
При мнемонической записи команды на языке ассемблера первый операнд указывает приёмник информации, второй - источник. Признак адресации кодируется соответствующими битами в формате команды.
Эффективный адрес вычисляется с использованием комбинации следующих компонентов:
Смещение (С) -20-разрядное число, включенное в команду.
База (Б) - содержимое базового регистра (обычно используется для указания на начало некоторого массива).
Индекс (И) - содержимое индексного регистра. Обычно используется для выбора элемента массива.
Таблица 3 - Виды адресации
№ |
Способ адресации |
Пояснения |
Исполнительный адрес |
Пример использования |
|
1 |
Непосредственная |
операнд указывается непосредственно в самой команде |
Операнд в команде |
MOVAH, 4Ch |
|
2 |
Регистровая |
операнд находится в регистре процессора, указанном в команде |
Операнд в регистре |
MOVСX, AX |
|
3 |
Косвенная регистровая |
исполнительный адрес операнда хранится в регистре процессора. В команде же указывается данный регистр |
Аисп=Р |
MOVAX, [DX] |
|
4 |
Прямая |
в адресной части команды указан адресячейки памяти, к которой происходит обращение при выполнении команды |
Аисп=Aк |
ADD[02531h], AX |
|
5 |
Индексная |
адресная часть команды содержит адрес ячейки памяти, а регистр, указанный явно или неявно - смещение относительно этого адреса |
Аисп=И+С |
ADD AX, [SI +0254h] |
|
6 |
Базовая регистровая |
базовый регистр содержит полноразрядный адрес, а в адресной части команды содержится смещение относительно этого адреса. |
Аисп=Б+С |
ADDAX, [BX+0Ch] |
|
7 |
Базово-индексная |
адрес операнда определяется суммированием содержимого регистра базы и регистра индекса |
Аисп=Б+И |
ADDAX, [BX][SI] |
|
8 |
Базово-индексная со смещением |
адрес операнда определяется суммированием содержимого регистра базы, смещения и регистра индекса |
Аисп=Б+И+С |
ADD AX, [BX][SI][034h] |
|
9 |
Базово-индексная автоинкрементная |
после получения адреса операнда, содержимое индексного регистра увеличивается |
Аисп=Б+ИИ:=И+1 |
MOV[BP][SI]++, CX |
|
10 |
Базово-индексная автодекрементная |
после получения адреса операнда, содержимое индексного регистра уменьшается |
Аисп=Б+ИИ:=И-1 |
MOV [BP][SI]--, CX |
В таблице 3 использованы следующие условные обозначения:
Aисп - исполнительный адрес;
Ак - адресный код;
Б - содержимое базового регистра;
Р - содержимое регистра;
И - содержимое индексного регистра;
С - смещение.
2.4 Выбор форматов команд
Для обеспечения функциональной полноты набора команд процессора в нем предусмотрено три формата команд: безадресные, одноадресные и двухадресные. Соответствующие поля команд совмещены в большинстве форматов, что позволяет упростить дешифрацию.
Для увеличения номинального быстродействия в системе команд отсутствуют двухадресные команды типа память-память, т.е. одним операндом должен быть РОН, либо непосредственный операнд (НО). Введение такого формата команд не только потребует увеличения разрядности управляющей части, но и увеличения количества обращений к памяти, что отразится на быстродействии и эффективности хранения команд для разрабатываемого ПР.
1) Двухадресные команды
Двухадресные команды можно разделить по типам источника и приёмника, участвующих в операции:
· регистр - регистр;
· регистр - память;
· регистр - непосредственный операнд.
Формат двухадресной команды:
Двухадресная команда определяется по полю Ф (1 бит), равному нулю.
Рисунок 1 - Формат двухадресной команды
Выбор полей ПА2 или РЕГ2 определяется по значению ПА1: если 00 или 01, то используется РЕГ2, в остальных случаях ПА2.
Назначение полей:
НП (1 бит) - направление пересылки результата: 1 - в память, 0 - в регистр;
КОП (5 бит) - код операции;
Р (1 бит) - разрядность операндов: 0 - 8 бит, 1 - 16 бит, при Тр=0; при Тр=1 разрядность операндов 32 бита;
ПА1 (2 бита) и ПА2 (3 бита) - коды для видов адресаций, используемых в операции;
РЕГ1 (3 бита) и РЕГ2 (3 бита) - номера регистров;
НО - непосредственный операнд;
Таблица 4 - Сочетания видов адресации
ПА1 |
ПА2 |
Способ адресации |
|
10 |
0хх |
РЕГ <-> НО |
|
10 |
1хх |
[РЕГ] <- НО |
|
00 |
хxx |
РЕГ <-> РЕГ |
|
01 |
хxx |
[РЕГ] <-> РЕГ |
|
11 |
000 |
[А] <-> РЕГ |
|
11 |
001 |
[И]+С <-> РЕГ |
|
11 |
010 |
[Б]+C <-> РЕГ |
|
11 |
011 |
[Б]+[И] <-> РЕГ |
|
11 |
100 |
[Б]+[И]+С <-> РЕГ |
|
11 |
101 |
[Б]+[И++] <-> РЕГ |
|
11 |
11х |
[Б]+[И--] <-> РЕГ |
2) Одноадресные команды
Формат одноадресной команды:
Одноадресная команда определяется по полям Ф1 и Ф2, равным единице и нулю соответственно.
Рисунок 2 - Формат одноадресной команды
Выбор полей ПА2 или РЕГ1 определяется по значению ПА1: если 00 или 01, то используется РЕГ1, в остальных случаях ПА2.
Назначение полей:
КОП (5 бит) - код операции;
Р (1 бит) - разрядность операндов: 0 - 8 бит, 1 - 16 бит, при Тр=0; при Тр=1 разрядность операндов 32 бита;
ПА1 (2 бита) и ПА2 (3 бита) - коды для видов адресаций, используемых в операции;
РЕГ1 (3 бита) - номера регистра;
НО - непосредственный операнд;
Таблица 5 - Используемые виды адресаций
ПА1 |
ПА2 |
Способ адресации |
|
00 |
xxx |
РЕГ |
|
01 |
ххх |
[РЕГ] |
|
11 |
000 |
[А] |
|
11 |
001 |
[И]+С |
|
11 |
010 |
[Б]+C |
|
11 |
011 |
[Б]+[И] |
|
11 |
100 |
[Б]+[И]+С |
|
11 |
101 |
[Б]+[И++] |
|
11 |
11х |
[Б]+[И--] |
3) Безадресные команды
Формат безадресной команды:
Безадресная команда определяется по полям Ф1 и Ф2, равным единице, а так же по полю Ф3, равному нулю.
Рисунок 3 - Формат безадресной команды
Назначение полей:
КОП (5 бит) - код операции;
Ф4 - специальное поле для определения того, что данная команда является либо обычной безадресной командой(при Ф4=0), либо безадресной командой, работающей с отдельным триггером разрядности данных;
ФЛАГ (3 бита) - номер флага;
* - зарезервировано.
4) Команды сопроцессора.
Формат команды сопроцессора:
Безадресная команда определяется по полям Ф1, Ф2 и Ф3 равным единице.
Рисунок 4 - Формат команды сопроцессора
2.5 Разработка системы команд
Набор операций универсального процессора должен обладать функциональной полнотой, то есть быть достаточным для описания любых алгоритмов решения задач с использованием данных операций. Ниже приводится список всех групп команд.
Система команд (94).
1) Двухадресные команды (20).
1) Арифметические команды (4).
Таблица 6 - Арифметические команды
Код операции |
Мнемоника |
Описание |
|
00000 |
ADD X,Y |
сложение |
|
00001 |
SUB X,Y |
вычитание |
|
00010 |
ADC X,Y |
сложение с переносом |
|
00011 |
SBB X,Y |
вычитание с переносом |
2) Логические команды (4).
Таблица 7 - Логические команды
Код операции |
Мнемоника |
Описание |
|
00100 |
AND X,Y |
логическое «И» |
|
00101 |
OR X,Y |
логическое «ИЛИ» |
|
00110 |
XOR X,Y |
«исключающее ИЛИ» |
|
00111 |
TEST X,Y |
логическое «И» без записи результата |
3) Команды пересылки (3).
Таблица 8 - Команды пересылки
Код операции |
Мнемоника |
Описание |
|
01000 |
MOV X,Y |
пересылка операнда Y на место X |
|
01001 |
LEA X,Y |
загрузка ЭА в регистр |
|
01010 |
XCHG X,Y |
обмен данными |
4) Команды сравнения (1).
Таблица 9 - Команды сравнения
Код операции |
Мнемоника |
Описание |
|
01011 |
CMP X,Y |
сравнение операндов |
5) Команды сдвига (8).
Таблица 10 - Команды сдвига
Код операции |
Мнемоника |
Описание |
|
01100 |
RCL X,Y |
циклический сдвиг влево через CF |
|
01101 |
RCR X,Y |
циклический сдвиг вправо через CF |
|
01110 |
ROL X,Y |
циклический сдвиг влево |
|
01111 |
ROR X,Y |
циклический сдвиг вправо |
|
10000 |
SAL X,Y |
арифметический сдвиг влево |
|
10001 |
SAR X,Y |
арифметический сдвиг вправо |
|
10010 |
SHL X,Y |
логический сдвиг влево |
|
10011 |
SHR X,Y |
логический сдвиг вправо |
2) Одноадресные команды (45).
1) Арифметические команды (6).
Таблица 11 - Арифметические команды
Код операции |
Мнемоника |
Описание |
|
00000 |
INC X |
инкремент операнда |
|
00001 |
DEC X |
декремент операнда |
|
00010 |
DIV X |
деление |
|
00011 |
MUL X |
умножение |
|
00100 |
IDIV X |
деление со знаком |
|
00101 |
IMUL X |
умножение со знаком |
2) Логические команды (2).
Таблица 12 - Логические команды
Код операции |
Мнемоника |
Описание |
|
00110 |
NOT X |
инвертирование операнда |
|
00111 |
NEG X |
инверсия знака операнда |
3) Команды передачи управления (5).
Таблица 13 - Команды передачи управления
Код операции |
Мнемоника |
Описание |
|
01000 100 |
CALL A |
вызов подпрограммы |
|
01001 100 |
FARCALL А |
дальний вызов |
|
01010 100 |
LOOP A |
переход на А, пока CX<>0 |
|
01011 100 |
INT N |
программное прерывание |
|
01100 100 |
JMP A |
безусловный переход |
4) Команды условного перехода (14).
Таблица 14 - Команды условного перехода
Код операции |
Мнемоника |
Описание |
|
01101 101 |
JC |
если перенос |
|
01101 100 |
JNC |
если нет переноса |
|
01110 101 |
JE |
если равно |
|
01110 100 |
JNE |
если не равно |
|
01111 101 |
JZ |
если 0 |
|
01111 100 |
JNZ |
если не ноль |
|
10000 100 |
JG |
если больше |
|
10000 101 |
JNG |
если не больше |
|
10001 100 |
JL |
если меньше |
|
10001 101 |
JNL |
если не меньше |
|
10010 101 |
JS |
если знак минус |
|
10010 100 |
JNS |
если знак плюс |
|
10011 101 |
JO |
если переполнение |
|
10011 100 |
JNO |
если нет переполнения |
5) Привилегированные команды (12).
Таблица 15 - Привилегированные команды
Код операции |
Мнемоника |
Описание |
|
10100 000 |
LGDT |
загрузка GDTR |
|
10100 001 |
SGDT |
сохранение GDTR |
|
10101 000 |
LIDT |
загрузка IDTR |
|
10101 001 |
SIDT |
сохранение IDTR |
|
10110 000 |
LDS |
загрузка DS |
|
10110 001 |
SDS |
сохранение DS |
|
10111 000 |
LSS |
загрузка SS |
|
10111 001 |
SSS |
сохранение SS |
|
11000 000 |
LES |
загрузка ES |
|
11000 001 |
SES |
сохранение ES |
|
11001 000 |
LCS |
загрузка CS |
|
11001 001 |
SCS |
сохранение CS |
6) Прочие одноадресные команды (6).
Таблица 16 - Прочие одноадресные команды
Код операции |
Мнемоника |
Описание |
|
11010 |
IN N |
чтение из порта |
|
11011 |
OUT N |
запись в порт |
|
11100 |
POP X |
извлечение из стека |
|
11101 |
PUSH X |
загрузка в стек |
3) Безадресные команды (9).
Таблица 17 - Безадресные команды
Код операции |
Мнемоника |
Описание |
|
00001 |
NOP |
нет операции |
|
00010 |
HLT |
останов процессора |
|
00011 |
RET |
возврат из ПП |
|
00100 |
IRET |
возврат из прерывания |
|
00101 |
STI |
разрешение прерывание |
|
00110 |
CLI |
запрещение прерываний |
|
00111 |
SMRL |
сброс триггера разрядности |
|
01000 |
SMRH |
установка триггера разрядности |
|
01001 F |
INVF F |
инверсия флага |
|
01001 F |
CLRF F |
сброс флага |
|
01001 F |
INSTF F |
установка флага |
|
01010 |
POPF |
извлечение регистра флагов из стека |
|
01011 |
PUSHF |
размещение регистра флагов в стеке |
4) Команды для обработки чисел с ПЗ (команды сопроцессора) (11).
Таблица 18 - Команды сопроцессора
Код операции |
Мнемоника |
Описание |
|
00000 |
FMOV |
загрузка вещественного числа |
|
00001 |
FPUSH |
сохранение в стеке |
|
00010 |
FPOP |
выборка из стека |
|
00011 |
FADD |
сложение с ПЗ |
|
00100 |
FSUB |
вычитание с ПЗ |
|
00101 |
FMUL |
деление с ПЗ |
|
00110 |
FDIV |
умножение с ПЗ |
|
00111 |
FINC |
инкремент с ПЗ |
|
01000 |
FDEC |
декремент с ПЗ |
|
01001 |
FNOP |
пустая операция |
|
01010 |
FCMP |
сравнение операндов |
5) Команды аппаратуры прерывания (6)
Таблица 19 - Команды аппаратуры прерывания
Код операции |
Мнемоника |
Описание |
|
01010 |
LDM |
Загрузка маски АП |
|
01011 |
RDM |
Чтение маски АП |
|
01100 |
LDRS |
Загрузка регистра состояния АП |
|
01101 |
RDRS |
Чтение регистра состояния АП |
|
01110 |
LDMSK X |
Поразрядная загрузка регистра маски в АП |
|
01111 |
CRMSK Х |
Поразрядная очистка регистра маски в АП |
В системе команд процессора существует возможность расширения набора команд для всех форматов.
Коды флагов ( F).
Таблица 20 - Кодирование флагов
Код флага |
Мнемоника |
Описание |
|
000 |
ZF |
флаг нулевого результата |
|
001 |
CF |
флаг переноса |
|
010 |
SF |
флаг знакового разряда результата |
|
011 |
OF |
флаг переполнения |
|
1хх |
PF |
флаг фиксации четности результата |
2.6 Определение внутренних регистров процессора
Регистрами называют элементы высокоскоростной памяти, расположенные внутри процессора в непосредственной близости от исполнительных устройств. Доступ к ним осуществляется несравнимо быстрее, чем к ячейкам оперативной памяти (ОП). Внутренние регистры процессора подразделяются на следующие группы:
- пользовательские регистры, которые в свою очередь также подразделяются на:
а) регистры общего назначения (РОН) - программно доступные регистры, предназначенные для хранения данных и адресов;
б) сегментные регистры - служат для хранения значений, интерпретация которых зависит от текущего режима работы процессора. В режиме реальной адресации в них содержатся старшие биты адреса сегмента в памяти, в защищённом - селекторы дескрипторов сегментов;
в) регистры состояния и управления - содержат информацию о состоянии процессора, исполняемой программы, позволяют изменить это состояние;
- системные регистры - предназначены для обеспечения различных режимов работы, сервисных функций. К ним относятся регистры управления памятью (RgGDT и так далее).
Разрядность РОН определяется максимальной разрядностью данных, обрабатываемых устройством. Следовательно, РОН данного устройства будут 32х разрядными (AX, BX, CX, DX) и 20ти разрядные (BP, SP, SI, DI). Каждый из РОН может быть использован в арифметико-логических операциях. Однако каждый РОН имеет своё определённое назначение. Это позволяет уменьшить разрядность команд при неявном использовании какого-либо из РОН.
Так как в проектируемом устройстве используются данные разрядностью восемь, шестнадцать и тридцать два, в РОН'ах есть возможность адресации к младшим 8 и 16 битам, поделённым на восьмибитные поля.
Регистры общего назначения
Данный вопрос был рассмотрен в п. 2.2.
2) Указатель команд, стека и регистр слова состояния ПР
Регистр командного указателя IP содержит смещение относительно базы сегмента кода на команду, которая должна быть выполнена.
Рисунок 5 - Формат регистра командного указателя
В качестве указателя стека используется регистр SP (20 разрядов). Данный регистр содержит относительный адрес вершины стека и включен в РОН.
В состав архитектуры процессора входит 32х разрядный регистр слова состояния ПР PSW.
Рисунок 6 - Формат слова состояния процессора
Слово состояния содержит следующую информацию:
M - текущий режим работы процессора (00 - реальный режим, 11 - защищённый режим);
Р - признак привилегий процесса (00 - системный, 11 - пользовательский);
ERR - код ошибки;
DF - флаг текущего сегментного регистра (0 - DS,1- ES);
TF - флаг трассировки;
IF - флаг запрещения прерываний;
ZF - признак нулевого результата;
OF - признак переполнения;
SF - флаг знакового разряда результата;
СF - признак переноса;
IRF - индексный регистр, используемый при индексной адресации (0 - SI, 1 - DI).
3) Регистры сегментов
В структуру ПР входят четыре сегментных регистра. Их существование обусловлено спецификой организации и использования памяти ПР (сегментная организация памяти).
Регистры сегментов содержат 5-битные указатели (в реальном режиме) или селекторы (в защищенном режиме) сегментов: CS (сегмент кодов команд); SS (сегмент стека); DS (сегмент данных); ES (дополнительный сегмент). Использование сегментных регистров определяется типом обращения к памяти. С каждым из 4-х сегментных регистров связаны теневые регистры дескрипторов, автоматически загружаемые при загрузке соответствующих сегментных регистров.
Формат селектора в защищенном режиме
Рисунок 7 - Формат селектора в защищенном режиме
4) Регистры базы
Регистр базы глобальной GDTR представляет собой 32-х разрядный регистр, старшие 19 разрядов указывают базовый адрес таблицы дескрипторов в ОП, а младшие 13 разрядов указывают размер таблицы (рисунок 8).
Регистр таблицы дескрипторов сегментов GDTR.
Рисунок 8 - Формат регистра дескрипторов сегментов
В регистре 13-разрядный размер таблицы в дескрипторах, следовательно, максимально возможное число сегментов 2^13=8K, чего вполне достаточно для нормального функционирования.
В процессор также включен регистр дескрипторов векторов прерываний IDTR (рисунок 9), в котором содержится базовый адрес таблицы адресов подпрограмм обработки прерываний.
Регистр таблицы адресов прерываний (IDTR).
Рисунок 9 - Формат регистра дескрипторов векторов прерываний
2.7 Выбор системы управления памятью
Разрабатываемое устройство способно работать как в режиме реальной адресации, так и в защищённом режиме. Ввиду того, что возможно использование восьмиразрядных операндов (по ТЗ), минимальный размер адресуемой ячейки памяти равен одному байту.
Адресная часть команд поступает в процессор в виде логического адреса (ЛА). Необходимость введения логической адресации обусловлена следующими факторами:
1) позволяет наращивать ОП без изменения разрядности ЛА (формата команды);
2) обеспечивает написание программ без привязки к физическому адресу (ФА) памяти;
3) предоставляет возможность динамического распределения памяти программ и данных и эффективного использования емкости ОП;
4) предоставляет возможность обеспечения защиты сегментов памяти программ и данных.
Введение ЛА возлагает на аппаратуру дополнительную задачу по преобразованию ЛА в ФА, что потребует дополнительных аппаратурных затрат и времени. Так как размер ОЗУ по ТЗ составляет 256 Мбайт то, разрядность физического адреса должна быть 28 разрядов.
· Реальный режим.
В режиме реальных адресов программисту доступен весь объём оперативной памяти (256 Мбайт). Вся физическая память разбивается на сегменты размером 1 Мбайт. Физический адрес получается из логического путём конкатенации младших пяти разрядов содержимого сегментных регистров со смещением (рисунок 10). Реальный режим - это исходный режим работы процессора. Предполагается, что процессор будет работать в нём только на этапе инициализации структур для защищённого режима, на этапе первоначальной загрузки операционной системы (ОС). При работе в реальном режиме все функции по контролю доступа к сегментам программ и данных возлагаются на программиста.
Рисунок 10 - Формирование ФА в режиме реальных адресов
В режиме реальных адресов таблица векторов прерываний (IDT) находится, начиная с нулевого адреса оперативной памяти, каждый элемент таблицы занимает 32 бита. Это необходимо для того, чтобы минимизировать аппаратурные затраты на разную реализацию вычисления адреса элемента в таблице IDT в режиме реальной адресации
· Защищенный режим.
В защищенном режиме адресуются 256 Мбайт с разделением на сегменты с максимальным размером 1 Мбайт и минимальным размером 32 Кбайт. В данном режиме используется механизм защиты памяти. ПР работает в однозадачном режиме, следовательно для организации его работы требуется всего одна глобальная таблица дескрипторов (GDT). Количество сегментов, т.е. размер таблицы дескрипторов, выбран таким образом, чтобы можно было адресовать всю физическую память, и составляет до 8192 дескрипторов. Адрес начала ТД и её размер определяются в регистре GDTR (рисунок 11).
Рисунок 11 - Регистр GDTR
Физический адрес формируется, как сумма 26-разрядной базы, которая хранится в дескрипторе (рисунок 12), и 20-разрядного эффективного адреса (смещения).
Рисунок 12 - Формат дескриптора сегмента.
S - поле определяет тип сегмента (S=1 - системный; S=0 - пользовательский);
DPL - уровень привилегий сегмента (0 - системный, 1 - пользовательский);
ST - тип сегмента (0 - кода, 1 - данные);
ED - направление расширения сегмента данных (0 - в сторону старших адресов, 1 - в сторону младших адресов - стек);
R/W - запрет чтения из сегмента кода или запрет записи в сегмент данных (R/W=0). Если бит R=1 для сегмента кода, то наряду с обращением к такому сегменту для выполнения команд разрешается и обращение для их считывания. Если R=0, любая попытка считать из сегмента команду вызывает прерывание по защите памяти. Любая попытка записать информацию в исполняемый сегмент (кода) по умолчанию также приводит в выработке прерывания по защите памяти и доступ к памяти (запись в память) блокируется. При R=0 сегмент должен содержать «чистый» код (только команды), иначе данные невозможно будет прочитать. Если бит W=1 для сегментов данных (DS, SS, ES), то помимо считывания из сегмента данных разрешена и запись в него. Если же W=0, то любая попытка записи в сегмент вызывает прерывание (особый случай защиты) и блокировку доступа к памяти по записи (такие сегменты могут содержать таблицы констант, общесистемные справочные данные, информацию о состоянии, базы данных с запретом обновления записей и т.д.).
Размер - размер сегмента в блоках (по 16 байт);
Базовый адрес - физический адрес начала сегмента;
* - зарезервировано.
При формировании ФА адрес базы сегмента выбирается из теневого регистра, расположенного в блоке формирования физического адреса. Селектором в данном режиме служат сегментные регистры. При загрузке в сегментные регистры нового селектора (рисунок 13) производится выборка соответствующего дескриптора из ТД, выполняется контроль по доступу и размеру и, если доступ разрешен, загрузка его в соответствующий теневой регистр.
Рисунок 13 - Формат селектора
Селектор содержит следующие поля:
индекс - номер дескриптора в ТД;
RS - запрашиваемый уровень привилегий.
Формирование физического адреса в защищенном режиме на основе ТД с использованием теневых регистров, которые используются для хранения дескрипторов активных сегментов, показано на рисунке 14.
Рисунок 14 - Формирование физического адреса в защищённом режиме
3. Разработка структуры процессора
По техническому заданию быстродействие разрабатываемого процессора должно составлять 4,0 млн. оп./с. Следовательно время Т выполнения одной команды не должно превышать:
Т ? 1/(4.0*106) > Т ? 250 нс.
Предварительный расчет быстродействия
1) выборка команды на выполнение осуществляется из памяти: T1=150+12=162 нс.;
2) дешифрация КОП может производится дешифратором: T2=2*33=66 нс (два слоя для получения нужной разрядности). Также включим в эту стадию время работы устройства управления (УУ), которое по дешифрированному КОП должно выдать соответствующие инструкции другим устройствам. Однако, если использовать программируемое УУ, то дешифрацию КОП можно выполнять с помощью преобразователя начального адреса (ПНА), которое представляет из себя ПЗУ. Таким образом: T2=tпна+tрег+tms+tпзу+tрег=35+12+10+35+12=104 нс.
3) простейший блок формирования эффективного адреса состоит из сумматора, на плечи которого подаются база, индекс и смещение. Однако, с точки зрения быстродействия стоит использовать на выходе сумматора мультиплексор, который позволяет получить значение, например, базы без участия сумматора:
T3=tрег+tsm+tms+tрег=12+46*2+10+12=126 нс.
4) T4=tsm+2*tрег+tms=46+2*12+10=80 нс.
5) операнды выбираются из памяти: T5=150+12=162 нс.
6) возьмем задержку на стандартном АЛУ при выполнении коротких операций: T6=150 нс.
7) Запись в память: T7=162 нс.
Итого:
Т=Т1+Т2+0,7*(Т3+Т4+Т5+Т6+Т7)
=162+104+0,7*(126+80+162+150+162)=742
Введём КЭШ данных. Время работы КЭШД tКЭШ = 30 нс, вероятность попадания - 95%. Тогда tВО= tЗР= 0,95* tКЭШД + 0,05*tОЗУ =36 нс. Таким образом,
5) операнды выбираются из памяти: T5=30*0,95+0,05*150 =36 нс.
7) Запись в память: T7=30*0,95+0,05*150 =36 нс.
Итого:
Т=Т1+Т2+0,7*(Т3+Т4+Т5+Т6+Т7)
=162+104+0,7*(126+80+36+150+36)=565,6
Структура с КЭШД по-прежнему не дает требуемого быстродействия, вводим ОК, которая позволяет выполнять предвыборку команды, тогда время ВК составит время чтения из ОК, вероятность сброса ОК - 10%, время заполнения - 50нс. Тогда
tВК= 12*0,9+0,1*(50 + tОЗУ)= 31нс.
Таким образом,
1) выборка команды на выполнение осуществляется из памяти:
T1=12*0,9+0,1*(50 + tОЗУ)= 31нс
Т2 = 35+12+10+35+12=104 нс.
Т1+Т2 = 31+104 = 135
Итого:
Т=Т1+Т2+0,7*(Т3+Т4+Т5+Т6+Т7) =135+0,7*(135+80+36+150+36)=489
Было принято ввести две ступени конвейера. 489/2 = 245
Структурная схема ПР включает операционное устройство (ОУ), два устройства управления (УУ) работой ступенями конвейера, оперативное запоминающее устройство (ОЗУ), аппаратуру прерываний (АП), очередь команд (ОК), блок формирования физического адреса (БФФА), кэш-данных (КЭШД), контроллер шины (КШ), арбитр шины (АШ), математический сопроцессор и буферные регистры для передачи данных между ступенями.
3.1 Разработка ступеней конвейера
Для достижения заданного быстродействия командный цикл процессора был разделён на три ступени.
К аппаратуре первой ступени относятся:
· управляющее устройство первой ступени (УУ1), осуществляющее роль связующего звена между остальными блоками и выполняющего выборку команды из ОК и её дешифрацию;
· очередь команд (ОК), позволяющая благодаря предвыборке команд из оперативной памяти и своей организации выбирать команды и содержащийся в команде операнд за один такт;
· набор регистров для хранения промежуточных данных.
· блок дешифрации команд (БДШК) осуществляет частичную дешифрацию команд, признаков адресации и определяет другие параметры.
К аппаратуре второй ступени относятся:
· управляющее устройство второй ступени (УУ2) осуществляет управление формированием эффективного и физического адреса, а также выборкой данных.
· блок формирования физического адреса (БФФА), организующий вычисление эффективного адреса, а затем физического, а также защиту памяти;
· набор регистров для хранения промежуточных данных.
К третьей ступени относятся:
· устройство управления третьей ступенью (УУ3) осуществляет непосредственное выполнение команд, запись в РОН, запись результата в кэш-память;
· набор регистров для хранения промежуточных данных.
· операционное устройство осуществляет работу под управлением УУ2 (работа с регистрами) и УУ3 (выполнение команды).
Для уменьшения нагрузки на системную магистраль данных и адреса, между некоторыми блоками введены непосредственные связи.
3.2 Разработка операционного устройства
Операционное устройство (ОУ) процессора предназначено для выполнения простых арифметических, логических операций, операций сдвига и сложных арифметических операций, таких как умножение, на основе простых. ОУ выполняет действия с операндами, имеющими разрядность 32, 16 или 8 бит. Подробнее о разработке операционного устройства написано далее в пункте описания процесса разработки функциональной схемы.
3.3 Разработка структуры ОЗУ
По ТЗ объем ОЗУ равен 256 Мбайт с шириной выборки 64 бит. Но передача за один цикл всего двух команд не даст существенного прироста быстродействия. Поэтому было решено увеличить ширину выборки до 128 байт.
Работа с ОЗУ производится в следующих направлениях:
1) заполнение ОК (2 128-х разрядных слова);
2) пополнение ОК (2 128-х разрядных слова);
3) заполнение КЭШД (128-е разрядное слово);
4) удаление из КЭШД (128-е разрядное слово).
Вся память делится на 4 модуля по 64 Мб каждый с шириной выборки 128 бит.
Структурная схема ОЗУ приведена на рисунке 15.
Рисунок 15 - Структурная схема ОЗУ
Взаимодействие ОЗУ и КЭШД или ОК осуществляется через локальную шину данных разрядностью 128 бита.
3.4 Разработка кэш-памяти
Время доступа к ОЗУ по техническому заданию составляет 150 нс. При заданном быстродействии работы процессора 4 млн. оп/сек это составляет половину всего времени, отведённого на команду, что не допустимо и прежде всего говорит о необходимости введения кэш-памяти.
Кэш-память вместе с ОЗУ образуют иерархическую структуру доступа к данным и ее действие эквивалентно быстрому доступу к ОЗУ. Рекомендуемый объем кэш-памяти 1/1000 от объема ОЗУ, что составит 256 Кбайт, однако, учитывая то, что процессор будет работать в однозадачном режиме, примем его равным 128 Кбайт.
Кэш-память строится из четырех модулей на основе частично-ассоциативного распределения (ЧАР). Достоинствами данного метода распределения является сокращение числа промахов по сравнению с методом прямого распределения, высокое быстродействие - чтение за один такт, а также незначительные аппаратурные затраты.
Модули образуют группу строк. Для выбора группы строк используется метод прямого распределения, а для выбора строки в группе - метод полностью ассоциативного распределения. Емкость строки - восемь 32-разрядных слов.
При ЧАР адрес разбивается на три части: старшая часть - тег - для сравнения с тегами из группы строк и выбора одной строки, средняя часть - индекс - для выбора группы строк и младшая часть - номер слова в строке. Таким образом, по индексу выбирается множество строк (группа), а по тегу - конкретная строка из этого множества. Ещё одно поле e вводится для того, чтобы обратиться в соответствии с заданными форматами к 8, 16 или полностью к 32 разрядам в 32-разрядном слове.
Обращение к массиву тегов и СОЗУ данных кэш-памяти происходит параллельно, поэтому, если требуемая строка присутствует в кэш-памяти, данные сразу же выдаются на МД.
Стратегия обновления ОЗУ - сквозная (прямая) запись с распределением WTWA. При такой стратегии, если адрес не принадлежит тегу (кэш-памяти), то и при чтении, и при записи нет необходимости удалять строку из кэш-памяти в ОЗУ, а сразу реализуется процедура замещения кэш-памяти по выбранной стратегии. Из ОП считывается строка и записывается в кэш-память на место строки, назначенной кандидатом на удаление, в память тегов записывается новый тег считанной строки. Таким образом, данный метод даёт выигрыш в быстродействии, так как не требуется выполнять процедуру удаления строки из кэш-памяти в ОЗУ (её копия всегда хранится там). Кроме того, выполнение командного цикла продолжается сразу после записи данных в кэш-память, не дожидаясь окончания цикла записи в ОП.
В качестве метода замещения кэш-памяти выбран метод, учитывающий активность строк - стратегия псевдо-LRU стека. При этом методе из кэш-памяти удаляется строка, которая дольше всех не использовалась, то есть при каждом обращении к строке ее номер заносится в стек, в результате удалению подлежит строка из наиболее глубокой позиции стека.
Если АTeg (кэш-памяти), то по одной из выбранных стратегий замещения определяется строка, подлежащая удалению из кэш-памяти в ОП, и выполняется процедура удаления (перезаписи) выбранной строки в ОП как при чтении, так и при записи, а затем реализуется процедура замещения кэш-памяти, т.е. из ОП считывается запрашиваемая строка и записывается в СОЗУ данных на место удаленной строки, а в память тегов - новый тег считанной строки. Затем требуемое слово записывается или считывается из кэш-памяти, т.к. теперь АTeg.
В целях повышения производительности КЭШД имеет два адресных порта. Через порт А происходит выборка операндов и если необходимо (в кэш-памяти нет необходимых данных), то через этот порт происходит обновление ОП и замещение кэш. Через порт B осуществляется запись результата в память.
Структура кэш памяти представлена на рисунке 16. Так как в двух портовой кэш очень много связей приведены только связи для одного порта. Второй порт аналогичен первому.
Рисунок 16 - Структура КЭШ-памяти
3.5 Разработка очереди команд
Т.к. КЭШД используется на 2-х ступенях конвейера из 3-х, и использование его для хранения и выборки команд привело бы к возникновению конфликтов по доступу к данным между ступенями конвейера, для первой ступени было решено ввести очередь команд (ОК).
ОК представляет собой буфер FIFO, в который выбираются команды из памяти перед выполнением. Для безостановочной работы ОК необходим объём в 2 раза превышающий ширину выборки, поэтому ОК состоит из 8 32-х разрядных слов или 256 бит. Функциональная схема ОК приведена на рисунке 17.
На схеме: CTWR - счётчик записи, указывает на первое свободно...
Подобные документы
Разработка устройства, реализующего набор команд из числа операций с плавающей точкой семейства процессора i486. Структура сопроцессора FPU. Принцип выполнения операций, разработка блок-схемы, построение структурной схемы основных блоков процессора.
курсовая работа [734,9 K], добавлен 27.10.2010Разработка структурной схемы вычислительного устройства, выбор системы команд и определение форматов. Разработка алгоритма командного цикла, выполнения арифметических и логических операций. Проектирование операционного автомата, устройств управления.
курсовая работа [2,8 M], добавлен 15.05.2014Разработка структурной схемы процессора; синтез микропрограммного и управляющего автомата с жесткой логикой. Функциональная организация процессора: программные модели, форматы данных и команд. Организация оперативной памяти. Проектирование блока операций.
учебное пособие [1,1 M], добавлен 09.04.2013Функциональная организация процессора. Сложение с нормализацией, синтез операций, выборка команды. Описание структурной схемы процессора. Синтез управляющего автомата, разметка граф схемы. Разбиение микроопераций по полям и кодирование логических условий.
курсовая работа [91,8 K], добавлен 24.09.2010Описание структурной схемы операционного устройства. Построение обратной структурной таблицы автомата. Проектирование функций выходов и управление элементами памяти. Изображение пользовательского интерфейса и инструкции по инсталляции и запуску программы.
курсовая работа [642,6 K], добавлен 19.05.2014Функциональная и структурная организация ЭВМ. Разработка функциональных микропрограмм заданных команд. Их объединение и привязка к структуре операционного автомата процессора. Разработка управляющего автомата процессора с программируемой логикой.
дипломная работа [4,0 M], добавлен 25.03.2012Анализ выбора цифрового сигнального процессора и структурной схемы устройства обработки информации. Расчет надежности устройства и производительности обмена данных, разработка ленточного графика. Обзор особенностей радиального и межмодульного интерфейса.
дипломная работа [1,8 M], добавлен 20.05.2012История развития центрального процессора. Основные проблемы создания многоядерных процессоров. Проектирование микропроцессорной системы на базе процессора Intel 8080. Разработка принципиальной схемы и блок-схемы алгоритма работы микропроцессорной системы.
курсовая работа [467,6 K], добавлен 11.05.2014Рассмотрение принципа работы процессора и его практической реализации с использованием языка описания аппаратуры Verilog. Проектирование системы команд процессора. Выбор размера массива постоянной памяти. Подключение счетчика инструкций и файла регистра.
курсовая работа [1,2 M], добавлен 26.05.2022Операции, осуществляемые при реализации алгоритмов цифровой обработки сигналов. Применение процессора ADSP-2106x для операций с фиксированной и плавающей точкой. Исключения при выполнении операций с плавающей точкой, режимы и границы округления.
реферат [35,2 K], добавлен 13.11.2009Разработка функциональной схемы операционного автомата микросхемы специализированного процессора, выполняющего заданную арифметическую операцию. Закодированная граф-схема машинного алгоритма. Таблица входов мультиплексора выбора осведомительного сигнала.
курсовая работа [669,9 K], добавлен 25.07.2013Разработка структурной, функциональной и принципиальной схем блока выполнения арифметической операции над числами, представленными в дополнительном коде в форме с плавающей запятой. Алгоритмы выполнения операции умножения. Анализ временных задержек.
курсовая работа [287,7 K], добавлен 07.06.2013Разработка структурной схемы устройства управления учебным роботом. Выбор двигателя, микроконтроллера, микросхемы, интерфейса связи и стабилизатора. Расчет схемы электрической принципиальной. Разработка сборочного чертежа устройства и алгоритма программы.
курсовая работа [577,8 K], добавлен 24.06.2013Расчет трудоемкости алгоритма. Определение быстродействия процессора. Характеристика контроллеров серии Direct Logic DL. Устройства, которые вошли в структуру системы. Выбор программного обеспечения. Расчет работоспособности и надежности системы.
курсовая работа [2,0 M], добавлен 14.01.2013Описание архитектуры внешних выводов кристалла процессора. Рассмотрение форматов данных для целых чисел со знаком и без знака. Выбор модели памяти и структуры регистровой памяти. Использование кэш прямого отображения. Арифметические и логические команды.
курсовая работа [890,5 K], добавлен 05.06.2015Разработка схемы базы данных для хранения журнала событий холодильника. Передача содержимого журнала в компьютер, подсоединенный к специальному гнезду на корпусе холодильника. Концептуальное и логическое проектирование программы встроенного процессора.
курсовая работа [1,9 M], добавлен 20.11.2020Разработка модели процессора, выполняющего набор машинных команд. Структурная схема процессора (операционного и управляющего автоматов), анализ принципа работы. Содержательный алгоритм микропрограммы, синтез управляющего автомата на основе жесткой логики.
курсовая работа [871,9 K], добавлен 16.09.2010Алгоритм умножения двоичных чисел. Выбор и описание структурной схемы операционного автомата. Реализация содержательной граф-схемы алгоритма. Построение отмеченной граф-схемы и структурной таблицы переходов и выходов. Правила кодирования на D-триггерах.
курсовая работа [273,2 K], добавлен 01.04.2013Синтез структуры простого магистрального процессора с одним АЛУ, выполняющего 8 заданных команд. Разработка формата и кодировки команд, структурной схемы процессора, функциональные схемы всех его блоков в целом с указанием шин и управляющих сигналов.
реферат [123,9 K], добавлен 18.05.2009Применение цифровых микросхем для вычисления, управления и обработки информации. Назначение микропроцессора и устройств микропроцессорной системы, их структурная и принципиальная схемы. Системная шина процессора и распределение адресного пространства.
курсовая работа [1,5 M], добавлен 29.02.2012