‮Сдвиг по фазе (kincajou) wrote,
‮Сдвиг по фазе
kincajou

Category:

RISC-V ветвление

через стадию Instruction Decode нужно пробрасывать и PC, и NextPC (т.е. два 32-битных значения; обычно NextPC = PC + 4 для 32-битных команд, но для RV32C возможно так же PC + 2), несмотря на то, что они там не нужны. Потому что при ветвлении (вернее, при вызове функции - т.е. прыжок по адресу, затем возврат на следующую за прыжком инструкцию), если условие выполнено, в регистр назначения будет сохранено значение NextPC, а в сам Program Counter будет загружено PC + Offset, вычисленное или АЛУ, или отдельным сумматором.

С одной стороны, параллельный регистр дёшев и прост, так что нет смысла как-то хитрить и передавать по конвейеру только PC или только NextPC (пробрасывая, разумеется, признак длины команды - но для RV32 это всего лишь 1 бит). С другой стороны, это 64 сигнальных линии, проходящие сквозь стадию "просто так". А ещё это восемь 8-битных регистров на входе и ещё 8 на выходе -- шестнадцать регистров только для того, чтобы организовать конвейеризацию значения Program Counter!

С другой стороны, операция PC+4 (или PC+2) схемотехнически не очень сложна, несмотря на то, что это всё-таки сложение (нужен перенос), так как почти все биты второго слагаемого всегда равны нулю. Почти наверняка можно как-то подхитрить, чтобы сделать вместо сумматора "PC+Offset" сделать "PC+Offset+4". Я пока не могу сообразить, как именно это сделать, но интуцация подсказывает, что надо как-то влезть в перенос во втором или третьем разряде.

Микросхем будет больше восьми (так что экономия "на регистрах" вряд ли получится), зато пробрасывать по конвейеру надо будет только 32 бита значения текущего PC.

С третьей стороны, можно взять сдвиговые регистры .. проводов будет меньше, а вот гемора с синхронизацией - больше
Tags: worklog
Subscribe

  • VPN, туризм, бронирования

    Чё пишут (ссылки не даю, это из некоего ТГ-чата путешественников): Выше было про airbnb и про бронь отменили, так как из РФ, не было возможности…

  • В экономике, так сказать, необходим.

    Квартиры сейчас покупать глупо, они на пике цены. А вот взять долларовый кредит и купить на него квартиру - сейчас, видимо, выгодно. Доллар будет…

  • RISC-V пошёл в народ (2)

    Теперь о неожиданных отличиях китайчины от классики. Чип CH32V307, у которого отсутствует прямой аналог или прототип среди STM32 (например, у него…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments