|
昨日のカウンタ: 今日のカウンタ: |
受信時メッセージを追加してみました。これで安定動作するようだったらβ版としてパッケージしなおします。
え〜。
signal counter : std_logic_vector(24 downto 0); process (clk) begin if (clk'event and clk = '1') then counter <= counter + 1; end if; end process;
こんなんでいいの? 半加算器とか全加算器とか考えなくていいの? すご〜い。
今のところFPGAボードがつながるPCはデスクトップだけなので、そのPCのある部屋にとじこもったままでしたが流石に疲れますねぇ。
いや、でも、サンプルのソースをいろいろいじってみて挙動の変化を見てみたり、書き方で生成される回路が大きくなったり小さくなったりするのを眺めるだけでも めちゃんこ楽しいです。でも実機の挙動を見ないと面白くないので、実質、週末にしか触れないのが残念なところです。
へぇ〜。FPGAでZ80とかって話もびっくりしたけど、すごいですねぇ。
登録は必要でも話を聞くのは無料らしいから聞きに行こうかしらん。でも私みたいな素人でも登録させてもらえるのかな。
ちょっと間が開きましたが、ズーム時でも画面の端の方まで画面のシフトをできるようにしてみました。
ちょっとやっつけ気味なんですが、とりあえず動いているというところで…
だめじゃないですけど、本当なら生成回路をイメージ出来た方が良いです。25ビットもあるカウンタなので。まぁ、趣味レベルで動作速度遅いなら関係ないですけど。この場合、RTLレベルでは、ワンインクリメントアダーが生成されます。まぁ、フィッティングはSRAMベースのFPGAなら、LUTで構成されるからアーキテクチャ依存しちゃいますが。
ご意見ありがとうございます。
あ、そうかフルの加算器は要らないんですね。
それにしても考えはじめるとなかなかやっかいそうで、例えばある動作周波数を仮定した場合にどの程度の長さの回路まで許されるのかなとか、一つの出力に何個までの入力を繋げていいのかな、制限を加えるにはVHDLでどう記述すればいいんだろ〜とか、かなり混乱してます。
当分はとにかく基本的な回路を書いて動かして楽しんでいこうと思っていますが、これからもよろしくお願いします。
いっぱい作っていけば、見えてくるものがあります。どの世界も同じですね。動作速度は、回路イメージさえあれば、FPGAであってもデータシートに載っているロジックエレメントの性能からある程度予想できます。といっても、同じカウンタでも回路規模が大きくなると配線効率やレイアウトの影響で性能は大きく変わりますが。カウンダだけなら、今時のFPGAですと25ビットのカウンタも余裕(FPGAの性能限界近く)で動くでしょう。まずは、楽しみながら色んな回路を作って下さい。その後に、色々と見えてくると思います。