From 1b94a08c802d0fc19709b4501894e2e3c02e4cd4 Mon Sep 17 00:00:00 2001 From: Andrei Solodovnikov Date: Wed, 10 Apr 2024 11:27:42 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9B=D0=A05.=20=D0=94=D0=BE=D0=B1=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B2=20=D0=BE=D0=BF=D0=B8?= =?UTF-8?q?=D1=81=D0=B0=D0=BD=D0=B8=D0=B5=20=D1=81=D0=B8=D0=B3=D0=BD=D0=B0?= =?UTF-8?q?=D0=BB=D0=BE=D0=B2=20=D0=BE=D0=BF=D0=BA=D0=BE=D0=B4=D0=BE=D0=B2?= =?UTF-8?q?,=20=D0=BD=D0=B0=20=D0=BA=D0=BE=D1=82=D0=BE=D1=80=D1=8B=D1=85?= =?UTF-8?q?=20=D1=82=D0=BE=D1=82=20=D0=BC=D0=BE=D0=B6=D0=B5=D1=82=20=D0=B8?= =?UTF-8?q?=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8=D1=82=D1=8C=D1=81=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Labs/05. Main decoder/README.md | 36 ++++++++++++++++----------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Labs/05. Main decoder/README.md b/Labs/05. Main decoder/README.md index cf738430..4abe0ca6 100644 --- a/Labs/05. Main decoder/README.md +++ b/Labs/05. Main decoder/README.md @@ -148,24 +148,24 @@ _Таблица 4. Значения сигнала `mem_size_o` при пере Управляющие сигналы на выходе декодера зависят от трех полей инструкции: `opcode`, `func3` и `func7`. Обратите внимание, что расположение этих полей одинаково для всех типов инструкций. Это сделано для удобства декодирования. При этом для некоторых инструкций поля `func3` и `func7` могут отсутствовать. -|Название сигнала| Пояснение | -|----------------|------------------------------------------------------------------------------------------------| -|fetched_instr_i |Инструкция для декодирования, считанная из памяти инструкций | -|a_sel_o |Управляющий сигнал мультиплексора для выбора первого операнда АЛУ | -|b_sel_o |Управляющий сигнал мультиплексора для выбора второго операнда АЛУ | -|alu_op_o |Операция АЛУ | -|csr_op_o |Операция модуля CSR | -|csr_we_o |Разрешение на запись в CSR | -|mem_req_o |Запрос на доступ к памяти (часть интерфейса памяти) | -|mem_we_o |Сигнал разрешения записи в память, «write enable» (при равенстве нулю происходит чтение) | -|mem_size_o |Управляющий сигнал для выбора размера слова при чтении-записи в память (часть интерфейса памяти)| -|gpr_we_o |Сигнал разрешения записи в регистровый файл | -|wb_sel_o |Управляющий сигнал мультиплексора для выбора данных, записываемых в регистровый файл | -|illegal_instr_o |Сигнал о некорректной инструкции (на схеме не отмечен) | -|branch_o |Сигнал об инструкции условного перехода | -|jal_o |Сигнал об инструкции безусловного перехода jal | -|jalr_o |Сигнал об инструкции безусловного перехода jalr | -|mret_o |Сигнал об инструкции возврата из прерывания/исключения mret | +|Название сигнала| Пояснение | На каких опкодах может принять ненулевое значение (см. таблицу 6)| +|----------------|------------------------------------------------------------------------------------------------|--------------------------------------------------| +|fetched_instr_i |Инструкция для декодирования, считанная из памяти инструкций | — | +|a_sel_o |Управляющий сигнал мультиплексора для выбора первого операнда АЛУ | На всех кроме `MISC_MEM` и `SYSTEM` | +|b_sel_o |Управляющий сигнал мультиплексора для выбора второго операнда АЛУ | На всех кроме `MISC_MEM` и `SYSTEM` | +|alu_op_o |Операция АЛУ | На всех кроме `MISC_MEM` и `SYSTEM` | +|csr_op_o |Операция модуля CSR | Только на `SYSTEM` | +|csr_we_o |Разрешение на запись в CSR | Только на `SYSTEM` | +|mem_req_o |Запрос на доступ к памяти (часть интерфейса памяти) | На `LOAD` и `STORE` | +|mem_we_o |Сигнал разрешения записи в память, «write enable» (при равенстве нулю происходит чтение) | Только на `STORE` | +|mem_size_o |Управляющий сигнал для выбора размера слова при чтении-записи в память (часть интерфейса памяти)| На `LOAD` и `STORE` | +|gpr_we_o |Сигнал разрешения записи в регистровый файл | На всех кроме `MISC_MEM` | +|wb_sel_o |Управляющий сигнал мультиплексора для выбора данных, записываемых в регистровый файл | На всех кроме `MISC_MEM` | +|illegal_instr_o |Сигнал о некорректной инструкции (на схеме не отмечен) | На всех кроме `JAL`, `LUI`, `AUIPC` | +|branch_o |Сигнал об инструкции условного перехода | Только на `BRANCH` | +|jal_o |Сигнал об инструкции безусловного перехода jal | Только на `JAL` | +|jalr_o |Сигнал об инструкции безусловного перехода jalr | Только на `JALR` | +|mret_o |Сигнал об инструкции возврата из прерывания/исключения mret | Только на `SYSTEM` | _Таблица 5. Описание портов основного дешифратора._