Skip to content

Commit af6c613

Browse files
markast555HepoH3
andauthored
Старые названия модулей (#116)
* Старые названия модулей Старые названия у модулей riscv_core (processor_core) и riscv_unit (processor_system) в Labs/07. Datapath/board files/README.md * Чистка старых названий модулей --------- Co-authored-by: Andrei Solodovnikov <[email protected]>
1 parent 5f357fd commit af6c613

File tree

7 files changed

+19
-19
lines changed

7 files changed

+19
-19
lines changed

.pic/Labs/board files/nexys_riscv_unit_structure.drawio.svg renamed to .pic/Labs/board files/nexys_processor_system_structure.drawio.svg

Lines changed: 6 additions & 6 deletions
Loading

Labs/07. Datapath/board files/README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
1-
# Проверка работы riscv_unit на ПЛИС
1+
# Проверка работы processor_system на ПЛИС
22

33
После того, как вы проверили на моделировании дизайн, вам необходимо проверить его работу на прототипе в ПЛИС.
44

55
Инструкция по реализации прототипа описана [здесь](../../../Vivado%20Basics/07.%20Program%20and%20debug.md).
66

77
На _рис. 1_ представлена схема прототипа в ПЛИС.
88

9-
![../../../.pic/Labs/board%20files/nexys_riscv_unit_structure.drawio.svg](../../../.pic/Labs/board%20files/nexys_riscv_unit_structure.drawio.svg)
9+
![../../../.pic/Labs/board%20files/nexys_processor_system_structure.drawio.svg](../../../.pic/Labs/board%20files/nexys_processor_system_structure.drawio.svg)
1010

11-
_Рисунок 1. Структурная схема модуля `nexys_riscv_unit`._
11+
_Рисунок 1. Структурная схема модуля `nexys_processor_system`._
1212

1313
Прототип позволяет потактово исполнять программу, прошитую в память инструкций. Также прототип отображает операцию исполняемую в данный момент.
1414

1515
> [!NOTE]
16-
> Объект модуля `riscv_core` в модуле `riscv_unit` **должен** называться `core`. Т.е. строка создания сущности модуля должна выглядеть следующим образом: `riscv_core core(...)`.
16+
> Объект модуля `processor_core` в модуле `processor_system` **должен** называться `core`. Т.е. строка создания сущности модуля должна выглядеть следующим образом: `processor_core core(...)`.
1717
1818
## Описание используемой периферии
1919

2020
- ### Кнопки
2121

2222
- `BTND` — при нажатии создает тактовый импульс, поступающий на порт тактирования `clk_i` модуля дизайна. Стоит помнить то, что инструкции, работающие с внешней памятью, требуют несколько тактов для своего выполнения.
23-
- `CPU_RESET` — соединен со входом `rst_i` модуля дизайна. Поскольку в модуле `riscv_unit` используется синхронный сброс (то есть сигнал сброса учитывается только во время восходящего фронта тактового сигнала), то для сброса модуля `riscv_unit` и вложенных в него модулей необходимо при зажатой кнопке сброса еще нажать кнопку тактирования.
23+
- `CPU_RESET` — соединен со входом `rst_i` модуля дизайна. Поскольку в модуле `processor_system` используется синхронный сброс (то есть сигнал сброса учитывается только во время восходящего фронта тактового сигнала), то для сброса модуля `processor_system` и вложенных в него модулей необходимо при зажатой кнопке сброса еще нажать кнопку тактирования.
2424

2525
- ### Семисегментные индикаторы
2626

@@ -37,7 +37,7 @@ _Рисунок 1. Структурная схема модуля `nexys_riscv_u
3737

3838
Соответствие операции ее отображению на семисегментных индикаторах представлено на _рис. 2_:
3939

40-
!['../../../.pic/Labs/board%20files/nexys_riscv_unit_operations.drawio.svg'](../../../.pic/Labs/board%20files/nexys_riscv_unit_operations.drawio.svg)
40+
!['../../../.pic/Labs/board%20files/nexys_processor_system_operations.drawio.svg'](../../../.pic/Labs/board%20files/nexys_processor_system_operations.drawio.svg)
4141

4242
_Рисунок 2. Соответствие операции ее отображению на семисегментных индикаторах._
4343

Labs/07. Datapath/board files/nexys_riscv_unit.sv

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ typedef struct {
6464
logic dp;
6565
} Semseg;
6666

67-
module nexys_riscv_unit(
67+
module nexys_processor_system(
6868
input logic clk_i,
6969
input logic arstn_i,
7070
input logic btnd_i,

Labs/15. Programming device/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
2. Изучить информацию о конечных автоматах и способах их реализации ([#практика](#практика))
1313
3. Описать перезаписываемую память инструкций ([#память инструкций](#перезаписываемая-память-инструкций))
1414
4. Описать и проверить модуль программатора ([#программатор](#программатор))
15-
5. Интегрировать программатор в процессорную систему и проверить её ([#интеграция](#интеграция-программатора-в-riscv_unit))
15+
5. Интегрировать программатор в процессорную систему и проверить её ([#интеграция](#интеграция-программатора-в-processor_system))
1616
6. Проверить работу системы в ПЛИС с помощью предоставленного скрипта, инициализирующего память системы ([#проверка](#%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D1%80-%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D1%8B))
1717

1818
## Теория
@@ -517,11 +517,11 @@ _Листинг 5. Готовая часть программатора._
517517

518518
> Так как вышесказанное по сути является полным описанием работы программатора на русском языке, то фактически **задача сводится к переводу** текста описания программатора **с русского на SystemVerilog**.
519519
520-
### Интеграция программатора в riscv_unit
520+
### Интеграция программатора в processor_system
521521

522522
![../../.pic/Labs/lab_15_programming_device/fig_04.drawio.svg](../../.pic/Labs/lab_15_programming_device/fig_04.drawio.svg)
523523

524-
_Рисунок 4. Интеграция программатора в `riscv_unit`._
524+
_Рисунок 4. Интеграция программатора в `processor_system`._
525525

526526
В первую очередь, необходимо заменить память инструкций и добавить новый модуль. После чего подключить программатор к памяти инструкций и мультиплексировать выход интерфейса памяти данных программатора с интерфейсом памяти данных LSU. Сигнал сброса процессора необходимо заменить на выход `core_reset_o`.
527527

@@ -580,7 +580,7 @@ _Листинг 6. Пример использования скрипта для
580580
2. Добавьте в модуль `processor_system` экземпляр модуля-программатора.
581581
1. Интерфейс памяти инструкций подключается к порту записи модуля `rw_instr_mem`.
582582
2. Интерфейс памяти данных мультиплексируется с интерфейсом памяти данных модуля `LSU`.
583-
3. Замените сигнал сброса модуля `riscv_core` сигналом `core_reset_o`.
583+
3. Замените сигнал сброса модуля `processor_core` сигналом `core_reset_o`.
584584
4. В случае если у вас есть периферийное устройство `uart_tx` его выход `tx_o` необходимо мультиплексировать с выходом `tx_o` программатора аналогично тому, как был мультиплексирован интерфейс памяти данных.
585585
6. Проверьте процессорную систему после интеграции программатора с помощью верификационного окружения, представленного в файле [`lab_15.tb_processor_system.sv`](lab_15.tb_processor_system.sv).
586586
1. Данный тестбенч необходимо обновить под свой вариант. Найдите строки со вспомогательным вызовом `program_region`, первыми аргументами которого являются "YOUR_INSTR_MEM_FILE" и "YOUR_DATA_MEM_FILE". Обновите эти строки под имена файлов, которыми вы инициализировали свои память инструкций и данных в ЛР№13. Если память данных вы не инициализировали, можете удалить/закомментировать соответствующий вызов. При необходимости вы можете добавить столько вызовов, сколько вам потребуется.

Labs/16. Coremark/lab_16.tb_coremark.sv

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ module lab_16_tb_coremark();
5959
end
6060

6161
initial #500ms $finish();
62-
riscv_unit DUT(
62+
processor_system DUT(
6363
.clk_i (clk100mhz_i),
6464
.resetn_i (aresetn_i),
6565
.rx_i (rx_i),

Labs/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ https://github.com/MPSU/APS/assets/17159587/4daac01f-dc9a-4ec8-8d3f-c5dc1ef97119
148148

149149
## 9 Интеграция блока загрузки и сохранения
150150

151-
Вспомогательная лабораторная работа по интеграции реализованного ранее блока загрузки и сохранения, а также новой памяти данных в модуль `riscv_unit`.
151+
Вспомогательная лабораторная работа по интеграции реализованного ранее блока загрузки и сохранения, а также новой памяти данных в модуль `processor_system`.
152152

153153
![../.pic/Labs/lab_09_lsu_integration.drawio.svg](../.pic/Labs/lab_09_lsu_integration.drawio.svg)
154154

0 commit comments

Comments
 (0)