読者です 読者をやめる 読者になる 読者になる

guruguru123’s diary

かなり雑な作業日記です。

SDRAMを用いてのAD9851への書き込み

SDRAMコントローラがとりあえずできたので、以前作ったAD9851ドライブ機構と合わせてみようとした。しかし、以前はVelirog hdlを用いていたため、また、ZPUinoに組み込んでいたため、信号部分等の変更が面倒だった。そこで新しくDDSドライブ部をつくり、組み込んだ。今回は、40bitのデータ生成は考えず(浮動小数点計算をさせるブロックを作っていないため)既存のデータを読み出して書き込むような機能にした。f:id:guruguru123:20161026181347p:plain

周波数設定ワードは32bitだが今回使用するSDRAMは1つのアドレスに16bitまで格納するので、バースト長2で書き込み、読み出しをするようにした。一通り作って出力を確認してみたが正しく動作していない。

考えられる原因はプリチャージ動作の不足かバーストでの動きをきちんと記述できていないかだ。

どこが原因かわからないのでテストベンチを作成した。以下シミュレーション結果。黄色い線までが初期設定、黄色い線より後ろが書き込み、読み出し動作となっている。

これを見る限りでは正しく動作している気がするのだが動いてくれない。

f:id:guruguru123:20161124225728p:plain

f:id:guruguru123:20161124225847p:plain

解決出来次第この記事を更新する。