TWI307846B - Method for emulating user designing - Google Patents
Method for emulating user designing Download PDFInfo
- Publication number
- TWI307846B TWI307846B TW095104572A TW95104572A TWI307846B TW I307846 B TWI307846 B TW I307846B TW 095104572 A TW095104572 A TW 095104572A TW 95104572 A TW95104572 A TW 95104572A TW I307846 B TWI307846 B TW I307846B
- Authority
- TW
- Taiwan
- Prior art keywords
- user
- intellectual property
- signal
- core
- tool
- 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
- 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)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
- Stored Programmes (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Description
1307846 Γ:--- 97年12月19日修正替換頁 玖、發明說明: 【發明所屬之技術領域】 本發明是關於電路設計的自動化和驗證 (va 1 i dat i on )技術,特別地,本發明涉及單晶片系 ' 統型(SoC,system on a chip)電路的設計自動化 和驗證技術。 # 【先前技術】 隨著集成度的提高,許多複雜邏輯系統現在可以 在單個積體電路上實現。這樣的積體電路被稱為單晶 片系統(SoC )。單晶片系統一般包括一些複雜的單 元’例如微處理器、週邊設備和記憶體控制器等。許 多單晶片系統還採用了來自一些其他供應商的現有 的電路設計。這些電路設計在業界被稱為「智慧財產 權核心(Intellectual Property Core)」。 鲁 在現有技術中’為一個包含用戶設計的整合一個 或多個來自第二方的智慧財產權核心的系統進行除 ,錯是十分困難的,因為用戶往往無法通過用戶設計和 智慧財產權核心的介面來完全控制智慧財產權核心 的時序和邏輯行為。例如,用戶設計不正確的輸出俨 號會導的慧財產權心產^可預㈣行為,而^ $財產權核心的行為又反饋到用戶設計從而使用戶 ^ Ϊ入不可預料的狀態。這樣的錯誤是極其難以診 定位的。因而,一個能夠使設計者控制用戶 5 97年12月19日修正替換頁 1307846 和智慧財產權核心之間的介面的設計工具是十分需 要的。 【發明内容】 • 本發明提供了一種通過可重組態的平台用來設 計和模擬用戶設計的系統及其方法。本發明中的方法 尤其適用於基於智慧財產權核心重覆使用的設計方 法學,例如由用戶自行設計的可執行用戶自己設計和 來自第三方的智慧財產權核心的單晶片系統類設 • 計。本發明可以在由記憶體和一定數量的場域可程式 邏輯元件(field programmable logic device)組成 的平台上實現。這裡的場域可程式邏輯元件可以是可 程式閘陣列(programmable gate array)。許多訂 制的電路可被組態用來與用戶設計互動操作,提供諸 如除錯、性能分析以及與模擬器連接等功能。 根據本發明的一個具體實施例,用來設計和模擬 用戶設計的系統包括:(1)具有一個與用戶工作站相 _連的介面和一個數據通訊介面的一個系統控制器;(2 一個與該數據通訊介面相連的模擬平台,該模擬平么 包括多個場域可程式邏輯元件和記憶體,用以實二 戶汁和第二方智慧財產權核心,該平台還包括一 與目標系統的介面與用戶設計在進行時互動。該 2訊介面包括-組組態匯流排,一組系统公用 和-組時脈匯流排。該與目標系統相連的 1 組源於可程式邏輯元件的輸入/輸出蟑的信號。一 根據本發明的-個具體實施例,使用用來 6 1307846 ,擬用戶設計的系統,用戶應生成包 第三方智慧財產權核心的頂層模二隨 二成用戶設計。用戶料和第三方智慧財產權核心 被a理地劃分成多個區塊,每個區塊均可由一 個可程式邏輯元件來實現。另外 > 艺夕 :::個智慧財產權核心均被分配一個介面模組。通 匕μ ”面模組’任何一個實現在某個可程式邏輯元 内的智慧財產權核心可以與其他任何一個在同一個 可程式邏輯元件内的區塊進行通信,也可以與在其他 可程式邏輯元件㈣任一區塊進行通信。這些區塊和 内 ”面模組隨後被佈局選路並實現在可程式邏輯元件 0 夺根據本發明的一個具體實施例,該被分配到各個 智慧財產權核心或各個可程式邏輯元件内的介面模 組包括一個控制電路和一組可變數量的輸入/輸出單 元,每個單元提供1位元(Ι-bit)的互連埠。在該實 施例中,每個輸入/輸出單元包括一個動態可重組態 的記憶體模組、一個用來選擇輸出到丨位元互連埠的 k號多工器以及一定數量的鎖存器,每個鎖存器均可 有選擇性地接收從]位元互連埠接收到的信號。該多 工器和鎖存器可以由在動態可重組態記憶體模組記 憶體所儲存的數值來控制。該動態可重組態記憶體模 組可由一個或多個動態可重組態的記憶體單元組 成’並由一個狀態機(例如,一個計數器)產生的地 址來存取。動態可重組態記憶體模組通常可以使用一 1307846
個比用戶設計使用的時脈頻 L— 該介面模組可以用來實的時脈來操作。 埠、一個雙向埠或一個三熊 個輸出埠、一個輸入 .實現的埠類型可以被動態=文°另外’在介面模組内 錯情況(例如,在邊界掃描竹根據#定的測試或除 ,以被組態用來將在一個===面模組也可 產權核心與其他在同一或不 (巾的智慧財 的智慧財產權核心隔離開來。。、可程式邏輯元件中 :據:發明的一個具體實施例, 式邏輯7C件可以被分配一 夕個了程 來驗證用戶電路的功能。例如^智样慧財產權核心用 權核心可以句拓乂樣的驗證智慧財產 模擬業界標準匯流排的操作。 根據本發明的另一個具體 ^式邏輯元件可讀分配—個性能分析;^夕個可 核例如,性能分析智慧財產權核心可以包括個 用來分析匯流排頻寬的智慧財產權核心包括一個 组態實施例’該系統提供, 元件中的== 個選定的可程式邏輯 =中的邏輯電路。該組態工具也可以包括 ,,L工具用來動態重組態在一 輯元件的電路板上的匯流排。有夕個Ύ程式邏 *統個:Γ施例’該系統提供-個 =元件之間的信號。該系統除錯工具可夕:包:程一式個 S可私式閘陣列回讀工具、—個系統公用匯流排操 8 1307846 97年12月19日修正替換頁 作 具、:個;:部,分析儀工具、-個頻寬分析工 ^ 個付唬/異動擷取工具和一個模 二 具。該内部邏輯分挤檨丁目+ 狹益連接工 元件中奸入一/才斤儀具在一個或多個可程式邏輯 可以讓:二:1分析電路。符號/異動擷取工具 符號名稱或設定由多個二關聯起來,設定-個 由在-定時間内的一組信號波形 二固: ⑽的發生並以符號名稱的方式向V戶 :進模擬器連接I具使用戶可以與—個在用戶工作 上進仃的模擬器程式互動, 協同模擬環境。 動』構梃-個軟/硬體 【實施方式】 圖1為本發明的一個具體實施 統刚。如圖所示,電子式可重組V原型 、叮 I括可擴展可重組態原型平台103,該可擴 ^組態原型平台1〇3可由一個或多個場域可程、 式閘陣列電路組成。可擴展可重組態原型平台103 ,一個目標系統104通過可程式輸入/輸出埠1〇5進 /亍動這些可程式輸入/輸出埠105可以由場域可 程式閘陣列驅動。可擴展可重組態原型平台1〇3由系 統,制器102通過一組或多組數據匯流排控制。在本 實知例中,這些數據匯流排包括系統組態匯流排 108、系統公用匯流排(SUB,System UtiHty Bus) 和時脈匯流排1〇6。系統組態匯流排i〇8是用來 組態場域可程式閘陣列電路;系統公用匯流排1〇7 9 1307846 :? f在系統控制器1 02和可擴展可重組態原型平 間進行數據通信;時脈匯流排106為操作可 2可重組態原型平台103提供了一個或多個時7 入而:戶工作站1〇1為用戶提供-個圖形化的用戶 二來操控電子式可重㈣原型系統1GG的工作。通 =圖形介面’用戶工作站1〇1的一個用戶可以二 可^^’#作—個用來把用戶設計轉換成適用於 "組態原型平台103的組態信號的編譯 =使用各種智慧財產權I時式庫,調 自動化軟體和執行時之軟體。用戶工作站m可以是 個工程用工作站或個人電腦。在本實施例中,用戶 ^乍站m與系統控制器1G2透過業界標準通信介面 進行通L該業界標準通信介面!〇9可以是USB、 1394 (又稱「火線」)或其他各種業界標 準通k匯流排。 在本實施例中,—個用戶設計可以通過常規的電
路圖工具輸人或編輯’或者用—種行為或硬體描述語 言(例如,Systemc,Verilog,SystemVeril〇g,VHDL 等)來表現,然後被合成成邏輯閘級的電路圖。本發 明可以在硬體原型系統’即電子式可重組態原型系統 100裡,實現對已合成的電路的模擬和驗證。 圖2是系統控制器102的一個方塊圖。系統控制 器102包括通信介面204,系統公用匯流排控制器 202 ’時脈產生器203和組態控制器2〇丨。組態控制 1307846 97年12月19日修正替換頁 器201處理組態、號協定並從用戶工作站〖ο〗通過系 統組態匯流排10 8傳送組態數據到可擴展可重組態、 原型平台103。這樣,組態控制器2〇1就可以來組^態 或下載一定格式的用戶設計到可擴展可重組態原型w 平台103中的場域可程式閘陣列。系統組態匯流排 108也可以用來將在各個場域可程式閘陣列中的設 計回讀,用以校驗;或者在進行時獲取用戶設計中的 狀態信息和數據。回讀操作一般是通過常規的技巧或 使用供應商提供的協定,比如SelectMap* JTAG(邊 界掃描)。在本實施例中’系統組態匯流排1〇8可以 被用來測試在電子式可重組態原型系統丨〇〇中可擴 展可重組態原型平台103的可程式閘陣列。 、 系統公用匯流排控制器2〇2通過系統公用匯流 ,107在進行時存取設計和系統特定部件中的暫存 器、FIFO (先堆先出隊列)、記憶體和其他狀態單元, 例如由編譯器插入用戶設計的特殊邏輯單元。系統公 用匯流排107也可以用來把可擴展可重組態原型平 台103中的場域可程式閘陣列重置或初始化到特定 的工作狀態。 時脈產生器203驅動時脈匯流排1〇6給場域可程 式間陣列提供各種時脈信號。這些時脈信號的頻率和 工作週期被下載在可擴展可重組態原型平台1〇3中 的用戶設計使用。 如上所述,可擴展可重組態原型平台103可以由 一個或多個可擴展的面板(或電路板)、場域可程式 p年12月―〗 1307846 閉陣列、動態可組態的電路開關組成。可擴展可重組 態原型平台103可以包含任意數量的場域可程式閘 陣列和開關。圖3所示為可擴展可重組態原型平台 103的示意圖。如圖3所示’一個可擴展可重組態口的 原型平台由場域可程式閘陣列3〇44到3〇4_n構 成。301-1到304一n中的每個場域可程式開陣列都有 超過一組的連接線與其他場域可程式閘陣列相連。本 實施例中,一個或多個匯流排(例如,匯流排3〇ι — 303 )被用來互連場域可程式閘陣列3〇41至 :〇4二。在這種方式下’信號可由任一場域可程式間 歹》連接到其他任意場域可程式閘陣列。匯流排斯 -303可以被設置為「全局匯流排」(即每個場域可 程式閘陣列都可以存取的匯流排)。或者,匯流排斯 一 303也可以被分配成各種組態,這樣每條匯流排都 可以被組態成為某一組特定場域可程式閘陣列專 用:這些匯流排也可以透過動態可组態的電路開關相 互連接。這些電路開關可以由特殊的開關電路來提 供,j者被組態到場域可程式閘陣列3044到3〇4^ 中。攻些場域可程式閘陣列可以被組態成為一個層欠 =的結構。在這個結構中,場域可程式閘陣列可二被 分,組。這樣,每組中的場域可程式閘陣列由一個“局 邛的互連匯流排互連,而這些局部互連匯流排由一 層或多層的動態可重組態開關相連。另外,每個場 可程式閘陣列可以有一個或多個輸入或輸出信號連 接在可程式輸入/輸出埠1〇5上與目標系統通 97年12月19日修正替換頁 1307846 信。這些輸入/輪出信號也可以被由一層或多層動態 可組態開關互連,用作場域可程式閘陣列之間的信號 互通。無論如何,隨著技術的演進和提升,這些^ 線的數量不受限制。這些互連匯流排和開關通;^是在 一個或多個面板或電路板上實現為佳。或者,任何的 互連匯流排(例如,匯流排3〇1_3〇3,系統組態匯流 排108’系統公用匯流排1〇7或時脈匯流排ι〇6中的 其中之一)也可以由電纜、光纖或其他互連方 現。 貝 一個複雜的數字系統(例如,一個單晶片系統或 -個專用電路)通常包括多個子系統。例如,一個單 晶片系統設計可以包括諸如一個多媒體子系統、一個 信號處理子系統、一個週邊控制子系統和一個中央處 理器。每個子系統可以被配置到一組由一條共用的局 部匯流排連接的場域可程式閘陣列。然後由動態可組 態開關來連接這條局部匯流排到系統的其他匯流 排關這局部匯流排也可以是一條被設置成 關=(斷開連接)的全局匯流排,這樣來做為 子糸統中專用的局部匯流排。在各條局部匯流排之間 的開關可以被組態成“開”模式來完成子系統之間 的通k。全局匯流排可以被用來作為子系統之間的通 信或場域可程式閘陣列之間的點對點通信。 為了把冑用戶设計在可擴展可重組態原型平 實現’用戶在用戶工作站101上使用一個編 譯器。圖4所示為本發明的—個實施例的編譯器程式
l3〇7846 的流程圖。如圖4所示,在步驟4(h中,一個系統設 11十者可以調用一個頂層模組產生器來為用戶設計生 成—個頂層模組。用戶設計可以包含特殊的設計單元 和第一方的智慧財產權核心。這個頂層模組產生器用 來説明集成來自用戶自已的程式庫和第三方供應商 的各種设計和智慧財產權核心。該生成器根據標準的 ^流排定義和用丨自定義的匯流排和信號互連關係 、自動連接用戶設計單元和第三方智慧財產權核 =。或者,系統設計者也可以手動的創建頂層模組而 不使用自動頂層模組產生器。 Ϊ步驟4G2中’—個系統或電路設計者使用編譯 ^模例如’使用一個“導入設計,,命令)在頂 二二I:各個設計單元。這個設計通常是由-種硬 法、二或網路連線表表述。編譯器檢查設計的語 中的邏陡和完整性(例如,是否所有在設計源碼 數據庫定義的程式庫或一個邏輯 的設計中h的或可連接獲得的)。如果在—個導入 軟體會報生在或一個邏輯區塊不可用,編譯器 被重復tir古 誤。根據需要,步驟4G2可以 譯器接受二直到所有的輸入源碼被檢查正確並被編 又0十被導入後’在步驟 一條編譯器中“ 41M f通過使用例如 第三方合成 ' :产命令或可被編譯器調用的 描述(硬體=^ ’叹S十者可以合成設計中所有的硬體 (硬體插述語言或其他格式)。在實施例中,編 14 1307846 厂 ’ 97年12月19日修正替換頁 譯器以自底向上的策略合成第三方智慧財產^ — 〜,以此來保持第三方智慧財產權核心的邊界信號並 保持進行時性能。合成後的設計包含可以用來^ ^到 .可擴展可重組態原型平台103中的場域可程式閘〜陣 .列裡的網路連線表(比如,EDIF檔)。在實施例中, 編譯器把所有EDIF檔合併到一個EDIF文件來代表 戶設計。 • 在本實施例中,在步驟404中,當一個設計被合 零成後,設計者可以調用一個編譯器中的“符號定義” 命令開始符號定義過程。在符號定義過程中,用戶可 以把任何一個單獨的㈣或一組信號定義為一個符 號。任意數量的信號都可以定義為一個符號。另外, 用戶也可以定義一個異動,即一組特定的符號或信號 的一系列事件,或一組任意長度的波形。當信號或符 號的狀態轉換與異動中指定的一定長度的波形相吻 合時,認為該異動發生。例如,圖5所示是一個儲存 •設備的典型的“寫入操作,,的異動波形。如圖5所 不,這個“寫入操作,,異動包括了五個符號的波形: *單,的信號“時脈(clk),,,“寫入操作(write),,, 晶片選擇(Chipselect) ”和匯流排信號“位址 (address)” ,“數據(data)” 。在這個例子中, 這個異動為兩個時脈週期長。如圖5所示,週期i 和週期2在0奈秒到丨00奈秒之間。在這段時間内, “晶片選擇(chipselect)”和“寫入操作(write)” 控制信號都被判定為有一個“時脈(clk),,信號的 1307846 -個週期長。這兩個時脈週期内的信 L- 個異動。為了檢測異動的發生 “ /形定義了這 系統10 0可以被組態成在進行時工可^重·组態原型 信號變化與預定的異動中的信穿;疋信號並將 FI AA H ;U變化相比較。鱼斑古 技術不同的&,當異動發生被檢較,有 戶報告異動的發生,而不是 軟:會向用 態。在這種方式下,異動以高階抽象二= 大 告’既而被用來説明除錯。在 t向用戶報 ;被取樣並儲存在-個板上的記憶體中:者= 二的記憶體或文件中,以被用來做進-步的刀析。付號和異動在除錯模式下尤其有用, =式下信號比較和異動檢測機制都與前述-=:致:電路設計者可以按需要定⑭意多的符號 異動广樣,大量的執行時信號資訊可以在高抽象 層次被定義、’以方便除錯。在除錯模式下定義的符號 和異動可以被轉換到進行時使用和觀察。 ,,在步驟405中,用戶可以用一個編譯器中的“劃 分$令來把設計劃分到多個區塊,每個區塊將會在 一個單獨的場域可程式閘陣列中實現。第三方智慧財 產權核心也被劃分並實現在各個場域可程式閘陣列 中。一個大的智慧財產權核心可以被劃分到多個場域 可程式閘陣列中。在一個實施例中,劃分命令調用第 三方的劃分工具。由於在後文中講到的 ΤΑ I(Testable, Analyzable, and Integratable) 智慧財產權核心單元”的互連方法,在電子式可重組 1307846 _ __ • 97年12月〗9日修正替換頁 原型系統1 00中的劃分工具可以遵循最大化場域 y程式,陣列的容量利用率而不用被場域可程式閘 歹】的g、腳所限的原則來最佳化劃分。劃分工具產生 .在可擴展場域可程式閘陣列中的每個場域可程式閘 陣列的單獨的網路連線表。劃分步驟4〇5會保留所有 ^用戶設計的所有資訊和功能。或者,第三方劃分器 ,手動劃分也可以被用來劃分設計。劃分器可以接受 "又置約束條件,用以指示劃分器來生成針對可擴展可 •重組態原型平台103的硬體的網路連線表。 —在步驟406中,在用戶設計被劃分後,編譯器在 每個場域可程式閘陣列區塊中插入一個定制的電路 結構來提供“可測性,,、“可分析性,,和“互連,,功 能。這個被稱為“ΤΑΙ智慧財產權核心,,的特製的 電路結構也被插入到各個智慧財產權核心或一個被 劃分到多個場域可程式閘陣列的一個智慧財產權核 心的各個部分。圖6a中所示為劃分後電路拓撲結構 •的一個邏輯視圖。如圖6a所示,根據本發明的一個 •實施例,一個包括用戶設計電路和第三方智慧財產權 • 核心的單晶片系統設計620 ’設計被劃分到電路 625-1到625-n中,每個分別對應TAI_智慧財產權核 心626-1到626-n。625-1到625-ri中的每個電路分 別是將被實現在一個場域可程式閘陣列中的用戶設 計的一個分塊、一個智慧財產權核心或一個智慧財產 權核心的一個部分。在某些實例中,一個用戶設計的 分塊可以被分配到同一個場域可程式閘陣列。— i 17 1307846 --. 97年12月19日修正替換頁 、到625-n中的每一塊電路通過與他們相關聯的TAI 智慧財產權核心626_1到626_11及一條或多條通信 匯流排或通道(如圖中所示匯流排63〇1到63〇_2) ,與其他部分相互通信。(雖然在圖6a中只示出兩條匯 •机排,根據用戶的選擇和電路間的互連關係,一個通 仏通道可以包括一條或多條信號匯流排。) 圖6b是一個結構方塊圖,其所示為智慧財 產權核心G02 — 1到601-n被實現在可擴展可重組態 擊原型平台103中,用來作為場域可程式閘陣列602-1 到602 η之間的介面。如圖6b所示,每個場域可程 式閘陣列中的ΤΑ I智慧財產權核心與其他場域可程 式閘陣列中的ΤΑ I智慧財產權核心相連,來提供可 擴展可重組態原型平台1〇3中的場域可程式閘陣列 1的互連而個%域可程式閘陣列中的每個智慧 財產權核%則也通過與其相關的智慧財產權核 心與分配在該場域可程式閘陣列中的其他電路以及 ♦其他場域可程式閘陣列中的電路通信。在這樣的結構 =,一個智慧財產權核心的輸入和輸出可以通過TAI *曰慧財產權核心來控制。例如’智慧財產權核心的每 個輸出>[§號可以被從用戶設計上隔離,而信號狀態可 以被替換成固定值來方便除錯。另外,智慧財產權核 的輸入和輸出k號可以被獨立監測來提高可測性。 圖7是本發明的一個實施例的TAI智慧財產權 f心700的一個方塊圖。如圖7所示,TAI智慧財 權核心700包括控制電路7〇1用以控制TAI智慧 1307846 97年12月19日修正替換頁 ^產權核心結構區塊電路(“TAI智慧財產權核心 =) 702-1到702-n。每個TAI智慧財產權核心 中的TAI智慧財產權核心單元的數量是—個可 的設計參數,通常根據場域可程式閘陣列板上需要1 =域可程式閘陣列的數量、用戶設計的輸入輸出 要求和用戶的指定來衫。每個TAI智慧財產權核 心單兀通過一個一位元的互連埠7〇3 (例如,互 703-1到703-n中的一個)來連接到可擴展可重組態 原型平台103電路板上的一條匯流排。基於這些要 求,編譯器決定所需的TAI智慧財產權核心單一元的 數量並產生所需的每個場域可程式閘陣列中的丁Μ 智慧財產權核心中ΤΑΙ智慧財產權核心 電路7(H。 f 8是本發明的一個實施例的TAI智慧財產權 核心皁凡800。如圖8所示,TAI智慧財產權核心單 兀800包括動態可重組態標記記憶體8〇1和8〇2、信 號多工器803、雙向緩衝器刪(包括輸出緩衝器祕& 和輸入緩衝器806b)和信號鎖存器8〇7。動態可重組 態標記記憶體801控制的數據輸入信號8〇8和盥之相 對應的輸出賦能信號8G5的多路選^數據輸出㈣ 809和相對應的輸出賦能信號8〇5包括組態在場域可 程式閘陣列中的用戶設計的輸出信號和指定的内部 邏巧郎,點信號。另夕卜,固定信號810 (包括一個固定 的〇和個固定的“ Γ )也可以被信號多工器 803選中來通過互連埠7()3傳遞。在這樣的結構下, 1307846 I-- 97年〗2月〗9日修正替換頁 一個輸出信號可以在任何時刻輸出到互連埠703 上。數據輪出信號809中的未分配信號可以被連上任 忍的值。如後文所述,這樣的組織使得進行時的增量 • 號組態不需要完全的重編譯。未使用的輸出賦能信 號被分配一個“使無效,,的信號狀態,這樣可以防止 無意地輸出一個值到互連埠7〇3。 動態可重組態標記記憶體802控制一組信號鎖 存器807’每個鎖存器可以被選中來鎖存互連埠 •上的輸入信號。如上所述,互連埠703通過一位的互 連匯流排從其他場域可程式閘陣列接收到信號。信號 鎖存器807的輸出信號驅動數據輸入信號8〇8,數據 輸入信號808被連接到用戶設計中的元件的輸入 埠。數據輸入信號808中未分配的信號可以被留空。 。—動態可重組態標記記憶體8〇1和8〇2由控制記數 器疋址,這樣動態可重組態標記記憶體8〇丨和8〇2 可以在進行時由系統公用匯流排丨〇7載入。多工器 • 804,制雙向緩衝器806的方向,由此來決定互連埠 \〇3疋一個輸入埠、一個輸出埠或一個雙向埠。多工 ‘二804的選擇號可以在進行時被改變動態組態埠 類!如圖8中所不的實施例,信號多工器和多 工器804同時由動態可重組態標記記憶體8〇1產生的 控制信號控制,並選擇同樣數量的信號。在這種組態 下,相對應的信號多工器8〇3和多工器8 號被選中。這樣的社諶a她 e J ^ 的、、、0構虽然不是必需的。多個多工写 也可以由動態可會細能β σ J重組態私圮記憶體801的輸出字元 20 1307846 97年12月19日修正替換頁 中的不同攔位來控制 809和輸出賦能信號 ,用來選擇設計數據輸出信號 805。
赵胁Γ三態輸㈣可以透過把數據輸出信號作為 809中的一個,並把相對應的輸出賦能 L唬作為相對應的輪出賦能信號805中的一個來實 ,。當相對應的輸出賦能信號被設定為無效時即得到 同樣地,一個雙向信號可以通過同時作為數 =出信號809和數據輸入信號謂以及把相對應的 輸出賦能信號作為輸出賦能信號8G5巾的—個來實 ^編譯ϋ確保雙向埠被正確的映射,這樣相對應的 :可重組態標記記憶冑中的相對應的地址總是被 冋時選中。在一個實施例中,雙向信號被映射到動態 可重組態標記記憶體801和802中的相同位址。
個ΤΑ I冬慧財產權核心(例如,τα I智慧財 產權核〜601— I到601-η中的任一個)可以工作在 個比用戶°又a十更快的時脈。以這個較快的時脈來控 制增大,減小計數器,並由計數器產生用來存取動態 可重組態標記記憶體801和802的地址。每個計數器 有二個可以編程的最大和最小的計數值。通常,當計 數器選到最大或最小計數值時,計數器轉回計數。當 圮到计數上限時,計數器被重置到零。當計數器在一 個用戶設計的時脈週期内至少被重置一次,用戶設計 的,入輸出信號和要被鎖存的信號都已經被正確的 f运。在這個實施例中,每個計數器中的最大或最小 计數值可以經由系統公用匯流排1 07在進行時編 1307846 以動的時脈週期内可以被互動的信號可 動^變L動態可重組態標記記憶體謝和 戶或由執行時之軟體以系統公用匯流 以用=互料703的輸入或輪出信號就可以 值戍連】:為:據動態地調整。這樣的能力使得信號 次連接可以在測試或除錯模式下可被改變。 中,编在:二1智慧財產權核心被插入後,在步驟4〇7 3陣編=_佈局料程式來處理每個場域可程式 式閘陣列::以:二選路程式通常是場域可程 韓拖杰一 r二商制的程式,用來把每個網路連線表 檔可以進制文件或一個文字檔案。這個輸出的 域可程式閘陣:型平台ι〇3中的場 來並行處^m或處理器上進行 選路後的二程ί開陣列的佈局選路任務。佈局 站制或文子檔案可以被儲存在用戶工作 留待執行時之軟體的進一步處理。 智慧:財產權核心程式庫可以包括除了 ΤΑΙ 和性能八柄2以外的其他提供電路驗證、電路除錯 把-個:多:Ϊ :智慧財產權核心。系統設計者可以 計。把樣的智慧財產權核心加入用戶設 口τ ?巴k樣的智彗 統設計者㈣㈣戶設計可以由系 中實例化這也智慧動在用戶設計的源代碼 一曰慧財產權核心來完成。 電路驗證的智慧財產權核心(驗證智慧財產 22 1307846 97年】2月!9日修正替換頁 =心)可以包括諸如模二 匯流排有互動的匯流排或pci 態原型系統ϊ ί)η由°又计的工作。用在電子式可重組 執行時^仲 的驗證智慧財產權核^使用戶或 以透過系統公用匯流排107存取驗 訊。通常,驗證智供應商提供的工作資 Λ.^曰慧財產權核心監測用戶設計的行 Φ 或是剌卜ΐ計與標準通信或信號協定的相容性, 的以的打為與一個特定的行為模式(正破 的=式)相比較。驗證智慧財產權核心可以提供分析 報告和錯誤或警告資訊給用戶或執行時之軟體。 :如,用作除錯的智慧財產權核心(除錯智慧財 權核心)包括完成一個内部邏輯分析儀功能的智禁 財產權核心(内部邏輯分析儀智慧財產權核心)或二 ,數據流/狀態分析器。這些智慧財產權核心使系統 設計者可以在進行時除錯已組態好的系統。例如,一 個内部邏輯分析儀智慧財產權核心可以用來在指定 的觸發點取樣用戶設計中的信號值並儲存到記憶體 單用作後續分析。執行時之軟體可以在進取 並操作這些除錯智慧財產權核心。 用作性能分析的智慧財產權核心(性能分析智慧 財產權核心)可以包括用來做頻寬分析的智慧財產權 核心。這些智慧財產權核心可以用來收集性能資訊並 分析用戶設計的性能。與其他智慧財產權核心一樣, 性能分析智慧財產權核心可以經由系統公用匯流排 23
1307846 與用戶或執行時之軟體通信來共同完成t 時之式可重組態原型系統_中的執行 一個動態組態工具集和-個系統除 錯/、集。動態組態工具集接收用戶命令來纟且綠可撼 組型平台1〇3中的場域可程式閘:列,背 時之設叶:Ϊ財ί權核心修改操作模式’互動和執行 個實施例中,在對場域可程式閘 應後,場域可程式閉陣列組態工具讀 :一㈣或者美國資訊交換標準㈣場域可程式閉 2組態檔並將文件傳送至系統控制器1G2中的組 心控制器20卜%域可程式閘陣列組態工具可單獨 組態-個或多個可擴展可重組態原型平台1()3中的 :域可程式間陣列,甚至所需一個場域可程式閘陣列 :的部分’如’用戶可修改—個場域可程式間陣列 中的邏輯區塊。使用場域可程式閘陣列組態工具可將 修改的邏輯區塊下載至場域可程式閘陣列中,而不需 要重新組態別的場域可程式閘陣列。 響應一個電路板組態命令,面板組態工具組態電 路板上或者可擴展可重組態原型平台1〇3中背板上 ,可組態開關。典型地,任一開關可設置成“開,,狀 態或關狀態。當開關處於“開”狀態時,開關導 通。當開關處於“關,,狀態時’開關斷開。面板組態 工具可以用作諸如選擇性地將部分互聯匯流排組態 成局部匯流排。 24
^^2月19日修正替換頁I 1307846 曰應一個TAI智慧財產權核心組態命令,ΤΑί智 慧財產權核心組態工具生成用於通過系統公用匯流曰 排107存儲在ΤΑί智慧財產權核心單元十的一個或^ 可重組態標記記憶體中的數據。這些數據代表 ^、豕域可程式閘陣列之間的互連關係或用戶的特殊 ,求。例如,某用戶可能希望給一個指定的場域可程 式閘陣列的某個輸入信號提供一個為“〗,,的值而不 用重編譯。為了達到這樣的效果,TAI智慧財產權核 。組態工具重新計算所需要的標記記憶體内的值來 產生這個輸入值,同時把修改後的標記記憶體的值寫 入特疋的動態可重組態標記記憶體。 ^系統除錯工具集收集和分析設計和除錯信息,並 设置特殊的條件和信號來實時操縱用戶設計的工 作:在一個實施例中,系統除錯工具集包括(a) 一 個場域可程式間陣列回讀工具,(b) -個系統公用匯 抓排存取工具,(c ) 一個内部邏輯分析工具,(d ) — 個頻寬分析工具,(e) 一個符號/異動擷取工具和(f) 一個模擬連接 工具。 場域可程式閘陣列回讀工具在進行時讀取指定 的場域可程式閘陣列的内容或用戶設計中指定信號 的狀態。場域可程式閘陣列回讀卫具可以從供應商處 獲得並使用供應商指定的協定,諸如jTAG或 SelectMAP ’來讀取指定場域可程式閘陣列的内容。 許多場域可程式閘P車列供應商提供工具來讀取場域 可程式閘陣列中的任一個暫存器或記憶體單元的内 25 1307846 -- 97年12月19日修正替換頁 容。在這個實施例中,當數據從場域可程式閘陣列回 讀後,場域可程式閘陣列回讀工具把這些信息轉譯成 信號值並映射到用戶設計中的信號名和符號。通過這 .樣的方式,就可以得到場域可程式閘陣列内任何信號 的完全可觀察性。 口 & 系統公用匯流排存取工具被用來存取與系統公 用匯流排107相連的用戶設計中的或電子式可重組 態原型系統100中的元件。元件都被映射到位址空 _間’這樣用系統公用匯流排存取工具來存取元件就工是 透過發出命令,地址和數據到系統控制器1〇2中的 統公用匯流排控制器202來讀或寫元件中的數據。在 -個實施例中,系統公錢流排m被擴展為可以讀 寫可擴展可重組態原型平台1G3電路板中的任何元 円邵邏輯分析儀 从Λ 丹匈冤于式可重姐趣原型糸 統100中内嵌的邏輯分姑穩#里總& , 八 铒刀析儀权置觸發條件。這個邏輯 刀析儀疋-個下載在可擴展可重組態原型平台103 ::一個或多個場域可程式閘陣列裡的特殊的智慧 :產權核心(内部邏輯分析儀智慧財產權核心卜這 耝二H 權核心可以提供與傳統的邏 軏刀析儀相同的功能。在場域、^ 智慧財產權核心共同作用、域開陣列裡與ΤΑΙ ^ , 作用廷個邏輯分析儀智攀ϋ吝 權核心可以提供大量θ財產 ../t h现的取樣並處理大量的緬狢 條件。在一個實施例中士 發 妒』甲延個内部邏輯分析儀工1 + 内嵌的邏輯分析儀智善財 厅儀/、在 我θ慧財產權核心内設置觸發條 26 U07846 w午u月iy日 智慧財產權核=:::::生’然後從邏輯分板儀 -號的形式。在—個J f據轉譯成用戶定義的符 .具設置-個邏輯分::;::,這個内部邏輯分析儀工 •的事件狀態機。這個事件曰狀權j亥心内喪的復雜 工作來説明除錯。内部邏二機根據取得的信號數據 .智慧財產權核心一起為刀斤儀工具與邏輯分析儀 計的執行狀況。 、弋下)而不會干擾用戶設 付號/異動掏取工且如·^ 4装v日 為符號和異動層級的_、自。取樣=的信號數據解釋 樣得到的俨 付號/異動擷取工具把取 式表現給用°戶。符號和異動並以符號的形 入操作,,異動中文描述的一個匯流排“寫 “窝入μ从,,田符諕/異動擷取工具發現一個 用戶匯流排條消息被創建來提供給 作”里知作異動的發生時間、“寫入操 分有俨信.,,、入操作的位址和數據。這樣的能力是十 程$值的’比如對於動體設計者在設計和除錯勒體 =擬器連接工具把用戶工作站1〇1上進行的模 a n、可擴展可重組態原型平台1 〇3裡的組態的用 相連接來完成一個硬體/軟體的協同模擬。模 連接工具可以通過各種現有方式來存取模擬 °比如,在一個實施例中,一個PLI或VPI介面被 27 1307846 r-— 97年12月19日修正替換頁 用來提供與Verilog模擬器的通信,一個Fli介面被 用來提供與VHDL模擬的通信,一個SCEMI介面被用 來提供與有SCEMI介面的模擬器的通信。模擬器連接 •工具也可以支援其他標準介面或用戶定義的介面。 上文的詳細描述說明了本發明的一些特定實施 .例,但本發明並不限於這些實施例。在本發明的範圍 内可有多種修改和替換均不超出本發明的揭露以及 • 保護範圍。 • 【圖式簡單說明】 圖1是本發明的一個具體實施例的可擴展可重組態 原型系統100 ; ~ 圖2是本發明的電子式可重組態原型系統1〇〇的系统 控制器102的方塊圖; 圖3是本發明的可擴展可重組態原型平台1 〇3的示意 圖; ~ 圖4是本發明的一個具體實施例的編譯程式示範流 • 程; 圖5是本發明的一個在一個儲存元件中常見的‘‘寫 . 入操作(write),,的異動波形; 圖6a是本發明的一個具體實施例的一個單晶片系統 设計620的示意圖,該單晶片系統設計620包括用戶 设计電路和智慧財產權核心,該用戶設計和智慧財產 權核心被劃分到電路625-1至625-n上,每個分別與 TAI-智慧財產權核心626-1至626-n相連; 圖6b是本發明的一個方塊圖,其所示為TAI智慧財 28 1307846 - 97年12月19日修正替換頁 n被實現在可擴展可重組態 原型平台103内,並用來做為場域可程式閘陣列 602-1至602-n的介面; '圖7是本發明的一個具體實施例的TAI智慧財產權 核心700的方塊圖; 圖8是本發明的一個具體實施例的TAI智慧財產權 核心單元8〇〇的方塊圖。 •【树代骑號說明】 電子式可重組態原型系統100 可擴展可重組態原型平台1〇3 目標系統104 可程式輸入/輸出槔1〇5 系統控制器102 系統組態匯流排1〇8 φ 系統公用匯流排1 〇 7 時脈匯流排106 ,用戶工作站1〇1 業界標準通信介面109 通信介面204 系統公用匯流排控制器202 時脈產生器203 組態控制器201 場域可程式閘陣列304-l~304-n、601-1〜6〇l-n、 29 97年12月19日修正替換頁 1307846 早晶片糸統設計6 2 0 用戶設計625-1、625_n 智慧財產權核心 625-2〜625-(η-1) -ΤΑΙ智慧財產權核心 601-1〜601-η、626-1〜626-η . 匯流排630-1〜630-2 控制電路7 01 動態可重組態標記記憶體801、802 $ 信號多工器803 雙向緩衝器806 輸出緩衝器806a 輸入緩衝器806b 信號鎖存器807 數據輸入信號808 輸出賦能信號805 數據輸出信號809 • 固定信號810 互連埠 703 多工器804 30
Claims (1)
1307846
f、申請專利範圍: 種模擬用戶設計的方法,包括如下步驟· 提供-個系統控制器,包括,括下步驟. (:)-個與用戶工作站相連的介面;和 個數據通訊介面; :供-個與所述數據通訊介面相連的模擬平台,包 和 )夕個可實現用戶設計的場域可程式邏輯元件 與用戶設計在進 (b) 一個與目標系統連接的介面, 行時互動; 生個包含用戶設計和一個或多個第三方智慧財 產權核心的頂層模組; 合成用戶設計; 用戶°又δ十和第三方智慧財產權核心分成幾個區 塊,每個區塊由一個可程式邏輯元件實現; 分配給每個可程式賴元件—個介面模組,通過介面 模組使得在可程式賴元件内實現的區塊被允許與 在其他可程式邏輯元件内的其他區塊實現通訊; 饰局和選路所述區塊和所述介面模組; 在可程式邏輯元件内實現被佈局選路的區塊。 2如申请專利範圍第丨項所述的方法,其特徵在於: 所述數據通訊介面包括一系統組態匯流排。 1307846 厂- 97年12月19日修正替換頁 3、 如申請專利範圍第1項所述的方法,其特-所述數據通訊介面包括一系統公用匯流排。 4、 如申請專利範圍第1項所述的方法,其特徵在於: .所述數據通訊介面包括一時脈匯流排。 • 5、如申請專利範圍第1項所述的方法,其特徵在於: 所述與目標系統連接的介面包括源於可程式邏輯元 件的可程式輸入/輸出埠的信號。 • 6、如=請專利範圍項所述的方法,其特徵在於: 所述場域可程式邏輯兀件包括場域可程式邏輯間 列。 7、 如申請專利範圍$ i項所述的方法,其特徵在於: 所述介面模組包括: (a) —個控制電路;和 (b) 多個輸入/輸出單元,每個單元提供一立 元的互連埠。 8、 如申請專利範圍第7項所述的方法,其特徵在於. 所述每個輸入/輸出單元包括: (a )動態可重組態標記記憶體模組; ⑴-個受控於動態可重組態標記記憶體模組的 第-多工器’用於從多個可程式邏輯元件的組態信號 中選擇輸出到1位元互連埠的一個輪出作號· (c) 乡個可被動態可重組態標記記憶體^組選中 的鎖存器,接收1位元互連埠的信號。 1307846 -—~— 97年12月19日修正替換頁 9、如申請專利範圍第8項所述的方法,其特徵在於: 所述動態可重組態標記記憶體模組包括一個或多個 動態可重組態標記記憶體。 • 1 〇、如申請專利範圍第8項所述的方法,其特徵在 於.所述動態可重組態標記記憶體模組還包括一個由 動態可重組態標記記憶體模組控制的第二多工器,所 述第二多工器從多個輸出賦能信號中選擇一個輸出 •賦能信號,控制緩衝器輸出信號到1位元互連埠。 11、 如申請專利範圍第1〇項所述的方法,其特徵在 於:所述緩衝器可呈高阻抗狀態。 12、 如申請專利範圍第10項所述的方法,其特徵在 於:所述每個輸出信號對應一個輸出賦能信號。 13、 如申請專利範圍第8項所述的方法,其特徵在 於:所述輸出信號包括固定信號。 Φ 14、如申請專利範圍第1項所述的方法,其特徵在 於:所述方法還包括如下步驟:為一個或多個可程式 -邏輯兀件分配給一個驗證用戶電路功能的校驗智慧 財產權核心。 〜 15、 如申請專利範圍第14項所述的方法,其特徵在 於:所述校驗智慧財產權核心包括一個模擬一個業界 標準通信介面操作的電路。 ” 1 16、 如申請專利範圍第1項所述的方法,其特徵在 於:所述方法還包括如下步驟:為一個或多個可程式
1307846 '輯7L件刀配一個性能分析智慧財產權核心、 於·所如=專利範圍第16項所述的方法,其特徵在 智慧財產權能::。智慧財產權核心包括-個頻寬分析 18、 如申請專利簕 於:所述方法還包括如下牛項:述的方法’其特徵在 重組態邏輯電路分t二步個驟“提供一個可將動態可 組態工具。”配一個被選可程式邏輯元件的 19、 如申請專利項所料方法, 於:所述方法還包杠‘卞止 八特徵在 態在-個裝有多個可程下二-個可動態重組 排的面板組態切^件的電路板上匯流 20、 如申請專利範8第2項所料方法, 下步驟··提供-個系統除錯工 輯元件内部和多個可裎i馮赭- 邏 ㈧如件之間的信號。 21、 如申明專利範圍第2〇項所述的 於:所述系統除錯工且包& ,,、特徵在 4 1。 -包括-個㈣可程相陣列回 讃工具 22、 如申請專利範圍第2〇項所述 —具包括一個系統公:匯= 工具。 f 23、 如申請專利範圍第20項所述的方法,其特徵在 34 1307846 -- 97年12月19日修正替換頁 於:所述系統除錯工具包括一個内部邏輯分析工具。 24、如申請專利範圍第23項所述的方法,其特徵在 於:在一個邏輯分析電路中包括一個或多個可程式邏 -輯元件。 ,25、如申請專利範圍第2〇項所述的方法,其特徵在 於:所述系統除錯工具包括一個頻寬分析工具。 .26、如申請專利範圍第2〇項所述的方法,其特徵在 •於:所述系統除錯工具包括一個符號/異動擷取工具。 27、 如申請專利範圍第26項所述的方法,其特徵在 於:所述符號/異動擷取工具允許用戶把一個或多個 信號與一個符號名稱相關聯。 28、 如申請專利範圍第26項所述的方法,其特徵在 於:所述符號/異動擷取工具允許用戶通過設定信號 異動的方式在信號波形中設定一個包含多個信號的 異動。 • 29、如申請專利範圍第26項所述的方法,其特徵在 -於:所述符號/異動擷取工具通過相關的符號名稱報 告設定異動的偵測結果。 30、 如申請專利範圍第20項所述的方法,其特徵在 於:所述系統除錯工具包括一個模擬器聯接工具。 31、 如申請專利範圍第3〇項所述的方法,其特徵在 於:所述模擬器聯接工具允許用戶設計與一個在協同 模擬環境下進行於用戶工作站的模擬器程式互動。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/056,961 US7353162B2 (en) | 2005-02-11 | 2005-02-11 | Scalable reconfigurable prototyping system and method |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200643751A TW200643751A (en) | 2006-12-16 |
TWI307846B true TWI307846B (en) | 2009-03-21 |
Family
ID=36793734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW095104572A TWI307846B (en) | 2005-02-11 | 2006-02-10 | Method for emulating user designing |
Country Status (5)
Country | Link |
---|---|
US (1) | US7353162B2 (zh) |
EP (1) | EP1849070A4 (zh) |
CN (1) | CN1818912B (zh) |
TW (1) | TWI307846B (zh) |
WO (1) | WO2006086583A2 (zh) |
Families Citing this family (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005043617A1 (en) * | 2003-10-31 | 2005-05-12 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor integrated circuit and design method thereof |
KR100536293B1 (ko) * | 2004-02-17 | 2005-12-12 | 박현주 | 칩 설계 검증 장치 및 방법 |
EP1962210A4 (en) * | 2005-11-30 | 2010-03-17 | Ip Flex Inc | STYLE RECONSTRUCTION METHOD AND COMPUTER SYSTEM HAVING THE SAME |
US7673264B1 (en) * | 2006-04-06 | 2010-03-02 | Virage Logic Corp. | System and method for verifying IP integrity in system-on-chip (SOC) design |
US7949907B2 (en) * | 2006-10-03 | 2011-05-24 | Wipro Limited | Method and device for data communication |
US7702840B1 (en) | 2007-05-14 | 2010-04-20 | Xilinx, Inc. | Interface device lane configuration |
US7573295B1 (en) * | 2007-05-14 | 2009-08-11 | Xilinx, Inc. | Hard macro-to-user logic interface |
US7626418B1 (en) | 2007-05-14 | 2009-12-01 | Xilinx, Inc. | Configurable interface |
US7557607B1 (en) | 2007-05-14 | 2009-07-07 | Xilinx, Inc. | Interface device reset |
US7535254B1 (en) | 2007-05-14 | 2009-05-19 | Xilinx, Inc. | Reconfiguration of a hard macro via configuration registers |
US8412922B2 (en) * | 2007-10-24 | 2013-04-02 | Sercomm Corporation | On-site configuration of a hardware device module of a security system |
US9154379B2 (en) * | 2007-10-25 | 2015-10-06 | Sercomm Corporation | Remote configuration of a hardware device module of a security system |
US8229723B2 (en) * | 2007-12-07 | 2012-07-24 | Sonics, Inc. | Performance software instrumentation and analysis for electronic design automation |
US8136065B2 (en) * | 2007-12-10 | 2012-03-13 | Inpa Systems, Inc. | Integrated prototyping system for validating an electronic system design |
US7908576B2 (en) * | 2007-12-10 | 2011-03-15 | Inpa Systems, Inc. | Method of progressively prototyping and validating a customer's electronic system design |
US7783819B2 (en) | 2008-03-31 | 2010-08-24 | Intel Corporation | Integrating non-peripheral component interconnect (PCI) resources into a personal computer system |
US8073820B2 (en) * | 2008-04-07 | 2011-12-06 | Sonics, Inc. | Method and system for a database to monitor and analyze performance of an electronic design |
JP5056644B2 (ja) * | 2008-07-18 | 2012-10-24 | 富士通セミコンダクター株式会社 | データ変換装置、データ変換方法及びプログラム |
US8245163B1 (en) * | 2008-07-23 | 2012-08-14 | Altera Corporation | Partial compilation of circuit design with new software version to obtain a complete compiled design |
US20100161309A1 (en) * | 2008-12-23 | 2010-06-24 | Scaleo Chip | Apparatus and Methods Thereof for Configuration and Control of a System-On-Chip Emulation Platform |
US8324924B2 (en) * | 2009-10-20 | 2012-12-04 | David Scott Landoll | Post-programming functional verification for programable integrated circuits |
US8732650B2 (en) | 2010-02-12 | 2014-05-20 | Synopsys Taiwan Co., LTD. | Method and apparatus for versatile controllability and observability in prototype system |
US8839179B2 (en) | 2010-02-12 | 2014-09-16 | Synopsys Taiwan Co., LTD. | Prototype and emulation system for multiple custom prototype boards |
US8281280B2 (en) * | 2010-02-12 | 2012-10-02 | Springsoft, Inc. | Method and apparatus for versatile controllability and observability in prototype system |
US8719762B2 (en) | 2010-02-12 | 2014-05-06 | Synopsys Taiwan Co., LTD. | Method and apparatus for turning custom prototype boards into co-simulation, co-emulation systems |
US8395416B2 (en) * | 2010-09-21 | 2013-03-12 | Intel Corporation | Incorporating an independent logic block in a system-on-a-chip |
KR101243441B1 (ko) * | 2011-04-27 | 2013-03-13 | 엘에스산전 주식회사 | 재구성 가능한 컴포넌트 기반의 plc 시뮬레이터 |
CN102222129A (zh) * | 2011-05-11 | 2011-10-19 | 烽火通信科技股份有限公司 | 一种动态重配置仿真环境的方法 |
US8356272B2 (en) * | 2011-05-12 | 2013-01-15 | S2C Inc. | Logic verification module apparatus to serve as a hyper prototype for debugging an electronic design that exceeds the capacity of a single FPGA |
CN102214258B (zh) * | 2011-06-15 | 2013-03-06 | 福州瑞芯微电子有限公司 | 一种针对图像处理类ip电路的验证平台 |
CN102411535B (zh) * | 2011-08-02 | 2014-04-16 | 上海交通大学 | 导航SoC芯片仿真、验证和调试平台 |
TWI459216B (zh) * | 2011-09-09 | 2014-11-01 | Iner Aec Executive Yuan | 數位安全系統硬體化之方法 |
US8902625B2 (en) * | 2011-11-22 | 2014-12-02 | Marvell World Trade Ltd. | Layouts for memory and logic circuits in a system-on-chip |
US9032344B2 (en) | 2012-07-08 | 2015-05-12 | S2C Inc. | Verification module apparatus for debugging software and timing of an embedded processor design that exceeds the capacity of a single FPGA |
CN102799509B (zh) * | 2012-07-10 | 2014-12-10 | 中国科学技术大学 | 基于双fpga芯片的高带宽可扩展复杂逻辑验证系统 |
US8977637B2 (en) * | 2012-08-30 | 2015-03-10 | International Business Machines Corporation | Facilitating field programmable gate array accelerations of database functions |
US8949752B2 (en) | 2012-12-01 | 2015-02-03 | Synopsys, Inc. | System and method of emulating multiple custom prototype boards |
EP2765528B1 (de) * | 2013-02-11 | 2018-11-14 | dSPACE digital signal processing and control engineering GmbH | Wahlfreier Zugriff auf Signalwerte eines FPGA zur Laufzeit |
WO2014122320A2 (de) | 2013-02-11 | 2014-08-14 | Dspace Digital Signal Processing And Control Engineering Gmbh | Verändern eines signalwerts eines fpga zur laufzeit |
US9698791B2 (en) | 2013-11-15 | 2017-07-04 | Scientific Concepts International Corporation | Programmable forwarding plane |
US10326448B2 (en) | 2013-11-15 | 2019-06-18 | Scientific Concepts International Corporation | Code partitioning for the array of devices |
US9294097B1 (en) | 2013-11-15 | 2016-03-22 | Scientific Concepts International Corporation | Device array topology configuration and source code partitioning for device arrays |
US9639654B2 (en) * | 2014-12-11 | 2017-05-02 | International Business Machines Corporation | Managing virtual boundaries to enable lock-free concurrent region optimization of an integrated circuit |
CN108227607B (zh) * | 2016-12-14 | 2020-06-30 | 中国航空工业集团公司西安航空计算技术研究所 | 一种简化电路板配置电路的方法 |
EP3399425B1 (de) * | 2017-05-05 | 2020-07-29 | dSPACE digital signal processing and control engineering GmbH | Verfahren zur erkennung einer verdrahtungstopologie |
US10796048B1 (en) * | 2017-06-16 | 2020-10-06 | Synopsys, Inc. | Adding delay elements to enable mapping a time division multiplexing circuit on an FPGA of a hardware emulator |
US10282501B1 (en) * | 2017-09-07 | 2019-05-07 | Cadence Design Systems, Inc. | Support for multiple user defined assertion checkers in a multi-FPGA prototyping system |
CN108255657A (zh) * | 2018-01-16 | 2018-07-06 | 中国北方车辆研究所 | 硬件可重构信号激励源及基于其实现的软件配置方法 |
CN109710266B (zh) * | 2019-01-17 | 2022-02-18 | 郑州云海信息技术有限公司 | 一种异构系统中的任务处理方法、主机服务器、异构系统 |
CN110988661B (zh) * | 2019-12-09 | 2022-11-11 | 上海思尔芯技术股份有限公司 | 一种fpga原型验证开发板时分分析系统、方法、介质及终端 |
CN110907857B (zh) * | 2019-12-10 | 2022-05-13 | 上海国微思尔芯技术股份有限公司 | 一种基于fpga的连接器自动检测方法 |
CN112434483B (zh) * | 2020-12-18 | 2024-07-16 | 深圳国微芯科技有限公司 | 数据传输系统的生成方法和数据传输系统 |
Family Cites Families (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5452231A (en) * | 1988-10-05 | 1995-09-19 | Quickturn Design Systems, Inc. | Hierarchically connected reconfigurable logic assembly |
US5109353A (en) * | 1988-12-02 | 1992-04-28 | Quickturn Systems, Incorporated | Apparatus for emulation of electronic hardware system |
US5329470A (en) * | 1988-12-02 | 1994-07-12 | Quickturn Systems, Inc. | Reconfigurable hardware emulation system |
US5475830A (en) * | 1992-01-31 | 1995-12-12 | Quickturn Design Systems, Inc. | Structure and method for providing a reconfigurable emulation circuit without hold time violations |
US5425036A (en) * | 1992-09-18 | 1995-06-13 | Quickturn Design Systems, Inc. | Method and apparatus for debugging reconfigurable emulation systems |
US5596742A (en) * | 1993-04-02 | 1997-01-21 | Massachusetts Institute Of Technology | Virtual interconnections for reconfigurable logic systems |
US5680583A (en) * | 1994-02-16 | 1997-10-21 | Arkos Design, Inc. | Method and apparatus for a trace buffer in an emulation system |
US5761484A (en) * | 1994-04-01 | 1998-06-02 | Massachusetts Institute Of Technology | Virtual interconnections for reconfigurable logic systems |
WO1996013902A1 (en) * | 1994-11-01 | 1996-05-09 | Virtual Machine Works, Inc. | Programmable multiplexing input/output port |
US5659716A (en) * | 1994-11-23 | 1997-08-19 | Virtual Machine Works, Inc. | Pipe-lined static router and scheduler for configurable logic system performing simultaneous communications and computation |
GB9508932D0 (en) * | 1995-05-02 | 1995-06-21 | Xilinx Inc | FPGA with parallel and serial user interfaces |
US5923865A (en) * | 1995-06-28 | 1999-07-13 | Quickturn Design Systems, Inc. | Emulation system having multiple emulated clock cycles per emulator clock cycle and improved signal routing |
US5649176A (en) * | 1995-08-10 | 1997-07-15 | Virtual Machine Works, Inc. | Transition analysis and circuit resynthesis method and device for digital circuit modeling |
US5802348A (en) * | 1995-12-18 | 1998-09-01 | Virtual Machine Works, Inc. | Logic analysis system for logic emulation systems |
US5870410A (en) * | 1996-04-29 | 1999-02-09 | Altera Corporation | Diagnostic interface system for programmable logic system development |
US5748875A (en) * | 1996-06-12 | 1998-05-05 | Simpod, Inc. | Digital logic simulation/emulation system |
US5841967A (en) * | 1996-10-17 | 1998-11-24 | Quickturn Design Systems, Inc. | Method and apparatus for design verification using emulation and simulation |
US6389379B1 (en) * | 1997-05-02 | 2002-05-14 | Axis Systems, Inc. | Converification system and method |
US6009256A (en) * | 1997-05-02 | 1999-12-28 | Axis Systems, Inc. | Simulation/emulation system and method |
US6651225B1 (en) * | 1997-05-02 | 2003-11-18 | Axis Systems, Inc. | Dynamic evaluation logic system and method |
US6321366B1 (en) * | 1997-05-02 | 2001-11-20 | Axis Systems, Inc. | Timing-insensitive glitch-free logic system and method |
US6026230A (en) * | 1997-05-02 | 2000-02-15 | Axis Systems, Inc. | Memory simulation system and method |
US6134516A (en) * | 1997-05-02 | 2000-10-17 | Axis Systems, Inc. | Simulation server system and method |
US6785873B1 (en) * | 1997-05-02 | 2004-08-31 | Axis Systems, Inc. | Emulation system with multiple asynchronous clocks |
US5943490A (en) * | 1997-05-30 | 1999-08-24 | Quickturn Design Systems, Inc. | Distributed logic analyzer for use in a hardware logic emulation system |
US5960191A (en) * | 1997-05-30 | 1999-09-28 | Quickturn Design Systems, Inc. | Emulation system with time-multiplexed interconnect |
US6020760A (en) * | 1997-07-16 | 2000-02-01 | Altera Corporation | I/O buffer circuit with pin multiplexing |
US6289494B1 (en) * | 1997-11-12 | 2001-09-11 | Quickturn Design Systems, Inc. | Optimized emulation and prototyping architecture |
US20060117274A1 (en) * | 1998-08-31 | 2006-06-01 | Tseng Ping-Sheng | Behavior processor system and method |
US6947882B1 (en) * | 1999-09-24 | 2005-09-20 | Mentor Graphics Corporation | Regionally time multiplexed emulation system |
US6678645B1 (en) * | 1999-10-28 | 2004-01-13 | Advantest Corp. | Method and apparatus for SoC design validation |
US6868376B2 (en) * | 2000-03-02 | 2005-03-15 | Texas Instruments Incorporated | Debug bi-phase export and data recovery |
US6832185B1 (en) * | 2000-03-09 | 2004-12-14 | Quickturn Design Systems, Inc. | Non-synchronous hardware emulator |
US6654919B1 (en) * | 2000-04-17 | 2003-11-25 | Lsi Logic Corporation | Automated system for inserting and reading of probe points in silicon embedded testbenches |
GB2381910B (en) * | 2000-05-11 | 2005-03-02 | Quickturn Design Systems Inc | Emulation circuit with a hold time algorithm logic analyzer and shadow memory |
KR100374328B1 (ko) * | 2000-06-03 | 2003-03-03 | 박현숙 | 칩 설계 검증 및 테스트 장치 및 방법 |
US6864600B2 (en) * | 2001-02-09 | 2005-03-08 | National Semiconductor Corporation | Apparatus and method for providing multiple power supply voltages to an integrated circuit |
US20020133325A1 (en) * | 2001-02-09 | 2002-09-19 | Hoare Raymond R. | Discrete event simulator |
US6754763B2 (en) * | 2001-07-30 | 2004-06-22 | Axis Systems, Inc. | Multi-board connection system for use in electronic design automation |
WO2003013040A1 (en) * | 2001-08-02 | 2003-02-13 | Morphics Technology, Inc. | Configurable terminal engine |
US20030126533A1 (en) * | 2001-12-28 | 2003-07-03 | Mcadams Mark Alan | Testing of circuit modules embedded in an integrated circuit |
US7127639B2 (en) * | 2002-11-22 | 2006-10-24 | Texas Instruments Incorporated | Distinguishing between two classes of trace information |
US7440884B2 (en) * | 2003-01-23 | 2008-10-21 | Quickturn Design Systems, Inc. | Memory rewind and reconstruction for hardware emulator |
US7072825B2 (en) * | 2003-06-16 | 2006-07-04 | Fortelink, Inc. | Hierarchical, network-based emulation system |
US7650542B2 (en) * | 2004-12-16 | 2010-01-19 | Broadcom Corporation | Method and system of using a single EJTAG interface for multiple tap controllers |
-
2005
- 2005-02-11 US US11/056,961 patent/US7353162B2/en active Active
- 2005-10-13 CN CN2005101134610A patent/CN1818912B/zh active Active
-
2006
- 2006-02-09 EP EP06734688A patent/EP1849070A4/en not_active Ceased
- 2006-02-09 WO PCT/US2006/004631 patent/WO2006086583A2/en active Application Filing
- 2006-02-10 TW TW095104572A patent/TWI307846B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP1849070A2 (en) | 2007-10-31 |
WO2006086583A2 (en) | 2006-08-17 |
CN1818912A (zh) | 2006-08-16 |
US20060184350A1 (en) | 2006-08-17 |
TW200643751A (en) | 2006-12-16 |
CN1818912B (zh) | 2010-05-12 |
EP1849070A4 (en) | 2010-01-20 |
US7353162B2 (en) | 2008-04-01 |
WO2006086583A3 (en) | 2007-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI307846B (en) | Method for emulating user designing | |
US5551013A (en) | Multiprocessor for hardware emulation | |
JP3060018B2 (ja) | 複数の電気的に再構成可能なゲートアレイを用いて論理構成を構築する方法 | |
US7987086B2 (en) | Software entity for the creation of a hybrid cycle simulation model | |
Lis et al. | Synthesis from VHDL | |
Ost et al. | MAIA: a framework for networks on chip generation and verification | |
US20090007050A1 (en) | System for designing re-programmable digital hardware platforms | |
JP4664056B2 (ja) | 電子機器の動作をエミュレートする装置 | |
JP2009031933A (ja) | スケーラブル再構成可能型プロトタイプシステムと方法 | |
CN105956302A (zh) | 一种可配置的抗辐射芯片前端网表自动生成方法 | |
Krupnova et al. | FPGA-based emulation: Industrial and custom prototyping solutions | |
Nangia et al. | Functional verification of I2C core using SystemVerilog | |
Tanir et al. | A specification-driven architectural design environment | |
Sarker et al. | Synthesis of VHDL code for FPGA design flow using Xilinx PlanAhead tool | |
Turki et al. | Towards synthetic benchmarks generator for CAD tool evaluation | |
Drongowski et al. | A graphical hardware design language | |
CN106709187A (zh) | 基于模型建立cpu的方法及装置 | |
Werner et al. | Optimized hw/fw generation from an abstract register interface model | |
Shetty et al. | Enabling the design of behavioral systems-on-chip | |
CN1632767A (zh) | 一种加载现场可编程门阵列的系统和方法 | |
Bjerregaard et al. | A channel library for asynchronous circuit design supporting mixed-mode modeling | |
Han et al. | Clocked and asynchronous FIFO characterization and comparison | |
Schumacher et al. | IMORC: Application mapping, monitoring and optimization for high-performance reconfigurable computing | |
EP1236222A2 (en) | Universal hardware device and method and tools for use therewith | |
McGraw et al. | Refinement of system-level designs using hybrid modeling |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |