Где находится самый старший бит непосредственного значения, указанного инструкцией I-типа? - PullRequest
2 голосов
/ 10 марта 2020

Сейчас я создаю простой процессор ris c -v с помощью logisim. Относительно инструкции I-типа:

Я знаю, что инструкция определена следующим образом:

[0: 6] => код операции (чтобы определить, какой ALU необходимо вычислить)

[7:11] => rd (регистр назначения для хранения ответа)

[12:14] => также часть кода операции

[15:19] => rs1 (исходный регистр, в котором хранится добавляемое значение с внешним непосредственным значением)

[20:31] => imm (непосредственное значение)

как архитектура будет 32-битной, непосредственное 12-битное значение должно быть под go расширением знака перед добавлением с содержимым внутри rs1. Таким образом, я запутался в том, какой конец «им» находит наиболее значимый бит (20-й / 31-й бит)?

1 Ответ

2 голосов
/ 10 марта 2020

RIS C -V specs указывает следующее на странице 16:

"В частности, бит знака для всех непосредственных операторов всегда находится в бите 31 Инструкция по ускорению схемы расширения знака. "

Поскольку знаковый бит является самым старшим, следовательно, это 31-й бит.

...