專利名稱:利用電路建模進(jìn)行數(shù)據(jù)處理的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于流應(yīng)用的建模。更具體地,本發(fā)明涉及用于實時 地或接近實時地對流應(yīng)用進(jìn)行建模的方法和裝置。
背景技術(shù):
電子行業(yè)持續(xù)投入大量努力,以求獲得高性能、高功能的電路。 這方面的顯著成就體現(xiàn)于,在小的硅晶片區(qū)域上制造超大規(guī)模集成電 路。這種類型的集成電路通過特定順序的一系列步驟而得以發(fā)展。設(shè) 計這種器件的主要目標(biāo)是,獲得與器件的具體設(shè)計的地理特征相一致 的器件。為了實現(xiàn)這個目標(biāo),嚴(yán)密地控制設(shè)計過程中的步驟,以保證 剛性要求得以實現(xiàn)。
大量使用半導(dǎo)體器件來構(gòu)造多數(shù)的現(xiàn)代電子器件。為了增加這些 電子設(shè)備的性能,需要把甚至更多數(shù)目的這些器件集成到單一的硅晶 片中。由于把半導(dǎo)體器件縮小(即使其變小)以在給定的表面區(qū)域上 形成更多數(shù)目的器件,這些器件的結(jié)構(gòu)以及用于制造這些器件的制造 技術(shù)變得更加精細(xì)。對這些半導(dǎo)體器件進(jìn)行細(xì)化的增強的能力導(dǎo)致不 斷增加的定制芯片增殖,每一個芯片具有唯一的功能和應(yīng)用。而這又 導(dǎo)致了用于有效且非昂貴地對芯片進(jìn)行設(shè)計和成功測試的各種技術(shù)。
對于許多芯片設(shè)計,通過使用硬件描述語言(HDL),例如Verilog 或VHDL,對定制芯片的功能進(jìn)行描述,以此來制造定制芯片。通常編 寫硬件描述語言來描述該設(shè)計在功能性宏組方面的特征。對該設(shè)計進(jìn) 行計算機(jī)仿真,以確保滿足定制的設(shè)計標(biāo)準(zhǔn)。對于高度復(fù)雜的定制芯 片設(shè)計,上述過程繁重且代價高。這些芯片高度集成的結(jié)構(gòu)導(dǎo)致未期 望的問題,例如信號時序、噪聲耦合以及信號級的問題。因此,這些 復(fù)雜的定制芯片設(shè)計包括外延驗證(extensive validation)。通常,
使用Verilog或VHDL仿真器在不同的級上執(zhí)行這個驗證。一旦在這個等 級上進(jìn)行驗證,則例如使用"Synopsys"對Verilog或VHDLHDL代碼進(jìn) 行綜合以形成網(wǎng)表,把該網(wǎng)表提供給ASIC (專用集成電路)工廠進(jìn)行 原型制造。然后在硅中對ASIC原型進(jìn)行測試。即使在利用Verilog或 VHDL仿真器進(jìn)行該驗證后,典型地也可能出現(xiàn)未期望的問題??朔@ 些問題包括對上述過程進(jìn)行更多次的反復(fù),在仿真級和原型級進(jìn)行測 試和驗證。該反復(fù)明顯增加了設(shè)計時間和成本,使得這個實踐在當(dāng)今 時效性很高的市場中通常是不可忍受的。
類似的問題出現(xiàn)在半定制設(shè)計中,例如可編程邏輯器件??删幊?邏輯器件也被稱作"PLD",是一種公知類型的集成電路,可以被編程 以執(zhí)行特定的邏輯功能。 一種常見類型的PLD是現(xiàn)場可編程門陣列 (FPGA),它具有多個不同的電路片(tile),每一個電路片都允許對 其功能進(jìn)行編程的特定靈活性。盡管多數(shù)PLD的編程明顯快于多數(shù)復(fù)雜
定制芯片的設(shè)計,然而這些工作仍包括明顯的延遲。
如2002年2月12日公布的美國專利No.6, 347, 395,標(biāo)題為"Method and Arrangement for Rapid Silicon Prototyping"中示出并描述的 那樣,可通過快速硅原型開發(fā)方法和裝置將典型的開發(fā)周期(從最初 的設(shè)計到新的產(chǎn)品)縮短多于50%。然而,即使利用快速硅原型開發(fā), 也需要實質(zhì)的延遲對修改的設(shè)計進(jìn)行編譯,以評價新的算法或解決在 驗證期間發(fā)現(xiàn)的問題。
當(dāng)試圖實時或接近實時地對流數(shù)據(jù)進(jìn)行處理時,其中延遲度在逐 個應(yīng)用的基礎(chǔ)上是可忍受的,這些芯片開發(fā)問題變得突出。
發(fā)明內(nèi)容
因此,需要能夠克服上述缺陷的用于開發(fā)定制(包括半定制)芯 片的方式。本發(fā)明通過對這里公開的每個示例進(jìn)行設(shè)計建模,解決了 這個需求和其他需求。
本發(fā)明的各個方面涉及以解決和克服上述問題的方式對流數(shù)據(jù) 進(jìn)行設(shè)計建模和/或處理。根據(jù)一個示例實施例, 一種用于對硬件規(guī)范 進(jìn)行建模的系統(tǒng)包括被設(shè)置為接收輸入數(shù)據(jù)流并發(fā)送輸出數(shù)據(jù)流的平
臺。所述系統(tǒng)還包括流應(yīng)用源,適于以源數(shù)據(jù)率提供輸入數(shù)據(jù)流;
流應(yīng)用目的地,適于以目的地數(shù)據(jù)率吸收輸出數(shù)據(jù)流;以及數(shù)據(jù)信道,
把所述平臺與通用計算機(jī)相連。所述通用計算機(jī)適于根據(jù)所述硬件規(guī) 范的至少一部分、從第一中間數(shù)據(jù)流中產(chǎn)生第二中間數(shù)據(jù)流,第一數(shù) 據(jù)流通過所述數(shù)據(jù)信道從所述平臺而接收,而第二數(shù)據(jù)流通過所述數(shù) 據(jù)信道而發(fā)送至所述平臺,其中,第一中間數(shù)據(jù)流基于輸入數(shù)據(jù)流, 而輸出數(shù)據(jù)流基于第二中間數(shù)據(jù)流。
本發(fā)明的另一個實施例公開了一種用于對電子設(shè)計進(jìn)行建模的
方法。所述方法包括根據(jù)流過所述電子設(shè)計的流數(shù)據(jù),把針對流應(yīng) 用的所述電子設(shè)計分為用于接收流應(yīng)用的輸入數(shù)據(jù)流的起始部分、中 間部分以及用于發(fā)送流應(yīng)用的輸出數(shù)據(jù)流的結(jié)束部分。所述方法還包 括產(chǎn)生針對所述起始部分和所述結(jié)束部分的硬件規(guī)范;產(chǎn)生針對所 述中間部分的抽象軟件模型;以及從所述硬件規(guī)范中產(chǎn)生可編程邏輯 器件(PLD)實施方式的配置數(shù)據(jù),其中,所述PLD包括由所述配置數(shù) 據(jù)進(jìn)行編程的可配置邏輯和可配置路由。所述方法還包括從所述抽 象軟件模型中產(chǎn)生可執(zhí)行程序,以及使用所述配置數(shù)據(jù)操作所述PLD 并使用所述可執(zhí)行程序操作通用計算機(jī),其中,所述電子設(shè)計由所述 PLD和所述通用計算機(jī)的操作來建模。
考慮下文結(jié)合附圖對本發(fā)明的各個實施例的詳細(xì)描述,將會更加 完整地理解本發(fā)明,其中.-
圖l是根據(jù)本發(fā)明用于實時抽象(abstract)流應(yīng)用建模的示例 系統(tǒng)的框圖2是根據(jù)本發(fā)明用于實時提煉流應(yīng)用建模的另一示例系統(tǒng)的框 圖;以及
圖3是根據(jù)本發(fā)明用于實時提煉流應(yīng)用建模的示例方法的流程圖。
具體實施例方式
雖然本發(fā)明能夠適應(yīng)各種修改和備選形式,然而其細(xì)節(jié)已經(jīng)通過 附圖中的示例而示出,并將被詳細(xì)描述。然而應(yīng)當(dāng)理解的是,其意圖 不是把本發(fā)明限制為所述具體實施例。相反,本發(fā)明將覆蓋落入所附 權(quán)利要求限定的本發(fā)明的精神和范圍內(nèi)的所有修改、等同物和備選。
本發(fā)明被認(rèn)為大體上可用于使用如下電路的數(shù)據(jù)處理方法和裝 置該電路需要對電路配置數(shù)據(jù)的快速編譯。本發(fā)明尤其可有利地用 于實時或接近實時地處理流數(shù)據(jù),其中延遲度在逐應(yīng)用的基礎(chǔ)上是可 忍受的。雖然本發(fā)明不會被限制為這些應(yīng)用,然而通過對該環(huán)境中的 示例的討論,可以最好地獲得對本發(fā)明各個方面的理解。
根據(jù)本發(fā)明一個示例實施例, 一種對硬件規(guī)范進(jìn)行建模的系統(tǒng)包 括被設(shè)置為接收輸入數(shù)據(jù)流并發(fā)送輸出數(shù)據(jù)流的平臺。所述系統(tǒng)還包 括流應(yīng)用源,適于以源數(shù)據(jù)率提供輸入數(shù)據(jù)流;流應(yīng)用目的地,適 于以目的地數(shù)據(jù)率吸收輸出數(shù)據(jù)流;以及數(shù)據(jù)信道,把所述平臺與通 用計算機(jī)相連。所述通用計算機(jī)適于根據(jù)所述硬件規(guī)范的至少一部分、 從第一中間數(shù)據(jù)流中產(chǎn)生第二中間數(shù)據(jù)流,第一數(shù)據(jù)流通過所述數(shù)據(jù) 信道從所述平臺而接收,而第二數(shù)據(jù)流通過所述數(shù)據(jù)信道而發(fā)送至所 述平臺,其中,第一中間數(shù)據(jù)流基于輸入數(shù)據(jù)流,而輸出數(shù)據(jù)流基于 第二中間數(shù)據(jù)流。
參考圖l,示出了根據(jù)本發(fā)明的系統(tǒng)100的框圖,該系統(tǒng)用于對流 應(yīng)用進(jìn)行實時的抽象建模。流應(yīng)用具有流數(shù)據(jù)源102,例如流視頻或音
頻源,例如視頻帶播放機(jī)、視盤播放機(jī)或音頻播放機(jī)。流應(yīng)用具有流
數(shù)據(jù)目的地104,例如視頻顯示設(shè)備或音頻揚聲器。在把處理的數(shù)據(jù)傳 遞到目的地104之前,根據(jù)流應(yīng)用的硬件規(guī)范由平臺106和通用計算機(jī) 108的組合對來自源102的數(shù)據(jù)進(jìn)行處理。平臺106和計算機(jī)108通過信 道110進(jìn)行通信。
平臺106可以是基于PLD的平臺,或可編程以執(zhí)行流應(yīng)用的一部分 的其他設(shè)備。備選地,平臺106可以是基于S0C的平臺,它包括片上系 統(tǒng)(SOC)。 Philips Semiconductors的示例平臺106包括快速硅原型開 發(fā)和Nexperia平臺,以及Nexperia高級原型開發(fā)架構(gòu)。
平臺106的示例S0C可以包括多種建造塊, 一個或更多個數(shù)字信號 處理—塊,它們典型地應(yīng)用流應(yīng)用的設(shè)計中。流應(yīng)用的硬件規(guī)范的特定 部分可以包括可用建造塊子集的實例,而硬件規(guī)范的余下部分可以由 計算機(jī)108來建模。例如,流應(yīng)用可以包括各種標(biāo)準(zhǔn)塊和創(chuàng)新的定制塊。
流應(yīng)用可以由系統(tǒng)100來建模,而系統(tǒng)100具有由平臺106建模的標(biāo)準(zhǔn)塊 和由計算機(jī)108上的軟件處理功能112建模的定制塊。定制塊的各種備 選設(shè)計可以快速地由系統(tǒng)100來評價,因為由軟件處理功能112建模的
定制塊可以快速地被修改和重編譯。
典型地,平臺106包括用于從應(yīng)用數(shù)據(jù)源102接收流數(shù)據(jù)的接收機(jī) 114。接收機(jī)114可以包括處理功能,例如把來自視頻帶播放機(jī)102的模 擬信號轉(zhuǎn)換為數(shù)字視頻流。典型地,平臺106包括用于向應(yīng)用數(shù)據(jù)目的 地104提供處理的流數(shù)據(jù)的發(fā)射機(jī)116。發(fā)射機(jī)116可以包括處理功能, 例如把處理的數(shù)字視頻流轉(zhuǎn)換為視頻顯示單元104的模擬信號??梢岳?解的是,接收機(jī)114和發(fā)射機(jī)116要么可以包括在PLD或S0C中,要么可 以與PLD或SOC分離,平臺106基于該PLD或SOC。
硬件處理功能118可以執(zhí)行流應(yīng)用的部分處理。硬件處理功能118 實現(xiàn)了與信道110的接口。信道110的示例包括例如PCI X的并行總線, 或是例如PCI Express的串行或并行通信鏈路。典型地,信道110根據(jù) 具體的流應(yīng)用而提供高帶寬。信道110可以是由計算機(jī)108直接支持的 通信協(xié)議,或由計算機(jī)108支持的通信協(xié)議與另一個通信協(xié)議(例如專 有通信協(xié)議)之間的適配器。
典型地,硬件處理118通過信道110向計算機(jī)108發(fā)送從應(yīng)用數(shù)據(jù)源 102接收到的、局部處理后的流數(shù)據(jù)??梢岳斫獾氖牵布幚?18可 以向計算機(jī)108僅發(fā)送流數(shù)據(jù)的一部分,例如彩色視頻數(shù)據(jù)的一個顏色 分量的數(shù)據(jù)??梢岳斫獾氖?,硬件處理118可以在不進(jìn)行前處理的情況 下向計算機(jī)108發(fā)送流數(shù)據(jù)。硬件處理118還通過信道110從計算機(jī)108 接收已經(jīng)由處理功能112處理過的流數(shù)據(jù)。硬件處理118向應(yīng)用數(shù)據(jù)目 的地104發(fā)送流數(shù)據(jù),該數(shù)據(jù)基于從計算機(jī)108接收到的流數(shù)據(jù)。硬件 處理118可以在向應(yīng)用數(shù)據(jù)目的地104提供流數(shù)據(jù)之前執(zhí)行對流數(shù)據(jù)的 附加處理。
元件處理功能112可以是通用計算機(jī)108上編譯的軟件功能。功能
112從平臺106接收的流數(shù)據(jù)和功能112發(fā)送至平臺106的力數(shù)據(jù)可以具 有抽象數(shù)據(jù)類型,例如數(shù)字序列,每一個數(shù)字表示流視頻數(shù)據(jù)的像素 強度值。由計算機(jī)108提供的可用抽象數(shù)據(jù)操作功能,例如乘法和加法, 可以用于對抽象表示的流數(shù)據(jù)進(jìn)行抽象的處理。示例功能112垂直地和 /或水平地對視頻圖像的方向進(jìn)行定標(biāo)。
可以理解的是,附圖中描述的元件僅用于描述,以幫助理解本發(fā) 明。如同現(xiàn)有技術(shù)中已知的,被描述為硬件的元件可以等同地以軟件 來實現(xiàn)。對特定電子電路的引用也僅為了幫助理解本發(fā)明,而且用于 執(zhí)行本質(zhì)上相同功能的任意電路可以被看作是等效電路。
參考圖2,示出了根據(jù)本發(fā)明的系統(tǒng)200的框圖,該系統(tǒng)用于對流 應(yīng)用進(jìn)行實時的抽象建模。來自源202的流應(yīng)用數(shù)據(jù)由基于PLD的平臺 204、信道206和計算機(jī)208的組合來處理,而處理后的流應(yīng)用數(shù)據(jù)被傳 遞至目的地210。
平臺204可以包括從應(yīng)用數(shù)據(jù)源202接收流數(shù)據(jù)并向FPGA 214提供 流數(shù)據(jù)的接收機(jī)212。 FPGA 214可以包括存儲器216,而FPGA 214可以 被編程為實現(xiàn)與存儲器216進(jìn)行接口的DMA塊218。DMA塊218可以提供面 向存儲器216的4個獨立DMA信道。第一DMA信道可以用于把通過接收機(jī) 212從源202接收到的數(shù)據(jù)寫入存儲器216;第二DMA信道可以用于從存 儲器216讀取數(shù)據(jù),該數(shù)據(jù)通過發(fā)射機(jī)220傳遞到應(yīng)用數(shù)據(jù)目的地210; 第三DMA信道可以用于從存儲器216讀取流數(shù)據(jù),該數(shù)據(jù)通過信道206 傳遞到計算機(jī)208;以及第四DMA信道,可以用于把通過信道206從計算 機(jī)208接收到的流數(shù)據(jù)寫入存儲器216。
存儲器216可以是雙端口存儲器,其中DMA塊218與一個端口相連, 而PFGA 214被編制用于實現(xiàn)與另一個端口相連的處理塊222。處理塊 222可以在把處理后的數(shù)據(jù)傳遞給計算機(jī)208之前執(zhí)行對從源202接收 到的流數(shù)據(jù)進(jìn)行處理,而且處理塊222可以在把處理后的數(shù)據(jù)傳遞給目 的地210之前執(zhí)行對從計算機(jī)208接收到的流數(shù)據(jù)進(jìn)行處理。因此,來 自源202的流數(shù)據(jù)在傳遞給目的地210之前,可以由處理塊222、計算機(jī) 208以及再次由處理塊222進(jìn)行三次按順序的處理操作。可以理解的是, 根據(jù)流應(yīng)用規(guī)范,可以省略由處理塊222執(zhí)行的這些處理操作中的任一
或兩者。在一個實施例中,處理塊222可以包括處理器。
在一個實施例中,信道206是插入服務(wù)器計算機(jī)208的PCI-X卡。 PCI-X卡206包括另一個FPGA 224,被編程為實現(xiàn)線路226上的PCI-X總 線的PCI-X協(xié)議與線路228上的專有通信協(xié)議之間的適配器功能,該專 有通信協(xié)議基于FPGA 214和FPGA 224所支持的低電平差分信令。FPGA 224的適配器功能包括PCI-X核心230、存儲器映射DMA控制器232、用 于1/0事務(wù)處理的存儲器映射橋234、用于存儲器事務(wù)處理的存儲器映 射橋236、中斷控制器238和信道控制器239。 PCI-X核心230可以實現(xiàn)線 路226上的PCI-X總線的PCI-X協(xié)議。存儲器映射DMA控制器232可以由計 算機(jī)208控制,以從存儲器216讀取脈沖串?dāng)?shù)據(jù)傳輸,從而通過PCI-X 控制器242把流數(shù)據(jù)傳遞到計算機(jī)208的存儲器240。計算機(jī)208可以產(chǎn) 生導(dǎo)致PCI-X控制器242通過存儲器映射橋236向存儲器216發(fā)送流數(shù)據(jù)
的脈沖串?dāng)?shù)據(jù)傳輸。
來自平臺204的流數(shù)據(jù)可以存儲在存儲器240的緩沖器中。在一個
實施例中,流數(shù)據(jù)被分為數(shù)據(jù)塊,而針對這些數(shù)據(jù)塊提供了多個緩沖 器,從而一個緩沖器可從平臺204接收塊流數(shù)據(jù),而另一個緩沖器同時 由在計算機(jī)208的處理器246上執(zhí)行的處理功能244來處理,而且把流數(shù) 據(jù)塊同時從另一個緩沖器發(fā)送至平臺204。利用更多數(shù)目的緩沖器,可
以進(jìn)一步分離各種數(shù)據(jù)傳輸和數(shù)據(jù)處理功能。
在一個實施例中,在完成對處理功能244的各種設(shè)計選項的評價 后,可以把處理功能244的抽象實現(xiàn)轉(zhuǎn)換為FPGA 214中實現(xiàn)的硬件規(guī) 范,從而不再需要信道206和計算機(jī)208來執(zhí)行流應(yīng)用。
參考圖3,示出了根據(jù)本發(fā)明的一種方法的示例的流程圖,該方法 用于對流應(yīng)用進(jìn)行實時的抽象建模。流應(yīng)用把來自源的處理后的流數(shù) 據(jù)傳遞至目的地。
在步驟302,硬件平臺從應(yīng)用數(shù)據(jù)源(例如視頻和/或音頻流源) 接收流數(shù)據(jù)。在步驟304,硬件平臺可選地對來自數(shù)據(jù)源的流數(shù)據(jù)執(zhí)行 處理。在步驟306,把流數(shù)據(jù)從硬件平臺傳輸?shù)酵ㄓ糜嬎銠C(jī)。如果硬件 平臺在步驟304處執(zhí)行處理,則在步驟306處傳輸?shù)牧鲾?shù)據(jù)是步驟304 處理后的流數(shù)據(jù),否則,步驟306處傳輸?shù)牧鲾?shù)據(jù)是在步驟302處從源
接收的數(shù)據(jù)。
在步驟308,通用計算機(jī)上的軟件從步驟306處傳輸?shù)臄?shù)據(jù)流中創(chuàng) 建處理后的數(shù)據(jù)流。通過對軟件進(jìn)fiM彥改和重編譯,可以快速地在抽
象級上針對步驟308的處理的各種設(shè)計選項進(jìn)行評價,從而允許根據(jù)評
價標(biāo)準(zhǔn)而選擇具體的設(shè)計選項。
在步驟310,把來自步驟308的處理后的數(shù)據(jù)流從通用計算機(jī)傳輸 到硬件平臺。在步驟312處,來自步驟308的處理后的數(shù)據(jù)流可選地由 硬件平臺做進(jìn)一步的處理,把結(jié)果從硬件平臺發(fā)送至應(yīng)用數(shù)據(jù)目的地。
因此,通過附圖和/或本發(fā)明的涉及流數(shù)據(jù)應(yīng)用抽象建模的示例實 施方式的討論,對各種實施例進(jìn)行了描述。本發(fā)明不應(yīng)被看作限制于 這些具體的示例實施方式。本發(fā)明可應(yīng)用的各種修改、等效過程以及 多種結(jié)構(gòu)落入本發(fā)明的范圍。這些變體可以被看作所附權(quán)利要求中提 出的所要保護(hù)的本發(fā)明的一部分。
權(quán)利要求
1.一種用于對硬件規(guī)范進(jìn)行建模的系統(tǒng),包括被設(shè)置為接收輸入數(shù)據(jù)流并發(fā)送輸出數(shù)據(jù)流的平臺(106);流應(yīng)用源(102),適于以源數(shù)據(jù)率提供輸入數(shù)據(jù)流;流應(yīng)用目的地(104),適于以目的地數(shù)據(jù)率吸收輸出數(shù)據(jù)流;數(shù)據(jù)信道(110),把所述平臺與通用計算機(jī)相連;以及所述通用計算機(jī),適于根據(jù)所述硬件規(guī)范的至少一部分、從第一中間數(shù)據(jù)流中產(chǎn)生第二中間數(shù)據(jù)流,其中第一中間數(shù)據(jù)流通過所述數(shù)據(jù)信道從所述平臺而接收,而第二中間數(shù)據(jù)流通過所述數(shù)據(jù)信道被發(fā)送至所述平臺,其中,第一中間數(shù)據(jù)流基于輸入數(shù)據(jù)流,而輸出數(shù)據(jù)流基于第二中間數(shù)據(jù)流。
2. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述平臺基于可編程邏輯 器件(PLD)。
3. 根據(jù)權(quán)利要求2所述的系統(tǒng),其中,所述基于PLD的平臺包括至 少一個存儲器,所述存儲器被設(shè)置用于存儲輸入數(shù)據(jù)流、第一中間數(shù) 據(jù)流、第二中間數(shù)據(jù)流以及輸出數(shù)據(jù)流的移動間隔。
4. 根據(jù)權(quán)利要求2所述的系統(tǒng),其中,所述基于PLD的平臺適于根據(jù)所述硬件規(guī)范的至少一部分、從輸入數(shù)據(jù)流中產(chǎn)生第一中間數(shù)據(jù)流。
5. 根據(jù)權(quán)利要求2所述的系統(tǒng),其中,所述基于PLD的平臺適于根據(jù)所述硬件規(guī)范的至少一部分、從第二中間數(shù)據(jù)流中產(chǎn)生輸出數(shù)據(jù)流。
6. 根據(jù)權(quán)利要求2所述的系統(tǒng),其中,所述基于PLD的平臺包括具 有可配置邏輯和可配置路由的PLD。
7. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中,第一中間數(shù)據(jù)流是輸入流 的副本,輸出數(shù)據(jù)流是第二中間數(shù)據(jù)流的副本,而且所述通用計算機(jī) 適于根據(jù)所述硬件規(guī)范而從第一中間數(shù)據(jù)流中產(chǎn)生第二中間數(shù)據(jù)流。
8. —種用于對電子設(shè)計進(jìn)行建模的方法,包括根據(jù)流過電子 設(shè)計的流數(shù)據(jù),把針對流應(yīng)用的所述電子設(shè)計分為用于接收流應(yīng)用的 輸入數(shù)據(jù)流的起始部分、中間部分(112)以及用于發(fā)送流應(yīng)用的輸出 數(shù)據(jù)流的結(jié)束部分;產(chǎn)生針對所述起始部分和所述結(jié)束部分的硬件規(guī) 范;產(chǎn)生針對所述中間部分的抽象軟件模型;以及從所述硬件規(guī)范中 產(chǎn)生可編程邏輯器件(PLD)實施方式的配置數(shù)據(jù),其中,所述PLD(118)包括由所述配置數(shù)據(jù)進(jìn)行編程的可配置邏輯和可配置路由;從所述抽 象軟件模型中產(chǎn)生可執(zhí)行程序;以及使用所述配置數(shù)據(jù)操作所述PLD, 并使用所述可執(zhí)行程序操作通用計算機(jī)(108),其中,所述操作對所 述電子設(shè)計進(jìn)行建模。
9. 根據(jù)權(quán)利要求8所述的方法,還包括根據(jù)所述操作對所述電 子設(shè)計進(jìn)行驗證。
10. 根據(jù)權(quán)利要求8所述的方法,還包括從所述抽象軟件模型中 產(chǎn)生導(dǎo)出的硬件規(guī)范;從所述硬件規(guī)范和所述導(dǎo)出的硬件規(guī)范中產(chǎn)生 PLD實施方式的另一配置數(shù)據(jù);以及使用所述另一配置數(shù)據(jù)來操作所述 PLD,其中,所述操作實現(xiàn)了所述電子設(shè)計。
全文摘要
本發(fā)明涉及對流數(shù)據(jù)進(jìn)行設(shè)計建模和/或處理。根據(jù)一個示例實施例,一種用于對硬件規(guī)范進(jìn)行建模的系統(tǒng)包括被設(shè)置為接收輸入數(shù)據(jù)流并發(fā)送輸出數(shù)據(jù)流的平臺(106)。所述系統(tǒng)還包括流應(yīng)用源(102),適于以源數(shù)據(jù)率提供輸入數(shù)據(jù)流;流應(yīng)用目的地(104),適于以目的地數(shù)據(jù)率吸收輸出數(shù)據(jù)流;以及數(shù)據(jù)信道(110),把所述平臺與計算機(jī)(108)相連。所述計算機(jī)使用所述硬件規(guī)范以產(chǎn)生中間數(shù)據(jù)流,中間數(shù)據(jù)流實現(xiàn)了平臺建模的流水線化。
文檔編號G06F17/50GK101116076SQ200580047728
公開日2008年1月30日 申請日期2005年12月2日 優(yōu)先權(quán)日2004年12月3日
發(fā)明者格瑞·E·艾赫曼, 羅伯特·L·佩里, 蒂姆·A·龐帝斯 申請人:皇家飛利浦電子股份有限公司