CPLD在TMS320F2812系統(tǒng)中的應(yīng)用
1 引言
本文引用地址:http://2s4d.com/article/150593.htm TMS320F2812是美國(guó)德州儀器公司推出的C2000 家族中最新一代產(chǎn)品。先進(jìn)的內(nèi)部和外設(shè)結(jié)構(gòu)使得該處理器主要用于大存儲(chǔ)設(shè)備管理、高性能的控制場(chǎng)合。在F2812構(gòu)成的應(yīng)用系統(tǒng)中,需要設(shè)計(jì)一些邏輯控制電路來(lái)保證系統(tǒng)正常有序地工作。這里,我們采用CPLD 來(lái)設(shè)計(jì)外圍電路的譯碼及邏輯控制,使DSP 系統(tǒng)達(dá)到小型化、集成化和高可靠性。
2 CPLD在TMS320F2812系統(tǒng)中的應(yīng)用
2.1 TMS320F2812介紹
TMS320F2812 數(shù)字信號(hào)處理器是在F24X的基礎(chǔ)上開(kāi)發(fā)的高性能定點(diǎn)芯片。能夠運(yùn)行24x 開(kāi)發(fā)的代碼程序,并且F2812 采用32bit 操作大大提高了處理能力。它的主要特點(diǎn)如下:
采用高性能的靜態(tài)CMOS 技術(shù),主頻可以工作在150 MHZ(時(shí)鐘周期可達(dá)6.67ns);
高性能的 32 位中央處理器,可以進(jìn)行16 位X16 位以及32 位X32 位的乘且累加操作;
片內(nèi)大容量存儲(chǔ)器,128 K×16 bits 的Flash 和18 K×16 bits 的數(shù)據(jù)/程序存儲(chǔ)器;
高速外設(shè)接口,最多可擴(kuò)展1.5 M×16 bit 存儲(chǔ)器;
3 個(gè)32-bit CPU 定時(shí)器,其中CPU 定時(shí)器1 和CPU 定時(shí)器2 被保留用作實(shí)時(shí)操作系統(tǒng)OS。CPU 定時(shí)器0 可供用戶使用,作為獨(dú)立的,全局性的定時(shí)中斷控制;
具有 12-bit 的 ADC 流水線變換時(shí)間最小60 ns,單變換200 ns;可選擇兩個(gè)時(shí)間管理器觸發(fā)功能;
改進(jìn)的 eCAN 2.0B 接口模塊;
多種串行通信接口(2 個(gè)UART、1 個(gè)SPI 及1 個(gè)MCBSP);
高性能低功耗,采用1.8V 內(nèi)核電壓和3.3V外圍接口電壓;
2.2 硬件結(jié)構(gòu)介紹
我們采用 Alter 公司的EPM7064S 芯片來(lái)完成內(nèi)部邏輯管理及與總線接口工作。該芯片采用快閃存儲(chǔ)技術(shù)(FastFLASH),功耗較低。宏單元數(shù)達(dá)到64 個(gè),完全滿足設(shè)計(jì)的邏輯要求。引腳到引腳的延時(shí)為4ns,計(jì)數(shù)器頻率可達(dá)151MHZ。其輸出電壓為3.3V 或5V,可以通過(guò)設(shè)置VCCIO 引腳來(lái)選擇不同的輸出電壓。I/O 引腳可接受5V、3.3V 和2.5V 的混合電壓輸入,在多電源混合系統(tǒng)中,這一特性非常有用,可以節(jié)省大量的電平轉(zhuǎn)換器。
TMS320F2812 應(yīng)用系統(tǒng)需要外擴(kuò)一些必要的電路,包括支持內(nèi)部程序運(yùn)行的RAM 和EEROM,以及D/A 轉(zhuǎn)換電路等,其系統(tǒng)結(jié)構(gòu)框圖如圖1 所示:
2.2.1 數(shù)模轉(zhuǎn)換器的應(yīng)用
在 TMS320F2812 中,片外擴(kuò)展是通過(guò)TMS320F2812 中的外設(shè)接口XINTF 來(lái)實(shí)現(xiàn)的。
它類似于C240X 的外部接口,但也做了改進(jìn):
(1)在C240X中,程序存儲(chǔ)空間、數(shù)據(jù)存儲(chǔ)空間和I/O 空間映射在相同的地址(0000~FFFF),對(duì)它們的訪問(wèn)通過(guò)控制線( DS , PS , IS )來(lái)區(qū)分;而在F2812 中,外部存儲(chǔ)器接口分成了5個(gè)固定的存儲(chǔ)映像區(qū)域,可尋址1MB 的片外存儲(chǔ)器空間,具有獨(dú)立的地址,沒(méi)有了控制線( DS , PS , IS )。
(2) 每個(gè) F2812 的XINTF 區(qū)都有一個(gè)片選信號(hào)。其中,有的區(qū)域的片選信號(hào)在內(nèi)部是“與”在一起的,組成了一個(gè)共享的芯片選擇,比如XZCS0 和XZCS1共享一個(gè)片選信號(hào)XZCS0AND1,XZCS6和XZCS7共享一個(gè)片選信號(hào)XZCS6AND7。在這種方式下,同一個(gè)存儲(chǔ)器可被連到兩個(gè)區(qū)或者我們可以用外部譯碼邏輯來(lái)區(qū)分這兩個(gè)區(qū)。
(3)5 個(gè)固定的存儲(chǔ)映像區(qū)域的每一個(gè)區(qū)還可以分別指定等待狀態(tài)數(shù),選通信號(hào)的建立時(shí)間,激活時(shí)間和保持時(shí)間。這些特征使得接口與外部存儲(chǔ)器及外設(shè)脫離了聯(lián)系,可以靈活獨(dú)立地進(jìn)行外部擴(kuò)展。在本次設(shè)計(jì)中,除了液晶除了液晶顯示模塊和鍵盤(pán)外,所有的外擴(kuò)寄存器和存儲(chǔ)器全部映射在XINTFZONE 2(0x080000~0x0FFFFF)譯碼的空間內(nèi)。我們使用了DAC7625 作為數(shù)模轉(zhuǎn)換芯片,該芯片為4 通道12 位雙緩沖的DAC 芯片,工作電壓可以是+5V 或-5V~+5V 的模擬電壓。
輸出電壓是0~3.3V 的直流電壓。功能框圖如圖2 所示:
其中,DAC7625 芯片中LDAC 引腳為載入DAC 引腳,當(dāng)為低電平時(shí),所有寄存器為透明,保持寄存器里的數(shù)據(jù)送到轉(zhuǎn)換器輸出通道;A1、A0 引腳為寄存器選擇引腳,CPLD根據(jù)地址總線譯碼選通不同的A1、A0 組合,從而將1 ~ 4 通道的保持寄存器映射到0xC0000~0xC0003 的地址空間。此外,我們還設(shè)計(jì)了傳送寄存器(DACTLR),映射地址為0xC0004,這個(gè)寄存器的所有數(shù)據(jù)位都無(wú)效,既不可讀也不可寫(xiě)。對(duì)這個(gè)寄存器執(zhí)行任何讀或?qū)懖僮鞫紩?huì)產(chǎn)生一個(gè)內(nèi)部信號(hào),將LDAC 引腳置為低電平,啟動(dòng)轉(zhuǎn)換器工作。其中,整個(gè)譯碼邏輯都是由CPLD 芯片完成。下面介紹譯碼邏輯的部分VHDL 語(yǔ)言描述:
評(píng)論