新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > ADS8323與高速FIFO接口電路的CPLD實現(xiàn)

ADS8323與高速FIFO接口電路的CPLD實現(xiàn)

作者: 時間:2009-08-10 來源:網(wǎng)絡(luò) 收藏
 其中,地址譯碼模塊負(fù)責(zé)對MCU的地址總線進(jìn)行譯碼,產(chǎn)生地址選通信號;控制信號模塊負(fù)責(zé)產(chǎn)生一些總的控制信號,如系統(tǒng)啟動信號CtrlBegin、整個電路的復(fù)位信號reset等等;狀態(tài)查詢模塊負(fù)責(zé)向MCU提供當(dāng)前的狀態(tài)特征,以便查詢,如半滿、半空、全滿、全空等狀態(tài);中斷申請模塊可根據(jù)的狀態(tài)自動產(chǎn)生中斷請求信號。AD轉(zhuǎn)換控制與FIFO寫控制模塊、FIFO讀控制模塊是整個接口電路的核心單元,下面分別加以介紹。

本文引用地址:http://m.butianyuan.cn/article/188756.htm

  3.1 AD轉(zhuǎn)換控制與FIFO寫控制模塊

  根據(jù)與FIFO的使用說明,該模塊的工作過程如下:在系統(tǒng)啟動信號CtrlBegin有效之后,啟動AD轉(zhuǎn)換信號(/CONVST置低);在轉(zhuǎn)換過程中,將數(shù)據(jù)緩沖區(qū)(由內(nèi)部實現(xiàn)的一個16Bit的存儲器)中的前一次轉(zhuǎn)換結(jié)果寫入FIFO中,具體來說,首先使低8位數(shù)據(jù)使能信號LowOE置高,低8位數(shù)據(jù)被放到數(shù)據(jù)總線上,然后產(chǎn)生低8位FIFO的寫時鐘信號FIFO1_WCLK,這樣轉(zhuǎn)換結(jié)果的低8位就被存入低8位FIFO中,按同樣的過程再把轉(zhuǎn)換結(jié)果的高8位存入高8位FIFO中;在轉(zhuǎn)換結(jié)束后(BUSY為低),將AD的讀使能信號/RD置低,于是本次AD的轉(zhuǎn)換結(jié)果被寫入數(shù)據(jù)緩沖區(qū);完成一次操作之后,再啟動AD轉(zhuǎn)換信號,開始下一次轉(zhuǎn)換過程,周而復(fù)始,直到系統(tǒng)啟動信號CtrlBegin無效。

  該模塊可由狀態(tài)機(jī)加以實現(xiàn)。在設(shè)計中,我們采用Verilog HDL語言編寫,其仿真波形如圖3所示。

  

  3.2 FIFO讀控制模塊

  當(dāng)FIFO中的數(shù)據(jù)達(dá)到一定深度之后,MCU就需要通過該模塊向FIFO讀取數(shù)據(jù)。該模塊主要產(chǎn)生四個信號,即低8位FIFO的RCLK和OE(定義為RCLK1和OE1)、高8位FIFO的RCLK和OE(定義為RCLK2和OE2)。以往的設(shè)計方案是采用兩個獨立的讀地址分別作為RCLK和OE,這種方式雖然操作簡單,但需要兩個讀周期才能完成一次讀操作,這樣大大降低了工作效率。本文采用一個讀地址作為OE信號,再利用對OE的延時信號作為RCLK信號,這樣只要RCLK信號的產(chǎn)生介于兩次OE之間,就能實現(xiàn)用一個讀周期完成一次讀操作,這樣便大大提高了MCU的工作效率。延時模塊由Verilog HDL語言實現(xiàn),其代碼如下:

  

  仿真波形如圖4所示。

  

  4.結(jié)束語

  本文采用實現(xiàn)了AD芯片、高速FIFO存儲器以及MCU之間的接口電路。實驗表明,該電路工作穩(wěn)定可靠,且通用性強(qiáng),易于移植到其它數(shù)據(jù)采集系統(tǒng)中。同時,QuartusII等嵌入式技術(shù)的使用,簡化了開發(fā)流程,提高了設(shè)計效率。目前,該電路已成功應(yīng)用于某數(shù)據(jù)采集系統(tǒng)中。


上一頁 1 2 下一頁

關(guān)鍵詞: 8323 FIFO CPLD ADS

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉