[an error occurred while processing this directive]
|
Ну я начал на прошлой странице про 1 битовую кратность договорить. Да рука сорвалась, отправил раньше времени, а продолжать уже лень было.
Ну сами посмотрите, что будет, если возможны 1, 2,3,4,5 и т.д. инструкции, сколько их и т.д. Там потери большие же будут.
Вот возьмите минимальный размер инструкции и кратность=1 бит, максимальный - 8 бит. И инструкция может иметь прямо-таки абсолютно любую длину, от 1 до 8 бит. Ну и порядок инструкций само собой только изощренной фантазией программиста определяется.
Имеет право существовать такой процессор?
Из памяти команд пусть читается сразу 8 бит. Чтобы не связываться с однобитовыми чтениями.
И в этих 8 битах сразу целая прорва инструкций. Разного размера.
А потом эти 8 бит пусть разблюдуются дешифратором и всем чем угодно в цепочку отдельных инструкций
Вот сколько разных 1 битовых инструкций получится? Одна. 2-х битовых тоже одна. 3-х битовых опять одна. И т.д. И, как венец, одна 8-ми битовая инструкция. Итого Вы имеете систему команд из 8 штук.
В то же время при кратности инструкций байту и, для определенности, макс. размере=тоже байту будет система из 256 команд.
Конечно, я просто утрировал все на свете.
Но в любом случае мелкая кратность влечет за собой накладные расходы в виде указания длин. В смысле большее влияние этих расходов. Тем самым практически сокращая количество инструкций в системе команд. При заданном максимальном размере. Вот и все.
А насчет преимуществ кратности больше 8-ми перед 8-ю, ну у меня такая точка зрения, что кратность должна быть равна, ну или возможно больше, разрядности процессора. Это как-то логично.
Так что 8-ми разрядный проц с 8-ми разрядной кратностью меня вполне бы устроил:-)
16-ти - с 16-ти, 32-х с 32-мя.
Ну а поскольку Вы писали, или, возможно, я просто так понял, что делаете Вы ДСП, то я и высказал такую точку зрения, что завел бы либо 16-ти, либо 32-х разрядную кратность. Потому что 8-ми разрядный ДСП мало интересен, мне кажется.
E-mail: info@telesys.ru