當前位置:首頁 > EDA > 電子設計自動化
[導讀]引言   SRAM有高速和不用刷新等優(yōu)點,被廣泛用于高性能的計算機系統(tǒng)。由于半導體工藝技術(shù)的提高以及存儲系統(tǒng)多方面的需要,存儲器件日益向高速、高集成方向發(fā)展,在使系統(tǒng)功能強大的同時,也增加了系統(tǒng)的復雜性

引言

  SRAM有高速和不用刷新等優(yōu)點,被廣泛用于高性能的計算機系統(tǒng)。由于半導體工藝技術(shù)的提高以及存儲系統(tǒng)多方面的需要,存儲器件日益向高速、高集成方向發(fā)展,在使系統(tǒng)功能強大的同時,也增加了系統(tǒng)的復雜性,給電路的故障診斷帶來了不小的困難[12]。由于存儲器功能和結(jié)構(gòu)的復雜性,設計者為了正確地處理數(shù)據(jù)和正常地運行用戶的程序,必須保證SRAM單元的尋址、取指令以及計算正確,對程序或數(shù)據(jù)存儲單元的正確操作是很重要的方面,因此保證存儲器的正常、穩(wěn)定工作是系統(tǒng)穩(wěn)定工作的前提。本文主要是通過對常見的SRAM故障問題的分析,運用March C算法,以FPGA構(gòu)建成的SRAM自檢測試電路對SRAM系統(tǒng)進行故障檢測與修復。

1 故障模型

  所謂故障模型,是指為了研究故障對電路或系統(tǒng)的影響,診斷(定位)故障的位置,對故障作一些分類并選擇最典型故障的過程。SRAM系統(tǒng)可抽象為一組互聯(lián)的功能模塊,故障在各個模塊均可發(fā)生。Van de Goor等人[3]將其簡化為地址譯碼器、讀寫邏輯、存儲器單元陣列3部分,并證明前兩者與后者的故障在功能上是等價的,所以只需要檢測存儲單元陣列故障。常見的SRAM故障模型主要分為以下幾個類型[4]:

① 固定故障(Stuck?At Faults, SAF)。陣列中的一個或多個單元的一位或多位固定為0或固定為1。

② 開路故障(Open Faults, OF)。陣列中的一個或多個單元開路到0或開路到1。

耦合故障(Coupling Faults, CF)。存儲單元中某些位的跳變導致其他位的邏輯值發(fā)生非預期的變化,既可以發(fā)生在不同單元之間。也可以發(fā)生在同一單元的不同位之間。將發(fā)生在兩個不同單元之間的耦合故障記為第一類耦合故障,將發(fā)生在同一單元不同位之間的耦合故障記為第二類耦合故障。

  第一類耦合故障又可分為翻轉(zhuǎn)耦合故障、冪等耦合故障以及狀態(tài)耦合故障等。翻轉(zhuǎn)耦合故障是存儲器Ci單元(稱耦合單元)中的跳變引起被耦合單元Cj中的邏輯值發(fā)生翻轉(zhuǎn)的故障。若用“?”表示邏輯值(0→1)的跳變,用“ ?”表示邏輯值(1→0)的跳變,而用“ ?”表示邏輯值的翻轉(zhuǎn),則這類故障可描述為<?;?>或<?;?>;冪等耦合故障是指在Ci中的值跳變時將Cj中的值固定為0或1,可描述為<?;0>、<?;1>或<?;0>、<?;1>[5];而狀態(tài)耦合故障則是在耦合單元處于一特定狀態(tài)時,被耦合單元被迫處于0或1,即<0;0>、<0;1>或<1;0>、<1;1>狀態(tài)。

  第二類耦合故障即同一單元不同位間的耦合也有類似的情況,但當寫信號很強時,同一單元不同位間的耦合就可能被淹沒,只呈現(xiàn)出寫入的信息。

④ 跳變故障(Transition Faults,TF)。陣列中的一個或多個單元的一位或多位無法在預期的時間內(nèi)完成數(shù)據(jù)從0到1或從1到0的跳變,記為<?;0>或<?;1>。這種故障看似可歸為固定故障,實質(zhì)則有所不同。它的狀態(tài)并非任何時刻都不跳變,當有翻轉(zhuǎn)耦合故障影響它時就會完成原本不能完成的跳變。

⑤ 由地址譯碼錯誤引起的單元陣列故障(Address Decoder Fault,AF)。它包括某地址不能訪問任何單元、某單元不能被任何地址訪問、某個地址可以訪問多個單元、某個單元可被多個地址訪問。

2 SRAM測試方法

  SRAM的測試方法主要有以下3種。

(1) 直接存取測試

  直接存取測試是產(chǎn)生一種測試結(jié)構(gòu)來允許對SRAM陣列的直接訪問。它通常利用自動測試設備進行測試,可以從封裝引腳直接對嵌入式存儲器進行訪問,或者可以從封裝引腳對測試狀態(tài)邏輯以及對一些為存儲器提供數(shù)據(jù)的流水線結(jié)構(gòu)中的串行狀態(tài)進行訪問,能夠輕易實現(xiàn)多種高質(zhì)量測試算法。其缺點是:在ATE機上實現(xiàn)的算法越復雜,對ATE機存儲器的容量要求越高;在ATE機上不易實現(xiàn)對嵌入式存儲器的“全速”測試,測試時鐘的工作頻率越高,測試成本越高;由于芯片外圍引腳的限制,對芯片內(nèi)大容量SRAM進行直接測試往往不大現(xiàn)實。

(2) 利用嵌入微處理器來間接測試存儲器

  在這種測試方法中,通過嵌入式微處理器對存儲器進行讀/寫操作,測試向量是一系列微處理器的程序代碼。這些代碼可以放在程序存儲器中,在嵌入式芯片接口處施加代碼,測試存儲器的過程就是微處理器執(zhí)行測試程序的過程。其優(yōu)點是不需要對硬件設計做任何修改,而且測試算法的修改與實現(xiàn)可以通過靈活修改微處理器代碼予以完成。

(3) 存儲器內(nèi)建自測試(MBIST)

  存儲器內(nèi)建自測試技術(shù)(Memory BuildIn Self Test, MBIST)的工作原理是在存儲器外圍產(chǎn)生一整套控制電路,包括數(shù)據(jù)發(fā)生、地址發(fā)生、控制產(chǎn)生以及結(jié)果比較等電路,實現(xiàn)芯片內(nèi)置存儲器測試模式的自動產(chǎn)生以及測試結(jié)果的自動判別。芯片外部的控制可以讓芯片自動進入內(nèi)部存儲器測試模式,MBIST不僅可以自動產(chǎn)生內(nèi)部測試模式,而且也可以實現(xiàn)并行測試。由于需要增加額外的邏輯電路,所以MBIST技術(shù)的缺點在于增加了芯片面積,并有可能影響芯片的時序特性。對于不同容量的存儲器,MBIST電路的規(guī)?;鞠嗤?。因此,隨著存儲器容量的增加,這種方法所增加的芯片面積所占的比例相對較小,而且這種測試技術(shù)還有很多其他技術(shù)優(yōu)勢。

  本文研究的是計算機內(nèi)的SRAM測試方法,由于待測SRAM位于計算機系統(tǒng)內(nèi)部,是該系統(tǒng)的關(guān)鍵部分,因此本文采用FPGA作為計算機系統(tǒng)與SRAM之間通信的橋梁,通過接收計算機發(fā)出的控制信號,自動產(chǎn)生一套SRAM自測試電路。

3 March C算法

  針對存儲器中的各種故障模型開發(fā)了多種存儲器測試算法,如March算法、Walking算法、Galloping算法等。其中March算法是較簡單的測試算法之一,具有較高的故障覆蓋率和較小的時間復雜度,所以March算法是最常用的存儲器測試算法。該算法經(jīng)過多次改進,出現(xiàn)了很多變種,如MATS、MATS+、March X、March C、March C等算法[6]。

  March C算法是由March元素構(gòu)成的序列,其基本原理是利用有限狀態(tài)機,反復對每一個地址進行讀/寫0或1操作,保證每兩個字節(jié)之間的測試碼出現(xiàn)00、01、10、11四種情況,至少各一次;并且為了檢查高低地址讀/寫順序故障,分別進行地址遞增和地址遞減兩種操作。通過對存儲器不斷地讀寫,能夠檢測幾乎所有的存儲器故障。

  在諸多的March C算法中,綜合考慮算法的故障覆蓋率及測試成本等因素,本文選用能夠有效檢測大多數(shù)存儲器簡化故障的March C算法。March C算法的具體描述如下[7]:

  其中,“?”表示地址的升序,“?”表示地址的降序,“ ?”表示兩種順序都可以;r0、w0、r1和w1分別表示讀0、寫0、讀1和寫1。M0~M5分別表示一個March單元,March C算法能夠有效檢測出 SAF、TF、CF、AF等故障。其中,SAF故障可由 M0、M1單元和 M1、M2單元檢測出;TF故障中0→1故障可由M3、M4單元檢測出,1→0故障可由M2、M3單元檢測出;在CF故障中,1→0故障可由M2、M3單元和M4、M5單元檢測出,0→1故障可由M1、M2單元和M3、M4單元檢測出,置1故障可由M2、M3單元和M4、M5單元檢測出,置0故障可由M1、M2單元和M2、M3單元檢測出;AF故障可以在March單元的連續(xù)升序/降序中得到檢測。

4 SRAM自測試電路的實現(xiàn)

  SRAM自測試電路是為了檢測存儲器的好壞和修復錯誤存儲單元而對其進行自檢的。文中自測試電路是由FPGA構(gòu)成,通過響應計算機系統(tǒng)的控制信號,由其產(chǎn)生一套完整的自檢測試電路。

4.1 硬件描述語言

  測試電路的產(chǎn)生可以通過硬件描述語言Verilog編程實現(xiàn)。用Verilog來進行電路設計,設計者可以進行各種級別的邏輯設計,以及數(shù)字邏輯系統(tǒng)的仿真驗證、時序分析、邏輯綜合。它是目前應用最廣泛的一種硬件描述語言。

  采用硬件描述語言進行設計時,由于硬件描述語言的標準化,可以很容易地把完成的設計移植到不同廠家的不同芯片中去,并在不同規(guī)模應用時較容易地作修改。它的信號位數(shù)是很容易改變的,可以很容易地對它進行修改,來適應不同規(guī)模的應用。在仿真驗證時,仿真測試矢量還可以用同一種描述語言來完成,因為采用硬件描述語言綜合器生成的數(shù)字邏輯是一種標準的電子設計互換格式(EDIF)文件,獨立于所采用的實現(xiàn)工藝。有關(guān)工藝參數(shù)的描述可以通過硬件描述語言提供的屬性表達,然后利用不同廠家的布局布線工具,在不同工藝的芯片上實現(xiàn)。

4.2 系統(tǒng)硬件

  計算機系統(tǒng)包含有多個外圍設備,在本系統(tǒng)中計算機與SRAM之間的通信通過FPGA來傳遞,計算機對FPGA的操作也就是對SRAM的操作。系統(tǒng)硬件電路結(jié)構(gòu)框圖如圖1所示。

圖1 系統(tǒng)硬件電路結(jié)構(gòu)框圖

  圖中的start信號線是測試啟動信號,上升沿有效;end信號線是測試結(jié)束信號線,上升沿有效;error是SRAM故障信號,高電平有效;addr為地址總線;data為數(shù)據(jù)總線;r/w為讀/寫信號線。系統(tǒng)時序圖如圖2所示,其中陰影部分為未知區(qū)域。

圖2 系統(tǒng)時序圖

  在系統(tǒng)正常工作時,計算機系統(tǒng)首先將地址信號、數(shù)據(jù)信號和讀寫控制信號傳至FPGA,通過FPGA內(nèi)部電路進行處理后將信號傳遞到SRAM端;當start信號線有效時,F(xiàn)PGA啟動自檢電路對SRAM進行故障檢測,并進行故障自校正;測試結(jié)束后輸出end有效信號,對于無法修復的故障則使error信號線有效。

4.3自檢電路硬件設計

  由FPGA構(gòu)成的自檢電路主要包括檢測控制電路、數(shù)據(jù)分析器和地址自校正器等部分[8],是對SRAM進行檢測的關(guān)鍵。SRAM自檢電路系統(tǒng)結(jié)構(gòu)框圖如圖3所示[910]。

圖3 SRAM自檢電路系統(tǒng)結(jié)構(gòu)框圖

  測試電路工作機制為在start信號有效時,自檢電路進入自檢狀態(tài)[11],自檢模塊的控制器部分首先通過使能信號cs1啟動地址校正器內(nèi)的自檢電路,屏蔽MCU_addr信號使test_addr、test_end和clk2工作;同時通過cs2啟動數(shù)據(jù)分析器,控制器具有產(chǎn)生地址和測試向量的電路,測試地址通過地址校正器輸出,測試向量通過SRAM_data數(shù)據(jù)線輸出,通過控制線r/w進行SRAM的讀寫,并通過數(shù)據(jù)分析器將讀到的數(shù)據(jù)進行分析;若有故障,則通過addr_error信號線通知地址校正器進行校正。在控制器按照March C算法進行測試完畢后,通過test_end信號線通知地址校正器,并使使能信號cs1和cs2無效。地址校正器接收到結(jié)束信號后,將故障單元映射到備用的SRAM存儲單元,若出現(xiàn)故障單元超出備用部分個數(shù)或其他無法完成映射的情況,則地址校正器輸出error信號。自檢模塊故障檢測完畢后進入正常工作狀態(tài)。

5 結(jié)論

  本文簡要地介紹了在SRAM中常見的若干故障模型,以及常用的測試方法, 最后提出了一種運用由FPGA構(gòu)成的存儲器自測試電路對SRAM進行檢測的方法。該檢測模塊不僅具有對存儲器故障檢測的功能,而且還能將產(chǎn)生故障的單元進行自校正,保證系統(tǒng)的穩(wěn)定運行。當系統(tǒng)有無法修復的故障時,該模塊會發(fā)出故障信號。通過SRAM自檢測電路的設計既提高了系統(tǒng)的穩(wěn)定性,又大大地降低了系統(tǒng)的故障率。該系統(tǒng)測試電路由硬件描述語言編程而來,所以測試電路具有很強的靈活性,便于以后的進一步設計。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉