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