Commit Graph

59 Commits

Author SHA1 Message Date
Andrei Solodovnikov
12bbbbfe0f ЛР14. Изменение точки входа конечного автомата
Ранее после сброса, программатор сразу же отравлял начальное сообщение.
Подобное поведение неудобно, поскольку требует сперва запустить скрипт
прошивки, и только после этого делать сброс.
Теперь же программатор ждет начальной команды и только после этого,
отправляет сообщение по UART.
2024-01-30 15:55:08 +03:00
Andrei Solodovnikov
7208184af8 ЛР12. Замена копирайтной пикчи. 2024-01-30 14:22:43 +03:00
Andrei Solodovnikov
63c2f603b9 Обновление изображения пульта 2024-01-28 14:09:18 +03:00
Andrei Solodovnikov
2515b912a3 Перерисовка таблицы кодирования инструкций в rv32i 2024-01-26 16:16:41 +03:00
Andrei Solodovnikov
d0bf82df6c ЛР2. Обновление изображений, указание источников
Перерисованы изображения, взятые из Цифровой схемотехники, и добавлена
ссылка в конце лабы.
2024-01-26 15:57:19 +03:00
makarichev
999084f36a КЛ 8, 10. Исправление ошибки в микроархитектуре 2024-01-14 14:57:37 +03:00
tyrty23
e5370ffcc8 КЛ3, 14, 15. Хотфиксы
* Add corrected figure

* Update 03. Digital arithmetics.md

* Add corrected figure

* Update 03. Digital arithmetics.md

* Delete .pic/Lectures/03. Digital arithmetics/fig_08.png

* Add files via upload

* Update 15. Memory.md

Исправление синтаксических ошибок в 15 лекции

* Update 15. Memory.md

* Update 14. Interrupt subsystem.md

исправление опечатки в названии файла

* Update Lectures/03. Digital arithmetics.md

Co-authored-by: Andrei Solodovnikov <VoultBoy@yandex.ru>

* Update Lectures/03. Digital arithmetics.md

Co-authored-by: Andrei Solodovnikov <VoultBoy@yandex.ru>

* Delete .pic/Lectures/03. Digital arithmetics/fig_07.png

* Rename fig_08.png to fig_07.png

* Delete .pic/Lectures/03. Digital arithmetics/fig_07.png

* Add files via upload

---------

Co-authored-by: Andrei Solodovnikov <VoultBoy@yandex.ru>
2024-01-14 13:31:37 +03:00
Andrei Solodovnikov
1374a14e93 ЛР15. Добавление методички 2023-12-31 20:52:10 +03:00
Andrei Solodovnikov
961613f267 Обновление иллюстраций к лабам 2023-12-25 21:43:13 +03:00
Andrei Solodovnikov
37b354b5bc Обновление иллюстрации к описанию ЛР13 2023-12-24 12:36:41 +03:00
Turamys
43ada76eeb upgrate picture (#35)
* upgrate picture

* upgrate picture

* upgrate picture
2023-12-24 12:25:13 +03:00
Andrei Solodovnikov
a608ba831a ЛР12. Исправление карты памяти VGA 2023-12-19 12:01:21 +03:00
Andrei Solodovnikov
425d9bb4ac Добавление методички 14ой лабы и пустого ридми 15-ой 2023-12-17 21:28:30 +03:00
Andrei Solodovnikov
0b50931ac3 ЛР10-11. Исправление бага в микроархитектуре
В случае перехвата во время исполнения LOAD/STORE инструкции,
программный не менялся.

Closes #31.
2023-12-12 20:42:36 +03:00
Andrei Solodovnikov
c3bb1df66b Добавление конспектов лекций 2023-12-11 21:11:00 +03:00
Andrei Solodovnikov
2c7ea597cc ЛР5. Исправление описания операций в таблице 2023-12-06 01:00:50 +03:00
Andrei Solodovnikov
b710a519cb Исправление адреса в примере реализации контроллера 2023-12-03 23:34:01 +03:00
Andrei Solodovnikov
4795862e41 ЛР12. Обновление описания цветовой палитры VGA 2023-12-02 13:23:06 +03:00
Andrei Solodovnikov
1722950b07 ЛР12. Исправление диапазона адресов VGA-модуля 2023-12-02 12:06:29 +03:00
Andrei Solodovnikov
746fb2794e ЛР8. Добавление сигнала сброса на вход LSU 2023-11-28 14:43:43 +03:00
Andrei Solodovnikov
0f433e1b25 ЛР12. Добавление сигнала сброса 2023-11-28 14:43:43 +03:00
Andrei Solodovnikov
19bc1afcbf ЛР12. Убрано использование ready 2023-11-28 11:17:49 +03:00
Andrei Solodovnikov
9bbbe0c820 ЛР12. Обновление методички 2023-11-27 00:22:01 +03:00
Andrei Solodovnikov
80c4b5ea2f ЛР5. Исправление значения func7 для mret в сводной таблице 2023-11-26 15:20:45 +03:00
Andrei Solodovnikov
0c72f3a0c0 ЛР10. Уточнение принципа работы регистра mtvec 2023-11-23 16:21:52 +03:00
Andrei Solodovnikov
a47e4d441c ЛР3,7,12. Убрано использование магических констант при работе с памятью
Данная логика не используется в реальных проектах и добавляет большие
мультиплексоры, отрицательно сказывающиеся на таймингах схемы.
2023-11-15 17:59:41 +03:00
Andrei Solodovnikov
8ee7df7656 ЛР6. Изменение разрядности wb_src_sel на схеме
Выход декодера двухразрядный, в будущих лабах это будет использовано.

Closes #23
2023-11-14 19:38:34 +03:00
Andrei Solodovnikov
522dd525b3 ЛР10-11. Исправление микроархитектуры
Логика генерации нового значения PC содержала ошибку.

Fixes #25
2023-11-14 18:00:14 +03:00
Andrei Solodovnikov
fdc9d8c664 ЛР6. Разрыв общего сигнала rst_i между ядром и столлом
Студентов сбивал с толку общий сигнал, терялось понимание направления
сигналов.
2023-11-14 11:30:10 +03:00
Andrei Solodovnikov
2790eb87f1 ЛР6. Исправление схемы
Один из выходных сигналов декодера имел неверное имя.
2023-11-14 11:28:32 +03:00
Andrei Solodovnikov
8feee4531b ЛР11. Обновление микроархитектуры ядра 2023-11-07 15:14:08 +03:00
Andrei Solodovnikov
8b870423c9 Update README.md 2023-11-07 15:05:45 +03:00
Andrei Solodovnikov
154f212562 ЛР10. Обновление методички
- Упрощен контроллер прерываний и логика генерации mcause.
- Обновлен код примера обработчика перехвата.
2023-11-02 13:10:57 +03:00
Andrei Solodovnikov
505b5c5818 ЛР10. Переработка mcause
Приведение генерации причины перехвата в соответствие с машин модом.
Это необходимо для проверки проца с помощью spike.
2023-10-16 22:42:06 +03:00
Andrei Solodovnikov
8ab6419fbc ЛР10-11. Исправление микроархитектуры
Ранее, для того чтобы не маскировать сигналы, отвечающие за изменение
архитектурного состояния процессора, инструкция исполнялась до конца, а
уже после происходил перехват инструкции с записью в mepc следующего
значения PC.

Однако по спецификации, в mepc должен попадать адрес перехватываемой
инструкции (важно для проверки обработки исключений).

Таким образом, логика перехвата была изменена: маскируются все
управляющие сигналы, а в mepc записывается адрес текущей инструкции.
2023-10-13 17:14:54 +03:00
Andrei Solodovnikov
4ebfae228c ЛР8. Исправление схемы 2023-10-13 12:59:33 +03:00
Andrei Solodovnikov
f8d15a2e8e Шаги имплементации. Обновление схемы 2023-10-11 14:38:07 +03:00
Andrei Solodovnikov
17c3756092 ЛР6. Исправление схемы 2023-10-08 20:23:29 +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
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
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
17c57634d9 ЛР11.Исправление схÐмикрсхемы ядраÐ 2023-10-02 08:31:25 +03:00
Andrei Solodovnikov
e16cb09099 ЛР12. Обновление методички 2023-09-24 10:49:29 +03:00
Andrei Solodovnikov
9febccbd1f ЛР12. Обновление схемы 2023-09-18 21:59:25 +03:00
Andrei Solodovnikov
cf806ccca7 Добавлена доп литература и полезные ссылки 2023-09-16 21:14:25 +03:00
Andrei Solodovnikov
c4bfaae20f Добавлен основной README 2023-09-15 12:04:38 +03:00
Andrei Solodovnikov
9ab04c3c43 Обновлен документ с преподавателями 2023-09-14 21:58:45 +03:00