TW514931B - Apparatus and method for performing conditional calculations - Google Patents

Apparatus and method for performing conditional calculations Download PDF

Info

Publication number
TW514931B
TW514931B TW090116265A TW90116265A TW514931B TW 514931 B TW514931 B TW 514931B TW 090116265 A TW090116265 A TW 090116265A TW 90116265 A TW90116265 A TW 90116265A TW 514931 B TW514931 B TW 514931B
Authority
TW
Taiwan
Prior art keywords
instruction
selector
value
test
flag
Prior art date
Application number
TW090116265A
Other languages
English (en)
Inventor
Alan S Krech Jr
Stephen D Jordan
John M Freeseman
Samuel U Wong
La Puente Edmundo De
Original Assignee
Agilent Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agilent Technologies Inc filed Critical Agilent Technologies Inc
Application granted granted Critical
Publication of TW514931B publication Critical patent/TW514931B/zh

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31919Storing and outputting test patterns
    • G01R31/31921Storing and outputting test patterns using compression techniques, e.g. patterns sequencer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3005Arrangements for executing specific machine instructions to perform operations for flow control
    • G06F9/30054Unconditional branch instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3005Arrangements for executing specific machine instructions to perform operations for flow control
    • G06F9/30061Multi-way branch instructions, e.g. CASE
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30094Condition code generation, e.g. Carry, Zero flag
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Advance Control (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Complex Calculations (AREA)

Description

五、發明說明(1) 本發明之背景 彼等電子裝置與能力,在日常生活中,已成長至極 為、曰通。隨著個人電腦之進入家庭,許多個人基於各種多 樣之目地,而擁有多於一個生產性之工具。大部份個人生 產性電子裝置,包括某種形式之非揮發性記憶體。一些行 動電活’可利用非揮發性記憶體,藉以在其電源被關閉時, 儲存及保留使用者規劃好之電話號碼與組態。一些 PCMCIA卡,可利用非揮發性記憶體,藉以甚至在此卡自 其電腦中之插槽退出時,能儲存及保留資訊。許多其他常 見之電子裝置,亦獲益於一些無電力組體中之非揮發性記 憶體的長期儲存能力。 • 一些對電子設備製造廠商做銷售之非揮發性記憶體 製造廠商,將需要一些測試器,來運用及檢驗彼等生產之 記憶體的正常運作。由於彼等所製造及一貫性低價格下所 銷售之非揮發性記憶體的量所致,使測試一單一零件所花 費之時間能化為極小,將是極為重要的。彼等非揮發性記 憶體之購買廠商,基於以最少或無測試使該等記憶裝置能 合併進一些較昂貴之組體内的作業所關聯之成本節省的理 由,將會要求彼等記憶體製造廠商,能提供高出貨率。因 此,其記憶體測試之程序,必須要能充份有效率地驗出大 百分比不一致性之零件,以及最好是單一測試程序中所有 不一致性之零件。 由於非揮發性記憶體,變得較大、密度較高、及更 複雜所致,肖等測試器必須要能處理其增力口之尺寸和複雜 五、發明說明(2) 2而不會顯著增加其測試所花f之時間。隨著記憶體之 ’支及改良’該測試器必須要能輕易容納該等對裝置所做 之改變。測試非揮發性記憶體特有之另_議題是,重複寫 至該等記憶體之晶格,將會使該零件之總生命期效能退 彼等非揮發性δ己憶體製造廠商,對許多測試議題做出 ,反應是,在該等記憶裝置内,建立特定之測試模態。此 等測試模態,係全然不被該記憶體之購買廠商所使用,但 了被其‘造廠商存取,藉以在盡量少之時間内,以及盡量 有效率地,測試該等記憶體之全部或重要之零件。某些非 揮發性記憶體,亦有能力在其測試程序期間被修復。所以, 該測試器應要能夠驗明:一修復之需要;一修復之位置; 需要修復之類型;以及接著必須要能執行其適當之修復。 此一修復程序需要一種有能力偵測及分離出該記憶體之一 特定不一致性零件的測試器。為完全利用到該等特定測試 模態加上修復功能,一測試器有能力執行一可支援一依據 該裝置所預期之嚮應做條件分支的測試程式,將會是有利 的。 就一概念上之透視而言,上述測試記憶體之程序, 係一演算法程序。就一範例而言,彼等典型之測試包括, 連續地增加或漸減記憶體位址,同時將0和1寫進該等記恨 體晶格内。習慣上稱一記憶體周期期間正寫入或讀取之成 組1和0為一π向量π,而術語π樣式η則係論及一向量序列。 彼等測試能包括一些類似棋盤、行進1、和蝶形樣式等寫 進記憶體之樣式,將會很便利。一測試開發器借助於演算 及有效地產生-可建立此等樣式之程 輯=出彼等不能執行如所預期之零件樣式。一使用 之;:内一再重複之指令和命令以演算法所產生 之収樣式’將耗費較少之測試器記憶體空間。因此,在 β己憶體測試㈣’具有演算職樣式產生之能力,將會是 有利的。 月確之仏號知緣配置與偵測’亦係一非揮發性測試 器之有政n的考慮事項。為捕獲彼等通常在—巾間部處能 一致而在彼料定邊界致之零件…非揮發性記憶 體測試器,必須要能使每一信號端緣在時間上相對於另一 信號端緣做精確配置。一信號端緣在何者時間點被接收, 亦很重要要能被精確地測量。因此,一非揮發性記憶體測 試器’應具有足夠之伸縮性及對刺激與來自測試下裝置(記 憶體)之反應的時序與配置之控制力。 彼等記憶體測試器,係假定要產生一些施加至DUT之 傳送向量(刺激),以及要接收彼等預期要傳回之向量(嚮 應)。上述產生此等向量之演算邏輯,通常可做此等動作, 而不必費神於一向量中之特定位元如何來回於該DUT内之 一特定信號接片。在此層次下,其幾乎像是該向量中之鄰 接位元,最終必然會在該DUT上面成為實體上之鄰接信 號。人生理應要如此寬厚。 在現實中,一在,,概念層次"下之向量中的位元,與DUT 中之實際信號間的相應關係,係傾向於相當反覆無常。若 五、發明說明(4) 無動作來防止它,當彼等為與黯形成接觸而自一周緣降 下時,或將必需橫越過一或多之探測接線。此類橫越多半 是不利的,以及慣例上係在傳送向量之路徑中合併一映射 機構,以便在傳送向量施加至011丁之前,重新安排其中之 位元位置,藉以使實質接觸之任務,不致因橫越而有負擔。 彼等接收向量在被考慮之前,係施加至對應之相反映射機 構。在此一方式下,該等演算向量產生與比較機構,可被 允許忽視此-整個議題。就此類映射器與反向映射器可做 何事之3範例而言,考慮當一不同實例之相同類型加丁 在同I圓晶片上面佈線,但具有某種旋轉或某種鏡像對稱 性,糟以避免浪費該圓晶片上面之空間的情況。此等作業 亦具有向里位π位置與實質信號定位間之相應關係上的某 種效果,但其會因該等適當之映射與反相映射而被隱藏。 理應瞭解的是’此等情況所需之映射與反相映射,一旦被 一特定DUT識別,便係屬靜態的,以及就該特定DUT而言, 在測试過程中將不需要做改變。 彼等條件式計算能力,可顯著地增強一演算樣式之 產生。特言之,上述基於一或多旗標之當前狀態來執行計 异的能力,將可容許上述之測試開發器,使用某一最小數 目之向置,來建立一可產生一複合樣式之測試樣式。過去, 彼等多重與複合之條件,係在一可提供大量伸縮性之軟體 内做處理。然而,在一記憶體測試器中,要將該樣式中之 母一向量施加至同時又能維持精確及可預期性時 序’是很重要的。使用一基於軟體之方式來評估多重與複 五、發明說明(5) 合之條件,可在其可預期性向量時序之完整性,或促使一 測試器能既可靠又飛快地施加彼等向量間,取得一妥協。 所以,在此所需要的是一種裝置,能迅速地基於一測試器 内之多重與複合條件執行多重計算,而不損及該測試器飛 快地驅動及接收測試向量的能力。 本發明之概要 一可用以執行條件式計算之裝置,係具有一算術單 元和一指令選擇器。其指令選擇器,可接收多數之指令。 該裝置亦具有多數可反映該裝置之狀態的狀態旗標,和一 可選擇該等狀態旗標中之一的狀態旗標選擇器。此選定之 狀態旗標,將變為一指令選擇,以及此指令選擇可決定該 等多數指令,何者要被其算術單元執行。 一可用以執行條件式計算之程序,將可產生多數之 狀態旗標,以及可選擇此等狀態旗標中之一,做為一指令 選擇。彼4第一和第二選擇性指令,將會呈現給一指令選 擇器,該等第一和第二指令中之一,係被一算術單元選定 供執行用。該指令選擇將可決定,或為第一或為第二指令, 要被該算術單元選定供執行用。 圖示之簡要說明 第1圖係一依據本發明所構成之可廣泛重新配置式非 揮發性兄憶體測試器的簡化方塊圖; 第2圖係第i圖之DUT測試器6的一個簡化展開方塊 圖; 第3-4圖係兩依本發明之揭示說明可容許三個算術單 514931 五 、發明說明(6) 元做條件式計算的邏輯方塊圖; 第5圖係一依本發明之揭示說明可容許三個算術單元 做條件式計算及遮罩比較的邏輯方塊圖; 第6-7圖係兩依本發明之揭示說明可容許三個 元做條件式計算的邏輯方塊圖; 打早 第8圖係一依本發明之揭示說明的實施例有關第夂7圖 所表示每一算術單元的零成分之簡化展開方塊圖; —第9至12圖係一些依本發明揭示說明之二進位字組的 貝施例,其可用以編碼第夂8圖所示之方塊圖,以執行一 些複合條件式計算; 第13圖係顯示一依本發明揭示說明之編譯程式中所 用Perl正規表示式的特定實施例;而 序 第14圖則係一依本發明揭示說明之編譯程式的程 較佳實施例之詳細說明 炫將參照第1圖,其中係顯示一依本發明之原理所構 成非揮發性記憶體測試系統丨的簡化方塊圖。詳言之,此 所示之系統,各具有多至64個測試點,可一次同時測試多 至36個個別之DUT(測試下之裝置),且考慮到重新配置, 以容許一成組測試資源之元件能結合在一起,而測試一些 具有多於64個測試點之DUT。此等測試點,可為一尚未製 成晶片袼及包裝之積體電路圓晶片的某一零件上面之一些 位置,或者彼等可能為一包裝好之零件的接腳。上述之術 語”測試點”係指稱一電氣部位,其中可施加一信號(例如, 10 五、發明說明(7)
電源供應、時鐘信號、資料輸入),或可測量一信號(例如, 一資料輸出)。吾等將遵循業界指稱測試點為”通道,,之習 慣。上文所論及之’’成組要結合在一起之測試資源”,可被 理解為36個測試位點,其中,每一測試位點係包括一測試 位點控制器(4),一(64個通道)DUT測試器(6),和一(64個 通道)可與一 DUT(4)實際形成電氣連接之成組接腳電子電 路(9)。在上述DUT之測試需要64個或更少通道的情況中, 一單一測試位點將足以對該DUT執行測試,以及吾等舉例 而言,將稱該測試定點#1(如同其在第1圖中之樣貌)將形 成或運作為一 ”單一位置測試站”。反之,當某種形式之上 述重新配置生效時,兩個(或更多)測試位點,將會使,,結 合"在一起,以作用為一較大等效之測試位點而具有128個 通道。因此,以及再次參照第丨圖中所示之範例,吾等可 稱測試位點#35和#36,將形成一,,兩位點測試站”。
簡短地考慮其相反之情況,其不應被假定其需要一 整個測試位點來測試一單一 DUT ,或者一單一測試位點 能被測試但一單一DUT則否。假定一圓晶片具有兩個(有 可能但非必然相鄰)晶粒,彼等測試通道總計之要求,將 為64個通道或更少。兩者DUT可藉由一單一測試位點做測 δ式。使此成為可能的,是每一測試位點之一般目地程式規 劃性。該測試位點所執行之測試程式可被寫成為,其測試 位點之一零件資源,係被用來測試一 DUT,而另一零件則 係被用來測試另一DUT。畢竟,吾等將假定若吾等有一為 前兩DUT之邏輯聯件的第三DUT,則吾等或將能以一單測 514931 五、發明說明(s) 試位點,來測試此第三DUT,故同理地吾等應能如往常地 測試其”組成DUT”。其唯一之差異是,個別地保持追蹤該 兩’’組成DUT"是否測試通過或失敗,相照於”第三” DUT有 關之一統一解答(亦即,其存在一議題有關該”第三”DlJ丁 之何者零件失敗)。此一”單一位點多重測試站"之能力, 大體上係屬傳統式的,而吾等在此提及係基於完全性,以 及為盡量避免在使其與結合起兩個或多個測試位點之觀念 做比較時,可能引發之混亂與誤解。 若非此重新配置之觀念,一測試位點與一測試站間 將並無差異’以及吾等或將可省卻其中之一術語。然而, 貝際上’其將極容易理解到,彼等測試站之數目,亦不需 要等於彼等測試位點之數目。過去,該等數目不同是因為 彼等測試位點被分離以建立較多之測試站(DUT尚未複雜 至足以消耗一整個測試位點)。然而,如今其差異可能亦 由於彼等已被結合在一起之測試位點業已形成了一些多重 位點測試站(DUT對一單測試位點而言過於複雜)。 接下來’一測試系統控制器2,則會藉由一系統匯流 排3,連接多至36個測試位點控制器,彼等之名稱係尾接 依些接尾辭至#36(4a-4z)。(確實,下標a_z僅自工至^而 非至36。但此微小之詭計,在眾多參照字符上面似乎是較 佳於數字下標’彼等潛伏著極大之混亂。該測試系統控制 器2係一電腦(例如,一 ;^丁執行環境下之個人電腦),可執 行-有關測試非揮發性記憶體任務之適當測試系統控制程 式。此測試系統控制程式,係代表著一可完成所希望測試
12 五、發明說明(9) 之勞力(與複雜性)階層分級中的最高抽象層次。此測試系 T決定’何者程式正被彼等不同之測試位點執 仃-加上監視一依需要移動測試探針和DUT之機器人系統 (未示出)。該測試系統控制器2在作用方式上,可支援上 述某些測試位點被規劃執行為單一位點測試站,而其他者 使結合在-起,以形成多重位點測試站之觀念。顯然地, 在此等情況中,有不同之零件要被測試,以及不同之測試 被用於不同之零件,係最有利的。同理,其並不需要使所 有之單一位點測試站,測試相同樣式之零件,就多重位點 測試站而言,亦無此需要。因此,該測試系統控制器2, 係被規劃使發出一些命令,以完成其所需之測試位點結 合,以及接著就彼等使用中之各個測試站,調用其適當之 測試程式。該測試系統控制器2,亦可接收一些有關彼等 /貝J »式所得結果之資訊,以便其可就拋棄壞掉零件採取一適 當之行動,以及可保存各個分析有關之日誌,可被用以控 制比方說一工廠調整中之生產程序。 該測試系統本身係一相當大及複雜之系統,以及其 通常係使用一機器人子系統,來將一圓晶片載入一試料 臺,其接著可於一或多將來之晶粒(該圓晶片尚未被製成 晶粒)要被測試時,在一些連接至上述接腳電子電路9之探 針下,依序放置該等晶粒。上述之測試系統,亦可被用來 測試一些已裝載至一適當載具上面之包裝或零件。其中, 無論有多少測試位點被用來形成該測試站,或無論在一測 試位點上面有多少測試站,將至少有一位點控制器,係與 514931 五、發明說明(ίο) " 每一使用中之測試站相聯結(誠如下文所解釋)。一測試位 點控制器,係一可為一出自Inteli96〇處理器内嵌式系統, 而具有36至64 MB結合程式與資料之記憶體,可執行一稱 做VOS(VersaTest Ο/S)之專利性作業系統,其亦使用在= 期用以測試非揮發性記憶體之產品(例如,㈨ 或V3300)。目前,吾等將僅考慮單一位點測試站有關之 情形。基於一明確之範例,M定測試位點#1係作用為測試 站#1,以及其要測試WHIZCO零件編號〇〇13。其測試進程 係涉及一百不等不同類型之測試(改變及監視電壓位準、 脈波覓度、端緣位置、延遲、加上大量之簡單儲存及接著 取回選定樣式之資訊),以及每一類型之測試,將涉及該 DUT有關數以百萬計個別之記憶體周期。在其最高層次 下,該測試系統之操作員,可指示該測試系統控制器2 , 使用測試站#1以開始測試WHIZCO 0013。在適當時機, 该測试系統控制器2,將會告知測試位點控制器# 1 (4a)(其 係一内嵌式[電腦]系統),執行其相關聯之測試程式,比 方說TEST—WHIZ—13。若該程式在測試位點控制器#1之環 境中早已可用,則將會單純地被執行。若不然,則其將會 由測試系統控制器2來供應。 此刻,原則上,該程式TEST-WHIZ—13可以是完全自 足的。但若其果真如此,則其將幾乎可確信會相當龐大, 以及該測試位點控制器4a内之内.嵌式系統的處理器,可能 會很難快速執行至足以在其所希望之速度下,甚或在一自 一至次一之DUT記憶體周期保持均勻之速率下,產生彼等 14 514931 五 、發明說明(u) 之測試。因此,一些可產生彼等要寫入或預期來自一讀取 運作之位址與相關聯資料的序列之低階副常式類型的活 動,將會依一位於DUT測試器6内之可程式化演算機構的 需要而產生,但其係與該測試位點控制器4内之内嵌式系 統正執行之程式同步運作。此可被視為輸出某一定低階副 常式類活動與起始DUT記憶體周期之任務,至一較接近該 DUT 14之硬體環境的機構(DuT測試器)。一般而言,將來 只要該測試系統控制器2,配備一附有一測試程式之測試 位點控制器,其亦可供應上述相關聯之DUT測試器,一些 完成上述整個活動所需或該測試位點控制器有關程式規劃 所需之適當低階具現常式(或許專屬於要被測試之記憶 體)。此等低階具現常式,係稱做”樣式",以及彼等通常 係被定名(正如高階程式規劃語言中之函數與變數具有一 些名稱)。 每一測試位點控制器#n(4),係藉由一位點測試匯流 排#n(5) ’耗合至其相關聯之DUT測試器#n(6)。該測試位 點控制器,使用該位點測試匯流排5,藉以同時控制該DUT 測試器之運作’以及自其接收測試結果有關之資訊。該DUT 測試器可在高速下產生各個涉及測試進程之DUT記憶體周 期’以及其可決定一讀取記憶周期之結果,是否如所預期。 本質上,其可嚮應該測試位點控制器所傳送之命令或運作 碼(指定樣式),而起始一些對應有用序列之讀取與寫入 DUT記憶周期(亦即’其執行彼等對應之樣式)。在概念上, 該DUT測試器6之輸出,係一要施加至上述DUT之刺激資 15
514931 五、發明說明(12) 訊以及其亦自後者接收一嚮應資訊。此一刺激/嚮應資 訊7a ,將會在該DUT測試器6a與一接腳電子電路之組體 9a間向前傳遞。該接腳電子電路組體%,可支援多至料個 能被施加至DUT 14之探針。 上述之刺激資訊,僅係一依上述Du丁測試器中所用某 系列邏輯電路裝置之電壓位準所表示的並列位元樣式序列 (亦即,一序列之”傳送向量,,與所預期之”接收向量”)。在 刺激/嚮應内之位元位置與該晶粒上面之探針間,存在一 可配置之映射,以及此一映射係為該DUT測試器6所理解。 該等個別之位元,就彼等之時序與端緣位置而言係正確 的,但除該映射外,彼等在施加至該〇1;丁前,可能亦需要 做電壓位準之偏移。同理,—緊跟_刺激而出自該dut之 嚮應,在被認為適合回授至該011 丁測試器前,可能需要做 緩衝儲存及(相反)位準之偏移。此等位準偏移任務,係該 接腳電子電路9a之職責。上述接腳電子電路測試一 WHIZC0則所需之配置,或許不適於用來測試_來自 acme co·之零件,以及有可能甚至不適用於另一刪zc〇 之零件。所以’理應暸解的是’上述之接腳電子電路組體 同樣需要是可做配置;此一可配置性,係pE。。响線以 之功能。 以上係就一單一測試位點如何為測試一 DUT而組織之 簡短結構概觀下-結論。吾等兹將轉至以許多測試位點來 運作時所呈現之議題。初步而言,吾等將敘述—可建立一 具有多重測試位點之測試系統的較佳實施例。在許多方 16 五 '發明說明(13) 面,吾等將敘述之某些資訊,係依據顧客喜好之市場調查 與成本效益分析等之選擇問題。無論如何,人們若要建立 此等之一用品,便勢必要做一些明確之選擇,以及一旦該 動作凡成,整個系統自始至終便可見到一些特定之結果。 吾等感覺到至少-般地,對該測試系統之硬體性質做較大 幅度之概要敘述係有用的。縱使某些此等性質係偶發的, 彼等之知識仍將有助於理解各個用以例示本發明之範例。 f先,接著考慮四個相當大之插件框架,每一插件 框条’除電源供應器與水冷卻(風扇可為一潔淨室環境中 之一污染來源)外,係具有一母插件板、一前端平面、和 :後端平面。每-插件框架内,可安置多至九個之組體。 每一組體係包括一測試位點控制器、011丁測試器、與一些 接腳電子f路。吾等將敘述_些測試位點控制器,如何結 u在一起之一般概要,其將會涉及某些用以建立花環式串 接鏈之匯流排。 就術語"花環式串接鏈"做一簡短之題外話,或許係符 合程序。考慮系統元件A、B、C、孝口D。假定彼等係依該 順序串接成花環鏈。吾等可言道其中有一離開A進入6之 資訊或控制路徑’ B可選擇向前傳@通信量,祕著將離 開B而進入C,以及C可選擇向前傳遞通信量,其接著將離 開C而進入D。此等相同性質之安排,亦可存在於其他方 向中有關之通信量。花環式串接鏈,係經常被用來建立優 先順序計劃:吾等將使用彼等來建立各個測試位點控制器 間之主/從關係。吾等將以接尾辭"DSY,,而非"匯流排",來 '發明說明(14) 指明此等花環式串接鏈類型之通訊安排。因此,吾等或可 稱做一命令/資料DSY而非一命令/資料匯流排。此刻,彼 等資訊”進入B以及被選擇向前傳遞,,之觀念可能暗示,通 信量在向前傳遞之前,係被複製至一分開組別之導體上 面。其或可如此,但基於效能之理由,其更像是一具有可 定址之實體的正規匯流排。藉由一可程式化位址映射之安 排’和使部份下游之測試位點控制器”休眠”的能力,其單 一匯流排可使在邏輯上呈現(亦即,作用為)為多數之花環 式串接鏈。最後,理應理解的是,該等花環式串接鏈,係 一些有關命令與控制資訊之高效能路徑,以及若彼等非如 此,則吾等將無法預期一主/從組合(多重位點測試站)能 運作如同一單一測試位點所為一樣地快速。因為花環式串 接鏈效能之利益,該等各個DSY並未離開彼等對應之插件 框架。此一決定之影嚮是,對何者(及因而亦對有多少)測 試位點可使結合一起,定下了某些限制。原則上,此一限 制基本上並無需要,也不真正缺乏(其可被完成)所涉及技 術上之實際性;其僅僅是覺得,既然一插件框架内,早已 有了九個測試位點,延伸DSY將增加顯著之成本,而得到 相當少之附加效益。 為重新開始吾等對第1圖之討論,接著考慮各個可分 佈在該等四個插件框架内之測試位點控制器4&_42,前者 各具有九個測試位點控制器。讓吾等指明彼等為4a_4f、 4g-4m、4n-4t、和4u-4z。(不必介意,誠如先前所解釋, 此等係名義上僅有之26個下標“讀者懇請想像其間在某 五、發明說明(15) 尚有另外十個下標符號。)一CMD/DAT DSY 17a(命令&資 料ί匕衣式串接鏈),可使該等在一插件框架内之測試位點 控制器4a-4f互連,而一不同之cmd/dat dsy ,可使 該等在另一插件框架内之測試位點控制器4g-4m互連。相 同之女排刀別存在於其餘之插件框架,與對應之測試位點 控制器4n-4t和4u-4z間。吾等稍早業已說過,DSY並未離 開該等插件框架,因為一真正形成該DSY之匯流排的,,末 端”,並未離開一插件框架,以及將會變成另一插件框架 内之次-節段的頭端。取而代之的是,上述出自測試系統 控制器2之系統匯流排3,將會轉至所有之測試位點控制 器,以及每個均能變為一並未離開插件框架之DSY節段的 頭端處之主動器。 吾等已做過討論之CMD/DAT DSY 17b,將存在於各 個測試位點控制器4a-4z之間。彼等SYNC/ERR DSY 18卜 18d與DUT測試器6a-6z間,存在著一類似之安排。上述 SYNC/ERR DSY 18a_18d所傳送之同步和錯誤等資訊,可 谷泎彼等DUT測試器,能完全協調地運作。此兩花環式串 接鏈(17和18),傳送著類型稍有不同之資訊,但各係存在 為一般性可使一或多測試位點結合成一測試站之相同機構 的某一部份。 吾4热將轉至第2圖之討論,其係第1圖之dut測試器 6的簡化展開方塊圖,其中可多至36個。目前僅敘述其一 實例便足夠了。對第2圖之一瀏覽顯示,其板上組裝有相 當多之元件;特別是就一"簡化"之方塊圖而言。某些 τ 514931
五、發明說明(】6) 測试器6内及表示在此方塊圖内的,在功能上係十分地複 雜。以及並無法以,,現貨”之"形式供應。在此將做出兩點 立論。第一,將第2圖納入之主要目地是,為要說明上述 整個非揮發性記憶體測試系統1内之重要運作環境的基本 性質。在配合第3圖與後繼諸圖所做完全說明之本發明, 將或為第2圖之下列說明所列舉之機構的擴充,或者彼等 將為一些在第2圖中所發現到之動機前提的新機構。在任 一情況中,如同所寫,其將無法準確地知道何者會呈現在 讀者面前。當前之目標是提供各個較佳實施例之許多不同 詳細說明有關之一簡化但資料豐富的起始點,故彼等各係 相稱地簡明(相知、於一揭示每一不同發明之細節的,,龐大,, 說明書)。其第二點是,其大體上整體符合第2圖之擴大或 延伸之材料,可能包含一並未正好”符合”此簡化版本之資 訊。此並不表示其中有錯誤,或者事件有嚴重之矛盾;其 係起源於有時很難或不可能簡化某些事物,而使其為原樣 之縮影。此情況有點像地圖。標準尺寸之科羅拉多州道路 圖將顯示,當向東行至⑽上面,你可向北行至^上面 之丹佛市。其看來像是向左轉。而雖然其過去確為一實際 之左臂道,如今則不是,以及該路口之-明細地圖,將顯 不系列之为支.弓道和居間路段。但無人會說該標準尺寸 之道路圖有錯;就其拙象之層次而言係正確的。同理,以 及縱然其外觀係相當繁雜,第2圖確係_中等抽象層次之 簡化運作,但某些像是左-道,根本不是單純之左彎道罷
20 514931
五、發明說明(17)
誠如第1圖中所示,其至DUT測試器6之主要輸入,係 該測試位點匯流排5之一實例,其係源自於一與有關1)1;丁 測試器6之實例相關聯的測試位點控制器4。該測試位點匯 流排5,係耦合至一微控制器定序器19,其可被視為一特 定目地之微處理機。其可抓取一出自一程式記憶體内所儲 存之程式的指令,該程式記憶體,可或在上述微控制器定 序器6之内部(PGM SRAM 2〇),或在其外部(Εχτ dram
21)。雖然此兩記憶體呈現為由一本質上用做一程式計數 器(或者,指令抓取位址)之邏輯共用位址63來加以定址, 以及任一均可為一要被執行之程式規劃的來源,理應注意 的是:(1)在任一時段,僅有一個記憶體在執行指令抓取 記憶體周期;以及(2)事實上彼等係由不同之電氣信號來 疋址。SRAM速度很快,以及可容許真正之隨機存取,但 /肖耗其微定序控制器丨9(此係一大積體電路)内之寶貴空 間,故其尺寸有限制。該外部DRAM可被設置大量之可調 整數量,但唯有當所存取涉及線性執行及無分支之連續性 資料段時方會快速。其SRAM 20内之程式規劃,最常見的 是演算密集,而其EXT· DRAM 21,係最適合於演算程序 無法立即產生之資料,諸如起始常式與隨機或無規律性資 料。 上述微控制器定序器19所執行之指令字組係相當 寬:208個位元。其係由13個16-位元攔位所組成。此等攔 位經常代表一些所抓取到有關該微控制器定序器外特有之 機構的指令資訊。此等欄位係專屬於彼等相聯結之機構。 21 514931 五、發明說明(18) 有一組ALU指令22,係施加至一組8個之16-位元ALU24, 而其他則係分配至各個分佈遍及該DUT測試器之其他機 構。後者之情形係由一些線與說明文字’’各個控制值與指 令” 42來表示。 上述8個各具有一傳統式算術指令之指令集的16-位元 ALU(24),係環繞相聯結之16-位元結果暫存器(每一 ALU 亦具有數個其他暫存器)而建立。此等結果暫存器,有三 個與彼等相聯結之ALU,可用以產生X、Y、和Z位址成分 27,彼等係各別地結合進一提供給該DUT之完整位址内。 8個ALU/暫存器(DH與DL)中,有另外兩個在設置上,係 為協助演算式建立彼等被分隔成一高位元部分(DH)與一 低位元部分(DL)之32-位元資料樣式28。最後三個ALU/暫 存器(A,B,C),係被用做計數器,以及可促成各個程式控 制旗標25之產生,後者可協助程式控制與分支來完成某些 程式規劃下特定數目之反覆執行或其他數值條件。此等程 式控制旗標25,係傳遞回至上述之微控制器定序器19,其 中,彼等將會影嚮上述之指令抓取位址的值,其方式為理 解微處理機者所熟悉。其中亦有各種亦可用以影嚮程式分 支之其他旗標55。彼等係源自該DUT測試器6内之各種其 他受控制於上述抓取指令字組之不同欄位的機構。有一特 定之額外旗標,係特別顯示為一分開之項目: VEC_FIFO_FULL 26。在另一略不詳細之簡圖中,其可能 與其他旗標55混合在一起。吾等將其分離出,是為了有助 於解釋上述微控制器定序器19之運作特徵。 22 :)14931 、發明說明(19)
上述VEC-FIF0-FULL所做之工作是,(暫時)中止上 述微控制器定序器19進-步之程式執行。上述微控制器定 序器19所抓取之指令,與上述最終交出彼等要施加至dut T測試向量的機構間,存在有許多其他之管線級段。此外, 部份伴隨一向量而移向要施加至之DUT,係一有關最終向 量施加之速率或每一向量之期間的資訊。因此,上述向量 施加至DUT之速率,並不需要固定不變,以及特別是一群 向量,在施加上可用較彼等產生所用為長之時間。上述之 倣控制器定序器,僅僅是以其最大之速率,來執行程式規 劃。但顯然地平均來說,如往常地,上述"向量消耗之速 率”,必須等於”向量產生之速率”,以免其管線需要有幾 乎毫無限制之彈性。在下文將討論之位址映射器29的輸出 處,有一向量FIFO 45,以及其係充做上述管線中一富彈 性之容量。上述之信號VEC 一 FIF0—FULL,係用以藉由引
起一暫時停止上述管線前端處新向量之產生,來防止超出 上述管線中有限數目之級段的限度。 接著’該等(3乘以16等於48個位元)χ、Y、和Z位址 成分27,將會施加至一位址映射器29,其之輸出係該等在 上述有序48位元位址空間内的一個事先選定幾乎任意重排 之位址值。做為理解它之一出發點,暫時假定該位址映射 器29係一完全佔據一 48·位元之位址空間的記憶體,以及 其在每一位址處,保有一48·位元值。(暫時不必管此一記 憶體或將一至少在時下—為一大電冰箱之尺寸)。有了此一 記憶體,其將可具現一檢查表,以使任一施加之位址,映 23 514931
五、發明說明(20) 射進另一任意選定可被用做一置換位址之48•位元值。此 類位址映射有利之理由是,該等χ、γ、和2位址成分,在 一最可能不以一大的線性解碼器之特sDUT的内部結構之 情況中,通常是具有有用之意義的。彼等列、行、和層、 區塊或頁等觀念,對測試工程師而言,可說是非常有用, 以及彼等發生在一些實際緊靠在一起之部位中的失效,可 能涉及彼等X、Y、和2位址之對應緊靠。彼等測試結果中 之此類樣式,不論是在重新規劃設計一部分,使以一備用 區段之運作,來避開一有缺陷區段者的設計層次或製造層 次下,對理解何者有問題並試圖修補它,是很寶貴的。如 此之考慮將引發兩項議題。其一是將48_位元削減至實際 要被施加至DUT之位元數(比方說32、或者16卜吾等將即 刻簡短地論及該削減動作如何完成,以及其主要地係一由 X取一些位兀、由γ取另一些位元、以及由2取其餘之位元 的事件但不元然如此,以及此係其第二項議題,因為某 位址或可姥位於電子電路内而為另一部份電子電路之一 左對右(或左對右及上對下)的鏡像。此就連續性位址值在 違電子電路内之實際順序而言,係具有重新安排該等位元 所想要之效應。此一晶片佈線性質,可能會發生多次,以 及可以肯定之情況是,一群位元,例如γ,如何被理解, 可此要依據某些其他,例如ζ位元之伴隨值而定。上述之 位址映射益29 ’在設置上如《主常一樣,可容許該等原始之 X、Υ、和Ζ位址,被”重新包裝”,以便就彼等或將測試一 些具有此類内部結構安排之記憶體的利益,反映此類事
24 五、發明說明(21) 匆就其貫際上如何完成而言,上述之位址映射器Μ,係 由相當大數目之互連多工器所構成。其無法如上文為解釋 所暫時假設,具現一佔滿記憶體解碼計劃之完全任意性檢 查表的行為。然而,其可依需要重新安排X、Y、和Z位址 成分之子攔位,特別是由於其中尚有其他機構,來做將他 位元削減至實際需要數目的工作。上述之位址映射器29, 亦包含三個可容許其在局部範圍内執行有限度之任意映射 的16-位元(位址)檢查表。 上述位址映射器29之映射位址輸出3〇,係做為一位 址而施加至一輔助RAM31,以及至一誤差截取ram32, 2等雖具有分別之功能,卻可選擇分割一較大整體之ram 來加以具現。上述之映射位址輸出3〇,亦將做為一輸入而 把加至下文將說明之一位址位元選擇電路3 7。 考慮上述之輔助RAM 3 1,其功能係為保留一些可施 加至DUT之資料樣式33和位址34。彼等在邏輯上係來自上 述輔助RAM 31之分別輸出,因為彼等在處置上多少有些 不同,以及係用在不同之地方。(該輔助RAM 31並非係一 雙埠β己憶體",但最好係幾個彼等輸出將施加至Μυχ之 排組)。與此一致地,彼等儲存之資料33,可被保存在一 排組或該輔助RAM 3 1某範圍之位址内,而彼等儲存之位 址34,可被保存在一排組或該輔助RAM 3丨某範圍之位址 内。而且,吾等並未顯示一可用以寫入至輔助RAM 3丨之 明確機構。此係在其正在執行之程式的命令下,由一測試 位點控制器4起始而被定址之匯流排運作,來加以完成。(其 五、發明說明(22) 中如往常地”暗藏” 一恰定位在第2圖周圍稱做"環狀匯流排 [未示出·因為其或將造成此圖極度之混亂]之"公用服務,, 匯流排)。 上述之誤差截取RAM 32,係藉由上述施加至輔助 RAM 31之相同位址,來加以定址,以及其可或儲存或取 回有關誤差之資訊,彼等之運作,在執行上係配合一後文 要討論之後置解碼電路。就彼等出自輔助RAM 3丨之路徑33 和34而言,彼等路徑51(進入誤差截取RAM)和62(出自誤 差截取RAM),最好為一些出自一多排組記憶體(誤差截取 RAM 32)而依據上述環狀匯流排(未示出)所分配之配置資 訊而加以多工化之輸出。理應注意之是,其資料MuX 35, 係具有來自輔助RAM 31之儲存資料輸出33,加上來自ALU 之集合體24内的DH與DL暫存器之資料28,而做為彼等之 輸入。上述之資料MUX 35,可選擇何者輸入(28,32)將呈 現為其之輸出38,此接著將做為兩向量成分之一(另一成 分為位址位元選擇電路37之輸出39),而施加至一傳送映 射器/並一串列變換器/接收向量比較資料電路4〇。 上述之電路40可執行三種功能:將彼等向量成分 (3 8,39)組合成一有序之邏輯表示值,一要被施加至(傳輸 至)DUT之完整向量;上述傳送向量之邏輯表示值的有序 位元與上述接腳電子電路之實際實體通道數目間,應用一 任意之動態相應關係(亦即,何者探針頭將代表該信號(亦 即,上述向量内之該位元)而接觸上述之DUT);以及與上 述之編譯程式合作,就該等容許一完整之邏輯向量被分割 26
五、發明說明(23) 成一些可分開及依序(串列化)施加之片段的DUT,而完成 此項動作。此等功能何者被執行,係由一些出自一 SRAM 41 之控制信號來決定,後者亦係依據上述微控制器定序器19 所抓取之208-位元指令中的一個襴位而被定址。上述電路 40之輸出,係一多至64-位元而施加至一向量fifo 45之向 量44 ’後者於填滿時,將會產生上述之信號 VEC一FIFO一FULL 26,其意義和用途已在上文討論過。上 述向量FIFO 45之頂部處的向量,可於接收到一源自一周 期產生器49(即將討論)之信號VEC—FIFO 一 UNLOAD 47時 自其移除。此等移除之向量(46),將會施加至一經由上述 接腳電子電路9之相關聯實例而連接至DUT的時序/格式化 與比較電路52。亦即,上述接腳電子電路9之每一實例, 將會接收彼等來自其相聯結之時序/格式化與比較電路52 的傳輸與接收向量7和接腳電子電路配置資訊8。 上述之時序/格式化與比較電路52,具有一内部srAM 54(—外部DRAM 53可用以取代此内部SRAM 54),其係藉 由上述如同微控制器定序器19之程式SRAM2〇的指令位址 (小圈圈内之’’A"),來加以定址。該内部811八1^ 54(或外部 DRAM 53),可協助產生彼等驅動與比較周期。彼等驅動 周期,可施加一傳送向量至該01;丁。彼等比較周期,可接 收上述DUT所呈現之一向量,以及對其做檢查,以決定其 是否符合先前供應之比較資料。彼等驅動與比較周期兩 者,可就彼等之周期,調整是否要及何時要施加一負載, 以及何時資料要被閂定或選通。此比較動作可產生一 6心
27 514931 五、發明說明(24)
位元值56,其將會施加至一接收向量逆向映射器/串一並 列變換器57,其功能可視為上述電路4〇之邏輯反轉。(此 電路57之運作,係受到一 SRAM58之控制,其相當於sram 41對控制電路40之控制)。上述電路57之輸出59,將會依 次施加至上述之後置解碼電路6〇。當前,可充份說明的是, 上述之後置解碼電路60,可經由一些規劃性準則,檢查彼 等進入之誤差資訊59和(先前)所儲存之誤差資訊6〇(儲存 在誤差截取RAM内)兩者,藉以產生一精簡及更容易理解 之誤差資訊,其可接著經由路徑61回存進上述之誤差截取 RAM 32内。其一範例或為要建立彼等位址之一特定範圍 内究有過多少次誤差之計數,此資訊在決定何時藉由致能 一些取代電路,來企圖從事晶片上修復時,將會是有用的。
吾等兹將轉至上述之周期產生器49和其相關聯之時 序SRAM 51。就上述微控制器定序器19所抓取之每一 2〇8-位元指令而言,此等對一8-位元信號T-SEL 43之嚮應,將 可決定一與上述時序/格式化與比較電路52之相關聯運作 有關的周期。上述之T一 SEL 43,係上述所抓取指令内之 不同攔位所代表之各種控制值與指令42的組成部分。就一 8-位元值而言,其可表示或編碼出256個不同事件。在此 一情況中’彼等”事件”係上述時序SRAM 51内所儲存之28-位元值,以及彼等係由T_SEL來加以定址。每一定址之28-位元值(23),係指定一所希望而具有一 19·5兆分之一秒解 析度之周期。彼等所存取28-位元周期值(23)之序列,係 儲存在一周期FIFO 50,以便此序列之個別組成部分,將 28 514931 五、發明說明(25) 可與彼等儲存在上述向量FIFO 45内所預期之對應向量的 取回,同步地被取回及施加。
上述FIFO 50内之最早登錄項中的一個粗略時序值爛 位,可傳達一解析度為5奈秒之周期資訊,以及可自其產 生一信號VEC-FIF0 一 UNLOAD 47,其可將上述出自向量 FIFO 45之次一傳送向量,轉移至上述之時序/格式化與比 較電路52。有一伴隨之信號TIMING REMAINDER時序提 醒值)48,亦將施加至該電路52。其係在此處方完成19·5 奈秒之最終解析度。
詳細參照第2圖之簡圖,其中係顯示一 DUT測試器6, 其係一包含一連接至一定序器19之主記憶2〇的特定用途積 體電路(ASIC)。該主記憶體2〇,係包含一 208-位元寬之仆 向量SRAM。該主記憶體20,係代表一要至定序器19和環 繞之電子電路的單一程式指令。因此,彼等術語,,測試向 量"和’’指令”,在本說明書中係交換被使用。上述之主記 隐體20可儲存多數之程式向量或指令。上述之定序器a, 可存取上述主記憶體20内某一定之程式指令,藉以執行一 測試樣式。上述之定序器19 ,可依序存取該等程式指令, 以及可计异次一指令有關之位址定位。每一程式指令係經 由^述DUT測試器6之處理,以產生一些電氣控制信號, 彼等將會被饋送進一時序控制與類比接腳電子電路52,以 運作上述之測試下裝置(DUt) 14。 做為一程式指令之部分,此揭示之測試器,將能夠 執行單向量内之每一 8個16-位元算術單元24,或
29 514931 五、發明說明(2 6) ALU,的計算。每一算術單元之主要構成部分, 係一傳統 式算術邏輯單元(ALU)’因而該等術語,,算術單元,,與,,alu ’,係具有互換性。每一 ALU係一可獨立於其他而運作之算 術單元’以及係進一步能夠有條件地執行每一計算,每一 計算係基於許多可用狀態旗標中之一狀態。一測試開發者 可能會想要寫一測試樣式’使用一”^ then”、一 if…then…else”、或一無條件式結構,來指明一或多之計 算。為維護DUT時序之完整性,該無條件式或條件式計算, 必須在一單一向量内發生。 詳細參照第3圖之簡圖,其中係顯示該等8個ALU 24、 X、Y、Z、DL、DH、A、B和C、與周圍可支援分別有關 X和Y ALU 302、304之條件計算的邏輯電路之進一步細 節。該等X和Y ALU與周圍有關條件計算之邏輯電路,係 相類似的’以及因而彼等將顯示在同一簡圖上面。每一 ALU 24可產生三個狀態旗標306,一 min、一 max、和一 match 狀悲旗標。特言之’該X ALU 302將會產生xmin 308、xmax 310、和乂1^1(:11312狀態旗標。該丫八1^11 304將會產生>^11^11 3 14、ymax 3 16、和 ymatch 3 18之狀態旗標。該等 DL、DH、 A、B、和C ALU,同樣會產生類似之狀態旗標306。該等 xmatch 312和ymatch 318狀態旗標,係使用一 AND邏輯閘 320連接結合在一起,以產生另一狀態旗標306,即xymatch 狀態旗標322。其Z-ALU 334將會產生zmatch 324、zmin 326、和 zmax 328。該等 xmatch 312、ymatch 318、和 zmatch 324狀態旗標,係使用一 AND邏輯閘330連接結合在一起, 30 514931 五、發明說明(27) 以產生一xyzmatch 332狀態旗標。該等DL與DH ALU 336、 338,將會產生相同之三個狀態旗標,但對於所產生之狀 態旗標306,該X ALU 302僅利用該等dlmatch 340和 dhmatch 342狀態旗標。該等 dlmatch 340和 dhmatch 342狀 態旗標,係使用一 AND邏輯閘334連接結合在一起,以產 生一 dldhmatch 346狀態旗標。該等該A 348、B 350、和C 352 ALU,將會產生類似之min、max、和match旗標,彼等係 九個玎用旗標354。此等可用旗標354,係輸入進一可用旗 標選擇器356,其係一9x1多工器,其可選擇一可用旗標 354,做為一呈現給該X ALU 302之一狀態旗標306。一旗 標配置暫存器358,APG 一 GEN—CONFIG,係位於上述定序 器19之電子電路内。上述旗標配置暫存器358之8至11位元 可被規劃至某一值,彼等位元之值,可決定自一可用旗標 354選擇上述之狀態旗標306。15個該狀態旗標3〇6,加上 一固定接地之輸入362,將會輸入進一狀態旗標選擇器360 内,使成為此狀態旗標選擇器360有關之16個選擇。該狀 態旗構選擇器,係一 16x1多工器。一條件X欄位364,係 上述儲存在程式SRAM 20内之208-位元指令字組中的四個 位元。該條件X欄位364内之值,將可決定何者輸入進狀 態旗梯選擇器360内之狀態旗標306,將被選擇做為一指令 選擇X 366。此指令選擇X 366,將可決定一指令選擇器368 中雨選擇中的一個。該指令選擇器368,可接收兩可能之 指令瑪。其一第一 X選擇性指令370和一第二X選擇性指令 372,各係6-位元寬。每一指令係被編碼在一 X指令欄位 31 五、發明說明(28) 内,後者係上述來自包含條件式計算之程式SRAM 20的 208-位%心令子組之_部份。依據上料擇,亦即指令選 擇366 ’之狀態旗標的狀態,或該第一選擇性指令,或 該第二選擇性指令372,將會輸入進該X ALU 302内以供 執订。此所揭示用以支援x ALU 3G2條件式計算之實施例 内的位元數目,因而總計為丨6個位元。本技藝之一般從業 人員理應理解的是,就任一乂條件欄位364與第一和第二= 選擇性指令37G、372而言,可使用為數更多或更少之位元, 以便按照所用狀態旗標數目與其ALU指令集之尺寸,提供 為數更多或更少之選項。 以上之章節係敘述上述X ALU 3〇2内之條件式計算。 然而,每一此等ALU ,可使用上述208_位元指令字組其他 與另一 ALU 24中之計算同時被執行的部份,來支援其自 身之條件計算。上述γ ALU 3〇4内用以支援條件式計算之 邏輯電路,亦顯示在第3圖之簡圖中。一γ支援狀態旗標 選擇器384,可接收14個如同其χ支援狀態旗標選擇器36〇 中所用之狀態旗標306。唯一之例外為上述選自多數可用 旗標354之狀態旗標306。其一 Υ支援可用旗標選擇器374 , 可接收上述相同之可用旗標354,其係包括彼等來自每一 A 348、Β 350、和C 352 ALU 之 min、max、和 match 旗標。 上述可用旗標配置暫存器358所出之不同位元,可選擇何 者可用旗標354要被用做上述Y ALU 304所需之一狀態旗 “ 306 °此將可促使上述出自可用旗標354之狀態旗標選 擇,能做獨立性之程式化。特言之,上述可用旗標配置暫
32 五、發明說明(29) 存器358之4至11位元,係輸入進上述之γ支援可用旗標 選擇器374内。其一條件γ欄位386,可決定上述狀態旗標 3〇6之狀態旗標選擇器384要為γ指令選擇382之選擇。該Y 指令選擇382,係用來決定一 γ指令選擇器38〇之選定輸 出。該Y指令選擇器380,可接收各為6-位元寬而來自上 述程式SRAM 20之208_位元指令字組22内的Y指令欄位之 一第一 Y選擇性指令376和一第二γ選擇性指令378。該Y 指令攔位係在一不同之攔位内,但係與X指令欄位在相同 之程式指令字組22内。依據上述為γ指令選擇382之Y選定 狀態旗標的狀態,或為第一 Y選擇性指令376,或為第二 選擇性指令378,將會被輸入進上述之γ ALU 304内以供 執行。 詳細參照第4圖之簡圖,其中係顯示該Z ALU 334和 一些支援Z ALU條件計算程序之邏輯電路。上述之Z ALU 334,係使用某些如同彼等X和Y支援條件計算中所用之狀 態旗標306。在此揭示之實施例中,上述之Z ALU 334, 亦使用16個狀態旗標306。彼等被使用及如同X與Y ALU 之狀態旗標 306,係 xmin 308、xmax 3 10、xmatch 3 12、ymin 3 14、ymax 3 16、ymatch 3 18、zmatch 324、xymatch 322、 xyzmatch 332、dlmatch 340、dhmatch 342、dldhmatch 346、 和其固定為零之值362。此外,上述之Z ALU 334,亦使 用一由xmin 308和ymin 3 14連接結合為xymin 402之狀態 旗標,和一由xmax 310和ymax 316連接結合為xymax 404 之狀態旗標。參照第3圖之簡圖,上述之Z ALU 334,亦 33 514931 五、發明說明(30) 使用一選自一可用旗標354之狀態旗標306。其一Z支援可 用旗標選擇器388,可接收該等九個可用旗標354,以及可 依據該等可用旗標配置暫存器358之0至3位元中的值, APG-GEN-CONFIG[0:3],來選擇其中之一。試觀第3和4 兩簡圖内所示之連結器(A)。參照回至第4圖之簡圖,其一 Z條件欄位406,可決定何者輸入進一 Z支援狀態旗標選 擇器408之狀態旗標306,將被用做一Z指令選擇410。此Z-指令選擇410,將被用來決定一第一Z選擇性指令412與一 第二Z選擇性指令414間之選擇。此第一和第二Z選擇性指 令兩者,均將輸入進一 Z指令選擇器416。依據該Z指令選 擇410之值,該等第一和第二Z選擇性指令中之一,將輸 入進上述之Z ALU内以供執行。 詳細參照第5圖之簡圖,其中係分別顯示該等DL(資 料低位元)與DH(資料高位元)ALU 336和一些支援彼等條 件計算之邏輯電路。每一 DL和DH ALU,係具有一相同之 邏輯電路與一些支援其條件式計算程序之輸入。該等 DL/DH ALU係使用與該等X與Y ALU所用相同之狀態旗標 306 : xmatch 3 12、ymatch 3 18、xymatch 322、xyzmatch 332、 zmatch 324、dlmatch 340、dhmatch 342、dldhmatch 346、 與其線接至接地之固定值362。彼等其餘之狀態旗標306, 係不同任一X、Y、或Z ALU。其一狀態旗標306,可被選 擇做為該等十個功能誤差旗標502中之一。該等十個功能 誤差旗標中的四個,係Ferr位元0至3,Ferr[0:3]。每一 Ferr[0:3]位元,在若有一非預期之結果接收自DUT 14時, 34
M4931 五、發明說明(31) 可被上述之時序/格式化與比較區塊52設定至一正值。其 中有四個接收至上述時序/格式化與比較區塊之Ferr誤差 旗標504,每一旗標係表示上述dut接腳電子電路14處之 某一預先規劃數目的通道上面之一功能性誤差。因此,每 一Ferr旗標504係獨立地被設定。所有四個Ferr旗標5〇4, 係以邏輯OR連接在一起,以產生該等十個功能性誤差旗 標之第五個。每一五個所成之功能性誤差旗標將會被反 相’以產生總數為十之功能性誤差旗標5〇2。其一功能性 誤差旗標選擇器5〇8,可選擇該等十個功能性誤差旗標5〇2 中之一,要被接收而做為該等DL和DH支援狀態旗標選擇 器510、5 12所用之一狀態旗標306。其一功能性誤差配置 暫存器534内之四個位元,APG_FERR_CONFIGfl2:15J, 可決定上述之功能性誤差旗標選擇器5〇8,選擇該等十個 功能性誤差旗標中,何者將被用做一要被輸入進該等DL 和DH狀態旗標選擇器510、512内之狀態旗標3〇6。獨屬該 等DL與DH ALU 336、338的,係一輸出暫存器之值與一 第一 A1U有關之遮罩值間的比較值,和一輸出暫存器之值 與一第一 A1U有關之遮罩值間的比較值。特言之,一 16_ 位元X ALU輸出之暫存器值514,係與一 16-位元X遮罩暫 存器5 16 ’逐位元地形成邏輯和之關係。此一運作將被稱 做一 ALU遮罩運作。該等ALU 304、A、B、和C ALU 348、 350、和352,全具有類似之遮罩運作,而具有獨立性之結 構。上述邏輯和運作之16-位元輸出,係逐位元地與另一 ALU有關之另一邏輯運作的16位元輸出做比較,以及可產 35 發明說明(32)
生一可指示所有16-位元之匹配或非匹配值的位元。此匹 配或非匹配值,係另一狀態旗標。彼等如第5圖中所示之 可用組合係包括:X ALU遮罩運作相對A ALU匹配運作, x ALU遮罩運作相對B ALU匹配運作,X ALU遮罩運作相 對C ALU匹配運作,Y ALU遮罩運作相對A ALU匹配運 作’ Y ALU遮罩運作相對B ALU匹配運作,和Y ALU遮罩 運作相對C ALU匹配運作。關於該等DL和DH ALU 336、 338所用之狀態旗標3〇6,其中之一係分別由每一DL和DH 狀態旗標選擇器510、512來選定,以分別反映該等DL和DH 指令選擇器5 14、516。有一DL條件欄位518,係上述208-位元程式指令字組22之一部分,以及可用以決定上述DL 指令選擇器526所做之選擇。上述之DL指令選擇514,將 可決定該等第一和第二DL選擇性指令522、524中,何者 將會被傳送至上述之DL ALU 336以供執行。該等第一和 第二DL選擇性指令522、524,係被編碼在一 DL指令襴位 内,其係上述儲存在程式SRAM 20内之208-位元程式指令 字組22的一部分。該等第一和第二DL選擇性指令522、524 兩者,將會輸入進一 DL指令選擇器526内,以便由上述之 DL指令選擇器526決定,該等第一和第二DL選擇性指令 522、524中,何者要被上述之DL ALU 336執行。同理, 一 DH條件欄位520,係上述208-位元程式指令字組22之一 部分,以及可用以決定上述DH指令選擇器528所做之選 擇。上述之DH指令選擇器528,將可決定該等第一和第二 DH選擇性指令530、532中,何者將會被傳送至上述之DH 514931 五、發明說明(33) ALU 338以供執行。該等第一和第二DH選擇性指令530、 532,係被編碼在DH指令欄位内,其係上述儲存在程式 SRAM 20内之208-位元程式指令字組22的一部分。該等第 一和第二DH選擇性指令530、532兩者,將會輸入進上述 之DH指令選擇器528内,以便由上述之DH指令選擇器528 決定,該等第一和第二DH選擇性指令530、532中,何者 要被上述之DH ALU 338執行。 詳細參照第6圖之簡圖,其中係顯示一可表示該等A 和B ALU 348和350與一些支援此等ALU有關之條件式計 算的邏輯電路之方塊圖。與先前諸圖相類似,有16個狀態 旗標306,將會分別輸入進彼等A和B狀態旗標選擇器602、 604内。其中有九個為該等A和B ALU所用而與該等X 302、 Y 304、和Z 334 ALU所共用之狀態旗標,彼等包括:xmin 308、xmax 310、ymin 314 ' ymax 316、xymin 402、xymax 404、zmin 326、zmax 328、和其線接至接地之固定值362。 該等A和B ALU 348、350,亦使用彼等分別出自A、B、 和 C ALU 348、350、和 352之amin 628、amax 630、bmin 632、bmax 634、cmin 636、和cmax 638等旗標。每一 A和 B ALU 348和350,亦具有一分別選自該等十個功能性誤 差旗標504中之一的可程式化狀態旗標610和612。此A可 程式化狀態旗標610,係利用一輸出由上述功能性誤差旗 標配置暫存器534之位元0至3, APG_FERR—CONFIG[0.3], 來決定之A支援功能性誤差旗標選擇606。該B可程式化狀 態旗標612,係利用一輸出由上述功能性誤差旗標配置暫 37 514931 五、發明說明(34) 存器534之位元4至7,APG_FERR-CONFIG[4:7],來決定 之支援功能性誤差旗標選擇608。上述儲存在程式SRAM 20 内之208-位元指令字組22中的條件A欄位640,將可決定 何者狀態旗標306,將會被上述之A支援狀態旗標選擇器 602選定,而做為上述之A指令選擇614。此A指令選擇614, 可決定何者進入一 A支援指令選擇器616之輸入,要被選 定做為上述供ALU 348執行用之指令。在所揭示之實施例 中,該測試器僅支援上述ALU 348有關之無條件式和簡單 條件式計算。因此,上述之A支援指令選擇器616,將會 接收一 A ALU條件式指令620和一線接至接地電位之固定 值618。若上述之A指令選擇614為真時,上述之A ALU條 件指令620,將會被該A支援指令選擇器616選定,而要被 上述之A ALU 348執行,以及若上述之A指令選擇614為偽 時,其保持不變或無運作之指令將會被選定。上述程式 SRAM 20内所儲存之208-位元指令字組22中的條件B 642 欄位,將可決定何者狀態旗標306,將會被上述之B支援 狀態旗標選擇器604選定,而做為上述之B指令選擇622。 此B指令選擇622,可決定何者進入一B支援指令選擇器624 之輸入,將會被選定做為上述供B ALU 350執行用之指 令。在此揭示之實施例中,該測試器僅支援上述B ALU 350 有關之無條件式和簡單條件式計算。因此,上述之A支援 指令選擇器624,將會接收一B ALU條件式指令626和上述 線接至接地電位之固定值618。若上述之B指令選擇622為 真時,上述之條件指令626,將會被該B支援指令選擇器626 38 514931 五、發明說明(35) 選定,而要被上述之B ALU 350執行,以及若上述之B指 令選擇622為偽時,其保持不變或無運作之指令將會被選 定。 詳細參照第7圖之簡圖,其中係顯示一可表示該等C ALU 352和一支援其條件式計算之邏輯電路。類似於先前 諸圖,有16個狀態旗標306,輸入進一 C狀態旗標選擇器7〇2 内。其中有十三個為C ALU 352所用而與第6圖之簡圖中 所示之A和B ALU 348、350所共用之狀態旗標,此等共用 之狀態旗標包括:xmin 308、xmax 310、ymin 3 14、ymax 316、zmin 326、zmax 328、其線接至接地之固定值362、 amin 628、amax 630、bmin 632、bmax 634、cmin 636、 和cmax 63 8等旗標。上述之C ALU 352,亦具有一選自十 個功能性誤差旗標502中之一的可程式化狀態旗標704。此 C可程式化狀態旗標704,係利用一輸出由上述功能性誤 差旗標配置暫存器534之位元8至11 , APG_FERR—CONFIG[8:ll],來決定之C支援功能性誤差 旗標選擇706。該C ALU亦係利用該等amin 628和bmin 632 狀態旗標之連接組合,來產生一 abmin 708狀態旗標、以 及利用該等amax 630和bmax 634狀態旗標之連接組合,來 產生一 abmax 710狀態旗標。上述程式SRAM 20内所儲存 之208-位元指令字組22中的條件C欄位712,將可決定何者 狀態旗標306,將會被上述之C支援狀態旗標選擇器702選 定,而做為上述之C指令選擇714。此C指令選擇714可決 定,何者進入一 C支援指令選擇器716之輸入,將會被選 39 514931
40 五、發明說明(37) 内,其可執行一相對於上述輸出值820之比較運作。此比 較運作之結果’將可設定該等min、max、和match旗標822。 若該運作可使上述之輸出值820,能等於或小於在上述min 暫存器内之值,其min旗標將會被設定。若該運作可使上 述之輸出值820 ’能等於或大於上述max暫存器内之值, 其max旗標將會被設定。若該運作可使上述之輸出值82〇, 能恰等於上述match旗標822内之值,其match旗標將會被 設定。該等min和max暫存器區塊内之額外邏輯電路,亦 可於其運作使得其輸出值開始為一小於上述max暫存器内 之值以及產生一大於max暫存器之值(亦即,溢載)時,使 其輸出值被設定至其min暫存器内之值。同理,相同之邏 輯電路可於其運作使得其輸出值開始為一大於上述min暫 存器内之值以及產生一小於min暫存器之值(亦即,下溢) 時,使其輸出值被設定至其max暫存器内之值。在兩者事 件中,該等min和max兩者旗標,係同時被設定以及溢 ,下溢旗標,係自其比較器818傳送至其指令解碼邏輯 單元。該等min、max、和邮灿旗標⑵,係三個如同第] 至7圖之簡圖中就每一ALU所加註之相同旗標。概令上, 上述之指令解碼邏輯單元,係一大的cai選擇陳述。每 -case...係代表每-輪入進上述指令解碼邏輯單元刪内 之指令802有關的不同位元樣式。該指令内所有之0,係代 表一保持不變或無運作條件,在此情況中,無運作將會被 執行,以及所有值將保持不變於彼等在其先前向量中所保 持之相同值。上述輸出暫存器81〇内之值,係包㈣位元
514931 五、發明說明(38) 之貝訊’彼等係第2圖之簡圖中所示之aLu區區塊24之輸 出特百之’該等X、Y、和Z ALU 302、304 、334輸出 之每一 16-位元’係包含48個連接該等aLu區塊24與位址 映射器區塊29之位元。該等1^與1)11 ALU 336、338輸出 之每一 16-位元,係包含32個連接該等ALU區塊24與資料 MUX 3 5之位元。上述之ALU亦包含一可程式化預先產生 與後置產生模態位元824。此預先/後置產生模態位元824, 可經由上述狀態旗標配置暫存器358之位元12, APG—GEN—CONFIG[12],來加以規劃。在預先產生模態 中’上述之輸出值820係立即可用,以及係一領先其狀態 旗標值822而可促成條件式計算之向量。在其後置產生模 態中,該輸出值將會藉由一延遲邏輯閂830延遲一單周期。 因此;上述之輸出值820,係於上述促成條件式計算之狀 悲旗標值的同時可供利用。其一產生模態選擇器826,可 接收上述之立即可供利用輸出值82〇和一延遲輸出值828兩 者’以及上述之預先/後置產生模態位元824,可決定該等 可供利用或延遲之輸出值820、828中,何者將呈現做為上 述ALU之輸出。 詳細參照第9圖之簡圖,其中係顯示上述可供利用旗 標配置暫存器358之一實施例,其中,彼等位元〇至3,可 程式化上述之Z支援可供利用旗標選擇器388,彼等位元4 至Π,可程式化上述之Y支援可供利用旗標選擇器374, 以及彼等位元8至11,可程式化上述之X支援可供利用旗 標選擇器356。其位元12即上述之預先/後置模態選擇器位 42 五、發明說明(39) 元0 詳細參照第10圖之簡圖,其中係顯示上述功能性誤 差旗私配置暫存器534之一實施施例,其中,彼等位元〇至 3,可耘式化上述之a支援功能性誤差旗標選擇器,上 述功能性誤差旗標配置暫存器523之位元3,係被用來指明 在功旎性誤差存在中或在一功能性誤差不存在中是否執 行該指令。同理,彼等位元4至7,可程式化上述之B支援 功能性誤差旗標選擇器608,以及其位元7可指示一功能性 誤差存在與否,彼等位元8至11,可程式化上述之c支援 功能性誤差706,其位元U可指示在一功能性誤差存在與 否中疋否執行該指令,以及彼等位元12至15,可程式化上 述之DL/DH支援功能性誤差5〇8,其位元15可指示在一功 能性誤差存在與否中是否執行該指令。 詳細參照第11圖之簡圖,其中係顯示彼等可指引執行 一無條件式、簡單條件式、或複合條件指令之複合條件式 才曰々搁位有關之位元分配的表示值。在此實施例中,僅有 該等X、Y、z、DL、和DH ALU,支援彼等複合條件式指 々母一複合條件指令攔位,係16-位元寬,以及該等五 個支援複合條件式計算之ALU,各係與獨一的16個位元襴 位相關聯。因此’該等提及之五個ALU,係使用60個位元, 而總計為上述208-位元程式指令字組22。此系統可支援該 等A、B、和C ALU有關之無條件式和簡單條件式指令。 該簡單條件指令欄位係僅1〇位元寬。一無條件式指令係界 定為一無論任一狀態旗標306之狀態如何而可促成一 Alu 五、發明說明(40) 内之運作者。-簡單條件指令係具有—"if then"之格式, 以及唯有在上述狀態旗標之狀態為真時,方會促成一alu 内之運作。否則,使無運作被執行。一複合條件指令係具 有一”if.m"之格^以及唯有在上述特定之狀態 旗標的狀態為真時,方會執行一第—運作且唯有在上述 特定之狀態旗標的狀態為偽時,方會執行一第二運作。誠 如本技藝之-般從業人員所應理解的是,其係有可能在一 更寬之程式指令字組22的代價下,支援所有ALU有關之 複合條件指令。 上述之複合條件指令攔位,在邏輯上係被分割成一 條_位1104,位元12至15; 一第—選項指令棚位屬; 和-第二選項指令欄位1108。其條件棚位1104,可指明何 =態旗標306可為其條件依據。其第—選項指令攔位麗
Hi碼’其可於上述選定之狀態旗標為真時,促使該 # ALU中之一執行羊一靈 _4t ”運作。其第二選項指令攔位1108, 可於上_之狀態旗標為偽時, 同之運作。上述複合條件指令之格 運作二=·其第二選項指令欄位内包括"有關上述無 == 碼’來支撐該等簡單條件指令。 -類似二 令,其可使該等ALU中之-執行 僅僅是規劃'總為“條::等之計算。一無條件式指令係 =為上述X ALU 3〇2有關之一複合條 例,參照第3圖之簡圖,上述與™… 44 五、發明說明(41) 件指令有關之條件欄位364内的值,將會輸入進上述之A 支援狀態旗標選擇器360内。該等狀態旗標3〇6中之一,將 會基於該條件欄位之值被選定。此選定之狀態旗標,將會 依據該ALU源自上述選定之狀態旗標的狀態而或為真或為 偽。上述選定之狀態旗標,將變為上述之X指令選擇366。 此X指令選擇366之狀態,將可決定出現在上述指令選擇 裔368之輸出處的,係第一選擇性指令37〇,亦或第二選項 指令372。任一被選定之指令,將會被上述X ALU 302内 之私令解碼邏輯單元804接收。此指令解碼邏輯邏輯單元 804,將會產生其必須之控制位元806,以促使其所希望之 運作能被執行。此被執行指令之結果,將會被放進上述之 輸出暫存器810内,以及該等min、max、和match旗標μ〕, 將會被设定及閂定進彼等之邏輯電路内,以供選擇做為次 一向量有關之一些狀態旗標3〇6,在此,一運作可依賴一 或多狀態旗標306之值。 洋細參照第12圖之簡圖,其中係顯示彼等可指引執 行無條件式和簡單條件式之簡單指令攔位12〇2有關之位元 分配的表示圖。此簡單條件指令攔位係1〇•位元寬,以及 係其以加註數字11 〇 2顯示之複合條件式指令格式的一個子 集。此系統T支援該等A、B、和c AUJ冑關之簡單條件 式計算,以及係表示上述208-位元程式指令字組22内之2〇8 位元的3G個。連同該等複合條件式計算指令,彼等條件式 計算欄位,總計為上述程式指令字組22内之2〇8•位元的卯 個。彼等位元6至9,係其條件欄位12〇4,以及彼等位元〇 五、發明說明(42) 640。該條件攔位内之值,可選擇—狀態旗標鳩做為上述 之A&令選擇614。此a指令選擇川,可決定出現在上述 A支援指令選擇器616之輸出處的,係上述指令欄位620之
至5:係其指令欄位i跡做為_範例並參照第6圖之簡圖, 上述A ALU指令有關之條件糊位12〇4内的值,將會輸入進 上述之A支援狀態旗標選擇器602内,而做為上述之條件A 值(第12圖中以1206泛指)ϋ上述指令料器616之 第二輸入而線接至接地電位的固定值之無運作值618。 其一可支援彼等複合條件式計算之編譯程式,可接 收測試樣式語法,以及可將每—行程式指令,轉換成其相 田灯之機盗碼。在—依本發明之揭示說明所製之測試器的 實^列中’ ^多賴器指令,聚集在U式指令或 向里中 單—程式指令,可包含每一總數有8個指令之 算術單元、加上其他舉例而言波形類型與裝置接腳映射、 條件式和無條件式分支等有_計算。該編譯程式亦可支 ,-些無關本發明之其他指令有關之編碼,以及因而在本 況明書中残⑽^討論H值得注意的是,該編譯程 式係在複合條件式計算編瑪前,處理所有其他之指令。产 著該編譯㈣之處理每—指令,該卿程式將會自—保: 該指令語法之指令串㈣該命令,而隨著程序之 化該指令串。 1 該等條件式計算,可依據該等算術單元和測試開發 者之選擇而^,為-無條件、複合或簡單之形式。該等χ、 Y、z、DL、和DH算術單元,可支援所有三種形式。該等 五、發明說明(43) 算術單元A、B、和C,僅能支援該等無條件式和簡單條件 形式。特別參照第11和12圖之簡圖,兩種形式之條件式指 令,係包括一 6-位元指令欄位。因此,每一算術單元將具 有多至64個可能性指令。該等64個可能性指令中,就一單 耘式‘令中之每一异術單元而言,唯有一個可被執行。 該等64個可能性指令,係包含吾等發明人認為一測試器之 -特定實施例中最有用之指令的列表。然而,此等所選之 特定指令’大體上係-設計上之選擇問題。㈣上述64個 可能性指令,—具有”_G"值之指令,係—保持不變或無 運作指令’其中’所有值在該周期中係保持不變,以及^ 不料算。該等可祕指令之m係包括一些僅 早。十开之才”。其—第二子集係包括一些可做兩種 开之才曰τ ’以及其-第二子集係包括—些可做三種計算 之指令。每—指令係具有-與其相關聯之獨-64_位元之 指令碼。上述可支援本發明之編譯程式,可分配-此心 =算術元件㈣之每-條件和指令錄。此總計-有 個位疋,而聚集成上述之脈位元程式指令字組22。 上述用以編碼無條件式和條件式計算之編譯 ^程式指令所隱含以下有關每— ALU之程序。該編 ^呈式首Μ將上述規劃之指令字組,設定至 串 變數,並對其運作H述之編 "子串 編碼成其適當之機器碼,其會 ^ ^之&令串 移除。所以,該指令串在完成事先==處理之部分 為上述原有程式指令私式程序後,將 未處理殘餘。此-消除程序將有 五、發明說明(44) 助於簡化該等複合條件式計算編碼有社程序。 χ上述之編譯程式,可藉由發送-具有在此情況中為 y Z '⑴' dh、a、b、或以算術單元名稱之參數,呼 叫-有關每_算術單元之表示式識別副常式。所以,此表 示式識別副常式内之處理程序,係對整個指令串運作,但 僅_其與_算術單元相關之表示式。在_依本發明之揭 不說明的表*式識別时式之—特定實施财,係使用 人d 5.004軟體,和其正規表示式語法,以便分離彼等複 口條件式私令之不同形式。詳細參照第13圖之簡圖,其中 人、員7Γ八正規表不式之一特定實施例。該表示式識別副常 式内之,” if statement”,係使用一種正規表示式,藉以首先 識別就該特定之算術單元,是否有任一表示式被使用。若 否’該副常式將會呼叫另一常式,以便就所有條件分配無 、乍或保持不變私令給其相關聯之指令欄位,以及該副常 式將就該算術單元而結束。若就上述特定之算術單元,該 =式指令串内確有一表示式存在,該正規表示式將分類並 刀離第类員型之格式範鳴。此格式範嘴可指出該表示式係 複α條件式、簡單條件式、亦或無條件式。在—第二範禱 中之相同’’if statement”,將可識別該表示式内所包含之指 令類型。此類型範疇可指出該第一選擇性指令係一單一、 雙重、或三重運作指令,和該第二選擇性指令係未定義、 單一 '雙重、或三重運作指令。上述使用正規表示式之分 類和分離步驟的結果,係多數之字串變數組,彼等之字串 片段,係與以下之概要中所示的範疇相關。其中存在有一 J14931 五 '發明說明(45) 不同之多數具有依據所評估之表示式的類型所界定出之值 的字串變數。以下之概要可提供該等被界定之字串變數的 列表,加上彼等對表示式和其他字串變數的關係。此概要 之第一層(亦即,1,2,3),可定義該表示式之格式,該概要 之第二層(亦即,i.Um.3,等等),可定義該表示式之 類型,以及此概要之第三層(亦即, 等等),係包含彼等個別之指令。 1複合條件式指令(整個詞組) 1.1第一選擇性指令(若且唯若其係一三重格式)。 1丄1第-選擇性指令之第一部分,若第一選擇 性指令係一三重指令。 部分,若第一選擇 部分,若第一選擇 Μ·2第一選擇性指令之第 性指令係一三重指令 1 · 1 · 3第一選擇性指令之第 性指令係一三重指令。 ^第一選擇性指令(若且唯若其係一雙重格式卜 I·2·1第-部·分第-選擇性指令係-雙重格 式。 1.2.2第二部分,若第_選擇性指令係—雙重格 式。1.3第一選擇性指令(若 單一格式)。 1·4條件。 1.5第二選擇性指令(若且唯若其係一三重格式)。 I.5.1第:選擇性指令之第-部分,若第二選擇 49 514931 五、發明說明(46) 性指令係一三重指令。 1.5.2第二選擇性指令之第二部分,若第二選擇 性指令係一三重指令。 1.5.3第二選擇性指令之第三部分,若第二選擇 性指令係一三重指令。 1.6第二選擇性指令(若且唯若其係一雙重格式)。 1.6.1第一部分,若第二選擇性指令係一雙重指 令。 1.6.2第二部分,若第二選擇性指令係一雙重指 〇 1.7第二選擇性指令(若且唯若其係一簡單指令)。 2簡單條件指令(整個詞組) 2,1指令(若且唯若其係一三重格式)。 2.1.1第一部分之選擇性指令,若指令係一三重 指令。 2.1.2第二部分之指令,若指令係一三重指令。 2.1.3第三部分,若該指令係一三重指令。 2.2指令(若且唯若其係一雙重格式)。 2.2.1第一部分,若該指令係一雙重指令。 2.2.2第二部分,若該指令係一雙重指令。 2.3指令(若且唯若其係一單一格式)。 2.4條件。 3無條件式指令(整個詞組) 3.1指令(若且唯若其係一三重格式)。 50 514931
五、發明說明(47) 3·1·1第一部分之指令,若指令係一三重指令。 3 · 1.2第二部分之指令,若該指令係一三重指令。 3.1.3第三部分,若該指令係一三重指令。 3.2指令(若且唯若其係一雙重格式)。 3·2· 1第一部分,若該指令係一雙重指令。 3.2.2第二部分,若該指令係一雙重指令。 3.3指令(若且唯若其係一單一格式)。 彼等在分類步驟中無關該表示式之字串變數,係被 界定為一零值。舉例而言,若該表示式係一就其第一選擇 性指令使用一雙重指令及就其第二選擇性指令使用一單一 指令的複合條件指令,則唯有彼等在概要編號1、1·2、 1·2.1、1.2.2、1·4、和1.7中所說明之字串變數會被界定。 所有其他選擇性字串變數均係零值。 每一子串變數將會接著相對於一零值做檢查,以找 出彼等被界定及因而為上述要被編碼之表示式的一部分之 字串變數。因為該等字串變數之分配方式,一非零值可提 供該表示式有關之足夠資訊,以致該表示式上面之運作, 可依據要對其編碼必須完成者來加以組織。每一該等字串 變數,係使用一系列之if •then之陳述,依階層式順序, 依上述概要中所示之順序,來加以評估。首先,在該概要 中之項目1内所說明的字串變數將會被評估。若該字串變 數係一非零值,該表示式便可知係一複合條件指令(亦即, 一使用if...then...eise之袼式)。此一事實可排除就簡單條 件式和無條件式袼式評估該表示式之需要。在該字串變數
51 514931 五、發明說明(48) 就複口條件式指令被評估為肯定之後,該等第一選擇性指 令字串變數將會被評估。在一複合條件式指令之情況中, 唯有階層1.1、i.2、1.3中所說明之—字串變數會被界定。 依據該字串變量是否包含一三重、雙重、或簡單之指令類 型,_不同之編碼副常式將會被呼叫。其中有三個編碼副 常式,各係專屬上述三重、雙重、或簡單之指令類型。一 適當之編碼副常式將會被啤叫,而發送次一階層之字串變 數做為參數。每-編碼副常式係使用-case』丨ect陳述 或-檢查表,來匹配上述之特定指令及參照—與該匹配相 關之二進位瑪。該編碼副常式將會就上述在該表示式中之 指令,傳回該等二進位碼。該編譯程式將會使用此傳回之 二進位值,來編碼其適當之指令棚位。若該第—階層字串 變數係-零,上述當該表示式為一簡單條件指令時所界定 之字串變數,將會在-類似使用該等第—和第二階層字串 變數之方式中被評估。相同之編碼副常式,將會使用該等 第三階層之字串變數被呼叫。隨著每一表示式之被評估及 編碼’該編譯程式將會移除其處理過之表示式,而留下其 供更進-步評估之程式指令字串殘餘。若該表示式係被分 類為-複合條件式或-簡單條件式,一條件變數(亦即,】4 ^2.4)亦會被評估。—特定實施例中之條件爛位係4_位元 寬。因此’其中最多有16個可能之條件。其條件爛位係使 用-具有16個選擇ease··.seleet陳述之條件編碼副常式來 編碼,以便匹配該字串變數内所指明之條件,並傳回其相 關聯之二進位碼。 52 514931
五、發明說明(49) 雖然本發明之較佳實施例已做了說明,彼等僅係例 示性。本發明之其他實施例與修飾體,在不違離其所附申 請專利範圍之精神與範圍下係屬可能。 53 514931 五、發明說明(50) 元件編號對照 # 1 - #36(4a-4z)...測試位點 9...接腳電子電路 控制器 14,15,16...測試下裝置 # 1 36(5a-5z)…位點測試 (DUT) 匯流排 19...微控制器定序器 # 1 -#3 6(6a-6z) ...DUT測試器 20...PGM SRAM(程式記憶體) #l-#36(7a-7z)···刺激 / 嚮 20···主記憶 應資訊 21…EXT DRAM(外部記憶體) #l-#36(8a-8z)...PE(接腳 22...ALU 指令 電子電路)配置線 23...28-位元值 #l-#36(9a-9z)···接腳電子 24.··算術單元(ALU) 電路組體 24...集合體 17a,17a...CMD /DAT DSY 25...程式控制旗標 (命令與資料花環 26...VEC_FIFO_FULL 狀式字串接鏈) 27...X、Y、和Z位址成分 1…非揮發性記憶體測試系統 28··. 32-位元資料樣式 2...測試系統控制器 28…資料 3...系統匯流排 29...位址映射器 4...測試位點控制器 30...映射位址輸出 5...測試位點匯流排 31...協助 RAM 6...DUT測試器 32…誤差截取RAM 7…傳輸與接收向量 33...DUT資料樣式 8...接腳電子電路配置資訊 33,34...路徑
54 514931
五、發明說明(51) 34...位址 電子電路 35…資料MUX 53···外部 DRAM 37…位址位元選擇電路 54...内部 SRAM 38,39…向量成分 55...其他旗標 38,39...輸出 56...64-位元值 40...傳送向量映射器/並 57...接收向量逆向映射器 一字串列變換器/接 /字串一並列變換器 收向量比較資料電路 58...SRAM 41...SRAM 59…輸出 42...各種控制值與指令 59…誤差資訊 43...8-位元信號丁_8£1^ 60...後置解碼電路 44…向量 60...誤差資訊 45.··向量FIFO(先進先出) 61...路徑 46...向量 63…邏輯共用位址 47...VEC_FIFO_UNLOAD 302,304···Χ和 Y 算術單元(ALU) 49...周期產生器 306…狀態旗標 48...TIMING REMAINDER 308...xmin狀態旗標 (時序提醒值)信號 3 10...xmax狀態旗標 50...周期 FIFO 3 12...xmatch狀態旗標 51.62…路徑 3 14...ymin狀態旗標 51…時序SRAM 3 16."ymax狀態旗標 52...時序/格式化與比較 3 1 8...ymatch狀態旗標 電路 320... AND邏輯閘 52...時序控制與類比接腳 322...xymatch狀態旗標 55 514931 五、發明說明(52) 324...zmatch狀態旗標 364…規劃條件 326...zmin狀態旗標 366···指令選擇X 328...zmax狀態旗標 368…指令選擇器 330... AND邏輯閘 370…第一 X選擇性指令 332...xyzmatch狀態旗標 372…第二X選擇性指令 334...Z-ALU 374Y...支援可供利用旗標 334...AND邏輯閘 選擇器 336,338."DL與DH ALU 376…第一 Y選擇性指令 340...dlmatch狀態旗標 378…第二Y選擇性指令 342...dhmatch狀態旗標 380...Y指令選擇器 346...dldhmatch 狀態旗標 382...Y指令選擇 348A...ALU 384...Y支援狀態旗標選擇器 350B...ALU 386...SRAM 條件 Y 352C...ALU 388...Z支援可供利用旗標 354...可供利用旗標 選擇器 356…旗標選擇器 402...xymin狀態旗標 3 5 8...APG_GEN_CONFIG 404."xymax狀態旗標 旗標配置暫存器 406...Z條件欄位 360...X支援狀態旗標選 408...Z支援狀態旗標選擇器 擇器 410...Z指令選擇 360...狀態旗標選擇器 412…第一 Z選擇性指令 362…輸入 414…第二Z選擇性指令 362…接地電位固定值 416...Z指令選擇器 364…條件X欄位 502…功能性誤差旗標
56 514931
五、發明說明(53) 504.. .Ferr誤差旗標 508…功能性誤差旗標選擇器 510.512.. .DL和 DH支援狀 態旗標選擇器 514.516.. .DL和DH指令選擇 518.. . DL條件欄位 820.. .DH條件欄位 522,524…第一和第二DL 選擇性指令 526.. .DL指令選擇器 528.. . DH指令選擇器 530,532···第一和第二 DH 選擇性指令 534…功能性誤差配置暫 存器 602·604···Α和B狀態旗標 選擇器 606…支援功能性誤差旗 標選擇 608.. .支援功能性誤差旗 標選擇 610.612.. .可程式化狀態 旗標 614.. . Α指令選擇 616.. . A支援指令選擇器 618.. .接地電位固定值 620.. .A ALU條件式指令 622.. .B指令選擇 624.. .B支援指令選擇器 626.. .B ALU條件式指令 626.. .條件指令 628".amin 旗標 630".amax 旗標 632".bmin 旗標 634".bmax 旗標 636.. .cmin 旗標 640…條件A欄位 642…條件B欄位 702.. .C狀態旗標選擇器 704…可程式化狀態旗標 706.. .C支援功能性誤差 旗標選擇 708".abmin狀態旗標 710.. .abmax狀態旗標 712…條件C欄位 714.. .C指令選擇 716.. .C支援指令選擇器 718.. .C ALU條件式指令 57 514931 五、發明說明(54) 720…接地電位固定值 802.. .指令 804.. .指令解碼邏輯電路 806…控制信號 808.. .輸出算術單元”輸出 ALU,丨 812.. .min暫存器 814…max暫存器 816.. .match暫存器 818…比較器 820.. .立即可供利用輸出值 822".min、max、和 match 旗標 824.. .可程式化預先產生與 後置產生模態位元 826…產生模態選擇器 828…延遲輸出值 830…延遲邏輯閂 1104…條件欄位 1106.. .第一選擇性指令欄位 1108…第二選擇性指令欄位 58

Claims (1)

  1. 514931 双备影印
    A8 B8 C8 D8
    90·Η· 30 .煩請委員明示 i~^ 93 ¢正ά·^:#1更實賀六容是1¾准予修也。 第901 16265號申請案申請專利範圍修正本9〇. u. 3〇. 1· 一種用以執行條件式計算之裝置,其係包含·· 一算術單元3〇2 ; 一可接收多數指令370、372之指令選擇器368 ; 多數可反映該裝置之狀態的狀態旗標3〇6 ;和 一狀態旗標選擇器360,其可選擇一狀態旗標3〇6, 以產生一指令選擇366,此指令選擇366,可決定該等多 數指令中,何者要被其算術單元3〇2執行。 2. 如申請專利範圍第丨項所述之用以執行條件式計算之裝 置,以及係進一步包含多數之算術單元3〇2、3〇4、334、 3/36、338、348、350、352,彼等多數之狀態旗標3〇6, 係藉由此等多數之算術單元而產生。 3. 如申請專利範圍第2項所述之用以執行條件式計算之裝 置其中之异術單元,係一具有至少一個暫存器812之 算術單元,其暫存器係具有一暫存器值,其至少之一狀 態旗標822’可反映其算術單元相對於暫存器值之計算 值。 4·如申請專利範圍第3項所述之用以執行條件式計算之裝 置其中之算術單元3 02 ,係具有至少第一、第二、和 第三暫存器812、814、816,每一暫存裝置分別具有其 相關聯之第一、第二、和第三狀態旗標822,其第一狀 態旗標,在該計算產生一等於或小於第一暫存器内之一 值的值時,可反映一不同之值,其第二狀態,在該計算 產生一等於其第二暫存器内之一值的值時,可反映一
    本紙張尺度適用中國國家標準A4規格(21〇>C297公楚)
    — (請先閲讀背面之▲注意事項再填寫本頁) •訂丨 514931 A8 B8 C8 D8 申請專利範圍 同之值,其第三狀態,在該計算產生一等於或大於第三 暫存器内之一值的值時,可反映一不同之值。 5.如申請專利範圍第4項所述之用以執行條件式計算之裝 置,其中之每一算術單元係進一步包含:一結果暫存器 810、一延遲元件、和一延遲選擇器826,其延遲元 件830,可接受一來自其結果暫存器81〇之值,以及可產 生一延遲輸出828,其延遲選擇器826,可接受其結果暫 存器之值和上述延遲之輸出,以及其一配置暫存器 358 ’可提供一延遲選擇控制824。 6·如申請專利範圍第5項所述之用以執行條件式計算之裝 置,其中之指令選擇器360,可接收彼等第一和第二選 擇性指令370、372,以供其指令選擇366選擇。 入如申請專利範圍第卜2、3、4、5或6項所述之用以執行 條件式計算之裝置,其中係進一步包含一定序器19和一 主5己憶體2 0 ’此主化憶2 0可儲存一些供其定序器19存取 之指令,以及其中之第一和第二選擇性指令37〇、372, 係自此主記憶體20呈現給其指令選擇器36〇。 8·如申請專利範圍第7項所述之用以執行條件式計算之裝 置,其中係進一步包含一定序器19和一主記憶體2〇,此 主θ己憶20可儲存一條件碼3 64 ’其中之條件碼3 64,可決 定何者狀態旗標306,將會被產生做為該指令選擇366。 9·如申請專利範圍第8項所述之用以執行條件式計算之裝 置,其中之一呈現給其狀態旗標選擇器364的狀態旗標 3 0 6 ’係可程式化’以及係進一步包含:至少一額外之 (請先閲讀背面之注意事項再填寫本頁) 奉 •訂丨 :線·
    514931 A8 B8 C8 D8 .. ...明,! L 3 申請專利範圍 可產生多數可用旗標354之算術單元348、一可接爸彼等 可供利用旗標354及選擇一可供利用旗標354為一狀態 旗標306之可用旗標選擇器356。 10.如申請專利範圍第2項所述之用以執行條件式計算之裝 置,其中係進一步包含:多數之指令選擇器368、378, 每一算術單元302、304,有一指令選擇器;和一對應之 多數狀態旗標選擇器360、384。 (請先閲讀背面之注意事項再填寫本頁) 、tr— 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 61
TW090116265A 2000-09-29 2001-07-03 Apparatus and method for performing conditional calculations TW514931B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US67618800A 2000-09-29 2000-09-29

Publications (1)

Publication Number Publication Date
TW514931B true TW514931B (en) 2002-12-21

Family

ID=24713566

Family Applications (1)

Application Number Title Priority Date Filing Date
TW090116265A TW514931B (en) 2000-09-29 2001-07-03 Apparatus and method for performing conditional calculations

Country Status (4)

Country Link
EP (1) EP1193502A3 (zh)
JP (1) JP2002196947A (zh)
KR (1) KR20020025838A (zh)
TW (1) TW514931B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9922696B1 (en) 2016-10-28 2018-03-20 Samsung Electronics Co., Ltd. Circuits and micro-architecture for a DRAM-based processing unit
US11113051B2 (en) 2017-04-28 2021-09-07 Tenstorrent Inc. Processing core with metadata actuated conditional graph execution
US10817293B2 (en) 2017-04-28 2020-10-27 Tenstorrent Inc. Processing core with metadata actuated conditional graph execution

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5995424A (en) * 1997-07-16 1999-11-30 Tanisys Technology, Inc. Synchronous memory test system
US6366999B1 (en) * 1998-01-28 2002-04-02 Bops, Inc. Methods and apparatus to support conditional execution in a VLIW-based array processor with subword execution

Also Published As

Publication number Publication date
EP1193502A3 (en) 2005-06-22
KR20020025838A (ko) 2002-04-04
EP1193502A2 (en) 2002-04-03
JP2002196947A (ja) 2002-07-12

Similar Documents

Publication Publication Date Title
TW559821B (en) Error catch RAM for memory tester has SDRAM memory sets configurable for size and speed
US5173906A (en) Built-in self test for integrated circuits
US6779140B2 (en) Algorithmically programmable memory tester with test sites operating in a slave mode
US6436741B2 (en) Semiconductor integrated circuit device
US20140078841A1 (en) Programmable memory built in self repair circuit
JP4194799B2 (ja) 被試験デバイスの試験中にエラーが生じた場合にテストプログラムのアルゴリズム制御のその時点の状態を回復する方法
US20020038439A1 (en) Tester architecture construction data generating method, tester architecture constructing method and test circuit
US20030167431A1 (en) Programmable test for memories
JPH0713654B2 (ja) ハードウェアシミュレータ
JP2002163897A (ja) エラー捕捉RAM、TagRAM、バッファメモリ及び刺激LogRAMとして使用するために構成可能なメモリセットを備えるメモリテスター
EP0560940A1 (en) DEVICE FOR AN IN-CIRCUIT TEST WITH A MINIMUM MEMORY.
US6591385B1 (en) Method and apparatus for inserting programmable latency between address and data information in a memory tester
JP2001512575A (ja) データ・シリアライザを有する半導体テスタ
JP4317338B2 (ja) 高機能化された後デコードを有するメモリテスタ
TW514931B (en) Apparatus and method for performing conditional calculations
US6763490B1 (en) Method and apparatus for coordinating program execution in a site controller with pattern execution in a tester
US8046643B2 (en) Transport subsystem for an MBIST chain architecture
US6968545B1 (en) Method and apparatus for no-latency conditional branching
KR100786414B1 (ko) Dut 테스터 데이터 채널 반전 특성 관리 장치
US20100115353A1 (en) System and method for testing application-specific blocks embedded in reconfigurable arrays
Jone et al. An efficient BIST method for distributed small buffers
Nourmandi-Pour A programmable IEEE 1500-compliant wrapper for testing of word-oriented memory cores
KR100538286B1 (ko) 사용자 정의 메모리 내장형 자체 시험 회로의 자동 생성방법
JP2940207B2 (ja) 圧縮パターン生成方式
KR20020020862A (ko) 메모리 테스터 어드레스 채널 관리 장치

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MM4A Annulment or lapse of patent due to non-payment of fees