Next: コンテクスト, Previous: ReconfigurableUnitとは, Up: Top

## 2 ロジックユニット

### 2.1 ロジックユニットの構成

各ロジックユニットは，データの入出力のために，それぞれ3つの16bit幅のレジスタを持っている．また，ロジックユニットの動作は，内部に持つ，前シフタ，主演算，後シフタの構成によって決定する．

#### 2.1.1 主演算の命令種

`NOP`
  何もしない．入力データをそのまま次のロジックユニットに転送する．
`ADD`
  入力0と入力1の値を可算し，上位16bitを出力0に下位16bitを出力1に出力する．
`SUB`
  入力0と入力1の値の差を求め，上位16bitを出力0に下位16bitを出力1に出力する．
`AND`
  入力0と入力1の値の各ビット積を求め，上位16bitを出力0に下位16bitを出力1に出力する．
`OR`
  入力0と入力1の値の各ビット和を求め，上位16bitを出力0に下位16bitを出力1に出力する．
`MULT`
  MUL0と，この命令15個で積算が構成される．`MULT`は，入力1のLSBが1である場合に，入力0と入力2の値の和を求めその下位16bitを出力0に，入力1を出力1に出力する．入力1のLSBが0である場合には，入力をそのまま出力する．
`MUL0`
  積算命令の最初に実行される命令．入力1のLSBが1である場合に，入力0と入力2の値の和を求めその下位16bitを出力0に，入力1を出力1に出力する．入力1のLSBが0である場合には，出力0に即値0，出力1に入力1を出力する．

`NONE`
  入力データに対してシフトをしない
`LEFT`
  入力データを左に1シフトする
`RIGHT`
  入力データを右に1シフトする