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 PDF

Info

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
Application number
TW090124545A
Other languages
English (en)
Inventor
Chong-Min Kyung
In-Cheol Park
Seung-Jong Lee
An-Do Ki
Original Assignee
Korea Inst Sci & Tech
Dynalith Systems Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Korea Inst Sci & Tech, Dynalith Systems Co Ltd filed Critical Korea Inst Sci & Tech
Application granted granted Critical
Publication of TW594513B publication Critical patent/TW594513B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/261Functional testing by simulating additional hardware, e.g. fault simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • G06F30/331Design 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)

  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公焚)
TW090124545A 2001-02-27 2001-10-04 Apparatus and method for in-circuit emulation using high-level programming language TW594513B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 山东云海国创云计算装备产业创新中心有限公司 一种芯片建模仿真方法、产品、设备及介质

Cited By (1)

* Cited by examiner, † Cited by third party
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