簡(jiǎn)述BSDL邊界掃描語(yǔ)言,BSDL邊界掃描語(yǔ)言的應(yīng)用
(1)attribute INSTRUCTION_LENGTH of EPM7128SL84:enTIty is 10;
指令長(zhǎng)度(INSTRUCTION_LENGTH)屬性定義了所有操作碼的長(zhǎng)度必須為10位。
(2)attribute INSTRUCTION_OPCODE of EPM7128SL84:entity is
“BYPASS (1111111111), ”
“EXTEST (0000000000),”
“SAMPLE (0001010101),”
“IDCODE (0001011001)”;
指令操作碼(INSTRUCTION_OPCODE)屬性指出器件所支持的指令的二進(jìn)制代碼,如器件標(biāo)志代碼指令I(lǐng)DCODE的位圖形為“0001011001” ,所有字串中最右邊的位最靠近TDO。根據(jù)1149.1標(biāo)準(zhǔn),旁路、外部測(cè)試和采樣指令是強(qiáng)制性的,且旁路指令BYPASS為全“1”串,外部測(cè)試 EXTEST指令為全“0”串。
(3)attribute INSTRUCTION_CAPTURE of EPM7128SL84:entity is “0101010101”;
指令捕獲(INSTRUCTION_CAPTURE)屬性說(shuō)明,當(dāng) TAP控制器處于捕獲指令寄存(Capture-IR)狀態(tài)時(shí),位圖形“0101010101”被裝入指令寄存器的移位寄存器部分,當(dāng)送入新指令時(shí),此位圖形被移出,IEEE 1149.1標(biāo)準(zhǔn)規(guī)定其最低兩位為“01”,其余位由廠(chǎng)商自行定義,這樣可以保證通過(guò)Capture信號(hào)可以檢測(cè)到掃描鏈上固定為“0”和固定為“1”的故障。
(4)attribute IDCODE_REGISTER of EPM7128SL84:entity is
“0000”“0111000100101000”“00001101110”“1”;
標(biāo)志寄存器屬性描述芯片內(nèi)置在標(biāo)志寄存器里的芯片ID碼。IEEE 1149.1標(biāo)準(zhǔn)規(guī)定芯片ID碼為32位,最右邊的一位是最靠近TDO的。如圖1所示,標(biāo)志寄存器的LSB是IEEE 1149.1標(biāo)準(zhǔn)強(qiáng)制為“1”的最低位,表示器件標(biāo)志寄存器的存在;第1位至11 位是廠(chǎng)商代碼號(hào)“01110110000”,這個(gè)代碼表示Altera公司;第12位至27位是芯片型號(hào) “0001010010001110”,即十六進(jìn)制“7128”(從右至左);第28位至31位是芯片版本號(hào)“0000” [2]。
2.2 邊界掃描寄存器描述
這是BSDL整體結(jié)構(gòu)的最重要部分,它描述了邊界掃描單元(BSC)的長(zhǎng)度及每個(gè)BSC的單元號(hào)與屬性。
(1)attribute BOUNDARY_LENGTH of EPM7128SL84:entity is 288;
邊界掃描長(zhǎng)度屬性表示EPM7128SL84 芯片共有 288個(gè)邊界掃描單元。
(2)attribute BOUNDARY_REGISTER of EPM7128SL84:entity is
--num(cell, port, function, safe [ccell, disval, rstl])
“0 (BC_4, IN84, input, X),”
“1 (BC_4, *, internal, X),”
“2 (BC_4, *, internal, X),”
……
“144 (BC_4, IO41, input, X),”
“145 (BC_1, *, control, 0),”
“146 (BC_1, IO41, output3, X, 145, 0, Z),”
……
“279 (BC_4, IO4, input, X),”
“280 (BC_1, *, control, 0),”
“281 (BC_1, IO4, output3, X, 280, 0, Z),”
……
“285 (BC_4, IN1, input, X),”
“286 (BC_4, *, internal, X),”
“287 (BC_4, *, internal, X)”;
對(duì)邊界掃描寄存器單元(BSC)屬性的描述由單元號(hào)與4個(gè)或7個(gè)圓括號(hào)內(nèi)的數(shù)據(jù)子段組成,這些BSC的排列順序可以是任意的,但每個(gè)單元都必須被定義。單元號(hào)從0到287 (BOUNDARY_LENGTH-1)進(jìn)行編號(hào),0單元是最靠近TDO的單元。括號(hào)中數(shù)據(jù)子段的名稱(chēng)為: cell, port, function, safe [ccell, disval, rstl],后三個(gè)方括號(hào)內(nèi)的可選子段只有在function子段的值為 out put3或bidir時(shí)才被定義。它們的含義如下:
· 單元子段:確定器件所使用的邊界掃描單元。EPM7128SL84芯片采用的BSC類(lèi)型為標(biāo)準(zhǔn)單元 BC_1與BC_4,其屬性已經(jīng)在VHDL組件STD_1149_1_1994中加以定義;
· 通道子段:說(shuō)明與對(duì)應(yīng)BSC相連的系統(tǒng)管腳。其名稱(chēng)與BSDL“logical port des cription”屬性中描述的管腳邏輯名稱(chēng)相一致。“*”表示此BSC 為輸出控制單元或內(nèi)部單元;
·功能子段:表示該BSC的主要功能。EPM7128SL84芯片BSC所涉及的功能有“input”、 “control”,“output3”和“internal”4種;
input:表示一個(gè)簡(jiǎn)單的實(shí)現(xiàn)輸入管腳接收的 BSC;
control:表示一個(gè)進(jìn)行輸出使能控制,或輸出驅(qū)動(dòng)與雙向管腳的單元方向控制的BSC;
output3:表示一個(gè)為三態(tài)輸出提供數(shù)據(jù)的 BSC;
internal:表示一個(gè)用于捕獲系統(tǒng)內(nèi)部邏輯的 BSC,它不與任何系統(tǒng)管腳相連;
·安全子段:當(dāng)ATPG軟件提供一個(gè)額外隨機(jī)值時(shí),safe子段定義了一個(gè)要裝入捕獲寄存器CAP 與更新寄存器UPD(如果存在的話(huà))的值,以防止系統(tǒng)邏輯因?yàn)檫^(guò)激勵(lì)信號(hào)等原因造成的錯(cuò)誤連接。這個(gè)值可以是“0”,“1”或“X”。“X”表示 “0”,“1”均可;
·控制單元子段:說(shuō)明對(duì)功能為output3或bidir的BSC進(jìn)行輸出使能控制的控制單元號(hào);
· 無(wú)效值子段:為禁用對(duì)應(yīng)的系統(tǒng)管腳,要給由ccell子段指定的控制單元賦的值;
· 無(wú)效狀態(tài)子段:給出被禁用驅(qū)動(dòng)器的狀態(tài)。這個(gè)狀態(tài)可以是高阻態(tài)(Z)、弱“1”態(tài)(weak1)或弱“0”態(tài)(weak0)[2]。
EPM7128SL84 芯片的管腳與邊界掃描單元如圖2所示,與輸入輸出管腳IO41相對(duì)應(yīng)的三個(gè)BSC單元號(hào)分別為144,145和146。
評(píng)論