解析MS320C6202DSP擴展總線(xiàn)與MPC860的接口實(shí)現
摘要:分析了Motorola MPC860嵌入式微處理器及數字信號處理器TMS320C6000 TM的特征,介紹了TMS320C6202DSP擴展總線(xiàn)與MPC860的接口實(shí)現。
本文引用地址:http://dyxdggzs.com/article/247354.htm關(guān)鍵詞:DSP QUICC VLIW(超長(cháng)指令字)
MPC860是PowerPC系列產(chǎn)品。PowerPC系列是由IBM、 Motorola和Apple聯(lián)合研制的基于RISC結構的微處理器。PowerPC可運行于多種操作環(huán)境,使用的工作平臺從便攜式設備到服務(wù)器。 TMS320C6000系列是1997年美國TI公司推出的DSP芯片,這種芯片是定點(diǎn)、浮點(diǎn)兼容的DSPs系列。其中定點(diǎn)系列是 TMS320C62xx,浮點(diǎn)系列是TMS320C67xx,它們可以通過(guò)DSP的HPI(Host Port Interface)和MPC860相連。本文針對C6202介紹另外一種接口方法,即同步主機接口模式下C6202的擴展總線(xiàn)與MPC860的接口實(shí)現,其中C6202為從處理器,MPC860為主處理器。
1 TMS320C6000的主要特點(diǎn)
TMS320C6000系列DSP(數字信號處理器)是TI公司最新推出的一種并行處理的數字信號處理器。TMS320C6000片內有8個(gè)并行的處理單元,分為相同的兩組。它的體系結構采用超長(cháng)指令字(VLIW)結構,單指令字長(cháng)為32bit,8個(gè)指令組成一個(gè)指令包,總字長(cháng)為8×32=256bit。芯片內部設置了專(zhuān)門(mén)的指令分配模塊,可以將256bit的指令包同時(shí)分配到8個(gè)處理單元,并由8個(gè)單元同時(shí)運行。芯片的最高時(shí)鐘頻率可以達到300MHz,通過(guò)片內的鎖相環(huán)(PLL)將輸入時(shí)鐘倍頻獲得。當片內的8個(gè)處理單元同時(shí)運行時(shí),最大處理能力可以達到2400MIPS。
TMS320C6000主要是為移動(dòng)通信基站的信號處理而推出的超級處理芯片。200MHz時(shí)鐘的C6201完成1024點(diǎn)定點(diǎn)FFT的時(shí)間只要66μs,比傳統的DSP要快一個(gè)數量級,在民用和軍用領(lǐng)域都將有廣闊的應用前景。
2 TMS3206000的擴展總線(xiàn)
目前,TMS320C6000系列中中有C6202和C6203具有擴展總線(xiàn)。它們是在C6201/6701主機接口(HPI)的基礎上發(fā)展起來(lái)的。
擴展總線(xiàn)是一個(gè)32bit寬的總線(xiàn),支持與異步外設、異步/同步FIFO、PCI橋及外部主控處理器的接口。它同時(shí)還提供了一個(gè)靈活的總線(xiàn)仲裁機制,可以進(jìn)行內部仲載,也可以由外部邏輯完成。
擴展總線(xiàn)從結構上可以分為兩部分:I/O接口和主機接口,如圖1所示。
I/O接口,擴展總線(xiàn)共管轄4個(gè)XCE外部空間,4個(gè)空間可以分別配置成兩種工作模式:異步I/O模式和同步FIFO模式。這兩種模式可以在一個(gè)系統中同時(shí)工作。異步I/O模式的接口信號時(shí)序與EMIF類(lèi)似,具有可編程程度高的特點(diǎn)。這一模式下,擴展總線(xiàn)接口的4根地址信號使得每個(gè)XCE空間最多可以?huà)旖?6個(gè)外部設備。FIFO模式則提供了與同步FIFO無(wú)縫接口的能力,可以直接控制1個(gè)進(jìn)行讀操作的同步FIFO或4個(gè)進(jìn)行寫(xiě)操作的同步FIFO。借助少量外部邏輯,每個(gè)XCE空間可以管理16個(gè)讀操作FIFO或16個(gè)寫(xiě)操作 FIFO。擴展總線(xiàn)I/O口與DSP的其他存儲空間由DMA控制器進(jìn)行連接。
主機接口也有兩種工和模式:同步和異步。同步模式提供了主控和從屬兩種工作方式,此時(shí)地地址信號和數據信號復用相同的管腳。異步模式只有從屬功能,它與C6201/C6211/C6701/C6711的HPI操作完全類(lèi)似,只是數據寬度為32bit。異步模式可以用來(lái)與全類(lèi)似,只是數據寬度為32bit。異步模式可以用來(lái)與其他微處理器接口。擴展總線(xiàn)主機接口與DSP存儲器的連接由DMA輔助通道完成。
在同步主機接口模式下,主機的數據與地址信號復用,并且與i960Jx兼容。目前主流的PCI接口芯片都采用i960總線(xiàn)作為芯片內部總線(xiàn),這樣C6000與PCI總線(xiàn)接口時(shí),需要的外部邏輯可以減少到最少。尤其在作為從屬處理器時(shí),同步主機接口同樣可以非常方便地與其他一些通用處理器接口。C6202的擴展總線(xiàn)還具有突發(fā)傳輸的能力。本文即利用這一方式實(shí)現MPC860與 C6202擴展總線(xiàn)的接口。
C6202處理器的工作頻率最高可以采用50MHz,經(jīng)內部4倍頻后升至200MHz,每個(gè)時(shí)鐘周期最多可以并行執行8條指令,從而可以實(shí)現1600MIPS的定點(diǎn)運算能力,完成1024點(diǎn)定點(diǎn)FFT的時(shí)間只需70μs。
3 MPC860介紹
MPC860 PowerQUICC是當今比較流行、性能相當優(yōu)越的單片集成嵌入式微處理器,繼承了以前享有盛譽(yù)的32bit 68360Quicc和68302的許多優(yōu)點(diǎn)。它內部集成了微處理器和一些控制領(lǐng)域常用的外圍組件,特別適用于互聯(lián)網(wǎng)絡(luò )和數據通信市場(chǎng)。 PowerQUICC可以被稱(chēng)為MC68360在網(wǎng)絡(luò )和數據通信領(lǐng)域的新一代產(chǎn)品,提高了器件運行的各方面性能,包括器件的適應性、擴展能力和集成度等。 MPC860 PowerQUICC通信處理器可根據用戶(hù)要求提供2~4個(gè)串行通信控制器、不同規格的指令和數據緩存及各種級別的網(wǎng)絡(luò )協(xié)議支持。該產(chǎn)品專(zhuān)為寬帶接入設備如:遠程接入路由器、DSLAM、接入集線(xiàn)器、LAN/WAN交換機、PBX系統和網(wǎng)關(guān)等設計。
在MPC860中包括3個(gè)主要模塊:PowerPC核心、系統接口單元(SIU)、通信處理模塊(CPM)。PowerPC是主要的處理機單元,通常稱(chēng)為Embedded PowerPC核心(或EPPC),它包括緩存和存儲器管理單元(MMU),在40MHz時(shí)鐘時(shí)為50 MIPS指令速度;第二個(gè)主要模塊為系統接口單元,它的主功能是提供內部總線(xiàn)和外部總線(xiàn)的接口;第三個(gè)主要模塊為通信處理機模塊,CPM在不同的通信設備如SCC和SMC上發(fā)送接收數據通信,通信設備可以獨立工作。SCC和SMC也可以用于時(shí)分復用總線(xiàn)。
CPM模塊中有一個(gè)32位RISC微處理機。MPC860有2個(gè)CPU:PowerPC和32位RISC。PowerPC執行高層代碼,RISC處理實(shí)際通信的低層通信功能。2個(gè)處理機主要是通過(guò)內部存儲空間配合工作。在存儲器區,每個(gè)處理機都可以設置控制位、讀狀態(tài)位。
MPC860中有16個(gè)串行DMA單元。每一個(gè)通信設備都有一個(gè)發(fā)送DMA和接收DMA。32位RISC控制這16個(gè)串行DMA在通信設備和存儲器之間傳送數據。當MPC860接收數據時(shí),串行DMA從通信設備接收數據并放入存儲器中;發(fā)送數據順序相反,串行DMA從存儲器中取數據,把數據送到通信設備。串行DMA只服務(wù)CPM的RISC,但是2個(gè)虛擬的IDMA可以為用戶(hù)所用。
4 擴展總線(xiàn)接口實(shí)現
MPC860內部集成了嵌入式的PowerPC核和使用特定RISC處理器的通信處理模塊(CPM)。這個(gè)雙處理器結構優(yōu)于傳統結構,因為CPM可以從嵌入式的PowerPC核卸出外圍任務(wù)。
4.1 接口實(shí)現
同步主機接口模式下,C6202和MPC860的接口如圖2所示。盡管圖2中的C6202處于從方式,但還是具有擴展總線(xiàn)仲裁的能力,用于異步I/O和擴展總線(xiàn)的FIFO接口。只有當這兩個(gè)設備共享總線(xiàn)時(shí),MPC860內部的仲裁才被使用。
擴展總線(xiàn)的管腳定義
擴展總線(xiàn)管理 MPC860的管腳 功能定義
XCNTL A[29] MPC860用于控制信號的地址位,A31是MPC860地址總線(xiàn)的LSB
XBLAST BDIP 觸發(fā)傳輸指示,XBLAST的極性(在這個(gè)例子高有效)由復位時(shí)XD[13]的上位電阻決定
XW/R RD/WR 讀寫(xiě)存取指示,XW/R的極性(在這個(gè)例子高有效)由復位時(shí)候的XD[12]的上拉電阻決定
XD[31:0] D[0:31] MPC860用D[0:3]作為32位的接口。D0是MPC860數據總線(xiàn)的MSB,而XD31是擴展總線(xiàn)的MSB。
XCLK XLKOUT 自身(擴展)總線(xiàn)時(shí)鐘
XHOLD 間接邏輯需與 擴展總線(xiàn)仲裁信號
XHOLDA BR、BG和BB連接 注意內部擴展總線(xiàn)仲裁已經(jīng)處于使能端
XAS TS 新的轉移開(kāi)始指示
XCS A[28:0] MPC860的地址解碼從而產(chǎn)生XCS信號
XBE[3:0] TSIZE[1:0]、A[31:30] 字節使能用TSIZE和A[31:30]的解碼來(lái)實(shí)現
XRDY TA SETA bit在MPC860選擇寄存器中設置為1,用于指示TA由外部總線(xiàn)產(chǎn)生
MPC860的內部總線(xiàn)仲裁處于禁止狀態(tài),相反擴展總線(xiàn)的仲裁處于使能狀態(tài)。DSP的字節使能信號由TSIZE[1:0]和MPC860的地址線(xiàn)A[31:30]通過(guò)解碼得到,DSP字節使能換算表如表1所示。
表1 DSP字節使能換算表

4.2 自舉配置
MPC860及擴展總線(xiàn)把數據總線(xiàn)的上拉和下拉電阻用于硬件復位的BOOT配置,MPC860和DSP需要不同的上拉電阻配置。方法之一就是用總線(xiàn)開(kāi)關(guān)(bus switch)。在這個(gè)例子中用SN74CBT16390(2個(gè)16bit和32bit之間FET復用/解復用總線(xiàn)開(kāi)關(guān))在復位的時(shí)候人離MPC860和 DSP的數據總線(xiàn),允許每一個(gè)設備有自己不同的復位配置字。方法之二就是首先硬件復位(復位的過(guò)程中,XBUS的上拉和下拉電阻用于配置MPC860),而DSP復位應該在MPC860之后。在DSP復位之后,MPC860有效地驅動(dòng)數據總線(xiàn)上用于配置DSP的數據值,從而DSP將被配置。
由于兩個(gè)設備都可以運行在內部總線(xiàn)仲裁使能或者禁止方式,所以?xún)炔繑U展總線(xiàn)仲裁(TMS320C6000擴展總線(xiàn))處理總線(xiàn)的仲裁。不管內部還是外部的仲裁配置都在系統復位時(shí)設置。假設處于外部仲裁,那么在MPC860從數據總線(xiàn)上取樣硬件復位配置字的時(shí)候,MPC860的ERAB位必須設置為1;而當DSP從復位到內部總線(xiàn)仲裁的數據總線(xiàn)上取樣硬件復位配置字的時(shí)候,TMS320C6000的XARB位必須設置為1。
通過(guò)在XD[31:0]上拉和下拉電阻的擴展總線(xiàn)自舉配置如下:
字段(field) 定義
BLPOL 當DSPs作為擴展總線(xiàn)的從屬時(shí),XBLAST信號的極性BLPOL=1,XBLAST最高有效
RWPOL 擴展總線(xiàn)讀/寫(xiě)信號的極性,RWPOL=1,為XW/R
HMOD 主機(host)的模式(對應于HPIC中的XB狀態(tài)),HMOD=1,外部的主機接口處于同步的主/從模式
XARB 擴展總線(xiàn)仲裁使能(對應于XBGC中的狀態(tài)),XARB=1,內部擴展總線(xiàn)仲裁處于使能狀態(tài)
FMOD FIFO模式(對應于XBGC中的狀態(tài))
LEND 小端模式,LEND=1,系統運行在小端模式
BootMode[4:0] 設定設備自舉模式,包括芽機口自舉、ROM、boot、存儲器映射選擇
為使工作準確,MPC860的高速緩存必須關(guān)閉使能。數據緩存是否使用,只要將相應的狀態(tài)寫(xiě)放DC_CST寄存器。在禁止狀態(tài),緩豐了標志狀態(tài)位被忽略,訪(fǎng)問(wèn)將通過(guò)總線(xiàn)傳輸。數據緩存在復位后默認為禁止。禁止的數據緩存不影響數據地址的邏輯轉換,在MSROR位的控制下繼續進(jìn)行,任何寫(xiě)入DC_CST寄存器的操作必須優(yōu)先于一個(gè)同步指令,則確保在數據存儲時(shí),數據緩存的使能變化。由于總線(xiàn)錯誤或者執行特定的直接緩存線(xiàn)性控制時(shí),數據緩存產(chǎn)生一個(gè)中斷信號,緩存進(jìn)入禁止狀態(tài),類(lèi)似于禁止。每一頁(yè)都有不同的存儲控制屬性,MPC860支持緩存禁止(CI)、寫(xiě)入(WT)和監視(G)屬性,但不支持存儲器的一致性。對于要求存儲一致性的頁(yè),必須編程設置為緩存禁止。G屬性用于映射那些對不確定存儲比較敏感的I/O設備,有G屬性的頁(yè)使存儲強行停止,除非是非敏感性存儲或者被核(core)取消。是否可緩存的區域必須定義,對于主要存儲區的寫(xiě)回(write-back)或寫(xiě)通(write-through)模式,必須在使數據緩存使能之前通過(guò)初始化MMU來(lái)選擇。
經(jīng)實(shí)驗驗證,MPC860可以對擴展總線(xiàn)進(jìn)行寫(xiě)操作,也可以讀操作,基本功能已經(jīng)實(shí)現。此方案具有一定的實(shí)用性。
路由器相關(guān)文章:路由器工作原理
路由器相關(guān)文章:路由器工作原理
交換機相關(guān)文章:交換機工作原理
存儲器相關(guān)文章:存儲器原理
上拉電阻相關(guān)文章:上拉電阻原理 鎖相環(huán)相關(guān)文章:鎖相環(huán)原理
評論