專利名稱:使用遠(yuǎn)程資源的芯片設(shè)計(jì)方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電子設(shè)計(jì)工具和自動(dòng)化,更確切地說,涉及通過使用可通過諸如因特網(wǎng)之類的分布式電子網(wǎng)絡(luò)訪問的資源,方便電子電路和芯片設(shè)計(jì)的方法和系統(tǒng)。
背景技術(shù):
借助不斷改進(jìn)的設(shè)計(jì)和驗(yàn)證工具,電子行業(yè)提出非常先進(jìn)的芯片和電路設(shè)計(jì)。芯片設(shè)計(jì)特別是片上系統(tǒng)(SoC)設(shè)計(jì)中的每塊芯片可能包含上千萬個(gè)門電路,并且每塊芯片很快會(huì)達(dá)到上億個(gè)門電路。工程師通常需要高級(jí)軟件功能來布置芯片設(shè)計(jì),并管理與其有關(guān)的信息。
從高層次上來看,在電子設(shè)計(jì)過程中,設(shè)計(jì)小組在稱為“進(jìn)入市場時(shí)間”的時(shí)限內(nèi)完成從產(chǎn)品概念到產(chǎn)品的過程。激烈競爭導(dǎo)致縮短新產(chǎn)品進(jìn)入市場時(shí)間的巨大壓力,因?yàn)槠湫庐a(chǎn)品進(jìn)入市場的第一家公司要比后來競爭者更容易獲得并保持較大的市場份額。在這種環(huán)境下,產(chǎn)品的計(jì)劃交貨日期與實(shí)際交貨日期之間的微小差別,會(huì)在其利潤和回報(bào)方面產(chǎn)生巨大差異。
目前,在設(shè)計(jì)大規(guī)模電路和復(fù)雜芯片時(shí),時(shí)間和人員常常不足,并且預(yù)算很緊。提高設(shè)計(jì)速度和效率的趨勢包括電子電路塊或子系統(tǒng)的重用或重復(fù)利用,電子電路塊或子系統(tǒng)也稱為“內(nèi)核”,“虛擬元件塊”或IP(“知識(shí)產(chǎn)權(quán)”的首字母縮寫,代表預(yù)先封裝的電路塊的專有權(quán)性質(zhì))。在測試驗(yàn)證虛擬元件塊的設(shè)計(jì)后,可以在與原創(chuàng)應(yīng)用完全不同的其他應(yīng)用中進(jìn)行重用。與原始設(shè)計(jì)人員同屬同一家公司的其他設(shè)計(jì)小組也可以實(shí)現(xiàn)重用。作為選擇,也可以由購買、特許或轉(zhuǎn)讓IP的第三方進(jìn)行重用,并將該IP合并到全新設(shè)計(jì)中。例如,蜂窩電話子系統(tǒng)中使用的專用集成電路(ASIC)包含許多內(nèi)核,如微控制器,數(shù)字信號(hào)處理器和其他元件。盡管作為蜂窩電話子系統(tǒng)的ASIC作為整體執(zhí)行特定功能,但是ASIC設(shè)計(jì)內(nèi)的各個(gè)內(nèi)核均具有用于其他ASIC的通用用途。在測試驗(yàn)證用于蜂窩電話子系統(tǒng)的設(shè)計(jì)后,可以在汽車應(yīng)用中重用各內(nèi)核(作為虛擬元件塊)。虛擬元件塊的設(shè)計(jì)重用使得設(shè)計(jì)人員能夠以比從頭進(jìn)行全部設(shè)計(jì)更快的速度完成設(shè)計(jì),并且無需調(diào)試、測試、驗(yàn)證虛擬元件塊中包含的子系統(tǒng)??梢詮氖袌錾腺徺I到的虛擬電路塊或IP內(nèi)核包括維特比譯碼器,微控制器,數(shù)字模擬轉(zhuǎn)換器以及加密解密處理器。
盡管通過購買標(biāo)準(zhǔn)代碼塊,虛擬電路塊(即IP內(nèi)核)能夠提供縮短進(jìn)入市場時(shí)間的方法,但虛擬電路塊的銷售和使用還有許多障礙。盡管重用現(xiàn)有內(nèi)核設(shè)計(jì)能夠縮短總設(shè)計(jì)時(shí)間,但是搜索滿足新ASIC設(shè)計(jì)之設(shè)計(jì)標(biāo)準(zhǔn)的現(xiàn)有內(nèi)核設(shè)計(jì)既費(fèi)時(shí)又乏味。關(guān)于質(zhì)量保證,沒有什么使設(shè)計(jì)人員確信虛擬電路塊的質(zhì)量或?qū)μ囟ㄔO(shè)計(jì)之適用性的標(biāo)準(zhǔn)方法。相反,也沒有什么供虛擬電路塊的銷售人員向預(yù)期客戶證明其產(chǎn)品質(zhì)量的標(biāo)準(zhǔn)方法。另一個(gè)障礙是構(gòu)成虛擬電路塊的代碼和/或數(shù)據(jù)的保護(hù)。提供虛擬電路塊的公司需要跟蹤其產(chǎn)品的用途,并防止盜用以上電路塊中的代碼和/或數(shù)據(jù)。此類方法最好不引人注目,允許完全訪問將以上IP內(nèi)核并入某個(gè)設(shè)計(jì)所需的信息。另一個(gè)問題是數(shù)據(jù)格式。為用于電路設(shè)計(jì)而購買的虛擬電路塊必須與該設(shè)計(jì)中所用的數(shù)據(jù)格式兼容。然而,虛擬電路塊的接口標(biāo)準(zhǔn)(如果有的話)一直都在發(fā)展變化。因此,熟悉虛擬電路塊的接口格式,將虛擬電路塊集成到電路設(shè)計(jì)中需要做大量工作,從而降低了通過使用虛擬電路塊獲得的時(shí)間優(yōu)勢。高銷售和訴訟費(fèi)用形式的交易費(fèi)用同樣不利于虛擬電路塊的銷售和使用。例如,需要一方或雙方對(duì)虛擬電路塊的許可進(jìn)行法律審查。
使用現(xiàn)有設(shè)計(jì)和驗(yàn)證工具的另一個(gè)缺點(diǎn)涉及技術(shù)支持。銷售商通常提供熱線服務(wù)電話,為指定軟件工具的用戶提供技術(shù)支持。然而,要使工程師通過能夠刻畫銷售商熱線服務(wù)電話特色的令人沮喪、迷惘的語音郵件,一層或幾層知識(shí)不太淵博的第一線支持人員,工程師通常需要大量時(shí)間進(jìn)行解釋,并且支持人員需要大量時(shí)間解決用于復(fù)雜電路設(shè)計(jì)的復(fù)雜工具出現(xiàn)的問題。對(duì)于嚴(yán)重問題,銷售商需要向工作現(xiàn)場派遣現(xiàn)場應(yīng)用工程師,但是這樣做費(fèi)用很高,并且現(xiàn)場應(yīng)用工程師到達(dá)現(xiàn)場可能需要幾天時(shí)間。期間,整個(gè)設(shè)計(jì)項(xiàng)目保持停頓狀態(tài)。
同樣,元件選擇也是一項(xiàng)低效且容易造成時(shí)延的工作。工程師查閱元件經(jīng)銷商分發(fā)的印刷目錄查找、選擇元件,或使用因特網(wǎng)訪問制造商之供應(yīng)商的網(wǎng)站,查找有關(guān)元件的信息,或使用搜索引擎在因特網(wǎng)上搜集產(chǎn)品信息。然而,在因特網(wǎng)上搜索各種元件既費(fèi)時(shí)又乏味。另外,現(xiàn)有搜索引擎和方法不僅效率低,而且不完整,因此返回的搜索結(jié)果有可能不包含以下網(wǎng)站,即其所提供的元件能夠使設(shè)計(jì)人員在其設(shè)計(jì)中受益的網(wǎng)站。工程師可能收到制造商主動(dòng)提供的數(shù)據(jù)表,但通常會(huì)丟棄、丟失或忽略此類數(shù)據(jù)表。相反,盡管工程師能夠順利收到諸如IP I/O電路圖或其他頂層信息之類的數(shù)據(jù),但工程師很難收到有關(guān)所選元件的重要設(shè)計(jì)信息。作為設(shè)計(jì)過程的一部分,工程師必須獲得每個(gè)所選元件的支持?jǐn)?shù)據(jù)。由于縮短進(jìn)入市場時(shí)間的巨大壓力,工程師很難花費(fèi)時(shí)間與供應(yīng)商或經(jīng)銷商的銷售代表進(jìn)行交談,使得搜集元件信息的問題進(jìn)一步惡化。
芯片設(shè)計(jì)過程經(jīng)歷的另一個(gè)問題是有關(guān)設(shè)計(jì)和驗(yàn)證過程的知識(shí)比較零碎,并且難以獲得并運(yùn)用此類知識(shí)。試圖通過觀察進(jìn)行了解并研究許多工程師的獨(dú)特設(shè)計(jì)過程是很有挑戰(zhàn)性的。此外,很難根據(jù)最后的圖紙或產(chǎn)品來了解設(shè)計(jì)過程,并且很難根據(jù)草圖或作業(yè)文件確定設(shè)計(jì)過程。不同工程師會(huì)采用不同方式完成設(shè)計(jì),即使工程師也難以清楚表達(dá)。通過與工程師會(huì)面來獲取有關(guān)工程設(shè)計(jì)過程的數(shù)據(jù)通很可能沒有結(jié)果,耗費(fèi)大量時(shí)間只能獲得相當(dāng)小的成果。因此,有關(guān)工程設(shè)計(jì)過程的度量引起的培訓(xùn)和改進(jìn)方法方面的益處仍未實(shí)現(xiàn)。
解決分段設(shè)計(jì)和驗(yàn)證過程引起的問題的嘗試包括,專門從事不同領(lǐng)域的設(shè)計(jì)和驗(yàn)證過程的公司之間的專有伙伴協(xié)約,目的是縮小需要工程師進(jìn)行學(xué)習(xí)并需要內(nèi)部技術(shù)人員支持的產(chǎn)品和服務(wù)的范圍。例如,電子設(shè)計(jì)公司的伙伴包括設(shè)計(jì)驗(yàn)證工具的提供商,電子元件的提供商,以及與其配合的一家公司。在伙伴關(guān)系模型中,能夠輕松解決兼容問題,因?yàn)橹簧婕坝邢迶?shù)目的元件。另外,通過影響某個(gè)設(shè)計(jì)階段中的某個(gè)伙伴的客戶利用不同設(shè)計(jì)階段中另一個(gè)伙伴的產(chǎn)品或服務(wù),能夠增加收入。然而,合作伙伴協(xié)約嚴(yán)重降低了設(shè)計(jì)小組的選擇性,并且有可能阻止使用最佳產(chǎn)品。
加快設(shè)計(jì)過程的一種方法是在能夠通過因特網(wǎng)訪問的遠(yuǎn)程計(jì)算機(jī)上提供某種類型的設(shè)計(jì)和驗(yàn)證工具,特別是FPGA綜合工具。在該方法中,F(xiàn)PGA綜合工具在單一應(yīng)用服務(wù)提供商的中央服務(wù)器場地(或計(jì)算機(jī)場地)上運(yùn)行。服務(wù)器場地或計(jì)算機(jī)場地通常為連接起來的處理器網(wǎng)絡(luò),用于完成高強(qiáng)度的計(jì)算任務(wù)。在使用該方法的示例系統(tǒng)中,應(yīng)用服務(wù)提供商利用Java計(jì)算語言重寫所提供的FPGA綜合工具的接口,以便通過可從市場上買到的標(biāo)準(zhǔn)因特網(wǎng)瀏覽器,在各種計(jì)算平臺(tái)和操作系統(tǒng)上使用該工具。該方法的缺點(diǎn)在于,用戶限于駐留在以下服務(wù)器場地上的FPGA綜合工具,即已編寫其接口代碼的應(yīng)用服務(wù)提供商的服務(wù)器場地。另外,Java語言出名的慢,阻撓工程師并減緩設(shè)計(jì)和驗(yàn)證過程。
如果通過方便信息交換和商業(yè)行為的單一門戶網(wǎng)站,將包含最終用戶和提供商在內(nèi)的電子設(shè)計(jì)過程中的參與者連接起來將是非常有利的。另外,使設(shè)計(jì)工程師能夠輕松、方便地得到各種設(shè)計(jì)和驗(yàn)證工具,并且無需在軟件或硬件方面支付比較大的初創(chuàng)資本就能夠使用此類功能將是非常有利的。再者,提供用于收集與芯片設(shè)計(jì)技術(shù)、應(yīng)用、產(chǎn)品和工具有關(guān)的知識(shí)和信息的機(jī)制也是非常有利的。最后,提供允許工程師將虛擬電路塊合并到其設(shè)計(jì)中的方便裝置也是非常有利的。
發(fā)明內(nèi)容
本發(fā)明提供一種平臺(tái),該平臺(tái)通過諸如因特網(wǎng)之類的分布式電子網(wǎng)絡(luò)連接眾多最終用戶系統(tǒng),以便交換IP內(nèi)核設(shè)計(jì)并將其合并到新的復(fù)雜電路設(shè)計(jì)中。
在提供設(shè)計(jì)平臺(tái)的實(shí)施方式中,設(shè)計(jì)人員可以搜索多種目錄的IP設(shè)計(jì),并立即將該IP的有關(guān)數(shù)據(jù)傳送到設(shè)計(jì)人員的文件中,以便在設(shè)計(jì)新SoC時(shí)使用。本實(shí)施方式的平臺(tái)支持選擇內(nèi)部IP或外部IP,并支持IP采購。支持該設(shè)計(jì)平臺(tái)的軟件是采用模塊形式編寫的,因此支持傳送采用VHDL或Verilog編寫的所有有關(guān)IP數(shù)據(jù)。此外,采用模塊形式的平臺(tái)支持軟件使得該設(shè)計(jì)平臺(tái)能夠支持其他硬件語言,包括諸如System-C之類的語言。該實(shí)施方式的平臺(tái)使得設(shè)計(jì)人員能夠在總設(shè)計(jì)內(nèi)裝配所選IP,連接該IP,并生成總設(shè)計(jì)所使用的全部元件的連線表。該實(shí)施方式的平臺(tái)還提供ANSI-C代碼輸出,其中可以在多種驗(yàn)證工具內(nèi)編譯、運(yùn)用上述代碼,以確保合適的綜合和連通性,以及總設(shè)計(jì)的基本功能驗(yàn)證。另外,可以定制或修改該設(shè)計(jì)平臺(tái),以生成多種匯編語言的源代碼輸出。在執(zhí)行IP選擇、綜合和驗(yàn)證后,可以輕而易舉地將該實(shí)施方式的平臺(tái)與計(jì)算機(jī)輔助綜合、布局和繞線工具結(jié)合起來,以完成最終的裝配。為訪問設(shè)計(jì)平臺(tái)的用戶提供用于標(biāo)識(shí)可用工具和服務(wù)的菜單或其他格式的選項(xiàng),并且通過訪問某一場所的各種工具和服務(wù),快速完成電路設(shè)計(jì)。該設(shè)計(jì)平臺(tái)有助于購買、租用或獲得通過該平臺(tái)提供的工具和服務(wù)。
在一種實(shí)施方式中,通過開放的門戶網(wǎng)站實(shí)現(xiàn)設(shè)計(jì)平臺(tái),該門戶網(wǎng)站作為n層客戶機(jī)/服務(wù)器網(wǎng)絡(luò)環(huán)境中的服務(wù)器,允許電子設(shè)計(jì)人員和設(shè)計(jì)小組使用各種形式的先前設(shè)計(jì)的IP。開放的門戶網(wǎng)站發(fā)明從某一方面提供一種平臺(tái),該平臺(tái)通過諸如因特網(wǎng)之類的分布式電子網(wǎng)絡(luò)連接眾多最終用戶系統(tǒng),以便交換IP內(nèi)核設(shè)計(jì)并將其合并到新的復(fù)雜電路設(shè)計(jì)中。在該實(shí)施方式中,門戶網(wǎng)站為前端硬件設(shè)計(jì)人員提供了一種從內(nèi)部和外部銷售商資源中搜索、訪問硬件元件之IP的方法。門戶網(wǎng)站允許芯片設(shè)計(jì)人員搜索訪問各種IP,以便合并到新的芯片設(shè)計(jì)中。此外,該實(shí)施方式允許芯片設(shè)計(jì)人員直接通過門戶網(wǎng)站傳送IP數(shù)據(jù)的代碼,以便直接進(jìn)行IP選擇,采購,裝配,各種IP之間的連接和連線表生成。另外,一種實(shí)施方式允許芯片設(shè)計(jì)人員直接在門戶網(wǎng)站內(nèi)進(jìn)行綜合和連通性驗(yàn)證,以及基本功能驗(yàn)證。促進(jìn)門戶網(wǎng)站的平臺(tái)是用JAVA語言編寫的,目的是在各種計(jì)算機(jī)上運(yùn)行,支持采用諸如VHDL和Verilog之類的硬件實(shí)現(xiàn)語言編寫的各種IP。支持該平臺(tái)的軟件是采用模塊形式編寫的,以便支持諸如System-C語言之類的新的描述實(shí)現(xiàn)語言。
在另一種實(shí)施方式中,在諸如內(nèi)聯(lián)網(wǎng)之類的網(wǎng)絡(luò)上提供一種封閉的門戶網(wǎng)站,以便在一組封閉用戶中使用。該實(shí)施方式作為一種封閉的門戶網(wǎng)站,只有選定用戶才能訪問。
在另一種實(shí)施方式中,在構(gòu)成LAN的用戶工作站網(wǎng)絡(luò)上提供該設(shè)計(jì)平臺(tái)。該設(shè)計(jì)平臺(tái)是用JAVA語言編寫的,以便直接在各用戶工作站上運(yùn)行。
同時(shí),本文還描述了其他實(shí)施方式、其變更和增強(qiáng)。
圖1為連接最終用戶與電子設(shè)計(jì)工具和服務(wù)之提供商的門戶的抽象表示。
圖2為通過連接最終用戶和電子設(shè)計(jì)工具、服務(wù)、信息和/或其他資源的提供商方便電子設(shè)計(jì)的系統(tǒng)的詳細(xì)模式圖。
圖3為一個(gè)流程圖,表示連同圖2的系統(tǒng)使用電子設(shè)計(jì)時(shí)選擇和管理元件的過程。
圖4為一個(gè)流程圖,表示通過利用分布式電子網(wǎng)絡(luò)訪問圖2所示的門戶網(wǎng)站購買元件的過程。
圖5為一個(gè)流程圖,表示單獨(dú)、共同驗(yàn)證所選IP內(nèi)核塊的過程。
圖6為通過連接最終用戶和電子設(shè)計(jì)工具、服務(wù)、信息和/或其他資源的提供商方便電子設(shè)計(jì)的另一個(gè)系統(tǒng)的詳細(xì)模式圖。
圖7為生成的圖解高級(jí)NETLIST示例,表示整個(gè)高級(jí)簡圖內(nèi)的所選IP內(nèi)核塊。
圖8a-8d表示向使用本發(fā)明的電子芯片設(shè)計(jì)平臺(tái)的不同步驟的用戶提供的圖形用戶界面示例。
圖9表示向元件的連線表的用戶提供的圖形用戶界面示例。
圖10表示本發(fā)明的電路設(shè)計(jì)平臺(tái)內(nèi)包含的各種部件和實(shí)現(xiàn)工具的框圖。
具體實(shí)施例方式
圖1為通過提供有用工具、服務(wù)、信息和其他資源方便電子設(shè)計(jì)的電子設(shè)計(jì)自動(dòng)化資源系統(tǒng)100的某一實(shí)施方式的抽象簡圖。正如圖1所示,通過諸如因特網(wǎng)之類的分布式電子網(wǎng)絡(luò),將眾多最終用戶102和眾多供應(yīng)商106連接到設(shè)計(jì)平臺(tái)104。正如本文詳細(xì)說明的那樣,最終用戶102通常包括電路設(shè)計(jì)人員和電子設(shè)計(jì)自動(dòng)化(EDA)軟件工具的用戶,但是也可以包括各種其他類型的用戶。正如本文將要說明的那樣,供應(yīng)商106通常包括EDA軟件工具、虛擬元件塊或IP內(nèi)核、代工服務(wù)、硬件元件、專家設(shè)計(jì)服務(wù)和各種其他資源(不管是以工具、服務(wù)、信息或其他資源的方式)的提供商。作為選擇,每個(gè)最終用戶也可以作為其他最終用戶的IP內(nèi)核設(shè)計(jì)的提供商。反過來,每個(gè)供應(yīng)商也可以作為最終用戶設(shè)計(jì)人員。
在一種實(shí)施方式中,設(shè)計(jì)平臺(tái)104是用JAVA語言編寫的,以便在各種計(jì)算機(jī)上運(yùn)行。設(shè)計(jì)平臺(tái)104規(guī)定工程師和其他用戶102有權(quán)使用有關(guān)電子元件的信息,并支持最終用戶102和電子元件供應(yīng)商106之間的商業(yè)行為。在該實(shí)施方式中,采用“動(dòng)態(tài)部件”的形式在遠(yuǎn)程數(shù)據(jù)庫中存儲(chǔ)電子元件數(shù)據(jù),動(dòng)態(tài)部件具有采用標(biāo)準(zhǔn)符號(hào)和封裝形式數(shù)據(jù)的圖形表示,并可以傳送(即,復(fù)制)到最終用戶的設(shè)計(jì)中。從遠(yuǎn)程電子元件數(shù)據(jù)庫復(fù)制到最終用戶之工作站(或設(shè)計(jì)數(shù)據(jù)庫)的部分信息包括遠(yuǎn)程數(shù)據(jù)庫或供應(yīng)商數(shù)據(jù)庫的鏈接,從而支持各種有用能力,如提供諸如部件交付周期、可獲量和成本之類的信息。同時(shí),也可以獲得有關(guān)電子元件的一覽表和定時(shí)信息,以幫助設(shè)計(jì)人員。另外,設(shè)計(jì)平臺(tái)104支持采用VHDL或Verilog編寫的電子元件設(shè)計(jì)數(shù)據(jù)。這樣,設(shè)計(jì)平臺(tái)104支持各種格式的IP,以便在單一SoC設(shè)計(jì)中直接連接其他銷售商的IP。另外,通過以模塊形式設(shè)計(jì)支持該設(shè)計(jì)平臺(tái)的軟件,未來可以支持諸如System-C之類的新的實(shí)現(xiàn)語言。借助遠(yuǎn)程數(shù)據(jù)庫或供應(yīng)商數(shù)據(jù)庫的鏈接,前端用戶可以傳送所有有關(guān)的設(shè)計(jì)數(shù)據(jù),以便在新的SoC設(shè)計(jì)中進(jìn)行綜合,連接和驗(yàn)證。上述數(shù)據(jù)允許具體裝置估計(jì)整個(gè)SoC設(shè)計(jì)的功耗、邏輯門的數(shù)目以及面積。
在另一種實(shí)施方式中,設(shè)計(jì)平臺(tái)104提供一種綜合工具,該工具通過傳送所有有關(guān)的IP設(shè)計(jì)數(shù)據(jù),允許設(shè)計(jì)人員在新的SoC設(shè)計(jì)內(nèi)裝配IP內(nèi)核設(shè)計(jì)。設(shè)計(jì)平臺(tái)104支持各種IP內(nèi)核之間的必要連接,并生成新的SoC設(shè)計(jì)設(shè)計(jì)內(nèi)的所有IP內(nèi)核元件的連線表。
在另一種實(shí)施方式中,設(shè)計(jì)平臺(tái)104可以驗(yàn)證所有IP內(nèi)核的綜合以及IP內(nèi)核之間的連通性。設(shè)計(jì)平臺(tái)104還可以驗(yàn)證新的SoC設(shè)計(jì)內(nèi)的基本功能元件?;竟δ茉ǖ刂纷g碼器,總線判優(yōu)器,總線橋接器等。設(shè)計(jì)平臺(tái)104輸出采用ANSI-C編碼的源代碼,從而常規(guī)邏輯模擬器能夠驗(yàn)證IP內(nèi)核的綜合和連通性。
在另一種實(shí)施方式中,設(shè)計(jì)平臺(tái)104連接正在查找虛擬電路塊(IP內(nèi)核)之有關(guān)信息或?qū)徺I有興趣的最終用戶102與提供虛擬電路塊(IP內(nèi)核)的供應(yīng)商106。設(shè)計(jì)平臺(tái)104通過提供可用IP內(nèi)核的目錄,有關(guān)IP內(nèi)核的信息,以及保護(hù)IP內(nèi)核免受非授權(quán)用戶訪問或復(fù)制的機(jī)制,方便定位并獲得合適的虛擬電路塊(IP內(nèi)核)。
在另一種實(shí)施方式中,將設(shè)計(jì)平臺(tái)104的眾多功能組合到開放門戶網(wǎng)站204中,門戶網(wǎng)站204為電路設(shè)計(jì)和開發(fā)過程提供全面支持。
圖2為能夠體現(xiàn)作為開放門戶網(wǎng)站提供的設(shè)計(jì)平臺(tái)204之特征的實(shí)施方式的詳細(xì)模式圖。圖2刻畫通過連接最終用戶和電子設(shè)計(jì)工具、服務(wù)、信息和/或其他資源的提供商方便電子設(shè)計(jì)的系統(tǒng)200。正如圖2所示,通過諸如因特網(wǎng)230之類的分布式電子網(wǎng)絡(luò),將各種用戶和資源提供商連接到門戶網(wǎng)站204,以方便電子設(shè)計(jì)。在圖2所示的系統(tǒng)200中,用戶系統(tǒng)220使用因特網(wǎng)230上的支持平臺(tái)連接到門戶網(wǎng)站204。盡管為說明起見圖2僅示出一個(gè)用戶系統(tǒng)220,但是應(yīng)該理解,可以通過因特網(wǎng)230或其他分布式電子網(wǎng)絡(luò)將成百上千個(gè)用戶系統(tǒng)220連接到門戶網(wǎng)站204。為論述方便,假設(shè)通過因特網(wǎng)230將用戶系統(tǒng)連接到門戶網(wǎng)站204,然而應(yīng)該理解,上述連接也可以使用其他類型的分布式電子網(wǎng)絡(luò)。通過使用標(biāo)準(zhǔn)對(duì)象數(shù)據(jù)模型,經(jīng)由因特網(wǎng)230將用戶系統(tǒng)220連接到門戶網(wǎng)站204。
經(jīng)由因特網(wǎng)230與門戶網(wǎng)站204相連的用戶系統(tǒng)220包括獨(dú)立計(jì)算機(jī)或工作站,后者可以直接與因特網(wǎng)230相連,或者為包含有與因特網(wǎng)230相連的指定網(wǎng)絡(luò)硬件和/或軟件的局域網(wǎng)(LAN)的一部分,抑或通過其他裝置連接到門戶網(wǎng)站204。用戶系統(tǒng)220最好包括在因特網(wǎng)230上進(jìn)行導(dǎo)航的裝置,如web瀏覽器224,后者包括可從市場上買到的產(chǎn)品,如微軟公司的Internet ExplorerTM,Netscape公司的CommunicatorTM,或Opera軟件公司的OperaTM。用戶系統(tǒng)220最好以計(jì)算機(jī)程序或其他軟件包的形式,運(yùn)行一個(gè)或多個(gè)供應(yīng)商應(yīng)用程序226,如加利福尼亞州圣何塞市的韻律設(shè)計(jì)系統(tǒng)公司(Cadence Design Systems)的E-CaptureTM產(chǎn)品。最好提供“設(shè)計(jì)控制臺(tái)”界面228作為用戶系統(tǒng)220的一部分。設(shè)計(jì)控制臺(tái)界面228包括在用戶系統(tǒng)228上安裝并在其上運(yùn)行的獨(dú)立客戶應(yīng)用程序軟件。設(shè)計(jì)控制臺(tái)界面228作為與門戶網(wǎng)站204的接口,并最好對(duì)其進(jìn)行優(yōu)化,從而能夠以比標(biāo)準(zhǔn)web瀏覽器更快、更穩(wěn)定、更有效的方式,互連門戶網(wǎng)站204提供的功能和過程。最好使用通用數(shù)據(jù)界面格式或標(biāo)注語言(如XML),作為系統(tǒng)200之各種組件之間的主要數(shù)據(jù)界面。計(jì)算機(jī)程序設(shè)計(jì)技術(shù)人員熟知XML的細(xì)節(jié)。
現(xiàn)在轉(zhuǎn)到該系統(tǒng)的門戶網(wǎng)站204,門戶網(wǎng)站204作為各種不同領(lǐng)域的眾多供應(yīng)商106(見圖1)的聚集點(diǎn)。門戶網(wǎng)站204最好包括web服務(wù)器260,后者連接請求訪問門戶網(wǎng)站204的外部實(shí)體(如用戶系統(tǒng)220),充當(dāng)外部實(shí)體與門戶網(wǎng)站204內(nèi)的各種可用應(yīng)用程序之間的中介。同時(shí),門戶網(wǎng)站204最好包括應(yīng)用服務(wù)器232,后者接收外部實(shí)體通過web服務(wù)器260傳送的請求,并且通過訪問門戶網(wǎng)站204包含的可通過門戶網(wǎng)站204訪問的數(shù)據(jù)庫或其他資源,進(jìn)行響應(yīng)。應(yīng)用服務(wù)器232還實(shí)現(xiàn)門戶網(wǎng)站204內(nèi)的命令和控制功能。
應(yīng)用服務(wù)器232最好訪問其信息對(duì)設(shè)計(jì)工程師有用的一個(gè)或多個(gè)數(shù)據(jù)庫,此類數(shù)據(jù)庫包括用戶數(shù)據(jù)庫235,度量數(shù)據(jù)庫238,目錄數(shù)據(jù)庫240和商務(wù)數(shù)據(jù)庫244,稍后敘述其功能。通過協(xié)同數(shù)據(jù)庫234訪問用戶數(shù)據(jù)庫235,通過度量服務(wù)器236訪問度量數(shù)據(jù)庫238,通過目錄服務(wù)器240訪問目錄數(shù)據(jù)庫242,通過商務(wù)服務(wù)器244訪問商務(wù)數(shù)據(jù)庫246。如果需要可以包含附加數(shù)據(jù)庫和服務(wù)器。同時(shí),最好通過因特網(wǎng)230連接門戶網(wǎng)站204和一個(gè)或多個(gè)元件供應(yīng)商數(shù)據(jù)庫209,IP內(nèi)核數(shù)據(jù)庫208,稍后將參照圖3-10詳細(xì)說明其作用。
開放門戶網(wǎng)站204支持的設(shè)計(jì)平臺(tái)104還包括設(shè)計(jì)工具,目的是裝配所選的IP內(nèi)核塊,實(shí)現(xiàn)IP內(nèi)核塊之各種I/O管腳之間的正確連接,并生成完整SoC設(shè)計(jì)的圖形和文字連線表。另外,門戶網(wǎng)站204還包括驗(yàn)證工具,以確??傮wSoC設(shè)計(jì)內(nèi)的IP內(nèi)核塊的正確綜合和連通性。門戶網(wǎng)站204還提供驗(yàn)證SoC設(shè)計(jì)之基本功能的裝置?;竟δ馨⊿oC設(shè)計(jì)上使用的基本地址譯碼器,總線判優(yōu)器,總線橋接器等功能。稍后參照圖3-7詳細(xì)說明各種工具的作用。
可以利用分布式體系結(jié)構(gòu)配置門戶網(wǎng)站204提供的一個(gè)或多個(gè)數(shù)據(jù)庫235,238,242和246,其中門戶網(wǎng)站204通過安全XML隧道訪問其他站點(diǎn)的信息。特別地,利用分布式體系結(jié)構(gòu)配置目錄數(shù)據(jù)庫242,門戶網(wǎng)站204通過安全XML隧道訪問遠(yuǎn)程數(shù)據(jù)庫(如208和209)中的目錄信息。當(dāng)采用分布式數(shù)據(jù)庫體系結(jié)構(gòu)時(shí)可使用高速緩沖處理,以改善訪問性能。
一般而言,協(xié)同服務(wù)器234為最終用戶102和供應(yīng)商106(見圖1)提供協(xié)同服務(wù)。協(xié)同服務(wù)器234最好集成并提供協(xié)同類型的應(yīng)用程序,如聊天,日歷,電子郵件,聯(lián)機(jī)討論會(huì),聯(lián)機(jī)會(huì)議,應(yīng)用程序和桌面共享。協(xié)同服務(wù)器234最好通過“虛擬”桌面出席,提供支持專家設(shè)計(jì)援助的基礎(chǔ)設(shè)施,其中虛擬桌面出席提供專家與設(shè)計(jì)人員之間的實(shí)時(shí)交互。
度量服務(wù)器236協(xié)助收集有關(guān)門戶網(wǎng)站204之使用和有關(guān)供應(yīng)商服務(wù)的數(shù)據(jù)。一方面,度量服務(wù)器236包含在門戶網(wǎng)站204測量的數(shù)據(jù)的高性能、大容量數(shù)據(jù)倉庫。此類數(shù)據(jù)包括網(wǎng)站流量模式,應(yīng)用程序使用率,元件使用率(例如,通過監(jiān)控材料的電子清單),用戶評(píng)級(jí)反饋及其他。度量服務(wù)器236最好向?qū)iT的門戶數(shù)據(jù)挖掘應(yīng)用程序提供此類信息。
目錄服務(wù)器240最好向駐留在用戶系統(tǒng)220上的客戶端軟件提供“電子目錄”服務(wù)。如上所述,采用分布式體系結(jié)構(gòu)配置目錄數(shù)據(jù)庫242,目錄服務(wù)器240和/或目錄數(shù)據(jù)庫242利用鏈接或其他資源集成目錄數(shù)據(jù)庫242。最好使用諸如XML之類的通用數(shù)據(jù)格式模式集成供應(yīng)商目錄。
正如稍后說明的那樣,商務(wù)服務(wù)器244支持用戶和供應(yīng)商之間的交易。
在一種實(shí)施方式中,門戶網(wǎng)站204為設(shè)計(jì)工程師提供各種資源。以下參照圖3-10說明對(duì)此類資源的訪問,各圖分別表示訪問與設(shè)計(jì)、開發(fā)和生產(chǎn)領(lǐng)域有關(guān)的信息或其他設(shè)計(jì)資源的過程。因此,門戶網(wǎng)站204以某種方式為設(shè)計(jì)工程師提供一組綜合資源。
圖3是一個(gè)流程圖,表示連同圖2所示的系統(tǒng)使用的根據(jù)各種IP資源設(shè)計(jì)SoC的過程300。在圖3所示的過程300的第一步驟302中,用戶系統(tǒng)220的用戶通過輸入正確的統(tǒng)一資源定位符(URL)或其他適用地址,經(jīng)由因特網(wǎng)230訪問門戶網(wǎng)站204,作為響應(yīng),設(shè)計(jì)控制臺(tái)客戶軟件228在用戶系統(tǒng)220的計(jì)算機(jī)屏幕上顯示主設(shè)計(jì)控制臺(tái)菜單屏幕。在過程300以及稍后說明的其他過程中,最好通過門戶網(wǎng)站204經(jīng)由因特網(wǎng)230傳送適當(dāng)命令,實(shí)現(xiàn)用戶系統(tǒng)220上的數(shù)據(jù)顯示,亦即,門戶網(wǎng)站204采用合適格式(如超文本標(biāo)注語言(HTML)或類似格式),通過因特網(wǎng)230向用戶系統(tǒng)220傳送數(shù)據(jù),然后進(jìn)行顯示。計(jì)算機(jī)程序設(shè)計(jì)領(lǐng)域的熟練技術(shù)人員熟知經(jīng)由因特網(wǎng)230格式化信息和傳輸信息的方法。
在圖3所示的過程300的下一步驟304中,用戶系統(tǒng)220的用戶選擇圖標(biāo)、鏈接或其他標(biāo)記,搜索滿足SoC設(shè)計(jì)之所需設(shè)計(jì)標(biāo)準(zhǔn)的各種IP內(nèi)核設(shè)計(jì)。例如,用戶點(diǎn)擊設(shè)計(jì)控制臺(tái)主屏上顯示的適當(dāng)圖標(biāo)或鏈接,以搜索正確的IP內(nèi)核設(shè)計(jì)。通常在因特網(wǎng)應(yīng)用程序軟件中使用此類圖標(biāo)或鏈接,計(jì)算技術(shù)領(lǐng)域中的熟練技術(shù)人員熟知在圖形用戶界面中放置此類圖標(biāo)或鏈接的技術(shù)。作為選擇,通過鍵入或輸入適當(dāng)命令,也可以在基于文本的環(huán)境中訪問元件選擇搜索。在搜索通過門戶網(wǎng)站204連接的數(shù)據(jù)庫后,門戶網(wǎng)站204的圖形顯示顯示滿足用戶輸入的設(shè)計(jì)標(biāo)準(zhǔn)的各種IP內(nèi)核選項(xiàng)。響應(yīng)用戶的IP內(nèi)核設(shè)計(jì)搜索,在門戶網(wǎng)站204從目錄數(shù)據(jù)庫242中檢索可供使用或購買的不同IP內(nèi)核設(shè)計(jì)的列表,然后傳送給用戶系統(tǒng)220進(jìn)行顯示。所列IP內(nèi)核塊包括虛擬微內(nèi)核,現(xiàn)場可編程門陣列(FPGA),數(shù)字信號(hào)處理器(DSP),復(fù)雜處理內(nèi)核,以及對(duì)設(shè)計(jì)工程師有用的任何其他元件。作為選擇,元件可用于SoC之印刷電路板(PCB)原型,可能包括所列IP內(nèi)核塊中的許多內(nèi)核塊。所列元件包括基本設(shè)計(jì)參數(shù)和設(shè)計(jì)標(biāo)準(zhǔn),從而用戶能夠確定該IP內(nèi)核是否適合于新的SoC設(shè)計(jì)使用。此類信息最好構(gòu)成高級(jí)數(shù)據(jù),目的是允許用戶102快速確定用戶102是否在其設(shè)計(jì)中包含所選IP內(nèi)核,從分類列表中查找不同部件,或收集有關(guān)所選部件的其他信息。最好向用戶102提供圖標(biāo)或其他界面功能部件,以方便選擇是否直接將所選部件合并到用戶102的設(shè)計(jì)中,退回到分類列表查找不同部件,或阻止有關(guān)所選部件的附加信息。如果用戶102對(duì)附加信息感興趣,則過程300轉(zhuǎn)到步驟306和308,用戶102選擇合適的界面功能部件(如圖標(biāo)或菜單選項(xiàng)),以接收有關(guān)所選部件的附加信息。
如果某個(gè)元件的可用部件種類不止一種,則在步驟306中,用戶從步驟304提供的列表中選擇元件,由此顯示與特定元件相對(duì)應(yīng)的可用部件,最好采用參照步驟310描述的排序。例如,如果用戶選擇DSP內(nèi)核作為IP內(nèi)核塊,則用戶系統(tǒng)220顯示DSP內(nèi)核的編號(hào)和頻率,功耗,以及邏輯門的數(shù)目等。作為選擇,可以允許用戶輸入搜索條件,以便利用普通數(shù)據(jù)庫查詢搜索滿足指定條件的元件。例如,用戶可搜索工作頻率高于300MHz的所有DSP內(nèi)核塊。通過因特網(wǎng)230向門戶網(wǎng)站204提供用戶的搜索條件,以便執(zhí)行正確的數(shù)據(jù)庫搜索查詢。然后門戶網(wǎng)站204經(jīng)由因特網(wǎng)230向用戶系統(tǒng)220傳送搜索結(jié)果。在步驟306中,用戶從顯示的IP設(shè)計(jì)列表中選擇集成到新的SoC設(shè)計(jì)內(nèi)的IP內(nèi)核。利用“熱鏈接”或圖標(biāo)之類的可選字符串列表顯示可用元件設(shè)計(jì)的列表。用戶審查選項(xiàng)列表,并在步驟306中,通過突出顯示選項(xiàng)并敲擊鍵盤按鍵(如回車鍵),或者通過利用鼠標(biāo)點(diǎn)擊選項(xiàng),抑或通過選擇與所需部件之排列相對(duì)應(yīng)的號(hào)碼,或利用任何其他選擇方法,選擇一個(gè)可用選項(xiàng),其選擇細(xì)節(jié)并不是本文描述的發(fā)明概念的操作的本質(zhì)。將用戶的選擇從用戶系統(tǒng)220傳送到門戶網(wǎng)站204。
接著,過程300進(jìn)行到步驟308,在步驟308中,向用戶傳送有關(guān)所選IP的詳細(xì)數(shù)據(jù)。在下一步驟310中,向用戶顯示在步驟306中選擇的部件的附加信息。然后,用戶102請求從外源(208,209)向門戶網(wǎng)站204傳送附加信息,以便最終導(dǎo)入到用戶102的工作站和設(shè)計(jì)中。接著,門戶網(wǎng)站204支持的設(shè)計(jì)平臺(tái)104收集附加信息,并向最終用戶102傳送該信息。從208、209傳送的附加信息包括VHDL或Verilog實(shí)際操作實(shí)現(xiàn)代碼,以及運(yùn)行模擬、綜合和連通性驗(yàn)證所需的數(shù)據(jù)。在步驟310中,還顯示與所選部件有關(guān)的其他信息。此類信息包括部件的詳細(xì)信息,如元件一覽表,定時(shí)模型,操作說明書,模擬模型,信號(hào)完整性模型(如IBIS模型),生產(chǎn)信息或其他信息。最好提供所選部件的符號(hào)和封裝形式,以便用戶對(duì)該元件在總設(shè)計(jì)中的布置作出合理決策。在步驟310中顯示的信息還包括有關(guān)元件及其應(yīng)用的操作說明書。如果需要的話,則對(duì)于集成到用戶設(shè)計(jì)中的其他IP內(nèi)核,重復(fù)選擇特定IP內(nèi)核的步驟。因此,過程300返回到步驟302,用戶通過使用與設(shè)計(jì)平臺(tái)104相連的資源,搜索選擇剩余的IP內(nèi)核。最后,在用戶將IP內(nèi)核添加到設(shè)計(jì)中后,過程300返回到通用設(shè)計(jì)控制臺(tái)菜單。
使用圖3所示的過程300對(duì)供應(yīng)商和用戶都是有利的。例如,使用IP內(nèi)核選擇和管理過程300有利于與IP內(nèi)核之質(zhì)量和功能部件有關(guān)的數(shù)據(jù)的交換,不僅有利于希望向最終用戶演示其質(zhì)量和功能部件的供應(yīng)商,而且有利于對(duì)給定IP內(nèi)核之質(zhì)量和功能部件更有信心的用戶。同時(shí),IP內(nèi)核選擇和管理過程300能夠提供對(duì)IP內(nèi)核的保護(hù),這對(duì)于推動(dòng)供應(yīng)商進(jìn)入IP市場并保護(hù)其開發(fā)的IP內(nèi)核的知識(shí)產(chǎn)權(quán)是非常重要的。此外,IP內(nèi)核選擇和管理過程300能夠有利降低IP內(nèi)核銷售和許可交易的費(fèi)用,因?yàn)樵O(shè)計(jì)人員和供應(yīng)商經(jīng)由設(shè)計(jì)平臺(tái)104進(jìn)行的交易不需要銷售、市場或法律部門的人員的干預(yù)。此外,設(shè)計(jì)平臺(tái)104鼓勵(lì)公司(甚至行業(yè))強(qiáng)制實(shí)施IP內(nèi)核構(gòu)建和SoC設(shè)計(jì)方面的標(biāo)準(zhǔn)。
在一種實(shí)施方式中,在設(shè)計(jì)人員選擇并傳送所選IP的所有相關(guān)信息后,該過程進(jìn)行到步驟312,在該步驟中,用戶102將IP內(nèi)核布置到總SoC設(shè)計(jì)上。通過制作表示總設(shè)計(jì)上各傳輸IP內(nèi)核之位置坐標(biāo)的表項(xiàng)目,完成IP內(nèi)核布置步驟312。另外,用戶102可以手工輸入表示IP內(nèi)核與IP內(nèi)核連接以及IP內(nèi)核與總線連接的表項(xiàng)目。作為選擇,設(shè)計(jì)平臺(tái)104可以自動(dòng)連接IP內(nèi)核與SoC設(shè)計(jì)內(nèi)的其他IP內(nèi)核或總線。自動(dòng)連接利用在步驟308中設(shè)計(jì)平臺(tái)104向用戶102傳送的支持?jǐn)?shù)據(jù)文件。此外,設(shè)計(jì)平臺(tái)104可以包括圖形用戶界面(GUI),以允許用戶102在SoC設(shè)計(jì)內(nèi)布置、移動(dòng)IP內(nèi)核。用戶102通過在開發(fā)設(shè)計(jì)所用的簡圖程序內(nèi)移動(dòng)、復(fù)制或拖動(dòng)所選IP內(nèi)核的符號(hào),在SoC設(shè)計(jì)內(nèi)放置、移動(dòng)所選IP內(nèi)核的圖形表示(如符號(hào))。為了支持上述GUI,IP內(nèi)核的原始創(chuàng)建器必須創(chuàng)建該IP內(nèi)核的符號(hào)以及附隨的圖形表示支持文件。可以在步驟308中與其他支持?jǐn)?shù)據(jù)一起傳送圖形支持文件。作為將所選部件放入簡圖程序過程的一部分,最好復(fù)制并在用戶系統(tǒng)220的設(shè)計(jì)數(shù)據(jù)庫225中存儲(chǔ)有關(guān)所選部件的信息。此類信息包括有關(guān)所選部件的規(guī)格,生產(chǎn)信息,與門戶網(wǎng)站204的超鏈接,或與所選部件之供應(yīng)商或經(jīng)銷商之元件供應(yīng)數(shù)據(jù)庫209的超鏈接。因?yàn)檫h(yuǎn)程數(shù)據(jù)庫的鏈接,所以從門戶網(wǎng)站204選擇的部件以及用戶系統(tǒng)220的設(shè)計(jì)數(shù)據(jù)庫225中存儲(chǔ)的部件稱為動(dòng)態(tài)部件。也可以在用戶實(shí)際位置或遠(yuǎn)程位置的獨(dú)立數(shù)據(jù)庫中而不是在設(shè)計(jì)數(shù)據(jù)庫225中存儲(chǔ)有關(guān)所選元件的信息。
最后,在用戶將元件添加到設(shè)計(jì)中后,過程300前進(jìn)到步驟314,此時(shí)認(rèn)為設(shè)計(jì)完成。在步驟316中,實(shí)現(xiàn)各種IP內(nèi)核之間的不同I/O管腳的連接。開放門戶網(wǎng)站204支持的設(shè)計(jì)平臺(tái)104提供自動(dòng)連接功能。通過使用自動(dòng)連接功能,設(shè)計(jì)平臺(tái)104自動(dòng)使用有關(guān)各IP內(nèi)核的傳輸數(shù)據(jù),以便自動(dòng)將IP內(nèi)核的各I/O管腳連接到總線。作為選擇,用戶102可以手工將IP內(nèi)核連接到總線。最后,在步驟318中生成高級(jí)連線表700。門戶網(wǎng)站204支持的設(shè)計(jì)平臺(tái)104輸出采用Verilog或VHDL之類的描述語言的連線表700。另外,設(shè)計(jì)平臺(tái)104可以向用戶102提供連線表700的圖形表示。圖7表示門戶網(wǎng)站204包含的設(shè)計(jì)工具生成的圖形格式的高級(jí)連線表示例。在生成高級(jí)連線表時(shí),門戶網(wǎng)站204還包括供驗(yàn)證過程400使用的所選IP內(nèi)核的傳輸軟件代碼。在圖7中,在高級(jí)連線表700中用圖形方式表示各IP內(nèi)核701。各IP內(nèi)核701代表復(fù)雜IP設(shè)計(jì),如DRAM或DSP。連線表700為設(shè)計(jì)平臺(tái)104提供的描述語言輸出,用于邏輯模擬和驗(yàn)證測試。向用戶102提供圖7中的圖形表示。
在利用開放門戶網(wǎng)站204支持設(shè)計(jì)平臺(tái)104的實(shí)施方式中,或者在允許將外部IP內(nèi)核連接到設(shè)計(jì)平臺(tái)104的實(shí)施方式中,實(shí)施方式執(zhí)行下一步驟320和過程400。稍后,為準(zhǔn)備生產(chǎn)設(shè)計(jì)產(chǎn)品,過程300進(jìn)行到步驟320(可選),在該步驟中,根據(jù)設(shè)計(jì)中的元件自動(dòng)生成材料清單。除生成材料清單之外,還將有關(guān)SoC設(shè)計(jì)的所有相關(guān)支持?jǐn)?shù)據(jù)一起封裝到帶有索引文件的文檔目錄中。用戶通過使用設(shè)計(jì)控制臺(tái)客戶軟件228選擇適當(dāng)菜單,或通過選擇用戶系統(tǒng)220上的應(yīng)用程序226,或者以其他方式,自動(dòng)生成材料清單。
圖4為一個(gè)流程圖,表示通過訪問圖2所示的門戶網(wǎng)站204采購元件的流程400。用戶通過訪問門戶網(wǎng)站204購買產(chǎn)品直接調(diào)用采購流程400,或者作為與圖3所示的元件選擇和管理過程300之類的較大過程的整體或一部分,自動(dòng)調(diào)用采購流程400。在圖4所示的采購流程400的第一步驟416中,用戶選擇向用戶系統(tǒng)220的用戶顯示的元件或部件的采購選項(xiàng)。采用與圖3所示步驟304和306類似的方式,向用戶提供可用部件的列表,或者由用戶直接輸入已知部件(型號(hào)或名稱),并比較輸入的部件信息與門戶網(wǎng)站或供應(yīng)商數(shù)據(jù)庫209中存儲(chǔ)的部件信息。用戶通過利用計(jì)算機(jī)鼠標(biāo)單擊購買圖標(biāo)或指定鏈接,或者通過利用計(jì)算機(jī)鍵盤輸入購買命令,選擇特定部件的購買選項(xiàng)。在選擇特定部件的購買選項(xiàng)前,門戶網(wǎng)站204向用戶102提供特定用戶102請求定制或修改IP內(nèi)核設(shè)計(jì)時(shí)有關(guān)IP內(nèi)核數(shù)據(jù)可用性和/或交付時(shí)間的信息。門戶網(wǎng)站204還可以向用戶102提供與門戶網(wǎng)站204定期存儲(chǔ)、更新的數(shù)據(jù)有關(guān)的信息,或者在需要時(shí),由應(yīng)用服務(wù)器232實(shí)時(shí)檢索供應(yīng)商數(shù)據(jù)庫209。
用戶選擇購買選項(xiàng)生成報(bào)價(jià)請求,在步驟418中,用戶系統(tǒng)220經(jīng)由因特網(wǎng)230向門戶網(wǎng)站204傳送報(bào)價(jià)請求。在門戶網(wǎng)站204,應(yīng)用服務(wù)器232接收報(bào)價(jià)請求,并調(diào)用商務(wù)服務(wù)器248,后者訪問商務(wù)數(shù)據(jù)庫246生成交易記錄。在為了完成最終交易的每一步驟中,更新在上一步購買交易中生成的交易記錄。在下一步驟420中,應(yīng)用服務(wù)器232請求供應(yīng)商報(bào)價(jià),并經(jīng)由因特網(wǎng)230向供應(yīng)商(通常為包含供應(yīng)商數(shù)據(jù)庫209的網(wǎng)站)傳送該請求。請求供應(yīng)商報(bào)價(jià)可能包括也可能不包括請求上述報(bào)價(jià)的用戶102的詳細(xì)信息,雇傭用戶102的企業(yè)的企業(yè)規(guī)模,以及用戶102樂意考慮的許可模型。在該實(shí)施方式中,包含上述信息,其目的是使供應(yīng)商能夠確定是否給予買方業(yè)界通常提供的某些折扣,如總額折扣,優(yōu)先供應(yīng)商或用戶折扣。可以利用交易標(biāo)識(shí)符標(biāo)記請求供應(yīng)商報(bào)價(jià),以方便與供應(yīng)商報(bào)價(jià)的匹配。
在下一步驟422中,供應(yīng)商最好通過因特網(wǎng)230向門戶網(wǎng)站204傳送推薦的電子合同,包括報(bào)價(jià)和許可模型。最好利用作為請求供應(yīng)商報(bào)價(jià)的一部分傳送的交易標(biāo)識(shí)符,部分標(biāo)識(shí)推薦的電子合同。在步驟424中,由門戶網(wǎng)站204將推薦的電子合同轉(zhuǎn)發(fā)到用戶系統(tǒng)220。在該實(shí)施方式中,用戶和供應(yīng)商均認(rèn)為供應(yīng)商報(bào)價(jià)為銷售報(bào)價(jià),用戶接受此報(bào)價(jià)將在該用戶和供應(yīng)商之間形成有法律約束力的契約,其前提的用戶有權(quán)簽訂合同。
在下一步驟426中,執(zhí)行用戶驗(yàn)證過程,以確保用戶有權(quán)進(jìn)行預(yù)期采購。例如,在一種實(shí)施方式中,設(shè)計(jì)控制臺(tái)客戶軟件228確定用戶是否有權(quán)進(jìn)行采購。上述因素因用戶而異,因公司而異,并且取決于以下因素采購所需的貨幣量,提出申請的個(gè)體的資格,以及其他因素等。設(shè)計(jì)控制臺(tái)客戶軟件228最好存儲(chǔ)有關(guān)用戶授權(quán)級(jí)別的數(shù)據(jù),并有權(quán)使用該數(shù)據(jù)。例如,可以在用戶雇主操作的獨(dú)立數(shù)據(jù)庫(本地或遠(yuǎn)程)中存儲(chǔ)授權(quán)數(shù)據(jù),需要付款的交易必須通過授權(quán)。作為選擇,可以在應(yīng)用服務(wù)器232中提供授權(quán)功能,因?yàn)榕卸ㄊ跈?quán)的位置并不是本文所述的實(shí)施方式的功能性的關(guān)鍵所在。作為驗(yàn)證過程的結(jié)果,設(shè)計(jì)控制臺(tái)客戶軟件228可能不允許用戶購買所選部件,或者允許用戶購買某個(gè)貨幣總量以下的部件。
正如步驟428所示,如果用戶無權(quán)采購,則用戶獲得授權(quán)。授權(quán)步驟428可以采取各種形式,包括電子授權(quán),書面授權(quán),正式批準(zhǔn)程序等。如果用戶沒有獲得授權(quán),則過程400在步驟428終止。
在步驟430中,只要用戶有關(guān)進(jìn)行采購,則向供應(yīng)商提交訂單,并且用戶與供應(yīng)商達(dá)成購買與交付所需產(chǎn)品或服務(wù)的合同。正如步驟432所示,經(jīng)由門戶網(wǎng)站204向供應(yīng)商傳送訂單。
門戶網(wǎng)站204可以在不同層次上卷入商業(yè)交易。例如,在步驟434中,確定門戶網(wǎng)站204是否處理交易帳單。若不然,則在步驟436中,由應(yīng)用服務(wù)器232生成經(jīng)過門戶網(wǎng)站204的交易費(fèi)用(即,將用戶和供應(yīng)商聚集起來的傭金)部分的發(fā)票,并從門戶網(wǎng)站204經(jīng)由因特網(wǎng)230傳送給供應(yīng)商。發(fā)票反映的傭金額是根據(jù)每筆交易的總交易價(jià)值的百分比確定的,或根據(jù)特定供應(yīng)商與門戶網(wǎng)站204之運(yùn)營商雙方同意的條款計(jì)算出傭金額。在下一步驟438中,供應(yīng)商向門戶網(wǎng)站204呈遞發(fā)票反映的金額作為補(bǔ)償。在該實(shí)施方式中,開具發(fā)票和付款均采用電子方式,然而,也可以采用票據(jù)形式。為方便起見,供應(yīng)商可以在門戶網(wǎng)站204開立帳戶,從而自動(dòng)將金額記入借方,而不是開具發(fā)票。
回到步驟434,如果門戶網(wǎng)站204處理帳單,則過程400轉(zhuǎn)到步驟440,在該步驟中應(yīng)用服務(wù)器232生成發(fā)票,并從門戶網(wǎng)站204經(jīng)由因特網(wǎng)230發(fā)送給用戶。在下一步驟442中,用戶向門戶網(wǎng)站204劃撥該發(fā)票的匯款,可采用電子方式或票據(jù)方式進(jìn)行。作為選擇,用戶可以在門戶網(wǎng)站204開立帳戶,從而以電子方式記入借方。接著,在步驟444中,門戶網(wǎng)站204扣除部分匯款作為充當(dāng)中間人的補(bǔ)償,然后將匯款額的余數(shù)劃撥(以電子方式或票據(jù)方式)給供應(yīng)商。此時(shí),采購流程400結(jié)束。
只要完成在過程300中創(chuàng)建的設(shè)計(jì)后(并且必須在流程400中向外部銷售商購買所選IP內(nèi)核時(shí)),設(shè)計(jì)平臺(tái)104向用戶102提供ANSI-C源代碼或類似的匯編語言源代碼。向用戶102提供源代碼的目的是進(jìn)行驗(yàn)證,用戶可以順利編譯源代碼,并在各種常規(guī)邏輯模擬器和驗(yàn)證工具中使用,以確??傇O(shè)計(jì)的完整性。圖5是一個(gè)流程圖,表示可與圖2所示的系統(tǒng)一起使用的設(shè)計(jì)驗(yàn)證過程500。
在過程300中傳輸所選IP內(nèi)核數(shù)據(jù)后,在步驟502中,設(shè)計(jì)人員可以單獨(dú)測試、驗(yàn)證所傳輸?shù)腎P內(nèi)核的功能。為了執(zhí)行塊級(jí)驗(yàn)證過程,IP內(nèi)核的原始設(shè)計(jì)必須包括既能標(biāo)識(shí)IP內(nèi)核類型又能標(biāo)識(shí)IP內(nèi)核設(shè)計(jì)之目的的文件。必須與Verilog或VHDL文件一起傳輸該文件,作為附加支持?jǐn)?shù)據(jù)。塊級(jí)驗(yàn)證文件為源代碼文件,為原始IP內(nèi)核創(chuàng)建器創(chuàng)建的Verilog、VHDL或ANSI-C文件。塊級(jí)驗(yàn)證文件通常稱為測試工作臺(tái)文件。目前,塊級(jí)驗(yàn)證是在外部執(zhí)行的,因?yàn)樵O(shè)計(jì)IP內(nèi)核時(shí)其設(shè)計(jì)通常不包含測試工作臺(tái)文件。因?yàn)榇蟛糠钟脩袅私鈮K級(jí)IP內(nèi)核的功能,并且其功能驗(yàn)證比較簡單。通常,測試工作臺(tái)文件是不必要的,因?yàn)榇蟛糠钟脩?02能夠輕易識(shí)別并測試塊級(jí)IP內(nèi)核設(shè)計(jì)。然而,為了使本發(fā)明的設(shè)計(jì)平臺(tái)104更加精煉,并且為了提高設(shè)計(jì)平臺(tái)104的使用率,最好使全部驗(yàn)證功能完全自動(dòng)化。因此,將來設(shè)計(jì)IP內(nèi)核時(shí)需要編寫測試工作臺(tái)文件,以標(biāo)識(shí)IP內(nèi)核及其功能。當(dāng)越來越多的IP內(nèi)核設(shè)計(jì)包含測試工作臺(tái)文件時(shí),設(shè)計(jì)平臺(tái)104可以驗(yàn)證IP內(nèi)核的功能及其完整傳輸。塊級(jí)驗(yàn)證包括單獨(dú)將各IP內(nèi)核塊放置到測試工作臺(tái)上??梢岳梅浅B腣HDL模擬器或C模擬器進(jìn)行塊級(jí)模擬。通過驗(yàn)證過程300完全傳輸了所有IP內(nèi)核塊數(shù)據(jù),塊級(jí)驗(yàn)證確??傇O(shè)計(jì)的完整性。通過與特定IP內(nèi)核設(shè)計(jì)一起傳輸所有支持?jǐn)?shù)據(jù)文件,設(shè)計(jì)平臺(tái)104輸出ANSI-C源代碼,其中可以在各種常規(guī)驗(yàn)證和邏輯模擬工具上編譯、執(zhí)行以上源代碼。
接著,在步驟504中,設(shè)計(jì)平臺(tái)104驗(yàn)證總設(shè)計(jì)的綜合和連通性。步驟504的目的在于確保將各IP內(nèi)核塊的每個(gè)I/O端口正確綜合連接到總設(shè)計(jì)內(nèi)使用其他IP內(nèi)核塊和總線。在步驟504中,使用傳輸過程300中附隨實(shí)際操作實(shí)現(xiàn)代碼(用VHDL或Verilog編寫)提供的諸如I/O管腳數(shù)據(jù)和寄存器映射數(shù)據(jù)之類的支持?jǐn)?shù)據(jù),驗(yàn)證IP內(nèi)核塊的綜合和連通性。用戶102經(jīng)由設(shè)計(jì)平臺(tái)104配置IP內(nèi)核的具體參數(shù),并且設(shè)計(jì)平臺(tái)104生成的連線表包括以上參數(shù)。如上所述,設(shè)計(jì)平臺(tái)104采用VHDL,Verilog或其他硬件語言,生成全部SoC連線表的實(shí)際操作實(shí)現(xiàn)代碼。在步驟506中,設(shè)計(jì)平臺(tái)104生成實(shí)際操作實(shí)現(xiàn)代碼連線表,以便生成設(shè)計(jì)驗(yàn)證所需的ANSI-C或任何其他匯編語言的源代碼文件。如上所述,可以利用各種邏輯模擬器編譯、利用生成的連線表和驗(yàn)證源代碼文件。在步驟508中,利用邏輯模擬器驗(yàn)證所生成的連線表代表的總設(shè)計(jì)的IP內(nèi)核塊的綜合和連通性。常規(guī)方法要求所有設(shè)計(jì)人員編寫C語言代碼或其他匯編語言代碼,編譯編寫的代碼供各種邏輯模擬器使用。在該實(shí)施方式中,設(shè)計(jì)平臺(tái)自動(dòng)利用傳輸?shù)臄?shù)據(jù)文件生成C語言代碼(或其他匯編語言代碼),以便進(jìn)行綜合和連通性驗(yàn)證。
在驗(yàn)證總設(shè)計(jì)的綜合和連通性后,設(shè)計(jì)平臺(tái)104在步驟510中提供總設(shè)計(jì)功能驗(yàn)證。在每個(gè)SoC設(shè)計(jì)中,將基本功能元件放置到設(shè)計(jì)上以便執(zhí)行諸如地址譯碼器、總線判優(yōu)器、總線橋接器之類的基本任務(wù)。必須驗(yàn)證基本元件的功能性。設(shè)計(jì)平臺(tái)104包括用于模擬基本元件之操作的驗(yàn)證工具。
在驗(yàn)證過程500中,如果IP內(nèi)核塊設(shè)計(jì)出現(xiàn)錯(cuò)誤,則設(shè)計(jì)平臺(tái)104通過網(wǎng)絡(luò)(如因特網(wǎng)230)提供對(duì)原始IP內(nèi)核塊設(shè)計(jì)人員的訪問,通知IP內(nèi)核塊設(shè)計(jì)人員或使用該IP內(nèi)核塊的其他設(shè)計(jì)人員出現(xiàn)的錯(cuò)誤。在改正原始IP內(nèi)核設(shè)計(jì)后,設(shè)計(jì)平臺(tái)104自動(dòng)向其SoC設(shè)計(jì)采用該IP內(nèi)核的所有用戶102傳輸修正后的IP內(nèi)核設(shè)計(jì)。因此,該實(shí)施方式提供了跟蹤IP內(nèi)核塊設(shè)計(jì)缺陷的方法。此外,在改正IP內(nèi)核塊的缺陷后,設(shè)計(jì)平臺(tái)104提供向該IP內(nèi)核塊的所有用戶宣傳其修正的方法。
在生成全部SoC設(shè)計(jì)的連線表后,設(shè)計(jì)平臺(tái)104允許前端用戶102將連線表輸出和附隨軟件合并到各種眾所周知的綜合、布置和繞線工具中,以便裝配最終設(shè)計(jì)。
可以理解,設(shè)計(jì)平臺(tái)104具有多種功能和非常大的靈活性,能夠把電路設(shè)計(jì)人員和工程師與對(duì)設(shè)計(jì)過程非常有用的供應(yīng)商和其他資源聯(lián)系起來。設(shè)計(jì)平臺(tái)104提供的基礎(chǔ)設(shè)施最好能夠容納數(shù)目越來越多的用戶和供應(yīng)商。實(shí)際上,系統(tǒng)的效率和使用率會(huì)隨著供應(yīng)商數(shù)據(jù)的增長而增長。隨著供應(yīng)商數(shù)目的增長,可用服務(wù)和工具將越來越多,并且系統(tǒng)也能更好地滿足用戶的綜合需求。同時(shí),該系統(tǒng)能夠推動(dòng)小型供應(yīng)商的參與,因?yàn)殒溄拥介T戶網(wǎng)站的前期費(fèi)用遠(yuǎn)遠(yuǎn)低于供應(yīng)商在全面銷售和營銷方面的花費(fèi)。從用戶觀點(diǎn)看,以每個(gè)使用為基礎(chǔ)或以其他短期為基礎(chǔ)訪問大量EDA軟件工具的用戶數(shù)快速增長,使得人們越來越買得起此類工具,從而越來越多的最終用戶能夠使用此類工具。
在一種實(shí)施方式中,門戶網(wǎng)站204推動(dòng)通過門戶網(wǎng)站204提供的不同服務(wù)和過程之間的聯(lián)系。例如,用戶通過使用門戶網(wǎng)站204的功能許可IP內(nèi)核數(shù)據(jù)庫208中的某個(gè)IP內(nèi)核,請求設(shè)計(jì)專家203(通過門戶網(wǎng)站204確定專家并進(jìn)行聯(lián)系)的專家援助,以便將獲得許可的IP內(nèi)核集成到更大的設(shè)計(jì)中,利用通過門戶網(wǎng)站204從EDA工具供應(yīng)商210那里獲得的軟件模擬總設(shè)計(jì)(包括獲得許可的IP內(nèi)核),并通過門戶網(wǎng)站204在計(jì)算機(jī)場地205上運(yùn)行模擬。
圖2-5將本實(shí)施方式描述為門戶網(wǎng)站204支持的設(shè)計(jì)平臺(tái)104,其中可以通過因特網(wǎng)230公開訪問門戶網(wǎng)站204。本發(fā)明的另一種實(shí)施方式能夠提供因特網(wǎng)230上的封閉門戶網(wǎng)站。只有指定用戶102和指定供應(yīng)商106才能訪問封閉門戶網(wǎng)站。用戶102和供應(yīng)商106可以為單一實(shí)體工作站網(wǎng)絡(luò)220內(nèi)的內(nèi)部設(shè)計(jì)小組,或者為通過因特網(wǎng)230連接起來的各種外部用戶102和供應(yīng)商106。圖6表示將設(shè)計(jì)平臺(tái)104加載到用戶工作站620的應(yīng)用程序存儲(chǔ)磁芯626上的本發(fā)明的一種實(shí)施方式。盡管只顯示了兩臺(tái)用戶工作站620,但是應(yīng)該理解,通過LAN或因特網(wǎng)/內(nèi)聯(lián)網(wǎng)630可以連接許多用戶工作站620。工作站620可通過因特網(wǎng)230或通過內(nèi)聯(lián)網(wǎng)訪問其他工作站220的IP內(nèi)核設(shè)計(jì)。因?yàn)樵O(shè)計(jì)平臺(tái)104是采用JAVA語言編寫的,所以設(shè)計(jì)平臺(tái)能夠在各種類型的計(jì)算機(jī)工作站620上運(yùn)行。用戶工作站620包含設(shè)計(jì)目錄635,后者存儲(chǔ)用戶的IP內(nèi)核設(shè)計(jì)和支持文件。因此,該實(shí)施方式同樣支持開放門戶網(wǎng)站204支持的設(shè)計(jì)平臺(tái)104的功能。例如,申請日期為2000年2月28日的美國專利申請No.09/514,757(代理人文件號(hào)247/237)公開了門戶網(wǎng)站支持的電路設(shè)計(jì)平臺(tái)示例。本文引用美國專利申請No.09/514,757(代理人文件號(hào)247/237)作為參考。
另外,可以通過圖形用戶界面(GUI)向用戶提供本發(fā)明的各種實(shí)施方式和功能。圖8a-8d和圖9表示該電路設(shè)計(jì)平臺(tái)之各個(gè)階段的典型GUI屏幕快照。例如,圖8a表示創(chuàng)建IP內(nèi)核或搜索IP內(nèi)核以將其導(dǎo)入SoC設(shè)計(jì)時(shí)向用戶提供的GUI。GUI屏幕800包括可利用鍵盤或鼠標(biāo)進(jìn)行選擇的各種圖標(biāo)805和工具欄810。例如,選擇圖標(biāo)805或工具欄810上的工具,將向用戶102提供窗口815。窗口815向用戶102提供協(xié)助對(duì)新創(chuàng)建的IP內(nèi)核進(jìn)行分類的各種設(shè)計(jì)參數(shù),或者向用戶102提供搜索IP內(nèi)核時(shí)用于提供主要特征的裝置。在步驟304中,用戶102利用設(shè)計(jì)平臺(tái)支持的搜索引擎查找各種遠(yuǎn)程IP內(nèi)核資源。窗口815向用戶提供用于選擇各種IP內(nèi)核所需的主要設(shè)計(jì)特征的裝置。在創(chuàng)建IP內(nèi)核后,存儲(chǔ)到與不同用戶工作站相連的數(shù)據(jù)庫225中。在創(chuàng)建并存儲(chǔ)IP內(nèi)核后,在圖8b所示的GUI頁面上顯示該IP內(nèi)核。正如圖8b所示,屏幕800可以顯示所存儲(chǔ)的IP內(nèi)核數(shù)據(jù)的各種鏈接。圖8b表示公布IP內(nèi)核設(shè)計(jì)的IP內(nèi)核創(chuàng)建器的GUI頁面示例。SoC設(shè)計(jì)人員/用戶102可以搜索用戶的工作站網(wǎng)絡(luò),查找滿足特定設(shè)計(jì)標(biāo)準(zhǔn)的IP內(nèi)核。接著,用戶102選擇圖8b所示的IP公布頁面上的適當(dāng)鏈接,以開始元件數(shù)據(jù)文件傳輸。圖8c所示的GUI頁面為用戶提供用于確定元件數(shù)據(jù)文件之傳輸過程是否結(jié)束的裝置。為用戶102提供諸如圖8c所示的GUI頁面,該頁面列出已經(jīng)傳輸?shù)母鞣NIP內(nèi)核數(shù)據(jù)文件。在圖8c中,為用戶102提供用于描述各種IP元件數(shù)據(jù)文件文件夾825的圖標(biāo)。在GUI窗口830中,向用戶102提供各文件夾825中存儲(chǔ)的數(shù)據(jù)的細(xì)節(jié)。
在導(dǎo)入全部IP內(nèi)核數(shù)據(jù)文件后,用戶可以開始SoC綜合和連接。圖8d向用戶102提供可能發(fā)生的GUI示例,表示布置在SoC設(shè)計(jì)內(nèi)的IP內(nèi)核。在將IP內(nèi)核布置、合并到用戶102的SoC設(shè)計(jì)內(nèi)之后,電路設(shè)計(jì)平臺(tái)生成總SoC設(shè)計(jì)內(nèi)包含的所有元件的連線表。圖9表示連線表輸出的示例GUI。正如圖9所示,屏幕800包括圖標(biāo)805和工具欄810。另外,圖9還描繪了代表各IP內(nèi)核之不同元件文件數(shù)據(jù)的文件夾圖標(biāo)825??梢赃x擇文件夾825以便進(jìn)一步顯示支持各IP內(nèi)核元件數(shù)據(jù)文件的所有源代碼文件列表830。源代碼文件列表830包括諸如電源管理模型、管腳圖表、驗(yàn)證文件之類的文件。另外,可以選擇各源代碼文件的選項(xiàng),以便向用戶102顯示實(shí)際源代碼。通過經(jīng)由GUI修改、編輯源代碼文件,允許用戶改變或定制IP內(nèi)核設(shè)計(jì),以滿足特定SoC設(shè)計(jì)參數(shù)。
圖10表示本發(fā)明包含的各種功能部件的框圖。系統(tǒng)1000包括位于中心的平臺(tái)構(gòu)造器1001。將平臺(tái)構(gòu)造器1001連接到各種功能部件,或構(gòu)成本發(fā)明之各種實(shí)施方式的部件的任意組合。例如,將平臺(tái)構(gòu)造器1001連接到數(shù)據(jù)庫1002。數(shù)據(jù)庫1002存儲(chǔ)文件夾1003,后者包含創(chuàng)建或?qū)氲腎P內(nèi)核元件數(shù)據(jù)文件。將數(shù)據(jù)庫1002連接到順從檢驗(yàn)器1004,以確保新的SoC設(shè)計(jì)遵守客戶或公司的設(shè)計(jì)標(biāo)準(zhǔn)。將順從檢驗(yàn)器1004連接到IP創(chuàng)建器封裝1005,從而每個(gè)新創(chuàng)建的IP內(nèi)核均遵守所有公司標(biāo)準(zhǔn)。另外,將平臺(tái)構(gòu)造器1001連接到IP內(nèi)核搜索引擎1006。搜索引擎允許用戶102使用平臺(tái)構(gòu)造器1001搜索遠(yuǎn)程創(chuàng)建的IP內(nèi)核。還可以把IP內(nèi)核搜索引擎1006與合同構(gòu)造器1007聯(lián)系起來,合同構(gòu)造器1007提供用戶102與第三方銷售商103之間發(fā)生的技術(shù)轉(zhuǎn)讓或許可??梢詫⑵脚_(tái)構(gòu)造器1001進(jìn)一步連接到功率/面積估計(jì)1008和/或缺陷報(bào)告通知系統(tǒng)1009。此外,可以將平臺(tái)構(gòu)造器1001連接到平臺(tái)瀏覽器1010或VCC 1011。而且可以將平臺(tái)構(gòu)造器1001連接到界面順從檢驗(yàn)器1012和測試生成器1013。將界面順從檢驗(yàn)器1012連接到連線表生成器1014,以提供總SoC設(shè)計(jì)上所有元件的源代碼輸出。
公開了一種方便電路設(shè)計(jì)并以商務(wù)為基礎(chǔ)向用戶提供設(shè)計(jì)工具和服務(wù)的方法,以及其某些附帶優(yōu)勢。然而,應(yīng)該理解,可以對(duì)該系統(tǒng)和/或處理步驟的形式、內(nèi)容和排列作出各種變更而并不背離本發(fā)明的實(shí)質(zhì)和范圍,本文描述的系統(tǒng)和方法僅僅是其首選或典型實(shí)施方式。因此,除附屬權(quán)利要求書及其法律等價(jià)物之外,不對(duì)本發(fā)明進(jìn)行任何限制或限定。
權(quán)利要求
1.一種電路設(shè)計(jì)平臺(tái),包括包含目錄數(shù)據(jù)庫的計(jì)算機(jī)系統(tǒng),可通過分布式電子網(wǎng)絡(luò)訪問所述計(jì)算機(jī)系統(tǒng),所述目錄數(shù)據(jù)庫存儲(chǔ)在設(shè)計(jì)過程的不同階段中使用的元件數(shù)據(jù);在所述計(jì)算機(jī)系統(tǒng)上運(yùn)行應(yīng)用服務(wù)器,所述應(yīng)用服務(wù)器與所述目錄數(shù)據(jù)庫相連,所述應(yīng)用服務(wù)器還包括能夠搜索分布式電子網(wǎng)絡(luò)查找特定元件數(shù)據(jù)的搜索引擎;用于在總電路設(shè)計(jì)上放置元件的電路綜合器;用于連接總電路設(shè)計(jì)上放置的元件的元件連接器;能夠生成總芯片設(shè)計(jì)之源代碼連線表的連線表生成器,所述源代碼連線表包括元件位置和連接數(shù)據(jù);能夠生成各種邏輯模擬器編譯、執(zhí)行的源代碼的驗(yàn)證源代碼生成器;以及由所述計(jì)算機(jī)系統(tǒng)管理的網(wǎng)絡(luò)接口,用于提出或接收請求,以便通過所述分布式電子網(wǎng)絡(luò)訪問其他計(jì)算機(jī)系統(tǒng)上的所述元件數(shù)據(jù)。
2.權(quán)利要求1的電路設(shè)計(jì)平臺(tái),其中在設(shè)計(jì)過程的不同階段中使用的所述元件數(shù)據(jù)包括可用電子元件的列表。
3.權(quán)利要求2的電路設(shè)計(jì)平臺(tái),其中在設(shè)計(jì)過程的不同階段中使用的所述元件數(shù)據(jù)包括與可用電子元件一起使用的支持?jǐn)?shù)據(jù)文件。
4.權(quán)利要求3的電路設(shè)計(jì)平臺(tái),其中所述支持?jǐn)?shù)據(jù)文件包括元件一覽表,定時(shí)模型,操作說明書,模擬模型,I/O管腳數(shù)據(jù),寄存器映射數(shù)據(jù),驗(yàn)證源代碼,功率數(shù)據(jù)模型,區(qū)域面積數(shù)據(jù)模型,測試工作臺(tái)文件,缺陷跟蹤報(bào)告以及信號(hào)完整性模型。
5.權(quán)利要求1的電路設(shè)計(jì)平臺(tái),其中所述目錄數(shù)據(jù)庫包括一個(gè)或多個(gè)供應(yīng)商數(shù)據(jù)庫的電子鏈接。
6.權(quán)利要求1的電路設(shè)計(jì)平臺(tái),其中所述網(wǎng)絡(luò)接口接收傳送元件設(shè)計(jì)文件的請求,作為響應(yīng),所述應(yīng)用服務(wù)器將所述元件設(shè)計(jì)文件轉(zhuǎn)發(fā)到可通過分布式電子網(wǎng)絡(luò)訪問的遠(yuǎn)程計(jì)算機(jī)系統(tǒng)上。
7.權(quán)利要求6的電路設(shè)計(jì)平臺(tái),其中遠(yuǎn)程用戶支付指定費(fèi)用后即可訪問所述元件設(shè)計(jì)文件。
8.權(quán)利要求1的電路設(shè)計(jì)平臺(tái),其中所述應(yīng)用服務(wù)器包含用JAVA語言編寫的源代碼。
9.權(quán)利要求8的電路設(shè)計(jì)平臺(tái),其中所述應(yīng)用服務(wù)器支持開放門戶網(wǎng)站。
10.權(quán)利要求8的電路設(shè)計(jì)平臺(tái),其中所述應(yīng)用服務(wù)器支持封閉門戶網(wǎng)站。
11.一種通過使用多個(gè)用戶的資源設(shè)計(jì)電路的方法,包括以下步驟在與第一用戶系統(tǒng)相連的第一數(shù)據(jù)庫上,存儲(chǔ)眾多元件數(shù)據(jù)文件;需要時(shí),通過分布式電子網(wǎng)絡(luò)將第二用戶系統(tǒng)連接到所述第一用戶系統(tǒng),所述第一用戶系統(tǒng)包括與第一數(shù)據(jù)庫互連的第一應(yīng)用服務(wù)器,所述第二用戶系統(tǒng)包括與第二數(shù)據(jù)庫互連的第二應(yīng)用服務(wù)器;接收所述第二用戶系統(tǒng)的請求,以便訪問第一數(shù)據(jù)庫上存儲(chǔ)的眾多元件數(shù)據(jù)文件;所述第二用戶系統(tǒng)搜索第一數(shù)據(jù)庫中存儲(chǔ)的眾多元件數(shù)據(jù)文件;通過所述分布式電子網(wǎng)絡(luò),從所述第一用戶系統(tǒng)中接收所述可用電子元件的某個(gè)元件的元件選擇;所述第二用戶系統(tǒng)選擇第一數(shù)據(jù)庫中存儲(chǔ)的眾多元件數(shù)據(jù)文件的至少一個(gè)元件數(shù)據(jù)文件;檢索與所選電子元件有關(guān)的其他信息;以及經(jīng)由分布式電子網(wǎng)絡(luò)從第一用戶系統(tǒng)向第二用戶系統(tǒng)傳輸至少一個(gè)元件數(shù)據(jù)文件;將第一個(gè)傳輸數(shù)據(jù)文件代表的第一個(gè)元件集成到電路設(shè)計(jì)內(nèi);互連第一個(gè)元件與電路設(shè)計(jì)上的現(xiàn)有元件;通過使用至少一個(gè)元件數(shù)據(jù)文件,生成電路設(shè)計(jì)的連線表源代碼;通過使用傳送的元件數(shù)據(jù)文件,驗(yàn)證第一個(gè)元件的功能;以及根據(jù)傳送的數(shù)據(jù)文件,生成電路設(shè)計(jì)的綜合連接元件的驗(yàn)證源代碼。
12.權(quán)利要求11的方法,其中存儲(chǔ)元件數(shù)據(jù)文件的所述步驟包括存儲(chǔ)采用硬件語言、文本、c代碼或匯編語言編寫的實(shí)際操作實(shí)現(xiàn)代碼和支持?jǐn)?shù)據(jù)文件。
13.權(quán)利要求11的方法,其中利用圖形用戶界面支持所述搜索、選擇、集成、互連、審查、以及生成連線表和驗(yàn)證文件的步驟。
14.權(quán)利要求11的方法,其中通過使用傳送的元件數(shù)據(jù)文件,由電路設(shè)計(jì)平臺(tái)自動(dòng)執(zhí)行所述互連步驟。
15.權(quán)利要求11的方法還包括以下步驟,在第一和第二用戶系統(tǒng)上提供圖形界面,在所述第一和第二用戶系統(tǒng)上接收與所述元件數(shù)據(jù)文件之某個(gè)文件相對(duì)應(yīng)的輸入選擇,以及從所述第二用戶系統(tǒng)向所述第一用戶系統(tǒng)傳送所述輸入選擇的指示;其中接收所述第二用戶系統(tǒng)之請求以訪問第一數(shù)據(jù)庫中存儲(chǔ)的所述眾多元件數(shù)據(jù)文件之某一文件的所述步驟包括以下步驟,接收所述第二用戶系統(tǒng)的所述輸入選擇的所述指示。
16.權(quán)利要求11的方法,其中所述分布式電子網(wǎng)絡(luò)包括因特網(wǎng)。
17.權(quán)利要求16的方法,其中所述應(yīng)用服務(wù)器支持開放門戶網(wǎng)站,開放門戶網(wǎng)站允許公開訪問與因特網(wǎng)相連的任意用戶工作站。
18.權(quán)利要求16的方法,其中所述應(yīng)用服務(wù)器支持封閉門戶網(wǎng)站,封閉門戶網(wǎng)站允許公開訪問與因特網(wǎng)相連的指定用戶工作站。
19.權(quán)利要求11的方法,其中當(dāng)修改傳送的元件數(shù)據(jù)文件時(shí),所述第二用戶自動(dòng)接收所述第一用戶系統(tǒng)的更新元件文件。
20.權(quán)利要求16的方法,其中所述元件數(shù)據(jù)包括所述可用電子元件之供應(yīng)商的鏈接。
21.一種通過使用多個(gè)用戶的資源設(shè)計(jì)電路的系統(tǒng),包括第一數(shù)據(jù)庫,用于在與第一用戶系統(tǒng)相連的第一數(shù)據(jù)庫上,存儲(chǔ)眾多元件數(shù)據(jù)文件;網(wǎng)絡(luò)管理器,需要時(shí),通過分布式電子網(wǎng)絡(luò)將所述第一用戶系統(tǒng)連接到第二用戶系統(tǒng),所述第一用戶系統(tǒng)包括與第一數(shù)據(jù)庫互連的應(yīng)用服務(wù)器,所述第二用戶系統(tǒng)包括與第二數(shù)據(jù)庫互連的應(yīng)用服務(wù)器;網(wǎng)絡(luò)接口,接收所述第二用戶系統(tǒng)的請求,以便訪問第一數(shù)據(jù)庫上存儲(chǔ)的眾多元件數(shù)據(jù)文件,并經(jīng)由分布式電子網(wǎng)絡(luò),從第一用戶系統(tǒng)向第二用戶系統(tǒng)傳送至少一個(gè)元件數(shù)據(jù)文件;搜索引擎,用于所述第二用戶系統(tǒng)搜索第一數(shù)據(jù)庫中存儲(chǔ)的眾多元件數(shù)據(jù)文件;選擇裝置,用于所述第二用戶系統(tǒng)選擇第一數(shù)據(jù)庫中存儲(chǔ)的眾多元件數(shù)據(jù)文件的至少一個(gè)元件數(shù)據(jù)文件;電路綜合器,用于將第一個(gè)傳輸數(shù)據(jù)文件代表的第一個(gè)元件集成到電路設(shè)計(jì)內(nèi);電路元件連接器,用于互連第一個(gè)元件與電路設(shè)計(jì)上的現(xiàn)有元件;連線表源代碼生成器,用于通過使用眾多元件數(shù)據(jù)文件,生成電路設(shè)計(jì);元件功能驗(yàn)證器,用于通過使用傳送的元件數(shù)據(jù)文件,驗(yàn)證第一個(gè)元件的功能;以及電路驗(yàn)證文件生成器,用于生成眾多邏輯模擬器編譯、執(zhí)行的源代碼文件。
22.權(quán)利要求21的系統(tǒng),其中第一數(shù)據(jù)庫上存儲(chǔ)的元件數(shù)據(jù)文件包括采用硬件語言編寫的實(shí)際操作實(shí)現(xiàn)代碼,采用匯編語言存儲(chǔ)所述支持?jǐn)?shù)據(jù)文件。
23.權(quán)利要求21的系統(tǒng),其中利用圖形用戶界面支持所述搜索引擎、選擇裝置、電路綜合器、電路元件連接器以及連線表生成器。
24.權(quán)利要求21的系統(tǒng),其中電路元件連接器還包括使用傳送的元件數(shù)據(jù)文件的自動(dòng)元件連接器。
25.權(quán)利要求21的系統(tǒng),其中所述分布式電子網(wǎng)絡(luò)包括因特網(wǎng)。
26.權(quán)利要求25的系統(tǒng),其中所述應(yīng)用服務(wù)器支持開放門戶網(wǎng)站,開放門戶網(wǎng)站允許公開訪問與因特網(wǎng)相連的任意用戶工作站。
27.權(quán)利要求25的系統(tǒng),其中所述應(yīng)用服務(wù)器支持封閉門戶網(wǎng)站,封閉門戶網(wǎng)站允許公開訪問與因特網(wǎng)相連的指定用戶工作站。
28.權(quán)利要求21的系統(tǒng)還包括缺陷跟蹤器,其中當(dāng)發(fā)現(xiàn)傳輸?shù)脑?shù)據(jù)文件有錯(cuò)誤時(shí),所述第一用戶系統(tǒng)向第二用戶系統(tǒng)自動(dòng)傳送經(jīng)過更新的元件文件。
29.一種其上包含有程序指令集的計(jì)算機(jī)可讀介質(zhì),程序指令集促使一個(gè)或多個(gè)處理器執(zhí)行以下步驟序列,所述步驟包括在與第一用戶系統(tǒng)相連的第一數(shù)據(jù)庫上,存儲(chǔ)眾多元件數(shù)據(jù)文件;需要時(shí),通過分布式電子網(wǎng)絡(luò)將第二用戶系統(tǒng)連接到所述第一用戶系統(tǒng),所述第一用戶系統(tǒng)包括與第一數(shù)據(jù)庫互連的第一應(yīng)用服務(wù)器,所述第二用戶系統(tǒng)包括與第二數(shù)據(jù)庫互連的第二應(yīng)用服務(wù)器;接收所述第二用戶系統(tǒng)的請求,以便訪問第一數(shù)據(jù)庫上存儲(chǔ)的眾多元件數(shù)據(jù)文件;所述第二用戶系統(tǒng)搜索第一數(shù)據(jù)庫中存儲(chǔ)的眾多元件數(shù)據(jù)文件;通過所述分布式電子網(wǎng)絡(luò),從所述第一用戶系統(tǒng)中接收所述可用電子元件的某個(gè)元件的元件選擇;所述第二用戶系統(tǒng)選擇第一數(shù)據(jù)庫中存儲(chǔ)的眾多元件數(shù)據(jù)文件的至少一個(gè)元件數(shù)據(jù)文件;檢索與所選電子元件有關(guān)的其他信息;以及經(jīng)由分布式電子網(wǎng)絡(luò)從第一用戶系統(tǒng)向第二用戶系統(tǒng)傳輸至少一個(gè)元件數(shù)據(jù)文件;將第一個(gè)傳輸數(shù)據(jù)文件代表的第一個(gè)元件集成到電路設(shè)計(jì)內(nèi);互連第一個(gè)元件與電路設(shè)計(jì)上的現(xiàn)有元件;通過使用至少一個(gè)元件數(shù)據(jù)文件,生成電路設(shè)計(jì)的連線表源代碼;通過使用傳送的元件數(shù)據(jù)文件,驗(yàn)證第一個(gè)元件的功能;以及根據(jù)傳送的數(shù)據(jù)文件,生成電路設(shè)計(jì)的綜合連接元件的驗(yàn)證源代碼。
30.權(quán)利要求29的計(jì)算機(jī)可讀介質(zhì),其中在應(yīng)用服務(wù)器上存儲(chǔ)所述計(jì)算機(jī)可讀介質(zhì),應(yīng)用服務(wù)器在計(jì)算機(jī)系統(tǒng)上運(yùn)行。
31.權(quán)利要求30的計(jì)算機(jī)可讀介質(zhì),其中所述計(jì)算機(jī)可讀介質(zhì)是用任意計(jì)算機(jī)語言編寫。
32.一種電路芯片設(shè)計(jì)系統(tǒng),包括包含目錄數(shù)據(jù)庫的計(jì)算機(jī)系統(tǒng),可通過分布式電子網(wǎng)絡(luò)訪問所述計(jì)算機(jī)系統(tǒng),所述目錄數(shù)據(jù)庫存儲(chǔ)在設(shè)計(jì)過程的不同階段中使用的元件數(shù)據(jù);在所述計(jì)算機(jī)系統(tǒng)上運(yùn)行應(yīng)用服務(wù)器,所述應(yīng)用服務(wù)器與所述目錄數(shù)據(jù)庫相連,所述應(yīng)用服務(wù)器還包括電路設(shè)計(jì)平臺(tái);以及由所述計(jì)算機(jī)系統(tǒng)管理的網(wǎng)絡(luò)接口,用于提出或接收請求,以便通過所述分布式電子網(wǎng)絡(luò)訪問其他計(jì)算機(jī)系統(tǒng)上的所述元件數(shù)據(jù)。
33.權(quán)利要求32的系統(tǒng),其中電路設(shè)計(jì)平臺(tái)還包括能夠搜索分布式電子網(wǎng)絡(luò)查找特定元件數(shù)據(jù)的搜索引擎。
34.權(quán)利要求32的系統(tǒng),其中電路設(shè)計(jì)平臺(tái)還包括用于在總電路設(shè)計(jì)上放置元件的電路綜合器。
35.權(quán)利要求32的系統(tǒng),其中電路設(shè)計(jì)平臺(tái)還包括用于連接總電路設(shè)計(jì)上放置的元件的元件連接器。
36.權(quán)利要求32的系統(tǒng),其中電路設(shè)計(jì)平臺(tái)還包括能夠生成總芯片設(shè)計(jì)之源代碼連線表的連線表生成器,所述源代碼連線表包括元件位置和連接數(shù)據(jù)。
37.權(quán)利要求32的系統(tǒng),其中電路設(shè)計(jì)平臺(tái)還包括能夠生成各種邏輯模擬器編譯、執(zhí)行的源代碼的驗(yàn)證源代碼生成器。
38.一種通過使用多個(gè)用戶的資源設(shè)計(jì)電路的方法,包括以下步驟在與第一用戶系統(tǒng)相連的第一數(shù)據(jù)庫上,存儲(chǔ)眾多元件數(shù)據(jù)文件;需要時(shí),通過分布式電子網(wǎng)絡(luò)將第二用戶系統(tǒng)連接到所述第一用戶系統(tǒng),所述第一用戶系統(tǒng)包括與第一數(shù)據(jù)庫互連的第一應(yīng)用服務(wù)器,所述第二用戶系統(tǒng)包括與第二數(shù)據(jù)庫互連的第二應(yīng)用服務(wù)器;接收所述第二用戶系統(tǒng)的請求,以便訪問第一數(shù)據(jù)庫上存儲(chǔ)的眾多元件數(shù)據(jù)文件;所述第二用戶系統(tǒng)搜索第一數(shù)據(jù)庫中存儲(chǔ)的眾多元件數(shù)據(jù)文件;通過所述分布式電子網(wǎng)絡(luò),從所述第一用戶系統(tǒng)中接收所述可用電子元件的某個(gè)元件的元件選擇;所述第二用戶系統(tǒng)選擇第一數(shù)據(jù)庫中存儲(chǔ)的眾多元件數(shù)據(jù)文件的至少一個(gè)元件數(shù)據(jù)文件;檢索與所選電子元件有關(guān)的其他信息;經(jīng)由分布式電子網(wǎng)絡(luò)從第一用戶系統(tǒng)向第二用戶系統(tǒng)傳輸至少一個(gè)元件數(shù)據(jù)文件;以及通過使用傳輸?shù)脑?shù)據(jù)文件,生成總電路設(shè)計(jì)和附隨的總電路支持文件。
39.權(quán)利要求38的方法,其中生成總電路設(shè)計(jì)的步驟還包括,將第一個(gè)傳輸數(shù)據(jù)文件代表的第一個(gè)元件集成到電路設(shè)計(jì)內(nèi)。
40.權(quán)利要求38的方法,其中生成總電路設(shè)計(jì)的步驟還包括,互連第一個(gè)元件與電路設(shè)計(jì)上的現(xiàn)有元件。
41.權(quán)利要求38的方法,其中生成總電路設(shè)計(jì)的步驟還包括,通過使用至少一個(gè)元件數(shù)據(jù)文件,生成電路設(shè)計(jì)的連線表源代碼。
42.權(quán)利要求38的方法,其中生成總電路設(shè)計(jì)的步驟還包括,通過使用傳送的元件數(shù)據(jù)文件,驗(yàn)證第一個(gè)元件的功能。
43.權(quán)利要求38的方法,其中生成總電路設(shè)計(jì)的步驟還包括,根據(jù)傳送的數(shù)據(jù)文件,生成電路設(shè)計(jì)的綜合連接元件的驗(yàn)證源代碼。
44.一種使用遠(yuǎn)程IP元件資源的電路設(shè)計(jì)方法,包括以下步驟導(dǎo)入通過分布式電子網(wǎng)絡(luò)鏈接的遠(yuǎn)程數(shù)據(jù)庫中先前設(shè)計(jì)的IP元件的源代碼文件;將導(dǎo)入的IP元件組裝到單一電路設(shè)計(jì)中;以及生成代表單一電路設(shè)計(jì)的源代碼和支持文件。
全文摘要
多面設(shè)計(jì)平臺(tái)(104)作為設(shè)計(jì)復(fù)雜內(nèi)核基礎(chǔ)片上系統(tǒng)的前端硬件IC設(shè)計(jì)人員的工具。設(shè)計(jì)平臺(tái)(104)使用諸如因特網(wǎng)(230)之類的網(wǎng)絡(luò)搜索訪問先前設(shè)計(jì)的虛擬內(nèi)核塊。設(shè)計(jì)平臺(tái)(104)提供用于選擇(306)、傳送(308)所選虛擬內(nèi)核塊之所有有關(guān)信息的裝置,并允許設(shè)計(jì)人員立即將虛擬內(nèi)核塊合并到新的SoC設(shè)計(jì)中。設(shè)計(jì)平臺(tái)(104)生成與眾多已知驗(yàn)證工具一起使用的合適的源代碼文件(320),以驗(yàn)證虛擬內(nèi)核塊的綜合和連通性以及SoC設(shè)計(jì)的基本功能。
文檔編號(hào)G06F17/50GK1735891SQ02811472
公開日2006年2月15日 申請日期2002年6月6日 優(yōu)先權(quán)日2001年6月8日
發(fā)明者克勞迪奧·茲祖 申請人:韻律設(shè)計(jì)系統(tǒng)公司