TWI451269B - 晶片上系統(soc)及設計結構 - Google Patents
晶片上系統(soc)及設計結構 Download PDFInfo
- Publication number
- TWI451269B TWI451269B TW098116600A TW98116600A TWI451269B TW I451269 B TWI451269 B TW I451269B TW 098116600 A TW098116600 A TW 098116600A TW 98116600 A TW98116600 A TW 98116600A TW I451269 B TWI451269 B TW I451269B
- Authority
- TW
- Taiwan
- Prior art keywords
- information
- core
- integrated
- soc
- unit
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
Description
本發明之具體實施例係一般性地關於一種晶片上系統(SOC)結構,且更特定言之,係關於一種SOC結構,其允許多智慧財產權(IP)與其他核心之自動整合,一種用於該SOC結構之設計結構及形成該SOC結構之相關方法。
晶片上系統(SOC)係通常併入經由一共用系統匯流排互連之多功能核心或巨集的積體電路。該等功能核心可包括多種第三方智慧財產權(IP)核心、邏輯核心、記憶體核心、處理器核心、粉塵邏輯核心(dust logic core)及/或一輸入/輸出系統核心。由於核心之數量及種類不斷增加,該等SOC逐漸增大且密集。由於在網路連線表(netlist)創建及實體設計期間整合該等眾多功能核心之複雜性,在尺寸及密度上之增加不可避免地導致週轉時間(turn around times,TATs)變長。因此,此項技術中存在對SOC結構及形成此一SOC之方法的需求,其允許在SOC中自動整合功能核心,以便簡化網路連線表創建及實體設計,且藉此最小化週轉時間(TATs)。
考慮到上述情況,本文所揭示之內容係晶片上系統(SOC)結構之具體實施例,其允許自動整合多智慧財產權(IP)核心以及其他功能核心。SOC結構具體實施例包括複數個連接至晶片上之一共用系統匯流排之單元。每一單元併入一功能核心及一連接至該功能核心之自動整合單元(AIU)。每一單元中之每一AIU經由該共用匯流排將用於其功能核心之整合資訊(例如,核心類型資訊、核心組態資訊、核心使用資訊等等)傳遞至其他單元中之該等AIU。在該等AIU之間之整合資訊交換藉由該等整合單元本身或藉由亦連接至該共用匯流排之控制器(即判優器(arbiter))控制。基於已接收之整合資訊,每一AIU可自動做出使用於整合之任何所需組態調整。此外,基於此資訊交換,該等功能核心在SOC操作期間,若需要可相互作用。所揭示之內容亦係一種形成此一SOC結構之相關方法及一用於此一SOC結構之設計結構。
更特定言之,本發明之該晶片上系統(SOC)結構之具體實施例均包括一共用匯流排及複數個經由此共用匯流排彼此連接且通信之單元。每一單元可包括一功能核心。該等功能核心可(例如)包括一智慧財產權(IP)核心、一邏輯核心、一記憶體核心、一處理器核心、一輸入/輸出(I/O)核心、一粉塵邏輯核心等等。另外,在每一單元內
該功能核心連接至一內嵌式自動整合單元(AIU)。每一AIU適於將用於其功能核心之整合資訊經由該共用匯流排傳遞至所有其他單元,且更適於經由該共用匯流排接收來自所有其他單元之相對應整合資訊。因此,AIU允許將該等功能核心自動整合於該SOC結構中。
具體言之,該等AIU實質上係一類,其中每一AIU包括一通信方塊、一處理器及兩記憶體實體。在任何給定單元中,該AIU之通信方塊提供在該單元與該共用匯流排之間的連接。在所有單元中之所有AIU中之所有通信方塊本質上相同。每一通信方塊包括相同特定數量通信方塊接腳(pin),且每一通信方塊接腳具有一特定識別符號,其用以將自身與該共用匯流排上之特定網路相互關聯。每一通信方塊接腳在該共用匯流排上連接至與其相關聯之特定網路。因此,具有相同識別符號之任何通信方塊接腳連接至該共用匯流排上之相同網路,即使其位於不同整合單元中之不同通信方塊。結果,在每一單元內,功能核心接腳連接至適當通信方塊接腳,以確保該功能核心適當連接至所需網路。
此外,在任何給定單元中,該等AIU中之一第一記憶體裝置預載入(pre-loaded)用於其功能核心之整合資訊。此整合資訊可包括(例如)核心類型資訊、核心組態資訊(例如通信協定資訊)、核心功能資訊、核心使用資訊等等。該AIU中之第二記憶體裝置儲存已隨後自其
他單元接收的相對應整合資訊。AIU處理器藉由該通信方塊與該共用匯流排通信,且亦能存取至兩記憶體實體。此處理器適於自該第一記憶體裝置選擇該整合資訊,其應經由該共用匯流排傳遞至其他單元。另外,此處理器適於自其他單元接收該相對應整合資訊,且將相對應整合資訊儲存於該第二記憶體裝置上。在該等單元之間之整合資訊交換可藉由等AIU自行控制,或可藉由亦連接至該共用匯流排之整合單元控制器(例如一判優器)中心地控制。
在每一AIU中,該處理器更適於分析已自其他單元接收之該相對應整合資訊。基於此分析,該處理器可調整該單元之組態。接著,在該SOC功能操作期間,此相對應整合資訊可藉由AIU處理器存取以便判定何種其他資源(例如其他功能核心)可獲用於該SOC上及可如何存取及/或使用彼等其他資源。因此,基於資訊交換,視需要而定,不同單元中之該等功能核心可相互作用(例如可自動整合)。
本文所揭示之內容亦係上述所形成該SOC結構之方法的具體實施例。該方法之具體實施例包括:形成多種單元,以使得每一單元包括:一功能核心(例如一智慧財產權(IP)核心、一邏輯核心、一記憶體核心、一處理器核心、一輸入/輸出(I/O)核心、一粉塵邏輯核心等等)及一連接至該等功能核心之自動整合單元(AIU)。接著,該方
法包括:選擇複數個用於一SOC結構之單元。對於每一單元而言,該AIU接著連接至該SOC上之一共用匯流排。
在單元形成期間,如上文所詳細描述,一類AIU併入每一單元中。一旦形成每一單元,且每一單元中之每一AIU連接至該共用匯流排,則可發生在該等AIU之間的資訊交換。具體言之,該方法之具體實施例可包括:藉由該等AIU,選擇有關其個別功能核心之整合資訊,其應傳遞至所有其他單元。此整合資訊可包括:例如核心類型資訊、核心組態資訊(例如,通信協定資訊)、核心功能資訊、核心使用資訊等等。接著,一AIU將該選定整合資訊經由該共用匯流排,傳遞至連接至該共用匯流排之所有其他單元。廣播其整合資訊之後,該一AIU可自所有其他單元接收相對應整合資訊,且將該資訊儲存於其第二記憶體裝置上。當任一AIU傳輸資訊時,所有其他AIU保持在收聽模式,接收該廣播資訊且將其儲存於其個別第二記憶體裝置上。一旦一AIU傳遞其資訊,則該處理過程藉由其他AIU重複,且持續至共享所有整合資訊。
此整合資訊交換可由AIU自行控制或可由亦連接至該共用匯流排之整合單元控制器所控制。因此,該方法之一具體實施例包括以下步驟:藉由每一AIU個別判定,何時將整合資訊傳遞至所有其他單元。該方法之其他具體實施例包括以下步驟:藉由連接至該共用匯流排之整
合單元控制器,管理及監視在該等單元之間的交換資訊。
無論如何控制資訊交換,自其他單元接收相對應整合資訊之後,一所接收的AIU將來自其他單元之該相對應整合資訊,儲存於其自有的第二記憶體裝置中,且視需要而定,將進行存取。舉例而言,該方法之具體實施例可包括:藉由AIU,且更特定言之,藉由AIU內之處理器分析該已接收之相對應整合資訊,且基於該資訊調整該單元之組態,以便確保在該SOC之功能操作期間該單元可與所有其他單元整合。另外,在該SOC之功能操作期間,一給定單元之一AIU可存取該相對應整合資訊。基於此資訊,該等AIU可判定何種其他資源(例如其他功能核心)可獲用於該SOC上及可如何存取及/或使用彼等其他資源。因此,在該SOC之功能操作期間,視需要而定,整合資訊交換允許不同單元中之該等功能核心相互作用。
本文所揭示之內容亦係用於該上述晶片上系統(SOC)結構之設計結構的具體實施例。此設計結構可體現於機器可讀取媒體,可以一種資料形式存在於儲存媒體上,該資料形式係用於積體電路佈局資料交換且可包括一網路連線表。
當結合以下描述及隨附圖式加以考量時,將更瞭解及理解本發明之具體實施例之該等及其他態樣。然而,應理解以下描述在指示本發明之具體實施例及其眾多特定
細節時僅係說明性而非限制性的。在不悖離本發明精神情況下,可於具體實施例之範疇內進行多種改變及修改,且該等具體實施例包含所有此類改變及修改。
參閱非限制性具體實施例更詳盡地解釋本發明之具體實施例及各種特徵及其優點細節,該等非限制性具體實施例於隨附圖式中加以說明,且在以下描述中詳細解釋。應注意該圖式中所說明之該等特徵並非全然按比例繪出。省略已知組件及處理技術之描述,以避免模糊本發明之具體實施例。此處所使用之該等實例僅意欲於促進理解本發明之具體實施例可實施之方式,且更使熟習此項技術者能夠實施本發明之具體實施例。相應地,該等實例不應解釋為限制本發明之具體實施例的範疇。
如所提及的,上述晶片上系統(SOC)係通常併入經由一共用系統匯流排互連之多功能核心或巨集(macro)的積體電路。該等功能核心可包括多種第三方智慧財產權(IP)核心、邏輯核心、記憶體核心、處理器核心、粉塵邏輯核心、及/或一輸入/輸出系統核心。由於核心之數量及種類不斷增加,該等SOC逐漸增大且密集。由於在網路連線表創建及實體設計期間整合該等眾多功能核心之複雜性,在尺寸及密度上之增加不可避免地導致週轉時間(TAT)變長。因此,此項技術中存在對SOC結構及形成
此一SOC之方法的需求,其允許在SOC中自動整合功能核心,以便簡化網路連線表創建及實體設計,且藉此最小化週轉時間(TAT)。
考慮到以上內容,本文所揭示之內容係晶片上系統(SOC)結構之具體實施例,其允許自動整合多智慧財產權(IP)核心以及其他功能核心。該SOC結構具體實施例包括複數個連接至晶片上之一共用系統匯流排之單元。每一單元併入一功能核心及一連接至該功能核心之自動整合單元(AIU)。每一單元中之每一AIU將用於其功能核心之整合資訊(例如核心類型資訊、核心組態資訊、核心使用資訊等等)經由該共用匯流排傳遞至其他單元中之該等AIU。此整合資訊在該等AIU之間的交換由該整合單元自身控制,或由亦連接至該共用匯流排之控制器(例如一判優器)控制。基於已接收之整合資訊,每一AIU可自動地做出用於整合之任何所需組態之調整。此外,基於此資訊交換,視需要而定,在SOC操作期間,該等功能核心可相互作用。所揭示內容亦係形成此一SOC結構的相關方法及一用於此一SOC結構之設計結構。
參閱第1圖,本發明之該晶片上系統(SOC)結構100之具體實施例均包括:一共用匯流排150,及經由此共用匯流排150彼此連接及且通信之複數個單元101。該共用匯流排150可(例如)為用於該SOC 100之功能操作的相同匯流排(例如該系統匯流排)。
每一單元101可包括:一功能核心130(例如一功能巨集、功能方塊等等)。該功能核心130可(例如)包括:一智慧財產權(IP)核心、一邏輯核心、一記憶體核心、一處理器核心、一輸入/輸出(I/O)核心、一粉塵邏輯核心等等。因此,如同先前技術SOC結構,該SOC結構100上之單元101的組合可併入多種智慧財產權(IP)核心、邏輯核心、記憶體核心、處理器核心、粉塵邏輯核心,及/或一輸入/輸出系統核心。然而,不同於先前技術SOC結構,在每一單元101內該等功能核心130連接至一內嵌式自動整合單元(AIU)120。
每一AIU 120適於經由該共用匯流排150,將用於其功能核心130之整合資訊傳遞至所有其他單元101,且更適於經由該共用匯流排150,接收來自所有其他單元101之相對應整合資訊。因此,該等AIU 120允許將功能核心130自動整合於SOC結構100中。此自動整合可發生在該SOC 100初始化時(例如該SOC 100之初始上電(power up)),每次SOC 100上電及/或每次針對單元101做出改變,或將新單元101添加至SOC 100以確保所有單元101擁有整合所需之所有資訊。
更具體言之,結合第1圖參閱第2圖之例示性單元結構101a,併入該等單元101之該等AIU 120與包括一通信方塊126、一處理器125及兩記憶體實體121-122之每一AIU 120本質上為一類。在一給定單元(例如單元
101a)中,該等AIU 120之通信方塊126提供在該單元與共用匯流排150之間的連接。在該SOC 100中之所有單元101中之所有AIU 120中之所有通信方塊126本質上相同,利用標準通信協定(例如一多存取有線/無線匯流排協定)。每一通信方塊126包括一相同特定數量(例如500、1000、1500等等)通信方塊接腳127(例如通信方塊位元),且每一通信方塊接腳127具有一特定識別符號(例如接腳1、接腳2、接腳3等等),其與該共用匯流排150上之特定網路157(例如一特定埠)相關聯。每一通信方塊接腳127在該共用匯流排150上連接至與其相關聯之該特定網路157。因此,具有相同識別符號之任何通信方塊接腳127連接至該共用匯流排150上之相同網路,即使其位於不同AIU中之不同通信方塊。意即無論在一給定單元(例如單元101a)中之功能核心130為何種結構,其AIU 120以與任何其他單元101中之AIU 120相同的方式連接至該共用匯流排150。然而,在每一單元101內,功能核心接腳137(例如功能核心位元)必須連接至該適當通信方塊接腳127,以確保功能核心130連接至所需網路157。
該等類型通信方塊126大量地減少網路連線表創建時間,在SOC 100製造期間,藉由允許設計者易於將SOC 100內之各種單元101連接至該共用匯流排150。具體言之,如上所述,在每一單元101內,實際功能核心接腳
137及特定匯流排埠連接157藉由該AIU 120彼此隔離,限制用於該晶片整合者(例如用於該設計者、該網路連線表創建者等等)之複雜性。意即在網路連線表創建期間,該設計者無需理解在每一單元101之每一功能核心130所需之複雜功能、組態需要或包裝邏輯,以便將所有單元101整合於SOC 100中。該類型通信方塊126允許該等功能核心130以較常用方式連接至該共用匯流排150。在創建網路連線表過程中,其描述該等單元101與該SOC 100上之共用匯流排150之連接性,該(等)設計者僅需要瞭解該功能核心130之接腳137連接至通信方塊接腳127 X0-Xn,所以至少通信方塊接腳127 X0-Xn必須連接至該共用匯流排上之該相關埠157。應注意到該(等)設計者亦可要求某些功能核心之限定輸入。舉例而言,設計可能需要瞭解在一給定單元(例如單元101a)中之功能核心130可要求存取至一特定I/O,以便確保正確軟體與該SOC 100相互作用(例如USB1必須連接至I/O接腳1,且USB2必須連接至I/O接腳2等等,以使硬體及非硬體層瞭解其與何物件相通信)。
在任何給定單元中(例如單元101a),該等AIU 120中之一第一記憶體裝置121(例如非揮發性記憶體裝置)儲存所有所需資訊以將該單元101a整合於該SOC 100中。意即該第一記憶體裝置121預載入整合資訊。此整合資訊特定地係關於該給定單元101a內之該功能核
心,且可包括(例如)核心類型資訊(例如,通用串列匯流排、乙太網路、處理器、串化器/解串化器(serdes)、內裝自檢器(bist)、隨機存取記憶體、I/O等等)、核心組態資訊(例如通信協定資訊,諸如位元計數及所選擇該共用匯流排150上之位址空間)、核心功能資訊及核心使用資訊(例如是否需要外部記憶體,需要多少外部記憶體,將用於溝通至此外部記憶體之位址等等)。該等AIU 120中之該第二記憶體裝置122(例如另一非揮發性記憶體裝置)儲存隨後自其他單元101所接收之相對應整合資訊。
在任何給定單元中(例如單元101a)中之該AIU處理器125經由該通信方塊126與該共用匯流排150通信。該處理器125更能存取至兩記憶體實體121-122。此處理器125適於自該第一記憶體裝置121中選擇該整合資訊,其應經由該共用匯流排150傳遞至其他單元101。意即該處理器125邏輯控制何種相關整合資訊(例如何種類型資訊、組態資訊、功能資訊、使用資訊等等)需要經由該通信方塊126傳送至該共用匯流排150及在該SOC 100中之其他單元101。另外,此處理器125適於自其他單元101接收該相對應整合資訊及將該相對應整合資訊儲存於該第二記憶體裝置122上。
在單元101之間,且更特定言之,在AIU 120之間之整合資訊交換可藉由AIU 120自行控制,或可藉由亦連
接至該共用匯流排150之一整合單元控制器110(例如一判優器)中心地控制。具體言之,在該SOC結構100之一具體實施例中,該等AIU 120完全自主。意即每一AIU 120,且更特定言之,每一單元101中之AIU 120內之該處理器125適於判定何時將該整合資訊自其單元傳遞至所有其他單元。舉例而言,該處理器125可包括一感測器128(例如,某些類型載波感測多重存取常用程式),其適於判定該共用匯流排150是否空閒(意即判定該共用匯流排150是否可獲用以接收通信,因為並無其他AIU 120目前正傳輸(例如廣播)資訊)。若該共用匯流排150為空閒(意即可獲用於接收通信),該處理器125可開始傳輸(例如廣播)用於其單元101之該整合資訊。
在該SOC結構101之另一具體實施例中,一整合單元控制器110(例如一判優器)連接至該共用匯流排150。此整合單元控制器110與每一單元101之AIU 120通信,且適於管理及監視在該等單元101之間之資訊交換。意即並非使每一單元101中之每一AIU 120隨機判定何時經由該共用匯流排150傳遞,而是由該控制器110做出此判定。該控制器110可更進一步註冊及記錄此通信。該控制器110可更適於廣播在SOC 100中有多少單元101已傳輸整合資訊,以警示最近喚醒單元或新單元,其可能已錯過某些異動(transaction),及/或傳遞訊號至所有
單元101,以通知應開始重新初始化常用程式。在任一具體實施例中,當一單元(例如單元101a)傳輸整合資訊時,所有其他單元101保持於收聽-儲存狀態。
在每一AIU120中,該處理器125更適於分析該相對應整合資訊,其自其他單元101接收。基於此分析,該處理器125可調整該單元101之組態,更特定言之,可視需要而定調整該等功能核心130之組態,以便允許在SOC功能操作期間該晶片上系統(SOC)結構100上之該等單元101的自動整合。
例如,如上所述,當一單元101傳輸(例如廣播)整合資訊時,所有其他單元保持於收聽-儲存狀態。取決於由其他單元接收何種整合資訊,它們將相對應地調整其組態。舉例而言,若在單一單元(例如單元101a)中之一AIU 120發送整合資訊,其指示對特定位址空間之宣告要求,則所有在其他單元101中之所有其他AIU 120記錄此資訊。接著,當另一單元獲得該共用匯流排150之控制且傳輸其整合資訊時,其必須選擇一不同於當時已被單元101a佔用之位址空間。因此,每一AIU120在輪流至其經由該匯流排開始傳輸(例如廣播)整合資訊期間,作用為一主控器。
一旦整合資訊交換完成,可開始功能SOC操作,在其操作期間在該等單元101之間的相互作用藉由該等AIU 120加以協調。具體言之,在該SOC 100之功能操作期
間,在每一單元101中之該處理器125可存取在該第二記憶體122中之該相對應整合資訊,以便判定何種其他資源(例如其他功能核心130)可獲用於該SOC 100上,及彼等其他資源可如何被存取及/或使用。因為此整合資訊交換,在網路連線表建立期間或實體設計階段並不需要存在於該SOC 100記憶體之其他先前知識。該等單元101如何作用,及如何與該SOC 100內之其他單元101相互作用(例如發送/接收資料)係基於整合資訊交換加以判定。
結合第1圖至第2圖來參閱第3圖,於此所揭示之內容亦係形成上述SOC結構100之一方法之具體實施例。該方法之具體實施例包括形成多種單元101,以使每一單元101包括:一功能核心130(例如一智慧財產權(IP)核心、一邏輯核心、一記憶體核心、一處理器核心、一輸入/輸出(I/O)核心、一粉塵邏輯核心等等)及一連接至該等功能核心130之自動整合單元(AIU)120(302,見第2圖之例示性單元101a)。接著,該方法包括:選擇複數個用於SOC結構101(304)之單元101。對於每一單元101而言,該AIU 120接著連接至該SOC 100上之一共用匯流排150(306,見第1圖)。該共用匯流排150可(例如)為用於該SOC功能操作之相同匯流排(例如該系統匯流排)。
在處理過程302處單元形成期間,每一單元中之AIU
120應為一類AIU,如上文所詳細描述的。意即如在第2圖中之該例示性單元101a所說明的,應形成每一單元中之每一AIU 120,以使其包括一通信方塊126、一處理器125、一用於儲存預載入之第一記憶體裝置121,特定單元、整合資訊及一第二記憶體裝置122,其經組態以隨後儲存來自其他單元之相對應整合資訊。在所有單元101中之所有AIU 120之所有通信方塊126應本質上相同。每一通信方塊126應具有相同特定數量之通信方塊接腳127(例如通信方塊位元),且每一通信方塊接腳127應具有使其與該共用系統匯流排150上之特定網路157(例如特定埠)相關聯之特定識別符號。該等功能核心接腳137(例如功能核心位元)接著連接至適當通信方塊接腳127(例如連接至該通信方塊接腳,該等接腳與在缺少AIU情況下其應連接之該等網路相關聯)。當AIU 120連接至該共用匯流排150時,每一通信方塊接腳127連接至與其相關聯之該特定網路157,因此確保該功能核心130連接至該匯流排150上之所需網路157。
一旦每一單元101,且更特定言之,每一單元101中之每一AIU 120在處理過程306連接至該共用匯流排150,則可發生在該等單元101之間,且更特定言之,在該等AIU 120之間之通信(例如經由該共用匯流排150可發生在該等AIU 120之間整合資訊交換)(308)。具體言之,該方法之具體實施例可包括:藉由在所有單元101
中之該等AIU 120,選擇有關其個別功能核心130之整合資訊,其應被傳遞(例如傳輸、廣播等等)至所有其他單元101(310)。此整合資訊可包括(例如):核心類型資訊、核心組態資訊(例如通信協定資訊)、核心功能資訊、核心使用資訊等等。一AIU 120(例如單元101a中之AIU 120)接著將經由該共用匯流排150將其選定整合資訊傳遞(例如傳輸、廣播等等)至連接至該共用匯流排150之所有其他單元101(312)。在傳輸其整合資訊之前或之後,在單元101a中之該一AIU 120亦可接收且儲存來自所有其他單元之AIU 120的相對應整合資訊。一旦在單元101a中之一AIU 120傳輸其資訊,則該處理過程可藉由另一AIU重複,直至已共享所有整合資訊(314)。因此,在任何給定時間在此處理過程308期間,任何一AIU可傳遞(例如傳輸、廣播等等)整合資訊,且所有其他AIU可收聽(例如接收且儲存)整合資訊。
在處理過程308之整合資訊交換可藉由AIU 120自行控制,或可藉由一亦連接至該共用匯流排150之整合單元控制器110(例如一判優器)控制,如在第1圖中所說明的。具體言之,參閱第4圖,該方法之一具體實施例包括:藉由每一AIU個別判定何時將整合資訊傳遞至所有其他單元(402-404)。此判定過程可包括:藉由該等AIU 120之先行判定,該共用匯流排是否為空閒(例如可獲用於接收通信)。意即該等AIU 120均收聽(例如使
用某些類型載波感測多重存取常用程式)於該共用匯流排(402),且判定任何其他AIU 120是否經由該共用匯流排150傳輸資訊(意即判定該共用匯流排150上是否存在資料)(404)。若該共用匯流排150不為空閒(例如若該共用匯流排150不可獲用於接收通信,因為資料正由另一AIU 120廣播),則正在收聽的AIU 120則將任何已接收之整合資訊儲存於其個別第二記憶體裝置122上(406)。若該共用匯流排150為空閒(例如若該共用匯流排可獲用以接收通信,因為該匯流排150上不存在資料),則在一單元(例如單元101a)中之一AIU 120可經由該共用匯流排150開始將用於其功能核心130之該整合資訊傳輸(例如傳遞、廣播等等)至所有其他單元101(408)。該處理過程402-408持續至所有AIU 120已有機會共享其整合資訊。在該方法之另一具體實施例中,處理過程308處在該等單元101之間之整合資訊交換藉由一連接至該共用匯流排150之整合單元控制器110中心地管理及監視。意即並非使得在每一單元101中之每一AIU 120自主及隨機地判定何時經由該共用匯流排150傳遞,而是由該控制器110做出此判定。具體言之,藉由中央控制器110註冊並記錄在該等單元之間之資訊交換。另外,可藉由此中央控制器110通知在SOC 100中之該等單元101已傳輸整合資訊之單元數量,最近喚醒單元或新單元可藉由此中央控制器110被警示,其可
能錯過某些異動,及/或所有單元101可藉由此中央控制器110被通知,其應開始重新初始化常用程式。在任一具體實施例中,當任何一單元傳輸整合資訊時,所有其他單元保持於收聽-儲存狀態。
在每一具體實施例中,在自其他單元接收相對應整合資訊之後,該接收的AIU將來自其他單元之相對應整合資訊儲存於其自有第二記憶體裝置中(312),且在需要時將對其進行存取。舉例而言,該方法之具體實施例可包括:藉由該等AIU 120,且更特定言之,藉由該等AIU 120之處理器125分析任何已接收之相對應整合資訊,其自其他單元101所接收,且基於該接收資訊調整其個別單元101之組態,以便確保所有單元101可在該SOC 100之功能操作期間被整合(316)。另外,在處理過程308-316一旦完成整合資訊交換且已做出任何組態調整,則可開始該SOC 100之功能操作(318)。在該SOC 100之功能操作期間,在任何給定單元中(例如單元101a),儲存於該第二記憶體122之該相對應整合資訊可藉由該AIU處理器125存取,以便判定何種其他資源(例如其他功能核心)可獲用於該SOC 101,及彼等其他資源可如何被存取及/或使用。因此,基於該已接收之整合資訊,視需要而定,在不同單元101中之功能核心130可相互作用(例如可自動整合)。
本文所揭示之內容亦係用於該上述晶片上系統(SOC)
結構之設計結構之具體實施例。此設計結構可體現於機器可讀取媒體,可以一資料形式存在於儲存媒體上,該資料形式用於積體電路佈局資料交換,且可包括一網路連線表。具體言之,第5圖顯示(用於例如,在半導體設計、製造及/或測試中)之一例示性設計流程500之一方塊圖。設計流程500根據所設計之IC類別可有所變化。舉例而言,用於建構一特定應用IC(ASIC)之一設計流程500可不同於一用於設計標準元件之設計流程500。設計結構520較佳地為一至設計處理過程510之輸入,且可來自一IP供應商、一核心開發人員,或其他設計公司,或可藉由設計流程營運商產生或來自其他來源。設計結構520包括本發明之一具體實施例,如在第1圖至第2圖中以圖表或HDL(一種硬體描述語言(例如Verilog、VHDL、C等等))形式所示。設計結構520可包含於一或更多機器可讀取媒體上。舉例而言,設計結構520可為本發明之一具體實施例之一文字檔案或一圖形表示,如第1圖至第2圖所示。設計處理過程510較佳地將如第1圖至第2圖所示之本發明之一具體實施例合成(或轉換)為一網路連線表580,其中網路連線表580係(例如)以下各物之清單:線、電晶體、邏輯閘、控制電路、I/O、模型等等,其描述至其他元件之連接及一積體電路設計中和記錄於至少一機器可讀取媒體之電路。舉例而言,該媒體可為一CD、一緊密快閃記憶
體、其他快閃記憶體、待經由該網際網路以被傳送之一封包資料,或其他網路適用構件。該合成可為一疊代(iterative)處理過程,其中根據用於該電路之設計規格及參數,網路連線表580被重新合成一或多次。
設計處理過程510可包含使用多種輸入;例如,輸入來自:資料庫元件530,其可容納一組常用元件、電路及裝置,其包含模型、配置及符號表示,用於一給定製造技術(例如,不同技術節點,32 nm、45 nm、90 nm等等),設計規格540、特徵化資料550、驗證資料560、設計規則570,及測試資料檔案585(其可包含測試型樣及其他測試資訊)。設計處理過程510可更包含(例如)標準電路設計處理過程,諸如時序分析、驗證、設計規則核查、配置與繞線(place and route)操作等等。在不偏離本發明之範疇及精神的情況下,習知積體電路設計之一般技術之人士可瞭解使用於設計處理過程510之可能電子設計自動化工具及應用的範圍。本發明之設計結構不受限於任何特定設計流程。
設計處理過程510較佳地將如第1圖至第2圖所示之本發明之一具體實施例,連同將任何額外積體電路設計或資料(若可適用)一起轉換成一第二設計結構590。設計結構590以一種用於積體電路佈局資料交換的資料形式及/或符號資料形式(例如儲存於GDSII(GDS2)、GL1、OASIS、映射檔案(map file)、或用於儲存此設計
結構之任何其他適當形式之資訊)存在於一儲存媒體上。設計結構590可包括資訊,諸如(例如)符號資料、映射檔案、測試資料檔案、設計內容檔案、製造資料、佈局參數、線、金屬級別、通孔、形狀、用於經由該生產線用以繞線之資料,及藉由半導體製造商生產如第1圖至第2圖所示之本發明之一具體實施例所需之任何其他資料。設計結構590可接著進行至階段595,其中(例如)設計結構590:進行至流片試產(tape-out),經發行以製造,發行至一光罩室(mask house),送至另一設計室,送回給該客戶等等。
因此,上文所揭示之內容係晶片上系統(SOC)結構之具體實施例,其允許自動整合多智慧財產權(IP)核心以及其他功能核心。該SOC結構之具體實施例包括:連接至晶片上之一共用系統匯流排的複數個單元。每一單元併入一功能核心及一連接至該功能核心之自動整合單元(AIU)。在每一單元中之每一AIU經由該共用匯流排將用於其功能核心之整合資訊(例如核心類型資訊、核心組態資訊、核心使用資訊等等)傳遞至其他單元中之該等AIU。在該等AIU之間之此整合資訊之通信藉由該整合單元自身,或藉由亦連接至該共用匯流排之一控制器(例如一判優器)控制。基於已接收之整合資訊,每一AIU可自動做出用於整合之任何所需組態調整。此外,基於此資訊交換,該等功能核心可在SOC操作期間若需要時
相互作用。藉由將AIU放置於每一單元內且利用一共用型匯流排結構,網路連線表創建之時間可藉由允許設計者幾乎盲目地連接該SOC中之各種單元,且接著依賴於該等單元本身以判定系統內如何運作而大幅縮減。所揭示之內容亦係形成此一SOC結構之一相關方法及一用於此一SOC結構之設計結構。
該特定具體實施例之以上描述將如此完全地揭示本發明之一般本質,在不偏離該類型概念情況下,其他特性可藉由應用目前知識易於修改及/或調試,以適用於例如為特定具體實施例之各種應用,且因此,此調試及修改應且意欲在所揭示具體實施例之等價者的含義及範圍之內被理解。應了解本文所用措詞或術語係基於描述性而非限制性目的。因此,儘管已根據多個具體實施例描述本發明,熟習此項技術者應可理解到該等具體實施例可藉由在隨附申請專利範圍及精神之內予以修改而加以實施。
100‧‧‧晶片上系統(SOC)結構
101‧‧‧單元
101a‧‧‧單元
120‧‧‧自動整合單元
121‧‧‧第一記憶體裝置
122‧‧‧第二記憶體裝置
125‧‧‧處理器
126‧‧‧通信方塊
127‧‧‧通信方塊接腳
128‧‧‧感測器
130‧‧‧功能核心
137‧‧‧功能核心接腳
150‧‧‧共用匯流排
157‧‧‧特定網路
500‧‧‧設計流程
510‧‧‧設計處理過程
520‧‧‧設計結構
530‧‧‧資料庫元件
540‧‧‧設計規格
550‧‧‧特徵化資料
560‧‧‧驗證資料
570‧‧‧設計規則
580‧‧‧網路連線表
585‧‧‧測試資料
590‧‧‧最終設計結構
595‧‧‧階段
參閱該等圖式自以下詳細描述中可更佳地理解本發明之具體實施例,其中:第1圖係一示意性方塊圖,其說明本發明之一例示性晶片上系統(SOC)結構;第2圖係一示意性方塊圖,其說明可併入第1圖之該
SOC結構之一例示性單元;第3圖係一流程圖,其說明本發明之該方法之一具體實施例;第4圖係一流程圖,其說明第3圖之方法步驟之一者;以及第5圖係一流程圖,其說明用於半導體設計、製造及/或測試之一設計處理過程。
100‧‧‧晶片上系統(SOC)結構
101‧‧‧單元
101a‧‧‧單元
120‧‧‧自動整合單元
130‧‧‧功能核心
Claims (21)
- 一種晶片上系統(SOC)結構,包括:一共用匯流排;以及經由該共用匯流排通信之複數個單元(cell),其中每一單元包括:一連接至該共用匯流排之整合單元及一連接至該整合單元之功能核心,以及其中該整合單元適於:經由該共用匯流排將該功能核心之整合資訊傳遞至所有其他單元,且更適於:經由該共用匯流排自該等所有其他單元接收相對應整合資訊。
- 如申請專利範圍第1項所述之晶片上系統(SOC)結構,其中該整合單元更包括:一與該共用匯流排通信之處理器,且其中該處理器適於:分析該相對應整合資訊,且基於該相對應整合調整該單元之一組態。
- 如申請專利範圍第2項所述之晶片上系統(SOC)結構,其中該處理器更適於:選擇該整合資訊,及判定何時將該整合資訊傳遞至該等所有其他單元。
- 如申請專利範圍第1項所述之晶片上系統(SOC)結構,其中該整合單元更包括:一用於儲存該整合資訊之第一記憶體裝置;以及一用於儲存該相對應整合資訊之第二記憶體裝置。
- 如申請專利範圍第1項所述之晶片上系統(SOC)結構,其中該整合資訊包括以下至少一者:核心類型資訊、核心組態資訊、核心功能資訊及核心使用資訊。
- 如申請專利範圍第5項所述之晶片上系統(SOC)結構,其中該核心組態資訊包括:通信協定資訊。
- 如申請專利範圍第1項所述之晶片上系統(SOC)結構,其中該整合單元更包括:一通信方塊,其中在所有該等單元中之所有整合單元之所有通信方塊本質上相同,且包括:一特定數量的通信方塊接腳,且每一通信方塊接腳具有一與該共用匯流排上之一特定網路相關聯的特定識別符號,以及其中具有該特定識別符號之該每一通信方塊接腳連接至該共用匯流排上之該特定網路,以使得不同整合單元中且具有一相同識別符號之通信方塊接腳連接至該共用匯流排上之一相同網路。
- 如申請專利範圍第1項所述之晶片上系統(SOC)結構,其中該功能核心包括以下一者:一智慧財產權(IP)核心、一邏輯核心、一記憶體核心、一處理器核心、一輸入/輸出(I/O)核心及一粉塵邏輯核心。
- 一種晶片上系統(SOC)結構,包括:一共用匯流排;經由該共用匯流排通信之複數個單元,其中每一單元包括:一連接至該共用匯流排之整合單元,及一連接至該整合單元之功能核心,以及其中該整合單元適於:經由該共用匯流排將該功能核心之整合資訊傳遞至所有其他單元,且更適於:經由該共用匯流排自 該等所有其他單元接收相對應整合資訊;以及一連接至該共用匯流排且與該等單元之每一者中之該整合單元通信的整合單元控制器,其中該整合單元控制器適於:管理及監視在該等單元之間之資訊交換。
- 如申請專利範圍第9項所述之晶片上系統(SOC)結構,其中該整合單元更包括:一與該共用匯流排通信之處理器,且其中該處理器適於:分析該相對應整合資訊,且基於該相對應整合資訊調整該單元之一組態。
- 如申請專利範圍第10項所述之晶片上系統(SOC)結構,其中該處理器更適於:選擇該整合資訊。
- 如申請專利範圍第9項所述之晶片上系統(SOC)結構,其中該整合單元更包括:一用於儲存該整合資訊之第一記憶體裝置;以及一用於儲存該相對應整合資訊之第二記憶體裝置。
- 如申請專利範圍第9項所述之晶片上系統(SOC)結構,其中該整合資訊包括以下至少一者:核心類型資訊、核心組態資訊、核心功能資訊及核心使用資訊。
- 如申請專利範圍第13項所述之晶片上系統(SOC)結構,其中該核心組態資訊包括:通信協定資訊。
- 如申請專利範圍第9項所述之晶片上系統(SOC)結構,其中該整合單元更包括:一通信方塊,其中在 所有該等單元中之所有整合單元之所有通信方塊本質上相同,且包括一特定數量的通信方塊接腳,且每一通信方塊接腳具有一與該共用匯流排上之一特定網路相關聯之特定識別符號,以及其中具有該特定識別符號之該每一通信方塊接腳連接至該共用匯流排上之該特定網路,以使得不同整合單元中且具有一相同識別符號之通信方塊接腳連接至該共用匯流排上之一相同網路。
- 一種體現於一機器可讀取媒體之設計結構,該設計結構包括:一晶片上系統(SOC)結構,其包括:一共用匯流排;經由該共用匯流排通信之複數個單元,其中每一單元包括:一連接至該共用匯流排之整合單元及一連接至該整合單元之功能核心,以及其中該整合單元適於:經由該共用匯流排將該功能核心之整合資訊傳遞至所有其他單元,且更適於:經由該共用匯流排自該等所有其他單元接收相對應整合資訊;以及一連接至該共用匯流排且與該等單元之每一者中之該整合單元通信的整合單元控制器,其中該整合單元控制器適於:管理及監視在該等單元之間之資訊交換。
- 如申請專利範圍第16項所述之設計結構,其中該設計結構包括:一網路連線表(netlist)。
- 如申請專利範圍第16項所述之設計結構,其中該設計結構以一資料形式存在於儲存媒體上,該資料形式係用於積體電路佈局資料之該交換。
- 一種體現於一機器可讀取媒體中之設計結構,該設計結構包括:一晶片上系統(SOC)結構,其包括:一共用匯流排;以及經由該共用匯流排通信之複數個單元,其中每一單元包括:一連接至該共用匯流排之整合單元及一連接至該整合單元之功能核心,以及其中該整合單元適於:經由該共用匯流排將該功能核心之整合資訊傳遞至所有其他單元,且更適於:經由該共用匯流排自該等所有其他單元接收相對應整合資訊。
- 如申請專利範圍第19項所述之設計結構,其中該設計結構包括:一網路連線表。
- 如申請專利範圍第19項所述之設計結構,其中該設計結構以一資料形式存在於儲存媒體上,該資料形式係用於交換積體電路佈局資料。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/125,255 US7904872B2 (en) | 2008-05-22 | 2008-05-22 | System-on-chip (SOC), design structure and method |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200951730A TW200951730A (en) | 2009-12-16 |
TWI451269B true TWI451269B (zh) | 2014-09-01 |
Family
ID=41016992
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098116600A TWI451269B (zh) | 2008-05-22 | 2009-05-19 | 晶片上系統(soc)及設計結構 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7904872B2 (zh) |
EP (1) | EP2283438B1 (zh) |
JP (1) | JP4731640B1 (zh) |
KR (1) | KR101531735B1 (zh) |
TW (1) | TWI451269B (zh) |
WO (1) | WO2009141420A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7904873B2 (en) * | 2008-05-22 | 2011-03-08 | International Business Machines Corporation | System-on-chip (SOC), design structure and method |
TWI411930B (zh) * | 2010-07-15 | 2013-10-11 | Faraday Tech Corp | 系統階層模擬/驗證系統及其方法 |
US8397188B1 (en) * | 2010-09-21 | 2013-03-12 | Altera Corporation | Systems and methods for testing a component by using encapsulation |
US8752210B2 (en) | 2012-01-10 | 2014-06-10 | International Business Machines Corporation | Implementing data theft prevention |
US8797059B2 (en) | 2012-03-01 | 2014-08-05 | International Business Machines Corporation | Implementing carbon nanotube based sensors for cryptographic applications |
US8819842B2 (en) * | 2012-11-20 | 2014-08-26 | International Business Machines Corporation | Implementing conductive microcapsule rupture to generate a tamper event for data theft prevention |
US10423552B2 (en) | 2013-12-23 | 2019-09-24 | Intel Corporation | Integrated component interconnect |
KR101839486B1 (ko) * | 2016-04-11 | 2018-03-16 | 현대오트론 주식회사 | 차량 제어기용 반도체, 차량 제어기 및 차량 제어기용 반도체 설계 방법 |
US10067183B2 (en) * | 2016-06-21 | 2018-09-04 | International Business Machines Corporation | Portion isolation architecture for chip isolation test |
CN107543562B (zh) * | 2017-08-29 | 2019-10-15 | 中国科学院遥感与数字地球研究所 | 一种基于红外掩星传感器校正切高值的方法 |
KR102497801B1 (ko) | 2019-12-16 | 2023-02-10 | 한국전자통신연구원 | 시스템-온-칩 자동 설계 장치 및 이의 동작 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200604836A (en) * | 2003-07-25 | 2006-02-01 | Ibm | Self-contained processor subsystem as component for system-on-chip design |
TW200622680A (en) * | 2004-03-26 | 2006-07-01 | Atmel Corp | Dual-processor complex domain floating-point dsp system on chip |
US20070291890A1 (en) * | 2002-04-10 | 2007-12-20 | Systel Development & Industries Ltd. | System On Chip For Digital Control Of Electronic Power Devices |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5420987A (en) * | 1993-07-19 | 1995-05-30 | 3 Com Corporation | Method and apparatus for configuring a selected adapter unit on a common bus in the presence of other adapter units |
US5551053A (en) | 1994-02-28 | 1996-08-27 | Eaton Corporation | System and Method for assigning addresses to I/O devices in a control network and for verifying the assigned address of the devices |
US5883814A (en) * | 1997-03-13 | 1999-03-16 | International Business Machines Corporation | System-on-chip layout compilation |
GB2368669B (en) * | 2000-10-31 | 2005-06-22 | Advanced Risc Mach Ltd | Integrated circuit configuration |
US6948105B2 (en) * | 2001-05-12 | 2005-09-20 | Advantest Corp. | Method of evaluating core based system-on-a-chip (SoC) and structure of SoC incorporating same |
US20030145290A1 (en) * | 2002-01-30 | 2003-07-31 | International Business Machines Corporation | System for controlling external models used for verification of system on a chip (SOC) interfaces |
JP2008102681A (ja) * | 2006-10-18 | 2008-05-01 | Tokyo Denki Univ | Ipコア及び複合ipコア |
-
2008
- 2008-05-22 US US12/125,255 patent/US7904872B2/en not_active Expired - Fee Related
-
2009
- 2009-05-19 TW TW098116600A patent/TWI451269B/zh active
- 2009-05-22 JP JP2011508951A patent/JP4731640B1/ja not_active Expired - Fee Related
- 2009-05-22 EP EP09749910.7A patent/EP2283438B1/en active Active
- 2009-05-22 KR KR1020107025347A patent/KR101531735B1/ko not_active IP Right Cessation
- 2009-05-22 WO PCT/EP2009/056213 patent/WO2009141420A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070291890A1 (en) * | 2002-04-10 | 2007-12-20 | Systel Development & Industries Ltd. | System On Chip For Digital Control Of Electronic Power Devices |
TW200604836A (en) * | 2003-07-25 | 2006-02-01 | Ibm | Self-contained processor subsystem as component for system-on-chip design |
US20070239966A1 (en) * | 2003-07-25 | 2007-10-11 | International Business Machines Corporation | Self-contained processor subsystem as component for system-on-chip design |
TW200622680A (en) * | 2004-03-26 | 2006-07-01 | Atmel Corp | Dual-processor complex domain floating-point dsp system on chip |
Also Published As
Publication number | Publication date |
---|---|
TW200951730A (en) | 2009-12-16 |
US20090292828A1 (en) | 2009-11-26 |
US7904872B2 (en) | 2011-03-08 |
EP2283438A1 (en) | 2011-02-16 |
KR20110015416A (ko) | 2011-02-15 |
EP2283438B1 (en) | 2020-03-04 |
JP2011527097A (ja) | 2011-10-20 |
KR101531735B1 (ko) | 2015-06-25 |
WO2009141420A1 (en) | 2009-11-26 |
JP4731640B1 (ja) | 2011-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI451269B (zh) | 晶片上系統(soc)及設計結構 | |
EP2936554B1 (en) | Die-stacked device with partitioned multi-hop network | |
US10164880B2 (en) | Sending packets with expanded headers | |
US11196657B2 (en) | Self identifying interconnect topology | |
US8831021B2 (en) | System and method for dynamically configurable multi-window divergent protocol bridge | |
TW200819978A (en) | Memory management method and system | |
US7904873B2 (en) | System-on-chip (SOC), design structure and method | |
US20240118958A1 (en) | Datalogging Circuit Triggered by a Watchdog Timer | |
US11669480B2 (en) | Transaction generator for on-chip interconnect fabric | |
US9442788B2 (en) | Bus protocol checker, system on chip including the same, bus protocol checking method | |
JP4263022B2 (ja) | ネットワークインタフェースおよびその構築方法 | |
US11470018B2 (en) | System-on-chip including network for debugging | |
US20130318223A1 (en) | Communication system and communicaton method | |
CN103403701A (zh) | 具有可编程电路系统和嵌入式处理器系统的集成电路 |