本發(fā)明涉及集成電路設(shè)計(jì)領(lǐng)域,尤其涉及一種IOL測(cè)試驗(yàn)證方法和裝置。
背景技術(shù):
隨著集成電路的高速發(fā)展,F(xiàn)PGA作為一種可編程邏輯器件,在短短二十多年中從電子設(shè)計(jì)的外圍器件逐漸演變?yōu)閿?shù)字系統(tǒng)的核心。伴隨半導(dǎo)體工藝技術(shù)的進(jìn)步,F(xiàn)PGA器件的設(shè)計(jì)技術(shù)取得了飛躍發(fā)展及突破,達(dá)到了高密度、高保密、低功耗、低成本、系統(tǒng)集成、動(dòng)態(tài)可重構(gòu)等特點(diǎn)。FPGA已經(jīng)在通信、航天、消費(fèi)電子等領(lǐng)域得到廣泛應(yīng)用,為了繼續(xù)提高性能和降低功耗,采用20nm、14nm工藝已成為必然選擇。
然而在FPGA集成密度越來越高,芯片面積越來越大的同時(shí),F(xiàn)PGA芯片的外圍管腳也越來越多,并且每個(gè)管腳都關(guān)系著芯片功能能否正常使用,如何快速的定位芯片管腳是否正常,需要一種簡單高效的方法來實(shí)現(xiàn),IOL應(yīng)運(yùn)而生。然而,IOL內(nèi)嵌測(cè)試固然是一種高效簡單的測(cè)試方法,但是缺乏對(duì)IOL本身的正常與否的驗(yàn)證,使IOL測(cè)試結(jié)果的正確性得不到保證。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明旨在解決現(xiàn)有技術(shù)中FPGA中的IOL測(cè)試缺乏驗(yàn)證手段,正確性得不到保證的問題。
為解決上述技術(shù)問題,本發(fā)明實(shí)施例提供一種IOL測(cè)試驗(yàn)證方法,包括:
將FPGA中的各個(gè)待驗(yàn)證的IOL單元串接,并建立與各級(jí)所述IOL單元對(duì)應(yīng)的比對(duì)鏈;
將激勵(lì)輸入串接的所述IOL單元中的第一級(jí)IOL單元和所述比對(duì)鏈,所述激勵(lì)沿著串接的所述IOL單元進(jìn)行傳遞,其中,上一級(jí)的所述IOL單元的輸出作為下一級(jí)的所述IOL單元的輸入;
將各級(jí)所述IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì),根據(jù)比對(duì)結(jié)果判斷所述IOL單元功能和/或連接關(guān)系是否正常。
可選的,所述將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì)包括:
當(dāng)所述IOL單元配置為旁路、鎖存器、寄存器中的至少一種時(shí),將各級(jí)所述IOL的輸出與相應(yīng)的所述比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出所述比對(duì)結(jié)果。
可選的,所述將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì)包括:
當(dāng)所述IOL單元配置為GDDR模式時(shí),將各級(jí)所述IOL的輸出與相應(yīng)的所述比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出所述比對(duì)結(jié)果。
可選的,所述將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì)包括:
當(dāng)所述IOL單元配置為MDDR模式時(shí),將各級(jí)所述IOL的輸出與相應(yīng)的所述比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出所述比對(duì)結(jié)果。
可選的,在根據(jù)比對(duì)結(jié)果判斷所述IOL單元功能和/或連接關(guān)系是否正常之前,還包括:
將最后一級(jí)所述IOL單元的輸出結(jié)果與預(yù)設(shè)結(jié)果進(jìn)行比較,并根據(jù)比較結(jié)果以及所述比對(duì)結(jié)果判斷所述IOL單元功能和/或連接關(guān)系是否正常。
本發(fā)明還提供了一種IOL測(cè)試驗(yàn)證裝置,包括:
創(chuàng)建模塊,將FPGA中的各個(gè)待驗(yàn)證的IOL單元串接,并建立與各級(jí)所述IOL單元對(duì)應(yīng)的比對(duì)鏈;
輸入模塊,用于將激勵(lì)輸入串接的所述IOL單元中的第一級(jí)單元和所述比對(duì)鏈,所述激勵(lì)沿著串接的所述IOL單元進(jìn)行傳遞,其中,上一級(jí)的所述IOL單元的輸出作為下一級(jí)的所述IOL單元的輸入;
比對(duì)模塊,用于將各級(jí)所述IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì),根據(jù)比對(duì)結(jié)果判斷所述IOL單元功能和/或連接關(guān)系是否正常。
可選的,所述比對(duì)模塊還用于:
當(dāng)所述IOL單元配置為旁路、鎖存器、寄存器中的至少一種時(shí),將各級(jí)所述IOL的輸出與相應(yīng)的所述比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出所述比對(duì)結(jié)果。
可選的,所述比對(duì)模塊還用于:
當(dāng)所述IOL單元配置為GDDR模式時(shí),將各級(jí)所述IOL的輸出與相應(yīng)的所述比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出所述比對(duì)結(jié)果。
可選的,所述比對(duì)模塊還用于:
當(dāng)所述IOL單元配置為MDDR模式時(shí),將各級(jí)所述IOL的輸出與相應(yīng)的所述比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出所述比對(duì)結(jié)果。
可選的,還包括比較模塊,用于將最后一級(jí)所述IOL單元的輸出結(jié)果與預(yù)設(shè)結(jié)果進(jìn)行比較,并根據(jù)比較結(jié)果以及所述比對(duì)結(jié)果判斷所述IOL單元功能和/或連接關(guān)系是否正常。
本發(fā)明的有益效果是:
本發(fā)明實(shí)施例提供了一種IOL測(cè)試驗(yàn)證方法和裝置,將FPGA中的各個(gè)待驗(yàn)證的IOL單元串接,并建立與各級(jí)IOL單元對(duì)應(yīng)的比對(duì)鏈;將激勵(lì)輸入串接的IOL單元中的第一級(jí)IOL單元和比對(duì)鏈,激勵(lì)沿著串接的IOL單元進(jìn)行傳遞,其中,上一級(jí)的IOL單元的輸出作為下一級(jí)的IOL單元的輸入,將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì),根據(jù)比對(duì)結(jié)果判斷IOL單元功能和/或連接關(guān)系是否正常。通過本發(fā)明的實(shí)施,通過IOL單元鏈與比對(duì)鏈之間的輸出的比對(duì),實(shí)現(xiàn)了對(duì)IOL功能正常與否以及各單元的引腳的連接關(guān)系正確是否的驗(yàn)證,保證了IOL測(cè)試的準(zhǔn)確性。
附圖說明
圖1為本發(fā)明實(shí)施例一的IOL測(cè)試驗(yàn)證方法流程圖;
圖2為本發(fā)明實(shí)施例一的FPGA中的IOL單元組成示意圖;
圖3為本發(fā)明實(shí)施例一的異或比對(duì)輸出組成示意圖;
圖4為本發(fā)明實(shí)施例二的IOL測(cè)試裝置模塊示意圖。
具體實(shí)施方式
下面通過具體實(shí)施方式結(jié)合附圖對(duì)本發(fā)明實(shí)施例作進(jìn)一步詳細(xì)說明。
實(shí)施例一:
本實(shí)施例提供一種IOL測(cè)試驗(yàn)證方法,請(qǐng)參見圖1,具體包括:
S101、將FPGA中的各個(gè)待驗(yàn)證的IOL單元串接,并建立與各級(jí)IOL單元對(duì)應(yīng)的比對(duì)鏈;
S102、將激勵(lì)輸入串接的IOL單元中的第一級(jí)IOL單元和比對(duì)鏈,激勵(lì)沿著串接的IOL單元進(jìn)行傳遞,其中,上一級(jí)的IOL單元的輸出作為下一級(jí)的IOL單元的輸入;
S103、將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì),根據(jù)比對(duì)結(jié)果判斷IOL單元功能和/或連接關(guān)系是否正常。
在數(shù)字集成電路的設(shè)計(jì)中,尺寸越來越小,芯片管腳越來越密集,需要一種簡單高效的方法來實(shí)現(xiàn)芯片的快速篩選,甄別正常的和連接故障的芯片,IOL內(nèi)嵌測(cè)試就是這樣一種高效的測(cè)試方法。
在本實(shí)施例中,請(qǐng)參考圖2,首先,需要將FPGA中的各個(gè)待驗(yàn)證的IOL單元串接起來,各個(gè)IOL單元分別命名為IOL_UNIT_1、IOL_UNIT_2……,TPG表示Test Pattern Generator,即測(cè)試模式發(fā)生器,用于生成激勵(lì);clk_in和rst_in分別表示時(shí)鐘信號(hào)的輸入和復(fù)位信號(hào)的輸入,是整個(gè)系統(tǒng)的輸入信號(hào)所在;激勵(lì)以IO的形式經(jīng)過各個(gè)IOL單元,且同時(shí)經(jīng)過與各個(gè)IOL單元對(duì)應(yīng)的比對(duì)鏈中的寄存器reg,最后,從Result_out輸出最終的結(jié)果。將上一級(jí)的輸出接口與下一級(jí)的輸入接口相連,讓經(jīng)過上一級(jí)IOL單元的信號(hào)輸入到下一級(jí)IOL單元中;各個(gè)待驗(yàn)證的IOL單元串接,輸入的信號(hào)從第一級(jí)的IOL單元經(jīng)過各級(jí)IOL單元后,從最后一級(jí)的IOL單元輸出。
在進(jìn)行驗(yàn)證時(shí),將激勵(lì)輸入串接的IOL單元的第一級(jí)IOL單元和比對(duì)鏈;激勵(lì)在每經(jīng)過一個(gè)IOL單元時(shí)形成一個(gè)相應(yīng)的響應(yīng),然后,這個(gè)響應(yīng)作為下一級(jí)IOL單元的輸出,直到最后到達(dá)最后一級(jí)IOL單元并輸出最終的響應(yīng)結(jié)果。
同樣的,輸入的激勵(lì)除了經(jīng)過各個(gè)IOL單元之外,還會(huì)經(jīng)過與各級(jí)IOL單元對(duì)應(yīng)的比對(duì)鏈,比對(duì)鏈由各個(gè)寄存器構(gòu)成。在經(jīng)過各個(gè)寄存器后,上一級(jí)寄存器所產(chǎn)生的響應(yīng)作為下一級(jí)寄存器的輸入,各級(jí)寄存器的時(shí)延與激勵(lì)經(jīng)過對(duì)應(yīng)的IOL單元的時(shí)延一致。
那么,在本實(shí)施例中,通過比對(duì)各個(gè)IOL單元的輸出與相應(yīng)的比對(duì)鏈的輸出,就可以知道當(dāng)前IOL單元是否正常,和/或當(dāng)前相關(guān)的單元之間的連接關(guān)系是否正常,包括引腳是否正常、相連的芯片是否故障等等。
在本實(shí)施例中,IOL單元可以配置為多種狀態(tài),包括:寄存器狀態(tài),GDDR狀態(tài)以及MDDR狀態(tài),在不同的狀態(tài)下,IOL自身的參數(shù)設(shè)置各不相同,各個(gè)狀態(tài)在同一時(shí)間只能存在一種。
其中,寄存器狀態(tài)可以包括:旁路、鎖存器、寄存器中的至少一種。配置IOL單元為寄存器狀態(tài),即將IOL單元配置為旁路、鎖存器、寄存器中的任意一種。在本實(shí)施例中,將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì)包括:當(dāng)IOL單元配置為旁路、鎖存器、寄存器中的至少一種時(shí),將各級(jí)IOL的輸出與相應(yīng)的比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出比對(duì)結(jié)果。進(jìn)行異或比對(duì),也可以叫做,通過異或門輸出,異或的特點(diǎn)是,若輸入相同,則輸出低電平,即0,若輸入不同,則輸出高電平,即1;由于將各級(jí)IOL與相應(yīng)的比較鏈的輸出進(jìn)行異或比對(duì),那么,當(dāng)異或比對(duì)的結(jié)果是0時(shí),說明二者相同,則進(jìn)一步可以確定IOL單元的狀態(tài)是正常的;當(dāng)異或比對(duì)的結(jié)果是1時(shí),則說明二者不同,有理由認(rèn)為IOL單元的狀態(tài)錯(cuò)誤,或者是管腳的連接錯(cuò)誤。
請(qǐng)參考圖3,圖3示出了經(jīng)過IOL單元后的輸出結(jié)果與經(jīng)過比對(duì)鏈的輸出結(jié)果經(jīng)過異或比對(duì)再通過或門輸出比對(duì)結(jié)果的示意圖。其中,XOR表示異或器,OR表示或門,Or_out表示或門的輸出。比對(duì)結(jié)果就是異或比對(duì)的結(jié)果,其中包括0或者1;在這之后,再通過或門輸出比對(duì)結(jié)果,則表示,多個(gè)比對(duì)結(jié)果再通過或門,輸出一個(gè)結(jié)果。其中,可以是連續(xù)迭代的通過或門輸出比對(duì)結(jié)果,比如,經(jīng)過第一級(jí)的IOL單元后的異或比對(duì)所產(chǎn)生的比對(duì)結(jié)果,與經(jīng)過第二級(jí)的IOL單元后的異或比對(duì)所產(chǎn)生的比對(duì)結(jié)果,這兩個(gè)比對(duì)結(jié)果經(jīng)過或門輸出,然后,輸出的結(jié)果再和經(jīng)過第三級(jí)的IOL單元的異或比對(duì)所產(chǎn)生的比對(duì)結(jié)果經(jīng)過或門輸出。這樣的方式,在每經(jīng)過一個(gè)IOL單元后,經(jīng)過或門輸出的比對(duì)結(jié)果,可以很好發(fā)現(xiàn)存在問題,并可以直接定位到問題所在。比如,若前三級(jí)的經(jīng)過或門輸出的比對(duì)結(jié)果是0,而經(jīng)過第四級(jí)之后,輸出的比對(duì)結(jié)果變成了1,那么,就可以認(rèn)為第四級(jí)的IOL單元出現(xiàn)了異常,可能是IOL單元本身出現(xiàn)了異常,也可能是相連的管腳出現(xiàn)了異常。
除此之外,還可以將各個(gè)IOL單元的輸出進(jìn)行異或比對(duì)之后,將所有的比對(duì)結(jié)果通過或門輸出。不論采取何種或門輸出的方式,輸出的結(jié)果都僅僅只有一個(gè)字節(jié),從而很大程度上節(jié)約了存儲(chǔ)的容量,保證了系統(tǒng)的正常運(yùn)行。
在本實(shí)施例中,將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì)還可以包括:
當(dāng)IOL單元配置為GDDR模式時(shí),將各級(jí)IOL輸出與相應(yīng)的比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出比對(duì)結(jié)果。此時(shí)產(chǎn)生的激勵(lì)會(huì)根據(jù)GDDR模式的端口變化發(fā)生相應(yīng)的改變,保證激勵(lì)的數(shù)量與端口數(shù)量一致。激勵(lì)要同時(shí)輸入到比對(duì)鏈中,比對(duì)鏈中的每個(gè)寄存器單元產(chǎn)生的時(shí)延要與單個(gè)IOL單元產(chǎn)生的時(shí)延一致,由于IOL單元的GDDR模式對(duì)激勵(lì)不產(chǎn)生變化,只產(chǎn)生時(shí)延,所以IOL的輸出與比對(duì)鏈對(duì)應(yīng)的寄存器單元的輸出進(jìn)行異或比對(duì),即在異或器中進(jìn)行比較,完全一致就可以確定IOL正常。然后,就可以將比對(duì)結(jié)果經(jīng)過或門輸出,此處的異或比對(duì)和或門輸出與上述的類似,這里不再贅述。
在本實(shí)施例中,將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì)還可以包括:
當(dāng)IOL單元配置為MDDR模式時(shí),將各級(jí)IOL輸出與相應(yīng)的比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出比對(duì)結(jié)果。此時(shí)產(chǎn)生的激勵(lì)會(huì)根據(jù)MDDR模式的端口變化發(fā)生相應(yīng)的改變,保證激勵(lì)的數(shù)量與端口數(shù)量一致。TPG的激勵(lì)同時(shí)要輸入到比較鏈中,比較鏈中的每個(gè)寄存器單元產(chǎn)生的時(shí)延要和單個(gè)IOL單元產(chǎn)生的時(shí)延一致,由于IOL單元的MDDR模式對(duì)激勵(lì)不產(chǎn)生變化,只產(chǎn)生時(shí)延,所以IOL單元的輸出與對(duì)應(yīng)比較鏈的寄存器的輸出在異或器中進(jìn)行比對(duì),完全一致就可以確定IOL單元正常。
由于IOL單元在處于各種模式下時(shí),其都不會(huì)對(duì)激勵(lì)產(chǎn)生變化,只產(chǎn)生延時(shí),那么,輸入的激勵(lì)的波形在最終也不會(huì)發(fā)生變化,只是其波形的位置發(fā)生的平移。
此外,在本實(shí)施例中,在根據(jù)比對(duì)結(jié)果判斷IOL單元功能和/或連接關(guān)系是否正常之前,還可以包括:將最后一級(jí)IOL單元的輸出結(jié)果與預(yù)設(shè)結(jié)果進(jìn)行比較,并根據(jù)比較結(jié)果以及比對(duì)結(jié)果判斷IOL單元功能和/或連接關(guān)系是否正常。在最終判斷IOL單元以及連接關(guān)系是否正常時(shí),除了參照前述的比對(duì)結(jié)果,即各級(jí)IOL單元之間先異或比對(duì)再通過或門輸出比對(duì)結(jié)果,還可以將最后一級(jí)IOL單元輸出的結(jié)果與預(yù)設(shè)結(jié)果進(jìn)行比較,其中預(yù)設(shè)結(jié)果是將激勵(lì)輸入到IOL單元所產(chǎn)生的理論上的最終結(jié)果,這樣可以增大驗(yàn)證本實(shí)施例中的IOL單元測(cè)試功能是否正常的可靠性。
在驗(yàn)證過程中,可以選擇IOL單元的寄存器特性或者GDDR特性或者M(jìn)DDR特性進(jìn)行測(cè)試,選擇不同特性可以通過下載不同的位流實(shí)現(xiàn),再通過激勵(lì)對(duì)時(shí)鐘和復(fù)位信號(hào)進(jìn)行驅(qū)動(dòng),或者使用信號(hào)源和晶振進(jìn)行驅(qū)動(dòng)。驅(qū)動(dòng)的時(shí)間要足夠覆蓋所有的IOL單元,即要從第一級(jí)IOL單元覆蓋到最后一級(jí)IOL單元,而應(yīng)盡量避免在激勵(lì)未傳遞到IOL鏈路最后一級(jí)時(shí)中止,這會(huì)在一定程度上影響驗(yàn)證的可靠性。針對(duì)這一問題,可以通過結(jié)束標(biāo)志位finish flag判斷解決,由于激勵(lì)的產(chǎn)生是通過TPG,而TPG是由計(jì)數(shù)器所構(gòu)成,所以預(yù)計(jì)出激勵(lì)從第一級(jí)IOL單元到最后一級(jí)IOL單元的時(shí)間,在TPG計(jì)數(shù)器到達(dá)這一時(shí)間點(diǎn)后自動(dòng)拉起finish flag為高,finish flag為高后,證明測(cè)試時(shí)間充分,保證所有IOL都完成測(cè)試,可以結(jié)束測(cè)試。也就是說,如果激勵(lì)從第一級(jí)IOL單元到最后一級(jí)IOL單元的設(shè)定時(shí)間是1000s,那么,設(shè)置結(jié)束時(shí)間為1100s為結(jié)束標(biāo)志位的時(shí)間,輸入激勵(lì)經(jīng)過了1100s時(shí),自動(dòng)拉起finish flag為高,證明已充分測(cè)試完成,測(cè)試結(jié)果可靠,可結(jié)束測(cè)試。
本實(shí)施例中的驗(yàn)證方法可以僅輸出1bit結(jié)果,檢測(cè)結(jié)果如果為1則說明FPGA內(nèi)部的IOL單元有工作不正常的情況,如果為0則說明FPGA內(nèi)部的IOL單元工作均正常。如果是用在篩選芯片功能上,1bit結(jié)果已足夠說明此芯片是否工作正常。如果要定位具體某一個(gè)IOL單元的問題,可以通過每個(gè)IOL單元上的PIN口觀察IOL單元傳遞的數(shù)據(jù)是否符合激勵(lì)的輸入,一次觀測(cè)就可以確定具體的某一個(gè)IOL單元出現(xiàn)問題。
本實(shí)施例提供了一種IOL測(cè)試驗(yàn)證方法,將FPGA中的各個(gè)待驗(yàn)證的IOL單元串接,并建立與各級(jí)IOL單元對(duì)應(yīng)的比對(duì)鏈;將激勵(lì)輸入串接的IOL單元中的第一級(jí)IOL單元和比對(duì)鏈,激勵(lì)沿著串接的IOL單元進(jìn)行傳遞,其中,上一級(jí)的IOL單元的輸出作為下一級(jí)的IOL單元的輸入,將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì),根據(jù)比對(duì)結(jié)果判斷IOL單元功能和/或連接關(guān)系是否正常。通過本發(fā)明的實(shí)施,通過IOL單元鏈與比對(duì)鏈之間的輸出的比對(duì),實(shí)現(xiàn)了對(duì)IOL功能正常與否以及各單元的引腳的連接關(guān)系正確是否的驗(yàn)證,保證了IOL測(cè)試的準(zhǔn)確性。
實(shí)施例二:
本實(shí)施例提供了一種IOL測(cè)試驗(yàn)證方法,請(qǐng)參見圖4,具體包括:
創(chuàng)建模塊401,用于將FPGA中的各個(gè)待驗(yàn)證的IOL單元串接,并建立與各級(jí)IOL單元對(duì)應(yīng)的比對(duì)鏈;
輸入模塊402,用于將激勵(lì)輸入串接的IOL單元中的第一級(jí)IOL單元和比對(duì)鏈,激勵(lì)沿著串接的IOL單元進(jìn)行傳遞,其中,上一級(jí)的IOL單元的輸出作為下一級(jí)的IOL單元的輸入;
比對(duì)模塊403,用于將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì),根據(jù)比對(duì)結(jié)果判斷IOL單元功能和/或連接關(guān)系是否正常。
在數(shù)字集成電路的設(shè)計(jì)中,尺寸越來越小,芯片管腳越來越密集,需要一種簡單高效的方法來實(shí)現(xiàn)芯片的快速篩選,甄別正常的和連接故障的芯片,IOL內(nèi)嵌測(cè)試就是這樣一種高效的測(cè)試方法。
在本實(shí)施例中,首先,需要將FPGA中的各個(gè)待驗(yàn)證的IOL單元串接起來,將上一級(jí)的輸出接口與下一級(jí)的輸入接口相連,讓經(jīng)過上一級(jí)IOL單元的信號(hào)輸入到下一級(jí)IOL單元中;各個(gè)待驗(yàn)證的IOL單元串接,輸入的信號(hào)從第一級(jí)的IOL單元經(jīng)過各級(jí)IOL單元后,從最后一級(jí)的IOL單元輸出。
在進(jìn)行驗(yàn)證時(shí),將激勵(lì)輸入串接的IOL單元的第一級(jí)IOL單元和比對(duì)鏈;激勵(lì)在每經(jīng)過一個(gè)IOL單元時(shí)形成一個(gè)相應(yīng)的響應(yīng),然后,這個(gè)響應(yīng)作為下一級(jí)IOL單元的輸出,直到最后到達(dá)最后一級(jí)IOL單元并輸出最終的響應(yīng)結(jié)果。
同樣的,輸入的激勵(lì)除了經(jīng)過各個(gè)IOL單元之外,還會(huì)經(jīng)過與各級(jí)IOL單元對(duì)應(yīng)的比對(duì)鏈,比對(duì)鏈由各個(gè)寄存器構(gòu)成。在經(jīng)過各個(gè)寄存器后,上一級(jí)寄存器所產(chǎn)生的響應(yīng)作為下一級(jí)寄存器的輸入,各級(jí)寄存器的時(shí)延與激勵(lì)經(jīng)過對(duì)應(yīng)的IOL單元的時(shí)延一致。
那么,在本實(shí)施例中,通過比對(duì)各個(gè)IOL單元的輸出與相應(yīng)的比對(duì)鏈的輸出,就可以知道當(dāng)前IOL單元是否正常,和/或當(dāng)前相關(guān)的單元之間的連接關(guān)系是否正常,包括引腳是否正常、相連的芯片是否故障等等。
在本實(shí)施例中,IOL單元可以配置為多種狀態(tài),包括:寄存器狀態(tài),GDDR狀態(tài)以及MDDR狀態(tài),在不同的狀態(tài)下,IOL自身的參數(shù)設(shè)置各不相同,各個(gè)狀態(tài)在同一時(shí)間只能存在一種。
其中,寄存器狀態(tài)可以包括:旁路、鎖存器、寄存器中的至少一種。配置IOL單元為寄存器狀態(tài),即將IOL單元配置為旁路、鎖存器、寄存器中的任意一種。在本實(shí)施例中,比對(duì)模塊403還可以用于:當(dāng)IOL單元配置為旁路、鎖存器、寄存器中的至少一種時(shí),將各級(jí)IOL的輸出與相應(yīng)的比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出比對(duì)結(jié)果。進(jìn)行異或比對(duì),也可以叫做,通過異或門輸出,異或的特點(diǎn)是,若輸入相同,則輸出低電平,即0,若輸入不同,則輸出高電平,即1;由于將各級(jí)IOL與相應(yīng)的比較鏈的輸出進(jìn)行異或比對(duì),那么,當(dāng)異或比對(duì)的結(jié)果是0時(shí),說明二者相同,則進(jìn)一步可以確定IOL單元的狀態(tài)是正常的;當(dāng)異或比對(duì)的結(jié)果是1時(shí),則說明二者不同,有理由認(rèn)為IOL單元的狀態(tài)錯(cuò)誤,或者是管腳的連接錯(cuò)誤。
比對(duì)結(jié)果就是異或比對(duì)的結(jié)果,其中包括0或者1;在這之后,再通過或門輸出比對(duì)結(jié)果,則表示,多個(gè)比對(duì)結(jié)果再通過或門,輸出一個(gè)結(jié)果。其中,可以是連續(xù)迭代的通過或門輸出比對(duì)結(jié)果,比如,經(jīng)過第一級(jí)的IOL單元后的異或比對(duì)所產(chǎn)生的比對(duì)結(jié)果,與經(jīng)過第二級(jí)的IOL單元后的異或比對(duì)所產(chǎn)生的比對(duì)結(jié)果,這兩個(gè)比對(duì)結(jié)果經(jīng)過或門輸出,然后,輸出的結(jié)果再和經(jīng)過第三級(jí)的IOL單元的異或比對(duì)所產(chǎn)生的比對(duì)結(jié)果經(jīng)過或門輸出。這樣的方式,在每經(jīng)過一個(gè)IOL單元后,經(jīng)過或門輸出的比對(duì)結(jié)果,可以很好發(fā)現(xiàn)存在問題,并可以直接定位到問題所在。比如,若前三級(jí)的經(jīng)過或門輸出的比對(duì)結(jié)果是0,而經(jīng)過第四級(jí)之后,輸出的比對(duì)結(jié)果變成了1,那么,就可以認(rèn)為第四級(jí)的IOL單元出現(xiàn)了異常,可能是IOL單元本身出現(xiàn)了異常,也可能是相連的管腳出現(xiàn)了異常。
除此之外,還可以將各個(gè)IOL單元的輸出進(jìn)行異或比對(duì)之后,將所有的比對(duì)結(jié)果通過或門輸出。不論采取何種或門輸出的方式,輸出的結(jié)果都僅僅只有一個(gè)字節(jié),從而很大程度上節(jié)約了存儲(chǔ)的容量,保證了系統(tǒng)的正常運(yùn)行。
在本實(shí)施例中,比對(duì)模塊403還可以用于:
當(dāng)IOL單元配置為GDDR模式時(shí),將各級(jí)IOL輸出與相應(yīng)的比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出比對(duì)結(jié)果。此時(shí)產(chǎn)生的激勵(lì)會(huì)根據(jù)GDDR模式的端口變化發(fā)生相應(yīng)的改變,保證激勵(lì)的數(shù)量與端口數(shù)量一致。激勵(lì)要同時(shí)輸入到比對(duì)鏈中,比對(duì)鏈中的每個(gè)寄存器單元產(chǎn)生的時(shí)延要與單個(gè)IOL單元產(chǎn)生的時(shí)延一致,由于IOL單元的GDDR模式對(duì)激勵(lì)不產(chǎn)生變化,只產(chǎn)生時(shí)延,所以IOL的輸出與比對(duì)鏈對(duì)應(yīng)的寄存器單元的輸出進(jìn)行異或比對(duì),即在異或器中進(jìn)行比較,完全一致就可以確定IOL正常。然后,就可以將比對(duì)結(jié)果經(jīng)過或門輸出,此處的異或比對(duì)和或門輸出與上述的類似,這里不再贅述。
在本實(shí)施例中,比對(duì)模塊403還可以用于:
當(dāng)IOL單元配置為MDDR模式時(shí),將各級(jí)IOL輸出與相應(yīng)的比較鏈的輸出進(jìn)行異或比對(duì),并通過或門輸出比對(duì)結(jié)果。此時(shí)產(chǎn)生的激勵(lì)會(huì)根據(jù)MDDR模式的端口變化發(fā)生相應(yīng)的改變,保證激勵(lì)的數(shù)量與端口數(shù)量一致。TPG的激勵(lì)同時(shí)要輸入到比較鏈中,比較鏈中的每個(gè)寄存器單元產(chǎn)生的時(shí)延要和單個(gè)IOL單元產(chǎn)生的時(shí)延一致,由于IOL單元的MDDR模式對(duì)激勵(lì)不產(chǎn)生變化,只產(chǎn)生時(shí)延,所以IOL單元的輸出與對(duì)應(yīng)比較鏈的寄存器的輸出在異或器中進(jìn)行比對(duì),完全一致就可以確定IOL單元正常。
由于IOL單元在處于各種模式下時(shí),其都不會(huì)對(duì)激勵(lì)產(chǎn)生變化,只產(chǎn)生延時(shí),那么,輸入的激勵(lì)的波形在最終也不會(huì)發(fā)生變化,只是其波形的位置發(fā)生的平移。
此外,在本實(shí)施例中,還可以包括比較模塊404,用于:將最后一級(jí)IOL單元的輸出結(jié)果與預(yù)設(shè)結(jié)果進(jìn)行比較,并根據(jù)比較結(jié)果以及比對(duì)結(jié)果判斷IOL單元功能和/或連接關(guān)系是否正常。在最終判斷IOL單元以及連接關(guān)系是否正常時(shí),除了參照前述的比對(duì)結(jié)果,即各級(jí)IOL單元之間先異或比對(duì)再通過或門輸出比對(duì)結(jié)果,還可以將最后一級(jí)IOL單元輸出的結(jié)果與預(yù)設(shè)結(jié)果進(jìn)行比較,其中預(yù)設(shè)結(jié)果是將激勵(lì)輸入到IOL單元所產(chǎn)生的理論上的最終結(jié)果,這樣可以增大驗(yàn)證本實(shí)施例中的IOL單元測(cè)試功能是否正常的可靠性。
在驗(yàn)證過程中,可以選擇IOL單元的寄存器特性或者GDDR特性或者M(jìn)DDR特性進(jìn)行測(cè)試,選擇不同特性可以通過下載不同的位流實(shí)現(xiàn),再通過激勵(lì)對(duì)時(shí)鐘和復(fù)位信號(hào)進(jìn)行驅(qū)動(dòng),或者使用信號(hào)源和晶振進(jìn)行驅(qū)動(dòng)。驅(qū)動(dòng)的時(shí)間要足夠覆蓋所有的IOL單元,即要從第一級(jí)IOL單元覆蓋到最后一級(jí)IOL單元,而應(yīng)盡量避免在激勵(lì)未傳遞到IOL鏈路最后一級(jí)時(shí)中止,這會(huì)在一定程度上影響驗(yàn)證的可靠性。針對(duì)這一問題,可以通過結(jié)束標(biāo)志位finish flag判斷解決,由于激勵(lì)的產(chǎn)生是通過TPG,而TPG是由計(jì)數(shù)器所構(gòu)成,所以預(yù)計(jì)出激勵(lì)從第一級(jí)IOL單元到最后一級(jí)IOL單元的時(shí)間,在TPG計(jì)數(shù)器到達(dá)這一時(shí)間點(diǎn)后自動(dòng)拉起finish flag為高,finish flag為高后,證明測(cè)試時(shí)間充分,保證所有IOL都完成測(cè)試,可以結(jié)束測(cè)試。也就是說,如果激勵(lì)從第一級(jí)IOL單元到最后一級(jí)IOL單元的設(shè)定時(shí)間是1000s,那么,設(shè)置結(jié)束時(shí)間為1100s為結(jié)束標(biāo)志位的時(shí)間,輸入激勵(lì)經(jīng)過了1100s時(shí),自動(dòng)拉起finish flag為高,證明已充分測(cè)試完成,測(cè)試結(jié)果可靠,可結(jié)束測(cè)試。
本實(shí)施例中的驗(yàn)證方法可以僅輸出1bit結(jié)果,檢測(cè)結(jié)果如果為1則說明FPGA內(nèi)部的IOL單元有工作不正常的情況,如果為0則說明FPGA內(nèi)部的IOL單元工作均正常。如果是用在篩選芯片功能上,1bit結(jié)果已足夠說明此芯片是否工作正常。如果要定位具體某一個(gè)IOL單元的問題,可以通過每個(gè)IOL單元上的PIN口觀察IOL單元傳遞的數(shù)據(jù)是否符合激勵(lì)的輸入,一次觀測(cè)就可以確定具體的某一個(gè)IOL單元出現(xiàn)問題。
本實(shí)施例提供了一種IOL測(cè)試驗(yàn)證裝置,將FPGA中的各個(gè)待驗(yàn)證的IOL單元串接,并建立與各級(jí)IOL單元對(duì)應(yīng)的比對(duì)鏈;將激勵(lì)輸入串接的IOL單元中的第一級(jí)IOL單元和比對(duì)鏈,激勵(lì)沿著串接的IOL單元進(jìn)行傳遞,其中,上一級(jí)的IOL單元的輸出作為下一級(jí)的IOL單元的輸入,將各級(jí)IOL單元的輸出與對(duì)應(yīng)的比對(duì)鏈的輸出進(jìn)行比對(duì),根據(jù)比對(duì)結(jié)果判斷IOL單元功能和/或連接關(guān)系是否正常。通過本發(fā)明的實(shí)施,通過IOL單元鏈與比對(duì)鏈之間的輸出的比對(duì),實(shí)現(xiàn)了對(duì)IOL功能正常與否以及各單元的引腳的連接關(guān)系正確是否的驗(yàn)證,保證了IOL測(cè)試的準(zhǔn)確性。
顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述本發(fā)明實(shí)施例的各模塊或各步驟可以用通用的計(jì)算裝置來實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來實(shí)現(xiàn),從而,可以將它們存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)介質(zhì)(ROM/RAM、磁碟、光盤)中由計(jì)算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來實(shí)現(xiàn)。所以,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
以上內(nèi)容是結(jié)合具體的實(shí)施方式對(duì)本發(fā)明實(shí)施例所作的進(jìn)一步詳細(xì)說明,不能認(rèn)定本發(fā)明的具體實(shí)施只局限于這些說明。對(duì)于本發(fā)明所屬技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干簡單推演或替換,都應(yīng)當(dāng)視為屬于本發(fā)明的保護(hù)范圍。