JTAG 標(biāo)準(zhǔn)IEEE STD 1149.1-2013學(xué)習(xí)筆記(一·)Test logic architecture、Instruction register以及Test data registers

我是 雪天魚脯颜,一名FPGA愛好者哟旗,研究方向是FPGA架構(gòu)探索和SOC設(shè)計(jì)。

關(guān)注公眾號(hào)【集成電路設(shè)計(jì)教程】栋操,拉你進(jìn)“IC設(shè)計(jì)交流群”闸餐。

注:轉(zhuǎn)載請(qǐng)注明出處

一、Test logic architecture

首先此測(cè)試邏輯架構(gòu)必須包含的組件有

  • 一個(gè) TAP 控制器
  • 一個(gè)指令寄存器 IR
  • 一組測(cè)試數(shù)據(jù)寄存器 DR

測(cè)試邏輯架構(gòu)示意圖如圖1所示

在這里插入圖片描述

<center>圖1 片上測(cè)試邏輯概念圖</center>

下面簡(jiǎn)單介紹下此示意圖:
(1)TAP 控制器接收TCK矾芙,TMS和TRST(可選)信號(hào)舍沙,產(chǎn)生 IR、DR和其他組件所需的時(shí)鐘和控制信號(hào)剔宪,控制所要執(zhí)行的操作拂铡,如復(fù)位、移位葱绒、捕獲和更新等感帅。
(2)IR 指令解碼選擇所要進(jìn)行操作的DR
(3)TMP控制器是可選組件,可接收指令解碼信號(hào)地淀,用于修改TAP控制器產(chǎn)生的一些控制信號(hào)失球。

所以此測(cè)試邏輯,就是通過JTAG接口根據(jù)指令去對(duì)DR進(jìn)行讀操作或者寫操作帮毁,寫數(shù)據(jù)從TDI輸入实苞,讀數(shù)據(jù)從TDO輸出璧微。

二、Instruction register

參考JTAG標(biāo)準(zhǔn)第七章指令寄存器(Instruction register)

顧名思義硬梁,指令寄存器用來存儲(chǔ)指令的前硫,指令通過TDI輸入到指令寄存器,再通過指令譯碼荧止,產(chǎn)生對(duì)應(yīng)控制信號(hào)屹电, 用于選擇要執(zhí)行的測(cè)試操作或要訪問的測(cè)試數(shù)據(jù)寄存器(DR)。

2.1 D型掃描觸發(fā)器

在正式介紹IR結(jié)構(gòu)之前跃巡,先介紹下帶多路選擇器的D型掃描觸發(fā)器危号,此掃描觸發(fā)器是掃描測(cè)試結(jié)構(gòu)的基本單元。

在這里插入圖片描述

<center>圖1 D型觸發(fā)器和帶多路選擇器的D型掃描觸發(fā)器</center>

掃描觸發(fā)器有兩種工作模式素邪,分別為:

  • 正常工作模式:scan_enable 為 0外莲,此時(shí)數(shù)據(jù)從D端輸入,從Q端輸出兔朦。
  • 掃描移位模式:scan_enable 為 1偷线,此時(shí)數(shù)據(jù)從scan_in 輸入,從scan_out輸出(Q與scan_out復(fù)用)

將這種掃描單元按照掃描移位模式連接起來沽甥,就構(gòu)成了掃描測(cè)試中的基本結(jié)構(gòu)声邦,這里僅簡(jiǎn)單介紹全掃描。全掃描就是多個(gè)掃描單元相連接摆舟,上一單元的掃描輸出亥曹,連接到目前單元的掃描輸入,目前單元的掃描輸出連接到下一單元的掃描輸入恨诱,以此類推媳瞪,構(gòu)成一條移位寄存器鏈,如圖2所示:

在這里插入圖片描述

<center>圖2 全掃描</center>

這樣的掃描結(jié)構(gòu)照宝,可通過一個(gè)串行輸入端蛇受,將期望的數(shù)據(jù)存入移位寄存器鏈并觀察運(yùn)行結(jié)果。

2.2 IR 電路結(jié)構(gòu)

指令寄存器的電路結(jié)構(gòu)與全掃描類似硫豆,同樣是采用了移位寄存器鏈龙巨。其掃描單元如圖3所示:

在這里插入圖片描述

<center>圖3 IR掃描單元</center>

<center>表1 IR掃描單元信號(hào)概述</center>

信號(hào)名 作用
ShiftIR 移位使能
PI Data 并行輸入數(shù)據(jù)
From last cell 掃描輸入(數(shù)據(jù)來自上一掃描單元的掃描輸出端口)
ClockIR 掃描單元時(shí)鐘信號(hào)笼呆,僅在Capture-IR和Shift-IR狀態(tài)時(shí)有效
Update IR 指令位觸發(fā)器時(shí)鐘信號(hào)熊响,僅在Update-IR狀態(tài)時(shí)有效
Reset 復(fù)位信號(hào),用于強(qiáng)制性指令解碼(BYPASS或IDCODE)
To next cell 掃描輸出(連接到下一掃描單元的掃描輸入端口)
Instruction bit 指令位诗赌,指示是否為該指令位對(duì)應(yīng)的指令

構(gòu)成的移位寄存器鏈如圖4所示:

在這里插入圖片描述

<center>圖4 帶譯碼器的IR完整電路</center>

掃描路徑已經(jīng)用紅色筆標(biāo)注了汗茄,所以IR就是根據(jù)TAP輸出的控制信號(hào),來進(jìn)行對(duì)應(yīng)的移位铭若,更新洪碳,捕獲等操作递览,譯碼器對(duì)指令進(jìn)行譯碼,并將對(duì)應(yīng)的指令位置1并輸出來控制測(cè)試邏輯架構(gòu)其他組件瞳腌。其中在 Test-Logic-Reset 狀態(tài)時(shí)绞铃,Instruction1將被復(fù)位,表示強(qiáng)制性指令BYPASS或者IDCODE嫂侍。

2.3 指令寄存器的操作

在不同的 TAP 控制器狀態(tài)下儿捧,IR進(jìn)行的操作不同,詳情見圖5:

在這里插入圖片描述

<center>圖5 每個(gè) TAP 狀態(tài)下IR的操作</center>

可以看到 IR 掃描單元存儲(chǔ)值只在Shift-IR狀態(tài)和Capture-IR狀態(tài)發(fā)生改變挑宠,且指令只在 Test-Logic-Reset 和 Update-IR 狀態(tài)更新并生效菲盾,其中前者是復(fù)位到強(qiáng)制性指令BYPASS或者IDCODE,后者則是更新為譯碼器結(jié)果各淀。

三懒鉴、Test data registers

參考JTAG標(biāo)準(zhǔn)第九章測(cè)試數(shù)據(jù)寄存器(Test data registers)、第10章旁路寄存器(Bypass register)碎浇、第11章邊界掃描寄存器(boundary-scan register)临谱。
此標(biāo)準(zhǔn)所定義的測(cè)試邏輯架構(gòu)中,測(cè)試數(shù)據(jù)寄存器至少要包括兩種寄存器奴璃,分別為旁路寄存器(Bypass Register)和邊界掃描寄存器(boundary-scan register)吴裤,當(dāng)然也有其他可選寄存器,如設(shè)備ID寄存器溺健、芯片ID寄存器麦牺、初始化數(shù)據(jù)寄存器等。

3.1 TDR的實(shí)現(xiàn)

TDR是由多個(gè)測(cè)試數(shù)據(jù)寄存器組成鞭缭,每個(gè)數(shù)據(jù)寄存器又基于移位寄存器實(shí)現(xiàn)剖膳,從而可以通過串行輸入將數(shù)據(jù)寫入選中的數(shù)據(jù)寄存器中,一種實(shí)現(xiàn)方案如圖1所示:

在這里插入圖片描述

<center>圖1 一組測(cè)試數(shù)據(jù)寄存器的實(shí)現(xiàn)</center>

實(shí)線繪制的寄存器為必須實(shí)現(xiàn)的數(shù)據(jù)寄存器岭辣,虛線繪制的寄存器為可選實(shí)現(xiàn)的吱晒。可以看到數(shù)據(jù)通過TDI端口串行輸入到DR中沦童,再通過MUX選擇要輸出的數(shù)據(jù)仑濒,經(jīng)TDO端口輸出。
下面簡(jiǎn)單介紹下所實(shí)現(xiàn)的一些DR偷遗。

3.2 Bypass Register

該寄存器只有一個(gè)移位寄存器墩瞳,即只能存儲(chǔ)1bit數(shù)據(jù),存在的意義是當(dāng)進(jìn)行某項(xiàng)測(cè)試操作時(shí)氏豌,不需要訪問其他的DR喉酌,那么TDI就選擇從旁路寄存器通過,從而減少對(duì)感興趣段的測(cè)試訪問時(shí)間,也就是讓數(shù)據(jù)能盡快從TDI達(dá)到感興趣段泪电。
實(shí)現(xiàn)的電路結(jié)構(gòu)圖如圖2所示:

在這里插入圖片描述

<center>圖2 旁路寄存器</center>
<center>表1 DR輸如輸出信號(hào)概述</center>

信號(hào)名 作用
ShiftDR 移位使能
From TDI 串行掃描輸入
ClockDR 移位時(shí)鐘信號(hào)般妙,僅在Capture-DR和Shift-DR狀態(tài)時(shí)有效

標(biāo)準(zhǔn)中提供了一個(gè)例子:
現(xiàn)有一個(gè)包含 100 個(gè)芯片的電路板,每個(gè)芯片的邊界掃描寄存器中有 100 位相速。 如果所有芯片同時(shí)串聯(lián)連接碟渺,則電路板上的邊界掃描路徑將包括 10000 個(gè)移位寄存器。 現(xiàn)在需要僅訪問測(cè)試路徑上的一個(gè)芯片突诬,這會(huì)導(dǎo)致測(cè)試時(shí)間過長(zhǎng)止状。但若存在旁路寄存器的話,便可大大減少路徑上經(jīng)過的移位寄存器級(jí)數(shù)攒霹,具體方法是將 99 個(gè)芯片設(shè)置為僅通過其旁路寄存器進(jìn)行移位怯疤,而被測(cè)芯片在路徑中仍是通過邊界掃描寄存器去測(cè)試。 這將使總串行路徑級(jí)數(shù)減少為 199 級(jí)催束,與 10000 級(jí)相比大幅減少集峦。

3.3 Boundary-scan register

在DR中,邊界掃描寄存器(BSR)是最復(fù)雜了抠刺,標(biāo)準(zhǔn)中用來解釋該寄存器的篇幅也比較長(zhǎng)塔淤,這里簡(jiǎn)單介紹一下,后續(xù)等自己理解加深后再更新速妖。

在這里插入圖片描述

<center>圖3 無BSR的組件</center>

該組件有輸入輸出管腳高蜂,輸入輸出緩沖器,輸入信號(hào)分為時(shí)鐘信號(hào)和非時(shí)鐘信號(hào)罕容,輸出信號(hào)部分可通過一些控制信號(hào)控制其輸出备恤。
BSR的作用就是用來觀察這樣一個(gè)片上系統(tǒng)邏輯的輸入輸出引腳傳輸?shù)臄?shù)據(jù),接下來介紹一下BSR單元

  • “observe-only”單元
在這里插入圖片描述

<center>圖4 “observe-only”單元</center>

為三端單元锦秒,兩個(gè)輸入端露泊,一個(gè)輸出端,其中一個(gè)輸入端接Pin,用于將輸入或者輸出管腳的信號(hào)加載到移位寄存器中旅择,另外兩個(gè)端口用于與其他單元相連接惭笑,組成完整的掃描鏈。

  • “control-and-observe” 單元
在這里插入圖片描述

<center>圖5 “control-and-observe”單元</center>

為四端單元生真,兩個(gè)輸入端口沉噩,兩個(gè)輸出端口,其中一個(gè)輸入端接Pin,用于將輸入或者輸出管腳的信號(hào)加載到移位寄存器中柱蟀,一個(gè)輸出端口用于將存儲(chǔ)的數(shù)據(jù)加載到Pin上川蒙,另外兩個(gè)端口用于與其他單元相連接,組成完整的掃描鏈产弹。此單元構(gòu)成的BSR就可以將期望的測(cè)試輸入向量加載到芯片中派歌。
其內(nèi)部結(jié)構(gòu)如圖6所示:

在這里插入圖片描述

<center>圖6 “control-and-observe”單元內(nèi)部結(jié)構(gòu)</center>

這里多了一些輸入端口,傳輸時(shí)鐘信號(hào)和控制信號(hào)痰哨,方便通過指令對(duì)BSR進(jìn)行一些操作胶果。

參考文獻(xiàn)
【1】IEEE Standard for Test Access Port and Boundary-Scan Architecture IEEE Std 1149.1?-2013
【2】SoC設(shè)計(jì)方法與實(shí)現(xiàn) 第三版 郭煒

  • 更多技術(shù)文章和學(xué)習(xí)資料,請(qǐng)關(guān)注我的公眾號(hào):【集成電路設(shè)計(jì)教程】
  • 全平臺(tái)統(tǒng)一:【雪天魚】
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末斤斧,一起剝皮案震驚了整個(gè)濱河市早抠,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌撬讽,老刑警劉巖蕊连,帶你破解...
    沈念sama閱讀 218,204評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異游昼,居然都是意外死亡甘苍,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門烘豌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來载庭,“玉大人,你說我怎么就攤上這事廊佩∏艟郏” “怎么了?”我有些...
    開封第一講書人閱讀 164,548評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵标锄,是天一觀的道長(zhǎng)顽铸。 經(jīng)常有香客問我,道長(zhǎng)料皇,這世上最難降的妖魔是什么谓松? 我笑而不...
    開封第一講書人閱讀 58,657評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮践剂,結(jié)果婚禮上毒返,老公的妹妹穿的比我還像新娘。我一直安慰自己舷手,他們只是感情好拧簸,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,689評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著男窟,像睡著了一般盆赤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上歉眷,一...
    開封第一講書人閱讀 51,554評(píng)論 1 305
  • 那天牺六,我揣著相機(jī)與錄音,去河邊找鬼汗捡。 笑死淑际,一個(gè)胖子當(dāng)著我的面吹牛畏纲,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播春缕,決...
    沈念sama閱讀 40,302評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼盗胀,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了锄贼?” 一聲冷哼從身側(cè)響起票灰,我...
    開封第一講書人閱讀 39,216評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎宅荤,沒想到半個(gè)月后屑迂,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,661評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡冯键,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,851評(píng)論 3 336
  • 正文 我和宋清朗相戀三年惹盼,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惫确。...
    茶點(diǎn)故事閱讀 39,977評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡逻锐,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出雕薪,到底是詐尸還是另有隱情昧诱,我是刑警寧澤,帶...
    沈念sama閱讀 35,697評(píng)論 5 347
  • 正文 年R本政府宣布盏档,位于F島的核電站,受9級(jí)特大地震影響燥爷,放射性物質(zhì)發(fā)生泄漏蜈亩。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,306評(píng)論 3 330
  • 文/蒙蒙 一港华、第九天 我趴在偏房一處隱蔽的房頂上張望立宜。 院中可真熱鬧崖技,春花似錦瞎访、人聲如沸装诡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽代态。三九已至歉摧,卻和暖如春膛檀,著一層夾襖步出監(jiān)牢的瞬間锰镀,已是汗流浹背娘侍。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留泳炉,地道東北人憾筏。 一個(gè)月前我還...
    沈念sama閱讀 48,138評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像花鹅,于是被迫代替她去往敵國(guó)和親氧腰。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,927評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • https://blog.csdn.net/orange_os/article/details/7544032 J...
    3339251b9466閱讀 6,759評(píng)論 0 0
  • 0.目錄 基本含義 基本概念 結(jié)構(gòu) 類型4.1 通用寄存器組4.2 指針和變址寄存器4.3 段寄存器4.4 指令指...
    lllnan閱讀 1,099評(píng)論 0 1
  • 目錄 組合邏輯電路編碼器譯碼器數(shù)據(jù)選擇器(多路開關(guān)刨肃、多路復(fù)用器)加法器數(shù)值比較器 半導(dǎo)體存儲(chǔ)電路鎖存器觸發(fā)器鎖存器...
    Tenloy閱讀 2,950評(píng)論 0 3
  • 1/2 考前復(fù)習(xí) 考試說明 1古拴、單選題,10分 2真友、填空題黄痪,30分 3、簡(jiǎn)答題盔然,24分 4桅打、綜合題,36分 復(fù)習(xí)P...
    Du1in9閱讀 5,344評(píng)論 8 33
  • 計(jì)算機(jī)起初只是方便數(shù)學(xué)家進(jìn)行算數(shù)運(yùn)算愈案。 馮諾依曼參與到了第一臺(tái)通用計(jì)算機(jī)ENIAC計(jì)算機(jī)的研發(fā)中挺尾。 并從中提出自己...
    HikariCP閱讀 1,138評(píng)論 0 1