《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > MCU+DSP雙處理器的嵌入式平臺構建
MCU+DSP雙處理器的嵌入式平臺構建
摘要: 以MCF5272型和ADSP-BF527型數字信號處理器構建一種MCU+DSP雙處理器的嵌入式平臺,,詳細論述DSP通過主機DMA端口(Host DMA Port,,簡稱HOSTDP)實現主機引導加載程序以及DSP與主機的通信,。
Abstract:
Key words :

自動化控制要求實時采集數據,,快速控制,,多樣分析,,通信靈活,,雖然采用單個處理器構成的硬件平臺不能滿足要求,。采用以MCU+DSP雙處理器為核心的硬件平臺則是較合理的設計方案,。利用DSP實現數據實時采集,、分析、計算;MCU完成管理,、通信,、人機接口等異步系統(tǒng)控制功能。該硬件平臺的MCU與DSP接口設計與數據傳輸是系統(tǒng)設計的重要部分,,將直接影響系統(tǒng)性能和數據傳輸效率,。數據傳輸通常采用雙端口RAM、串行通信,、并行主機等接口方式,。其中,并行主機接口的方式可以滿足大量數據實時傳輸要求,。這里以MCF5272型和ADSP-BF527型數字信號處理器構建一種MCU+DSP雙處理器的嵌入式平臺,,詳細論述DSP通過主機DMA端口(Host DMA Port,簡稱HOSTDP)實現主機引導加載程序以及DSP與主機的通信,。

  2 MCU+DSP雙處理器接口設計

  圖l為MCU+DSP雙處理器ADSP-BF527與MCF5272的接口電路,。該嵌入式平臺采用ColdFire系列的MCF5272型MCU作為主機。MCF5272具有基于第二代ColdFire V2的內核,,32位數據和地址總線,,SDRAM接口,4個16位定時器,,3通道PWM輸出,,主頻高達66 MHz,豐富的外部接口和較強的通信功能,。此外,,該器件還具有出色的編碼密度和系統(tǒng)性能。

  

ADSP-BF527與MCF5272的接口電路

 

  圖1 ADSP-BF527與MCF5272的接口電路

  該系統(tǒng)DSP采用ADSP-BF527型數字信號處理器,該器件采用了微信號架構(MSA),,時鐘頻率達600 MHz,,功耗低至O.8 V,支持強大的片上總線系統(tǒng),,具有多個獨立的DMA控制器,,擁有較強的并行數據處理能力。ADSP-BF527帶有一個HOSTDP,,便于與外部主機構成雙處理器架構,,完成多種數據處理和控制任務。ADSP-BF527的HOSTDP內部分為主機外部接口模塊(HEI),、外圍訪問總線(PAB)接口模塊,、FIFO模塊、控制邏輯模塊和DMA接口模塊,。

  圖1中,接口電路各信號的功能為:HWAIT為握手信號,,防止Boot Kernel忙時主機寫數據;HOST_DATA為16位數據總線,,主機與從機數據交換的通道;HOST_ADDR為訪問屬性信號,O表示訪問數據接口,,l表示訪問配置接口;HOST_CE為主機對從機使能;HOST_WR為主機寫入HOSTDP使能信號;HOST_RD為主機讀取HOSTDP使能信號;HOST_ACK為數據傳輸握手信號,,應答模式下為HRDY,中斷模式下為FRDY;TOUT為讀寫操作超時信號,,應答模式下Host—Timeout計數溢出時產生;BMODE[3:0]為啟動模式設置信號,。

  3 ADSP—BF527啟動與程序加載

  ADSP—BF527復位包括硬件和軟件復位,復位中斷優(yōu)先級最高,。當釋放RESET信號后,,該處理器開始從片內BootROM的0xEF00 0000地址讀取指令并執(zhí)行。片內Boot ROM含有一個Boot引導核,,用于預引導和加載用戶數據,。

  3.1 預引導

  ADSP—BF527復位后,Boot引導核首先調用Preboot子程序,。Preboot子程序通過訪問一次可編程ROM(OTP)中的工廠設置頁(FPS)和預引導設置頁(PBS)來設置系統(tǒng)映射寄存器(MMR),,包括鎖相環(huán)(PLL)、電源調節(jié),、SDRAM控制器,、異步外部總線接口單元(EBIU)、HWAIT的信號模式以及0TP定制引導,。

  PBS由用戶設置,,每次使用4頁。當PBS出現錯誤時,,可置0TPINVALID位,,使其無效,,再使用下一個4頁。如果設置PBS首頁的PLL和電源調節(jié)錯誤,,可采用BMODE=0000引導模式補救,。該模式預引導程序不讀取PBS頁,FPS處理后,,ADSP-BF527處理器變?yōu)榭臻e狀態(tài),。

  處于安全考慮,PBS頁設置引導模式禁止/使能位,,禁止其他引導方式,。這樣即使BMODE引腳設置對應這些禁止引導方式,不會引導Boot引導核進入空閑狀態(tài),。

         3.2 引導模式設置

  預引導結束后,,Boot引導核根據BMODE[3:0]引腳設置啟動相應的引導方式加載用戶數據(引導流)。引導流為已定義格式,,包含若干數據塊和特殊指令,,每數據塊都含有一個16字節(jié)的塊頭,該塊頭由DSP的開發(fā)工具Visual DSP++設置生成,,用于指示引導核是否完成引導過程,。BMODE[3:0]引腳設置的引導模式包括無引導、主機引導和從機引導模式,。引導模式設置如表1所示,。

  

引導模式設置

 

  其中無引導模式由廠商編程設置0TP頁完成。主機引導模式中DSP自行加載用戶數據.通常是從并行接口的Flash或者SPI,、TWI接口的存儲器讀取數據,。從機模式DSP作為從機,主機控制RESET信號,。通常主機先設置RESET信號,,然后通過檢測HWAIT引腳等待預引導程序實現,最后提供加載用戶數據,。

  3.3 HOST DMA引導模式

  該系統(tǒng)為MCU+DSP架構,,主處理器MCF5272通過HOSTDP控制從機ADSP-BF527。ADSP—BF527的程序作為MCF5272數據寫入Flash存儲器中,。該系統(tǒng)加電復位后,,MCF5272向從機加載程序并引導啟動。因此采用HOST DMA引導設計較靈活,,獨立存儲器個數少,,提高性能并降低成本。系統(tǒng)維護時,Flash中ADSP-BF527程序通過修改主機通信接口,,提高產品維護效率,。該設計的BMODE[3:0]引腳電平設置為1110,采用從機16位HOSTDP引導模式,。

  當主機復位ADSP—BF527后,,ADSP-BF527可從片上BootROM的0xEF00 0000地址執(zhí)行預引導程序。預引導結束后,,向主機發(fā)送HWAIT信號,,主機開始向ADSP—BF527加載用戶數據。用戶數據加載完成后,,主機發(fā)送HIR9命令,,ADSP-BF527引導核執(zhí)行調用指令,程序指針跳至EVTl寄存器內用戶應用程序的首地址,,將控制權交給用戶應用程序,。此時,引導結束,。ADSP-BF527處理器繼續(xù)執(zhí)行用戶應用程序,。4 HOSTDP數據傳輸

 

  ADSP-BF527通過外設接口總線設置HOST CONTROL寄存器的HOST_EN位使能HOSTDP。如果禁止HOSTDP,,應在清除HOST_EN位前將HOST_RST置位,。一旦使能HOSTDP則由外部主機控制,。外部主機通過編程設置DMA發(fā)送和接收數據,,并將其存儲到ADSP-BF527有效的內部和外部存儲器中。

  4.1 HOSTDP設置

  數據傳輸前,,主機需配置DMA控制器,。主機首先讀取從機HOST_STATUS寄存器的ALLOW_CNFG位。如果允許配置,,主機將向HOSTDP發(fā)送7個16位控制字,。主機通過這些控制字配置HOSTDP的DMA讀寫、DMA模式,、起始地址等參數,。接收所有控制字后,ADSP-BF527根據控制字重新配置HOETDP,。在配置完成前,,主機處理器不允許提供新控制字。通過寫入控制字,,該設計將DMA設置為應答模式,,數據傳輸采用停止模式。

  總線寬度16位,以先傳輸低位數據的順序傳輸數據,。配置完成后,,主機以所配置的方式讀寫數據,從而實現數據傳輸,。數據傳輸過程中,,通過ADSP-BF527軟件編程設置控制寄存器中HER和EHW位使能或禁止主機讀寫HOSTDP,HER和EHW的設置,,不會影響到寫配置口,、控制命令和讀狀態(tài)。由于主機不能查詢HOSTDP的HER和EHW位,,因此,,該系統(tǒng)設計ADSP-BF527一直保持HER和EHW位使能。

  4.2 數據讀寫流程

  當使能HOSTDP,DMA通道配置后,,主機通過所配置的DMA通道與ADSP—BF527通信,。數據讀寫時,在有效數據的最后需附加一個傳輸終止字確保數據傳輸,。數據寫操作用于主機向從機的數據傳輸,。MCF5272將ADSP-BF527所需的信號與設置寫入HOSTDP的FIFO,DMA同時將從FIFO移出數據,,并存儲到DMA配置字規(guī)定的存儲器,。數據讀操作用于從機向主機數據傳輸。ADSP—BF527的DMA將從機存儲器中的數字信號處理結果移至HOSTDP的FIFO,。主機執(zhí)行讀操作,,從FIFO中讀取數據。

  停止模式下ADSP-BF527的HOSTDP讀寫操作流程如圖2所示,。其中,,DMA_DONE位在DMA將FIFO數據移出后置1,在下一次主機寫數據時置O,。HOSTRD_DONE位在主機將FIFO的數據移出后置l,,下一次主機讀操作,DMA向FIFO傳輸數據時置為0,。

  

停止模式下ADSP-BF527的HOSTDP讀寫操作流程

 

  應答模式下,,主機對HOSTDP的操作時序如圖3所示。在預定讀寫溢出時間內,,ADSP-BF527仍未完成相應的讀寫操作,,主機未接收到HRDY信號,主機超時寄存器計數溢出并產生超時中斷,。該設計的中斷服務程序首先通過GPIO引腳告知主機數據讀寫失敗,,停止DMA通道數據傳輸;當主機重置HRDY信號為高電平,,允許下一周期繼續(xù)傳輸數據;并禁止HOSTDP,在停止模式下,,具體的主機讀寫數據流程如圖4所示,。

  

主機對HOSTDP的操作時序

 

  

具體的主機讀寫數據流程

 

  5 結語

  隨著自動化領域監(jiān)測、控制任務對嵌入式系統(tǒng)的要求不斷提高,,多處理器硬件系統(tǒng)模式的快速發(fā)展,,電子技術和半導體加工工藝的發(fā)展促使DSP和MCU的融合。因此,,MCU+DSP的雙處理器結構已成為多核處理器的發(fā)展方向,。

此內容為AET網站原創(chuàng),未經授權禁止轉載,。