竹下世界塔の計算機よもやま話

アクセスカウンタ

zoom RSS ぼくのかんがえたさいきょうCPU: 2017.05 論理演算命令

<<   作成日時 : 2017/05/23 02:55   >>

ブログ気持玉 0 / トラックバック 1 / コメント 0

 論理演算命令は汎用レジスタどうしでAND,ORなどの論理演算を行う。論理演算はbitごとに行われるものでデータ幅が変わっても論理演算の結果は変化しない。データ幅が変わることで結果が変わるシフト、ローテートやPOPCなどは別扱いにする。

概要と基本フォーマット

CO1: 00nn_xxxx
L1: 0010_log[3:0]

CO2: 010_xxxxx_xxdddddd
L2: 010_0_log[3:0]_10_dddddd

L1は1バイト命令で演算結果をnewRdとして次に渡す。L2は2バイト命令で演算結果をnewRdとして渡すと同時に結果をddddddで示す汎用レジスタに保存する。
以下の説明で ○ はlog[3:0]の4bitで示される論理演算。


L1 オペランドなし Reserved
L1 OPC newRd = prevRd ○ 6bit定数
L1 OPL newRd = prevRd ○ ロング定数
L1 OP1C newRd = Ra ○ 6bit定数
L1 OP1C OPL newRd = Ra ○ ロング定数
L1 OP2 newRd = Ra ○ Rb
L1 OP3S SS=00 new Rd = Ra(○Rc)Rb
これ以外のオペランドの組み合わせはCO1:L1 Illigal Operand Trap

L2 オペランドなし Reserved
L2 OPC Rd = prevRd ○ 6bit定数
L2 OPL Rd = prevRd ○ ロング定数
L2 OP1C Rd = Ra ○ 6bit定数
L2 OP1C OPL Rd = Ra ○ ロング定数
L2 OP2 Rd = Ra ○ Rb
L2 OP3S SS=00 new Rd = Ra(○Rc)Rb
これ以外のオペランドの組み合わせはCO1:L1 Illigal Operand Trap

定数はスカラ値で符号拡張される。ソースレジスタとして指定されるRa,Rb,prebRdの型は無視される。
Raがスカラ、Rbがスカラまたは定数の場合、Rdはスカラ。サイズはRaに合わせる。
RaがSIMD形式でRbがスカラまたは定数の場合、Raの各レーンとRbまたは定数の演算結果がRdに格納される。レーン数とサイズはRaと同じ。
Rbや定数がRaの(レーンごとの)サイズよりも大きい場合は、下位bitからRaのサイズに合わせられる。小さい場合は符号拡張される。
RaとRbが同じレーン数のSIMD形式の場合は、対応するレーンごとにRaとRbで演算を行い、結果をRdに格納する。
レーン数が同じでRaとRbの各レーンのサイズが異なる場合は、Raのサイズに合わせられる。
レーン数が異なり、Raの方が多い場合はRbのレーンが繰り返し適用される。
レーン数が異なり、Rbの方が多い場合はRaに対応するRbの下位レーンが適用される。

3オペランド形式ではRcの下位4bitで示される値で論理演算が行われる。これはSIMD形式だとそれぞれのレーンで異なる論理演算が可能となる。

L1,L2ともオペランドなしは単項演算に使っても良いが例外的な扱いになるので保留。


log[3:0]のパターンは以下のとおり。

_0000 AND A and B
_0001 OR A or B
_0010 XOR A xor B
_0011 SELA A
_0100 ANDN ~A and B
_0101 ORN ~A or B
_0110 ALL0 0
_0111 SELB B
_1000 NAND ~(A and B)
_1001 NOR ~(A or B)
_1010 XNOR ~(A xor B)
_1011 NSELA ~A
_1100 NANDN ~(~A and B)
_1101 NORN ~(~A or B)
_1110 ALL1 1
_1111 NSELB ~B

ウチダ テンプレート 論理設計定規 NO-1 ホーム&キッチン 文房具 定規・コンパス [並行輸入品]ウチダ テンプレート 論理設計定規 NO-1 ホーム&キッチン 文房具 定規・コンパス [並行輸入品]

マービー
売り上げランキング :

Amazonで詳しく見る
by G-Tools

テーマ

注目テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(1件)

タイトル (本文) ブログ名/日時
ぼくのかんがえたさいきょうCPU: 2017.05 概要と基本フォーマット
 ぼくのかんがえたさいきょうCPUも考え続けていつのまにか十年くらい経ってしまった。いろいろな命令セットアーキテクチャを調べるほどにいじくりまわしたくなるのだが、そろそろまとめてみようかとおもう。 ...続きを見る
竹下世界塔の計算機よもやま話
2017/05/31 20:11

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文




ぼくのかんがえたさいきょうCPU: 2017.05 論理演算命令 竹下世界塔の計算機よもやま話/BIGLOBEウェブリブログ
文字サイズ:       閉じる