具有增大的故障覆蓋率的集成電路的制作方法
【技術領域】
[0001]本發明一般地涉及電子設計自動化(EDA)工具,并且更特別地,涉及用于增大集成電路的故障覆蓋率的EDA工具。
【背景技術】
[0002]集成電路(IC)通常包含各種模擬及數字構件。這樣的IC可能具有在制造過程中由塵埃粒子污染導致的制造缺陷,這些制造缺陷能夠導致IC出故障。因而,為檢測這樣的制造缺陷而測試IC是非常重要的。可測性設計(DFT)技術給IC添加了可測試特性,用于檢查并識別制造缺陷。DFT使自動測試設備(ATE)能夠在IC上執行各種故障測試。ATE使用由例如自動測試模式生成器(ATPG)、偽隨機模式生成器(PRPG)等測試模式生成器生成的測試模式(test patterns),來檢測在IC中的故障。經受這樣的故障測試的IC被稱為被測電路(CUT)。
[0003]DFT允許使用自動化來檢測CUT的設計故障,并因此減少故障測試的開發和執行所需的時間和成本。DFT技術應當提供對于CUT的全部設計故障的覆蓋率。DFT技術包括各種故障模型,例如,轉換、路徑延遲和固定型故障模型。轉換故障模型被用來檢測在具體時段內通過CUT傳播的在CUT的特定元件處的狀態轉換故障。路徑延遲故障模型計算出在⑶T內的路徑上的每個元件的延遲之和,并且通過將該路徑延遲之和與臨界路徑的延遲比較來檢測故障。固定型故障模型,例如,固定于“O”及固定于“I”的故障模型,被用來檢測會導致CUT的邏輯被固定于特定的邏輯狀態(即,邏輯O或邏輯I)的在CUT的各個元件之間的故障連接。基于測試模式的來源,DFT技術被劃分為掃描測試或內建自測試(BIST)。
[0004]一般地,掃描測試被用于檢測設計故障。CUT在受到掃描測試時按照兩種模式操作——測試模式(也稱為移位操作)和功能模式(也稱為捕獲操作)。在掃描測試開始時,CUT被設置為處于測試模式。在測試模式中,CUT被劃分成多個片上邏輯模塊。每個片上邏輯模塊被進一步分到掃描鏈或路徑之內。邏輯模塊的數字邏輯元件(例如,觸發器、鎖存器和數據寄存器)被連接在一起以形成掃描鏈或路徑。ATE將由ATPG生成的第一測試模式串行掃描到掃描路徑的數字邏輯元件之內。CUT然后切換到功能模式達CUT的時鐘信號的一個時鐘周期,在該功能模式中CUT的主輸出被觀察到,并且CUT的主輸入根據CUT的設計的功能要求而設定。CUT然后切換回到測試模式,并且掃描路徑的輸出在每個時鐘周期內被觀察到。然后,當前一測試模式向外移位到多個輸入簽名讀出器(MISR)用于分析時,ATE將第二測試模式裝載到掃描路徑之內。該過程被重復,直到滿足CUT的所要求的故障覆蓋率。ATPG使用CUT的網表的門級表示來生成測試模式,并且因此測試模式是確定性的。但是,ATPG不具有足夠的存儲容量來存儲覆蓋全部轉換、路徑延遲和固定型故障模型的整個測試集。
[0005]BIST是為啟用在⑶T內的邏輯自檢查而提供的自測試機制。例如,BIST過程通常集成于符合其中安全特性的測試是至關重要的汽車電子器件的ISO 26262標準內。BIST類似于掃描測試,但使用PRPG (例如,線性反饋移位寄存器(LFSR))來代替ATPG,用于生成偽隨機測試模式。由于BIST不需要任何附加設備,例如,用于故障測試的ATPG,因而BIST能夠在現場執行(即,在IC組裝廠之外)。BIST比掃描測試方法需要更少的時間來執行故障測試方法,并且因此降低了制造成本。但是,在BIST期間施加于CUT的偽隨機測試模式不提供組構的故障覆蓋率,并且通常會遺漏,難以檢測到故障。要克服上述缺點,IC需包含觀察及控制測試點。觀察測試點是用來檢測故障的邏輯元件的輸出,而控制測試點是用來控制輸入的邏輯元件的輸入。
[0006]EDA工具在IC的設計階段中使用,例如,用于IC的各種電路構件的布局/層面規劃以及故障覆蓋率要求。圖1A示出了正被使用觀察及控制測試點進行結構測試的一種常規IC 100的示意性框圖。IC 100包含與IC 100的第一邏輯元件集(未示出)的輸出對應的第一觀察測試點集(A、B、C、D、E、F、G和H),第一、第二及第三XOR門102、104和106,以及第一掃描觸發器108。第一 XOR門102的第一、第二、第三及第四輸入端子分別連接至觀察測試點A、B、C和D。第一 XOR門102的輸出端子輸出第一測試信號。第二 XOR門104的第一、第二、第三及第四輸入端子分別連接至觀察測試點E、F、G和H。第二 XOR門104的輸出端子輸出第二測試信號。第三XOR門106具有與用于接收第一測試信號的第一 XOR門102的輸出端子連接的第一輸入端子,與用于接收第二測試信號的第二 XOR門104的輸出端子連接的第二輸入端子,以及用于輸出觀察測試信號的輸出端子。第一掃描觸發器108連接于IC 100的掃描鏈的第三XOR門106與第二掃描觸發器(未示出)之間。第一掃描觸發器108具有與用于接收觀察測試信號的第三XOR門106的輸出端子連接的數據輸入端子,用于接收測試模式集的掃描輸入端子,用于接收掃描使能信號的掃描使能輸入端子,以及用于接收時鐘信號的時鐘輸入端子。在一個實例中,當IC 100正受到使用ATE進行的測試時,測試模式集能夠由ATPG(未示出)或PRPG(未示出)生成。在另一個實例中,當BIST被調用時,測試模式集由IC 100在內部生成。第一掃描觸發器108的輸出端子連接至第二掃描觸發器,用于基于掃描使能信號的邏輯狀態而輸出觀察測試信號和測試模式集中的至少一個。
[0007]在操作中,當掃描使能信號為高時,即,在IC 100的移位操作期間,測試模式集在第一掃描觸發器108的輸出端子處輸出。當掃描使能信號為低時,即,在IC 100的捕獲操作期間,觀察測試信號在第一掃描觸發器108的輸出端子處輸出。因此,IC 100的所需故障覆蓋率得以滿足。但是,IC 100包含多個觀察測試點集,并且對于每個觀察測試點集,附加的掃描觸發器被插入掃描路徑內。因此,掃描路徑的長度增大,這會增加為測試IC 100所需的面積開銷和時間。
[0008]圖1B示出了作為能夠使用觀察及控制測試點來測試的IC的另一種常規IC 110。圖1A的第一掃描觸發器108被替換為第四XOR門112和AND門112。IC 110還包含第三掃描觸發器116,該第三掃描觸發器116是掃描路徑的預先存在的掃描觸發器。AND門114具有與用于接收觀察測試信號的第三XOR門106的輸出端子連接的第一輸入端子,用于接收觀察測試點使能信號的第二輸入端子,以及用于輸出觀察測試信號的輸出端子。第四XOR門112具有與AND門114的輸出端子連接的用于接收觀察測試信號的第一輸入端子以及用于接收來自IC 110的功能路徑的數據輸入信號的第二輸入端子。第三掃描觸發器116的數據輸入端子連接至第四XOR門112的輸出端子,用于基于觀察測試點使能及觀察測試信號的邏輯狀態來接收觀察測試信號和數據輸入信號之一。第三掃描觸發器116的掃描輸入端子接收測試模式集。第三掃描觸發器116的掃描使能輸入端子接收掃描使能信號,并且其時鐘輸入端子接收時鐘信號。
[0009]在操作中,觀察測試點使能信號在測試期間為高。當掃描使能信號為高時,即,在移位操作期間,測試模式集在第三掃描觸發器116的輸出端子處輸出。當掃描使能信號在捕獲操作期間為低時,觀察測試信號和數據輸入信號之一在第三掃描觸發器116的輸出端子處輸出。觀察測試信號的邏輯狀態指示出IC 110是有故障還是沒有故障。因而,第三掃描觸發器116的輸出指示IC 110是否有故障,并且因此使得能夠進行故障檢測。由于整個觀察測試點集均由測試技術所覆蓋,因而IC 100的所需要的故障覆蓋率得以滿足。由于第三掃描觸發器116是掃描路徑的現有掃描觸發器,因而不需要與第一觀察測試點集對應的附加的掃描觸發器。但是,第四XOR門112在功能操作模式期間添加了 IC 100的功能時序的延遲。
[0010]因此,擁有具有增大的故障覆蓋率的IC設計以及能夠修改IC設計以生成具有提高的故障覆蓋率但沒有增大的面積或功能時序的IC設計的EDA工具將是有利的。
【附圖說明】
[0011]下面關于本發明的優選實施例的詳細描述在結合附圖來閱讀時將會更好理解。本發明通過舉例來說明,但是并不受附圖所限制,在附圖中相同的附圖標記指示相似的元件。
[0012]圖1A和IB是正受到結構測試的常規集成電路的示意性框圖;
[0013]圖2是根據本發明的一種實施例的用于增大集成電路設計的故障覆蓋率的電子設計自動化(EDA)工具的示意性框圖;
[0014]圖3是根據本發明的一種實施例的一個示例性集成電路設計的示意性框圖;
[0015]圖4是根據本發明的一種實施例的另一個示例性集成電路設計的示意性框圖;以及
[0016]圖5是根據本發明的一種實施例的一個可測試的集成電路的示意性框圖。
【具體實施方式】
[0017]關于附圖的詳細描述意指作為關于本發明的當前優選實施例的描述,但并非旨在表示本發明可以實施的唯一形式。應當理解,相同的或等效的功能可以通過意指包含于本發明的精神和范圍之內的不同實施例來實現。如同本文所使用的,術語多路復用器已經縮寫為復用器(mux)。
[0018]在本發明的一種實施例中,提供了用于增大集成電路設計的故障覆蓋率的一種電子設計自動化(EDA)工具。該集成電路設計包含與集成電路設計的多個邏輯元件的輸出對應的多個觀察測試點。EDA工具包含用于存儲集成電路設計的存儲器以及與存儲器通信的處理器。處理器包含用于識別與該