TW594513B - Apparatus and method for in-circuit emulation using high-level programming language - Google Patents
Apparatus and method for in-circuit emulation using high-level programming language Download PDFInfo
- Publication number
- TW594513B TW594513B TW090124545A TW90124545A TW594513B TW 594513 B TW594513 B TW 594513B TW 090124545 A TW090124545 A TW 090124545A TW 90124545 A TW90124545 A TW 90124545A TW 594513 B TW594513 B TW 594513B
- Authority
- TW
- Taiwan
- Prior art keywords
- interface
- design
- patent application
- scope
- block
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
-
- 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
-
- 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
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
- G06F30/331—Design verification, e.g. functional simulation or model checking using simulation with hardware acceleration, e.g. by using field programmable gate array [FPGA] or emulation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Quality & Reliability (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
Description
594513 A7 B7 五、發明説明(1 ) 發明之界定範圍 本發明一般係有關一透過模擬來驗證一些邏輯電路功 能之方法。更明確地說,本發明係有關藉由一以一高階程 式設計語言來敘述晶片設計中之邏輯電路功能而模擬出彼 等之方法。 發明之背景 一内含積體電路之半導體晶片Γ晶片”)的成功設計, 隨著此等晶片和彼等集成此等晶片之系統的複雜性之迅速 增加,而需要有日益增加之努力和時間。由於在此等晶片 製造之前,最好能消除彼等設計程序中之設計錯誤,一晶 片設計廣泛採納的,是彼等邏輯電路設計之驗證。在各種 驗證方法中,有一種模擬方法,是嘗試驗證一在設計上準 備用於某一目標系統中之晶片的邏輯電路功能之功能正確 性。 傳統上,一邏輯電路功能之驗證,是由軟體或硬體製 作模型或兩者之組合來加以執行。一軟體製作模型,係依 據或者一類似C/C++之高階程序設計語言,或者一類似 VHDL和Verilog之硬體描述語言(HDL),經由軟體來敘述其 邏輯電路行為。美國專利編號第6,009,256號,揭露了一種 ”SEmulation系統’’,其可容許指定一 HDL内之電路的結構 和功能,以及可產生該電路之一軟體模型或硬體模型。美 國專利編號第6,058,59號,揭露了一種基於一 HDL之類似 的邏輯電路模擬器。 然而,隨著一邏輯電路設計之愈變愈複雜,特別是隨 4 (請先閲讀背面之注意事項再填寫本頁) 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 594513 五、發明説明(2 A7 B7 著晶片上系統之成長,其邏輯電路設計和系統内驗證所需 時間量之縮短,將變得極其重要。其邏輯電路設計前期之 邏輯電路模擬’較佳的是使用一易於HDL寫碼除錯及執行 較快之軟體程式設計語言,諸如C或C++。 在驗證過上述轉合至周圍硬體系統或一目標系統之邏 輯電路的功能行為後,該邏輯電路可以人為操作或可能以 某一自動工具,被分割成一些可分別具現成硬體和軟體之 部分。此一方法比起傳統HDL式模擬方法,將可顯著地節 省其設計與驗證之時間。 美國專利編號第4,901,259號,揭露了一種"ASIC(特殊 應用積體)模擬器",其可使軟體程式設計語言中之模型與 HDL中者,能夠在一經由界面連接至一目標系統之通用電 腦上面執行。基本上,一與外在電路界接而可接收軟體製 作模型所產生之所有接腳信號的一般化接腳1/〇同步器,全 係由軟體製作模型來加以執行。上述之ASIC模擬器系統, 可計算上述製作模型内所包含之接腳信號值,以及接著可 將此等接腳信號值,轉換成一些電氣信號,以便將此等值 傳送至上述目標系統之一插孔。該等主電腦與ASIC模擬器 間之通訊,係由所有接腳所需許多之接腳信號值所組成。 然而’當需要快速之模擬時,美國專利編號第 4,901,259唬中所敘述之”八81(:模擬器,,,將會出現一些問 題。首先,上述主電腦所使用之軟體,在執行整個有關一 些可供外在界面部分使用之接腳信號的產生之處理上是緩 慢的。其次,其經由一成熟之主電腦的"0埠之通訊速度, 本紙張尺度_中a國家標準(CNS) Μ規格⑽ (請先閲讀背面之注意事項再填寫本頁)
594513 A7 __ B7 _ 1、發明説明(3 ) 一 ^ 與一處理器速度相比較,一般而言是很緩慢的。第三,該 主電腦在執行上述邏輯電路之演算法上是很緩慢的,因為 其係使用一通用型控制系統,而無法將其計算資源,獨獨 致力於執行該演算法。 已有一些工具被開發出來,可自動將上述之C-語言敘 述式晶片設計,轉換成一暫存器轉移層次(RTL)之描述。然 而,此等工具是被用於測試一些類似特定用途積體電路 (ASIC)之孤立中複雜晶片。換言之,其是不可能驗證一被 安裝在一目標系統内之C-語言敘述式晶片,因為一晶片連 同其目標系統之驗證,依據該目標系統,將需要界接種類 繁多之外在裝置。 所以,在此仍存在需要有一種模擬器,其可對一以類 似c或C++等高階程式設計語言來敘述及配合其目標硬體 系統(·’電路内”)環境之晶片設計,提供一快速而有效之模 擬。 本發明之概要 本發明提供了一種裝置與方法,可在一晶片設計之整 早階段期間,用以高速地驗證該晶片設計配合一所希望之 目標系統中的邏輯電路功能。為完成上述之目標,其邏輯 電路功能之演算法行為,係由一類似C或C++之高階程式設 计浯5來加以敘述。該邏輯電路功能之演算法,接著將會 在該主電腦内被編譯,以及可使下截至本發明之模擬器。 本發明之模擬器,包含有一處理機模組和一接腳信號 產生器模組,前者至少具有一處理器,而後者至少具有一 本紙張尺度適用中_家標準(⑽A4規格(2歡四7公楚)"~" C請先閲讀背面之注意事項再填寫本頁) 、可| 594513 A7 ~· - η_ — Β7 五、發明説明(4 ) ^ ——- 可程式化邏輯電路裝置,諸如一實地可程式化閑陣列,或 -可程式化邏輯電路|置。該處理機模組,可執行上述以 -高階程式設計語言敘述之演算法的編譯碼,而該接腳信 號產生器模組,可產生一些與一目標邏輯電路之外部界面 相容的接腳信號。上述之裝置進一步包含一監視或除錯區 塊,糟以提供-種可觀察該等接腳信號之波形而供除錯或 監視目地用之設備。 本發明之方法包含-晶片設計流程,其中之輸入/輸出 (I/O)變數,將被用以轉譯成一些1/〇功能。該等1/〇變數係 代表上述需要與該目標系統相互作用之晶片所執行之演算 法中的軟體變數。該等1/0變數將被轉譯成其對應之1/〇功 能’藉以容許該演算法,援用一接腳信號產生器之外部界 面。 圖示之簡單說明 第1圖係一内含本發明電路内模擬器之電路模擬系統 的總方塊圖; 第2圖係一可用以執行一内部邏輯電路功能之處理機 的方塊圖; 第3圖係一可用以產生一外部界面所需接腳信號之接 腳信號產生器(PSG)的方塊圖; 第4圖係一身為一部份上述PSG之解碼器區塊的方塊 圖; 第5圖係一身為一部份上述PSG之中斷處理器的方塊 圖; 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公楚) 1 (請先閲讀背面之注意事項再填寫本頁) 、可_ 594513 A7 I-----------____ 五、發明説明(5 ) 第6圖係一身為一部份上述pSG之除錯區塊的方塊圖; 第7圖係一身為一部份上述psG之界面程式庫的方塊 圖;而 第8圖則係彼等轉譯、編譯、和邏輯電路合成處理之流 程圖,其包括產生彼等編譯碼和網路列表。 較佳實施例之詳細說明 第1圖係顯示本發明之一模擬環境的概觀。此環境包括 一模擬器10,其具有一處理機(PE) 101和一接腳信號產生 器(PSG) 102。該模擬器可與一主電腦u通訊,後者可將一 以某一類似C或C++等程序設計語言寫成之演算法,編譯成 一編譯碼。此編譯碼將會接著經由一通訊埠14,而傳達至 上述模擬器10之記憶體(未明示於第丨圖中)。任一通訊協定 或方法,均可被用來將該編譯碼傳送進上述之模擬器1〇内。 該環境亦包括一已設計好晶片最終將安裝其上之目標 系統12。此目標系統12,通常將包括一可用以使上述模擬 器10與連通之插孔121,和其他可用以分別與另一模擬器 | 13、IC 124、和分立邏輯電路123連通之插孔122。上述模 擬器13係一附加之模擬器,其可為任一種類,包括與本發 明之種類相同的模擬器。 上述之處理機101,可依據一目標晶片之應用例,執行 4目“邏輯電路之内部邏輯功能,諸如信號處理、調變/ 解调、或編密/解密等功能。上述之接腳信號產生器(PSG) 102,具有一或多之可程式化裝置,諸如一實地可程式化閘 陣列(FPGA),或-可程式化邏輯電路裝置(pLD),彼等可 本紙張尺度適财關家標準(CNS).A4規格(21GX297公釐) I---—
.、一-Γ— (請先閲讀背面之注意事項再填寫本頁) 594513 A7 _________B7 _ 五、發明説明(6 ) 被配置使與該目標系統12上面之其他ic 124和分立邏輯電 路123界接。一旦配置好了,彼等將會產生一些至上述目標 系統之讀取/寫入/控制信號。該等處理機l〇1*pSG 1〇2, 可依據任何傳統式或專屬性通訊機構,諸如pci(週邊組件 互連)匯流排或AGP(加速圖形埠),經由一通道15,而彼此 互相通訊。 上述PSG 102所產生之接腳信號,將會施加至上述目 標系統12之插孔121。由於此插孔121之接腳配置,係受制 於上述之目標系統,其可使用一插孔轉接器16(未明示於第 1圖内)’使上述PSG 102之接腳,連接至上述插孔121之對 應接腳。 第2圖係本發明之處理機(pE) 1〇1的一個較佳實施例 之明細方塊圖。此PE係包含一或多可用以執行編譯碼之 處理器2G1、202,和-或多可用以儲存-下載之編譯碼和 此編譯碼執行時之暫時資料的記憶體203、204。該PE亦包 含一可使該等處理器與記憶體相連接之主控匯流排2〇5。一 編譯好之程式碼,係自一主電腦1卜經由-通訊埠14,下 載至該等記憶體2〇3、204。 上述之PE 10卜進一步包含一PSG起始器214,其可配 置上述PSG 102之FPGA或PLD,使彼等能至少作用如上述 目標系統12之-外部界面。該步包含一中斷控制器 可接收些來自上述包括PSG 102之處理機内的其 他區塊之中斷請求,以解決彼等請求之爭用。其一pci匯 l排06可連接一些包括該等psG起始器和中斷控制器之 衣紙張尺度顧(2Κ)χ297ϋΓ"-—-
、τ (請先閲讀背面之注意事項再填窝本頁)
乃 4513 A7 —_B7__ 五、發明説明(7 ) PCI區塊。該PE進一步包含一些包括時鐘產生器、功率調 節器、等等之雜項邏輯電路212。 其一主橋路208,可使上述之主控匯流排205,連接至 該等處理器2(Π、202、記憶體203、204、和PCI匯流排206。 其一 X-匯流排橋路209,可使上述之PCI匯流排206,連接 至一 X·匯流排207,其中之X-匯流排,可為一類似ISA匯流 排之工業標準匯流排。其系統R〇M(唯讀記憶體體)211,可 儲存上述PE 101内所有硬體零組件所需之起始或啟動程式 碼。其一供應通訊埠14之通訊裝置210,可使得此PE 101, 能與上述之主電腦11通訊。該通訊裝置,可為任一傳統式 裝置,譬如,一通用非同步收發器(UART)、通用串列匯流 排(USB)、或並行通訊裝置。 第3圖係例示上述接腳信號產生器(PSG) 102之一實施 例,其中,該等處理機101與PSG 102間之通道15,係一PCI 匯流排。上述之PSG 102,一旦被該PSG起始器214配置好, 將包括一 PCI控制器區塊300、一解碼器區塊301、一中斷 處理器區塊302、一除錯區塊303、和一或多之界面程式庫 區塊304、305。其PCI控制器區塊300,可控制上述之PCI 匯流排206,資料係經由其在上述處理機101與其他連接至 位址/資料匯流排306和控制匯流排307之PSG區塊301、 302、303、304、305 間做交換。 當上述之處理機101,需要來回於上述之PSG 102讀取 /儲存資料時,其係使用一標準PCI通訊協定,來定址該等 PSG區塊301、302、303、304、305。上述之PCI控制器區 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 10 (請先閲讀背面之注意事項再填寫本頁)
594513 A7 __B7 五、發明説明(8 ) 塊3 00 ’可監控上述PCI匯流排206上面之一位址,是否屬 該等PSG區塊中的一個。若然,上述之解碼器區塊3〇 J,將 會依據一預定之位址映射圖,進一步執行決定何者區塊被 定址。一旦有一區塊被該位址選定,彼等來自上述處理機 101之資料,便會經由上述之PCI匯流排2〇6,被傳送至此 選定之區塊。 上述之除錯區塊303,可儲存該等界面程式庫區塊 304、305之輸入/輸出(I/O)訊號,以便除錯上述晶片以 C/C++寫成之軟體模型,和/或上述目標系統之硬體。上述 之中斷處理器區塊302,可供上述psg 102内之多數爭用區 塊303、304、305,用以有效地與上述之處理機1〇1通訊。 該等界面程式庫區塊304、305,係依據至少一外部界面模 型做配置,以及可產生一些與上述目標系統12界接所需之 實際接腳信號。 第4圖係顯示上述解碼器區塊3〇1之一實施例,其係包 含一位址解碼器40和一控制邏輯電路41。其位址解碼器 40,可透過上述之位址/資料匯流排3〇6,接收一些位址輸 入信號,以及可產生一些控制信號42,而至上述以^ 1〇2 内之對應區塊。該控制邏輯電路41,可透過上述之控制匯 流排307,接收一些控制信號(被顯示為位址選通信號43、 資料請求信號44),可控制其位址解碼器4〇,以及可產生一 資料認可信號45。 第圖5係顯示上述中斷處理器區塊3〇2之一實施例,其 可接收一些來自除錯區塊3 〇3和界面程式庫區塊3〇4、3〇5 ΐ紙張尺度⑽)纟4祕⑵QX297公爱) ――~ ----- (請先閲讀背面之注意事項再填寫本頁)
594513 A7 ___B7 五、發明説明(9 ) 之狀態資訊5 7。此中斷處理器,可產生一中斷請求信號5 3 和一些中斷向量52,而在選定該等中斷向量中的一個後, 經由上述之PCI控制器區塊3 〇〇(顯示在第3圖中),而被傳送 至上述位於處理機101内之中斷控制器213(顯示在第2圖 中)。 此範例係顯示一可使用一優先順序編碼器5〇自多重請 求信號57選定其最高優先順序之中斷向量52的簡單實施 例。雖然此範例係顯示一固定之優先順序機構,本技藝之 專業人員將可理解到,任何優先順序選擇機構均可被採 用,諸如輪流式(round-robin)或公平為主(fairness-based) 優先順序。其控制邏輯電路51,可控制上述之優先順序編 碼器50,可產生該中斷請求信號53,以及可接收該中斷認 可信號54。 第6圖係上述除錯區塊3〇3之一範例,其可取樣該等界 面程式庫區塊304、305之I/O信號,以及可將彼等儲存至一 取樣資料儲存器62,後者可被具現為一記憶體,環式佇列 型儲存器,或任何類型之儲存器。其一接腳信號取得控制 器60,可分別經由連接線66、67,控制一觸發事件控制器 61和取樣資料儲存器62。該觸發事件控制器61,係由該接 腳信號取得控制器60來加以配置,以便受到該等處理器 201、202之控制,而於該等預定之信號樣式中的一個,或 此等信號之組合出現時,產生一觸發事件信號。一旦該觸 發事件#唬產生出,上述之接腳信號取得控制器6〇,便會 使上述之可取樣資料儲存器62,停止儲存彼等取樣之資 Ϊμ張尺度適财關家⑵_7么$ — (請先閲讀背面之注意事項再填寫本頁)
594513 A7 B7 五、發明説明(1〇 ) 料,以及將會藉由一狀態信號63,將其狀態報告給上述之 中斷處理器區塊302。最後,上述取樣資料儲存器62所儲存 (請先閲讀背面之注意事項再填寫本頁) 之取樣資料,將會被一可監控輸入/輸出信號與軟體變數之 接腳信號分析器所使用。 訂· 第7圖係例示該等各與上述目標系統12之接腳界接的 界面程式庫區塊304、305之一實施例。彼等來自pE 1〇1而 經由PCI匯流排15和PCI控制器區塊300之界面控制命令和 輸出資料,係分別儲存在彼等命令佇列器71和輸出佇列器 72内。彼等接腳信號78,係根據其控制邏輯電路所生之 控制信號序列而產生。彼等來自目標系統12之輸入信號, 係儲存在其輸入佇列器73内,以及最後會被移轉至上述之 處理機101。該等輸入佇列狀態74和輸出佇列狀態75,係表 示彼等對應緩衝儲存器區塊之狀態,以及係經由上述之控 制匯流排307,連接至上述之中斷處理器區塊302。 第8圖係一例示一些導至一根據本發明之較佳實施例 所製編譯模擬模型之完成的步驟之流程圖。 一描述一在設計上可與上述目標系統内之真實硬體互 相作用的晶片之邏輯功能的程式,將需要一套適當之界面 功能。此等界面功能,可依據一些列舉出如何來回於上述 目標系統内之硬體來產生及接收接腳信號之預定規格,與 该程式通訊,以及與該硬體互相作用。上述程式内代表一 至該硬體之閘道的變數,係稱做輸入/輸出(1/〇)變數。其一 可與上述界面功能通訊之硬體具現體,係稱做其界面程式 庫0
594513 A7 —--B7__ 五、發明説明(11 ) 一以某一高階程式設計語言來敘述而製作一晶片所要 執行之演算法的模型,並不區別彼等要做處理之資料,是 否來回於外部裝置作輸入/輸出,因為該演算法本身,並= 關注於其處理之資料來源或目的地。此外,上述之界面規 格’即與外部裝置/電路相互作用之方式,實際上係獨立於 一代表一晶片之内部功能的演算法。所以,本發明可允許 一使用者,以一些I/O變數,指定上述涉及到與外部裝置通 Λ之同階程序設計語言的程式之有關部份。此一步驟係稱 做一應用程式設計界面(API)之插入。 上述身為I/O變數之界面資訊,係包括一或多之輸入/ 輸出通訊協定、讀取匯流排周期、寫入匯流排周期、和一 基礎位址,後者係該通訊協定需要一位址匯流排時之一記 隐體位置。有了此一資訊,該等輸入/輸出變數,將可被轉 換成最後將連接至上述界面程式庫之對應1/〇功能。其可就 該晶片之每一界面產生一 I/O功能。 舉例而言,假如一 I/O變數” a”需要被讀取,則有一分 派給’’a”之通訊協定,將會被用來讀取自上述之目標系統資 料如下· data=a+bn,將會被轉換成,’dataio—read(P〇RT A) ’ 而 ”a=datan ’ 將會被轉換成 ”i〇—write(P〇RT—A,data),,。 其中,a 為一 I/O 變數,以及 ”i〇一read()” 和”i〇—wrhe(),,兩 者,係一些I/O功能。有了此一轉換計劃,一至某一變數之 存取,將變為其對應功能之執行。 在該API程式以I/O功能替代1/0變數之同時,其一驅動 程式建立器,可產生該等I/O功能之程式碼,以及製備一些 ----------^___ 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公楚) -14 -
、τ. (請先閲讀背面之注意事項再填寫本頁) 594513 A7 ___ ___B7_ 五、發明説明(η ) 類似可支援I/O功能之並行作業特徵的多線串 (multi-threading)等額外之功能。 該等I/O變數各分派有上述PSG 1〇2(如上文所述之 ”PORT—A”)獨有之一埠(亦叫界面程式庫),藉以將一要遵 循之通訊協定,通知至上述之!>8(} 1〇2。換言之,存取該 等I/O變數,將導至上述模擬晶片之一或多接腳的激勵。一 I/O變數之存取樣式,將決定該][/〇之方向,亦即,一讀取 存取思4曰忒負料需要被一輸入界面通訊協定移轉,以及一 寫入存取意指該資料要被輸出至一上述目標系統之一組 件。 上述之界面模型’將會被轉換成一HDL式硬體模型, 其繼而會如同上文有關該PSG1〇2之結構的說明,被合成或 映射至上述PSG 102内之PLD。 首先’其要被具現至一目標晶片内之邏輯功能的演算 法801,係使用一傳統式文書編輯程式8〇〇,以一高階程式 語言’諸如C/C++或其等價體來做描述而逐步展開。該高 階程式設計語言,亦可為C語言之一變體,諸如Systernc或 SpecC。假如該外部界面係屬一標準外部裝置,彼等界面 程式庫,便可藉由以一硬體描述語言(HDL)程式碼813來 描述彼等而加以製備。就一使用者定義之標準而言,其一 使用一傳統式文書編輯程式812或FSM編譯程式814之有限 狀悲機(FSM)模型815 ’係被用來敛述該界面之行為。由於 該目標晶片,一旦被安裝在上述之目標系統12上面,將會 與該目標系統12可能多數之其他部分交換資料或信號,其 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公楚) 15 (請先閱讀背面之注意事項再填寫本頁) •訂— 594513 A7 _______B7 _ 五、發明説明(I3 ) 將需要許多界面程式庫,來容許資料在互相同意之通訊協 定中做交換。一旦此等界面程式庫被完成,彼等將會被一 界面程式庫管理程式816,登錄進一界面程式庫資料庫817 内。 其次,該等I/O變數和彼等對應之界面程式庫,將會在 步驟802中被指定及決定。 第三,其一轉譯程式803,可將上述之C語言程式碼演 算法801 ’轉換成一修正式c語言程式碼8〇4,而使其包括 步驟802中所指定之界面功能。 第四,上述修正之C語言程式碼804,將會在該主電腦 11内,被一 C δ吾5編澤程式8 0 5,編譯成一可被上述模擬器 10内之處理機102執行之編譯碼806。 與此等步驟平行地,彼等在步驟8〇2中被選定而指明為 HDL程式碼808之界面程式庫,將會由其PSG建立器8〇7來 產生。该HDL程式碼808,繼而會被其邏輯合成器809合成 一要被映射進上述PSG 102之PLD或FPGA内的網路列表 810 〇 誠如上文所述,本發明能夠藉由產生一些外部界面所 需之適當接腳信號,而快速及有效地模擬一晶片設計。本 發明可藉由允許在一要被執行之晶片設計的極早階段期間 模擬其設計,而顯著地減少該晶片設計與系統開發之時 間。本發明業已成功地被應用來驗證多種應用中之某些晶 片設計,諸如MPEG2視頻解碼器、MP3解碼器、和無線數 據機。 财關緖準(CNS) A4規格(21GX297公釐^ —_、一-^ (請先閲讀背面之注意事項再填寫本頁)
594513 A7 _B7 _ 五、發明説明(14 ) 雖然本發明業已參照一些較佳實施例做了說明,本技 藝之專業人員將可輕易理解,在不違離本發明之精神與範 圍下,將可對所說明之實施例做成許多之修飾 17 (請先閱讀背面之注意事項再填寫本頁) 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 594513 A7 B7 五、發明説明(1S ) 元件編號對照 10.. .模擬器 11·.·主電腦 12…目標系統 13.. .模擬器 14···通訊埠 15…通道 16·.·通訊埠 40···位址解碼器 41…控制邏輯電路 42…控制信號 43·.·位址選通信號 44…資料請求信號 45···資料認可信號 50…優先順序編碼器 51···控制邏輯電路 5 2…最高優先順序之中斷 向量 5 3…中斷請求信號 54…中斷認可信號 5 5…區塊選擇信號 5 6…§買取/寫入入信號 57···狀態資訊、多重請求 60···接腳信號取得控制器 61···觸發事件控制器 62…取樣資料儲存器 63.··狀態信號 64··.讀取/寫入入信號 65.··區塊選擇信號 66,67…連接線 70·.·控制邏輯電路 71…命令佇列器 72…輸出佇列器 73.··輸入佇列器 74…輸入佇列狀態 75…輸出佇列狀態 76···讀取/寫入入信號 77.··區塊選擇信號 78···接腳信號 101…處理機(PE) 102…接腳信號產生器(psg) 121…插孔 122…插孔 123·..分立邏輯電路 124".IC(積體電路) (請先閲讀背面之注意事項再填寫本頁) 、可| 18 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 594513 A7 B7 五、發明説明(l6 ) 201,202.··處理器 203,204…記憶體 205…主控匯流排 206.. .PCI匯流排 207.. . X-匯流排 208.. .主橋路 209.. . X_匯流排橋路 210…通訊裝置 211…ROM(唯讀記憶體體 212.. .雜項邏輯電路 213…中斷控制器 214.. .PSG起始器 300.. .PCI控制器區塊 301…解碼器區塊 302…中斷處理器區塊 303.. .除錯區塊 304,305…界面程式庫區塊 3 0 6…位址/資料匯流排 ) 307···控制匯流排 (請先閲讀背面之注意事項再填寫本頁) 19 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐)
Claims (1)
- a8 修正本I 一 ---- ___ 六、申請專利範圍 第90124545號申請案申請專利範圍修正本92年9月12日 1· -種可用以驗證一晶片設計之電路内模擬裝置,其被分 贼與—具有外部電路之目標系統相通訊之内部邏輯 電路設計和外部介面設計,該電路内模擬裝置包括: -處理機(PE)’其執行該㈣邏輯電路設計之編譯 碼定義函數’其中該編譯碼根據至少-種介面協定從連 接至該電路内模擬裝置之一主電腦下載;和 . 一接腳信號產生器(PSG),其透過一通訊機構與該 PE連接,用以根據該外部介面設計產生一些接腳信 號,並即時儲存該等接腳信號、以及至少一個當該PE 執行該邊譯碼時由該外部電路響應該接腳信號所產生 的響應信號, 其中該PE與該PSG藉由利用介面控制封包通訊。 2·如申請專利範圍第丨項之裝置,其中該即更包括至少一 微處理機。 3·如申請專利範圍第1項之裝置,其中該PE進一步包括一 可與該主電腦通訊之工具。 4·如申請專利範圍第1項之裝置,其中該PE進一步包括一 可用以配置PSG之PSG起始器。 5·如申請專利範圍第1項之裝置,其中該PE係使用一些實 地可程式化閘陣列(FPGAS)來加以具現。 6·如申請專利範圍第1項之裝置,其中該PE係使用一些可 程式化邏輯裝置(PLD)來加以昇現。 • 7·如申請專利範圍第!項之裝置,其中該至少一介面通訊 協定,係更包括一標準介面通訊協定。 本紙成尺度適用中國國家標芈(〇!S) A4规格(2]()><297公發) (請先閲讀背面之注意事項再填窝本頁) •訂· 20 Λ8 B8 〜-------— D8 申請專利範園^~~ ~— 如中凊專利範圍第1項之裝置,其中該至少_介面通訊 9協疋,係更包括一使用者定義之通訊協定。 ^申睛專利範圍第8項之裝置,其中該psG係更包括一 可用以登錄上述使用者定義之通訊協定的有限狀態機 (FSM) 〇 如申凊專利範圍第1項之裝置,其中該通訊機構在該等 E#PSG間,進一步包括一用以交換該介面控制封包之 匯流排。 •如申清專利範圍第1項之裝置,其中該pSG更包括·· 一藉由該等接腳信號和該等至少一個響應信號來 疋義用於與5亥目標系統中之該外部電路通訊之一介面 協定的介面程式庫區塊; 一可用以儲存編譯碼執行期間該等接腳信號及該 等至少一個響應信號的除錯區塊; 一中斷處理區塊,用以從該介面程式庫區塊以及該 除錯區塊發出之多個中斷請求中選出一嗰,依據一預定 的先前機構。 一位址解碼器區塊,用以定址出自該介面程式庫區 塊之該除錯區塊或該中斷處理器區塊中該?£所欲存取 者;以及 一控制器區塊,用以控制介於該PE與該介面程式 庫區塊、該除錯區塊、該中斷處理器區塊、或該位址解 碼器區塊其中一種之間的通訊。 12 · —種可經由電路内模擬器來驗證一晶片設計之方法,其 本紙張尺度適用中國國家標半(CNS) A4规格(2WX297公茇) (請先閲讀背面之注意事項再填寫本頁)21 594513 C8 —--—_ 1)8 六、申請專利範圍 ~ ' 中該晶片之設計被分成一内部邏輯電路設計、以及一外 部介面設計來與一目標系統通訊其包括之步驟有·· 從一連揍至該電路内模擬器之主電腦下載一編譯 碼,其定義内部邏輯電路設計之函數; 使用一依據該外部介面設計之硬體描述語言 (HDL),來定義一甩來與該目標系統中之外部電路通訊 的介面通訊協定; 根據該疋義之介面通訊協定,來程式設計一些可程 式化邏輯裝置,而產生-些適當之接腳信號,該等信號 響應於執行該編譯碼被送至該外部電路;以及 即時儲存該接腳信號、以及至少一由該外部電路響 應該接腳信號而產生的響應信號。 13. 如申叫專利範圍第12項之方法,其中之hdl係VHDL。 14. 如申請專利範圍第12項之方法,其中之。 15·如申請專利範圍第12項之方法,其中該編譯碼以一種高 階程式語言敘述,其中該高階程式語言係C語言。.. 16·如申请專利範圍第15項之方法,其中之高階程式語言係 C++語言。 17·如申請專利範圍第15項之方法,其中之高階程式語言係 SystemC語言。 18·如申請專利範圍第15項之方法,其中之高階程式語言係 specC語言。 19 · 一種可用以驗證一晶片設計之電路内模擬裝置,前者係 被分割成一可通訊一目標系統之外部電路的一内部邏輯 本紙5長尺度適用中國國家標芈M规格(2]〇><297公發) C請先間讀背面之注意事^再場寫本頁)22 594513 A8 B8 C8 D8 六、申請專利範圍 電路設計和―外部介面設計,其包括之步驟有: 使用-高階程式設計語言,來製作上述内部邏輯電 路設計之邏輯函數模型; 使用-硬體描述語言(HDL),來製作上述外部介面 設計之模型; —根據該以模型化外部介面設計來定義-介面通訊 協定以及介面程式庫以與該外部電路通訊; 依據該已定義的介面通訊協定來程式規劃一些可 規劃的邏輯裝置來定義輸入和輸出信號; 利用該等響應該等模型化邏輯函數之執行而產生 之輸入和輸出信號與該外部電路通訊,其中該介面通訊 協定之該介面程式庫在該模型化邏輯函數執行期間被 管理;以及 在该模型化邏輯函數執行期間即時儲存該等輸入 與輸出信號。 20_—種電腦可讀取式儲存媒體,其可用以儲存一晶片設計 之驗證所需的程式,前者係被分割成一内部邏輯電路設 計、和一可用以與一目標系統之外部電路相通訊之外部 介面設計,上述之程式包括: 一用以模型化該内部邏輯設計之邏輯函數的碼區 段; 一用以模型化該外部介面設計之碼區段; 一用以定義一内部通訊協定和介面程式庫之碼區 段’用以依據該模型化外部介面設計與該外部電路通 本紙5長尺度適用中國國家標芈(CNS) A4规格(2WX297公梵) (請先閲讀背面之注意事項再填窝本頁) 訂- 23申請專利範圍 訊; —將一使用者定義介面内部通訊協定加至已定義 内部通訊協定之碼區段; 、、一依據該已定義㈣通訊協定,藉由關可規劃之 邏輯裝置來定義輸入和輸出信號; 一用以控制響應該模型化邏輯函數之執行與該外 部電路通訊之碼區段,其中該㈣通訊協定之該介面程 式庫在該模型化邏輯函數執行期間被管理;以及. 一用以即時儲存該模型化邏輯函數執行期間該等 輸入與輸出信號的碼區段。 如申%專利範圍第2〇項之儲存媒體,其中之儲存媒體係 一光碟(CD)。 •申請專利範圍第20項之儲存媒體,其中之儲存媒體係 一硬碟。 3·種電路内模擬系統,其可用以驗證一要使用在一目標 系統中之晶片的設計,其包括: 一可用以編譯該晶片之一軟體模型以產生一編譯 碼之主電腦;和 一用以執行自該主電腦下載之該編譯碼、並即時儲 存在該編譯碼執行期間與該目標系統通信產生通訊之 信號的模擬裝置, 其中之軟體模型,係由一高階程式語言來加以敘 述。 24.如申請專利範圍第23項之系統,其中該模擬裝置進一步 本紙强尺度中關雜半(⑽)M规格(2κ)χ297公發) (請先閲讀背面之注意事項再壤窝本頁) 訂. 24包括: 可用以執仃该編譯石馬之處理單元,其由微處理機 和記憶體所組成;和 一可用以產生一此rt, 些與該目標系統界接·所需要之接 腳信號的接腳信號產生單元,其由多數個可規劃邏輯裝 置組成, 其中該等多數個可規劃邏輯裝置實施邏輯函數由 該已編譯碼所定義。 25·如申請專利範圍第 貝之系統,其中之模擬裝置進一步 包括: 可用以&控及除錯彼等在該已編譯碼執行時產 生的㈣與軟體變數之_錢諸單元。 本紙5長尺度適用中國國家標半(CNS)人4規格(2K)X297公焚)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0009918A KR100434240B1 (ko) | 2001-02-27 | 2001-02-27 | 고수준 프로그래밍 언어를 이용한 회로내 에뮬레이션을위한 장치 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW594513B true TW594513B (en) | 2004-06-21 |
Family
ID=19706298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW090124545A TW594513B (en) | 2001-02-27 | 2001-10-04 | Apparatus and method for in-circuit emulation using high-level programming language |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP1235152A2 (zh) |
JP (1) | JP2002259157A (zh) |
KR (1) | KR100434240B1 (zh) |
CN (1) | CN1229721C (zh) |
TW (1) | TW594513B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8904319B2 (en) | 2008-09-15 | 2014-12-02 | Synopsys, Inc. | Method and apparatus for merging EDA coverage logs of coverage data |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006510496A (ja) * | 2002-12-19 | 2006-03-30 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ロボットを制御するためのシステム及び方法 |
CN100450041C (zh) * | 2004-02-21 | 2009-01-07 | 华为技术有限公司 | 一种信息传输的方法和装置 |
CN100367228C (zh) * | 2004-07-31 | 2008-02-06 | 华为技术有限公司 | 一种集成电路的仿真方法 |
CN100412874C (zh) * | 2004-11-26 | 2008-08-20 | 鸿富锦精密工业(深圳)有限公司 | 延时器仿真模型设计装置及方法 |
JP5119902B2 (ja) | 2007-12-19 | 2013-01-16 | 富士通セミコンダクター株式会社 | 動的再構成支援プログラム、動的再構成支援方法、動的再構成回路、動的再構成支援装置および動的再構成システム |
DE102009048746B4 (de) * | 2009-10-08 | 2013-10-24 | Netstal-Maschinen Ag | Verfahren zur Steuerung und Bedienung einer Produktionszelle sowie eine Steuereinrichtung |
CN102377655A (zh) * | 2010-08-19 | 2012-03-14 | 盛科网络(苏州)有限公司 | 软件仿真asic转发的系统和方法 |
KR101678480B1 (ko) * | 2015-07-08 | 2016-11-22 | 주식회사 유비콤테크놀로지 | R 언어 기반 빅데이터 처리용 fpga 시스템 및 방법 |
CN105070127A (zh) * | 2015-08-11 | 2015-11-18 | 武汉美 | 一种交互式实训教学系统以及方法 |
US10552190B2 (en) | 2017-01-16 | 2020-02-04 | International Business Machines Corporation | Precise error injection for driver testing |
TWI670617B (zh) * | 2018-10-31 | 2019-09-01 | 財團法人工業技術研究院 | 模擬系統與方法 |
WO2020172089A1 (en) * | 2019-02-18 | 2020-08-27 | Siemens Aktiengesellschaft | Automation code generator for interoperability across industrial ecosystems |
KR20200139525A (ko) | 2019-06-04 | 2020-12-14 | 삼성전자주식회사 | Fpga를 포함하는 전자 시스템 및 이의 동작 방법 |
CN110851516B (zh) * | 2019-11-07 | 2022-04-19 | 中国银行股份有限公司 | 主机运控系统及方法 |
CN112329369B (zh) * | 2020-11-09 | 2024-04-12 | 安徽芯纪元科技有限公司 | 一种在芯片仿真模型上进行软件调试的方法 |
CN113219853A (zh) * | 2021-04-09 | 2021-08-06 | 北京国电思达科技有限公司 | Plc控制器的半物理仿真平台搭建方法及装置 |
CN112949234A (zh) * | 2021-04-14 | 2021-06-11 | 山东高云半导体科技有限公司 | Fpga物理模型的软件建模方法及装置 |
CN113742280B (zh) * | 2021-07-14 | 2023-07-28 | 江西昌河航空工业有限公司 | 能够自定义通信协议的双arm系统 |
CN114861581B (zh) * | 2022-04-26 | 2024-03-08 | 河南科技大学 | 基于图像识别的可编程逻辑器件的辅助编程设计方法 |
CN116090403B (zh) * | 2023-02-13 | 2023-12-26 | 上海合见工业软件集团有限公司 | 支持多仿真器的命令处理系统 |
CN116562203B (zh) * | 2023-04-10 | 2023-10-20 | 合芯科技有限公司 | 一种调试系统中数据的处理方法、装置、设备及存储介质 |
CN116384305B (zh) * | 2023-06-05 | 2023-08-01 | 英诺达(成都)电子科技有限公司 | 数据通信方法、装置、系统、设备及计算机存储介质 |
CN117194276B (zh) * | 2023-11-06 | 2024-01-23 | 沐曦集成电路(上海)有限公司 | 芯片软硬件联合仿真调试系统 |
CN117521583B (zh) * | 2023-11-17 | 2024-07-19 | 中科苏州智能计算技术研究院 | 一种时钟驱动的软硬件联合仿真方法、系统及存储介质 |
CN117852486B (zh) * | 2024-03-04 | 2024-06-21 | 上海楷领科技有限公司 | 一种芯片二维模型线上交互方法、装置和存储介质 |
CN118211547B (zh) * | 2024-05-20 | 2024-08-09 | 山东云海国创云计算装备产业创新中心有限公司 | 一种芯片建模仿真方法、产品、设备及介质 |
-
2001
- 2001-02-27 KR KR10-2001-0009918A patent/KR100434240B1/ko not_active IP Right Cessation
- 2001-09-21 EP EP01250334A patent/EP1235152A2/en not_active Withdrawn
- 2001-09-26 CN CNB011409185A patent/CN1229721C/zh not_active Expired - Fee Related
- 2001-09-27 JP JP2001295226A patent/JP2002259157A/ja active Pending
- 2001-10-04 TW TW090124545A patent/TW594513B/zh not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8904319B2 (en) | 2008-09-15 | 2014-12-02 | Synopsys, Inc. | Method and apparatus for merging EDA coverage logs of coverage data |
Also Published As
Publication number | Publication date |
---|---|
EP1235152A2 (en) | 2002-08-28 |
CN1372193A (zh) | 2002-10-02 |
JP2002259157A (ja) | 2002-09-13 |
CN1229721C (zh) | 2005-11-30 |
KR20020069631A (ko) | 2002-09-05 |
EP1235152A8 (en) | 2003-01-22 |
KR100434240B1 (ko) | 2004-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW594513B (en) | Apparatus and method for in-circuit emulation using high-level programming language | |
US9311437B2 (en) | Modeling a bus for a system design incorporating one or more programmable processors | |
US7788625B1 (en) | Method and apparatus for precharacterizing systems for use in system level design of integrated circuits | |
JP4112886B2 (ja) | デバイスのバス・プロトコル準拠試験方法およびシステム | |
US8468475B2 (en) | Conversion of circuit description to an abstract model of the circuit | |
US6006166A (en) | Apparatus for testing a controller with random constraints | |
US7418681B2 (en) | Simulation system, simulation method and simulation program for verifying logic behavior of a semiconductor integrated circuit | |
JP4806529B2 (ja) | 複製されたロジックを使用するデバッグの方法とシステム | |
US20050039174A1 (en) | Apparatus and method for co-simulating processors and DUT modules | |
CN112949233B (zh) | Fpga芯片的自动化开发方法及装置、电子设备 | |
JPS6063644A (ja) | デイジタル装置の動作のモデリング方法及び装置 | |
US6076180A (en) | Method for testing a controller with random constraints | |
US6917998B1 (en) | Reusable complex multi-bus system hardware prototype system | |
US11513818B1 (en) | Method, product, and system for integrating a hardware accelerator with an extensible processor | |
US7437282B2 (en) | Method and apparatus to provide alternative stimulus to signals internal to a model actively running on a logic simulation hardware emulator | |
US20020108094A1 (en) | System and method for designing integrated circuits | |
US20050144436A1 (en) | Multitasking system level platform for HW/SW co-verification | |
US20060212768A1 (en) | Verification circuitry for master-slave system | |
US20170293702A1 (en) | Modeling a bus for a system design incorporating one or more programmable processors | |
CN116451617A (zh) | 芯片仿真中基于仿真波形的信息处理方法、装置及应用 | |
CN113204929B (zh) | 基于sv和uvm实现ahb vip的方法、电子装置及存储介质 | |
JP4493937B2 (ja) | 半導体集積回路および半導体集積回路の機能検証方法 | |
Shetty et al. | Enabling the design of behavioral systems-on-chip | |
TWI427496B (zh) | 製造積體電路的模型的方法和系統 | |
JP2007156728A (ja) | 論理検証方法及び論理検証システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |