論NIOS-II系統中A/D數據采集接口的設計與實現
由ADC0804的時序可知,轉換過程由一個寫信號啟動,轉換完成后,輸出INTR信號,此時可以讀取數據。之后即可進入下一個轉換周期。由ADC0804的轉換時間可知,其最大采集頻率為10KHz,只要用戶設置的采樣頻率不超過這個數值,ADC0804就可以正常的工作。因此設計時要注意兩點:①寫信號的頻率要低于ADC0804的最大轉換頻率;②在寫信號之后至少要有100ms的時延,才能輸出讀信號。
在此,提出兩種方法來實現ADC0804的控制信號時序:①主動模式—控制電路啟動A/D轉換后,在INTR信號的作用下,輸出讀信號,同時從ADC0804的數據總線上讀入數據,之后輸出一個寫信號,開始下一次轉換。②被動模式—ADC0804的讀寫信號完全由控制電路按照固定的時序產生,與其自身輸出無關。
數據接口
相對于AVALON總線信號來說,A/D采樣的速率非常低,而且,AVALON總線的接口信號和ADC0804數據輸出的接口信號時序不一致。因此,要實現滿足要求的數據通道,要做到兩點:①數據緩沖,實現速率匹配;②信號隔離,實現接口時序的轉換。解決這兩點,可以將兩端口通過一個異步的FIFO連接,該FIFO應該是可以在不同的時鐘信號下進行異步的讀寫。這樣的一個FIFO的實現可以在Quartus-II里面用ALTERA公司提供的FIFO Core進行定制。在本設計中,定制的FIFO模塊如圖3。
圖3 FIFO模塊
評論