用雙MicroBlaze監(jiān)控汽車應(yīng)用
XMD控制臺
對我們來說,最重要的XMD控制臺命令是關(guān)于多處理器系統(tǒng)使用的命令。用幫助命令可以直接從XMD控制臺調(diào)出這些命令的詳細(xì)列表。為將XMD控制臺用于多處理器系統(tǒng)的下載和調(diào)試,可使用命令connect mb mdm –debugdevice cpunr ,將處理器經(jīng)由MicroBlaze調(diào)試模塊(MDM)連接到XMD控制臺。其中,參數(shù)用于定義每個處理器的標(biāo)識符。在完成所有處理器的連接后,使用命令Target ,選擇一個Microblaze用于處理當(dāng)前的目標(biāo)連接?!癟arget”命令可顯示已連接目標(biāo)的列表。要將.elf文件下載到特定的目標(biāo)處理器上,開發(fā)人員可使用“dow”命令輸入完整的路徑和文件名:dow 。用戶既可以運(yùn)行“run”命令啟動被選中目標(biāo)上的軟件,也可以使用“stp”命令單步調(diào)試運(yùn)行代碼。如果MDM具有PLB連接XMD控制臺報(bào)告,可使用命令Read_uart start輸出JTAG UART。在定義端口后,JTAG UART服務(wù)器即可接收這些輸出,并使本地主機(jī)上的輸出可供終端程序使用(例如:HTerm或者Tera Term):Terminal jtag_uart_server 。
流水線系統(tǒng)
我們逐步設(shè)計(jì)實(shí)現(xiàn)的雙處理器平臺系統(tǒng),由兩個得到Xilkernel支持的MicroBlaze處理器構(gòu)成,它們通過FSL共享兩個通信接口,并訪問共享存儲器。每個處理器都配置了運(yùn)行在外部DDR2 SDRAM模塊中獨(dú)立存儲區(qū)上的指令和數(shù)據(jù)高速緩存。而且,XPS Mutex模塊能夠?qū)蚕泶鎯ζ髟L問進(jìn)行同步,以保證數(shù)據(jù)一致性。此外,我們還為兩個MicroBlaze調(diào)整了鏈接腳本,以便將專用存儲區(qū)分配給兩個處理器的指令段和存儲段,以及一個共享數(shù)據(jù)段。
表1是在默認(rèn)綜合約束條件下,Spartan-3A DSP 1800A和Virtex-6 XC6VLX240T FPGA的資源分配和使用情況。即便是中等大小的Spartan器件,也能夠?yàn)榕c雙MicroBlaze系統(tǒng)PLB或FSL接口相連的額外加速器IP提供大量slice資源。
表1:雙MicroBlaze Xilkernel系統(tǒng)的資源使用情況。
這些尚未利用的FPGA資源,讓我們能夠?yàn)榧す鈷呙鑳x的原始數(shù)據(jù)增加一個加速器處理單元。接下來我們的工作重點(diǎn)是,將基于QNX的防碰撞應(yīng)用和線程任務(wù)分配給兩個處理器。
由于障礙物識別、環(huán)境建模和遠(yuǎn)程控制構(gòu)成了一系列的條件和順序計(jì)算,所以我們選擇了流水線處理系統(tǒng)。在今后的工作中,我們準(zhǔn)備后續(xù)集成攝像頭行車道檢測功能,自動停放功能,以及其它所推薦的組件,比如:車輛測距和巡航控制。
評論