基于SRAM的FPGA連線資源的一種可測性設(shè)計(jì)
上述的7種配置中同一個(gè)SB內(nèi)編號(hào)相同的開關(guān)的狀態(tài)都是一樣的。配置中SB旁邊的數(shù)字表示SB內(nèi)需要閉合的傳輸管的編號(hào)。圖中SB的編號(hào)Smn,其中:S00:處于奇行奇列的SB;S01:處于偶行奇列的SB;S10:處于奇行偶列的SB;S11:處于偶行偶列的SB。編號(hào)相同的SB在同一個(gè)測試配置中狀態(tài)是完全一樣的。如果對故障進(jìn)行診斷,需要配置1到配置6。
1)配置l和配置2能夠診斷任何單個(gè)線段開路故障、線段固定故障和線段橋接故障;
2)配置l、2、3、4、5和配置6能夠診斷任何編號(hào)為3、6的單個(gè)傳輸管固定O故障;
3)配置1、2、3、4、5和配置6能夠診斷任何編號(hào)為2、5的單個(gè)傳輸管固定0故障;
4)配置3、4、5和配置6能夠診斷任何編號(hào)為4、1的單個(gè)傳輸管固定0故障;
5)配置l(或配置2)、配置3和配置4能夠診斷任何編號(hào)為l的單個(gè)傳輸管固定1故障;
6)配置1(或配置2)、配置3和配置4能夠診斷任何編號(hào)為4的單個(gè)傳輸管固定1故障;
7)配置3、4、5和配置6能夠診斷編號(hào)為2、3、5、6的單個(gè)傳輸管固定1故障。
如果僅僅是進(jìn)行故障檢測,配置1、2和配置7就夠了。
4 移位寄存器鏈測試方法
由于FPGA規(guī)模越來越大,編程SRAM單元數(shù)量巨大,下載測試配置的時(shí)間就非常大。在測試中,需將配置下載到芯片中,然后加測試矢量對連線資源進(jìn)行測試,但是在下載的過程中,也同時(shí)將邏輯資源的編程數(shù)據(jù)下載到了芯片中,這種下載對測試連線資源是沒有用的,所以這部分時(shí)間對連線資源測試來說是多余的。
從圖2的開關(guān)盒連接關(guān)系和圖3中的測試配置可以看出,在一個(gè)開關(guān)盒內(nèi)部編號(hào)相同的開關(guān)狀態(tài)是一樣的,所以在這種情況下就可以在開關(guān)盒內(nèi)部增加6個(gè)觸發(fā)器,每個(gè)觸發(fā)器的輸出端連接到相同編號(hào)的所有傳輸管上,并且將所有的觸發(fā)器連接成多條移位寄存器鏈,這樣在配置的時(shí)候就可以將事先設(shè)計(jì)好的配置數(shù)據(jù)通過移位寄存器鏈下載相對應(yīng)的開關(guān)盒內(nèi)SRAM單元中,每個(gè)觸發(fā)器可以并行配置與其相連的SRAM單元,時(shí)間又可以節(jié)省很多。如圖4所示。各信號(hào)意義如下:
1)DATA IN:將設(shè)計(jì)好的編程數(shù)據(jù)通過移位寄存器移位到相對應(yīng)的位置上;
2)DATA 0UT:移位鏈的輸出端;
3)TEST CONTROL:控制芯片為測試狀態(tài)或正常工作狀態(tài)。當(dāng)其為1時(shí),所有的測試控制NMOS管都閉合,將觸發(fā)器的輸出寫到相應(yīng)的SRAM單元中;而當(dāng)其為0時(shí),所有的測試控制NMOS管都斷開,芯片處于正常工作狀態(tài),測試電路和工作電路完全斷開,不會(huì)影響芯片的正常工作;
4)NEXT:連接到另外一個(gè)開關(guān)盒的DATA IN,將所有的觸發(fā)器連接成多條移位寄存器鏈;
5)CLOCK:時(shí)鐘控制端,控制數(shù)據(jù)的移位。其他的一些輸入控制端沒有列出。
測試方法:比如要實(shí)現(xiàn)圖3中測試配置3,因?yàn)樵谶@個(gè)配置中,開關(guān)盒S00需要將編號(hào)為1、3、6的傳輸管閉合,所以此開關(guān)盒寄存器的配置為101001,開關(guān)盒S10,S11需要將編號(hào)為4的傳輸管閉合,其需要的配置為000100,而開關(guān)盒Sol將閉合傳輸管l、2、5,所以其配置為110010,所以對于配置3中的9個(gè)開關(guān)盒來說,需要的配置序列為:101001,000100,10100l;1 100lO,000100,110010;101001,000100,101001。
在測試的時(shí)候分別將6種配置的測試序列分別通過下載端口下載到芯片中,實(shí)現(xiàn)測試需要的配置對開關(guān)盒進(jìn)行測試。
三種常用的SB結(jié)構(gòu)如圖5所示。
評論