給芯片當“健康顧問”
3S綜合驗證平臺
CPU芯片是現代信息技術的引擎,是數據處理的核心。我們生活中用到的電腦、智能手機、電視機、電冰箱、汽車……其中都有芯片的身影,它的質量直接關系到千家萬戶的日常生活。
如今,芯片使用量正在呈指數級增長,對其質量的要求也越來越高。驗證、測試和容錯技術則是芯片質量保障的三道技術關卡。
中國科學院計算技術研究所,計算機體系結構國家重點實驗室常務副主任李曉維研究員帶領團隊自2000年起,在科技部、國家自然科學基金委和北京市科委相關項目的資助下,緊密結合國產高性能CPU芯片的研制,實現了測試驗證和片上容錯設計關鍵技術的突破。系列研究成果曾獲國家技術發明獎和國家科學技術進步獎,最新研究成果已在多款高性能CPU的設計驗證、測試與容錯設計中轉化應用,并獲得了2017年度北京市科學技術獎二等獎。
芯片也有“生病煩惱”
芯片雖然沒有生命,但也和其它生命體一樣面臨可靠性問題,通俗可以理解為芯片的“健康”問題。
修復軟件的故障(通常稱之為Bug)可以通過修改源代碼來實現,但是芯片的故障就不那么容易修復了。
例如在芯片設計的過程中可能會由于考慮不周,導致制造出的芯片發生功能故障。制造的過程中也會遭受芯片缺陷,導致邏輯正確的芯片仍然不能成為合格的產品,即便在服役期也會由于一些物理機理的作用產生老化等問題。
就像我們通過體檢可以查驗出身體可能會出現的健康問題一樣,對于芯片來說,“體檢”也是十分有必要的。
“簡單地說,設計過程中的問題需要通過驗證的方法來解決,制造過程中遭受的一些隨機雜質等因素造成的缺陷可以通過芯片測試來篩除,而服役期的可靠性則必須通過設置一定的容錯機制來保障了。”李曉維說。
這在很多特殊的應用領域具有非常重要的意義,也對芯片設計正確性的驗證和制造缺陷的檢測提出了迫切的需求。例如飛行在深空的航天裝備中的芯片如果出了問題很難更換,所以對可靠性的要求尤其嚴苛。
給芯片做“產檢”
要想讓CPU芯片一出生就“健康茁壯”,在芯片的IC設計階段,就要通過設計驗證來檢驗設計方案是否符合規范,發現不同設計階段引入的設計Bug。
“芯片作為人類工業史上最復雜的產業之一,設計驗證是其設計流程中的瓶頸,復雜芯片設計驗證所投入的人員和時間都已超過設計本身。”李曉維說。
測試和驗證是非常重要的環節。如果測試和驗證的環節有問題,將會導致有問題的處理器芯片組裝到系統里,將可能造成巨大的經濟損失。
例如,1994年Intel奔騰芯片的浮點除法錯誤,使Intel公司損失近5億美元,就是因為芯片在投產前未能保證設計的正確性,事后又未能測試出該問題。