ALUMODE 入力

Versal ACAP DSP エンジン アーキテクチャ マニュアル (AM004)

Document ID
AM004
Release Date
2022-09-11
Revision
1.2.1 日本語

4 ビットの ALUMODE は、2 段目の加算器/減算器/論理ユニットの動作を制御します。ALUMODE = 0000 では、加算動作 Z + (W + X + Y + CIN) が選択されます。CIN は CARRYIN マルチプレクサーの出力です (図 1 参照)。ALUMODE = 0011 では、減算動作 Z – (W + X + Y + CIN) が選択されます。ALUMODE = 0001 では –Z + (W + X + Y + CIN) – 1 が実装されます。ALUMODE = 0010 では –(Z + W + X + Y + CIN) – 1 が実装されます。これは、not (Z + W + X + Y + CIN) と等価です。2 の補数は、ビット単位で反転して 1 を加算することで負の値に変換できます (例: –k = not (k) + 1)。

表 1. 4 入力 ALUMODE 演算
DSP 演算 OPMODE[8:0] ALUMODE[3:0]
3 2 1 0
Z + W + X + Y + CIN 任意の有効な OPMODE 0 0 0 0
Z – (W + X + Y + CIN) 任意の有効な OPMODE 0 0 1 1
–Z + (W + X + Y + CIN) – 1 = not (Z) + W + X + Y + CIN 任意の有効な OPMODE 0 0 0 1

not (Z + W + X + Y + CIN) =

–Z – W - X – Y – CIN - 1

任意の有効な OPMODE 0 0 1 0
  1. 2 の補数では、–Z = not (Z) + 1 です。
  2. NEGATE = 1 かつ OPMODE[3:0] = 4’b0101 の場合、X + Y = –M (2 の補数の積のネゲート) です。