Блок управления для выполнения операции умножения в АЛУ
Курсовая работа, 06 Января 2011, автор: пользователь скрыл имя
Описание
Операции в операционном блоке выполняются под воздействием управляющих сигналов, которые вырабатываются в блоке управления. На вход блока управления подается код операции, который задает тип операции, выполняемой в операционном блоке. В зависимости от значения кода операции блок управления вырабатывает соответствующую последовательность управляющих сигналов, поступающих в операционный блок. Порядок выполнения операции может зависеть от значения признаков, которые также подаются в блок управления.
Содержание
1.Введение3
2.Задание6
3.Общая последовательность умножении чисел с ФТ 7
4.Структурная схема АЛУ 8
5.Алгоритм умножения чисел в АЛУ 9
6.Разработка функциональной схемы блоков управления для D-триггера 11
1.Общая последовательность разработки11
2.Формализация задания11
3.Выбор типа автомата14
4.Разметка схемы алгоритма14
5.Составление таблиц переходов и выходов16
6.Кодирование состояний17
7.Составление кодированной таблицы переходов и выходов18
8.Преобразование таблицы переходов в таблицу функций возбуждения триггеров20
9.Минимизация функций возбуждения и функций выходов20
10.Выбор типа логических элементов27
11.Преобразование функций переходов и функций выходов27
12.Построение функциональной схемы блока управления28
7.Разработка функциональной схемы блока управления для JK-триггера 31
7.1. Выбор типа триггеров31
7.2. Преобразование таблицы переходов в таблицу функций возбуждении триггеров31
7.3. Запись функций возбуждения и функций выходов в СДНФ33
7.4. Выбор типа логических элементов33
7.5. Преобразование функций переходов и функций выходов34
7.6. Построение функциональной схемы блока управления35
8.Функциональная схема блока управления 35
9.Заключение 39
Работа состоит из 1 файл
ТА.docx
— 1.49 Мб (Скачать документ)6.2 Формализация задания
При задании автомата микропрограммой количество входных сигналов равно числу различных условных операторов микропрограммы. В данном случае число условных операторов равно 5.
Для упрощения записи логических функций на рисунке 5 приняты следующие обозначения:
x- сигнал начала
a- проверка данных на «0»
b-проверка разряда множителя на «0»
c- счетчик разрядности регистра;
o-признак переполнения
Тогда входными сигналами блока управления являются сигналы x, а,b, c,o каждый из которых может принимать значение 0 или 1.
Число выходных сигналов блока управления равно числу микроопераций в микропрограмме. Обозначения выходных сигналов и соответствующие им микрооперации приведены в таблице 1.
Таблица 1
| №№
П/П |
Выходные
сигналы |
Микрооперации |
| 0 | Сигнал готовности | |
| 1 | Прием числа А из ОП в регистр A | |
| 2 | Прием числа В из ОП в регистр B | |
| 3 | Обнуление частичного произведения | |
| 4 | Обнуление счетчика разрядности регистра | |
| 5 | Накопление частичного произведение(ЧП) в регистре сумматора | |
| 6 | Сдвиг регистра ЧП вправо на 1 разряд | |
| 7 | Сдвиг регистра B вправо на 1 разряд | |
| 8 | Увеличение счетчика разрядности регистра на 1 | |
| 9 | Формирование признака результата | |
| 10 | Выдача результата из регистра сумматора в ОП |
С учетом числа входных и выходных сигналов общая схема блока управления может быть представлена в виде рисунка 3.
Рис.3
6.3
Выбор типа автомата
Заданием предусмотрено реализация блока управления в виде автомата Мура
Для разметки используется
формальная схема алгоритма, в которой
названия микроопераций заменяются
на соответствующие управляющие
сигналы из таблицы 1. При разметке
используем следующие правила:
- Начальный и конечный операторы помечаются символами начального состояния ().
- Безусловные операторы помечаются символами последовательно пронумерованных состояний , , ...
Размеченная
схема алгоритма представлена на
рисунке 6. Как видно по результатам
разметки, автомат имеет 11состояний
(Q0, Q1,
... Q10)
6.4
Разметка схемы алгоритма
6.5 Составление таблицы переходов и выходов
Таблица
переходов и выходов
Таблица 2
| Входы | | |||||||||||
| kabco | ||||||||||||
| 0 - - - - | Q0 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | |
| 1 0 0 0 0 | Q1 | Q2 | Q3 | Q4 | Q6 | Q6 | Q7 | Q8 | Q9 | Q0 | -- | |
| 1 0 0 0 1 | Q1 | Q2 | Q3 | Q4 | Q6 | Q6 | Q7 | Q8 | Q9 | Q10 | Q0 | |
| 1 0 0 1 0 | Q1 | Q2 | Q3 | Q4 | Q6 | Q6 | Q7 | Q8 | Q5 | Q0 | -- | |
| 1 0 0 1 1 | Q1 | Q2 | Q3 | Q4 | Q6 | Q6 | Q7 | Q8 | Q5 | Q10 | Q0 | |
| 1 0 1 0 0 | Q1 | Q2 | Q3 | Q4 | Q5 | Q6 | Q7 | Q8 | Q9 | Q0 | -- | |
| 1 0 1 0 1 | Q1 | Q2 | Q3 | Q4 | Q5 | Q6 | Q7 | Q8 | Q9 | Q10 | Q0 | |
| 1 0 1 1 0 | Q1 | Q2 | Q3 | Q4 | Q5 | Q6 | Q7 | Q8 | Q5 | Q0 | -- | |
| 1 0 1 1 1 | Q1 | Q2 | Q3 | Q4 | Q5 | Q6 | Q7 | Q8 | Q5 | Q10 | Q0 | |
| 1 1 0 0 0 | Q1 | Q2 | Q3 | Q4 | Q10 | -- | -- | -- | -- | -- | Q0 | |
| 1 1 0 0 1 | Q1 | Q2 | Q3 | Q4 | Q10 | -- | -- | -- | -- | -- | Q0 | |
| 1 1 0 1 0 | Q1 | Q2 | Q3 | Q4 | Q10 | -- | -- | -- | -- | -- | Q0 | |
| 1 1 0 1 1 | Q1 | Q2 | Q3 | Q4 | Q10 | -- | -- | -- | -- | -- | Q0 | |
| 1 1 1 0 0 | Q1 | Q2 | Q3 | Q4 | Q10 | -- | -- | -- | -- | -- | Q0 | |
| 1 1 1 0 1 | Q1 | Q2 | Q3 | Q4 | Q10 | -- | -- | -- | -- | -- | Q0 | |
| 1 1 1 1 0 | Q1 | Q2 | Q3 | Q4 | Q10 | -- | -- | -- | -- | -- | Q0 | |
| 1 1 1 1 1 | Q1 | Q2 | Q3 | Q4 | Q10 | -- | -- | -- | -- | -- | Q0 | |
6.6 Кодирование состояний
Принимаем
естественный способ
где:
- n – число элементов памяти;
- N – число S состояний автомата;
- ↑ – знак округления в большую сторону до целого.
При
N = 11 получим:
Обозначим элементы
памяти символами 1234.Далее каждому состоянию
поставим в соответствие двоичный код
его номер и набор состояний элементов
памяти. В результате получим следующее
кодирование состояний:
Q0 -> 0000 -> 1234
Q1 -> 0001 -> 12 34
Q2 -> 0010 -> 1234
Q3->0011 -> 1234
Q4->0100 -> 1234
Q5->0101 -> 1234
Q6->0110 -> 1234
Q7->0111 -> 1234
Q8->1000 -> 1234
Q9->1001 -> 1234
Q10->1010 ->
1234
Неиспользуемые комбинации (запрещенные):
1011 -> 1234
1100 -> 1234
1101 -> 1234
1110 ->1234
1111 -> 1234
6.7 Составление кодированной таблицы переходов и выходов
Для составления кодированной таблицы переходов заменим в таблице 2 состояния их двоичными номерами в соответствии с принятым кодированием. В результате получим кодированную таблицу переходов и выходов, которая имеет вид таблицы 3. В таблице 3 приведены как двоичные номера состояний, так и состояния каждого элемента памяти.
Таблица 3
| Входы | | ||||||||||
| 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | |
| KABTS | - - - - | - - - | - - - | - - | - - - | -
- |
- - | - | - - - | - - |
|
| 0 - - - - | - | - | - | - | - | - | - | - | - | - | - |
| 1 0 0 0 0 | 0001 | 0010 | 0011 | 0100 | 0110 | 0110 | 0111 | 1000 | 1001 | 0000 | - |
| 1 0 0 0 1 | 0001 | 0010 | 0011 | 0100 | 0110 | 0110 | 0111 | 1000 | 1001 | 1010 | 0000 |
| 1 0 0 1 0 | 0001 | 0010 | 0011 | 0100 | 0110 | 0110 | 0111 | 1000 | 0101 | 0000 | - |
| 1 0 0 1 1 | 0001 | 0010 | 0011 | 0100 | 0110 | 0110 | 0111 | 1000 | 0101 | 1010 | 0000 |
| 1 0 1 0 0 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 0000 | -- |
| 1 0 1 0 1 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 0000 |
| 1 0 1 1 0 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 0101 | 0000 | -- |
| 1 0 1 1 1 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 0101 | 1010 | 0000 |
| 1 1 0 0 0 | 0001 | 0010 | 0011 | 0100 | 1010 | -- | -- | -- | -- | -- | 0000 |
| 1 1 0 0 1 | 0001 | 0010 | 0011 | 0100 | 1010 | -- | -- | -- | -- | -- | 0000 |
| 1 1 0 1 0 | 0001 | 0010 | 0011 | 0100 | 1010 | -- | -- | -- | -- | -- | 0000 |
| 1 1 0 1 1 | 0001 | 0010 | 0011 | 0100 | 1010 | -- | -- | -- | -- | -- | 0000 |
| 1 1 1 0 0 | 0001 | 0010 | 0011 | 0100 | 1010 | -- | -- | -- | -- | -- | 0000 |
| 1 1 1 0 1 | 0001 | 0010 | 0011 | 0100 | 1010 | -- | -- | -- | -- | -- | 0000 |
| 1 1 1 1 0 | 0001 | 0010 | 0011 | 0100 | 1010 | -- | -- | -- | -- | -- | 0000 |
| 1 1 1 1 1 | 0001 | 0010 | 0011 | 0100 | 1010 | -- | -- | -- | -- | -- | 0000 |
6.8 Преобразование таблицы переходов в таблицу функций возбуждения триггеров
При использовании
D — триггеров преобразование таблицы
переходов не выполняется.
6.9 Минимизация функций возбуждения и функций выходов
Для окончательной минимизации функций используем метод Карно. При минимизации следует учесть, что все функции являются не полностью определенными, так как в таблице переходов не использованы состояния Q11,Q12, Q13, Q14, Q15. Отметим также, что метод Карно применим непосредственно только к функциям не более чем четырех переменных. В случае более сложных функций они минимизируются по частям.
Диаграммы Карно для функций , , ипоказаны на рисунке 4.
Рис.4
D1
| 1 | |||
| * | * | * | |
| * | * |
| 1 | |||
| * | * | * | |
| * | * |
| 1 | |||
| * | * | * | |
| * | * |