基于CPLD的簡(jiǎn)易數字頻率計的設計
2.2 CPLD模塊原理框圖
由于是一種集成度很高并且可進(jìn)行用戶(hù)定制的數字芯片,因此測試功能都用一塊CPLD芯片來(lái)實(shí)現。在硬件電路設計時(shí),可先將CPLD的內部電路分為控制、計數、鎖存及譯碼四個(gè)電路模塊分別進(jìn)行設計,然后再將這四個(gè)電路模塊有機地結合成一個(gè)能完成測頻功能的整體系統。其CPLD模塊原理框圖如圖2所示。本文引用地址:http://dyxdggzs.com/article/190886.htm
2.2.1 控制電路模塊
為實(shí)現控制功能,控制電路模塊需輸出三個(gè)信號:一是允許對被測信號計數的計數信號CNT-EN;二是將前1 s計數器的計數值存入鎖存器的鎖存信號LOAD;三是為下一個(gè)周期計數做準備的計數器清零信號RST-CNT。上述三個(gè)信號產(chǎn)生的順序是:先提供計數信號,這種信號使計數器在1 s內計數,即周期為2 s的信號;接著(zhù)是提供鎖存信號,這種信號對計數值進(jìn)行鎖存,與計數信號反向;最后是發(fā)出清零信號,這種信號可對計數器清零。計數器清零結束后又可重新計數,計數進(jìn)入第二個(gè)周期??刂齐娐纺K實(shí)際上是一個(gè)控制器,它需要一個(gè)周期為1 s的信號作為產(chǎn)生并控制控制器輸出的時(shí)基信號CLKK??刂齐娐纺K中各信號符號及端口功能如圖3所示。
2.2.2 計數電路模塊
計數電路模塊將對被測信號進(jìn)行十進(jìn)制計數。它雖然由6個(gè)十進(jìn)制計數器組成,但采用CPLD后,設計時(shí)只要先制作單個(gè)十進(jìn)制計數器,然后再將多個(gè)結構相同的單個(gè)十進(jìn)制計數器在CPLD內部進(jìn)行連接就可組合成一個(gè)完整的計數電路模塊。為實(shí)現其功能,十進(jìn)制計數器需要設置三個(gè)輸入端:即被測信號輸入端CLK、計數器狀態(tài)清零端RST和計數器工作使能端ENA。
需要設置四個(gè)輸出端,即OUTY[0],OUTY[1],OUTY[2]和OUTY[3],由這四個(gè)輸出端輸出4位二進(jìn)制代碼來(lái)表示十進(jìn)制數。同時(shí),還需要設置進(jìn)位輸出端COUNT。需要設置四個(gè)輸出端,即OUTY[0],OUTY[1],OUTY[2]和OUTY[3],由這四個(gè)輸出端輸出4位二進(jìn)制代碼來(lái)表示十進(jìn)制數。同時(shí),還需要設置進(jìn)位輸出端COUNT。設置進(jìn)位輸出端COUNT是因為單個(gè)十進(jìn)制計數器只能表示被測信號頻率在個(gè)、十、百、千等位中的一個(gè)數位的數據。被測信號的頻率是從個(gè)位計數器開(kāi)始計數的,被測信號變化一次,個(gè)位計數器輸出加1,當被測信號變化10次時(shí),個(gè)位計數器輸出為0,而十位計數器輸出加1,當十位計數器計滿(mǎn)10次時(shí),十位計數器輸出為0,而百位計數器輸出加1,依次類(lèi)推,直至千位、萬(wàn)位或更高位。上述十進(jìn)制計數器都是滿(mǎn)10進(jìn)1,且進(jìn)位時(shí)計數器清零并重新計數。計數電路模塊中的單個(gè)計數器符號及端口功能如圖4所示。
評論