復(fù)雜可編程邏輯器件在通信數(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 的CPLD EPM240GT100C3。
2 EPM240GT100C3 實現(xiàn)的功能與總體要求
EPM240GT100C3要完成AD9861的時序控制、AD9861和OMAP之間的數(shù)據(jù)緩存以及提供網(wǎng)口芯片LAN91C93所需的控制信號。在這幾項功能中,最主要的是數(shù)據(jù)緩存功能。要想正確地實現(xiàn)緩存功能,就必須要求緩存的收發(fā)I、Q數(shù)據(jù)不丟失,不顛倒,不錯相,同時保證數(shù)據(jù)的先寫后讀。按照這樣的思想,再結(jié)合兩邊的接口時序正確地配置讀寫地址、讀寫時鐘,就可以完成所需功能。
3 CPLD 程序的詳細設(shè)計
CPLD的主要功能是完成數(shù)據(jù)緩存和一些時鐘控制信號的產(chǎn)生。其功能框圖如圖1所示,主要包括雙口RAM存儲體單元,時鐘和控制信號產(chǎn)生單元,OMAP側(cè)地址發(fā)生單元,AD9861側(cè)地址發(fā)生單元。
圖1 CPLD 功能框圖
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所示:
圖2 DPRAM 的外部接口
其中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本來就是與讀寫時鐘同步的。
評論