Andrei Solodovnikov
15d7b8ee3a
ЛР6. Обновление тб
...
Для проверки реализации stall-а, используется иерархическое подключение. Оно накладывает требования на нейминг нескольких сигналов, однако куда проще наложить требование на название одного контретного модуля.
2023-10-22 20:41:25 +03:00
Andrei Solodovnikov
b7da6e5c20
Обновление декодера
...
В связи со способом генерации инструкций, за отведенное время тб не генерировал инструкции сдвига, что вело к не совсем полному покрытию.
2023-10-18 17:41:49 +03:00
Andrei Solodovnikov
8d5e4687e8
Исправение багов в готовом модуле декодера
2023-10-18 17:39:38 +03:00
Andrei Solodovnikov
6ef7c8828d
Update lab_05.decoder.sv
...
UDP оказались не синтезируемой конструкцией.
2023-10-17 19:33:29 +03:00
Andrei Solodovnikov
d376b02a5e
ЛР4. Исправление ссылки на конкатенацию
2023-10-17 12:16:27 +03:00
Andrei Solodovnikov
8dda14675d
ЛР11. Исправление описки
2023-10-16 22:50:12 +03:00
Andrei Solodovnikov
505b5c5818
ЛР10. Переработка mcause
...
Приведение генерации причины перехвата в соответствие с машин модом.
Это необходимо для проверки проца с помощью spike.
2023-10-16 22:42:06 +03:00
Andrei Solodovnikov
91c4a73d60
Исправление ссылок на Verilog-файлы
...
.v->.sv
2023-10-16 20:51:27 +03:00
Andrei Solodovnikov
428419f7d4
ЛР3. Стилистические правки
2023-10-16 13:16:10 +03:00
Andrei Solodovnikov
c2d903da7c
ЛР7. Добавление методички
2023-10-16 13:15:24 +03:00
Andrei Solodovnikov
70d703154e
ЛР7. Хотфиксы готового модуля
2023-10-16 12:34:58 +03:00
Andrei Solodovnikov
53eb8f3bea
Стилистические правки в rv32i.md
2023-10-16 00:25:05 +03:00
Andrei Solodovnikov
f9507694b9
ЛР6. Исправление прототипа riscv_unit
2023-10-15 10:51:51 +03:00
Andrei Solodovnikov
a923ff2ea8
ЛР5. Добавление готового модуля
2023-10-13 22:33:39 +03:00
Andrei Solodovnikov
8ab6419fbc
ЛР10-11. Исправление микроархитектуры
...
Ранее, для того чтобы не маскировать сигналы, отвечающие за изменение
архитектурного состояния процессора, инструкция исполнялась до конца, а
уже после происходил перехват инструкции с записью в mepc следующего
значения PC.
Однако по спецификации, в mepc должен попадать адрес перехватываемой
инструкции (важно для проверки обработки исключений).
Таким образом, логика перехвата была изменена: маскируются все
управляющие сигналы, а в mepc записывается адрес текущей инструкции.
2023-10-13 17:14:54 +03:00
Andrei Solodovnikov
45d21be590
ЛР8. Объединение подзаголовков о пробрасываемых сигналах
2023-10-13 13:04:44 +03:00
Andrei Solodovnikov
4ebfae228c
ЛР8. Исправление схемы
2023-10-13 12:59:33 +03:00
Andrei Solodovnikov
b58325fce2
ЛР6. Удаление упоминания о инициализации памяти
...
Поскольку память теперь 32-разрядная, этот раздел не актуален.
2023-10-13 12:54:27 +03:00
Andrei Solodovnikov
e8bc3c8e8a
ЛР7. Добавление готового модуля
2023-10-12 09:21:49 +03:00
Andrei Solodovnikov
f8d15a2e8e
Шаги имплементации. Обновление схемы
2023-10-11 14:38:07 +03:00
Andrei Solodovnikov
3ddc89235b
ЛР5. Исправление формата сообщений в тб
2023-10-11 14:27:05 +03:00
Andrei Solodovnikov
892387e0f4
Merge pull request #17 from fhideous/master
...
Исправлено присваивание к несуществующему порту модуля
2023-10-09 23:31:54 +03:00
Vladislav
682cabfcb9
Исправлено присваивание к несуществующему порту
2023-10-09 23:27:01 +03:00
Andrei Solodovnikov
d3058e182a
ЛР3. Исправление подключения рф в nexys-модуле
...
В модуле использовался старый прототип подключения регистрового
файла.
Closes #13 .
2023-10-09 13:21:05 +03:00
Andrei Solodovnikov
d0441fd84f
Update How FPGA works.md
2023-10-09 13:05:42 +03:00
Andrei Solodovnikov
17c3756092
ЛР6. Исправление схемы
2023-10-08 20:23:29 +03:00
Andrei Solodovnikov
f3500aeb36
Завершение работы над пакетами
2023-10-07 12:11:27 +03:00
Andrei Solodovnikov
bff1cfa565
ЛР6. Добавление прототипов модулей
2023-10-06 14:27:15 +03:00
Andrei Solodovnikov
33190117b1
ЛР6. Добавление сигналов на схему ядра
2023-10-06 10:51:50 +03:00
Andrei Solodovnikov
9751077e86
ЛР5. Обновление таблицы с описанием инструкций
...
Поскольку в методичке в явном виде сказано назначить illegal_instr
значение 1 при инструкциях ecall/ebreak, данное поведение было
отраежено и в таблице с описанием инструкций.
2023-10-05 12:09:10 +03:00
Andrei Solodovnikov
301ea3be2f
ЛР5. Обновление тестбенча
2023-10-05 12:08:57 +03:00
Andrei Solodovnikov
58346759f9
Обновление пакетов
...
- parameter заменены на localparam, чтоб Vivado не кидал варнинги;
- добавлены недостающие пакеты и указания в методичках.
2023-10-05 12:02:26 +03:00
Andrei Solodovnikov
6ea395c761
ЛР5. Исправление опечатки
...
Исправлено слово "jump" в расшифровке инструкций jal/jalr.
2023-10-05 10:21:48 +03:00
Andrei Solodovnikov
44311a34ed
ЛР5,10,11. Исправление микроархитектуры
...
Для повышения читаемости, приоритетный мультиплексор разбит на каскад
двухвходовых мультиплексоров.
2023-10-05 10:21:48 +03:00
Andrei Solodovnikov
429907bfd6
ЛР3. Добавление указаний по реализации логики приоритетов
2023-10-05 00:06:13 +03:00
Andrei Solodovnikov
9f0aabe284
ЛР11. Убрано упоминание об использовании обратного кейса
...
Для реализации логики приоритетного мультиплексора предлагалось
использовать case (1'b1).
В статье "SystemVerilog's priority & unique - A Solution to Verilog's
'full_case' & 'parallel_case' Evil Twins!" не рекомендуется подобная
практика.
2023-10-04 23:55:36 +03:00
Andrei Solodovnikov
1dab75418f
Исправление микроархитектурной реализации jalr
...
Предыдущая реализация не выполняла требование спецификации по обнулению
младшего бита суммы, используемой в качестве нового значения
программного счетчика.
Подробнее см. RISC-V Unprivileged ISA V20191213 стр. 21
Closes #12
2023-10-04 22:23:09 +03:00
Andrei Solodovnikov
9c230e3bc6
ЛР11, ЛР5. Исправление поведения сигнала jalr на схеме
2023-10-04 14:02:05 +03:00
Andrei Solodovnikov
ba12b17096
ЛР5. Удаление проверки в ПЛИС из порядка выполнения работы
2023-10-03 17:45:23 +03:00
Andrei Solodovnikov
36edc08857
ЛР5. Исправление примера формирования сигналов
...
До этого пример был смешан из описания двух инструкций: lw и sw.
2023-10-03 17:45:16 +03:00
Andrei Solodovnikov
d70d39681e
ЛР3. Исправление ссылки на nexys_riscv
2023-10-03 13:34:39 +03:00
Andrei Solodovnikov
56af7c4d3c
ЛР3. Исправление тб памяти данных
...
Тестбенч не выполнял проверку на запись данных
2023-10-03 13:34:32 +03:00
Andrei Solodovnikov
e013ab2995
Update rv32i.md
2023-10-02 20:30:17 +03:00
Andrei Solodovnikov
e5250cfecc
ЛР3. Выделение требования о делении на 4
2023-10-02 14:21:35 +03:00
Andrei Solodovnikov
221ba1a282
Merge pull request #8 from gr33nka/master
...
Обновление раздела мотивации
2023-10-02 11:42:52 +03:00
Andrei Solodovnikov
d193da2d00
Стилистические правки в мотивации
2023-10-02 11:42:22 +03:00
Andrei Solodovnikov
3888f38f86
Merge pull request #10 from Nekkit6/master
...
Правка тб дек
2023-10-02 08:34:22 +03:00
Andrei Solodovnikov
17c57634d9
ЛР11.Исправление схÐмикрсхемы ядраÐ
2023-10-02 08:31:25 +03:00
Nekkit6
2475e50613
Правка тб
2023-10-02 08:27:55 +03:00
Andrei Solodovnikov
d23141f03b
Merge pull request #9 from Nekkit6/master
...
Правки тб декодера
2023-10-02 08:25:46 +03:00