Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мой курсач.doc
Скачиваний:
6
Добавлен:
16.09.2019
Размер:
756.74 Кб
Скачать

2 Постановка задач проекта

2.1 Требования к структуре и интерфейсу гипотетического микропроцессора

К разработке микропроцессора выдвигаются следующие требования:

  • разработать общую структуру гипотетического микропроцессора для реализации заданного подмножества команд микропроцессора - прототипа при реальном режиме адресации с заданными способами адресации;

  • определить состав операционных элементов и интерфейс каждого элемента при объединении их в структуре микропроцессора;

  • разработать алгоритмы выполнения команд заданного подмножества и микропрограмму обработки команд устройства управления.

2.2 Требования к структуре и интерфейсу алу микропроцессора

Разработать структуру АЛУ ЗМО и микропрограммы реализации в АЛУ операций для заданных команд и способа адресации операционного автомата.

2.3 Требования к структуре микро эвм

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

3 Разработка алу микропроцессора

3.1 Разработка оа для отдельных операций алу

3.1.1 Разработка оа для операции сложения add

По заданию к КП операция ADD выполняется с регистром и памятью (8 бит). Поэтому n=8.

На рисунке 3.1 изображена структурная схема операции сложения ADD.

Рисунок 3.1 – Структурная схема операции сложения

Состав ОА:

  1. НСМ – накапливающий сумматор (первый операнд);

  2. Р1 – регистр (второй операнд);

  3. ТП – триггер переполнения.

НСМ[1, п] – знак первого операнда

Р1[1] – знак второго операнда

Список микроопераций:

  1. Y1: НСМ := НСМ + Р1;

  2. Y2: НСМ := НСМ + Р1[1]Р1[1]. Р1[2:n];

  3. Y3: НСМ := НСМ[1] НСМ[п]. НСМ[2:n];

  4. Y4: ТП :=1;

  5. Y5: CF :=1;

  6. Y6: CF :=0;

  7. Y7: 0F :=1;

  8. Y8: 0F :=0.

Осведомительные сигналы:

  1. X1: Р1[1];

  2. X2: НСМ[1];

  3. X3: НСМ[п].

3.1.2 Разработка оа для операции умножения по алгоритму с младших разрядов множителя со сдвигом частичных сумм вправо mul(a)

Для выполнения операции умножения MUL АЛУ содержит следующие элементы:

  • регистр множимого (РМн);

  • сумматор (СМ);

  • регистр множителя (РМт);

  • счетчик тактов (СТ).

По заданию к КП операция MUL выполняется с регистром и непосредственным операндом (8 бит). Поэтому n=8, а накапливающий сумматор 16-разрядный.

Структурная схема АЛУ представлена на рисунке 3.2.

Рисунок 3.2 – Структурная схема операции умножения

Состав ОА:

  1. НСМ – накапливающий сумматор (первый операнд);

  2. РМт – регистр множителя;

  3. РМн – регистр множимого;

  4. СТ – счетчик тактов.

Список микроопераций:

    1. Y1: НСМ:=0;

    2. Y2: НСМ:=0.R1(НСМ);

    3. Y3: НСМ:=НСМ+РМн;

    4. Y4: РМт:=НСМ[n].R1(РМт);

    5. Y5: СТ:=n;

    6. Y6: СТ:=СТ-1;

    7. Y7: 0F :=1;

    8. Y8: 0F :=0.

Осведомительные сигналы:

  1. X1: РМт[n];

  2. X2: СТ=0;

  3. X3: НСМ=0.

3.1.3 Разработка оа для операции декремента dec

Структурная схема операции DEC приведена на рисунке 3.3.

Рисунок 3.3 Структурная схема операции декремента

Список микроопераций:

1) Y1: Р1:=Р1 - 1.

3.2 Разработка общего оа алу

На рисунке 3.4 приведена структурная схема общего ОА АЛУ.

Рисунок 3.4 Структурная схема ОА АЛУ ЗМО

Состав ОА:

  1. НСМ – накапливающий сумматор;

  2. Р1 – регистр (первый операнд);

  3. Р2 – регистр (второй операнд);

  4. СТ – счетчик тактов;

  5. ТП – триггер переполнения;

  6. РКО – регистр кода операции;

  7. BR1, BR2 – буферные регистры.

Список микроопераций:

  1. Y1: НСМ:=0;

  2. Y2: НСМ:=BR1;

  3. Y3: Р1:=BR1;

  4. Y4: Р2:=BR2;

  5. Y5: НСМ:=0.R1(НСМ);

  6. Y6: НСМ:=НСМ+Р2;

  7. Y7: Р1:=НСМ[n].R1(Р1);

  8. Y8: СТ:=n;

  9. Y9: СТ:=СТ-1;

  10. Y10: НСМ := НСМ + Р2;

  11. Y11: НСМ := НСМ + Р2[1]Р2[1]. Р2[2:n];

  12. Y12: НСМ := НСМ[1] НСМ[п]. НСМ[2:n];

  13. Y13: ТП :=1;

  14. Y14: Р1:= Р1-1;

  15. Y15: CF:= 0;

  16. Y16: CF:= 1;

  17. Y17: OF:= 0;

  18. Y18: OF:= 1;

  19. Y19: РКО:= КОП;

  20. Y20: АЛУ:= 0;

  21. Y21: РР[0:n] := НСМ;

  22. Y22: РР[n+1:2n]:= Р1.

Осведомительные сигналы:

  1. X1: Р1[n];

  2. X2: НСМ[1];

  3. X3: НСМ[п];

  4. X4: СТ=0;

  5. X5: РКО = ADD;

  6. X6: РКО = MUL;

  7. X7: РКО = DEC;

  8. X8: АЛУ;

  9. X10: НСМ.