UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 32146

10.1i EDK Sp3 - xps_deltasigma_dac_v1_00_a の既知の問題 (GPIO を介したソフトウェア アクセス)

説明

EDK 10.1, 9.2, Sigma, Delta, XPS Delta-Sigma DAC (v1.00a), dsdac_v1_00_a, dsdac_v1_01_a, dsdac_v1_11_a, xps_deltasigma_dac_v1_00_a,

Sigma Delta DAC で提供されているソフトウェア例が機能しません。
Sigma Delta DAC データ出力が破損するのはなぜですか。
Sigma Delta DAC で Read_en 信号を 1 クロック サイクル生成する方法を教えてください。
この問題の回避策はありますか。

提供されている Sigma Delta DAC ソフトウェア例 (特に xdsdac_intr_gpio_example.c) では、ソフトウェア サンプルから生成されるリード イネーブル (Read_En) 信号が原因で出力データが破損してしまいます。DAC データを Read_En 信号として機能させるには、1 クロック サイクル間 HIGH にする必要があります。ソフトウェアで Read_En 信号を正確に 1 クロック サイクル間アサートすることは不可能です。この問題を回避するには、次の解決策を参照してください。

ソリューション

EDK ソフトウェアの $:\Xilinx\10.1\EDK\sw\XilinxProcessorIPLib\drivers\dsdac_v1_11_a\examples というディレクトリに 3 つのソフトウェア例 (割り込みベースの例 2 つと割り込みベースでない例 1 つ) が含まれています。

1. xdsdac_l0_example.c および xdsdac_l1_intr_example.c : GPIO は使用されませんが、リード イネーブル (Read_En) 信号を挿入する箇所に次のコメントがあります。
/*
* At this stage the Read_En signal should be driven high for a
* duration of OPB clk so that the data in Data FIFO will get converted.
*/
2. xdsdac_intr_gpio_example.c : Read_En 信号を生成するのに GPIO が使用されます。READ_En 信号は 1 クロック間 High に保持する必要があリますが、ソフトウェアでの生成ではこれは不可能です。GPIO の幅が不規則であるため、DAC データの Read_En が破損してしまいます。

回避策
ソリューション 1 :

提供されている例を機能させるには、2 つのフリップフロップを使用して Read_En 信号をちょうど 1 クロック サイクル間 High にします。最初のフリップフロップ GPIO はクロック入力として使用し、入力データは High に接続します。2 つ目のフリップフロップには最初のフリップフロップの出力データ (Q) を入力し、クロックにはシステム クロックを使用します。2 つ目のフリップフロップの出力を READ_En として Sigma Delta DAC に入力します。

添付
1. READ_En 信号用のフリップフロップ追加のダイアグラム
2. Spartan-3A DSP 用の EDK デモ プロジェクト
AR# 32146
日付 12/15/2012
ステータス アクティブ
種類 一般
このページをブックマークに追加