Commit Graph

80 Commits

Author SHA1 Message Date
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
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
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
3ddc89235b ЛР5. Исправление формата сообщений в тб 2023-10-11 14:27:05 +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
f3500aeb36 Завершение работы над пакетами 2023-10-07 12:11:27 +03:00
Andrei Solodovnikov
bff1cfa565 ЛР6. Добавление прототипов модулей 2023-10-06 14:27:15 +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
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
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
e5250cfecc ЛР3. Выделение требования о делении на 4 2023-10-02 14:21:35 +03:00
Nekkit6
2475e50613 Правка тб 2023-10-02 08:27:55 +03:00
Nekkit6
15b3251979 Правки тб декодера 2023-10-02 00:31:51 +03:00
Andrei Solodovnikov
70c8d9b5f8 ЛР4. Исправление примера в теории по ИЗ 2023-10-01 22:58:35 +03:00
Andrei Solodovnikov
63426e8459 ЛР4. Обновление демо-программы под 32-битные ячейки памяти 2023-09-27 14:09:37 +03:00
Andrei Solodovnikov
7d12c5ce05 ЛР3. Удаление дубликата слова.md 2023-09-25 16:00:16 +03:00
Andrei Solodovnikov
12e6125c71 ЛР3. Исправление опечатки и сложной формулировки.md 2023-09-25 15:40:18 +03:00
Andrei Solodovnikov
7d23ab2fb9 ЛР2. Удаление ссылок на лекции.md 2023-09-25 15:37:00 +03:00
Andrei Solodovnikov
533b816acb ЛР4. Исправление программы
Программа обновлена под 32-разрядные ячейки памяти инструкций
2023-09-25 00:07:18 +03:00
Andrei Solodovnikov
e16cb09099 ЛР12. Обновление методички 2023-09-24 10:49:29 +03:00
Andrei Solodovnikov
d80218945c Merge pull request #6 from Nekkit6/master
Правка tb_data_mem
2023-09-20 16:10:41 +03:00
Andrei Solodovnikov
ea2eeaac03 Добавление готовых модулей 2023-09-20 16:06:20 +03:00
Nekkit6
5bdc5cc032 Правка tb_data_mem 2023-09-19 22:49:45 +03:00
Andrei Solodovnikov
3e0b149e82 Update cyberconverter.cpp 2023-09-19 16:07:04 +03:00
Andrei Solodovnikov
b1924b5559 Cyberconverter. Обновление программы под 32бита 2023-09-19 15:41:07 +03:00
Andrei Solodovnikov
3cf8ec2c9b Cyberconverter. Исправление под 32разрядные ячейки 2023-09-19 15:31:37 +03:00
Andrei Solodovnikov
4535d75f26 ЛР3. Исправление html-тэга 2023-09-19 15:06:20 +03:00
Andrei Solodovnikov
004b2c3bba ЛР2. Исправление подключения АЛУ в nexys_alu 2023-09-19 11:02:52 +03:00
Andrei Solodovnikov
cbd8112ee2 Merge pull request #5 from Nekkit6/master
Правки тб памяти
2023-09-18 21:52:50 +03:00
Nekkit6
574cabd9f9 Правка тб рег файла 2023-09-18 21:47:10 +03:00
Andrei Solodovnikov
541cbb6021 ЛР3. Убрано лишнее указание в порядке выполнения задания 2023-09-18 21:07:45 +03:00
Andrei Solodovnikov
552c43326c Update tb_miriscv_alu.sv 2023-09-18 20:06:08 +03:00