DDSを使った信号発生器です。無償で利用できるFPGA開発環境(XilinxのISE10.1)に
付属のDDS Compiler v2.1というIPコアを使ってみました。

FPGAにはTIのDAC904という14ビットのDACを外付けしてあり、過去のDesign Wave Magazineの
記事やウェブの記事を参考に、とりあえず固定周波数として試してみます。
サンプル周波数は38.912MHzとして、DDSで64分の1の608kHzを生成するようにセットしました。

これがその波形。
何か変、というかめちゃくちゃな波形です。
配線間違いかと思いましたが、波形をみると意味ありげな並びかたです。
IPコアの出力は符号あり(2の補数)ですが、DACは符号なしだったというのが原因です。
さっそく、教科書をにらみながら最上位ビットを反転させれば符号なしに戻せるようなので、
その旨を追記。
assign DDSO = sine ^ 14'b10_0000_0000_0000;

こんどは、それらしき波形になりました。
0 件のコメント:
コメントを投稿