MCU+DSP雙處理器的嵌入式平臺(tái)構(gòu)建
ADSP-BF527通過(guò)外設(shè)接口總線設(shè)置HOST CONTROL寄存器的HOST_EN位使能HOSTDP。如果禁止HOSTDP,應(yīng)在清除HOST_EN位前將HOST_RST置位。一旦使能HOSTDP則由外部主機(jī)控制。外部主機(jī)通過(guò)編程設(shè)置DMA發(fā)送和接收數(shù)據(jù),并將其存儲(chǔ)到ADSP-BF527有效的內(nèi)部和外部存儲(chǔ)器中。
4.1 HOSTDP設(shè)置
數(shù)據(jù)傳輸前,主機(jī)需配置DMA控制器。主機(jī)首先讀取從機(jī)HOST_STATUS寄存器的ALLOW_CNFG位。如果允許配置,主機(jī)將向HOSTDP發(fā)送7個(gè)16位控制字。主機(jī)通過(guò)這些控制字配置HOSTDP的DMA讀寫、DMA模式、起始地址等參數(shù)。接收所有控制字后,ADSP-BF527根據(jù)控制字重新配置HOETDP。在配置完成前,主機(jī)處理器不允許提供新控制字。通過(guò)寫入控制字,該設(shè)計(jì)將DMA設(shè)置為應(yīng)答模式,數(shù)據(jù)傳輸采用停止模式。
總線寬度16位,以先傳輸?shù)臀粩?shù)據(jù)的順序傳輸數(shù)據(jù)。配置完成后,主機(jī)以所配置的方式讀寫數(shù)據(jù),從而實(shí)現(xiàn)數(shù)據(jù)傳輸。數(shù)據(jù)傳輸過(guò)程中,通過(guò)ADSP-BF527軟件編程設(shè)置控制寄存器中HER和EHW位使能或禁止主機(jī)讀寫HOSTDP,HER和EHW的設(shè)置,不會(huì)影響到寫配置口、控制命令和讀狀態(tài)。由于主機(jī)不能查詢HOSTDP的HER和EHW位,因此,該系統(tǒng)設(shè)計(jì)ADSP-BF527一直保持HER和EHW位使能。
4.2 數(shù)據(jù)讀寫流程
當(dāng)使能HOSTDP,DMA通道配置后,主機(jī)通過(guò)所配置的DMA通道與ADSP—BF527通信。數(shù)據(jù)讀寫時(shí),在有效數(shù)據(jù)的最后需附加一個(gè)傳輸終止字確保數(shù)據(jù)傳輸。數(shù)據(jù)寫操作用于主機(jī)向從機(jī)的數(shù)據(jù)傳輸。MCF5272將ADSP-BF527所需的信號(hào)與設(shè)置寫入HOSTDP的FIFO,DMA同時(shí)將從FIFO移出數(shù)據(jù),并存儲(chǔ)到DMA配置字規(guī)定的存儲(chǔ)器。數(shù)據(jù)讀操作用于從機(jī)向主機(jī)數(shù)據(jù)傳輸。ADSP—BF527的DMA將從機(jī)存儲(chǔ)器中的數(shù)字信號(hào)處理結(jié)果移至HOSTDP的FIFO。主機(jī)執(zhí)行讀操作,從FIFO中讀取數(shù)據(jù)。
停止模式下ADSP-BF527的HOSTDP讀寫操作流程如圖2所示。其中,DMA_DONE位在DMA將FIFO數(shù)據(jù)移出后置1,在下一次主機(jī)寫數(shù)據(jù)時(shí)置O。HOSTRD_DONE位在主機(jī)將FIFO的數(shù)據(jù)移出后置l,下一次主機(jī)讀操作,DMA向FIFO傳輸數(shù)據(jù)時(shí)置為0。
應(yīng)答模式下,主機(jī)對(duì)HOSTDP的操作時(shí)序如圖3所示。在預(yù)定讀寫溢出時(shí)間內(nèi),ADSP-BF527仍未完成相應(yīng)的讀寫操作,主機(jī)未接收到HRDY信號(hào),主機(jī)超時(shí)寄存器計(jì)數(shù)溢出并產(chǎn)生超時(shí)中斷。該設(shè)計(jì)的中斷服務(wù)程序首先通過(guò)GPIO引腳告知主機(jī)數(shù)據(jù)讀寫失敗,停止DMA通道數(shù)據(jù)傳輸;當(dāng)主機(jī)重置HRDY信號(hào)為高電平,允許下一周期繼續(xù)傳輸數(shù)據(jù);并禁止HOSTDP,在停止模式下,具體的主機(jī)讀寫數(shù)據(jù)流程如圖4所示。
5 結(jié)語(yǔ)
隨著自動(dòng)化領(lǐng)域監(jiān)測(cè)、控制任務(wù)對(duì)嵌入式系統(tǒng)的要求不斷提高,多處理器硬件系統(tǒng)模式的快速發(fā)展,電子技術(shù)和半導(dǎo)體加工工藝的發(fā)展促使DSP和MCU的融合。因此,MCU+DSP的雙處理器結(jié)構(gòu)已成為多核處理器的發(fā)展方向。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論