ADSP-21262型DSP的監控設計
2.3.2 底層軟件設計
本文引用地址:http://dyxdggzs.com/article/83949.htm底層DSP監控功能程序是整個(gè)監控功能實(shí)現的核心,由匯編語(yǔ)言開(kāi)發(fā)完成。它由底層監控功能模塊和UART協(xié)議收發(fā)驅動(dòng)函數模塊組成。
底層監控功能模塊可以供PC端監控功能模塊進(jìn)行調用,它直接負責完成對DSP的相應管理和操作,如:程序的裝載和運行、DSP內部指定地址存儲區的讀寫(xiě)、寄存器的讀寫(xiě)等。
由于A(yíng)DSP-21262不帶UART接口,于是需要UART協(xié)議收發(fā)驅動(dòng)函數用兩個(gè)通用I/O引腳模擬UART的工作時(shí)序,以實(shí)現DSP與PC間的通訊。
2.4 單DSP系統監控的工作機制
系統的監控功能需要PC機軟件和底層軟件協(xié)同工作來(lái)實(shí)現,工作流程如圖3所示。
圖3中左半部分代表底層DSP監控功能程序的流程,右半部分代表PC機監控服務(wù)軟件的操作流程,中間的虛線(xiàn)代表底層軟件和PC機軟件之間有數據通訊。
ADSP-21262內有1 Mbit的程序存儲器(PM),當配置為32位字長(cháng)時(shí),其地址空間為:0X80000~0X87FFF。其中0X80000~0X800FF為中斷向量表的位置,其后的空間被分為兩部分,分別存放用戶(hù)程序和監控程序。其中用戶(hù)程序駐留在低地址空間,監控程序駐留在高地址空間,具體位置用戶(hù)可以根據監控程序的大小作出調整。DSP的程序區示意圖如圖4所示。底層監控程序中UART的模擬是通過(guò)定時(shí)對Rx和Tx信號線(xiàn)進(jìn)行采樣來(lái)實(shí)現的,因此在監控程序中斷向量表中的定時(shí)中斷_TMZHI處執行JUMP TIMER0_INT指令,其中TIMER0_INT處為定時(shí)中斷服務(wù)程序,用于實(shí)現UART的收發(fā)功能。而在下載用戶(hù)程序時(shí),監控程序的中段向量表被用戶(hù)的中斷向量表所覆蓋,于是就無(wú)法執行相應的UART操作了,為了解決該問(wèn)題,在監控程序中加入以下代碼段:
其作用就是保護定時(shí)中斷向量入口,以保證正確進(jìn)入定時(shí)中斷服務(wù)程序。
3 多DSP系統監控設計
3.1 多DSP系統監控硬件設計
多ADSP-21262的DSP系統監控電路如圖5所示。
此系統共由5個(gè)ADSP-21262組成。其中DSP0被設為主處理器,其余4個(gè)作為從處理器。主處理器可以通過(guò)SPI總線(xiàn)與各從處理器通訊。從而實(shí)現對各從處理器的監控操作。而PC機與主處理器之間則采用上文所述的單DSP系統的監控方式,這里不作贅述。
主DSP設置為EPROM引導方式,上電后從外部EPROM中引導其監控程序PROGRAM_A。各從DSP則設置為SPI從引導方式,等待主DSP完成其自身引導后,再將監控程序PROGRAM_B通過(guò)SPI口寫(xiě)入從DSP中。完成引導后主/從DSP分別進(jìn)入各自的監控狀態(tài)。
3.2 多DSP系統監控工作機制
此系統中,PC機對主DSP的監控機制與單DSP系統相似,但是PC機監控軟件向主DSP發(fā)送監控命令時(shí),在命令字節中添加了DSP的ID信息,ID0~ID4分別對應DSP0~DSP4。主DSP接收到命令字節后提取出其中的ID信息,判斷用戶(hù)所期望的DSP代碼,如果是對主DSP自身的監控命令,則按照單DSP系統的監控機制進(jìn)行操作;如果是對某一從DSP的監控命令,則主DSP選中相應的從DSP,并通過(guò)SPI口將監控命令發(fā)往相應的從DSP,從DSP在執行完用戶(hù)所要求的監控功能后將結果通過(guò)SPI口發(fā)往主DSP,再由主DSP發(fā)送給PC機監控服務(wù)軟件。從而實(shí)現用戶(hù)對系統中各DSP的靈活管理。
對于不帶SPI接口的DSP,也完全可以采用其他各種通訊接口作為主DSP與從DSP之間的接口。
4 結束語(yǔ)
本文探討和研究了ADI公司SHARC系列DSPADSP-21262的監控原理和實(shí)現機制。并以單DSP和多DSP系統為例,分別詳細介紹了以UART口作為監控接口的監控設計方法。此方法也完全適用于其他各類(lèi)DSP的監控實(shí)現。
用戶(hù)可以根據系統需要和DSP所能提供的資源采用其他的監控方法:例如PC與主DSP之間的監控接口可以選擇為USB口、網(wǎng)口等;而主DSP與從DSP之間的通訊也能通過(guò)其他各類(lèi)總線(xiàn),例如并行的數據/地址總線(xiàn)、同步串口、I2C、HPI、LINK等,完全取決于用戶(hù)的需要,十分靈活方便。
評論