TWI307846B - Method for emulating user designing - Google Patents

Method for emulating user designing Download PDF

Info

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
Application number
TW095104572A
Other languages
English (en)
Other versions
TW200643751A (en
Inventor
Thomas B Huang
Mon Ren Chene
Original Assignee
S2C Inc
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 S2C Inc filed Critical S2C Inc
Publication of TW200643751A publication Critical patent/TW200643751A/zh
Application granted granted Critical
Publication of TWI307846B publication Critical patent/TWI307846B/zh

Links

Classifications

    • 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

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〇項所述的方法,其特徵在 於:所述模擬器聯接工具允許用戶設計與一個在協同 模擬環境下進行於用戶工作站的模擬器程式互動。
TW095104572A 2005-02-11 2006-02-10 Method for emulating user designing TWI307846B (en)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7509603B2 (en) * 2003-10-31 2009-03-24 Semiconductor Energy Laboratory Co., Ltd. Semiconductor integrated circuit and design method thereof
KR100536293B1 (ko) * 2004-02-17 2005-12-12 박현주 칩 설계 검증 장치 및 방법
US8200469B2 (en) * 2005-11-30 2012-06-12 Fuji Xerox Co., Ltd. Method for reconstructing statement, and computer system having the function therefor
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
US7573295B1 (en) * 2007-05-14 2009-08-11 Xilinx, Inc. Hard macro-to-user logic interface
US7535254B1 (en) 2007-05-14 2009-05-19 Xilinx, Inc. Reconfiguration of a hard macro via configuration registers
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
US7702840B1 (en) 2007-05-14 2010-04-20 Xilinx, Inc. Interface device lane configuration
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
US8281280B2 (en) * 2010-02-12 2012-10-02 Springsoft, Inc. Method and apparatus for versatile controllability and observability in prototype system
US8732650B2 (en) 2010-02-12 2014-05-20 Synopsys Taiwan Co., LTD. 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
US8839179B2 (en) 2010-02-12 2014-09-16 Synopsys Taiwan Co., LTD. Prototype and emulation system for multiple custom prototype boards
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
CN104981807B (zh) 2013-02-11 2019-04-23 帝斯贝思数字信号处理和控制工程有限公司 在运行中改变fpga的信号值
EP2765528B1 (de) * 2013-02-11 2018-11-14 dSPACE digital signal processing and control engineering GmbH Wahlfreier Zugriff auf Signalwerte eines FPGA zur Laufzeit
US9698791B2 (en) 2013-11-15 2017-07-04 Scientific Concepts International Corporation Programmable forwarding plane
US9294097B1 (en) 2013-11-15 2016-03-22 Scientific Concepts International Corporation Device array topology configuration and source code partitioning for device arrays
US10326448B2 (en) 2013-11-15 2019-06-18 Scientific Concepts International Corporation Code partitioning for the array of devices
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的连接器自动检测方法
CN112434483A (zh) * 2020-12-18 2021-03-02 国微集团(深圳)有限公司 数据传输系统的生成方法和数据传输系统

Family Cites Families (45)

* Cited by examiner, † Cited by third party
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
US6785873B1 (en) * 1997-05-02 2004-08-31 Axis Systems, Inc. Emulation system with multiple asynchronous clocks
US6134516A (en) * 1997-05-02 2000-10-17 Axis Systems, Inc. Simulation server system and method
US6026230A (en) * 1997-05-02 2000-02-15 Axis Systems, Inc. Memory simulation system and method
US6321366B1 (en) * 1997-05-02 2001-11-20 Axis Systems, Inc. Timing-insensitive glitch-free logic system and method
US6651225B1 (en) * 1997-05-02 2003-11-18 Axis Systems, Inc. Dynamic evaluation logic system and method
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
US5960191A (en) * 1997-05-30 1999-09-28 Quickturn Design Systems, Inc. Emulation system with time-multiplexed interconnect
US5943490A (en) * 1997-05-30 1999-08-24 Quickturn Design Systems, Inc. Distributed logic analyzer for use in a hardware logic emulation system
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
US6725391B2 (en) * 2000-03-02 2004-04-20 Texas Instruments Incorporated Clock modes for a debug port with on the fly clock switching
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
DE10196175T1 (de) * 2000-05-11 2003-04-17 Quickturn Design Systems Inc Emulations-Schaltkreis mit einem Haltezeit-Algorithmus, Logikanalysierer und Shadow-Speicher
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

Also Published As

Publication number Publication date
EP1849070A2 (en) 2007-10-31
EP1849070A4 (en) 2010-01-20
TW200643751A (en) 2006-12-16
CN1818912B (zh) 2010-05-12
CN1818912A (zh) 2006-08-16
US20060184350A1 (en) 2006-08-17
WO2006086583A2 (en) 2006-08-17
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) 複数の電気的に再構成可能なゲートアレイを用いて論理構成を構築する方法
Wingard MicroNetwork-based integration for SOCs
US7340693B2 (en) System for designing re-programmable digital hardware platforms
US7483825B2 (en) Method for the creation of a hybrid cycle simulation model
Ost et al. MAIA: a framework for networks on chip generation and verification
JPH0773066A (ja) メモリ回路構成法および装置
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
CN1333349C (zh) 一种加载现场可编程门阵列的系统和方法
Drongowski et al. A graphical hardware design language
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
Wohl et al. Using Verilog simulation libraries for ATPG
Tessier Multi-FPGA systems: Logic emulation
McGraw et al. Refinement of system-level designs using hybrid modeling
Claretto et al. Fast prototyping of an ASIC for ATM application using a synthesizable VHDL flexible library
Vajja Emulation of ASIC based network processor on a FPGA platform
Interface 5 Developing Acceleratable Universal Verification Components (UVCs)

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees