基于JTAG的星型掃描接口的設(shè)計(jì)及其仿真
3.2.2 選擇與取消
在IEEE 1149.7標(biāo)準(zhǔn)規(guī)范中,選擇與取消功能的實(shí)現(xiàn)方法一般包括取消選擇逃脫和取消選擇警報(bào)。在本文中主要設(shè)計(jì)和驗(yàn)證了逃脫的操作。逃脫(Escapes)就是在1 bit周期內(nèi),不改變正常的信息交換情況下,將控制信息加載到正常傳輸?shù)腡CK(C)與TMS(C)信號(hào)上。TAP.7控制器探測(cè)TCK為邏輯“1”時(shí)TMS邊沿的數(shù)目值從而作為逃脫產(chǎn)生的條件。當(dāng)邊沿?cái)?shù)為4或5時(shí),產(chǎn)生一個(gè)取消逃脫,使控制器離線;當(dāng)邊沿?cái)?shù)為6或7時(shí),產(chǎn)生一個(gè)選擇逃脫,告知隨之而來的是一串選擇序列[4],如符合選擇序列標(biāo)準(zhǔn),將選擇此控制器或控制器所在的技術(shù)分支并將它們置于在線狀態(tài),反之將置于離線。選擇序列部分包括:技術(shù)相關(guān)部分與技術(shù)無關(guān)部分。其中技術(shù)無關(guān)部分指定要被選擇的技術(shù)分支,技術(shù)相關(guān)部分響應(yīng)在線申請(qǐng)和初始化在線設(shè)備。選擇序列具體功能及格式如圖3所示。
3.2.3 CID分配
在傳統(tǒng)的串型掃描拓?fù)渲?,TAP控制器在串型掃描鏈中與DTS的相對(duì)位置提供了直接尋址能力,使用星型拓?fù)鋾r(shí),串型掃描拓?fù)涮峁┑膶ぶ纺芰οЯ?,因?yàn)門AP控制器在掃描鏈中具有相同的相對(duì)位置??刂破鞯刂?TCA)可由IEEE 1149.1 器件的識(shí)別碼(27 bit)與節(jié)點(diǎn)識(shí)別碼(8 bit)組成。在實(shí)際應(yīng)用中,TS中的TAP數(shù)一般很少,這樣35 bit的TCA顯得開銷過大。從而,可利用一條TAP.7命令[5]CIDA分配一個(gè)4 bit的控制器識(shí)別碼(CID)給TAP.7控制器,也可利用一條TAP.7命令CIDD取消控制器的CID。DTS可動(dòng)態(tài)地分配CID到不同的TAP.7控制器,因此16個(gè)CID可被大于16的TAP.7控制器使用。
3.2.4 SSD
掃描選擇指令(SSD)添加到TAP.7 控制器功能中用以提供一種在Pause-xR 或 Run-Test/Idle 狀態(tài)停泊CLTAPC 的方式,它可防止星型掃描拓?fù)涞腡DO數(shù)據(jù)驅(qū)動(dòng)沖突并提供與串型拓?fù)涞葍r(jià)的掃描性能。SSD有三種類型:SSD_DA取消所有的CLTAPC;SSD_SA選擇所有的CLTAPC;SSD_SOT或 SSD_SOC,根據(jù)TCA或CID選擇目標(biāo)CLTAPC。SSD_SOT與SSD_SOC 指令在不同的ADTAPC狀態(tài)下有不同的操作:在Run-Test/Idle狀態(tài)下, SSD傳遞的CID 或 TCA 與某一TAP.7控制器的CID或TCA匹配時(shí),將選擇這一TAP.7控制器的CLTAPC,但不對(duì)其他CLTAPC進(jìn)行操作;但在Pause-XR狀態(tài)下,它將選擇目標(biāo)CLTAPC,同時(shí)取消非目標(biāo)CLTAPC。SSD必須在SSDE寄存器激活并且掃描格式支持星型掃描的情況下才能激活使用,SSD使用TDI數(shù)據(jù)來同時(shí)選擇與取消一個(gè)或多個(gè)CLTAPC。
4 星型掃描技術(shù)接口的設(shè)計(jì)及驗(yàn)證
在本文中,星型掃描技術(shù)接口是基于JTAG接口,根據(jù)硬件升級(jí)層次化的方法進(jìn)行設(shè)計(jì),并利用FPGA硬件平臺(tái)進(jìn)行設(shè)計(jì)和QuartusⅡ軟件進(jìn)行仿真驗(yàn)證。此接口的特點(diǎn)是在原有的TAP.1接口上添加了支持星型掃描技術(shù)的功能,此功能中最為關(guān)鍵的技術(shù)是技術(shù)分支的選擇和串型等價(jià)掃描。下面重點(diǎn)對(duì)它們進(jìn)行設(shè)計(jì)驗(yàn)證。
4.1 技術(shù)分支選擇的設(shè)計(jì)及驗(yàn)證
選擇與取消逃脫的探測(cè)和一串選擇序列完成技術(shù)分支的選擇操作。TAP.7控制器通過掃描拓?fù)溆?xùn)練識(shí)別不同分支所在的位置。一旦訓(xùn)練完成,每一技術(shù)分支呈現(xiàn)出單獨(dú)的技術(shù)特性,提供技術(shù)分支選擇的基礎(chǔ)。在選擇序列中包含了選擇技術(shù)分支的信息TOPOL寄存器值,不同的技術(shù)分支類型具有不同的TOPOL寄存器值。只有技術(shù)分支被選擇,它才能被操作。技術(shù)分支選擇的流程設(shè)計(jì)如圖4所示。
下面分別就長型選擇序列和短型選擇序列對(duì)技術(shù)分支選擇功能進(jìn)行仿真驗(yàn)證, 其驗(yàn)證仿真結(jié)果如圖5所示。
4.2 串型等價(jià)掃描的設(shè)計(jì)及驗(yàn)證
在星型拓?fù)鋻呙杓夹g(shù)中,提供了一種串型等價(jià)掃描的方法,這樣既完成了星型掃描功能,又實(shí)現(xiàn)了TDO數(shù)據(jù)的驅(qū)動(dòng)沖突保護(hù)。其具體設(shè)計(jì)過程為:
(1)選擇所有的分支;
(2)選擇所有分支中的所有CLTAP,并指明標(biāo)準(zhǔn)協(xié)議的應(yīng)用;
(3)選擇單一的技術(shù)分支,并將狀態(tài)推進(jìn)至Run-Test/Idle狀態(tài);
(4)使用SSD指令選擇技術(shù)分支中不參與串型等價(jià)掃描的STL,使它們成為閑置組成員(其余的 STL 為掃描組成員);
(5)推進(jìn)掃描組中的STL的CLTAPC狀態(tài)移入Pause-xR 狀態(tài);
(6)使用SSD來識(shí)別一個(gè)掃描目標(biāo)的STL,并對(duì)目標(biāo)STL進(jìn)行移位掃描,再回到Pause-xR狀態(tài),但不經(jīng)過Update-xR狀態(tài),使其他不是閑置組成員的STL成為Pause-xR組成員(這使得被SSD識(shí)別的STL成為掃描組唯一的成員);
(7)對(duì)技術(shù)分支中不是閑置組成員的每一個(gè)STL重復(fù)步驟(6);
(8)待技術(shù)分支中所有非閑置組成員完成掃描移位后,選擇技術(shù)分支中非閑置組的CLTAPC經(jīng)過Update-xR狀態(tài),并最終回到Pause-xR狀態(tài),中間不經(jīng)過Shift-xR 狀態(tài);
(9)重復(fù)步驟(6)、(7),完成整個(gè)單一技術(shù)分支的掃描;
(10)重復(fù)步驟(3)至(9),完成所有技術(shù)分支的掃描;
(11)將所有的CLTAPC狀態(tài)同步到ADTAPC的狀態(tài),完成串型等價(jià)掃描的整個(gè)過程。
評(píng)論