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

CLK(クロック)'1'でデータ送信→計算処理→結果をCLK'1'の時にRAMに書き込み(書き込みのアドレス・出力のアドレスはCLKを数えて自動更新)

という動作をさせたいのですが、計算処理で微妙に時間がかかってしまいRAMにデータを書き込むのが遅れてしまいます。(最初の書き込みに計算結果が間に合わない)

process(結果)
begin
結果出力信号送信
end process;

結果出力信号を受け取ったら、RAMに書き込む。

という方法も考えてみましたが、これだと結果が同じだったときに結果出力信号が更新されずに、RAMに書き込めません。上手く書き込む方法は無いでしょうか?
遅延を想定してあらかじめアドレスの値を一つずらしておくのは何となく気持ちが悪いので、それ以外で解決策があればお願いします。

A 回答 (1件)

計算処理時間が長すぎるというなら、


1)結果の書き込みを待ってもらう
2)より早く計算できるアルゴリズムに書き換える
の2つくらいでしょう。
1)の待たせる方法は、1クロック分遅延させるか、クロック周波数を下げてやるかっていうあたりでしょうか。
あとはフィッティングで速度優先の最適化をさせてみるとかですね。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2010/11/27 06:37

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