mirror of
https://github.com/MPSU/APS.git
synced 2025-09-15 17:20:10 +00:00
Раньше в вивадо была проблема с использованием mem-файлов. Они нормально моделировались, но при этом не использовались в синтезе, пока им не выставишь тип "Memory Initialization File". Однако с выставлением этого типа файл нельзя было открыть в вивадо (и даже поменять тип этого файла). Поэтому, все файлы в курсе носили расширение .txt, чтобы их можно было легко открыть в любом другом редакторе, а в вивадо выставлялся злополучный тип "Memory Initialization File" вручную. Сейчас же, судя по всему, вивадо нормально выполняет синтез и с "Memory File" тоже, а значит нет нужды в каком-либо изменении типов, лишь бы файлы носили расширение .mem. При этом файлы этого типа можно открывать и редактировать в редакторе вивадо.
7 lines
920 B
Plaintext
7 lines
920 B
Plaintext
//J B WS ALUop RA1 RA2 const WA
|
||
0 0 00 11111111111111111111111 00001 // загрузить константу -1 регистр 1
|
||
0 0 10 00000000000000000000000 00010 // загрузить значение с входа sw_i в регистр 2
|
||
0 0 00 00000000000000000000001 00011 // загрузить константу 1 регистр 3
|
||
0 0 01 00000 00001 00011 00000000 00001 // сложить регистр 1 с регистром 3 и поместить результат в регистр 1
|
||
0 1 00 11110 00001 00010 11111111 00000 // если значение в регистре 1 меньше значения в регистре 2, возврат на 1 инструкцию назад
|
||
1 0 00 00000 00001 00000 00000000 00000 // бесконечное повторение этой инструкции с выводом на out_o значения в регистре 1 |