肖玉娟,李洋洋,廖世文
(廣州海格通信集團股份有限公司,廣州 510663)
基于OMAP-L138的接口傳輸設(shè)計與實現(xiàn)
肖玉娟,李洋洋,廖世文
(廣州海格通信集團股份有限公司,廣州 510663)
介紹基帶處理中使用的DSP(OMAP-L138)和FPGA的兩個接口設(shè)計。EMIFA時序參數(shù)靈活,使用方便,應(yīng)用廣泛;UPP接口則應(yīng)用于高速數(shù)據(jù)傳輸場合。這對C6000系列接口設(shè)計和應(yīng)用具有普遍意義。
EMIFA;UPP;FIFO
FPGA可用做DSP協(xié)處理器,或充當(dāng)高速數(shù)據(jù)處理器件或高速數(shù)據(jù)橋接器件。由于EMIFA具有靈活的時序參數(shù),只需要極少的FPGA邏輯,在這種情況下,只需最低限度的設(shè)計工作,使用標(biāo)準(zhǔn)FIFO就可以達到目的,所以Texas Instruments DSP平臺[1]中的外部存儲器接口(EMIFA)被廣泛用做連接到FPGA的接口。若對于寬帶信號的高速數(shù)據(jù)交互,則需要采用更高速率的UPP接口[2]。本文主要介紹這兩種接口設(shè)計及應(yīng)用。
圖1 PLL0內(nèi)部主要結(jié)構(gòu)
OMAPL138 EMIFA上的數(shù)據(jù)總線可以是16位寬,也可以是8位寬。OMAPL138晶振輸入24MHz,經(jīng)過25倍的PLL乘法器后的頻率為600MHz。選擇DIV4.5分頻得到133.33MHz的EMIFA輸入時鐘源。產(chǎn)生EMIFA時鐘源的PLL0頻率配置如圖1所示。對于OMAPL138來說需要將片選、輸出時鐘、地址線、數(shù)據(jù)線、讀使能、寫使能等有關(guān)復(fù)用管腳設(shè)置為EMIFA的對應(yīng)功能管腳,其次將EMIFA模塊的電源控制打開,最后配置如圖2所示的異步CSn配置寄存器(CEnCFG)對應(yīng)支持CS2、CS3、CS4和CS5這四個存儲器空間。
圖2 異步CSn配置寄存器(CEnCFG)
本設(shè)計使用了如圖3所示的雙口RAM的機制,默認(rèn)讀寫的存儲深度為2000個16bit的數(shù)據(jù)。幀格式為:幀頭標(biāo)志+幀長度+數(shù)據(jù)的格式。其中幀頭0x5555表示,0xAAAA表示。DSP下發(fā)數(shù)據(jù)到FPGA:由DSP這邊組幀發(fā)到FPGA端,當(dāng)DSP把數(shù)據(jù)寫到W_RAM中后,更新幀頭標(biāo)志為0xAAAA,地址0x0000,一旦FPGA監(jiān)測到幀頭為0xAAAA,接著開始讀取W_RAM的數(shù)據(jù),否則跳轉(zhuǎn)到上報數(shù)據(jù)狀態(tài)。FPGA讀完數(shù)據(jù)后,更新幀頭標(biāo)志位0x5555,表示上一幀數(shù)據(jù)已經(jīng)讀取完畢。FPGA上報數(shù)據(jù)到DSP:由FPGA這邊組幀上報到DSP端,當(dāng)FPGA把數(shù)據(jù)寫到R_RAM中后,更新幀頭標(biāo)志為0xAAAA,并發(fā)中斷,通知DSP讀走數(shù)據(jù),DSP讀完數(shù)據(jù)后,更新該幀頭標(biāo)志為0x5555,以便FPGA在上報下一幀數(shù)據(jù)的時候,通過檢測該標(biāo)志。圖4所示為寫操作,EMIFA的異步CSn配置寄存器(CEnCFG)的設(shè)置方式使得當(dāng)EMA_CS[n]為有效之后2個時鐘周期,異步寫使能(EMA_WE)成為有效,EMIFA給出數(shù)據(jù)。圖5所示為讀操作,CEnCFG寄存器設(shè)置為具有2個時鐘周期的建立延遲,3個帶選通脈沖的時鐘周期,2個保持周期終結(jié)一個讀操作。
通用并行端口UPP是一種多通道、高速并行接口,專為實現(xiàn)高速數(shù)據(jù)傳輸而設(shè)計。UPP模塊的設(shè)計有以下幾個優(yōu)點:基于DMA的數(shù)據(jù)傳輸,在降低了CPU使用率的同時也節(jié)省了程序運行時間;兩個獨立的DMA為模塊本身私有,減少了對系統(tǒng)DMA資源的占用;控制信號較為簡單,簡化了與外部設(shè)備傳輸控制的步驟,降低了控制出錯幾率。UPP模塊包含一個DMA控制器,實現(xiàn)對兩個獨立數(shù)據(jù)通道的控制。DMA與系統(tǒng)存儲器之間數(shù)據(jù)交換位寬采用64bit設(shè)計,較普通訪問模式,DMA則具有很明顯的訪問速度優(yōu)勢。每個DMA通道對應(yīng)著一個獨立的物理通道,并且每個物理通道均可以配置成接收通道或者發(fā)送通道。兩個物理通道均最大支持16bit和最小8bit位寬的數(shù)據(jù)傳輸,滿足不同外設(shè)不同數(shù)據(jù)位寬傳輸?shù)男枨?。UPP每個通道的只有很少的控制信號:START、ENABLE、CLOCK以及WAIT四個控制信號[3]。UPP支持兩種數(shù)據(jù)率傳輸方式:單倍數(shù)據(jù)率(Single Data Rate)即單時鐘沿傳輸數(shù)據(jù),和雙倍數(shù)據(jù)率(Double Data Rate)即雙時鐘沿傳輸數(shù)據(jù)。通過CLOCK信號就設(shè)定UPP傳輸?shù)乃俾剩瑢τ诎l(fā)送模式時鐘由OMAP-L138內(nèi)部的PLL經(jīng)過分頻產(chǎn)生,支持75.00MHz~4.69MHz范圍內(nèi)的配置,支持150.00MB/s~4.69MB/s數(shù)據(jù)傳輸要求;對于接收模式則需由外部數(shù)據(jù)發(fā)送設(shè)備提供,但最大不得超過150MHz。
圖3 基于FIFO的EMIFA設(shè)計
項目中采用的是收發(fā)雙信道模式,信道A發(fā),信道B收,收發(fā)都是單時鐘沿傳輸、8比特接口,忽略WAIT信號,START和ENABLE都是高電平有效,信號時序如圖6所示。發(fā)送的啟動是由FPGA控制發(fā)起,F(xiàn)PGA通過GPIO給DSP發(fā)8KHz的中斷,每來一個中斷后DSP判決發(fā)送數(shù)據(jù);接收則直接利用UPP接收完成中斷來檢測DMA通道是否接收完數(shù)據(jù),為了提高運行效率,其他中斷不響應(yīng),響應(yīng)接收完成中斷后立即清中斷。發(fā)送時鐘分頻器CLKDIVA設(shè)置為5,由PLL1送來的發(fā)送時鐘為132MHz,因此經(jīng)過分頻器后的發(fā)送引腳時鐘為(132/2)/(5+1)Mhz即11MHz。
圖4 異步寫入周期時域波形
圖5 異步讀取周期時域波形
圖6 UPP單時鐘沿傳輸信號時序圖
在本文的項目中,與FPGA控制信息主要通過EMIFA通信來,因其對速率要求不高,但是對準(zhǔn)確性有較高的要求。相對低速下的設(shè)計,完全可以滿足開發(fā)的需求。大量數(shù)據(jù)的收發(fā)則通過UPP完成。
[1]Texas Instrument Inc..OMAP-L138 technical referencemanual[Z].2009.
[2]TMS320C674X/OMAP-L1x Processor Universal Parallel Port(uPP)User’s Guide.June 2012.
[3]胡志國,范祝軍,何海菠.基于OMAP-L138的UPP接口的圖像數(shù)據(jù)實時傳輸?shù)膶崿F(xiàn).自動化與儀器儀表,2013(03):149-150。
Design and Im p lem entation of Interface Transm ission Based on OMAP-L138
XIAO Yu-juan,LIYang-yang,LIAO Shi-wen
(Guangzhou HAIGE Communication Group Incorporated Company,Guangzhou 510663)
Introduces the two interfaces of DSP(OMAP-L138)and FPGA used in baseband processing.EMIFA timing parameters are flexible,easy to use,widely used;UPP interface is used in high-speed data transmission applications.This is of universal significance for the design and application of c6000 series interface.
EMIFA;UPP;FIFO
1007-1423(2017)12-0081-04
10.3969/j.issn.1007-1423.2017.12.021
肖玉娟(1986-),女,江西吉安人,碩士研究生,助理工程師,從事領(lǐng)域為衛(wèi)星通信數(shù)字信號處理
2017-02-14
2017-04-12
李洋洋(1987-),男,河南漯河人,碩士研究生,工程師,從事領(lǐng)域為移動通信技術(shù)
廖世文(1985-),男,廣西柳州人,碩士研究生,工程師,從事領(lǐng)域為衛(wèi)星通信數(shù)字信號處理