[發明專利]隨機測試程序生成方法和系統以及設計驗證方法有效
| 申請號: | 200910083767.4 | 申請日: | 2009-05-11 |
| 公開(公告)號: | CN101551749A | 公開(公告)日: | 2009-10-07 |
| 發明(設計)人: | 王玲;沈海華;李潮激 | 申請(專利權)人: | 中國科學院計算技術研究所 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44;G06F17/50 |
| 代理公司: | 北京泛華偉業知識產權代理有限公司 | 代理人: | 王 勇;姜 華 |
| 地址: | 100190北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 隨機 測試 程序 生成 方法 系統 以及 設計 驗證 | ||
技術領域
本發明涉及微處理器的指令級功能驗證,特別涉及一種隨機測試程序 生成方法和系統以及相應的設計驗證方法。
背景技術
隨著設計規模的擴大,尤其是多核技術的發展,控制邏輯越來越復雜, 涉及的狀態空間也日益擴大,驗證在處理器設計過程中成為非常關鍵的一 步。指令級驗證是當前微處理器驗證中廣泛采用的方法。
當前生成測試程序的方法主要有人工手寫測試程序、約束隨機測試生 成以及覆蓋率驅動的測試生成。在超大規模集成電路(VLSI)的設計驗證 中,約束隨機測試生成是最主要的方法,對于那些采用隨機難以覆蓋到的 功能點,可以采用人工手寫測試程序的方法作為輔助。
雖然隨機生成的測試程序覆蓋面廣,可能覆蓋到設計和驗證人員完全 沒有想到的功能角落,但是大量隨機生成的測試向量也會造成驗證功能點 的重復覆蓋,延長驗證的收斂時間,降低驗證效率,因此需要在產生隨機 程序的同時人為加入一些約束,使之盡量不重復,從而更有效、更有針對 性的完成驗證任務。
隨機測試程序生成的方法和架構從90年代開始逐漸成熟,一般包括 兩部分:測試模板文件和隨機求解引擎。前者用來描述指令序列,如指令 的種類、變量的約束條件等;后者接受模板文件中提取出來的隨機變量和 約束信息,建立一個約束網絡,將問題轉成一個約束滿足問題(CSP: constraint?satisfaction?problem),求該約束滿足問題的均勻分布的隨機解。 針對約束求解問題,R.Dechter首先提出了桶消元方法用以計算推理網絡 的解空間,該方法不會引入過多的術語,可以用以計算約束滿足問題的解 空間。但是盡管桶消元法已經具有較低的內存開銷,它也是指數級的,不 能處理規模較大的約束滿足問題。因此,降低計數函數的維數成了當務之 急。
Dechter和Emek等人又提出劃分小桶的做法來減小時空問題,用多個 維數較小的計數函數來近似表示單個維數較大的計數函數。很明顯,小桶 消元法的精確度很大程度上依賴于小桶個數t的取值。實踐證明,t越大, 雖然空間復雜度降低,但所需的時間也相應增加,這就意味著需要在時間 和空間中折中。
綜上所述,采用現有的約束求解技術生成隨機測試程序具有很高的時 空復雜度,迫切需要一種簡易、高效地隨機測試程序生成方法,其隨機變 量所在的約束網絡的解空間的均勻度高,程序的冗余度和重復程度低,具 有更高的驗證廣度和深度。
發明內容
本發明提供一種隨機測試程序生成方法和系統,其目的在于提高當前 隨機測試程序生成中約束求解的均勻度,提高隨機驗證的效率。
根據本發明的一個方面,提供了一種隨機測試程序生成方法,包括下 列步驟:
1)編寫并解析指令模板,并構建約束網絡;
2)利用小桶間的相容度計算小桶的計數函數;
3)基于所述計數函數根據所述約束網絡來計算隨機變量的隨機解;
4)利用所述隨機解設置指令的操作數,生成由所述指令構成的隨機 測試程序。
在該方法中,所述步驟2)包括下列步驟:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院計算技術研究所,未經中國科學院計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910083767.4/2.html,轉載請聲明來源鉆瓜專利網。





