Программирование для встроенных систем - статьи

       

Наследование кода операции


Под наследованием кода операции (КОП) подразумевается наследование битовых полей, установленных в бинарном коде инструкции в фиксированные значения - '0' или '1'. Например, пусть есть две инструкции:

MOVE GRs, GRt с кодом 0111-0011-GGGG-RRRR

и

MOVE ARs, GRt с кодом 0011-0011-AAAA-RRRR.

Видно, что в этих двух инструкциях общим КОПом является:

0X11-0011-XXXX-XXXX

В таких случаях в системе MetaDSP обычной практикой является вынесение описания общего КОП в родительский узел. При этом для каждого потомка этого узла можно указать, наследует ли он КОП родителя или нет (по умолчанию - да). Для узлов, наследующих КОП родителя, изменение значения зафиксированных в родителе битовых позиций запрещено, то есть в потомке можно определять только те позиции шаблона, в которых в родителе стоит X. Наследование КОП может быть многоуровневым в соответствии с организацией дерева системы команд.

При добавлении новых потомков к родителю унаследованные биты КОП автоматически проставляются в потомке. Это ускоряет добавление новых инструкций.



Содержание раздела