《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 業(yè)界動(dòng)態(tài) > CPLD在DSP系統(tǒng)中的應(yīng)用設(shè)計(jì)

CPLD在DSP系統(tǒng)中的應(yīng)用設(shè)計(jì)

2008-08-18
作者:宋 瑩 高雪松 季曉勇

??? 摘 要: 以Altera公司MAX7000系列為代表,介紹了CPLD在DSP系統(tǒng)中的應(yīng)用實(shí)例。該方案具有一定的普遍適用性。
??? 關(guān)鍵詞: RESET? BOOT? HPI? CPLD的延時(shí)? 時(shí)序

?

??? DSP的速度較快,要求譯碼的速度也必須較快。利用小規(guī)模邏輯器件譯碼的方式已不能滿足DSP系統(tǒng)的要求。同時(shí),DSP系統(tǒng)中經(jīng)常需要外部快速部件的配合,這些部件往往是專門的電路,可由可編程器件實(shí)現(xiàn)。 CPLD的時(shí)序嚴(yán)格、速度較快、可編程性好,非常適合于實(shí)現(xiàn)譯碼和專門電路。本文以MAX7000系列為例,具體介紹其在 以 TI公司的 TMS320C6202 為平臺(tái)的網(wǎng)絡(luò)攝像機(jī)系統(tǒng)中的應(yīng)用。
1 CPLD在DSP系統(tǒng)中的功能介紹
1.1 DSP系統(tǒng)簡(jiǎn)介

??? 本文所論述的編碼器系統(tǒng)是基于DSP的MPEG-4壓縮編碼器的,主要由前端視頻采集、數(shù)據(jù)預(yù)處理以及MPEG-4視頻壓縮編碼三部分組成?;贒SP的MPEG-4編解碼器由于其所選用的DSP運(yùn)算能力強(qiáng)、編程靈活,且實(shí)現(xiàn)不同的圖像編碼算法時(shí)只需對(duì)DSP內(nèi)部的程序進(jìn)行改寫便可實(shí)現(xiàn)諸如MPEG、H.263等多種圖像編碼,因而具有良好的應(yīng)用情景。CPLD芯片對(duì)整個(gè)編碼器起著邏輯控制" title="邏輯控制">邏輯控制作用,系統(tǒng)結(jié)構(gòu)如圖1所示。

?


1.2 CPLD在系統(tǒng)中的功能要求
1.2.1產(chǎn)生復(fù)位信號(hào)
??? 系統(tǒng)上電時(shí),CPLD產(chǎn)生復(fù)位信號(hào),使整個(gè)系統(tǒng)中的FPGA和DSP模塊復(fù)位,進(jìn)入初始狀態(tài);系統(tǒng)上電后,數(shù)據(jù)采集模塊自動(dòng)啟動(dòng)。
??? 系統(tǒng)內(nèi)共使用三種電源:5V、3.3V、1.8V。其中,5V電源由供電電源接入,3.3V、1.8V電源由TPS56300(TI產(chǎn)品)提供。采用TPS3307(TI產(chǎn)品)為系統(tǒng)提供電源管理,該芯片可同時(shí)管理三種電源。當(dāng)監(jiān)測(cè)到電源電壓" title="電源電壓">電源電壓低于一定值時(shí),產(chǎn)生復(fù)位信號(hào)。TPS3307在其自身電源電壓大于1V的情況下即可以輸出復(fù)位信號(hào)。
??? 當(dāng)系統(tǒng)出現(xiàn)錯(cuò)誤時(shí),可以采用手工方式復(fù)位。
?? ?復(fù)位信號(hào)產(chǎn)生原理圖如圖2所示。其中,RST#為整個(gè)系統(tǒng)的復(fù)位信號(hào),由MAX7000輸出。PBSW_RST#為手動(dòng)復(fù)位信號(hào),由按鍵接入MAX7000,經(jīng)MAX7000去抖動(dòng)后輸出給TPS3307。SVS_RST#為電源管理芯片TPS3307產(chǎn)生的復(fù)位信號(hào)(包括手動(dòng)復(fù)位和電源監(jiān)控功能)。

?


1.2.2? BOOT模式的實(shí)現(xiàn)
??? 系統(tǒng)復(fù)位后,DSP需要進(jìn)行BOOT自舉" title="自舉">自舉。在復(fù)位信號(hào)為低期間,BOOTMODE[4:0]管腳上的設(shè)置值被鎖存,決定芯片的存儲(chǔ)器映射方式以及自舉模式。但TMS320C6202沒(méi)有專門的管腳作為BOOTMODE[4:0]輸入管腳,而是將擴(kuò)展總線的XD[4:0]映射為BOOTMODE[4:0],利用上拉/下拉電阻在復(fù)位時(shí)進(jìn)行芯片啟動(dòng)模式設(shè)置??偩€上的其它位也在復(fù)位期間被鎖定,決定系統(tǒng)相應(yīng)的設(shè)定值。而擴(kuò)展總線XD在HPI口讀寫時(shí)要用到,所以使用MAX7000進(jìn)行隔離。系統(tǒng)處在復(fù)位階段,則通過(guò)MAX7000使得DSP的相應(yīng)管腳的值等于設(shè)定值,復(fù)位結(jié)束后,MAX7000相應(yīng)管腳為高阻態(tài),使得XD可以作為正常的總線使用。
??? DSP自舉有特定的時(shí)間要求。在復(fù)位結(jié)束后,XD的配置管腳必須保持一段時(shí)間,TMS320C6202要求時(shí)間為5個(gè)時(shí)鐘周期,例如在200MHz時(shí)鐘情況下必須保持25ns。
1.2.3? HPI口接口邏輯" title="接口邏輯">接口邏輯實(shí)現(xiàn)
??? MPEG-4壓縮編碼器壓縮后的數(shù)據(jù),通過(guò)網(wǎng)絡(luò)傳輸" title="網(wǎng)絡(luò)傳輸">網(wǎng)絡(luò)傳輸控制模塊傳輸?shù)骄W(wǎng)絡(luò)上去,從而實(shí)現(xiàn)網(wǎng)絡(luò)實(shí)時(shí)圖像傳輸。而DSP與網(wǎng)絡(luò)傳輸模塊(MCF5272)通過(guò)HPI口連接。其接口邏輯由CPLD完成。硬件連線圖如圖3所示。

?


??? 根據(jù)系統(tǒng)的邏輯要求以及實(shí)際的仿真結(jié)果,CPLD選用EPM7128SLC84。該芯片共有2500門,128個(gè)宏單元,最多100個(gè)用戶自定義管腳。
2 CPLD邏輯控制的具體實(shí)現(xiàn)
2.1 復(fù)位信號(hào)的實(shí)現(xiàn)

??? 復(fù)位信號(hào)邏輯產(chǎn)生較簡(jiǎn)單,需要處理的是按鍵的去抖動(dòng)。由于按鍵是機(jī)械觸點(diǎn),當(dāng)機(jī)械觸點(diǎn)斷開(kāi)、閉合時(shí)會(huì)有抖動(dòng),為使每一次按鍵只作一次響應(yīng),就必須考慮去除抖動(dòng)。在通過(guò)按鍵獲得復(fù)位信號(hào)為低的信息時(shí),不是立即認(rèn)定按鍵已被按下,而是延時(shí)一段時(shí)間后再次檢測(cè)復(fù)位信號(hào)。如果仍為低,說(shuō)明按鍵的確按下了,這實(shí)際上是避開(kāi)了按鍵按下時(shí)的抖動(dòng)時(shí)間。同樣,在檢測(cè)到按鍵釋放后,再延時(shí)幾個(gè)毫秒,消除后沿的抖動(dòng),然后再對(duì)鍵值處理。由于抖動(dòng)現(xiàn)象主要出現(xiàn)在按鍵按下后,采用延時(shí)方法可有效地減少按鍵的抖動(dòng)現(xiàn)象。
2.2? BOOT模式的實(shí)現(xiàn)
??? 為了滿足在復(fù)位有效期間對(duì)相應(yīng)管腳進(jìn)行配置,在復(fù)位無(wú)效時(shí),使管腳進(jìn)入高阻態(tài)。以其中一個(gè)管腳為例,采用Verilog語(yǔ)言,用如下語(yǔ)句實(shí)現(xiàn)該功能:
??? assign hd0=(tp4)?rst_hd0:1′bz;
??? //復(fù)位有效期間,tp4為1,hd=rst_hdo,即為設(shè)定值;復(fù)位無(wú)效時(shí),tp4=0,hd 為高阻態(tài)。
??? 因?yàn)镈SP自舉有特定的時(shí)間要求,在復(fù)位信號(hào)結(jié)束后,配置管腳的值必須至少保持25ns。通過(guò)對(duì)復(fù)位信號(hào)作一定的延時(shí),可以滿足要求。采用CPLD將信號(hào)作一定的延時(shí),并不能簡(jiǎn)單地在信號(hào)后串接一些非門或其它門電路,因?yàn)殚_(kāi)發(fā)軟件在綜合設(shè)計(jì)時(shí)會(huì)將這些門作為冗余邏輯處理,達(dá)不到延時(shí)的效果。所以采用高頻時(shí)鐘驅(qū)動(dòng)一移位寄存器,對(duì)移位寄存器進(jìn)行正確的設(shè)置后,輸出即為延時(shí)后的數(shù)據(jù)。語(yǔ)句如下:
??? always@(posedge eclkout2)?? //采用dsp的clkout=100MHz ???????二分頻后作延時(shí)
??? ??? begin
??? if(svs_rst_)?????????????????????? //svs_rst_低電平,count始終置1010
??? ?? ???? begin
??? ??????????? count=4'b1010;???????????????????????
??? ??????? end
??? ??????? else if(count==4'b0000)???? //0000則保持
??? ?????? ?begin??????? ?
??? ???????????? count=4'b0000;
??? ????????? end????????????????????????????? //svs_rst_高電平,count
??? ????????開(kāi)始計(jì)數(shù)
??? ??????? else
??? ??????? ?begin
??? ????????? count=count+4'b0001;? //記六次至0000
??? ??????? ?end
??? ??? ?end
??? assign tp4=count[3];
??? 仿真效果如圖4所示。由仿真波形可見(jiàn),CPLD的信號(hào)輸出完全符合DSP BOOT 的兩個(gè)要求。

?


2.3 HPI口接口邏輯的實(shí)現(xiàn)
??? 圖像壓縮編碼器通過(guò)DSP的 HPI口與網(wǎng)絡(luò)模塊連接,實(shí)現(xiàn)圖像的網(wǎng)絡(luò)傳輸。TMS320C6202的HPI口是指其擴(kuò)展總線的主機(jī)口接口部分。經(jīng)過(guò)編碼器編碼后的MPEG-4圖像數(shù)據(jù)以幀為單位存放在DSP內(nèi)部存儲(chǔ)器中,外部主機(jī)通過(guò)HPI口讀取?,F(xiàn)以MCF5272微處理器與HPI口通信為例進(jìn)行說(shuō)明。
??? MCF5272將10/100MB以太網(wǎng)控制器和一個(gè)USB模塊等通信外圍設(shè)備結(jié)合起來(lái), 是一款高集成的ColdFire微處理器。詳見(jiàn)參考文獻(xiàn)[4]。
??? MCF5272與TMS320C6202連接采用異步從屬工作方式,MCF5272作為上行機(jī),TMS320C6202作為從屬機(jī)。由MCF5272高位地址線模擬XCNL、XR_W信號(hào),TMS320C6202的多功能串行口3工作在GPIO模式下模擬信號(hào),為MCF5272提供主機(jī)口中斷。本系統(tǒng)由CPLD——MAX7000編程實(shí)現(xiàn)兩者硬件接口。仿真后的時(shí)序如圖5所示,實(shí)驗(yàn)證明可以滿足雙方時(shí)序要求,實(shí)現(xiàn)數(shù)據(jù)傳輸。

?


??? 以上所討論的邏輯并不復(fù)雜,采用74系列在一定程度上說(shuō)也可以完成。但是,采用CPLD具有以下優(yōu)勢(shì):體系結(jié)構(gòu)和邏輯單元靈活、集成度高、適用范圍廣,因而采用CPLD的方案。
??? 在開(kāi)發(fā)階段,通過(guò)硬件實(shí)現(xiàn)的控制信號(hào)往往不能確定,需要試驗(yàn)驗(yàn)證。而CPLD因其具有靈活性,逐漸成為DSP進(jìn)行信號(hào)處理不可或缺的協(xié)處理器。將相關(guān)控制信號(hào)接入CPLD,只需通過(guò)簡(jiǎn)單的編程即可實(shí)現(xiàn)各種需要的邏輯,避免了硬件上的改動(dòng),使硬件邏輯控制更加方便靈活,對(duì)類似設(shè)計(jì)具有普遍意義。文中討論的防抖動(dòng)以及CPLD延時(shí)程序?qū)τ陬愃圃O(shè)計(jì)也有一定的借鑒意義。
??? 本文介紹的CPLD在基于DSP的MPEG-4編碼壓縮模塊的系統(tǒng)中的應(yīng)用實(shí)例,已通過(guò)下載驗(yàn)證。應(yīng)用在工程實(shí)踐中,結(jié)果表明該設(shè)計(jì)是方便靈活且正確有效的。
參考文獻(xiàn)
1 MAX7000 Programmable Logic Device Family. Altera Inc.2001
2 TMS320C6202 Fixed-point Digital Signal Processors.Texas?Instruments Inc. 2000
3 TPS3307 Triple Processor Supervisors.Texas Instruments Inc.? 1998
4 MCF5272 ColdFire Integrated Microprocessor User’s Manual.MOTOROLA Inc.2001
5?仁麗香,馬淑芬. TMS320C6000系列DSPs的原理與應(yīng)用.北京:電子工業(yè)出版社,2000
6 TMS320C6000 Peripherals Reference Guide.Texas Instruments Inc. 1999

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。