mirror of
https://github.com/MPSU/APS.git
synced 2025-09-15 09:10:10 +00:00
ЛР5. Исправление примера формирования управляющих сигналов для инструкции sw (#146)
* ЛР5. Исправление примера формирования управляющих сигналов для инструкции sw * Update ERRATA.md --------- Co-authored-by: Vlad Nikiforov <bfly@mail.ru> Co-authored-by: Andrei Solodovnikov <VoultBoy@yandex.ru>
This commit is contained in:
15
ERRATA.md
15
ERRATA.md
@@ -2,6 +2,21 @@
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
**25.08.2025**: Обнаружена ошибка в примере формирования управляющих сигналов декодером инструкций на стр. 133. При инструкции `sw`, декодер должен выставить на сигнале `b_sel_o` значение `3'd3`, а не `3'd1`.
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary> Исправленная версия абзаца </summary>
|
||||||
|
|
||||||
|
> Пример: для выполнения инструкции записи 32-бит данных из регистрового файла во внешнюю память (инструкции `sw`), дешифратор должен направить в АЛУ два операнда (базовый адрес и смещение) вместе с кодом операции АЛУ (сложения) для вычисления адреса записи. Базовый адрес берется из регистрового файла, а смещение является непосредственным операндом инструкции S-типа. Таким образом для вычисления адреса записи декодер должен выставить следующие значения на выходах:
|
||||||
|
>
|
||||||
|
> - `a_sel_o = 2'd0`,
|
||||||
|
> - `b_sel_o = 3'd3`,
|
||||||
|
> - `alu_op_o= ALU_ADD`.
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
**11.07.2025**: Обнаружена ошибка вёрстки в примере использования битовых сдвигов на стр. 79. Операции по установке, очистке и чтению N-го бита выглядят следующим образом:
|
**11.07.2025**: Обнаружена ошибка вёрстки в примере использования битовых сдвигов на стр. 79. Операции по установке, очистке и чтению N-го бита выглядят следующим образом:
|
||||||
|
|
||||||
```C++
|
```C++
|
||||||
|
@@ -283,7 +283,7 @@ _Таблица 6. Расширенное описание инструкций
|
|||||||
Пример: для выполнения инструкции записи 32-бит данных из регистрового файла во внешнюю память (инструкции `sw`), дешифратор должен направить в АЛУ два операнда (базовый адрес и смещение) вместе с кодом операции АЛУ (сложения) для вычисления адреса записи. Базовый адрес берется из регистрового файла, а смещение является непосредственным операндом инструкции S-типа. Таким образом для вычисления адреса записи декодер должен выставить следующие значения на выходах:
|
Пример: для выполнения инструкции записи 32-бит данных из регистрового файла во внешнюю память (инструкции `sw`), дешифратор должен направить в АЛУ два операнда (базовый адрес и смещение) вместе с кодом операции АЛУ (сложения) для вычисления адреса записи. Базовый адрес берется из регистрового файла, а смещение является непосредственным операндом инструкции S-типа. Таким образом для вычисления адреса записи декодер должен выставить следующие значения на выходах:
|
||||||
|
|
||||||
- `a_sel_o = 2'd0`,
|
- `a_sel_o = 2'd0`,
|
||||||
- `b_sel_o = 3'd1`,
|
- `b_sel_o = 3'd3`,
|
||||||
- `alu_op_o= ALU_ADD`.
|
- `alu_op_o= ALU_ADD`.
|
||||||
|
|
||||||
(см. _рисунок 1_).
|
(см. _рисунок 1_).
|
||||||
|
Reference in New Issue
Block a user