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