+コーディング3H+sim1H+blog/doc+1H=5H
以前書いた超富豪コーディングな2進10進変換回路ですが、
次回の回路で使いたいかなぁと思い。
回路規模削減版を追加しました。
無産階級回路
1桁ごとに、1ステート(EN_CK_i周期)で newX<= 2*lastX +cyの計算をします。
これを、msbから順に27bit計算します。(9999_9999は27bitなので)
計算が終わるとDONE_oを1発出力します。
富豪回路では1.5kELだったのが、137LEまで削減できました。
250MHz/29ck=8.6MHzで、富豪の11MHzに比べると、若干遅くなってますね。
どうしてもスピードを稼ぎたいなら、
2*x+cyをn段づつモジュールにして、27/nステートって方法もあるかな?
3段くらいまでは現実的な予感。
. 実は、最後のラッチをしない出力も選択できます。
次の回路でラッチをさせれば32FF節約可能。(無産階級)
parameter C_MILLIONAIREで超富豪回路と切り替えられます(0defoで新回路)
GitHubはこちら。
https://github.com/mangakoji/BIN2BCD
使い方はREADME.mdを見てけれ
明日は、昨日の回路にこれを組み込んで最初に考えてた回路を実装する方向で。