EmJTAG 協(xié)議轉(zhuǎn)換器的設計與實現(xiàn)_第1頁
EmJTAG 協(xié)議轉(zhuǎn)換器的設計與實現(xiàn)_第2頁
EmJTAG 協(xié)議轉(zhuǎn)換器的設計與實現(xiàn)_第3頁
EmJTAG 協(xié)議轉(zhuǎn)換器的設計與實現(xiàn)_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、    EmJTAG 協(xié)議轉(zhuǎn)換器的設計與實現(xiàn)摘要:實現(xiàn)了一種全集成可變帶寬中頻寬帶低通濾波器,討論分析了跨導放大器-電容(OTAC)連續(xù)時間型濾波器的結構、設計和具體實現(xiàn),使用外部可編程電路對所設計濾波器帶寬進行控制,并利用ADS軟件進行電路設計和仿真驗證。仿真結果表明,該濾波器帶寬的可調(diào)范圍為126 MHz,阻帶抑制率大于35 dB,帶內(nèi)波紋小于05 dB,采用18 V電源,TSMC 018m CMOS工藝庫仿真,功耗小于21 mW,頻響曲線接近理想狀態(tài)。關鍵詞:Butte摘要:協(xié)議轉(zhuǎn)換器是ARM嵌入式系統(tǒng)調(diào)試技術的關鍵所在。本文介紹了一種基于USB接

2、口的協(xié)議轉(zhuǎn)換器(EmJTAG)設計思想,并給出了硬件設計和固件設計的實現(xiàn)方法。關鍵詞:協(xié)議轉(zhuǎn)換器;硬件設計;固件設計1  引言協(xié)議轉(zhuǎn)換器的主要功能是接收調(diào)試服務器發(fā)來的各種調(diào)試協(xié)議信息,將它們轉(zhuǎn)換成JTAG 時序信號,控制ARM 核以及EmbeddedICE 宏單元,并返回一些數(shù)據(jù)和狀態(tài)信息給調(diào)試器。所以協(xié)議轉(zhuǎn)換器主要由兩部分組成:與調(diào)試器的通信接口部分,用于準確接收調(diào)試器發(fā)來的各種調(diào)試協(xié)議信息;與目標板的JTAG 接口部分,用于產(chǎn)生快速穩(wěn)定的JTAG 時序信號。各調(diào)試工具生產(chǎn)商所設計的協(xié)議轉(zhuǎn)換器各不相同,但歸納起來主要有3種實現(xiàn)模型:1利用PC 的并口,外部加上簡單的接口驅(qū)動電路或

3、單片機引出JTAG 接口。這種實現(xiàn)模型的特點是價格便宜,沒有固件程序或只有簡單的固件程序,與調(diào)試器的接口單一,JTAG 時鐘頻率低,程序下載速度慢。網(wǎng)上流行的Wiggler 協(xié)議轉(zhuǎn)換器和EasyJTAG 協(xié)議轉(zhuǎn)換器就是基于這種實現(xiàn)模型。2利用單片復雜FPGA,實現(xiàn)與調(diào)試器的接口部分和產(chǎn)生快速JTAG 時序信號。這種實現(xiàn)模式的特點是價格昂貴,固件程序復雜,JTAG 時鐘頻率高,下載速度快。ARM 公司生產(chǎn)的Multi-ICE 協(xié)議轉(zhuǎn)換器就是基于這種實現(xiàn)模型。3利用通用微處理器實現(xiàn)與調(diào)試器的接口部分,利用簡單FPGA 或CPLD 產(chǎn)生快速JTAG 信號。這種實現(xiàn)模型是前兩種實現(xiàn)模型的折中,價格適中

4、,固件程序升級容易,與調(diào)試器的接口豐富,JTAG 時鐘頻率快,程序下載速度快。本文介紹了使用ST72651設計實現(xiàn)協(xié)議轉(zhuǎn)換器。利用ST72651 內(nèi)部集成的USB模塊和數(shù)據(jù)傳輸協(xié)處理器(DTC)分別實現(xiàn)與調(diào)試器的接口和JTAG 信號的穩(wěn)定高速產(chǎn)生。這種實現(xiàn)方法屬于第3 種模型,但微處理器模塊和DTC 模塊是封裝在同一個芯片里面,這保證了微處理器模塊和DTC 模塊之間數(shù)據(jù)的快速傳輸。2  硬件設計2.1  ST72651 的概述ST72651 是專門為解決USB 接口的大量數(shù)據(jù)傳輸應用而設計的一款芯片。它基于ST7標準內(nèi)核,內(nèi)部集成了一個全速的USB接口,以及一個時鐘頻率為2

5、4M 的數(shù)據(jù)傳輸協(xié)處理器(DTC),32KB 的程序存儲空間,5KB 的RAM,支持I2C 和SPI 接口, 2.7V-5.5V 的工作電壓范圍,可用USB 接口直接供電,是一款功能強大的8 位機。2.2  硬件原理框圖基于ST72651的協(xié)議轉(zhuǎn)換器原理框圖如圖1所示。圖 1   協(xié)議轉(zhuǎn)換器硬件原理框圖USB 接口部分的電路比較簡單,只需在USB 的DP 腳上拉一個電阻,以使得USB 主機識別到該USB 設備。DTC 模塊產(chǎn)生的4 個JTAG 時鐘通過I/O 口引出,外部加一個接口驅(qū)動芯片,然后連到標準的JTAG接口上。TAP 控制器復位信號nTRST 和系統(tǒng)復位

6、信號nSRST 通過I/O 邏輯直接控制。系統(tǒng)采用USB 供電模式,POWER 燈指示系統(tǒng)的供電狀態(tài)。BUSY 燈連到TCK 引腳上,指示系統(tǒng)是否處于忙狀態(tài)。內(nèi)部集成的電壓校準器產(chǎn)生3.3V 的電壓供給接口驅(qū)動芯片。3  固件設計采用分模塊設計固件程序,包括下列六個模塊:DTC軟件插件程序模塊,掃描鏈操作模塊,EmbeddedICE 寄存器操作模塊,高層調(diào)試命令模塊,USB接口驅(qū)動模塊,主程序狀態(tài)機模塊。各模塊的調(diào)用關系如圖2所示。圖 2   固件各模塊調(diào)用關系3.1  DTC插件程序模塊ST72651內(nèi)部集成的數(shù)據(jù)傳輸協(xié)處理器(DTC)是一個通用的串行

7、/并行通信接口。ST7 核也可以讀寫DTC 的數(shù)據(jù)傳輸緩沖區(qū),因此需要一個仲裁電路用于防止ST7核和DTC沖突訪問該緩沖區(qū)。如果其中有一個在訪問數(shù)據(jù)傳輸緩沖區(qū),則另一個的請求將在數(shù)據(jù)傳輸緩沖區(qū)空閑時才得到響應;如果兩個同時請求,則按優(yōu)先級響應,ST7核的優(yōu)先級高于DTC。ST7 核通過DTC 控制寄存器DTCCR 控制DTC的操作,通過DTC 狀態(tài)寄存器DTCSR 查詢DTC 的狀態(tài),通過DTC 指針寄存器DTCPR 改變DTC的操作指針。DTC功能框圖如圖3所示。圖 3   DTC功能框圖DTC運行的插件程序非常簡單:將數(shù)據(jù)傳輸緩沖區(qū)中的數(shù)據(jù)快速移出到I/O口,或?qū)/O

8、口數(shù)據(jù)快速移入到數(shù)據(jù)傳輸緩沖區(qū)。由DTC操作的I/O口為4個JTAG信號:TCK、TMS、TDI和TDO。TCK作為移入/移出數(shù)據(jù)的觸發(fā)時鐘,TDI作為移出數(shù)據(jù)出口,TDO作為移入數(shù)據(jù)進口,TMS作為輸入信號,與TCK 一起決定TAP 控制器狀態(tài)的轉(zhuǎn)移過程。執(zhí)行插件程序前必須使TAP 控制器處Select-DR-Scan 狀態(tài),執(zhí)行完插件程序后TAP 控制器返回到Select-DR-Scan狀態(tài)。3.2  掃描鏈操作模塊掃描鏈操作模塊調(diào)用DTC 軟件插件程序,完成初始化TAP 控制器、掃描鏈1操作和掃描鏈2操作。掃描鏈1有33位,按掃描先后順序依次為:BREAKPT位(輸入),D31

9、-D0(輸入/輸出)。掃描鏈1 操作的目的是移入BREAKPT 位和向/從數(shù)據(jù)總線移入/移出 32位數(shù)據(jù)。掃描鏈2有38位,按掃描先后順序依次為:EmbeddedICE 寄存器的D0-D31,EmbeddedICE 寄存器的A0-A4,讀/寫位。掃描鏈2 操作的目的是讀寫EmbeddedICE 宏單元的寄存器。3.3  EmbeddedICE寄存器操作模塊    EmbeddedICE 寄存器的讀寫通過對掃描鏈2 操作實現(xiàn)。讀時將欲讀的EmbeddedICE 寄存器地址作為參數(shù)調(diào)用掃描鏈2 操作函數(shù),寫時將欲寫的值和EmbeddedICE 寄存器地址作為

10、參數(shù)調(diào)用掃描鏈2操作函數(shù)。3.4  高層調(diào)試命令模塊高層調(diào)試命令模塊完成的功能是:調(diào)用掃描鏈操作模塊和EmbeddedICE 寄存器操作模塊,實現(xiàn)各種調(diào)試控制命令,這些命令供主程序狀態(tài)機模塊調(diào)用。包括下列調(diào)試控制命令:讀寫核寄存器,讀寫存儲器,設置與清除硬件斷點,設置與清除軟件斷點,設置與清除觀察點,復位,停止運行,全速運行,單步運行,返回處理器狀態(tài),返回設備標志位。3.5       USB接口驅(qū)動模塊USB接口驅(qū)動模塊主要包含五個函數(shù):函數(shù)InitUSB( )用于初始化USB;函數(shù)USB_Polling( )用于處理US

11、B 主機發(fā)來的USB 標準設備請求,實現(xiàn)USB 枚舉階段的傳輸過程,同時根據(jù)狀態(tài)寄存器的標志位調(diào)用相應的端點處理函數(shù);CTR中斷服務程序用于處理端點上發(fā)生的各種中斷;函數(shù)USB_RecvDataEP2(unsigned char  *dp, uint8  len)和USB_SendDataEP2(unsigned char  *dp, uint8  len)分別用于從端點2接收和發(fā)送USB包。ST72651內(nèi)部集成的USB模塊實現(xiàn)兼容USB2.0規(guī)范的全速(12Mb/s)USB協(xié)議。它包括:模擬收發(fā)器、3.3V 電壓校準器、串行接口引擎(SIE)、USB

12、 數(shù)據(jù)緩沖區(qū)接口、端點相關寄存器和各種控制狀態(tài)寄存器,如圖4所示。圖 4   USB功能模塊3.6  主程序狀態(tài)機模塊主程序狀態(tài)機模塊循環(huán)調(diào)用USB 接口驅(qū)動模塊的USB_RecvDataEP2( )函數(shù)接收調(diào)試器發(fā)來的命令報文,根據(jù)命令報文的主命令號和次命令號調(diào)用高層調(diào)試命令模塊的相應命令函數(shù), 并將命令函數(shù)返回的數(shù)據(jù)通過調(diào)用USB_SendDataEP2( )函數(shù)返回給調(diào)試器,最終根據(jù)命令函數(shù)返回的狀態(tài)通過調(diào)用USB_SendDataEP2( )函數(shù)發(fā)確認報文給調(diào)試器。4  結束語本文所設計的EmJTAG協(xié)議轉(zhuǎn)換器代碼下載速度、單步執(zhí)行能力等各方面性

13、能都接近ARM公司生產(chǎn)的Multi-ICE協(xié)議轉(zhuǎn)換器的性能。而EmJTAG支持USB接口協(xié)議與主機通信,在PC外圍接口簡化的今天,USB接口就大大方便了嵌入式軟件設計者的使用,同時價格上的優(yōu)勢不言而喻的。該協(xié)議轉(zhuǎn)換器實現(xiàn)與現(xiàn)成調(diào)試器AXD的連接,而ARM公司擁有調(diào)試器AXD的知識產(chǎn)權。為實現(xiàn)一個完整的自主產(chǎn)權ARM嵌入式軟件開發(fā)工具鏈,還須完成的工作包括:自主產(chǎn)權編譯系統(tǒng)的實現(xiàn),自主產(chǎn)權主機調(diào)試器的實現(xiàn)。筆者希望本文對ARM調(diào)試系統(tǒng)在國內(nèi)的研究和推廣有所貢獻。本文作者創(chuàng)新點:本設計選取內(nèi)部集成USB模塊和數(shù)據(jù)傳輸協(xié)處理器(DTC)模塊的微處理芯片。USB模塊實現(xiàn)與調(diào)試器的通信,數(shù)據(jù)傳輸協(xié)處理器(DTC)模塊產(chǎn)生穩(wěn)定高速的JTAG 時序信號。微處理器模塊和DTC 模塊封裝在同一個芯片里,這保證了微處理器模塊和DTC 模塊之間數(shù)據(jù)的快速傳輸。用封裝在一塊芯片上USB模塊、微處理器模塊和DTC 模塊實現(xiàn)EmJTAG 協(xié)議轉(zhuǎn)換器,以此協(xié)議轉(zhuǎn)換器為理論基礎的調(diào)試器非常方便、高速穩(wěn)定和高性價比。參考文獻:1 楊峰,張根

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論