新聞中心

EEPW首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 基于AD7892SQ和CPLD的數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

基于AD7892SQ和CPLD的數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)

——
作者: 時(shí)間:2007-12-10 來源: 收藏

  引 言

  本系統(tǒng)以(復(fù)雜可編程邏輯器件)為核心設(shè)計(jì)了一個(gè)多路信號采集電路,包括模擬多路復(fù)用、集成放大、A/D轉(zhuǎn)換,控制等。采用硬件描述語言Verilog HDL編程,通過采用使的實(shí)時(shí)性得到提高。

  1 硬件設(shè)計(jì)

  針對多路信號的采集,本系統(tǒng)采用4/8通道ADG508A模擬多路復(fù)用器對檢測的信號進(jìn)行選擇,CMOS高速放大器LF156對選中的信號進(jìn)行放大,實(shí)現(xiàn)信號的A/D轉(zhuǎn)換,CPLD完成控制功能。電路如圖1所示。

  

  是美國AD公司生產(chǎn)的LC2MOS型單電源12位A/D轉(zhuǎn)換器,可并行或串行輸出。

  AD7892SQ A/D轉(zhuǎn)換器具有如下特點(diǎn):單電源工作(+5 V或+10 V);內(nèi)部含有采樣保持放大器;具有高速的串行和并行接口。

  AD7892SQ控制字的功能如下:

  a)MODE:輸入控制字,低電平時(shí)為串行輸出,高電平時(shí)為并行輸出,本系統(tǒng)為并行輸出;

  b)STANDBY:輸入控制字,低電平時(shí)為睡眠狀態(tài)(功耗5 mW),高電平時(shí)正常工作,一般應(yīng)用時(shí)接高電平;

  c)CONVST:啟動(dòng)轉(zhuǎn)換輸入端,當(dāng)此腳由低變高時(shí),使采樣保持器保持開始轉(zhuǎn)換,應(yīng)加一個(gè)大于25 ns的負(fù)脈沖來啟動(dòng)轉(zhuǎn)換;

  d)EOC:轉(zhuǎn)換結(jié)束信號,轉(zhuǎn)換結(jié)束時(shí),此腳輸出100 ns的低電平脈沖;

  e)CS:片選,低電平有效;

  f)RD:低電平有效,與CS配合讀,使數(shù)據(jù)輸出。

  MODE腳接高電平時(shí),AD7892SQ為并行輸出,時(shí)序如圖2所示。

  

  在EOC下降沿時(shí)間內(nèi)開始采樣,就是轉(zhuǎn)換一結(jié)束就開始下次采樣,采樣時(shí)間fACQ應(yīng)大于等于200 ns或400 ns,轉(zhuǎn)換結(jié)束后(即E0C的下降沿),當(dāng)CS和RD有效時(shí),經(jīng)過t6=40 ns的時(shí)間,就可以在DB0-DB11上獲得轉(zhuǎn)換之后的12位數(shù)據(jù),CS和一般的片選信號相同,可以一直有效,外加RD的時(shí)間T5也應(yīng)大于35 ns。CONVST信號t1應(yīng)大于35 ns,在上升沿時(shí)采樣保持器處于保持狀態(tài),開始A/D轉(zhuǎn)換,轉(zhuǎn)換所需的時(shí)間tCONV為1.47μs或1.6μs,轉(zhuǎn)換結(jié)束后,EOC腳輸出的t2為大于等于60 ns的負(fù)脈沖用來進(jìn)行中斷或數(shù)據(jù)鎖存。由此得出下次采樣和本次的輸出可以同時(shí)進(jìn)行,因此最小的一次采樣轉(zhuǎn)換輸出的時(shí)間為1.47+0.2=1.67μs(600 kSPS(千次采樣每秒)),最大1.6+0.4=2 μs(即5 00 kSPS),圖2中的t9大于等于200 ns,t7近似為5 ns,t3、t4、t8可為0,(此時(shí)t9=tACQ)。

  2 程序設(shè)計(jì)

  2.1 系統(tǒng)介紹

  系統(tǒng)中的CPLD是結(jié)構(gòu)比較復(fù)雜的可編程邏輯器件,硬件描述語言設(shè)計(jì)的控制程序?qū)懭隒PLD內(nèi)即可實(shí)現(xiàn)其功能。系統(tǒng)采集的數(shù)據(jù)常常放在數(shù)據(jù)緩存器中,數(shù)據(jù)緩存區(qū)要求既要有與A/D轉(zhuǎn)換芯片的接口,又要有與系統(tǒng)DSP的接口,以提高數(shù)據(jù)吞吐率,本系統(tǒng)選用FIF0(先進(jìn)先出),并且FIF0具有不需要地址尋址的優(yōu)點(diǎn)[1]。

  2.2 系統(tǒng)的軟件描述

  本系統(tǒng)采用Verilog HDL語言進(jìn)行描述。VerilogHDL被近90%的半導(dǎo)體公司使用,成為一種強(qiáng)大的設(shè)計(jì)工具。其優(yōu)點(diǎn)是[2]:

  a)Verilog HDL是一種通用的硬件描述語言,易學(xué)易用;

  b)Verilog HDL允許在同一個(gè)電路模型內(nèi)進(jìn)行不同抽象層次的描述,設(shè)計(jì)者可以從開關(guān)、門、RTL或者行為等各個(gè)層次對電路模型進(jìn)行定義;

  c)絕大多數(shù)流行的綜合工具都支持VerilogHDL,這是Verilog HDL成為設(shè)計(jì)者的首選語言的重要原因之一;

  d)所有的制造廠商都提供用于Verilog HDL綜合之后的邏輯仿真的元件庫,因此使用Verilog HDL進(jìn)行設(shè)計(jì),即可在更廣泛的范圍內(nèi)選擇委托制造的廠商;

  e)PLI(編程語言接口)是Verilog HDL語言最重要的特性之一,它使得設(shè)計(jì)者可以通過自己編寫C代碼來訪問Verilog HDL內(nèi)部的數(shù)據(jù)結(jié)構(gòu)。

  2.3 AD7892SQ描述

  描述AD7892SQ模塊,可以把模塊用于采集系統(tǒng)的仿真,以驗(yàn)證FSM(有限狀態(tài)機(jī))設(shè)計(jì)的正確性。該模塊主要有4個(gè)輸入信號和1個(gè)輸出信號,與芯片的控制信號一致。程序如下:

  AD7892SQ仿真波形見圖3。

  

  

  2.4 FSM描述

  

  FSM為異步工作。當(dāng)convst有效時(shí)停留在convst_ad狀態(tài),且rd和cs都為1,convst為0且處于clock的上升沿時(shí)FSM會(huì)處于4個(gè)狀態(tài)中的一個(gè)狀態(tài)。圖4為FSM仿真波形。

  

  2.5 FIFO描述

  

  FIFO為同步工作。當(dāng)reset有效且處于clock的上升沿時(shí),dout為O;reset為1且處于clock上升沿時(shí),read和write組合的4種情況分別對應(yīng)各自的工作狀態(tài)。圖5為FIFO仿真波形。

  

  3 結(jié)束語

  Verilog HDL硬件描述語言已越來越廣泛地應(yīng)用于EDA(電子設(shè)計(jì)自動(dòng)化)領(lǐng)域,多數(shù)EDA設(shè)計(jì)工程師都用它進(jìn)行ASIC(專用集成電路)設(shè)計(jì)和CPLD/FPCA開發(fā)。用高級語言進(jìn)行電路設(shè)計(jì),能夠靈活地修改參數(shù),而且極大地提高了電路設(shè)計(jì)的通用性和可移植性。最后需要指出的是,采用IP核的方法設(shè)計(jì)電路,不但可以單獨(dú)使用,而且可以嵌入到ASIC或CPLD/FPGA的電路設(shè)計(jì)中,同時(shí)縮短了產(chǎn)品的開發(fā)周期,應(yīng)大力推廣。



評論


相關(guān)推薦

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

關(guān)閉