- Исправлена ошибка в изображении с уровнями абстракций в системе RISCV.
Изображение векторизовано.
- Изменено взаимодействие с регистром mie, чтобы соответствовать
привилегированной спецификации.
- Удалено дублирование текста из дополнительных материалов по CSR.
- Обновлена программа с обработчиком перехватов: теперь регистр mie
выставляется в последнюю очередь.
* Переработка лабораторных работ, связанных с памятью
Существенно переработаны ЛР3 и ЛР7:
Из ЛР3 убрано задание реализовать память данных. Эта память
использовалась только студентами ИВТ и только в рамках одной лабы.
В итоге использовалась готовая память, и ничего не мешает использовать
ее с самого начала.
Задание по реализации памяти инструкций также претерпело изменения.
Теперь код памяти инструкций предоставляется сразу. Это объясняется тем,
что код модуля состоит в общем-то из 4х строк, на которые тратится
слишком много времени (с учетом добавления тестбенча и проверок).
Кроме того, использование готового кода позволяет дать модуль чуть
посложнее (с параметризацией размера).
По итогу правок, третья лабораторная работа превращается чисто в
лабораторную по написанию регистрового файла, что должно положительно
сказаться на кривой сложности лаб. После второй лабы происходит слишком
резкий скачок в объемах работы.
Соответственно, в связи с тем, что память данных больше не делается на
третьей лабе, дополнительная ЛР по памяти данных с byte enable
необходимо перенести до реализации тракта данных.
* ЛР3, 5, 6. Правки из ревью
* ЛР7. Добавление иллюстраций
Массив модулей позволяет описать 32-битный сумматор более лаконично и
что главнее — без использования цикла, который может навести на
крамольные мысли о программировании.
* Ref(01_Adder):Уд-ие лога о результатых симуляции
* Ref(01_Adder):Улучш-ие логирования
* Ref(01_Adder_32):Доб-ие timeunit
* Fix(01_Adder):Доб-ие #1 для ожидания line_dump
* Ref(01_Adder):Доб-ие инфы в тб для 32 битного сумматора
* Ref(01_Adder):Дополнение информацией board файла
* Ref(01_Adder):Итализация названия рисунка 3
* Ref(01_Adder):Испр-ие грамматических ошибок в board файле
* Revert "Ref(01_Adder):Доб-ие инфы в тб для 32 битного сумматора"
This reverts commit 96380b56dc.
* Revert "Fix(01_Adder):Доб-ие #1 для ожидания line_dump"
This reverts commit 34670f21f8.
* Revert "Ref(01_Adder_32):Доб-ие timeunit"
This reverts commit 11c97ac431.
* Revert "Ref(01_Adder):Улучш-ие логирования"
This reverts commit 92147fa303.
* Revert "Ref(01_Adder):Уд-ие лога о результатых симуляции"
This reverts commit 33c8dda06c.
* Ref(01_Adder):Испр-ие грамматики в README board files
* Ref(01_Adder): Применение правок по MD bordfiles после ревью
Co-authored-by: Andrei Solodovnikov <VoultBoy@yandex.ru>
* Ref(01_Adder):Замена рисунка в MD board_files
* Ref(01_Adder):Замена текста на ссылку по прошивке плис в board_files
* Style(01_Adder):Испр-ие названия рисунков
* Ref(01_Adder):Доб-ие ссылки на source window в board files
* Ref(01_Adder):Испр-ие орфографии в md board_files
* Style(01_adder_board):Разбивка длинных строк в md
* Ref(01_Adder_board_md):Доб-ие номеров в кругах
* Style(01_Adder_board_md):Доб-ие диапазонов в блок кода
* Ref(01_Adder_board):Переименование файлов рисунков
* Ref(01_Adder_board_md):Замена html color на latex
Тк mardown не поддерживает html цвета
* Revert "Ref(01_Adder_board_md):Замена html color на latex"
This reverts commit 90762590f7.
* Fix(01_Adder):Применение правок из ревью к md board files
Co-authored-by: Andrei Solodovnikov <VoultBoy@yandex.ru>
* Ref(01_Adder):Уд-ие лишней ссылки на инструкцию прошивки
* Ref(01_Adder):Изм-ие номера рисунка
* Ref(01_Adder):Переделка рисунка с 48 + 18
* Ref(01_Adder):Улучшение читаемости структурной схемы
* Repo((.pic/labs/board files):Уд-ие неиспользуемых пикч
* Repo(board_files):Возврат program_device
* Repo:Перемещение пикчи how_to_program в соотв папку
---------
Co-authored-by: Andrei Solodovnikov <VoultBoy@yandex.ru>
Пикча была сделана, когда лабы делались на Verilog. После перехода на
SystemVerilog стало невозможно использовать new в качестве шаблона имен
генерируемых сущностей.
Лабу по дейзи-цепочке необходимо вставить сразу после лабы по интеграции
контроллера прерываний, поэтому приходится увеличить нумерацию
оставшихся лаб.
Ранее после сброса, программатор сразу же отравлял начальное сообщение.
Подобное поведение неудобно, поскольку требует сперва запустить скрипт
прошивки, и только после этого делать сброс.
Теперь же программатор ждет начальной команды и только после этого,
отправляет сообщение по UART.