CPLD(Complex programmable Logic Device,復雜可編程邏輯器件)是在傳統(tǒng)的PAL、GAL基礎上發(fā)展而來的,具有多種工作方式和高集成、高速、高可靠性等明顯的特點。
在超高速領域和實時測控方面有非常廣泛的應用,日前的CPLD普遍基于E2PROM和Flash電可擦除技術,可實現(xiàn)100次以上擦寫循環(huán)。
CPLD選擇及其擴展模塊的設計
由于TMS320LF2407A是3.3v電平供電的,所以CPLD我們也選擇3.3v電平供電的XL型號。XC95144XL是Xilinx公司XC9500系列的一種。它的性能指標為;IO口可配置為3.3v或5v操作。所有輸出都提供24mA驅動能力;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的連線應該盡量短,而且要做一些抗干擾的處理,XINT2是DSP的中斷引腳,它的作用是當CPLD確定鍵盤按鍵的數(shù)值后,利用中斷將鍵值傳送到DSP中。
CPLD硬件結構設計如圖所示
CPLD的設計主要是利用CPLD對鍵盤、液晶和各種狀態(tài)指示燈進行控制。由于TMS320LF2407A的I/O管腳和各種特殊功能是復用的,如果將鍵盤、LCD顯示以及各種狀態(tài)指示燈直接和DSP相連的話,這將造成它的極大浪費,所以我們在它們中間用CPLD作為橋梁。