dポイントプレゼントキャンペーン実施中!

乗算器とカウンタのどちらの方が回路規模が小さくなるのでしょうか?

Nビット乗算器の,Nはシステムにより異なるため,10ビット以上をとることもあれば,(A*1)のようなものもあります。
現状のシステムで乗算器は (A-B) * X という形で使用しています.
(AとBは定数のため,論理合成時に Y*Xとなっていると推測しています。Yが0になることもあります)

カウンタ回路は,まだ実装していませんが,
if( ck )
if( リセット条件 )
    syuturyoku <= 0;
else if ( 更新条件 )
syuturyoku <= syuturyoku + 1;
end if;
のような(一般的な)記述をしようとしています

A 回答 (2件)

4ビット乗算器と 100億ビットのカウンタ回路なら後者の方が大きい.


64ビット乗算器と 8ビットカウンタ回路なら前者の方が大きい.
    • good
    • 0
この回答へのお礼

お答えありがとうございます。
カウンタの方がかなり有効みたいですね。

お礼日時:2010/03/19 11:39

一般的に同じビット数なら乗算器の方が大きくなります。

乗算器はビット数の2乗で規模が大きくなっていくので、特にビット数が増えると差が大きくなります。

所で、なぜ乗算器とカウンタをなぜ比較するのでしょうか。普通用途等は重ならないと思いますが。

この回答への補足

現在,二つの数値に依存するデータの算術に乗算器を用いていました。
しかし、その数値は単純に1づつ増加するだけだと、分かったため、カウンタでも書き換えが可能だと考えました。

使用していたさらに具体的な乗算器の例は (二つのシステムの例)
( A & B ) * ("11"-"10") * A
( A & B ) * ("111" -"100") * A

上では,Bは 00 01 10 00 01 10 00
      Aは 00 00 00 01 01 01 10
というようになっています。
下では,Bは100まで増加します。
システムにより,Bの方のビット数はあまり変わらないですが,Aの方は大きく変わります。

補足日時:2010/03/19 11:18
    • good
    • 0
この回答へのお礼

お答えありがとうございます

補足の追加

( A & B ) - ("11"-"10") * A
( A & B ) - ("111" -"100") * A

( & Aが001 B 010ならば,A&Bは 001010となります)

ミスがありましたので、訂正します。
上の例ならば,論理合成後(予想)は,単純な減算回路になります。
実際,多くのシステムの中で,ほとんどが上の計算か,("1"-"1")*Aとなり,省略されるケースで,下のようにBの値が大きくなることはマレです。ただし,Aの値は10ビット以上とるケースもあります。

お礼日時:2010/03/19 11:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!