CPLD在通信數(shù)據(jù)傳輸中的應(yīng)用_第1頁
CPLD在通信數(shù)據(jù)傳輸中的應(yīng)用_第2頁
CPLD在通信數(shù)據(jù)傳輸中的應(yīng)用_第3頁
CPLD在通信數(shù)據(jù)傳輸中的應(yīng)用_第4頁
CPLD在通信數(shù)據(jù)傳輸中的應(yīng)用_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

CPLD在通信數(shù)據(jù)傳輸中的應(yīng)用CPLD在通信數(shù)據(jù)傳輸中的應(yīng)用1概述隨著大規(guī)模集成電路和單片機的迅速發(fā)展,復(fù)雜可編程邏輯器件(CPLD)具有使用靈活、可靠性高、功能強大的優(yōu)點,在電子產(chǎn)品設(shè)計中得到了廣泛的應(yīng)用。CPLD可實現(xiàn)在系統(tǒng)編程,重復(fù)多次,而且還兼容IEEE1149.1(JTAG)標準的測試激勵端和邊界掃描能力,使用CPLD器件進行開發(fā),不僅可以提高系統(tǒng)的集成化程度、可靠性和可擴充性,而且大大縮短產(chǎn)品的設(shè)計周期。由于CPLD采用連續(xù)連接結(jié)構(gòu),易于預(yù)測延時,從而使電路仿真更加準確。CPLD是標準的大規(guī)模集成電路產(chǎn)品,可用于各種數(shù)字邏輯系統(tǒng)的設(shè)計。近年來,隨著采用先進的集成工藝和大批量生產(chǎn),CPLD器件成本不斷下降,集成密度、速度和性能都大幅度提高,這樣一個芯片就可以實現(xiàn)一個復(fù)雜的數(shù)字電路系統(tǒng);再加上使用方便的開發(fā)工具,給設(shè)計修改帶來很大方便。實驗室設(shè)計開發(fā)了一款無線數(shù)據(jù)接收平臺,上下行速率可以達到1Mbps。射頻部分采用了Maxim的射頻套片,基帶部分采用了OMAP平臺,基帶射頻接口采用了ADI公司的混合信號前端(MxFE?)基帶傳輸芯片AD9861,系統(tǒng)的邏輯控制和數(shù)據(jù)的緩沖采用了ALTERA的CPLDEPM240GT100C3。2EPM240GT100C3實現(xiàn)的功能與總體要求EPM240GT100C3要完成AD9861的時序控制、AD9861和OMAP之間的數(shù)據(jù)緩存以及提供網(wǎng)口芯片LAN91C93所需的控制信號。在這幾項功能中,最主要的是數(shù)據(jù)緩存功能。要想正確地實現(xiàn)緩存功能,就必須要求緩存的收發(fā)I、Q數(shù)據(jù)不丟失,不顛倒,不錯相,同時保證數(shù)據(jù)的先寫后讀。按照這樣的思想,再結(jié)合兩邊的接口時序正確地配置讀寫地址、讀寫時鐘,就可以完成所需功能。3CPLD程序的詳細設(shè)計CPLD的主要功能是完成數(shù)據(jù)緩存和一些時鐘控制信號的產(chǎn)生。其功能框圖如圖1所示,主要包括雙口RAM存儲體單元,時鐘和控制信號產(chǎn)生單元,OMAP側(cè)地址發(fā)生單元,AD9861側(cè)地址發(fā)生單元。圖1CPLD功能框圖3.1雙口RAM的設(shè)計方法因為OMAP和AD9861兩邊都有讀寫操作,于是選擇了雙口RAM(DPRAM)作為數(shù)據(jù)的緩存。由于CPLD內(nèi)部的邏輯資源和布線資源有限,并且沒有獨立的DPRAM區(qū),只能用DFF來完成緩存功能,這就限制了DPRAM的大小。因為系統(tǒng)要求每個DMA中斷讀寫8個數(shù)據(jù),為了減小讀寫沖突的可能性,同時盡量地降低FF資源的利用,最終采用了相當于兩個8×8大小乒乓緩沖的16×8雙口RAM緩沖區(qū)。DPRAM的外部接口如圖2所示:圖2DPRAM的外部接口其中dina和douta接OMAP的數(shù)據(jù)線,dinb和doutb接AD9861的數(shù)據(jù)線,addra和addrb為內(nèi)部產(chǎn)生的讀寫地址。Wr_rd_en控制讀寫的方向,和TX_RX相連,即當Wr_rd_en=’1’時,為發(fā)射,數(shù)據(jù)由OMAP寫入,AD讀出,數(shù)據(jù)流向從dina->doub;當Wr_rd_en=’0’時,為接收,數(shù)據(jù)由AD端寫入,AD讀出,數(shù)據(jù)流向從dinb->doua;wrclk在四種時鐘之間切換,分別為3.2768M,6.4M,75M,84M,由TX_RX和V_D_SEL信號的高低來控制。為了降低布線資源的使用,讀數(shù)時沒有用讀時鐘,而是直接把addra和addrb地址上的數(shù)據(jù)輸出,因為addra和addrb本來就是與讀寫時鐘同步的。3.2時鐘產(chǎn)生CPLD輸入時鐘有來自射頻的16M時鐘,來自外部晶振的32.768M時鐘和來自O(shè)MAP接口的75M時鐘CLK。其中16M時鐘用于產(chǎn)生數(shù)據(jù)應(yīng)用時AD9861所需要的3.2M、6.4M轉(zhuǎn)換時鐘,32.768M時鐘用于產(chǎn)生語音應(yīng)用時AD9861所需要的1.6384M、3.2768M時鐘以及CODECAIC1110所需要的8K和2.048M時鐘。SDCLK本可以作為OMAP讀寫的主時鐘,但必須要使用CAS信號作為讀寫允許配合使用才行,為了節(jié)省布線資源,不用讀寫允許,就直接用CAS作為寫時鐘及OMAP側(cè)的地址產(chǎn)生使用,而SDCLK則用于產(chǎn)生一些同步脈沖。這些產(chǎn)生的時鐘除了輸出給外部芯片外,還在CPLD內(nèi)部作為地址產(chǎn)生的時鐘使用。3.2M和6.4M的時鐘產(chǎn)生是把16M的時鐘從0到4計數(shù),由reset和ad_da_enable給計數(shù)器清零,這樣的模5計數(shù)器的最低位即為6.4M,次低位為3.2M時鐘。這種時鐘產(chǎn)生的方式只需要三個DFF,節(jié)省邏輯資源,而且不會產(chǎn)生毛刺,但產(chǎn)生的時鐘占空比不是50%,實踐證明在低速應(yīng)用時,AD9861是可以正常工作的。系統(tǒng)的時鐘時序如圖3所示。圖3時鐘時序1.6384M和3.2768M時鐘的方法同理,只是需要把32.768M的時鐘20分頻而已,同樣計數(shù)器的清零由reset和ad_da_enable控制,這樣得到的模20計數(shù)器的第2位即為3.2768M,第三位為1.6384時鐘,時序跟上圖相似,這里就不再給出。這四個時鐘被分時賦給AD9861的主時鐘ADA_CLK,具體是哪個時鐘被賦ADA_CLK,由收發(fā)切換信號TX_RX,語音和數(shù)據(jù)選擇信號V_D_SEL控制。當TX_RX=’0’且V_D_SEL=’0’時,輸出給ADA_CLK的時鐘為1.6384M;當TX_RX=’1’且V_D_SEL=’0’時,輸出給ADA_CLK的時鐘為3.2768M;當TX_RX=’0’且D_SEL=’1’時,輸出給ADA_CLK的時鐘為3.2M;當TX_RX=’1’且V_D_SEL=’1’時,輸出給ADA_CLK的時鐘為6.4M。為了進一步節(jié)省資源,可以考慮把模5和模20的計數(shù)器共用,方案如圖4所示,BIT1和BIT2即為所需的時鐘,這時前端時鐘源由V_D_SEL選擇,BIT1和BIT2的選擇輸出由TX_RX控制。圖4模5模20計數(shù)器共用的時鐘產(chǎn)生方案2.048M的時鐘產(chǎn)生由32.768M時鐘16分頻得到,計數(shù)器的復(fù)位由reset和語音允許audcken控制,這樣得到的模16的計數(shù)器的高位即為2.048M時鐘。8K時鐘是對產(chǎn)生的2.048M時鐘256分頻得到。3.3地址產(chǎn)生在使用雙口RAM作為數(shù)據(jù)緩存時,有兩部分地址產(chǎn)生電路:OMAP側(cè)地址產(chǎn)生電路和AD9861側(cè)地址產(chǎn)生電路。AD9861側(cè)地址產(chǎn)生電路和OMAP側(cè)地址產(chǎn)生電路大致相同,但由于這2個地址發(fā)生器同時使用,所以不能復(fù)用。OMAP的地址發(fā)生器框圖如下:圖5OMAP的地址發(fā)生器CAS時鐘只負責對低3位地址進行計數(shù),而最高位由于選擇2個8×8RAM中的一個,為防止adda和OMAP同時讀寫同一個RAM,將OMAP側(cè)的高位地址線取值為AD9861側(cè)的地址最高位的反相。DMA請求清零信號作用:在AD9861側(cè)每觸發(fā)一次DMA請求,就生成一個DMA請求清零信號,用于復(fù)位OMAP側(cè)地址發(fā)生器,避免由于某此誤觸發(fā)引起OMAP讀寫地址混亂。AD9861側(cè)地址發(fā)生器如下:圖6AD9861側(cè)地址發(fā)生器4位地址總線的低3位用于選擇同一片RAM中的8個地址,最高位用于選擇2個8×8RAM中的一個,收發(fā)切換信號用于在收發(fā)切換時給地址發(fā)生器清零,復(fù)位由于邏輯誤觸發(fā)導(dǎo)致的地址總線錯誤。3.4LAN控制信號產(chǎn)生lan91c93是一款嵌入式以太網(wǎng)控制器,和OMAP一起構(gòu)成了嵌入式的以太網(wǎng)網(wǎng)絡(luò)接口卡。OMAP用異步的FLASH接口時序來訪問lan91c93,由于lan91c93沒有片選輸入端,所以把flash的片選和讀寫信號通過作一定處理后輸出給lan91c93。OMAP把CS1空間分配給了lan91c93,當nFLASH_CS1為低時,把nFLASH_WE,nFLASH_OE輸出給nLAN_WE,nLAN_OE,否則nLAN_WE,nLAN_OE為高電平。同時把LAN_RDY信號通過CPLD透傳給OMAP,通知OMAPlan91c93準備好數(shù)據(jù)的交換。4仿真和實測4.1數(shù)據(jù)接收狀態(tài)仿真置V_D_SEL為高,TX_RX也為低,表示現(xiàn)在處于數(shù)據(jù)接收狀態(tài)。依據(jù)時序關(guān)系產(chǎn)生所需的時鐘,復(fù)位信號;產(chǎn)生AD9861數(shù)據(jù)線上的數(shù)據(jù),模擬AD的輸出;產(chǎn)生ADA使能輸入控制信號AD_DA_ENABLE;SDRAMCAS信號等等。如下圖所示,DINB為AD9861數(shù)據(jù)線上的數(shù)據(jù),WRCLK為內(nèi)部產(chǎn)生的6.4M鎖存時鐘,用來把DA數(shù)據(jù)線上的數(shù)據(jù)寫入雙口RAM中,AD9861側(cè)的地址ADDRB是對寫時鐘WRCLK的下降沿計數(shù)得到的。當ADDRB為8或0時,產(chǎn)生一DMA中斷,觸發(fā)OMAP通過EMIFF接口把數(shù)據(jù)讀到DSP的MEMORY進行處理,每個DMA請求讀8個數(shù)據(jù),產(chǎn)生8個低脈沖的CAS信號,對CAS的脈沖個數(shù)進行計數(shù),得到OMAP側(cè)地址的低3位,最高位由ADDRB的MSB取反得到,這樣能避免讀寫沖突??梢钥闯鯝D的輸出數(shù)據(jù)能夠被正確地復(fù)現(xiàn)在OMAP的EMIFF接口數(shù)據(jù)線上,并被OMAP正確地讀進去。圖7數(shù)據(jù)接收狀態(tài)信號時序4.2數(shù)據(jù)發(fā)射狀態(tài)仿真置V_D_SEL為高,TX_RX為高,表示現(xiàn)在處于數(shù)據(jù)發(fā)射狀態(tài)。依據(jù)時序關(guān)系產(chǎn)生所需的時鐘,復(fù)位信號;產(chǎn)生EMIFF接口數(shù)據(jù)線上的數(shù)據(jù),模擬OMAP輸出的發(fā)射數(shù)據(jù);模擬產(chǎn)生ADA使能輸入控制信號AD_DA_ENABLE;SDRAMCAS信號等等。如下圖所示,ADA_CLK為內(nèi)部產(chǎn)生的6.4M時鐘,輸出作為ad9861的DA轉(zhuǎn)換的主時鐘。對ADA_CLK的上升沿計數(shù)得到AD9861側(cè)的地址ADDRB,當ADDRB為8或0時,產(chǎn)生一DMA中斷,觸發(fā)OMAP通過EMIFF接口把發(fā)射數(shù)據(jù)輸出到EMIFF接口數(shù)據(jù)總線上,每個DMA請求寫8個數(shù)據(jù),產(chǎn)生8個低脈沖的CAS信號,對CAS的脈沖個數(shù)進行計數(shù),得到OMAP側(cè)地址的低3位,最高位由ADDRB的MSB取反得到,這樣能避免讀寫沖突。DINA為EMIFF接口數(shù)據(jù)線上的數(shù)據(jù),用CAS延遲信號的下降沿來鎖存DINA,滿足EMIFF的SDRAM寫時序,可以正確地把數(shù)據(jù)寫入到雙口RAM中。DOUTB為輸出給DA的數(shù)據(jù),同時按照時序要求產(chǎn)生一發(fā)射同

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論