mirror of
https://github.com/MPSU/APS.git
synced 2026-03-20 20:35:33 +00:00
ЛР3. Ссылка на спецификацию в описании нулевого регистра
This commit is contained in:
committed by
GitHub
parent
581ef9ff48
commit
c9fa090383
@@ -328,7 +328,7 @@ module register_file(
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
По адресу `0` должно всегда считываться значение `0` вне зависимости от того, какое значение в этой ячейке памяти, и есть ли она вообще. Такая особенность обусловлена тем, что при выполнении операций очень часто используется ноль (сравнение с нулём, инициализация переменных нулевым значением, копирование значения одного регистра в другой посредством сложения с нулём и записи результата и т.п.). Эту особенность регистрового файла можно реализовать несколькими способами:
|
По спецификации RISC-V, нулевой регистр регистрового файла является аппаратным нулём [[2](https://github.com/riscv/riscv-isa-manual/releases/download/20240411/unpriv-isa-asciidoc.pdf), стр. 21]. Это значит, что по адресу `0` должно всегда считываться значение `0` вне зависимости от того, какое значение в этой ячейке памяти, и есть ли она вообще. Такая особенность обусловлена тем, что при выполнении операций очень часто используется ноль (сравнение с нулём, инициализация переменных нулевым значением, копирование значения одного регистра в другой посредством сложения с нулём и записи результата и т.п.). Эту особенность регистрового файла можно реализовать несколькими способами:
|
||||||
|
|
||||||
- с помощью мультиплексора, управляющим сигналом которого является результат сравнения адреса на чтение с нулём;
|
- с помощью мультиплексора, управляющим сигналом которого является результат сравнения адреса на чтение с нулём;
|
||||||
- либо же можно проинициализировать нулевую ячейку памяти нулём с запретом записи в неё каких-либо значений. В этом случае в ячейке всегда будет ноль, а значит и считываться с нулевого адреса будет только он.
|
- либо же можно проинициализировать нулевую ячейку памяти нулём с запретом записи в неё каких-либо значений. В этом случае в ячейке всегда будет ноль, а значит и считываться с нулевого адреса будет только он.
|
||||||
|
|||||||
Reference in New Issue
Block a user