多核DSP調(diào)試代理與高速仿真器的設(shè)計與實現(xiàn)
發(fā)布時間:2020-03-29 18:12
【摘要】:隨著SoC系統(tǒng)集成技術(shù)的快速發(fā)展,多核數(shù)字信號處理器(DSP)的應(yīng)用范圍遍及各個領(lǐng)域,隨之在多核DSP上運行的并發(fā)程序也越來越復(fù)雜多樣。然而,如何有效、準確地調(diào)試這些并發(fā)程序成為決定程序開發(fā)周期的一個重要難點。因此,研究基于JTAG協(xié)議的多核DSP調(diào)試方案具有重要意義。本文針對多核DSP的調(diào)試問題,設(shè)計并實現(xiàn)了一種基于USB/PCIE通訊機制的JTAG調(diào)試方案,該方案在多核調(diào)試架構(gòu)優(yōu)化、通訊機制優(yōu)化等方面具有明顯優(yōu)勢,極大的縮短了程序開發(fā)周期,提高了程序運行速度與數(shù)據(jù)傳輸率,硬件和軟件資源得到了的充分利用。本文首先概述了多核調(diào)試的研究現(xiàn)狀,對涉及到調(diào)試代理相關(guān)的概念進行了介紹。通過對現(xiàn)有的調(diào)試模式對比分析,結(jié)合其優(yōu)點確定了本文中的設(shè)計方法。該設(shè)計方法包括軟件和硬件兩部分,硬件部分是由at91sam7x-ek ARM仿真器和四核DSP目標板組成,主機端與仿真器通過USB串口建立連接。軟件部分包括驅(qū)動程序和調(diào)試代理程序。調(diào)試代理分為兩部分:一部分運行在主機端,負責(zé)接收GDB發(fā)來的調(diào)試指令并轉(zhuǎn)譯為自定義指令;另一部分運行在at91sam7x-ek ARM仿真器端,負責(zé)將接收到的指令轉(zhuǎn)譯為JTAG指令并發(fā)送給目標板的DSP,最終完成調(diào)試指令的發(fā)送、轉(zhuǎn)譯、JTAG指令轉(zhuǎn)換、調(diào)試結(jié)果反饋等調(diào)試操作。為了提高數(shù)據(jù)傳輸速率以及調(diào)試代理程序并發(fā)處理能力,本文還將上述設(shè)計作了優(yōu)化操作。在上述設(shè)計的基礎(chǔ)上將ARM仿真器更換為Spartan6 XC6SLX100T的FPGA實現(xiàn),并使用PCIE×1接口傳輸數(shù)據(jù),由原來傳輸速率為480MB/S的USB2.0提升為512MB/S的PCIE。在數(shù)據(jù)傳輸速率和程序并發(fā)處理能力方面得到了有效的提高。設(shè)計結(jié)果和實際驗證表明,本文設(shè)計的多核DSP調(diào)試代理與高速仿真器是可行的,結(jié)構(gòu)簡單,可擴展性好,滿足多核DSP在線調(diào)試的需求。
【圖文】:
被分為兩部分,分別運行在宿主機端和仿真器端。調(diào)試接口是基于一種通信機制主要逡逑負責(zé)調(diào)試主機、JTAG仿真器、目標機之間的通信。該調(diào)試系統(tǒng)由調(diào)試主機、調(diào)試逡逑工具、JTAG仿真器、調(diào)試接口及目標機組成(如圖2-1所示)。宿主機端的調(diào)試代理逡逑負責(zé)完成解析調(diào)試器發(fā)來的指令(將調(diào)試器命令解析為自定義指令),并將解析后的逡逑自定義指令通過USB/PCIE接口發(fā)送到仿真器,再由仿真器將接收到的指令轉(zhuǎn)換為逡逑JTAG指令下發(fā)到目標板,,完成對目標處理器的調(diào)試操作。逡逑r邋邐邐邋1逡逑源程序逡逑i邐宿主:機|逡逑!邐 ̄編譯器逡逑!邋邐]邋[邐邋j邐j邐I逡逑I可執(zhí)行文件邐!邐|目|逡逑”邐j|SB邋USB/JTAG協(xié)議轉(zhuǎn)換瓜匕邐|逡逑|邋 ̄調(diào)試器 ̄?[調(diào)試代理|邋I邋?邋仿真器邋一"""應(yīng)用程序 ̄邋|逡逑L邐!邐!邐J逡逑圖2-1調(diào)試代理系統(tǒng)設(shè)計結(jié)構(gòu)圖逡逑Fig邋2-1.邋Design邋structure邋diagram邋of邋debugging邋agent邋system逡逑2.1調(diào)試代理逡逑_邋2.1.1調(diào)試代理概述逡逑調(diào)試是嵌入式軟件開發(fā)中的重要環(huán)節(jié)之一,在嵌入式軟件開發(fā)周期中占有著舉足逡逑輕重的地位。調(diào)試的功能也是衡量嵌入式軟件^u發(fā)工具好壞的一個重要參數(shù)。由于早逡逑期程序代碼量不那么龐大,開發(fā)者可以自己編寫調(diào)試、打印輸出語句來驗證程序的正逡逑確性與一致性。但是隨著嵌入式應(yīng)用的迅速發(fā)展與普及,為適應(yīng)各行各業(yè)的要求,嵌逡逑入式軟件規(guī)模和復(fù)雜度逐漸增大,軟件的規(guī)模甚至突破了上百萬行。如果仍通過編寫大逡逑量的調(diào)試輸出語句
為了方便開發(fā)人員快速了解及開發(fā)驅(qū)動程序,該模式提供了驅(qū)動程序的整體框逡逑架結(jié)構(gòu)。WinUSB框架由兩部分組成:內(nèi)核模式驅(qū)動程序(Winusb.sys)和用戶模式逡逑動態(tài)鏈接庫(Winusb.dll)(如圖3-1所示)。通過用戶模式軟件管理USB設(shè)備。內(nèi)核逡逑11逡逑
【學(xué)位授予單位】:北京化工大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2018
【分類號】:TP337;TP332
【圖文】:
被分為兩部分,分別運行在宿主機端和仿真器端。調(diào)試接口是基于一種通信機制主要逡逑負責(zé)調(diào)試主機、JTAG仿真器、目標機之間的通信。該調(diào)試系統(tǒng)由調(diào)試主機、調(diào)試逡逑工具、JTAG仿真器、調(diào)試接口及目標機組成(如圖2-1所示)。宿主機端的調(diào)試代理逡逑負責(zé)完成解析調(diào)試器發(fā)來的指令(將調(diào)試器命令解析為自定義指令),并將解析后的逡逑自定義指令通過USB/PCIE接口發(fā)送到仿真器,再由仿真器將接收到的指令轉(zhuǎn)換為逡逑JTAG指令下發(fā)到目標板,,完成對目標處理器的調(diào)試操作。逡逑r邋邐邐邋1逡逑源程序逡逑i邐宿主:機|逡逑!邐 ̄編譯器逡逑!邋邐]邋[邐邋j邐j邐I逡逑I可執(zhí)行文件邐!邐|目|逡逑”邐j|SB邋USB/JTAG協(xié)議轉(zhuǎn)換瓜匕邐|逡逑|邋 ̄調(diào)試器 ̄?[調(diào)試代理|邋I邋?邋仿真器邋一"""應(yīng)用程序 ̄邋|逡逑L邐!邐!邐J逡逑圖2-1調(diào)試代理系統(tǒng)設(shè)計結(jié)構(gòu)圖逡逑Fig邋2-1.邋Design邋structure邋diagram邋of邋debugging邋agent邋system逡逑2.1調(diào)試代理逡逑_邋2.1.1調(diào)試代理概述逡逑調(diào)試是嵌入式軟件開發(fā)中的重要環(huán)節(jié)之一,在嵌入式軟件開發(fā)周期中占有著舉足逡逑輕重的地位。調(diào)試的功能也是衡量嵌入式軟件^u發(fā)工具好壞的一個重要參數(shù)。由于早逡逑期程序代碼量不那么龐大,開發(fā)者可以自己編寫調(diào)試、打印輸出語句來驗證程序的正逡逑確性與一致性。但是隨著嵌入式應(yīng)用的迅速發(fā)展與普及,為適應(yīng)各行各業(yè)的要求,嵌逡逑入式軟件規(guī)模和復(fù)雜度逐漸增大,軟件的規(guī)模甚至突破了上百萬行。如果仍通過編寫大逡逑量的調(diào)試輸出語句
為了方便開發(fā)人員快速了解及開發(fā)驅(qū)動程序,該模式提供了驅(qū)動程序的整體框逡逑架結(jié)構(gòu)。WinUSB框架由兩部分組成:內(nèi)核模式驅(qū)動程序(Winusb.sys)和用戶模式逡逑動態(tài)鏈接庫(Winusb.dll)(如圖3-1所示)。通過用戶模式軟件管理USB設(shè)備。內(nèi)核逡逑11逡逑
【學(xué)位授予單位】:北京化工大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2018
【分類號】:TP337;TP332
【參考文獻】
相關(guān)期刊論文 前10條
1 王曉慶;周曉波;趙強;;PCIE高速數(shù)據(jù)采集系統(tǒng)的驅(qū)動及上位機軟件開發(fā)[J];計算機應(yīng)用與軟件;2013年09期
2 高瑛珂;王琪;李泉泉;張鐵軍;侯朝煥;;一種基于JTAG接口的片上調(diào)試與性能分析方法[J];微電子學(xué)與計算機;2012年07期
3 崔炳U
本文編號:2606331
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/2606331.html
最近更新
教材專著