基于多核芯片S698PM的JTAG應用
摘 要:
本文引用地址:http://dyxdggzs.com/article/201609/303438.htm經(jīng)過(guò)幾十年SoC系統設計技術(shù)的快速發(fā)展, SOC芯片內部頻率越來(lái)越快,編寫(xiě)及運行程序越來(lái)越大。在測試及調試過(guò)程中,用傳統UART串口下載及調試程序,在速度、打印等方面呈現出諸多不便;而且該端口在SOC/FPGA研發(fā)領(lǐng)域中不通用,而JTAG接口卻圓滿(mǎn)地解決了上述兩個(gè)問(wèn)題。
關(guān)鍵詞:
系統級芯片(SOC);知識產(chǎn)權(IP);JTAG;S698PM多核芯片; AMBA總線(xiàn);
Abstract:
THE JTAG APPLICATION OF S698PM CHIP
After the rapid development of SoC system design technology, SoC chip internal frequency is more and more fast, the running program is more and more big. In the process of testing and debugging, using traditional UART serial download and debug program, in terms of speed, print, presents the inconvenience; And in the field of research and development for the SOC/FPGA is not universal, and the JTAG interface is solved successfully the above two questions.
Key Words: SOC;IP;S698PM CHIP;AMBA BUS;JTAG;
引言
本應用手冊主要講解JTAG口的基本原理及與歐比特最新四核芯片S698PM的連接方法和注意事項;目的方便用戶(hù)盡快地熟悉和掌握S698PM開(kāi)發(fā)系統的JTAG調試環(huán)境。
1. JTAG簡(jiǎn)介
JTAG(Joint Test Action Group)是一種國際標準測試協(xié)議,與IEEE 1149.1標準高度兼容,主要應用于芯片功能內部測試及軟件程序調試兩大功能。
JTAG接口主要由4根信號線(xiàn)組成:TCK、TDI、TDO、TMS,不同的公司還添加幾根輔助信號線(xiàn),例如:NTRST、VERF、GND等信號。TCK是JTAG模塊外部輸入時(shí)鐘;TDI是JTAG模塊外部數據輸入信號;TDO是JTAG模塊外部輸出信號;TMS是JTAG模塊的模式選擇信號;
1.1. JTAG傳輸協(xié)議
1.1.1. JTAG傳輸狀態(tài)機
基于S698PM芯片JTAG的狀態(tài)機主要分兩種子狀態(tài)機,分別是數據傳輸狀態(tài)機和命令傳輸狀態(tài)機,并且自定義SHIFT-DR 與SHIFT-IR的循環(huán)次數不同,從而寫(xiě)入或是讀出的數值寬度不同而已。而S698PM芯片定義的數據寄存器寬度為33位,而命令寄存器寬度為35位,在下面的章節里有詳細介紹寄存器上每位的功能和意義。
下圖一展示JTAG模塊里狀態(tài)機的流轉過(guò)程。
1.1.2. JTAG時(shí)序圖
JTAG主要有四個(gè)信號,TCK作為協(xié)議的時(shí)鐘信號,一般默認以100ns為周期變化,而TMS/TDI則一般是在時(shí)鐘下降沿給出,TDO則是TCK時(shí)鐘上升沿移位出來(lái)。
2. S698PM芯片內部JTAG模塊
在S698PM芯片內部JTAG模塊是由三個(gè)子模塊組成,分別是TAP(Test Access Port)、Communication Interface、AHB主設備模塊組成。該JTAG調試端口提供訪(fǎng)問(wèn)S698PM芯片內部AMBA總線(xiàn)的功能,并通過(guò)簡(jiǎn)單的讀寫(xiě)協(xié)議實(shí)現AMBA總線(xiàn)上寄存器的讀寫(xiě)操作。
基于S698PM芯片的JTAG調試口帶有兩種寄存器(命令/地址寄存器、數據寄存器),并支持JTAG讀寫(xiě)兩種指令;AHB讀操作主要是通過(guò)JTAG信號線(xiàn)把讀寫(xiě)命令位、AHB傳輸類(lèi)型、AHB傳輸地址等信息移位到命令/地址寄存器里,然后讀操作試行,并把相應的數據保存到數據寄存器里,并通過(guò)TDO信號移位輸出來(lái);AHB寫(xiě)操作主要是通過(guò)JTAG信號線(xiàn)把讀寫(xiě)命令位、AHB傳輸類(lèi)型、AHB傳輸地址等信息移位到命令/地址寄存器里,然后把數據信息移位到數據寄存器里后,開(kāi)始執行AHB總線(xiàn)寫(xiě)操作。
3. JTAG調試
硬件主要有兩部分組成:一個(gè)是S698PM – DKIT開(kāi)發(fā)板,另外一個(gè)是FTDI公司的USB Hi-Speed FT4232 MINI MODEL開(kāi)發(fā)板。
S698PM – DKIT開(kāi)發(fā)板是芯片S698PM快速開(kāi)發(fā)的系統環(huán)境,詳細資料查看該開(kāi)發(fā)板的配套 資料。
FT4232H MINI MODEL開(kāi)發(fā)板主要完成JTAG下載器的功能。詳細資料查看FTDI公司的網(wǎng)站。
通過(guò)JTAG端口,并按照JTAG協(xié)議發(fā)送命令或是數據就可以調試和運行S698PM的程序,并且可以查看任意地址寄存器的數值。
4. 結論
通過(guò)FTDI公司的JTAG下載器,能夠成功下載嵌入式系統VXWORKS代碼,并快速執行,從反饋結果可以看出JTAG模塊功能正常,以此表明:基于S698PM芯片的JTAG控制器符合國際IEEE 1149.1標準,該JTAG調試口滿(mǎn)足芯片的邊界掃描測試及程序調試的需求;同時(shí)程序的下載速度提高了7倍以上,大大縮短了調試等待時(shí)間。
參考文獻
[1]. 顏軍. SPARC嵌入式系統設計與開(kāi)發(fā)-S698系列處理器實(shí)用教程[M].
北京:中國標準出版社, 2013.
評論