Информация об изменениях

Сообщение Re[3]: ARM - это RISC? от 13.06.2017 13:37

Изменено 13.06.2017 13:39 netch80

Re[3]: ARM - это RISC?
Здравствуйте, Дрободан Фрилич, Вы писали:

ДФ>netch80:


N>>UPD: ARM отличается тем, что в нём часто делают, что инструкция делает не одно простое действие, а 2 одновременно

ДФ>Не путаешь с VLIW?

Не-а.
Например, в ARM обоих разрядностей операция вида LDR R1, [R2], #-12 (синтаксис ARM/32) одновременно грузит содержимое в регистр 1 и записывает в регистр 2 новое значение (уменьшает на 12). Таким стилем пользуются, в частности, операции со стеком.
В ARM/64 есть ldp и stp — одновременные чтение или запись пары регистров.

ДФ>Я так понимаю, идея RISC в простом декодировании простых команд, что дает преимущество в конвеерном одновременном исполнении.


Да. А также, если реализация не просто конвейер, а OoO, команды не требуют перетрансляции в простые операции (как приходится делать в x86).
Re[3]: ARM - это RISC?
Здравствуйте, Дрободан Фрилич, Вы писали:

ДФ>netch80:


N>>UPD: ARM отличается тем, что в нём часто делают, что инструкция делает не одно простое действие, а 2 одновременно

ДФ>Не путаешь с VLIW?

Не-а.
Например, в ARM обоих разрядностей операция вида LDR R1, [R2, #-12]! одновременно грузит содержимое в регистр 1 (из адреса [R2]-12) и записывает в регистр 2 новое значение (уменьшает на 12). Таким стилем пользуются, в частности, операции со стеком.
В ARM/64 есть ldp и stp — одновременные чтение или запись пары регистров.

ДФ>Я так понимаю, идея RISC в простом декодировании простых команд, что дает преимущество в конвеерном одновременном исполнении.


Да. А также, если реализация не просто конвейер, а OoO, команды не требуют перетрансляции в простые операции (как приходится делать в x86).