日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

JTAG 案例

發布時間:2025/3/8 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JTAG 案例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

摘要:

以前看datasheet,到了JTAG一章,一直奇怪為啥需要這么多篇幅來進行介紹。這段時間碰到兩個JTAG問題,才把章節瀏覽了一遍。才理解了 TAP其實由TMS,TCK控制,有時候能掃描器件,但是不能下載是因為TMS,TCK是正常,但是其他信號不正常。才理解IR寄存器的 (instruction register)作用,以及長度的重要性。

問題的解決.感謝同事caijun的幫助

JTAG ISSUE

1)? 出現JTAG CHAIN 的問題,問題描述

當進行XILINX CPLD 的JTAG下載的時候,LATTICE PM(power management)芯片(ISPPAC-POWER1220AT8)沒有串在JTAG chain的鏈中(雖然同時接第一個TDI)。但是TDI,TMS,TCK仍然接在JTAG chain上,形成一個分叉。當采用XILINX IMPACT進行CPLD下載時,會失敗。甚至get dvicecode也會失敗。

問題原因:

是因為LATTICE PM的JTAG instruction 的定義和XILINX的instruction的定義不一致造成.

When program the CPLD by Xilinx software, it will read the every IC IDCODE, instruction signals come from TMS&TCK which are inputs for TAP.From Xilinx CPLD datasheet page12, read IDCODE instruction is 0000 0001.

?

and from Lattice power1220 (電源管理芯片ispPAC-POWR1220AT8)datasheet page47 JTAG instruction table, found that

?

they have a same IR(instruction register) length and TMS instruction 0000 0001? !!!!?

?

因為lattice 的器件是一個電源管理芯片,所以會導致誤操作lattice器件,電源異常,從而引起FPGA的問題.

另外,因為不是串在一個JTAG CHAIN上,所以無法被下載軟件bypass掉

The TAP is controlled by the Test Clock (TCK) and Test Mode Select (TMS) inputs. These inputs determine whether an Instruction Register or Data Register operation is performed.

?

2) 問題描述:

在JTAG 鏈中,有lattice芯片和3片FPGA,使用chipscope的時候,出現FPGA異常,表現在initialize chain的時候,FPGA的內容似乎被刪除,在trigger的時候,軟件也被掛死。只有close cable(把JTAG cable關閉)才能重啟

問題解決:2011-12-19

如下圖,第一個器件是lattice的PM(電源管理芯片ispPAC-POWR1220AT8),其IR length(instruction register length)應該填入8。原來自己亂設為10,可能就造成了LATTICE芯片的錯誤,或者其他FPGA不可知的錯誤。 查看lattice atasheet改為8即可。修改可在menu ,JTAG CHAIN/JTAG CHAIN SETUP。其實不是電源問題,而是IR Length填寫錯誤,寫成10后,可能就把FPGA的IR指令一并帶入受到影響,造成沒有預料的問題。

?

JTAG設計小節

1)不要做分叉的JTAG CHAIN,把整個CHAIN串在一起,這樣可以bypass不需要的芯片。如果是分叉結構,分叉的芯片由于掃描不到,沒法做到bypass,這時雖然分叉,TDO沒有接回來,但是TMS,TCK仍然接在一起,就會產生問題(當然主要是電源管理芯片)。

2)如果需要隔離一個芯片的JTAG,必須把TMS,TCK禁止掉,因為這兩者才是TAP的輸入信號(見JTAG的結構,TAP),由于不同公司的IR寄存器(instruction register)定義不一樣,所以會出現沖突的問題(見上)。TDI也有影響。

3)對于POWER management的JTAG,要注意其輸出是否影響到整個鏈的電源,如果影響了,可以增加跳線進行模式選擇,讓其直接返回。同樣對于FPGA,因為涉及到內置邏輯分析儀使用,建議提供模式只有FPGA的JTAG CHAIN.

4)理解JTAG的IR寄存器(instruction register),這個很多JTAG下載軟件中碰到非本公司的芯片時,會要求輸入IR寄存器的長度(如chipsope,lattice下載),因為bypass命令是全1命令,所有JTAG 需要遵守的不多的命令之一。錯誤的IR寄存器長度,會帶來意想不到的問題。由于不同公司的IR寄存器(instruction register)定義只要遵守一些基本的定義,大部分定義不一樣,所以會出現沖突的問題(見第一個issue)

5)Lattice 的PM 的JTAG不支持boundary scan function 。

6)有些芯片的JTAG 管腳供電電壓不是和I/O電壓一樣,有時采用核電壓,如CYPRESS QDRII+ SRAM

以上對于JTAG工程師而言比較簡單,但是對于一般不關注JTAG CHAIN硬件工程師,則會有用。

轉載于:https://www.cnblogs.com/e-shannon/archive/2011/12/21/2295858.html

總結

以上是生活随笔為你收集整理的JTAG 案例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。