一種模塊級邊界掃描鏈的生成方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及芯片設(shè)計(jì)技術(shù)領(lǐng)域,更具體地說,涉及一種模塊級邊界掃描鏈的生成方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著現(xiàn)代集成電路技術(shù)的快速發(fā)展,芯片的設(shè)計(jì)和制造規(guī)模不斷提高。芯片的層次化設(shè)計(jì)方法成為超大規(guī)模集成電路設(shè)計(jì)的必然選擇。它帶來設(shè)計(jì)周期縮短、設(shè)計(jì)成本降低的同時,也給芯片的測試帶來一定的困難。
[0003]因此,如何在保證模塊間邏輯測試覆蓋率的同時產(chǎn)生優(yōu)化的邊界掃描鏈?zhǔn)乾F(xiàn)在需要解決的問題。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提供一種模塊級邊界掃描鏈的生成方法及系統(tǒng),以保證模塊間邏輯測試覆蓋率的同時產(chǎn)生優(yōu)化的邊界掃描鏈。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供了如下技術(shù)方案:
[0006]—種模塊級邊界掃描鏈的生成方法,包括:
[0007]分析初始網(wǎng)表的邊界邏輯,提取所述初始網(wǎng)表的每個端口的邊界邏輯信息,生成邊界邏輯報告;
[0008]根據(jù)所述邊界邏輯報告,設(shè)置測試配置模板生成測試配置文件;
[0009]根據(jù)所述測試配置文件,在所述初始網(wǎng)表的端口插入邊界測試邏輯,并同時對邊界寄存器進(jìn)彳丁標(biāo)定;
[0010]根據(jù)所述邊界寄存器的標(biāo)定信息,產(chǎn)生相應(yīng)的輸入端口掃描鏈和輸出端口掃描鏈,生成修改后的最終網(wǎng)表。
[0011]優(yōu)選的,根據(jù)所述測試配置文件,在所述初始網(wǎng)表的端口插入邊界測試邏輯,并同時對邊界寄存器進(jìn)行標(biāo)定之后,包括:
[0012]生成插入測試邏輯報告。
[0013]優(yōu)選的,根據(jù)所述邊界寄存器的標(biāo)定信息,產(chǎn)生相應(yīng)的輸入端口掃描鏈和輸出端口掃描鏈,生成修改后的最終網(wǎng)表之后,包括:
[0014]生成邊界掃描鏈報告。
[0015]優(yōu)選的,所述邊界邏輯報告包括所述初始網(wǎng)表每個端口的端口類型、扇入寄存器數(shù)、扇出寄存器數(shù)和最大組合邏輯深度。
[0016]優(yōu)選的,根據(jù)所述邊界邏輯報告,設(shè)置測試配置模板生成測試配置文件,包括:
[0017]分析所述邊界邏輯報告,并根據(jù)所述邊界邏輯報告設(shè)置所述測試配置模板的選項(xiàng),生成測試配置文件。
[0018]—種模塊級邊界掃描鏈的生成系統(tǒng),包括:
[0019]邊界邏輯分析單元,用于分析初始網(wǎng)表的邊界邏輯,提取所述初始網(wǎng)表的每個端口的邊界邏輯信息,生成邊界邏輯報告,并根據(jù)所述邊界邏輯報告,設(shè)置測試配置模板生成測試配置文件;
[0020]邊界測試邏輯插入單元,用于根據(jù)所述測試配置文件,在所述初始網(wǎng)表的端口插入邊界測試邏輯,并同時對邊界寄存器進(jìn)行標(biāo)定;
[0021]邊界掃描鏈生成單元,用于根據(jù)所述邊界寄存器的標(biāo)定信息,產(chǎn)生相應(yīng)的輸入端口掃描鏈和輸出端口掃描鏈,生成修改后的最終網(wǎng)表。
[0022]優(yōu)選的,所述邊界測試邏輯插入單元還用于:生成插入測試邏輯報告。
[0023]優(yōu)選的,所述邊界掃描鏈生成單元還用于:生成邊界掃描鏈報告。
[0024]優(yōu)選的,所述邊界邏輯報告包括所述初始網(wǎng)表每個端口的端口類型、扇入寄存器數(shù)、扇出寄存器數(shù)和最大組合邏輯深度。
[0025]優(yōu)選的,所述邊界邏輯分析單元具體用于:
[0026]分析所述邊界邏輯報告,并根據(jù)所述邊界邏輯報告設(shè)置所述測試配置模板的選項(xiàng),生成測試配置文件。
[0027]通過以上方案可知,本發(fā)明實(shí)施例提供的一種模塊級邊界掃描鏈的生成方法及系統(tǒng),包括分析初始網(wǎng)表的邊界邏輯,提取初始網(wǎng)表的每個端口的邊界邏輯信息,生成邊界邏輯報告;根據(jù)邊界邏輯報告設(shè)置測試配置模板生成測試配置文件;根據(jù)測試配置文件在初始網(wǎng)表的端口插入邊界測試邏輯,并同時對邊界寄存器進(jìn)行標(biāo)定;根據(jù)邊界寄存器的標(biāo)定信息,產(chǎn)生相應(yīng)的輸入端口掃描鏈和輸出端口掃描鏈,生成修改后的最終網(wǎng)表,可見在模塊級可測性設(shè)計(jì)時產(chǎn)生優(yōu)化的邊界掃描鏈,該邊界掃描鏈在模塊內(nèi)部邏輯測試時作為輸入端口加載測試向量和輸出端口采集測試生成數(shù)據(jù),在模塊外部邏輯測試時作為模塊的包裝,屏蔽模塊內(nèi)部邏輯,僅提供少數(shù)邊界邏輯供模塊外部測試,提高各模塊之間及子模塊與頂層之間的邏輯測試覆蓋率。
【附圖說明】
[0028]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0029]圖1為本發(fā)明實(shí)施例公開的一種模塊級邊界掃描鏈的生成方法流程示意圖;
[0030]圖2為本發(fā)明實(shí)施例公開的一種邊界邏輯示意圖;
[0031]圖3為本發(fā)明實(shí)施例公開的另一種邊界邏輯示意圖;
[0032]圖4為本發(fā)明實(shí)施例公開的一種模塊級邊界掃描鏈的生成系統(tǒng)結(jié)構(gòu)示意圖;
[0033]圖5為本發(fā)明實(shí)施例公開的另一種模塊級邊界掃描鏈的生成系統(tǒng)結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0034]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0035]本發(fā)明實(shí)施例公開了一種模塊級邊界掃描鏈的生成方法及系統(tǒng),以保證模塊間邏輯測試覆蓋率的同時產(chǎn)生優(yōu)化的邊界掃描鏈。
[0036]參見圖1,本發(fā)明實(shí)施例提供的一種模塊級邊界掃描鏈的生成方法,包括:
[0037]S101、分析初始網(wǎng)表的邊界邏輯,提取所述初始網(wǎng)表的每個端口的邊界邏輯信息,生成邊界邏輯報告;
[0038]參見圖2和圖3,為本實(shí)施例提供的邊界邏輯示意圖,它反映了一個模塊的輸入端口邊界邏輯的兩種結(jié)構(gòu)形式。通常在無模塊級邊界掃描鏈的情況下,模塊輸入端口到寄存器輸入端之間的組合邏輯很難被測試到。圖中組合邏輯A和B的部分邏輯即為模塊邊界邏輯。對于組合邏輯門bl和b2而言,其數(shù)據(jù)通路是通過寄存器a2的輸出端口經(jīng)bl和b2,與模塊輸入端口 An的信號匯合后輸入組合邏輯A。該數(shù)據(jù)通路的測試受模塊輸入端口 An的影響,也不容易測試到,但組合邏輯門bl和b2不能簡單地歸于邊界邏輯范圍。它是模塊內(nèi)部寄存器a2向邊界邏輯反饋的數(shù)據(jù)通路,在測試時應(yīng)綜合考慮。
[0039]其中,所述邊界邏輯報告包括所述初始網(wǎng)表每個端口的端口類型、扇入寄存器數(shù)、扇出寄存器數(shù)和最大組合邏輯深度。
[0040]具體的,參見圖2,在本實(shí)施例中端口 A1至An為輸入類型,其每一輸入端口至寄存器al的數(shù)據(jù)通路中組合路徑的級數(shù),端口的扇出寄存器個數(shù)為1 (即寄存器al),端口 An的內(nèi)部反饋寄存器數(shù)為1 (即寄存器a2),參見圖3,端口 B到寄存器cl至cn的數(shù)據(jù)通路中最長的組合邏輯級數(shù)、端口的扇出寄存器個數(shù)為η (即寄存器cl至cn)、端口的內(nèi)部反饋寄存器數(shù)為m(即寄存器dl至dm)等信息會被分析提取出來并輸出至邊界邏輯報告中。
[0041]S102、根據(jù)所述邊界邏輯報告,設(shè)置測試配置模板生成測試配置文件;
[0042]其中,根據(jù)所述邊界邏輯報告,設(shè)置測試配置模板生成測試配置文件,包括:
[0043]分析所述邊界邏輯報告,并根據(jù)所述邊界邏輯報告設(shè)置所述測試配置模板的選項(xiàng),生成測試配置文件。
[0044]具體的,在本實(shí)施例中的測試配置文件為指導(dǎo)S103和S104中完成相應(yīng)功能的控制文檔,其中包括:測試端口的選擇、測試方式的選擇等控制信息。并且在本實(shí)施例中,測試配置文件可以為可測性設(shè)計(jì)工程師分析邊界邏輯報告生成測試配置文件,也可以為邊界邏輯分析單元根據(jù)預(yù)定的分析規(guī)則,自動分析邊界邏輯報告,生成的測試配置文件,在這里并不做限定。
[0045]S103、根據(jù)所述測試配置文件,在所述初始網(wǎng)表的端口插入邊界測試邏輯,并同時對邊界寄存器進(jìn)行標(biāo)定;
[0046]其中,根據(jù)所述測試配置文件,在所述初始網(wǎng)表的端口插入邊界測試邏輯,并同時對邊界寄存器進(jìn)行標(biāo)定之后,包括:
[0047]生成插入測試邏輯報告。
[0048]具體的,在本實(shí)施例中,根據(jù)測試配置文件選擇合適的測試邏輯結(jié)構(gòu)和插入點(diǎn),對初始網(wǎng)表的每一個端口完成邊界測試邏輯插入,同時對邊界寄存器進(jìn)行標(biāo)定。這里的插入測試邏輯報告可以為記錄S103的執(zhí)行結(jié)果,包括測試邏輯的插入信息以及邊界寄存器的標(biāo)定信息,以供可測性設(shè)計(jì)工程師檢查。
[0049]S104、根據(jù)所述邊界寄存器的標(biāo)定信息,產(chǎn)生相應(yīng)的輸入端口掃描鏈和輸出端口掃描鏈,生成修改后的最終網(wǎng)表。
[0050]具體的,在本實(shí)施例中的邊界掃描鏈包括輸入端口掃描鏈和輸出端口掃描鏈,并將輸入端口掃描鏈和輸入端口掃描鏈連接至初始網(wǎng)表,完成對網(wǎng)表的修改。
[0051]其中,根據(jù)所述邊界寄存器的標(biāo)定信息,產(chǎn)生相應(yīng)的輸入端口掃描鏈和輸出端口掃描鏈,生成修改后的最終網(wǎng)表之后,包括:
[0052]生成邊界掃描鏈報告。
[0053]具體的,在本實(shí)施例中的S103中,需要根據(jù)測試配置文件在初始網(wǎng)表的端口插入邊界測試邏輯,并同時對邊界寄存器進(jìn)行標(biāo)定可以具體理解為,根據(jù)測試配置文件決定是否要在邊界邏輯中插入測試控制點(diǎn)和觀測點(diǎn)、在邊界邏輯的哪些位置插入、哪些寄存器要標(biāo)識為邊界寄存器等。這一部分功能尤其是目前DFT EDA工具處理得不是很好的地方。由于常規(guī)的DFT EDA工具沒有足夠的信息識別哪些端口、哪些數(shù)據(jù)通路、哪些邊界邏輯位置適合(或不適合)插入測試邏輯,同時又沒有好的設(shè)計(jì)人員干預(yù)的手段,因此產(chǎn)生的結(jié)果往往不理想。例如,EDA工具不可能知曉邊界邏輯中那些數(shù)據(jù)通路是關(guān)鍵路徑,不適合插入測試邏輯。對于端口的模塊外部邏輯量也無從知曉,因此有些EDA工具往往只能根據(jù)籠統(tǒng)的內(nèi)部規(guī)則優(yōu)先選擇隔離邊界邏輯的內(nèi)部反饋數(shù)據(jù)通路,并在反饋通路上插入測試邏輯。
[0054]例如參見圖2,一些EDA工具會在節(jié)點(diǎn)a插入測試