Выполнение математических операций
В каждом варианте необходимо реализовать 4 различные операции. Рассмотрим простейший пример выполнения операции сложения с помощью АЛУ.
Описание операции:
На вход поступают 2 числа: x и y. Результатом выполнения операции является переменная rez. Переменная x записывается в регистр W. При использовании операции ADDWF над числами x и y в переменную y записывается значение, равное сумме x и y. Далее новое значение переменной y присваивается переменной rez.
Пример работы операции:
x | y | W | Выполнение операции | rez |
Приемы реализации АЛУ
Построение схемы АЛУ в данной курсовой работе выполняется в среде разработки Proteus.
Изначальное задание операндов в регистровой памяти, задание кода операции и адресов операндов проще всего реализовать с использованием генераторов шаблонов PatternGenerator, при преобразовании модели в электрическую принципиальную схему, информационные входы подсоединяются к некоторому условному разъему, как и информационные выходы результирующего регистра. К этому же разъему подсоединяются управляющие входы, по которым задаются код операции и адреса операндов в регистровой памяти. Генераторы шаблонов в электрической принципиальной схеме не отображаются. Для оптимизации схемы необходимо использовать шину.
Работа с шиной в Proteus
Для того чтобы пользоваться шиной, необходимо в боковом меню выбрать BusesMode, как показано на рисунке:
В поле создания схемы нужно установить курсор и выполнить однократное нажатие левой кнопкой мыши, после чего можно провести линию (шину) необходимой длины. Так же однократным кликом левой кнопки мыши указываются повороты шины, а двойным – конец шины. Далее можно поставить 2 элемента, входы/выходы которых будут соединяться.
Для того чтобы подать сигнал с выхода «9» регистра U1 на вход «5» регистра U2, следует провести провода от «9» и «5» к шине, после чего добавить для них одинаковый Label. Label создаётся при помощи клика правой кнопки мыши по проводу и выбора в появившемся меню пункта «PlaceWireLabel»
Использование шины делает схему менее нагруженной, упрощает процесс ее создания, а так же облегчает понимание схемы.
Индивидуальные задания
Выполняются на основе системы команд PIC18XX 2 (см стр.214 -216 datasheet), и процессоров Intel, так же каждому отдельно выдается определенный вид команды деления.
Вар. | Команды PIC | Команды Intel |
1. | ADDWF, MULWF, | NEG |
2. | IORLW | JNAE, SHR |
3. | RLCF, SUBLW | JAE |
4. | BTG, NEGF | JNB |
5. | MULLW | JBE, RCL |
6. | RLNCF, ADDLW | JNBE |
7. | SUBWF, SETF | JE |
8. | INCFSZ, BTFSS | JNE |
9. | RRCF, ANDLW | JL |
10. | BTFSS | JNGE, ROL |
11. | DCFSNZ, CLRF | JGE |
12. | XORWF, SUBFWB | JNL |
13. | INCF, MULLW | JLE |
14. | COMF, BCF | JNLE |
15. | RLNCF, ANDWF | JG |
16. | ADDWF, SUBLW | JNLE |
17. | BSF | JP, SUB |
18. | IORWF | JPO |
19. | RRNCF, MULWF, | JS |
20. | COMF, SUBLW | JNS |
21. | RRCF | JC, TEST |
22. | ADDWF, XORWF | JNC |
23. | SETF, IORWF | ADD |
24. | RRCF, INFSNZ, | JNO |
25. | RLNCF, DECF | JO |
26. | RLNCF, MULLW | XOR |
Приложение 1. Оформление курсовой работы
Приложение 2. Пример оформления графической части.