インテルのみ表示可能 — GUID: iga1409765329512
Ixiasoft
インテルのみ表示可能 — GUID: iga1409765329512
Ixiasoft
8.5.41. custom
命令 | カスタム命令 |
演算 | c == 1 ならば rC ← fN(rA, rB, A, B, C) そうでなければ Ø ← fN(rA, rB, A, B, C) |
アセンブラー構文 | custom N, xC, xA, xB ここでの xA は汎用レジスター rA またはカスタムレジスター cA のいずれかを意味する。 |
例 | custom 0, c6, r7, r8 |
説明 | customオペコードは、Nios II アーキテクチャーで可能な最大 256 個のカスタム命令へのアクセスを提供している。カスタム命令で実装される関数はユーザー定義であり、かつ Qsys の Nios_II Processor パラメーター・エディターで指定されている。8 ビットの即値 N フィールドは使用するカスタム命令を指定する。カスタム命令は xA と xB の最大 2 つのパラメーターを使用でき、オプションで結果をレジスター xC に書き込むことも可能である。 |
使用法 | カスタム命令のロジック内部のカスタムレジスターにアクセスするには、レジスターフィールドと対応するビット readra、readrb、または writerc をクリアーする。アセンブラー構文では、表記 cN はカスタム・レジスター・ファイル内のレジスター N を参照し、アセンブラにーオペコードの c ビットをクリアーさせる。例えば、custom 0, c3, r5, r0は汎用レジスター r5 と r0 で動作するカスタム命令 0 を実行し、その結果をカスタムレジスター 3 に格納する。 |
例外 | なし |
命令型 | R |
命令フィールド | A = オペランド A のレジスター・インデックス B = オペランド B のレジスター・インデックス C = オペランド C のレジスター・インデックス readra = 命令が rA を使用する場合は 1、それ以外の場合は 0 readrb = 命令が rB を使用する場合は 1、それ以外の場合は 0 writerc = 命令が rC に対して結果を生成する場合は 1、それ以外の場合は 0 N = 命令を選択する 8 ビットの数 |
ビットフィールド | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
A | B | C | readra | ||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
readrb | readrc | N | 0x32 |