一種基于CPLD的DSP人機接口模塊設(shè)計
CPLD(Complex programmable Logic Device,復(fù)雜可編程邏輯器件)是在傳統(tǒng)的PAL、GAL基礎(chǔ)上發(fā)展而來的,具有多種工作方式和高集成、高速、高可靠性等明顯的特點。
在超高速領(lǐng)域和實時測控方面有非常廣泛的應(yīng)用,日前的CPLD普遍基于E2PROM和Flash電可擦除技術(shù),可實現(xiàn)100次以上擦寫循環(huán)。
CPLD選擇及其擴展模塊的設(shè)計
由于TMS320LF2407A是3.3v電平供電的,所以CPLD我們也選擇3.3v電平供電的XL型號。XC95144XL是Xilinx公司XC9500系列的一種。它的性能指標(biāo)為;IO口可配置為3.3v或5v操作。所有輸出都提供24mA驅(qū)動能力;XC295144XL有100個宏單元、3200個可用門和144個寄存器;實現(xiàn)在系統(tǒng)編程,所有器件都支持IEEE1149(JTAG)邊界掃描,最小編程/擦除周期為10000次。
其中,DSP(Digital Signal Processor)與CPLD的連接是通過DSP的外部存儲器接口實現(xiàn)的。我們通過/IS管腳將其擴展到外部I/O空間,數(shù)據(jù)總線的高8位和地址總線的低8位與CPLD相連,并且我們將DSP的CLKOUT引腳與CPLD的IO/GCK2連接,為CPLD提供時鐘源,由干CLKOUT輸出的頻率非常高,所以DSP與CPLD的連線應(yīng)該盡量短,而且要做一些抗干擾的處理,XINT2是DSP的中斷引腳,它的作用是當(dāng)CPLD確定鍵盤按鍵的數(shù)值后,利用中斷將鍵值傳送到DSP中。
CPLD硬件結(jié)構(gòu)設(shè)計如圖所示
CPLD的設(shè)計主要是利用CPLD對鍵盤、液晶和各種狀態(tài)指示燈進行控制。由于TMS320LF2407A的I/O管腳和各種特殊功能是復(fù)用的,如果將鍵盤、LCD顯示以及各種狀態(tài)指示燈直接和DSP相連的話,這將造成它的極大浪費,所以我們在它們中間用CPLD作為橋梁。
另一更為重要的原因是鍵盤和LCD顯示是在一個相對較低的速度下實現(xiàn)的,這對于高速數(shù)據(jù)處理的DSP來說是無法接受的,我們設(shè)計的主要用意是:
對于LCD顯示,我們將DSP中的數(shù)據(jù)發(fā)送到CPLD,然后DSP去做其他的事情,而后續(xù)顯示的任務(wù)由CPLD完成,CPLD將在LCD允許的速度下對其進行操作即可達到顯示目的。
對于鍵盤,我們將鍵盤的各種處理進行完之后通過中斷來通知DSP,然后DSP進行取數(shù)操作,這樣的話并不會影響到整個系統(tǒng)的運行速度。
評論