TWI385550B - 互連架構狀態覆蓋率測量方法 - Google Patents
互連架構狀態覆蓋率測量方法 Download PDFInfo
- Publication number
- TWI385550B TWI385550B TW097147420A TW97147420A TWI385550B TW I385550 B TWI385550 B TW I385550B TW 097147420 A TW097147420 A TW 097147420A TW 97147420 A TW97147420 A TW 97147420A TW I385550 B TWI385550 B TW I385550B
- Authority
- TW
- Taiwan
- Prior art keywords
- states
- test suite
- architecture
- simulation
- state
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本發明有關於電腦系統領域,詳言之,關於協定之驗證方法。
半導體處理及邏輯設計之進步允許存在於積體電路裝置上之邏輯數量得以增加。此外,電腦系統已演化成涵蓋許多不同的功能,如傳統運算系統、儲存媒體系統、娛樂中心、音頻播放、視頻播放、伺服器等等。此外,已針對此更快速且更廣泛之功能設計出高性能協定以在電腦系統中轉移資訊。舉例而言,英特爾公司(Intel)的快速路徑架構(Quickpath Architecture)包括能夠以高速率傳送資料之高速、快取一致、序列點對點分層協定之協定架構。然而,隨著這些更先進的協定持續發展,協定架構之每一層的複雜度亦增加。
傳統上,確保正確操作之協定架構的驗證涉及角隅情況(亦即極端操作點或狀態)的人工識別。為了驗證協定實行之操作而在系統中誘發這些角隅情況。替代角隅情況或除了角隅情況之外,改變隨機操作變數/狀態以隨機驗證協定架構。
然而,這些參數及變數隨著複雜度增加而變得非常大。例如,對於具有多重代理器(agent)的複雜協定,可能的狀態之數量指數性地成長。因此,使人較難掌握潛在狀態之覆蓋空間。另外,目前的驗證方法經常無法追蹤已驗證了大量狀態的哪些。故,對於架構之已驗證量係更難獲得準確之可信度階層。
在下列說明中,提出各種特定細節,如特定協定架構、特定協定操作變數/參數、特定模型、特定驗證步驟等等之範例,以提供本發明更詳盡的了解。然而,對於熟悉該項技藝者而言很明顯地,不需利用這些特定細節來施行本發明。在其他例子中,並未詳細討論已知構件或方法,如互連協定/實行、正規互連模型發展/內容、特定詢問及其他特定操作細節,以避免不必要地模糊本發明。
在此討論之方法及設備為用於提供一種驗證策略,以有效率及有效地驗證複雜協定之實行。詳言之,主要參照快取一致的互連協定,如包括實質上依附英特爾的快速路徑規格之快取一致協定的高速點對點互連來說明互連協定的驗證而闡述驗證方法。然而,在此所述之方法及設備不如此受限,因其可實行於任何協定、互連架構層或其他多重代理器/參數系統上或與之關連。
參照第1圖,圖解互連系統之構件的多個互連之一實施例。如所示,描繪傳統多處理器系統之一部分。然而,在此所述之驗證方法可用於任何系統中,如單一處理器電腦系統、伺服器、嵌入式系統、行動系統及具有多電性代理器之其他系統。
在一實施例中,集線器125比擬晶片組。晶片組經常包含兩積體電路裝置,如記憶體控制器集線器(MCH)及互連控制器集線器(ICH)。在一實施例中,集線器125為MCH,將處理器106、111、116及121耦合至記憶體130。然而,集線器125可包括促進處理器及其他系統裝置間之通訊的任何積體電路。
記憶體130,如所示包括系統記憶體,以於運作時間的期間保持待存取之碼、資料及其他資訊。系統記憶體之一範例包括動態隨機存取記憶體(DRAM)。然而,任何記憶體可作為系統記憶體,如雙資料率(DDR)記憶體、同步動態RAM(SDRAM)、緩衝記憶體及其他已知記憶體裝置。此外,記憶體130不限於系統記憶體,且可包括其他已知記憶體裝置,如快閃記憶體裝置。
處理器插座105、110、115及120係用來將處理器106、111、116及121耦合至電路板,如印刷電路板(PCB)或母板。經常使用插槽及對應的封裝技術,如平面柵陣列(LGA)或針柵陣列(PGA)、球柵陣列(BGA)或其他已知的插座技術。處理器106、111、116及121經常稱為實體處理器,但可包括任何型式的處理元件,如微處理器、嵌入式處理器、多核心處理器、多線程處理器或信號處理器。
互連126,如所示,將處理器106、111、116及121耦合至集線器125。互連126常被稱為前端匯流排(FSB)。雖然,參照互連126及其協定來說明驗證,注意到在此討論之驗證方法可用於任何互連上,如I/O互連、記憶體匯流排或一起實行任何數量及型式的通訊協定之其他鏈結耦合代理器。實體上,互連126可利用平行匯流排、序列匯流排、多點匯流排、點對點匯流排、射型收發器邏輯(GTL)匯流排、GTL+匯流排、雙資料率(DDR)匯流排、差動匯流排或互連之其他已知的實體層/實行。作為一特定例示性的實施例,互連126包括高速序列點對點互連。
在一實施例中,互連126包括分層協定堆疊架構。互連架構的範例層包括提供裝置間之實體電性連結的實體層、輔助異動/請求/封包之定序的鏈結層以及實行不同型式的異動/請求/封包之異動層。這些層常見於互連架構中,如周邊構件互連快速(PCI Express)。然而,可出現其他層或協定成為互連架構之一部分。例如,實質上依附英特爾的快速路徑規格之互連架構包括不同異動及通訊協定,如快取一致協定。
如前述,互連之協定的驗證可包括平台中之任何互連,如輸入/輸出(I/O)匯流排、周邊構件互連(PCI)或PCI Express匯流排或記憶體匯流排,如記憶體匯流排127。連接集線器125至記憶體130之實體記憶體匯流排的常見範例包括基於DDR之匯流排、基於隨機存取記憶體(RAM)之匯流排或任何其他已知的記憶體匯流排或針對記憶體匯流排調適之其他匯流排。每一種型式的匯流排可與其本身之待驗證的通訊協定關連。
此外,協定之驗證方法不限於傳統桌上型電腦系統互連。例如,可以類似方式驗證網路協定、無線存取協定及其他複雜通訊協定。因此,無論驗證是針對實體互連、互連協定或其他協定,驗證目標可稱為架構、驗證對象及驗證目標。
參照第2圖,圖解待驗證之架構的可能狀態之覆蓋空間的覆蓋資料庫的一實施例。注意到,如上述,待驗證之架構一詞的使用可指待驗證之協定架構,如待驗證之快取一致協定、待驗證之其他協定、待驗證之實體互連或上述結合之驗證。
在一實施例中,資料庫201保持在儲存媒體200中。儲存媒體包括能夠保持電子資訊的任何儲存裝置,如碟、碟驅動器、記憶體、帶驅動器、外部儲存、暫時記憶體、依電性記憶體、非依電性記憶體、其他儲存裝置或機器可存取/可讀取媒體。注意到機器可存取媒體可包括載波或其他電子傳輸媒體,其從儲存媒體乘載或傳送資訊(如保持在資料庫201中之資訊)到待存取之電腦系統。
在一實施例中,針對架構之覆蓋空間資料庫包括在操作期間會遭遇的架構(如協定架構)之複數狀態。舉例而言,覆蓋資料庫包括架構之實行的所有可能的狀態,如架構之組態約束的模型。然而,在另一範例中,覆蓋資料庫包括架構實行之減少組的可能狀態。
例如,假設一互連之一協定層的正規模型係調整成互連的特定實行協定模型。在此,當變化變數/參數以達成特定實行協定內的不同狀態時,每一組變數可能潛在具有導致對稱狀態之對稱組的變數。因此,在此範例中,僅在資料庫201中保留一個對稱狀態,形成對稱減少組的互連狀態,其一般亦可稱為覆蓋空間。
作為驗證用之覆蓋空間的一過度簡化的範例,快取一致互連的快取一致協定之正規的模型係基於組態約束而定,如協定代理器之數量、協定代理器的種類等等。快取一致協定之驗證用的覆蓋空間包括根據每一協定代理器之變化代理器參數及/或一致性協定之變化的總體參數之所有可能的狀態或對稱減少組的可能狀態。
然而,針對複雜協定或互連,參數數量可能成長到可觀的數量。例如,針對特定協定實行,可能有多如100或更多參數。因此,每一參數之不同值的每一種組合可能導致極大量的可能狀態:即使係針對一協定之一特定實行。
在一實施例中,狀態係指參數、裝置、代理器及/或驗證對象之其他構件的狀態的快照。狀態亦可指架構或驗證對象的架構狀態。舉另一例而言,由在狀態之快照的參數值之組合界定狀態。因此,若針對一架構識別出一百個參數,則那一百個參數的不同值之每一種組合可能導致不同狀態。
由於針對複雜的協定狀態常指大量的參數,快取一致協定的狀態之一過度簡化範例包括將快取線保持在共享一致狀態中的一個處理器、將快取線保持在無效狀態中之兩個處理器及在處理器之一接收到窺探。在此,有多個協定代理器、保持在多個狀態中之多個快取線以及在特定目的地接收到之請求/訊息。因此,在單獨此簡單範例中,有不少參數。再舉例而言,乘載資料酬載的寫入異動可能導致多個狀態,因為可變化其他參數,如寫入之目的地、與待寫入之資料酬載關連之快取線的狀態、互連流量、其他代理器的寫入回應等等。
因此,在一實施例中,參數係指可被改變或放置於不同狀態中之協定、實體邏輯、裝置、代理器或總體狀態/變數內的任何元件。作為一特定範例,當驗證快取一致協定時,快取代理器之參數包括對於一窺探之快取回應。在此,快取回應參數之一值包括轉送窺探的快取線至請求的裝置,且快取回應參數之第二值包括寫入快取線到發源節點(home node)。其他常見的一致性協定參數包括不同類型的代理器、代理器回應、裝置回應、互連回應、訊息回應、回應類型、對於特定動作之其他回應、回應目的地、訊息、訊息類型、訊息目的地、請求、請求類型、請求目的地、快取類型、快取狀態、快取位置、暫存器狀態等等。
然而,由於任何架構(如實體互連、通訊協定或其他協定)可為驗證的對象,參數可涵蓋各式各樣的變數。可能的協定相關參數之非窮舉的例示性清單包括協定代理器的數量、協定代理器的類型、代理器之快取實行的類型、不同類型之協定代理器的數量、協定代理器之型式、協定代理器的狀態、協定代理器中或匯流排上之電路或狀態機的狀態、代理器識別符、協定請求的數量、請求類型、請求來源、請求目的地、請求狀態、所參照之作業、作業的來源、所參照之位址、所存取之位址、位址位置的狀態、資料酬載、協定代理器的狀態、快取的狀態、快取線的狀態及實體協定狀態參數,如電壓、頻率、功率狀態或其他實體協定屬性。
當欲驗證互連的實體層時,互連之實體參數的數個範例包括電壓、頻率、週期、展頻、抖動、雜訊等等,而其他參數包括互連相關狀態機的狀態、代理器的類型、代理器的狀態、代理器中之I/O電路的狀態等等。然而,架構內的任何變數元件可被視為參數。
由於覆蓋空間指數性地成長且使人難以理解,在一實施例中,資料庫201保持互連架構/實行之可能狀態的覆蓋空間。如所示,資料庫201的每一個項目,如項目250至257,代表互連實行之一種可能的狀態。因此,對項目250的參照與具有界定在欄位210中之參數值的狀態250的論述同義。在此,項目250之參數值欄位210係保持對應至狀態250之相關參數的數值。
在一實施例中,參數值欄位210分成複數欄位211、212、213及214。舉例而言,假設資料庫201係保持具有三個協定代理器之一致性協定的實行之覆蓋空間。在此,欄位211至213對應於三個協定代理器的每一個。在每一欄位內,以對應的參數預先界定或預先關連各數值,其可邏輯上視為子欄位。
例如,在針對第一代理器的欄位211中,欄位211之第一數值界定代理器的類型、第二數值界定第一代理器是否為發源節點、第三數值界定快取線的狀態等等。注意到對特定請求/動作之回應,如對窺探/讀取之回應,可能有數個變異值。例如,有四種不同回應之回應可能由具有四種可能組合之兩二進位位元代表,亦即,一、二、三及四;每一種組合代表一種可能的回應。
此外,欄位214可為包括所有代理器之總體參數的總體參數欄位。例如,對窺探之總體快取回應可轉送至發源節點,且因此,欄位214中的參數值代表那個快取回應。上述範例僅為例示性,因為任何數量的代理器及任何數量的參數(如數十、數百或數千個)可以任何形式呈現在欄位210中。另外,代表變化元件之上述任何已知方法可利用於欄位210中。
在另一實施例中,欄位210保持複數序列值,且欄位210內之數值的預定結構將各參數值與對應參數關連。舉例而言,欄位210中的第一數字代表總代理器數量、第二數字代表快取代理器數量、第三數字代表第一代理器對請求之回應、第四數字代表第二代理器對請求之回應等等。可知,在此,取代以代理器分裂參數,序列地列出參數。然而,代表參數之任何設計實行或形式可用於資料庫201中。
隨著互連的複雜度增加以及變數/參數的數量增加,資料庫201中待保持之狀態的數量亦大幅增加。因此,在一實施例中,各項目包括符記識別符欄位205以獨特地識別每一項目。例如,保持在欄位210中的數值參數值界定狀態250,亦即項目250,並且項目250的符記ID 205係根據項目250之欄位210中所保持的數值。
作為第一範例,利用數學演算法結合數值以獲得對應的符記ID。因此,若在參數欄位210中保持一百個數值,則在每一項目250至257中結合這一百值或其之一部分,以獲得每一項目250至257的獨特符記ID 205。注意到參數變化成不同數值時,符記ID會根據欄位210中之參數值的改變而變。例如,當對窺探參數之回應從第一回應(我們假設其由0代表)改變成第二回應(我們假設其由1代表),則符記識別符亦根據數值參數值的數學組合而變。可利用任何演算法來將數值參數值結合成符記ID。
在一實施例中,各項目250至257亦包括標記欄位215。標記欄位215當保持第一值,如未標記值,代表在模擬中並未遭遇對應的狀態。例如,當未標記標記欄位215時,在模擬中並未遭遇項目250,亦即狀態250。相反地,當項目250的標記欄位215更新成已標記值,則在模擬中遭遇到狀態250。因此,藉由在模擬期間標記,可稍後判斷在模擬中已經歷/遭遇過哪些狀態,且未遭遇哪些狀態。
結果為產生驗證對象(如協定、實體互連、其他層或架構)的覆蓋空間並可能用於驗證。在一實施例中,產生資料庫201並在儲存媒體上或透過儲存媒體提供作為後續驗證用。在此,可針對覆蓋空間(亦即資料庫201中所保持的可能狀態)的產生而界定驗證對象的任何實行層級。
例如,互連架構之正規模式可過濾成特定實行模型。取決於特定實行模型的約束,變化資料庫201中之狀態的數量。例如,若第一模型僅界定協定代理器的數量,則覆蓋空間可能非常大,因為許多其他參數可能仍會變化。相反地,若模型界定代理器數量、代理器類型、代理器之互連、某些協定約束,則可減少覆蓋空間。此外,當執行模型檢查器以探尋驗證對象之可能狀態時,則完整組或減少組之狀態儲存於資料庫201的項目中。可接著提供資料庫201給另一使用者,如客戶,以致能協定、互連或其他驗證對象的驗證。於下討論利用與資料庫201類似的資料庫來驗證互連架構的驗證方法。
茲參照第3圖,描繪確保在架構(如協定架構、實體互連架構、互連協定架構或其他架構系統)驗證期間架構狀態覆蓋率之方法的流程圖之一實施例。雖實質上序列且以特定順序顯示第3及4圖之流程,可平行或以任何順序執行流程之任何者。例如,流程430中之標記經常發生在模擬425期間,但亦可發生在模擬之後。此外,可與流程405至415平行或完全分離地進行一般測試套(generic test suite)之模擬。
亦注意到執行流程之任何者可為從機器可存取或可讀取媒體執行碼的結果。於下更詳細討論機器可存取或可讀取媒體,如製造物品。因此,編譯器、剖析器或其他可執行碼,當執行時,可插入指令、操作、功能呼叫及其他可執行碼或結構,以施行下列流程中所示的操作。此外,在一實施例中,可自動化參照第3及4圖所討論之每一流程。在一實施例中,自動化包括簡易程式(script)、剖析器或其他碼的執行以施行流程中的工作。另外,主碼或其他碼本身可呼叫下一流程或令下一流程(其亦可為自動化)被施行。
在流程300中,判斷驗證對象(如互連架構、協定架構或其他已知狀態或變數目標驗證)的可能狀態。如上述,在一實施例中,可能的狀態係指在操作期間可能遭遇到的架構之狀態。在此,可能的狀態係指參數、變數、電路及狀態機狀態以及任何其他已討論或已知的參數之快照。
例如,一互連架構之已識別的參數之特定值的組合可導致單一互連架構狀態。為了說明,在一致性協定中,一簡化範例狀態包括三個協定代理器,一代理器將快取線保持在擁有狀態中、兩代理器將其保持在無效狀態中、寫入到發源節點之窺探的總體回應以及接收窺探。在此,一致性協定係在一指定狀態中。然而,注意到當包括且變化其他變數/參數(未列出)時,那些指定參數實質上形成詢問。詢問可邏輯上檢視可能狀態的子集空間,亦即具有來自上述具有變化之其他參數的指定參數之狀態。
在一實施例中,一互連架構之正規模型過濾或調整成特定實行模型。在此,正規模型可包含架構/協定之規格,如待實行之一致性協定的約束之完整正規模型。在一實施例中,正規模型包括實質上依附英特爾之快速路徑規格的一致性協定之正規模型。然而,正規模型可包括協定、架構、互連、互連層或其他驗證對象之任何模型。在一實施例中,資料庫201係保持正規模型之狀態的覆蓋空間。
然而,在完整規格內,可利用互連架構之特定實行。因此,可根據特定實行之特定組態約束來過濾、調整及/或變更正規模型。例如,在一致性協定中,可指定代理器數量,以及代理器類型或其他資訊。一旦獲得實行特定模型,則執行模型檢查器或其他工具,來判斷互連架構之可能狀態的覆蓋空間。如上述,覆蓋空間可包括實行模型的所有可能狀態或減少組的可能狀態,如對稱減少組的狀態。
接著在流程305至流程310中,載入一般測試套並執行以模擬。在一實施例中,模擬環境包括暫存器轉移階層(Register Transfer Level;RTL)模擬環境。舉例而言,創造RTL環境以模擬運作期間架構的運作。一般測試套誘發/模擬會發生的正常動作以著重於一致性協定之不同路跡(trace)及狀態。例如,可將特定已知困難的異動或組態包括在一般測試套中以測試協定在運作期間不會故障。一般測試套亦可包括隨機情況、流量及活動以致能協定狀態之隨機驗證。注意到可針對任何驗證對象(如實體互連層或其他協定)利用類似的一般測試套模擬。
在流程315中,提供在一般測試套的執行/模擬期間未遭遇到之複數可能狀態數量之反饋以形成目標測試套。在此,於流程316中,判斷在模擬期間未遭遇到或經歷之可能的架構狀態。在一實施例中,針對此判斷利用類似第2圖之資料庫201的資料庫。如上述,資料庫可保持可能狀態的覆蓋空間,其可為驗證對象之所有可能狀態或其之一些減少的子集。
舉例而言,於資料庫中標記在模擬期間遭遇到的狀態。注意到資料庫201之符記ID可用來索引資料庫並標記正確的項目。因此,當完成模擬時,在資料庫201中標記了所有已經歷過的狀態。所以,保持在資料庫201中未被標記之任何可能狀態係判斷成在模擬期間並未遭遇到。
在流程317中,判斷指向未遭遇到之可能狀態的目標測試套。在一實施例中,詢問資料庫以判斷未遭遇之狀態。例如,當未遭遇到大量狀態空間,亦即某些參數組合為相同時,此常稱為漏洞或縫隙。舉例而言,假設未遭遇到一種狀態,其中第一處理器將線保持於共享狀態、第二處理器將線保持在共享狀態以及從第三處理器接收窺探。注意到具有100個參數且僅這三個參數為常數的資料庫邏輯上會產生大量未遭遇的狀態,亦即包括這三個參數且變化其餘97個的每一個狀態。換言之,會產生非常大的縫隙或漏洞,因為在模擬期間並未遭遇到大量具有類似參數之狀態以確保正常運作。
因此,在一實施例中,將狀態資訊反饋到正規模式或其他模型,以判斷出從初始狀態到未遭遇狀態之路跡。換言之,判斷到達未遭遇狀態在架構中需要發生什麼。接著利用此資訊來建立目標測試套,其可能誘發模擬中之路跡到達未遭遇之狀態或其之某部分。
在此,可以上述路跡資訊或其他資訊變更一般測試套以指向未遭遇狀態。然而,目標測試套無需指向所有未遭遇的可能狀態。事實上,在具有非常多可能狀態之極端複雜的互連中,極難指向每一種可能狀態。因此,目標可能為僅達成一可信度階層,亦即驗證狀態之某百分比,而非遭遇所有狀態。注意到亦可有縫隙/漏洞可信度階層目標百分比以確保驗證數個縫隙/漏洞中之至少一些狀態。結果為一些使用者分析或程式分析可判斷未遭遇之可能狀態的子集,以涵蓋漏洞、縫隙或角隅情況供驗證。
如上述,當執行目標測試套時,其意圖誘發或模擬一般測試套的執行/模擬期間未遭遇到的可能架構狀態。此外,由實際使用者或透過碼的執行來指向縫隙、漏洞、角隅情況、已識別之困難狀態或其他可能狀態來智慧性選擇未遭遇之可能狀態的子集。
返回到流程310,以與一般測試套類似的方式執行/模擬目標測試套。在此,亦可在資料庫中標記下新遭遇的狀態。此外,可遞回式重複反饋迴路315以進一步指向尚未遭遇之其他可能狀態或重新指向先前所指向但在模擬期間未遭遇到之可能的狀態。
茲參照第4圖,描繪確保架構驗證覆蓋的有效率模擬之方法/策略的流程圖之一特定過度簡化例示性實施例。在流程405至417中,根據架構之特定實施例的組態約束來過濾正規模型,運轉模型檢查器以探尋已過濾之特定實行模型的可能狀態之覆蓋空間,且將覆蓋空間儲存在資料庫417中。
注意到於上,覆蓋空間可包括架構/驗證對象之所有可能的架構狀態或減少組的狀態,如對稱減少組的狀態。並且,資料庫417可比擬第2圖之資料庫201,其中資料庫的一項目對應至覆蓋空間的一架構狀態。在此,各項目包括界定對應至該項目之架構狀態之架構參數的至少複數參數值、根據複數參數值之符記識別符(ID)以及標記欄位。
在此,在產生資料庫後立即或稍後平行地施行驗證與模擬。例如,提供諸如協定架構之架構的規格或模型之公司可額外或替代地提供來自流程417之資料庫給客戶以致能互連之有效率的模擬及驗證。亦可提供一般測試套及其他碼/簡易程式。
無論如何,在產生及/或提供資料庫後,在流程425中,模擬來自流程420之一般測試套。在所示的實施例中,施行暫存器轉移階層(Register Transfer Level;RTL)模擬。然而,可利用任何語言,碼,模擬器或其他已知的模擬/驗證工具來模擬架構之運作。在模擬期間或模擬之後,於流程430中在流程417的資料庫內標記下已遭遇之架構的狀態。如上述,可利用各狀態/項目之符記ID來索引資料庫417。注意到可替代地利用任何其他鑰匙,如一般資料庫鑰匙來索引資料庫。
在此,在流程435中判斷保持在資料庫中未被標記之覆蓋空間的可能狀態,其於流程425中之模擬期間並未遭遇/經歷過。根據此判斷,在流程440中發展/判斷目標測試套,以指向模擬期間未遭遇到之覆蓋空間的可能狀態。如上述,可利用自動化軟體來指向縫隙及漏洞,還有其他狀態,並且將其反饋回模型以判斷指向那些狀態的路跡/資訊。注意到並不一定指向所有未遭遇的可能狀態,可智慧性選擇目標狀態以遭遇角隅狀態、已知問題狀態及狀態覆蓋中之縫隙/漏洞,還有一些隨機指向狀態,以提供額外覆蓋。接著在模擬流程425中使用目標測試套,並且標記新遭遇之資料庫項目/狀態。可遞回式施行此程序直到達成可能狀態的足夠驗證覆蓋。
因此,由上可知,在此描述複雜架構(如複雜協定、複雜互連及其他複雜驗證對象)之有效率且自動化之驗證方法。先前,協定及互連較不複雜,讓使用者可以掌握覆蓋空間並提供足夠的測試套來確保驗證期間之可信度。然而,使用資料庫來保持架構狀態之覆蓋空間,可以電子形式來掌握複雜的架構。此外,藉由標記模擬期間所遭遇之狀態,亦可掌握遭遇到及未遭遇到之狀態數量。根據此,可發展出目標測試套以確保達成覆蓋空間之足夠的驗證。結果為不僅可掌握架構之驗證可信度階層,亦可透過未模擬狀態之遞回指定來達成其。
在此所用之值包括數字、狀態、邏輯狀態或二進位邏輯狀態之任何已知的表現。經常,邏輯位準或邏輯值的使用亦稱為1及0,其簡單地代表二進位邏輯狀態。例如,1係指高邏輯位準且0係指低邏輯位準。在一實施例中,儲存單元,如電晶體或快閃單元,能夠保持單一邏輯值或多個邏輯值。然而,已使用電腦系統之值的其他表現。例如,十進位的數字十亦可以1010的二進位值及十六進位字母A表現。因此,一值包括能夠被電腦系統保持之資訊的任何表現。
再者,可以值或值之部分代表狀態。舉例而言,第一值,如邏輯一,可代表內定或初始狀態,而第二值,如邏輯零,可代表非內定狀態。另外,重設及設定之詞,在一實施例中,分別指內定及更新值或狀態。例如,內定值可能包括高邏輯值,亦即重設,而更新值可能包括邏輯低值,亦即設定。注意到可用任何值的組合來代表任何狀態數量。
於上提出之方法、硬體、軟體、軔體或碼的實施例可經由儲存在機器可存取或機器可讀取媒體上並可由處理元件執行的指令或碼加以實行。機器可存取/可讀取媒體包括任何提供(亦即儲存及/或傳送)機器(如電腦或電子系統)可讀取形式之資訊的任何機制。例如,機器可存取媒體包括隨機存取記憶體(RAM),如靜態RAM(SRAM)或動態RAM(DRAM)、ROM、磁或光儲存媒體、快閃記憶體裝置、電性儲存裝置、光儲存裝置、聲儲存裝置或其他形式的傳播信號(如載波、紅外線信號、數位信號)之儲存裝置等等。例如,機器可透過接收傳播信號(如載波)來從可保持待於傳播信號上傳送之資訊的媒體來存取儲存裝置。
此說明書中所有對「一實施例」或「實施例」的參照意指連同此實施例所述之特定特徵、結構或特性係包括在本發明的至少一實施例中。因此,在說明書各處出現的「在一實施例中」或「在實施例中」詞組並非絕對都參照相同的實施例。此外,可在一或更多實施例中以任何適當方式結合特定特徵、結構或特性。
在上述說明中,已參照特定範例實施例提供詳細說明。然而,很明顯地,可做出各種變更及修改而不背離在所附之申請專利範圍中所提出的本發明之較廣泛精神及範疇。因此,說明書及圖式僅為例示性而非限制性。此外,上述實施例及其他範例語言的使用並非絕對參照至相同的實施例或相同的範例,而可參照不同且分別的實施例,以及潛在相同的實施例。
106、111、116、121...處理器
105、110、115、120...處理器插座
125...集線器
126...互連
127...記憶體匯流排
130...記憶體
200...儲存媒體
201...資料庫
205...符記ID
210...參數值欄位
211、212、213、214...欄位
215...標記欄位
250~257...項目
藉由附圖之圖示舉例而非限制性地說明本發明。
第1圖圖解包括將系統之構件耦合在一起之不同的互連之系統的一實施例。
第2圖圖解儲存媒體之一實施例以保持架構組態用之覆蓋空間資料庫。
第3圖圖解確保架構的驗證覆蓋率之方法的流程圖之一實施例。
第4圖圖解確保互連架構的驗證覆蓋率之另一方法的流程圖之一實施例。
Claims (27)
- 一種互連架構狀態覆蓋率測量的設備,包含:儲存媒體,保持覆蓋資料庫,該覆蓋資料庫包括第一數量的項目,其對應至互連協定架構之第一數量的可能狀態,其在該互連協定架構操作期間可能會遭遇到,其中對應至該第一數量的可能狀態之一可能狀態之該第一數量的項目之一項目包括複數參數值,該些參數值的每一個代表針對該一可能狀態該互連協定架構之關連變數參數的值,其中該覆蓋資料庫適於在模擬期間用以驗證該互連協定架構的實行。
- 如申請專利範圍第1項所述之設備,其中該第一數量的項目之該一項目進一步包括符記識別符,該符記識別符係基於該複數參數值之演算式組合。
- 如申請專利範圍第2項所述之設備,其中該第一數量的項目之該一項目進一步包括標記欄位,其回應於暫存器轉移階層(RTL)模擬遭遇該一可能狀態而被更新成已標記值。
- 如申請專利範圍第1項所述之設備,其中該複數參數值在該第一數量的項目之該一項目中群組成該複數參數值之參數值總體群組以及該複數參數值之複數參數值代理器群組,且其中該參數值總體群組係對應至該架構之總體參數,並且該複數參數值代理器群組之每一個包括該架構 之特定代理器參數值。
- 如申請專利範圍第1項所述之設備,其中該互連協定架構係選自由快取一致協定架構、異動層協定架構及鏈結層協定架構之群組。
- 如申請專利範圍第1項所述之設備,其中該關連參數獨立選自由不同類型的代理器、代理器回應、裝置回應、互連回應、訊息回應、回應類型、對特定動作之其他回應、回應目的地、訊息、訊息類型、訊息目的地、請求、請求類型、請求目的地、快取類型、快取狀態、快取位置及暫存器狀態所構成之群組。
- 如申請專利範圍第6項所述之設備,其中該第一數量的可能狀態包括在檢查該架構之模型的模型檢查器之執行期間所探尋到之每一種狀態。
- 如申請專利範圍第6項所述之設備,其中該第一數量的可能狀態包括在檢查該架構之模型的模型檢查器之執行期間所探尋到之每一種狀態的對稱減少組。
- 一種非暫時性的機器可讀取媒體,包括確保協定架構之有效率驗證的程式碼,當由機器執行該程式碼時,該程式碼令該機器執行下列自動化操作:判斷於協定實行之一般測試套的模擬期間所未經歷之在該協定實行的參考資料庫中所保持之第一數量的狀態,其中在協定實行之一般測試套的模擬之前,該參考資料庫保持協定實行之所有可能的相關狀態;以及發展目標模擬測試套,當針對該協定實行模擬時,指 向在該一般測試套模擬期間未經歷之複數該第一數量的狀態。
- 如申請專利範圍第9項所述之機器可讀取媒體,其中判斷於協定實行之一般測試套的模擬期間所未經歷之在該協定實行的參考資料庫中所保持之第一數量的狀態包含:針對協定實行模擬一般測試套;標記保持在該參考資料庫中在該一般測試套模擬期間已經歷過之第二數量的狀態;回應於在該一般測試套模擬期間標記該第二數量的狀態之後未被標記之該第一數量的狀態,判斷在參考資料庫中所保持於該一般測試套的模擬期間所未經歷之該第一數量的狀態。
- 如申請專利範圍第10項所述之機器可讀取媒體,其中發展目標模擬測試套,當針對該協定實行模擬時,指向在該一般測試套模擬期間未經歷之複數該第一數量的狀態包含:識別在該一般測試套的模擬期間所未經歷之該複數第一數量的狀態;判斷從初始狀態到該一般測試套的模擬期間所未經歷之該複數第一數量的狀態之複數路跡(trace);以及在該目標模擬測試套中建立該複數路跡,當針對該協定實行模擬時,指向該複數第一數量的狀態。
- 如申請專利範圍第11項所述之機器可讀取媒體, 其中識別在該一般測試套的模擬期間所未經歷之該複數第一數量的狀態係回應於該參考資料庫之自動詢問。
- 如申請專利範圍第10項所述之機器可讀取媒體,其中當由該機器執行該程式碼時,進一步令該機器執行下列操作:模擬該目標模擬測試套;以及標記在該目標模擬測試套模擬期間所經歷之在參考資料庫中所保持之該複數第一數量的狀態。
- 一種非暫時性的機器可讀取媒體,包括確保驗證對象之有效率驗證的程式碼,當由機器執行該程式碼時,該程式碼令該機器執行下列自動化操作:根據驗證對象之複數參數來判斷該驗證對象的可能狀態之覆蓋空間;根據對應一可能狀態之該複數參數的複數對應之值來計算該些可能狀態之覆蓋空間內的該可能狀態之對應的符記識別符;將該可能狀態之該對應的符記識別符以及該複數對應值儲存在資料庫之項目中;在判斷用於驗證對象的所有可能狀態的覆蓋空間之後,模擬用於驗證對象的一般測試套;反應於遭遇在模擬用於驗證對象的一般測試套期間可能的狀態,製作關聯可能狀態的資料庫之項目;以及當對驗證對象模擬時,提供目標測試套以在模擬一般測試套之後反應於未製作的資料庫項目指向可能的狀態。
- 如申請專利範圍第14項所述之機器可讀取媒體,其中該驗證對象選自通訊協定、網路協定、無線協定、一致性協定、互連協定及實體互連架構之群組。
- 如申請專利範圍第14項所述之機器可讀取媒體,其中根據複數互連參數來判斷驗證對象的可能狀態之覆蓋空間包含:根據該驗證對象之複數組態約束來調整該驗證對象之正規模型;以及執行模型檢查器,以經由該複數參數之變異來探尋該驗證對象之所有可能的狀態,以形成可能狀態之該覆蓋空間。
- 如申請專利範圍第14項所述之機器可讀取媒體,其中根據對應一可能狀態之該複數參數的複數對應之值來計算該些可能狀態之覆蓋空間內的該可能狀態之對應的符記識別符包含:使用演算法來結合該複數對應的值以獲得該對應的符記識別符。
- 如申請專利範圍第16項所述之機器可讀取媒體,進一步包含:模擬該驗證對象之一般測試套;回應於在該驗證對象之該一般測試套模擬期間遭遇到該可能狀態,標記與該可能狀態關連之該資料庫的該項目;以及提供目標測試套,當針對該驗證對象模擬時,指向回應於在模擬該一般測試套之後未被標記之該資料庫的該項 目之該可能狀態。
- 一種互連架構狀態覆蓋率測量的方法,包含:判斷互連協定架構之複數可能狀態;根據該複數可能狀態之每一個的數值參數來計算該複數可能狀態之每一個的識別符;儲存該複數可能狀態之每一個的該識別符以及該複數可能狀態之每一個的該數值參數於資料庫中;模擬用於互連協定架構的一般測試套;反應於遭遇在模擬用於互連協定架構的一般測試套期間可能的狀態,製作關聯可能狀態的資料庫之項目;以及當對驗證對象模擬時,提供目標測試套以在模擬一般測試套之後反應於未製作的資料庫項目指向可能的狀態。
- 如申請專利範圍第19項所述之方法,其中判斷架構之複數可能狀態包含:根據複數組態約束過濾正規模型以形成該架構之實行模型,以及對該實行模型執行模型檢查以判斷該架構之該複數可能狀態。
- 如申請專利範圍第19項所述之方法,其中判斷架構之複數可能狀態包含:根據複數組態約束過濾正規模型以形成該架構之實行模型、對該實行模型執行模型檢查以判斷該架構之所有可能的狀態,以及減少該所有可能的狀態之複數對稱狀態以判斷該複數可能的狀態。
- 如申請專利範圍第19項所述之方法,其中根據該複數可能狀態之每一個的數值參數來計算該複數可能狀態之每一個的識別符包含利用預定數學演算法來結合該複 數可能狀態之每一個的該些數值參數,以計算該複數可能狀態之每一個的該識別符。
- 一種互連架構狀態覆蓋率測量的方法,包含:判斷互連協定架構之數個可能的狀態;執行一般測試套以模擬該互連協定架構之運作;以及根據在執行該一般測試套期間未遭遇到之複數該數個可能的狀態來提供反饋以形成目標測試套,當執行該互連協定架構的進一步模擬操作時,其指向在該一般測試套期間未遭遇到之至少一部分的該複數該數個可能的狀態。
- 如申請專利範圍第23項所述之方法,其中該互連協定架構包括快取一致性協定架構。
- 如申請專利範圍第23項所述之方法,其中判斷架構之數個可能的狀態包含:根據複數組態約束將該架構之正規模型過濾成該互連協定架構之特定實行模型;以及執行模型檢查器,以判斷該架構之該特定實行模型的該數個可能狀態。
- 如申請專利範圍第23項所述之方法,進一步包含:儲存該數個可能的狀態之每一個的表現於資料庫的項目中,其中該資料庫的每一項目係包括參數欄位、符記識別欄位及標記欄位,該參數欄位保持與界定與該項目關連之該數個可能狀態的一可能狀態之複數參數關連的複數數值,該符記識別欄位保持根據該複數數值之符記識別符,且當標記欄位更新成已標記值時,指示在執行該一般測試套 期間已遭遇到該可能狀態。
- 如申請專利範圍第26項所述之方法,其中根據在執行該一般測試套期間未遭遇到之複數該數個可能的狀態來提供反饋以形成目標測試套,當執行該目標測試套時,其指向在該一般測試套期間未遭遇到之該複數該數個可能的狀態包含:回應於在執行該一般測試套期間遭遇到該數個狀態之該可能狀態,將該資料庫之每一項目的該標記欄位更新成已標記值;根據與該複數該數個可能狀態的每一個關連之保持未標記值的該標記欄位,判斷未遭遇之該複數該數個可能的狀態;以及變更該一般測試套以形成該目標測試套。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/965,158 US20090171647A1 (en) | 2007-12-27 | 2007-12-27 | Interconnect architectural state coverage measurement methodology |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200941266A TW200941266A (en) | 2009-10-01 |
TWI385550B true TWI385550B (zh) | 2013-02-11 |
Family
ID=40435804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW097147420A TWI385550B (zh) | 2007-12-27 | 2008-12-05 | 互連架構狀態覆蓋率測量方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20090171647A1 (zh) |
EP (1) | EP2079032A1 (zh) |
JP (1) | JP2009157928A (zh) |
CN (1) | CN101482858B (zh) |
RU (1) | RU2430409C2 (zh) |
TW (1) | TWI385550B (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8108197B2 (en) * | 2008-12-04 | 2012-01-31 | International Business Machines Corporation | Method to verify an implemented coherency algorithm of a multi processor environment |
US8751714B2 (en) * | 2010-09-24 | 2014-06-10 | Intel Corporation | Implementing quickpath interconnect protocol over a PCIe interface |
US8667255B2 (en) | 2010-09-30 | 2014-03-04 | International Business Machines Corporation | Measuring runtime coverage of architectural events of a microprocessor |
US9792405B2 (en) | 2013-01-17 | 2017-10-17 | Edico Genome, Corp. | Bioinformatics systems, apparatuses, and methods executed on an integrated circuit processing platform |
US10847251B2 (en) | 2013-01-17 | 2020-11-24 | Illumina, Inc. | Genomic infrastructure for on-site or cloud-based DNA and RNA processing and analysis |
US10691775B2 (en) | 2013-01-17 | 2020-06-23 | Edico Genome, Corp. | Bioinformatics systems, apparatuses, and methods executed on an integrated circuit processing platform |
US9679104B2 (en) | 2013-01-17 | 2017-06-13 | Edico Genome, Corp. | Bioinformatics systems, apparatuses, and methods executed on an integrated circuit processing platform |
US10068054B2 (en) | 2013-01-17 | 2018-09-04 | Edico Genome, Corp. | Bioinformatics systems, apparatuses, and methods executed on an integrated circuit processing platform |
CN103150264B (zh) * | 2013-01-18 | 2014-09-17 | 浪潮电子信息产业股份有限公司 | 一种基于扩展型Cache Coherence协议的多级一致性域仿真验证和测试方法 |
US9859394B2 (en) | 2014-12-18 | 2018-01-02 | Agilome, Inc. | Graphene FET devices, systems, and methods of using the same for sequencing nucleic acids |
US9857328B2 (en) | 2014-12-18 | 2018-01-02 | Agilome, Inc. | Chemically-sensitive field effect transistors, systems and methods for manufacturing and using the same |
US9618474B2 (en) | 2014-12-18 | 2017-04-11 | Edico Genome, Inc. | Graphene FET devices, systems, and methods of using the same for sequencing nucleic acids |
WO2016100049A1 (en) | 2014-12-18 | 2016-06-23 | Edico Genome Corporation | Chemically-sensitive field effect transistor |
US10006910B2 (en) | 2014-12-18 | 2018-06-26 | Agilome, Inc. | Chemically-sensitive field effect transistors, systems, and methods for manufacturing and using the same |
US10020300B2 (en) | 2014-12-18 | 2018-07-10 | Agilome, Inc. | Graphene FET devices, systems, and methods of using the same for sequencing nucleic acids |
WO2016154154A2 (en) | 2015-03-23 | 2016-09-29 | Edico Genome Corporation | Method and system for genomic visualization |
EP3281137B1 (en) * | 2015-04-09 | 2024-10-23 | Illumina, Inc. | A genomics analysis platform for executing a sequence analysis pipeline |
US10068183B1 (en) | 2017-02-23 | 2018-09-04 | Edico Genome, Corp. | Bioinformatics systems, apparatuses, and methods executed on a quantum processing platform |
US20170270245A1 (en) | 2016-01-11 | 2017-09-21 | Edico Genome, Corp. | Bioinformatics systems, apparatuses, and methods for performing secondary and/or tertiary processing |
US20210124853A1 (en) * | 2016-04-05 | 2021-04-29 | Hewlett Packard Enterprise Development Lp | Simulation based on precomputed results of the simulation |
WO2017201081A1 (en) | 2016-05-16 | 2017-11-23 | Agilome, Inc. | Graphene fet devices, systems, and methods of using the same for sequencing nucleic acids |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW429721B (en) * | 1998-07-31 | 2001-04-11 | Lucent Technologies Inc | Method for two party authentication and key agreement |
TW447206B (en) * | 1999-07-19 | 2001-07-21 | Jang Jen Cheng | Security protocols for end-to-end mobile users with double authentication |
US6763103B1 (en) * | 1999-03-27 | 2004-07-13 | Wavetek Wandel Goltermann Eningen Gmbh & Co. | Method and arrangement for netwide call trace in a telecommunication network |
US6892319B2 (en) * | 2000-09-08 | 2005-05-10 | Hewlett-Packard Development Company, L.P. | Method for verifying abstract memory models of shared memory multiprocessors |
TW200524358A (en) * | 2004-01-12 | 2005-07-16 | G Tek Electronics Corp | Cross validation method of plural wireless communication protocols and device thereof |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6292765B1 (en) * | 1997-10-20 | 2001-09-18 | O-In Design Automation | Method for automatically searching for functional defects in a description of a circuit |
US6009488A (en) * | 1997-11-07 | 1999-12-28 | Microlinc, Llc | Computer having packet-based interconnect channel |
US6263301B1 (en) * | 1998-08-19 | 2001-07-17 | Cadence Design Systems, Inc. | Method and apparatus for storing and viewing data generated from a computer simulation of an integrated circuit |
US6892171B2 (en) * | 2001-02-28 | 2005-05-10 | Intel Corporation | Method for modeling a reflected electrical wave in a digital simulation |
US7024589B2 (en) * | 2002-06-14 | 2006-04-04 | International Business Machines Corporation | Reducing the complexity of finite state machine test generation using combinatorial designs |
US7283944B2 (en) * | 2003-12-15 | 2007-10-16 | Springsoft, Inc. | Circuit simulation bus transaction analysis |
US7716473B1 (en) * | 2004-04-09 | 2010-05-11 | Cisco Technology, Inc. | Methods and apparatus providing a reference monitor simulator |
US7788646B2 (en) * | 2005-10-14 | 2010-08-31 | International Business Machines Corporation | Method for optimizing integrated circuit device design and service |
US7493247B2 (en) * | 2005-12-07 | 2009-02-17 | Dafca, Inc. | Integrated circuit analysis system and method using model checking |
WO2007066319A1 (en) * | 2005-12-08 | 2007-06-14 | Mentor Graphics Corporation | Conversion of switching signals of a circuit simulation into a transaction model |
-
2007
- 2007-12-27 US US11/965,158 patent/US20090171647A1/en not_active Abandoned
-
2008
- 2008-12-05 TW TW097147420A patent/TWI385550B/zh not_active IP Right Cessation
- 2008-12-11 EP EP08171388A patent/EP2079032A1/en not_active Withdrawn
- 2008-12-17 JP JP2008320936A patent/JP2009157928A/ja active Pending
- 2008-12-26 RU RU2008151962/08A patent/RU2430409C2/ru not_active IP Right Cessation
- 2008-12-29 CN CN2008101889972A patent/CN101482858B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW429721B (en) * | 1998-07-31 | 2001-04-11 | Lucent Technologies Inc | Method for two party authentication and key agreement |
US6763103B1 (en) * | 1999-03-27 | 2004-07-13 | Wavetek Wandel Goltermann Eningen Gmbh & Co. | Method and arrangement for netwide call trace in a telecommunication network |
TW447206B (en) * | 1999-07-19 | 2001-07-21 | Jang Jen Cheng | Security protocols for end-to-end mobile users with double authentication |
US6892319B2 (en) * | 2000-09-08 | 2005-05-10 | Hewlett-Packard Development Company, L.P. | Method for verifying abstract memory models of shared memory multiprocessors |
TW200524358A (en) * | 2004-01-12 | 2005-07-16 | G Tek Electronics Corp | Cross validation method of plural wireless communication protocols and device thereof |
Non-Patent Citations (2)
Title |
---|
Ahmed Sobeih, Mahesh Viswanathan, Jennifer C. Hou ,"Check and Simulate : A Case for Incorporating Model Checking in Network Simulation" ,IEEE 2004,http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1459810 * |
Serdar Tasiran, Yuan Yu, Brannon Batson,"Using a Formal Specification and a Model Checker to Monitor and Direct Simulation" , ACM 2003,June2-6, 2003,http://www.cecs.uci.edu/~papers/compendium94-03/papers/2003/dac03/pdffiles/23_1.pdf * |
Also Published As
Publication number | Publication date |
---|---|
JP2009157928A (ja) | 2009-07-16 |
TW200941266A (en) | 2009-10-01 |
US20090171647A1 (en) | 2009-07-02 |
EP2079032A1 (en) | 2009-07-15 |
RU2430409C2 (ru) | 2011-09-27 |
RU2008151962A (ru) | 2010-07-10 |
CN101482858A (zh) | 2009-07-15 |
CN101482858B (zh) | 2013-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI385550B (zh) | 互連架構狀態覆蓋率測量方法 | |
US6698003B2 (en) | Framework for multiple-engine based verification tools for integrated circuits | |
WO2014110922A1 (zh) | 一种基于扩展型Cache Coherence协议的多级一致性域仿真验证和测试方法 | |
US10140403B2 (en) | Managing model checks of sequential designs | |
CN115130402B (zh) | 一种缓存验证方法、系统、电子设备及可读存储介质 | |
US20120227021A1 (en) | Method for selecting a test case and expanding coverage in a semiconductor design verification environment | |
US9430595B2 (en) | Managing model checks of sequential designs | |
US6810507B2 (en) | Method and apparatus for isolating the root of indeterminate logic values in an HDL simulation | |
US20240046147A1 (en) | Systems and methods for administrating a federated learning network | |
US7346482B1 (en) | Shared memory for co-simulation | |
US8756543B2 (en) | Verifying data intensive state transition machines related application | |
de Lima Jr et al. | Synthesis of dependency-aware traffic generators from NoC simulation traces | |
Defo et al. | Verification of a CAN bus model in SystemC with functional coverage | |
Ariyamparambath et al. | A highly efficient modeling style for heterogeneous bus architectures | |
Naidu et al. | Design and verification of slave block in Ethernet management interface using UVM | |
US7231616B1 (en) | Method and apparatus for accelerating test case development | |
Brady et al. | Counterexample-guided SMT-driven optimal buffer sizing | |
US20070245282A1 (en) | Systems, Methods, and Media for Using Relative Positioning in Structures with Dynamic Ranges | |
Luk et al. | Optimization of Multiscale Fusion Plasma Simulations within the ComPat Framework | |
Bhadra et al. | Validating power architecture™ technology-based MPSoCs through executable specifications | |
Ji et al. | Formal and model driven design of a high speed data transmission channel | |
Blume et al. | Petri Net Based Modelling of Communication in Systems on Chip | |
Wachs | Specifying and Validating Memory Protocols for Chip Generators | |
Sivaranjani et al. | Design and Verification of Low Latency AMBA AXI4 and ACE Protocol for On-Chip Peripheral Communication | |
German et al. | A tutorial example of a cache memory protocol and RTL implementation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |