Добавление новой инструкции в MIPS - PullRequest
2 голосов
/ 21 июня 2020

эй, я изучаю программное обеспечение, поэтому я абсолютно новичок, когда дело доходит до рисования электрических цепей, и мне нужно добавить новую инструкцию для этой машины MIPS здесь

введите описание изображения здесь

Новая инструкция, которую я должен добавить jt - таблица переходов - это инструкция, которая позволяет go к адресу, указанному значением в памяти, по адресу, указанному двумя регистрами:

jt rs, rt # PC := mem[ R[rs] + R[rt] * 8 ]

Его кодировка следующая: • Инструкция [31-26]: код операции для jt

• Инструкция [25-21 ]: номер реестра rs

• Инструкция [20-16]: номер реестра rt

• Инструкция [15-11]: 0

• Инструкция [10-6] : 0

• Инструкция [5-0]: 0x20

Может ли кто-нибудь объяснить начинающему (мне) процесс добавления такой инструкции на диаграмму? Спасибо за ваше время.

1 Ответ

3 голосов
/ 26 июня 2020

Согласно описанию вашей инструкции вам необходимо сохранить новое значение в P C, используя регистры в R в качестве входных данных. Существующая архитектура не позволяет перемещать адрес, вычисленный с использованием значений регистров rs и rt в качестве входных данных, в регистр P C. Но позвольте перемещать значение R [rs] и R [rt] в выходной порт V1 и V2. Вам просто нужно установить E (включить) в 1. Для дальнейшей реализации требуется добавить и сдвиг. Простым подходом может быть добавление блока баррель для сдвига второго входа или V2. V1 и V2 * 8 входят в качестве входных данных в UAL. Включите операцию Добавить арифметические c в UAL. Выход сумматора попадает на вход Adr MD. MD должен быть включен. Выход MD должен попасть в P C. Поскольку теперь в мультиплексоре P C 2: 1 имеется более двух входов, прежде чем это потребуется. Контроллер должен сгенерировать пять управляющих битов. Один для включения R (регистровый файл), один для включения 3-битного сдвига, другой для включения сумматора, третий для включения MD, третий для установки управления мультиплексором перед P C и последний для включения управления LD (Load) для P C.

...