李 洋,張 燕,閆學昆,羅 明
(北京市海軍核化安全研究所,100077)
DSP 系統(tǒng)與ARM 系統(tǒng)都各有優(yōu)勢,如果將二者進行有效地結(jié)合,將其設(shè)計為雙處理器的嵌入式系統(tǒng),則二者的優(yōu)勢將得以更好地彰顯,從而可以使設(shè)計出來的系統(tǒng)能夠很好地滿足數(shù)據(jù)處理和傳輸所要求的實時性和高效性。鑒于此,下面主要針對ARM 和DSP 結(jié)合的雙核系統(tǒng)的通信接口設(shè)計方法進行分析,分別從系統(tǒng)的總體設(shè)計、通信接口設(shè)計兩個方面來進行討論。
ARM 芯片具有比較良好的控制性能,在嵌入式系統(tǒng)中主要用來進行控制工作或者對一些數(shù)據(jù)進行處理。為使其發(fā)揮更好的性能,對于CPU 有一定的要求,首先要具有較低的功耗,時鐘頻率要大,這樣才能使操作系統(tǒng)很好地運行;另外,要求其接口的種類也要多,從而可以使性能更好地進行擴展和發(fā)揮。綜合這些要求,在開發(fā)平臺中可以選擇HY7202 作為CUP。
DSP 主要負責數(shù)據(jù)運算,它比較擅長于對數(shù)字信號進行處理。在對DSP 進行選購時,要充分比較其性能,并且綜合考慮其性價比。在這里,我們選擇的是T1 公司的32位定點DSP,因為它目前的應(yīng)用較為廣泛,主要應(yīng)用于各類通信設(shè)備或者便攜式應(yīng)用中。與同類商品相比,具有很高的性價比。為了滿足數(shù)字視頻和數(shù)字圖像等數(shù)據(jù)吞吐量比較大應(yīng)用場合的處理要求,選擇了T1 公司的TMS320DM642(簡稱 DM642)芯片,它是專門面向多媒體應(yīng)用的,并且具有比較高的時鐘頻率,可以滿足我們的設(shè)計要求。
系統(tǒng)的軟件平臺主要是ARM 的設(shè)計和DSP 的設(shè)計,另外還有二者的接口軟件設(shè)計。對于ARM 的設(shè)計,本文選用了Samsung 公司的S3C6410 芯片,該處理器芯片具有體積小、成本低、功耗低以及性能高等優(yōu)點,主要是針對移動通信和多媒體處理的應(yīng)用而設(shè)計的。S3C6410 內(nèi)部集成了很多種具有較高性能的支持多種格式的視頻編解碼的接口,功能非常強大,并且具有十分豐富的內(nèi)部資源接口。圖形界面的設(shè)計選用了圖形界面以MicroWindows 0.9 及其控件庫FLNX 提供嵌入式圖形界面平臺。系統(tǒng)平臺可以進行網(wǎng)絡(luò)通信,并且功能很完備,借助WEBSERVER、FTP、TELNET、INETD 等網(wǎng)絡(luò)工具和應(yīng)用程序,可以開發(fā)基于Internet 的網(wǎng)絡(luò)終端、遠程控制、遠程數(shù)據(jù)采集、遠程數(shù)據(jù)處理產(chǎn)品,并且開發(fā)起來很方便。在應(yīng)用程序?qū)?,集成了窗口管理程序、網(wǎng)絡(luò)瀏覽器、flash 播放器、文本編輯器、游戲、數(shù)字示波器等,并集成了機頂盒上網(wǎng)解決方案。
DSP 部分可以提供完整的HPI 驅(qū)動程序和通信協(xié)議,可以通過增加相應(yīng)的數(shù)據(jù)處理來實現(xiàn)對算法程序的控制,利用HPI 并行接口和主機的ARM 通信實現(xiàn)數(shù)據(jù)之間的交換,可以用到對實時處理有一定要求或者需要進行相關(guān)控制的領(lǐng)域中。
DSP 和ARM 也可以獨立開來,分別作為兩個獨立的系統(tǒng)使用,因為它們都有完整的子系統(tǒng)軟件。子系統(tǒng)之間可以進行聯(lián)系的關(guān)鍵在于DSP 器件擁有自己的HPI 接口。
外部HPI 信號是一個特別方便的接口,對于不同的主機終端設(shè)備來說都很有利。ARM 處理器和DSP 芯片之間的通信可以通過HPI 接口來進行,在整個進行通信的過程中,ARM 可以訪問DSP 內(nèi)部或者外部的存儲器,對于DSP 所發(fā)出的中斷申請也能有所響應(yīng)。DSP 系統(tǒng)對于ARM 而言,類似于它的一個外部設(shè)備。
由于S3C6410 中沒有一個能夠完全符合DM642 HPI 接口時序的外部接口,所以本文的設(shè)計中選擇的外部存儲器接口是SROMController(SROMC),該接口比其他任何接口都更與S3C6410 中時序和DM642 HPI 接口類似。S3C6410 所表現(xiàn)出來的的支持性能很好,對于外部8位/16位NOR Flash、PROM、SRAM 存儲器都能很好地匹配??梢詫⑺譃?個bank 存儲空間,其中每個bank 空間的容量最多可以達到128MB。
下圖1 表示的是S3C6410 和 DM642 的接口電路。系統(tǒng)將HPI 接口所有的控制寄存器、地址寄存器、數(shù)據(jù)寄存器進行統(tǒng)一編址,將 HPI 的 16位數(shù)據(jù)總線HD[15:0]與S3C6410 的MemoryPort0 的16位數(shù)據(jù)總線 Xm0DATA[15:0]相連,通過這種方式來實現(xiàn)數(shù)據(jù)傳輸通道與主機之間的信息傳輸。但是由于該芯片一個字的大小為32位,因此所有和主機之間進行傳輸都不能直接一次性傳輸,而是需要由兩個連續(xù)的16位半字組成。其中控制信號線 HCNTL 與數(shù)據(jù)總線Xm0ADDR 相連用來控制訪問 HPI接口寄存器的類型;HHWIL 與地址線 Xm0ADDR4 相連,用于識別傳輸?shù)氖堑?個半字還是第2個半字,若為低則表示第1個半字,為高則表示第2個半字;HR/W 與Xm0ADDR5 相連,進行讀寫控制;HDS1、HDS2 分別與 Xm0OEn、Xm0WEn 相連,作為主機發(fā)出的兩路數(shù)據(jù)選通信號;HCS 與Xm0CSn5 相連,是主機發(fā)出的片選信號,通過如圖2 所示的內(nèi)部邏輯運算組成數(shù)據(jù)選通信號;HRDY 接至S3C6410 的GPO5 腳,用來指示當前 HPI 訪問的準備就緒狀態(tài);HINT 接至EINT7 引腳,用于DM642 向主機發(fā)送中斷申請;HAS 為地址選通信號,由于S3C6410 的Memory Port0 具有獨立的地址和數(shù)據(jù)總線,可以不使用HAS,固定接至高電平。



圖2 輸入選通邏輯
SROMC 控制HPI 接口的讀寫時序在設(shè)計時,要嚴格按照DM642HPI 接口的時序來進行。訪問HPI 接口的正確時序可以對相應(yīng)的信號端口進行一定的控制來產(chǎn)生,然后按照所產(chǎn)生的時序進行相應(yīng)的設(shè)計。


本文主要探討了DSP/ARM 雙核系統(tǒng)的通信接口設(shè)計,該設(shè)計結(jié)合了DSP 和ARM 兩種處理器的優(yōu)點,不僅將ARM 系統(tǒng)在人機交互和網(wǎng)絡(luò)控制等方面的優(yōu)勢很好地體現(xiàn)了出來,同時還很好地發(fā)揮了DSP 系統(tǒng)在音頻、視頻等多媒體數(shù)據(jù)處理方面的高性能的優(yōu)勢。再加上HPI 接口的設(shè)計,可以使得二者之間很方便地進行通信與數(shù)據(jù)交換,基于以上這些優(yōu)點,這種DSP/ARM 雙核系統(tǒng)的通信接口設(shè)計目前得到了越來越廣泛的應(yīng)用,相關(guān)的設(shè)計技術(shù)也在不斷發(fā)展。這一設(shè)計方法對于現(xiàn)代大多數(shù)的嵌入式系統(tǒng)的設(shè)計都具有很高的適用性,經(jīng)過比較長時間的運行測試,發(fā)現(xiàn)其具有一定的可靠性和穩(wěn)定性,并且對于實時性處理也能滿足,具有良好的發(fā)展前景。
[1]向強.MPC860T 與 DSP 的 HPI 通信設(shè)計[J].單片機與嵌入式系統(tǒng)應(yīng)用,2010(3):22-27.
[2]Texas Instruments Incorporated,卞 紅 雨,紀 祥春.TMS320C6000 系列 DSP 的 CPU 與外設(shè) [M].北京:清華大學出版社,2008:206-234.
[3]孫德偉,祁曉磊.基于 HPI 接口實現(xiàn) DSP 和 ARM 間的通信[J].微處理機,2009(3):61-63.
[4]廖義奎.ARM 與 DSP 綜合設(shè)計及應(yīng)用[M].北京:中國電力出版社,2009:363-392.