新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > ADS8323與高速FIFO接口電路的CPLD實現

        ADS8323與高速FIFO接口電路的CPLD實現

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

        本文引用地址:http://www.104case.com/article/188756.htm

          3.1 AD轉換控制與FIFO寫控制模塊

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

          該模塊可由狀態機加以實現。在設計中,我們采用Verilog HDL語言編寫,其仿真波形如圖3所示。

          

          3.2 FIFO讀控制模塊

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

          

          仿真波形如圖4所示。

          

          4.結束語

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


        上一頁 1 2 下一頁

        關鍵詞: 8323 FIFO CPLD ADS

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 台南市| 重庆市| 凤城市| 泽州县| 关岭| 永丰县| 日土县| 徐汇区| 南康市| 鹿泉市| 沂源县| 松潘县| 石阡县| 常宁市| 栾川县| 扶余县| 广平县| 河池市| 德安县| 吉林省| 达日县| 郧西县| 崇礼县| 谷城县| 西乌珠穆沁旗| 麟游县| 丹棱县| 丰县| 冕宁县| 民丰县| 桦川县| 石首市| 华宁县| 新营市| 清丰县| 开江县| 上思县| 揭阳市| 沅江市| 富宁县| 德格县|