TWI474175B - 核心處理器之內部旁路匯流排 - Google Patents

核心處理器之內部旁路匯流排 Download PDF

Info

Publication number
TWI474175B
TWI474175B TW100147903A TW100147903A TWI474175B TW I474175 B TWI474175 B TW I474175B TW 100147903 A TW100147903 A TW 100147903A TW 100147903 A TW100147903 A TW 100147903A TW I474175 B TWI474175 B TW I474175B
Authority
TW
Taiwan
Prior art keywords
core
bus
processor
signal
bypass
Prior art date
Application number
TW100147903A
Other languages
English (en)
Other versions
TW201237629A (en
Inventor
Darius D Gaskins
Original Assignee
Via Tech 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 Via Tech Inc filed Critical Via Tech Inc
Publication of TW201237629A publication Critical patent/TW201237629A/zh
Application granted granted Critical
Publication of TWI474175B publication Critical patent/TWI474175B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Microcomputers (AREA)
  • Multi Processors (AREA)
  • Semiconductor Integrated Circuits (AREA)

Description

核心處理器之內部旁路匯流排 【相關申請案之參考文獻】
本申請案優先權之申請係根據該美國專利臨時申請案,案號:61/426,470,申請日:12/22/2010,名稱為多核心內之旁路匯流排(MULTI-CORE INTERNAL BYPASS BUS),該案整體皆納入本案參考。
本申請案與下列同在申請中之美國專利申請案有關,都具有相同的申請日,每一申請案整體皆納入本案參考。
本發明係有關於多核心微處理器,特別是有關於多核心共享之匯流排上的訊號品質。
當複數核心之一者驅動處理器匯流排時,本發明之發明者觀察到由多核心微處理器之其他核心從處理器匯流排所接收到的訊號品質不良,而使得系統不可靠,其中多核心微處理器之所有核心藉由處理器匯流排共享一晶片組,如下第1圖與第2圖中詳細說明。因此,急需一種方法以解決訊號品質不良的問題。
在一實施例中,本發明提供具有多核心晶片的微處理器。該晶片具有複數核心,並且核心的輸出訊號耦接至晶片的接觸墊。晶片係安裝在一封裝體上,該封裝體用以將晶片(以及其他晶片)的接觸墊耦接至封裝體的接腳。封裝體的接腳將封裝體耦接至一處理器匯流排,而處理器匯流排耦接至一晶片組。
晶片具有一旁路匯流排,用以致能多核心晶片的互補處理核心或互補雙核心對以旁路處理器匯流排而能直接與其他核心互相通訊。在此處“互補”所指為晶片的核心或雙核心對係藉由旁路匯流排所連接。旁路匯流排具有配置在晶片上的複數佈線網路,且佈線網路傳遞來自每一核心或雙核心對之複數輸出訊號至與其相對應的互補核心或互補雙核心對之輸入端。旁路匯流排經由中介匯流排介面邏輯之隔離而不與晶片的接觸墊或多核心微處理器的接腳相連接,因此旁路匯流排不會將訊號傳送至雙核心晶片的外部。此外,旁路匯流排線藉由中介匯流排介面邏輯之保護而隔絕相對應處理器匯流排線上的雜訊。
在另一實施例中,旁路匯流排提供對應每一處理器匯流排線的匯流排線。其中在每一旁路處理器匯流排線中,一第一單向旁路匯流排線用以提供訊號從一第一核心(或第一雙核心對)至互補的第二核心(或第二雙核心對),一第二單向旁路匯流排線用以提供訊號從第二核心(或第二雙核心對)至第一核心(或第一雙核心對)。
在另一實施例中,每一核心包括匯流排介面電路用以透過旁路線改善旁路匯流排通訊。在一般的處理器匯流排通訊中,每一核心耦接至對應的處理器匯流排線以驅動一輸出訊號至處理器匯流排線或接收來自處理器匯流排線的輸入訊號。為了改善雙向通訊,核心的匯流排介面電路提供中介輸入與輸出匯流排線介面邏輯,以耦接每一核心之輸入與輸出訊號至相對應之晶片輸入/輸出接觸墊。
在另一實施例中,中介輸出邏輯包括耦接至核心之輸出訊號線的匯流排線介面電晶體。在另一實施例中,一雙核心對共享晶片的輸入/輸出接觸墊,其透過對雙核心對之運算輸出訊號進行布林運算(如OR)再予以輸出。中介輸入邏輯包括匯流排線介面多工器,用以在其輸入端接收在一相對應處理器匯流排線上的晶片驅動訊號以及相同核心或相同對核心之一相對應輸出訊號。
在另一實施例中,旁路匯流排在各個端點藉由導線或佈線耦接互補核心或雙核心對,其中導線或佈線的兩端係耦接在核心或雙核心對之輸出或輸入訊號線與中介匯流排線介面邏輯間,而中介匯流排線介面邏輯耦接輸出或輸入訊號線至對應的實體輸入/輸出接觸墊。在另一實施例中,每一旁路匯流排線的輸入端耦接至對應匯流排線介面電晶體的閘極,每一旁路匯流排線的輸出端耦接至對應匯流排線介面多工器的輸入端。電晶體與多工器個別地暫存來自對應處理器匯流排之旁路匯流排線的輸入與輸出訊號。
在另一實施例中,本發明亦提供多核心晶片之核心間通訊的方法。一核心或雙核心對的匯流排介面從連接多核心晶片至晶片組之處理器匯流排接受訊號,以及從對應的連接核心或雙核心對至多核心晶片之互補核心或雙核心對(經由旁路匯流排所連接)之對應旁路匯流排的訊號。旁路匯流排不會將訊號傳送至晶片的外部或接收來自處理器匯流排的晶片組驅動訊號,也不會驅動處理器匯流排上的訊號至晶片組。核心或雙核心對中之一者偵測晶片組或互補核心或互補雙核心對的一核心是否正在驅動處理器匯流排。當互補核心或互補雙核心對的一核心正在驅動處理器匯流排時,匯流排介面選擇來自旁路匯流排的訊號而非來自處理器匯流排的訊號以驅動對應的核心輸入。
在另一實施例中,在多核心半導體晶片上的每一互補核心或雙核心對包括複數中介輸入邏輯多工器。每一中介輸入邏輯多工器接收一控制輸入訊號以及複數可選擇的輸入訊號並提供一輸出訊號。一第一可選擇輸入端耦接至核心之複數接觸墊的相對應一者,該相對應接觸墊耦接至處理器匯流排。一第二可選擇輸入端耦接至核心的輸出,且在雙核心對時,核心的輸出端耦接至一布林運算邏輯。一第三選擇輸入耦接至一相對應旁路匯流排線,旁路匯流排線用以傳送來自互補核心或一對核心的輸出訊號,多工器可選擇輸入中之一者傳遞至核心。一控制輸入用以使多工器進行選擇何者作為其輸出。當晶片組驅動處理器匯流排時,多工器選擇第一輸入作為其輸出。當核心或雙核心對驅動處理器匯流排時,多工器選擇第二輸入作為其輸出。當互補核心或互補雙核心對中之一核心驅動處理器匯流排時,多工器選擇第三輸入作為其輸出。多工器輸出耦接至傳送訊號至核心或雙核心對之各自的輸入訊號線。
此外,每一核心或雙核心對包括複數中介輸出邏輯電晶體,每一中介輸出邏輯電晶體具有閘極、源極與汲極。源極接地且汲極耦接至核心或雙核心對之輸入/輸出接觸墊之相對應一者。閘極耦接至核心的輸出訊號線且由核心的輸出訊號線驅動。在雙核心對的實施例中,閘極耦接至執行布林運算(如OR)的運算輸出訊號線。閘極還耦接至對應的中介輸出邏輯電晶體的第二選擇輸入,並透過旁路匯流排線耦接至互補核心(或雙核心對)之中介輸出邏輯電晶體的第三選擇輸入。
為了解決上述在多核心微處理器中不良訊號品質的問題,發明者根據一實施例在雙核心微處理器的兩個核心之間提供內部旁路匯流排,並且根據另一實施例在四核心微處理器的四個核心之間提供內部旁路匯流排。然而,此處先對典型雙核心微處理器作描述,以使本發明實施例能更加淺顯易懂。
第1圖所示係包括傳統雙核心微處理器封裝體的電子系統100的示意圖。電子系統100具有雙核心微處理器封裝體,雙核心微處理器封裝體藉由處理器匯流排142耦接至晶片組144。雙核心微處理器102具有兩個處理核心,分別為核心0 106A與核心1 106B,統稱為核心106。晶片組144包括已知電路如一記憶體控制器,用以控制系統記憶體,以及一匯流排橋接器,用以橋接處理器匯流排142至周圍匯流排如ISA、PCI、PCI-Express等。
核心0 106A與核心1 106B各自包括複數區塊用以執行已儲存程式的指令,複數區塊可為例如指令擷取單元、指令解碼單元、通用與特定用途暫存器、位址產生單元、快取記憶體、執行單元、引退單元(retire unit)、以及匯流排介面,該匯流排介面用以作為核心與處理器匯流排142間的介面。核心106具有多種架構特徵,如依序執行或非循序執行、純量或超純量架構、複雜指令集(complicated instruction set computer,CISC)巨結構或精簡指令集(reduced instruction set computer,RISC)微結構。
如圖所示,核心0 106A與核心1 106B各自位於獨立的半導體晶片104之上,而雙核心微處理器102的兩個晶片104被包括在單一個封裝體內。核心0 106A與核心1 106B各自包括複數接觸墊108,接觸墊108用以將來自核心0 106A與核心1 106B內部電路的訊號傳送至處理器匯流排142,以及將來自處理器匯流排142的訊號傳送至核心0 106A與核心1 106B。核心0 106A的接觸墊為接觸墊108A,核心1 106B的接觸墊為接觸墊108B。雙核心微處理器封裝體包括一基板,晶片104位於該基板的上面,該基板具有位於核心106的接觸墊108與雙核心微處理器封裝體的接腳112之間的複數內連線,其中內連線用以連接雙核心微處理器102至電子系統100的其他元件,例如透過主機板連接至晶片組144。雖然第1圖中所示的接觸墊108只位於晶片104的一邊,典型上來說接觸墊108也會位於晶片104的其他邊上。此外,雖然第1圖中所示的晶片104只具有三個接觸墊108,典型上來說晶片104具有數百個接觸墊108。如第1圖所示,核心106的接觸墊108A/108B耦接到相同的接腳112,因為雙核心微處理器封裝體係用單一組接腳112將它們連接至處理器匯流排142;也就是說,核心0 106A與核心1 106B都耦接至共用接腳112,其中接腳112用以連接雙核心微處理器封裝體至處理器匯流排142。
第2圖所示係第1圖之典型雙核心微處理器102的匯流排介面電路200的示意圖。匯流排介面電路200包括耦接至外部處理器匯流排142之接腳112的接觸墊108A,接觸墊108A為一實體位置用以附接連接線至雙核心微處理器封裝體的接腳112;也就是說,接觸墊108A不包括任何主動式的電子裝置。接觸墊108A也耦接訊號208A,訊號208A耦接至電晶體204A的汲極,其中電晶體204A的源極接地,電晶體204A的閘極用以接收來自核心0 106A之訊號206A。訊號206A可為一資料訊號、一位址訊號或一控制訊號,用以透過訊號208A與接觸墊108A提供一數值,該數值用以被驅動至對應處理器匯流排142的訊號上。因此,雖然第2圖只顯示處理器匯流排142之單一訊號的配置,處理器匯流排142的每一訊號也具有相同配置。匯流排介面電路200包括具有兩個輸入端的多工器202A,多工器202A的輸入端0接收訊號208A,多工器202A的輸入端1接收訊號206A。多工器202A的輸出端輸出訊號205A至核心0 106A,用以作為核心0 106A的一輸入。訊號205A可為對應於處理器匯流排142之一訊號的一資料訊號、一位址訊號或一控制訊號。訊號205A可透過接觸墊108A與訊號208A傳遞來自電子系統100之其他處理單元(核心1 106B或晶片組144)的數值。此外,訊號205A可透過訊號206A傳遞來自核心0 106A的數值以窺探其快取記憶體。選擇訊號207A用以使多工器202A依表1所示之方式,選擇多工器202A的輸入端以在輸出端提供訊號205A。
匯流排介面電路200包括耦接至外部處理器匯流排142之接腳112的接觸墊108B,接觸墊108B亦耦接訊號208B,其中訊號208B耦接至電晶體204B的汲極,且電晶體204B的源極接地。電晶體204B的閘極用以接收來自核心1 106B的訊號206B,訊號206B可為一資料訊號、一位址訊號或一控制訊號,用以透過訊號208B與接觸墊108B提供一數值,以便被驅動至對應處理器匯流排142的訊號上。匯流排介面電路200包括具有兩個輸入端的多工器202B,多工器202B的輸入端0接收訊號208B,多工器202B的輸入端1接收訊號206B。多工器202B的輸出端輸出訊號205B至核心1 106B用以作為核心1 106B的一輸入。訊號205B可為對應於處理器匯流排142之一訊號的一資料訊號、一位址訊號或一控制訊號。訊號205B可透過接觸墊108B與訊號208B傳遞來自電子系統100的另一處理單元(核心0 106A或晶片組144)的數值。此外,訊號205B可透過訊號206B傳遞來自核心1 106B的值以窺探其快取記憶體。選擇訊號207B用以使多工器202B依表2所示方式選擇多工器202B的輸入端以在輸出端提供訊號205B。
雖然並未顯示於第2圖中,一端點電阻可耦接至每一接觸墊108A與108B。保險絲可耦接在中斷電阻與電源之間。為了選擇性地耦接中斷電阻至接觸墊108A與108B,在微處理器的製造過程中保險絲可選擇性地燒斷或保留。
發明者發現當核心1 106B驅動處理器匯流排142時訊號208A的訊號品質不良,反之,當核心0 106A驅動處理器匯流排142時,訊號208B的訊號品質亦不良,兩者皆使得系統不可靠。因此,極需一種方法解決此問題。
第3圖所示係根據本發明實施例之包括雙核心處理器封裝體的電子系統300的示意圖。電子系統300包括相似於第1圖所示之晶片組144與處理器匯流排142。電子系統300也包括雙核心微處理器封裝體,雙核心微處理器302藉由處理器匯流排142耦接至晶片組144。雙核心微處理器302包括兩個處理核心,分別為核心0 306A與核心1 306B,統稱為核心306。
核心306相似於第1圖之核心106,然而,第3圖核心306的構造如下所示。不同於第1圖所示之雙核心微處理器102的核心106,第3圖所示之雙核心微處理器302的核心306位於雙核心微處理器封裝體中的單一半導體晶片304之中。也就是說,製作第3圖雙核心微處理器302的製造者於半導體晶圓上以矩陣排列的方式製造複數晶片304,再將這些晶片304切割成實體塊。也就是說,不同於第1圖所示之雙核心微處理器102是將兩個實體晶片104安裝在一封裝體基板上,且兩個實體晶片104藉由封裝體基板上的訊號導線連接在一起,第3圖的雙核心微處理器302為具有核心306A與306B之一單一實體晶片304。此外,如同第1圖之雙核心微處理器102,雙核心微處理器302的核心306A與306B皆包括連接至處理器匯流排142之相對應接腳112的接觸墊108A與108B,且核心306A與306B的接觸墊108A與108B透過基板導線與對應接腳112的耦接在一起,如第三圖所示。
在一實施例中,第3圖之具有單一晶片304的雙核心微處理器302以專利號61/426,470“改良光罩組以生產多核心晶片”(CNTR.2528)中所描述的方式被設計與製造。簡略而言,製造者根據CNTR.2528所提出的方法設計一第一光罩組用以印出一組單一核心晶片(如第1圖之單一核心晶片104)。第一光罩組定義複數切割線用以分離單核心晶片,且該等切割線定義圍繞每一雙核心晶片的密封環(seal ring)。製造者將第一光罩組的部分光罩修正為第二光罩組,該第二光罩組可以用以印出一組雙核心晶片(如第3圖之雙核心晶片304)。製造者移除該第一光罩組的至少一切割線,且該第一光罩組的對應改良部分用以定義旁路匯流排309(CNTR.2528中之核心間通訊線212)。接著,製造者使用第二光罩組製造晶圓以及沿著剩餘的切割線切割雙核心晶片304以生產雙核心晶片304。
旁路匯流排309在晶圓上連接相鄰的核心306A與306B,核心306A與306B係被預先設計的切割線所分開,但該切割線由旁路匯流排309所取代以使得該兩核心306在運作期間能進行通訊。因為核心0 306A與核心1 306B藉由旁路匯流排309所連接,因此核心0 306A與核心1 306B可視為互補關係。因為旁路匯流排309並無連接到接觸墊108,因此旁路匯流排309不會將訊號傳送至雙核心晶片304外部。
第4圖所示係根據第3圖之雙核心微處理器302的匯流排介面電路400的示意圖。具有單一晶片304的匯流排介面電路400係由第2圖之匯流排介面電路200改良而得,用以容納旁路匯流排309以及提供處理器匯流排142改善的訊號品質。
第4圖的匯流排介面電路400許多地方與第2圖的匯流排介面電路200相似,元件的數目也相似。然而,以下將針對不同的地方進行描述。
在第4圖中,具有三個輸入端的多工器402A取代第2圖中之具有兩個輸入端的多工器202A。第4圖中多工器402A的第三個輸入端為輸入端2,且輸入端2耦接至旁路匯流排訊號309A,其中旁路匯流排訊號309A即為來自核心1 306B的訊號206B。多工器402A的選擇輸入端接收選擇訊號407A,且選擇訊號407A用以使多工器402A依表3所示的方式選擇多工器402A的輸入端。
同樣地,具有三個輸入端的多工器402B取代第2圖之具有兩個輸入端的多工器202B。在第4圖中多工器402B的第三個輸入端稱作輸入端2,且輸入端2耦接至旁路匯流排訊號309B,其中旁路匯流排訊號309B即為來自核心0 306A的訊號206A。多工器402B的選擇輸入端接收選擇訊號407B,且選擇訊號407B用以使多工器402B依表4所示的方式選擇多工器402B的輸入端。
從第4圖中可看到的有利狀況是,當核心0 306A驅動處理器匯流排142時,核心1 306B可直接從內部旁路匯流排309B監測由核心0 306A驅動的數值,而非透過訊號208B由外部處理器匯流排142所監測,因從外部處理器匯流排142所監測到的訊號品質會比從內部旁路匯流排309B所監測到的訊號品質差上許多;當核心1 306B驅動處理器匯流排142時,核心0 306A可直接從內部旁路匯流排309A監測由核心1 306B驅動的數值,而非透過訊號208A由外部處理器匯流排142所監測,因從外部處理器匯流排142所監測到的訊號品質會比於從內部旁路匯流排309A所監測到的訊號品質差上許多。
另一個好處是第3圖與第4圖的實施例可藉由內部旁路匯流排達到提供具有改善的訊號品質的雙核心微處理器,以及可避免需要外加接觸墊以在兩核心之間建立旁路匯流排,在有限接觸墊(pad-limited)之設計中,不需要外加接觸墊是特別有用的好處。
在一實施例中,處理器匯流排142上的資料與位址訊號為對應於處理器匯流排142之控制訊號為兩倍頻訊號與四倍頻訊號。發明人觀察到當核心1 106B驅動處理器匯流排142時訊號208A的訊號品質不良,反之,當核心0 106A驅動處理器匯流排142時訊號208B的訊號品質亦不良,特別對兩倍頻訊號與四倍頻訊號的資料與位址訊號更是如此。然而,單一速度(亦即正常的匯流排時鐘速度)控制訊號的訊號品質較為可靠,且產生選擇訊號407之匯流排介面電路400的控制邏輯可用以觀察單一速度之處理器匯流排142的控制訊號,以便可靠地決定哪一單元(即核心0 306A、核心1 306B或晶片組144)正在驅動處理器匯流排142。
四核心實施例
第5圖所示係包括傳統雙核心微處理器封裝體之電子系統500的示意圖。電子系統500相似於第3圖的電子系統300;然而第5圖之具有單一晶片504的雙核心微處理器502不同於第3圖之具有單一晶片304的雙核心微處理器302之處,在於單一晶片504只包括單一接觸墊108A用以對應至處理器匯流排142的每一接腳112。也就是說,第5圖之雙核心微處理器502的核心0 506A與核心1 506B共享一組接觸墊108A,而非如第3圖的雙核心微處理器302各自擁有接觸墊108A與108B。因此,核心0 506A與核心1 506B可為一雙核心對。第5圖之具有單一晶片504的雙核心微處理器502可包括被核心0 506A與核心1 506B共享的一快取記憶體。
第6圖所示係根據第5圖之傳統的雙核心微處理器502的匯流排介面電路600的示意圖。匯流排介面電路600包括耦接至外部處理器匯流排142之接腳112的接觸墊108A。接觸墊108A耦接至訊號208,而訊號208耦接至電晶體204的汲極,且電晶體204的源極接地。電晶體204的閘極用以接收具有兩個輸入端之OR閘603的輸出訊號601,OR閘603的輸入端接收來自核心0 506A的訊號206A與來自核心1 506B的訊號206B。當核心0 506A驅動處理器匯流排142時,核心1 506B產生具有錯誤值(false value)的訊號206B,以使核心0 506A可控制OR閘603的輸出訊號601、電晶體204、接腳112上的輸出值與處理器匯流排142。相反地,當核心1 506B驅動處理器匯流排142時,核心0 506A產生具有錯誤值的訊號206A,以使核心1 506B可控制OR閘603的輸出訊號601、電晶體204、接腳112上的輸出值與處理器匯流排142。每一輸出訊號206A與206B可為資料訊號、位址訊號或控制訊號,用以透過訊號208與接觸墊108A提供一數值,用以被驅動至處理器匯流排142之對應的訊號。因此,雖然第6圖僅表示處理器匯流排142之單一訊號的配置,處理器匯流排142之每一訊號具有第6圖所示的配置。
匯流排介面電路600還包括一具有兩個輸入端的多工器602,多工器602在輸入端0接收訊號208,且在輸入端1接收輸出訊號601。多工器602的輸出端提供訊號205A與訊號205B傳分別送至核心0 506A與核心1 506B作為核心0 506A與核心1 506B的輸入訊號。訊號205A與205B可為對應處理器匯流排142之一訊號的資料訊號、位址訊號或控制訊號。訊號205A與205B可透過接觸墊108A與訊號208傳遞來自電子系統500另一處理單元(晶片組144)的數值。此外,訊號205A與訊號205B可透過OR閘603與輸出訊號601傳遞來自核心1 506B的值、或透過OR閘603與輸出訊號601傳送來自核心0 506A的值以窺探其快取記憶體。選擇訊號607控制多工器602以表5所示的方式選擇多工器602的輸入端,以提供訊號205A。
第7圖所示係根據本發明實施例之電子系統700,電子系統700包括一四核心微處理器封裝體。電子系統700包括晶片組144與處理器匯流排142,相似於第1圖中所示之晶片組144與處理器匯流排142。電子系統700包括藉由處理器匯流排142耦接至晶片組144的四核心微處理器封裝體。四核心微處理器702包括四個處理核心,統稱為核心706,其分別為核心0 706A、核心1 706B、核心2 706C與核心3 706D。
核心0 706A與核心1 706B形成一雙核心對,相似於由核心0 506A與核心1 506B所形成的一雙核心對。仔細而言,核心0 706A與核心1 706B共享一組接觸墊108A,該組接觸墊108A透過基板導線耦接至對應的處理器匯流排142的接腳112。同樣地,核心2 706C與核心3 706D共享一組接觸墊108B,該組接觸墊108B透過基板導線耦接至對應的處理器匯流排142的接腳112。四核心微處理器702的四個核心706皆位於單一晶片704之上。
製作第7圖四核心微處理器702的製造者於半導體晶圓上以矩陣排列的方式製造複數晶片704,再將這些晶片704切割成實體塊。在一實施例中,第7圖之具有單一晶片704的四核心微處理器702以CNTR.2528中所描述的方式被設計與製造。也就是說,製造者設計一第一光罩組(reticle set)用以印出一組雙核心晶片(如第5圖之雙核心晶片504)。第一光罩組定義切割線以分離雙核心晶片,且該切割線定義圍繞每一雙核心晶片的密封環(seal ring)。製造者將第一光罩組的部分光罩藉由使用旁路匯流排709替換第一光罩組的至少一切割線以修正為第二光罩組,該第二光罩組可以用以印出一組四核心晶片(如第7圖之四核心晶片704)。旁路匯流排709包括核心間通訊線以連接在晶圓上相鄰的雙核心對或雙核心組,其中該雙核心對或雙核心組被預先設計為被切割線所分離。一旦該切割線被移除,且該光罩組被修正以定義旁路匯流排709時,四個核心在運作期間便能藉由旁路匯流排709進行通訊。接著,製造者使用第二光罩組製造晶圓,並以及沿著剩餘的切割線切割四核心晶片704以生產四核心晶片704。
因為核心0 706A與核心1 706B所形成雙核心對經由旁路匯流排709連接至由核心2 706C與核心3 706D所形成的雙核心對,因此核心0 706A與核心1 706B所形成的雙核心對與核心2 706C與核心3 706D所形成的雙核心對為互補關係。因旁路匯流排709未連接至接觸墊108,因此旁路匯流排709不會將訊號傳送至四核心晶片704外部。
第8圖所示係根據第7圖四核心微處理器702之匯流排介面電路800的示意圖。單一晶片704的匯流排介面電路800係改良後之第6圖的匯流排介面電路600,以容納旁路匯流排709並提供處理器匯流排142改良的訊號品質。
第8圖之匯流排介面電路800的多處相似於第6圖的匯流排介面電路600,且在其他多處相似於第4圖的匯流排介面電路400,如元件使用的數目。下面進行描述不同之處。第6圖的OR閘603在第8圖中為OR閘603A,而第6圖的輸出訊號601在第8圖中為輸出訊號601A。第6圖的訊號208在第8圖中為訊號208A(如第4圖所示)。第6圖的電晶體204在第8圖中為電晶體204A(如第4圖所示)。此外,具有三個輸入端的多工器802A(如第4圖所示之具有三個輸入端的多工器402A)取代第6圖之具有兩個輸入端的多工器602。第8圖與第4圖相同的是,多工器802A的第三個輸入端為輸入端2,且輸入端2耦接旁路匯流排訊號709A,其中旁路匯流排訊號709A耦接至號601B,輸出訊號601B與輸出訊號601A具有相同的功用,不同之處為輸出訊號601B與核心2 706C與核心3 706D有關,在下面進行討論。多工器802A的選擇輸入端接收選擇訊號807A,選擇訊號807A用以使多工器802A依表6所示的方式選擇多工器802A的輸入端。
第8圖之匯流排介面電路800也包括核心2 706C與核心3 706D的一匯流排介面電路,其係核心0 706A與核心1 706B之匯流排介面電路以映射方式進行複製(mirro copy)。也就是對於核心2 706C與核心3 706D來說,匯流排介面電路800包括耦接至外部處理器匯流排142之接腳112的接觸墊108B。接觸墊108B耦接訊號208B,其中訊號208B耦接至電晶體204B的汲極,電晶體204B的源極接地。電晶體204B的閘極用以接收具有兩個輸入端之OR閘603B的運算輸出訊號601B。OR閘603B的輸入端接收來自核心2 706C的訊號206C與來自核心3 706D的訊號206D,其相似於相對應核心0 706A與核心1 706B的訊號206A與206B。匯流排介面電路800包括具有三個輸入端的多工器802B,多工器802B的輸入端0接收訊號208B、輸入端1接收輸出訊號601B且輸入端2接收旁路匯流排訊號709B。旁路匯流排訊號709B耦接至輸出訊號601A。多工器802B的選擇輸入端接收訊號807B以使多工器802B依表7所示的方式選擇多工器802B的輸入端。
多工器802B輸出訊號205C至核心2 706C以作為核心2 706C的輸入訊號,以及輸出訊號205D至核心3 706D以作為核心3 706D的輸入訊號。訊號205C與205D相似於核心0 706A與核心1 706B的訊號205A與205B。
從第8圖中可看到有利的狀況是,當核心0 706A或核心1 706B驅動處理器匯流排142時,核心2 706C或核心3 706D可直接從內部旁路匯流排709B監測由核心0 706A或核心1 706B驅動的數值,而非透過訊號208B由外部處理器匯流排142所監測,而從外部處理器匯流排142所監測到的訊號品質會比從內部旁路匯流排709B所監測到的訊號品質差上許多;當核心2 706C或核心3 706D驅動處理器匯流排142時,核心0 706A或核心1 706B可直接從內部旁路匯流排709A監測由核心2 706C或核心3 706D驅動的數值,而非透過訊號208A由外部處理器匯流排142所監測,從外部處理器匯流排142所監測到的訊號品質會比從內部旁路匯流排709A所監測到的訊號品質差上許多。
應注意的是在說明書中使用的名詞“訊號”在此指的是電路元件,係指用以傳遞數位電子訊號的導線。
雖然在此只描述雙核心與四核心微處理器包括內部旁路匯流排用以改良有關處理器匯流排訊號的品質,在其他實施例中可包括多核心微處理器利用相同的方式以改良有關處理器匯流排訊號的品質,如六核心或八核心微處理器。
此外,雖然於上述實施例中核心間通訊線用以從每一核心或每一雙核心對的輸出端耦接至處理器匯流排與互補的一核心或一雙核心對的輸入端,且為雙向通訊。但在其他實施例中,核心間通訊線只從一核心或一雙核心對耦接至其他核心,此非反之亦然。此外,其他實施例中核心間通訊線只提供給所選擇之處理器匯流排的輸入與輸出。
應注意的是,在說明書中的核心間通訊線都稱作“旁路匯流排”,從一核心或一雙核心對至另一核心或另一雙核心對的每一組核心間通訊線可以稱做可辨識的“旁路匯流排”。此外,兩個組以上的結合,包括一組從一方向(第1核心至第2核心)與另一組從反方向(即第2核心至第1核心)亦可為“旁路匯流排”或“複數旁路匯流排”。
本發明雖以較佳實施例揭露如上,然其並非用以限定本發明的範圍,任何熟習此項技藝者,在不脫離本發明之精神和範圍內,當可做些許的更動與潤飾。舉例來說,除了以硬體(例如耦接至或在一中央處理單元內、微處理器、微控制器、數位訊號處理器、處理器核心、系統晶片或任何其它裝置)來實現外,也可用軟體(例如電腦可讀碼、程式碼、或任何形式之指令,例如原始語言、目標語言或機械語言)來實現,例如,在一電腦可用(例如可讀取)媒體內儲存該軟體。舉例來說,此種軟體可以使功能執行、製造、製造模型、模擬、敘述或測試這裡所提及的裝置及方法,例如,可用通常之程式語言(例如C或C++)、硬體描述語言(例如Verilog HDL、VHDL)或其它程式來完成;此種軟體可被安裝於任何電腦可用媒體,例如半導體、磁碟或光碟(例如CD-ROM、DVD-ROM等)。本發明之實施例包括提供一微處理器之方法,此係藉由提供描述有微處理器之設計之軟體,並將該軟體以電腦資料訊號之方式透過通訊網路(包括網際網路及區域網路)傳送出去。本發明之裝置與方法亦可被用於一半導體智慧財產核心(semiconductor intellectual property core),例如一個微處理器核心(以HDL實現),之後再以積體電路的方式轉換成硬體,另外,本發明之裝置與方法亦可由硬體及軟體來組合實現。因此,本發明不該被侷限於所揭露之實施例,本發明之保護範圍當視後附之申請專利範圍所指定者為準。本發明係實現於一微處理器裝置中,且該微處理器裝置係被應用於一般的電腦。
100、300、500、700...電子系統
200、400、600、800...匯流排介面電路
102、302、502...雙核心微處理器
106A、306A、506A、706A...核心0
106B、306B、506B、706B...核心1
108A、108B...接觸墊
112...接腳
142...處理器匯流排
144...晶片組
202A、202B、402A、402B、602、802A、802B...多工器
204A、204B、204...電晶體
205A、205B、205C、205D、206A、206B、206C、206D、208A、208B、208...訊號
207A、207B、407A、407B、607、807A、807B...選擇訊號
309、309A、309B、709、709A、709B...旁路匯流排訊號
601、601A、601B...輸出訊號
603、603A、603B...OR閘
702...四核心微處理器
706C...核心2
706D...核心3
第1圖所示係具有傳統雙核心微處理器封裝體之電子系統的示意圖;
第2圖所示係第1圖之傳統雙核心微處理器之匯流排介面電路的示意圖;
第3圖所示係根據本發明之具有雙核心微處理器封裝體之電子系統的示意圖;
第4圖所示係第3圖之雙核心微處理器之匯流排介面電路的示意圖;
第5圖所示係具有傳統雙核心微處理器封裝體之電子系統的示意圖;
第6圖所示係第5圖之傳統雙核心微處理器之匯流排介面電路的示意圖;
第7圖示係根據本發明之具有四核心微處理器封裝體之電子系統的示意圖;
第8圖示係第7圖之四核心微處理器之匯流排介面電路的示意圖。
400...匯流排介面電路
108A、108B...接觸墊
112...接腳
142...處理器匯流排
402A、402B...多工器
204A、204B...電晶體
205A、205B、206A、206B、208A、208B...訊號
407A、407B...選擇訊號
309A、309B...旁路匯流排訊號

Claims (34)

  1. 一種微處理器,包括:複數接腳,耦接上述微處理器至耦接一晶片組的一雙向處理器匯流排;一晶片,具有複數核心,每一核心具有一匯流排介面分別耦接上述核心的複數輸入端與複數輸出端至上述處理器匯流排之對應的複數雙向線;以及一旁路匯流排,配置在上述晶片上,用以使上述晶片的至少一第一與一第二互補核心旁路上述處理器匯流排而直接互相通訊,上述旁路匯流排提供對應於複數處理器匯流排線的複數匯流排線;其中上述旁路匯流排不會將訊號傳送至上述晶片的外部、驅動上述處理器匯流排上的訊號至上述晶片組或接收來自上述處理器匯流排的晶片組驅動的訊號,其中在上述第一與第二核心所耦接至的每一處理器匯流排中,上述核心提供一匯流排介面作為一接收端以接收一匯流排線介面多工器的一輸出,上述匯流排介面多工器接收上述處理器匯流排線與來自上述互補核心之一對應旁路匯流排線的一輸出端中之輸入。
  2. 如申請專利範圍第1項所述之微處理器,其中上述旁路匯流排包括配置在上述晶片上的複數佈線網路,且上述佈線網路傳遞來自上述第一核心之複數輸出訊號至上述第二核心之對應的上述輸入端,以及傳遞來自上述第二核心之複數輸出訊號至上述第一核心之對應的上述輸入端。
  3. 如申請專利範圍第2項所述之微處理器,其中在上 述第一與第二核心所耦接的每一處理器匯流排線中,對應的複數旁路匯流排線用以連接上述第一與第二核心。
  4. 如申請專利範圍第3項所述之微處理器,其中在上述第一與第二核心所耦接至的每一處理器匯流排線中,一對應之一第一單向旁路匯流排線用以提供訊號從上述第一核心至上述第二核心,一對應之一第二單向旁路匯流排線用以提供訊號從上述第二核心至上述第一核心。
  5. 如申請專利範圍第1項所述之微處理器,其中每一旁路匯流排線具有耦接至上述第一與第二核心之對應匯流排介面的輸入端與輸出端。
  6. 如申請專利範圍第1項所述之微處理器,其中上述匯流排線介面多工器接收的是上述晶片組或一互補核心正在驅動上述處理器匯流排所對應的一控制輸入。
  7. 如申請專利範圍第6項所述之微處理器,其中提供上述匯流排介面多工器的上述核心用以:透過解析上述處理器匯流排的訊號偵測正在驅動上述處理器匯流排的是上述晶片組或上述互補核心;以及提供一對應控制輸入至上述核心的上述匯流排線介面多工器。
  8. 如申請專利範圍第1項所述之微處理器,其中在上述第一與第二核心所耦接至的每一處理器匯流排線中,上述匯流排介面邏輯包括一匯流排線介面電晶體用以驅動一核心訊號至一處理器匯流排線上,其中一對應之旁路匯流排線的一輸入端直接耦接至一核心驅動的輸出訊號線,其中上述核心驅動的輸出訊號線耦接上述匯流排線介面電晶 體的閘極。
  9. 一種微處理器,包括:一晶片,具有至少兩核心且至少兩組接觸墊,其中上述兩組接觸墊中之複數對接觸墊用以耦接上述微處理器至耦接至一晶片組的一雙向處理器匯流排;複數匯流排介面,分別耦接每一核心的複數輸入端與複數輸出端至上述晶片之對應的接觸墊;以及一旁路匯流排,配置於上述晶片上,用以使上述晶片的至少一第一與一第二互補核心組旁路上述處理器匯流排而直接互相通訊,上述旁路匯流排提供對應於複數處理器匯流排線的複數匯流排線;其中上述旁路匯流排不會將訊號傳送至上述晶片的外部、在上述處理器匯流排驅動訊號至上述晶片組或接收來自上述處理器匯流排的晶片組驅動的訊號,其中在上述第一與第二組核心所耦接至的每一處理器匯流排中,上述對應核心組提供一匯流排介面作為一接收端以接收一匯流排線介面多工器的一輸出,上述匯流排介面多工器接收上述處理器匯流排線與來自上述互補核心之一對應旁路匯流排線的一輸出端中之輸入。
  10. 如申請專利範圍第9項所述之微處理器,其中上述第一與第二互補核心組各包括一雙核心對,該雙核心對共享上述晶片之對應的一組接觸墊。
  11. 如申請專利範圍第10項所述之微處理器,其中在上述第一與第二互補核心組所耦接的每一處理器匯流排線中,對應的複數旁路匯流排線用以連接上述第一與第二互 補核心組。
  12. 如申請專利範圍第11項所述之微處理器,其中在上述第一與第二互補核心組所耦接至的每一處理器匯流排線中,一對應之一第一單向旁路匯流排線用以提供訊號從上述第一互補核心組至上述第二互補核心組,一對應之一第二單向旁路匯流排線用以提供訊號從上述第二互補核心組至上述第一互補核心組。
  13. 如申請專利範圍第9項所述之微處理器,其中每一旁路匯流排線具有耦接至上述第一與第二互補核心組之對應匯流排介面的輸入端與輸出端。
  14. 如申請專利範圍第9項所述之微處理器,其中上述匯流排介面多工器接收的是上述晶片組或上述核心之一互補核心組的一核心正在驅動上述處理器匯流排所對應的一控制輸入。
  15. 如申請專利範圍第14項所述之微處理器,其中提供上述匯流排介面多工器的上述核心組的上述核心之一者係:透過解析上述處理器匯流排的訊號偵測正在驅動上述處理器匯流排的是上述晶片組或上述核心之一互補核心組的一核心;以及提供一對應控制輸入至上述核心的上述匯流排線介面多工器。
  16. 如申請專利範圍第9項所述之微處理器,其中在上述第一與第二互補核心組所耦接至的每一處理器匯流排中,上述匯流排介面邏輯包括一匯流排線介面電晶體用以 驅動一核心訊號至一處理器匯流排線上,其中一相對應之旁路匯流排線的一輸入端直接耦接至一核心驅動的輸出訊號線並耦接至上述匯流排線介面電晶體的閘極,其中上述核心驅動的輸出訊號線傳送相對應互補核心組的輸出訊號線的一布林OR的運算輸出訊號。
  17. 一種多核心晶片之核心間通訊方法,包括:在一核心的一匯流排介面上接收來自一處理器匯流排與來自一相對應旁路匯流排的訊號,上述處理器匯流排連接上述多核心晶片至一晶片組,上述旁路匯流排連接上述核心至上數多核心晶片的一互補核心,其中上述旁路匯流排不會將訊號傳送至上述晶片的外部、在上述處理器匯流排驅動訊號至上述晶片組或接收來自上述處理器匯流排的晶片組驅動的訊號;偵測上述處理器匯流排是否被上述晶片組或被上述互補核心所驅動;以及當上述處理匯流排被上述互補核心所驅動時,使上述匯流排介面選擇來自上述旁路匯流排的訊號,而不選擇來自上述處理器匯流排的訊號,以驅動對應的核心輸入端。
  18. 一種多核心晶片之核心間通訊方法,包括:在一雙核心對所共享的一匯流排介面上接收來自一處理器匯流排與來自一對應旁路匯流排的訊號,上述處理器匯流排連接上述多核心晶片至一晶片組,上述旁路匯流排連接上述雙核心對至上數多核心晶片的一互補核心組,其中上述旁路匯流排不會將訊號傳送至上述晶片的外部、在上述處理器匯流排驅動訊號至上述晶片組或接收來自上述 處理器匯流排的晶片組驅動的訊號;偵測上述處理器匯流排是否被上述晶片組或被上述互補核心組的一核心所驅動;以及當上述處理匯流排被上述互補核心組的一核心所驅動時,使上述匯流排介面選擇來自上述旁路匯流排的訊號,而不選擇來自上述處理器匯流排的訊號,以驅動相對應的核心輸入端。
  19. 一種微處理器,包括:複數接腳,耦接上述微處理器至耦接一晶片組的一雙向處理器匯流排;一晶片,具有複數核心,每一核心具有一匯流排介面分別耦接上述核心的複數輸入端與複數輸出端至上述處理器匯流排之對應的複數雙向線;以及一旁路匯流排,配置在上述晶片上,用以使上述晶片的至少一第一與一第二互補核心旁路上述處理器匯流排而直接互相通訊,上述旁路匯流排提供對應於複數處理器匯流排線的複數匯流排線;其中上述旁路匯流排不會將訊號傳送至上述晶片的外部、驅動上述處理器匯流排上的訊號至上述晶片組或接收來自上述處理器匯流排的晶片組驅動的訊號,其中每一旁路匯流排線具有耦接至上述第一與第二核心之對應匯流排介面的輸入端與輸出端,其中每一旁路匯流排線具有一輸入端,用以連接到上述第一與第二核心之一者的一對應匯流排線介面電晶體的閘極,以及一輸出端,用以連接到上述第一與第二核心之另一者的一對應匯流排線介面多工器 的一輸入端。
  20. 如申請專利範圍第19項所述之微處理器,其中上述旁路匯流排包括配置在上述晶片上的複數佈線網路,且上述佈線網路傳遞來自上述第一核心之複數輸出訊號至上述第二核心之對應的上述輸入端,以及傳遞來自上述第二核心之複數輸出訊號至上述第一核心之對應的上述輸入端。
  21. 如申請專利範圍第20項所述之微處理器,其中在上述第一與第二核心所耦接的每一處理器匯流排線中,對應的複數旁路匯流排線用以連接上述第一與第二核心。
  22. 如申請專利範圍第21項所述之微處理器,其中在上述第一與第二核心所耦接至的每一處理器匯流排線中,一對應之一第一單向旁路匯流排線用以提供訊號從上述第一核心至上述第二核心,一對應之一第二單向旁路匯流排線用以提供訊號從上述第二核心至上述第一核心。
  23. 如申請專利範圍第19項所述之微處理器,其中在上述第一與第二核心所耦接至的每一處理器匯流排中,上述核心提供一匯流排介面作為一接收端以接收一匯流排線介面多工器的一輸出,上述匯流排介面多工器接收上述處理器匯流排線與來自上述互補核心之一對應旁路匯流排線的一輸出端中之輸入。
  24. 如申請專利範圍第23項所述之微處理器,其中上述匯流排線介面多工器接收的是上述晶片組或一互補核心正在驅動上述處理器匯流排所對應的一控制輸入。
  25. 如申請專利範圍第24項所述之微處理器,其中提 供上述匯流排介面多工器的上述核心用以:透過解析上述處理器匯流排的訊號偵測正在驅動上述處理器匯流排的是上述晶片組或上述互補核心;以及提供一對應控制輸入至上述核心的上述匯流排線介面多工器。
  26. 如申請專利範圍第23項所述之微處理器,其中在上述第一與第二核心所耦接至的每一處理器匯流排線中,上述匯流排介面邏輯包括一匯流排線介面電晶體用以驅動一核心訊號至一處理器匯流排線上,其中一對應之旁路匯流排線的一輸入端直接耦接至一核心驅動的輸出訊號線,其中上述核心驅動的輸出訊號線耦接上述匯流排線介面電晶體的閘極。
  27. 一種微處理器,包括:一晶片,具有至少兩核心且至少兩組接觸墊,其中上述兩組接觸墊中之複數對接觸墊用以耦接上述微處理器至耦接至一晶片組的一雙向處理器匯流排;複數匯流排介面,分別耦接每一核心的複數輸入端與複數輸出端至上述晶片之對應的接觸墊;以及一旁路匯流排,配置於上述晶片上,用以使上述晶片的至少一第一與一第二互補核心組旁路上述處理器匯流排而直接互相通訊,上述旁路匯流排提供對應於複數處理器匯流排線的複數匯流排線;其中上述旁路匯流排不會將訊號傳送至上述晶片的外部、在上述處理器匯流排驅動訊號至上述晶片組或接收來自上述處理器匯流排的晶片組驅動的訊號,其中每一旁路 匯流排線具有耦接至上述第一與第二互補核心組之對應匯流排介面的輸入端與輸出端,其中每一旁路匯流排線具有輸入端,用以連接到上述互補核心組之一者的一對應匯流排線介面電晶體的閘極,以及一輸出端,用以連接到上述互補核心組之另一者的一對應匯流排線介面多工器的一輸入端。
  28. 如申請專利範圍第27項所述之微處理器,其中上述第一與第二互補核心組各包括一雙核心對,該雙核心對共享上述晶片之對應的一組接觸墊。
  29. 如申請專利範圍第28項所述之微處理器,其中在上述第一與第二互補核心組所耦接的每一處理器匯流排線中,對應的複數旁路匯流排線用以連接上述第一與第二互補核心組。
  30. 如申請專利範圍第29項所述之微處理器,其中在上述第一與第二互補核心組所耦接至的每一處理器匯流排線中,一對應之一第一單向旁路匯流排線用以提供訊號從上述第一互補核心組至上述第二互補核心組,一對應之一第二單向旁路匯流排線用以提供訊號從上述第二互補核心組至上述第一互補核心組。
  31. 如申請專利範圍第27項所述之微處理器,其中在上述第一與第二組核心所耦接至的每一處理器匯流排中,上述對應核心組提供一匯流排介面作為一接收端以接收一匯流排線介面多工器的一輸出,上述匯流排介面多工器接收上述處理器匯流排線與來自上述互補核心之一對應旁路匯流排線的一輸出端中之輸入。
  32. 如申請專利範圍第31項所述之微處理器,其中上述匯流排介面多工器接收的是上述晶片組或上述核心之一互補核心組的一核心正在驅動上述處理器匯流排所對應的一控制輸入。
  33. 如申請專利範圍第32項所述之微處理器,其中提供上述匯流排介面多工器的上述核心組的上述核心之一者係:透過解析上述處理器匯流排的訊號偵測正在驅動上述處理器匯流排的是上述晶片組或上述核心之一互補核心組的一核心;以及提供一對應控制輸入至上述核心的上述匯流排線介面多工器。
  34. 如申請專利範圍第31項所述之微處理器,其中在上述第一與第二互補核心組所耦接至的每一處理器匯流排中,上述匯流排介面邏輯包括一匯流排線介面電晶體用以驅動一核心訊號至一處理器匯流排線上,其中一相對應之旁路匯流排線的一輸入端直接耦接至一核心驅動的輸出訊號線並耦接至上述匯流排線介面電晶體的閘極,其中上述核心驅動的輸出訊號線傳送相對應互補核心組的輸出訊號線的一布林OR的運算輸出訊號。
TW100147903A 2010-12-22 2011-12-22 核心處理器之內部旁路匯流排 TWI474175B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201061426470P 2010-12-22 2010-12-22
US13/299,014 US9460038B2 (en) 2010-12-22 2011-11-17 Multi-core microprocessor internal bypass bus

Publications (2)

Publication Number Publication Date
TW201237629A TW201237629A (en) 2012-09-16
TWI474175B true TWI474175B (zh) 2015-02-21

Family

ID=46829396

Family Applications (2)

Application Number Title Priority Date Filing Date
TW103144436A TWI514155B (zh) 2010-12-22 2011-12-22 微處理器以及多核心晶片之核心間通訊方法
TW100147903A TWI474175B (zh) 2010-12-22 2011-12-22 核心處理器之內部旁路匯流排

Family Applications Before (1)

Application Number Title Priority Date Filing Date
TW103144436A TWI514155B (zh) 2010-12-22 2011-12-22 微處理器以及多核心晶片之核心間通訊方法

Country Status (3)

Country Link
US (1) US9460038B2 (zh)
CN (2) CN104503941B (zh)
TW (2) TWI514155B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI614961B (zh) * 2016-04-25 2018-02-11 聯發科技股份有限公司 電力傳送系統及多核處理晶片

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8637212B2 (en) 2010-12-22 2014-01-28 Via Technologies, Inc. Reticle set modification to produce multi-core dies
US8631256B2 (en) 2010-12-22 2014-01-14 Via Technologies, Inc. Distributed management of a shared power source to a multi-core microprocessor
US8972707B2 (en) 2010-12-22 2015-03-03 Via Technologies, Inc. Multi-core processor with core selectively disabled by kill instruction of system software and resettable only via external pin
US8930676B2 (en) 2010-12-22 2015-01-06 Via Technologies, Inc. Master core discovering enabled cores in microprocessor comprising plural multi-core dies
US8635476B2 (en) 2010-12-22 2014-01-21 Via Technologies, Inc. Decentralized power management distributed among multiple processor cores
US8782451B2 (en) 2010-12-22 2014-07-15 Via Technologies, Inc. Power state synchronization in a multi-core processor
CN110134640B (zh) * 2018-02-09 2024-03-01 上海中研久弋科技有限公司 多核心传感器数据处理芯片及运行方法
WO2020087248A1 (zh) * 2018-10-30 2020-05-07 北京比特大陆科技有限公司 多核芯片数据总线布线结构和数据发送的方法
US11841776B2 (en) * 2019-06-12 2023-12-12 Intel Corporation Single chip multi-die architecture having safety-compliant cross-monitoring capability
KR20220142212A (ko) * 2021-04-14 2022-10-21 삼성전자주식회사 멀티 비트 플립플롭 및 이를 포함하는 집적회로

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101000596A (zh) * 2007-01-22 2007-07-18 北京中星微电子有限公司 一种可实现芯片内多核间通信的芯片及通信方法
US7533316B2 (en) * 2006-03-31 2009-05-12 Intel Corporation Method and apparatus for disabling and swapping cores in a multi-core microprocessor
TW200945048A (en) * 2008-04-15 2009-11-01 Freescale Semiconductor Inc Multi-core processing system
CN101901177A (zh) * 2010-01-22 2010-12-01 威盛电子股份有限公司 多核微处理器及其除错方法

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4748559A (en) 1979-08-09 1988-05-31 Motorola, Inc. Apparatus for reducing power consumed by a static microprocessor
US5546588A (en) 1992-05-08 1996-08-13 Motorola Inc. Method and apparatus for preventing a data processing system from entering a non-recoverable state
US5485625A (en) 1992-06-29 1996-01-16 Ford Motor Company Method and apparatus for monitoring external events during a microprocessor's sleep mode
US5467455A (en) * 1993-11-03 1995-11-14 Motorola, Inc. Data processing system and method for performing dynamic bus termination
US5918061A (en) 1993-12-29 1999-06-29 Intel Corporation Enhanced power managing unit (PMU) in a multiprocessor chip
JP3315012B2 (ja) 1994-09-22 2002-08-19 大日本印刷株式会社 情報記録方法
US5987614A (en) 1997-06-17 1999-11-16 Vadem Distributed power management system and method for computer
US6496880B1 (en) * 1999-08-26 2002-12-17 Agere Systems Inc. Shared I/O ports for multi-core designs
US6665802B1 (en) 2000-02-29 2003-12-16 Infineon Technologies North America Corp. Power management and control for a microcontroller
US6968467B2 (en) 2000-10-26 2005-11-22 Matsushita Electric Industrial Co., Ltd. Decentralized power management system for integrated circuit using local power management units that generate control signals based on common data
US7113488B2 (en) 2002-04-24 2006-09-26 International Business Machines Corporation Reconfigurable circular bus
US7058855B2 (en) * 2002-07-24 2006-06-06 Infineon Technologies Ag Emulation interface system
US7493417B2 (en) * 2002-12-12 2009-02-17 International Business Machines Corporation Method and data processing system for microprocessor communication using a processor interconnect in a multi-processor system
US7191349B2 (en) 2002-12-26 2007-03-13 Intel Corporation Mechanism for processor power state aware distribution of lowest priority interrupt
EP1604288A1 (en) * 2003-03-12 2005-12-14 Koninklijke Philips Electronics N.V. Data processing device and method for transferring data
GB2409303B (en) * 2003-12-18 2006-10-18 Advanced Risc Mach Ltd Inter-processor communication mechanism
US7308558B2 (en) * 2004-01-07 2007-12-11 International Business Machines Corporation Multiprocessor data processing system having scalable data interconnect and data routing mechanism
US7734797B2 (en) * 2004-03-29 2010-06-08 Marvell International Ltd. Inter-processor communication link with manageability port
US7451333B2 (en) 2004-09-03 2008-11-11 Intel Corporation Coordinating idle state transitions in multi-core processors
US7257679B2 (en) 2004-10-01 2007-08-14 Advanced Micro Devices, Inc. Sharing monitored cache lines across multiple cores
JP4544081B2 (ja) 2004-11-15 2010-09-15 株式会社デンソー マイクロコンピュータ
US7502948B2 (en) 2004-12-30 2009-03-10 Intel Corporation Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores
US20060171244A1 (en) * 2005-02-03 2006-08-03 Yoshiyuki Ando Chip layout for multiple cpu core microprocessor
KR101108397B1 (ko) 2005-06-10 2012-01-30 엘지전자 주식회사 멀티-코어 프로세서의 전원 제어 장치 및 방법
US7568115B2 (en) 2005-09-28 2009-07-28 Intel Corporation Power delivery and power management of many-core processors
US7358758B2 (en) * 2005-10-18 2008-04-15 Via Technologies, Inc. Apparatus and method for enabling a multi-processor environment on a bus
WO2007099181A1 (es) 2006-02-28 2007-09-07 Intel Corporation Mejora de la fiabilidad de un procesador de muchos nucleos
EP2005691A4 (en) * 2006-03-28 2013-02-20 Radisys Canada Inc MULTIMEDIA PROCESSING IN PARALLEL MULTI-DATA DATA PROCESSING ARCHITECTURES
US7506184B2 (en) 2006-05-09 2009-03-17 Intel Corporation Current detection for microelectronic devices using source-switched sensors
US7685441B2 (en) 2006-05-12 2010-03-23 Intel Corporation Power control unit with digitally supplied system parameters
WO2008047179A1 (en) * 2006-10-20 2008-04-24 Freescale Semiconductor, Inc. Device having redundant core and a method for providing core redundancy
JP4945224B2 (ja) 2006-11-30 2012-06-06 株式会社東芝 コントローラ、情報処理装置、および供給電圧制御方法
KR101209252B1 (ko) 2007-02-02 2012-12-06 삼성전자주식회사 전자기기의 부팅 방법 및 부팅 인증 방법
EP2058725A3 (en) 2007-06-11 2015-07-22 Mediatek Inc. Method of and apparatus for reducing power consumption within an integrated circuit
JP4433006B2 (ja) * 2007-07-04 2010-03-17 株式会社デンソー マルチコアの異常監視装置
CN100476694C (zh) 2007-09-28 2009-04-08 中国科学院计算技术研究所 一种多核处理器及其变频装置和核间通信方法
US8046615B2 (en) 2007-10-19 2011-10-25 Denso Corporation Microcomputer system with reduced power consumption
US8024590B2 (en) 2007-12-10 2011-09-20 Intel Corporation Predicting future power level states for processor cores
US7962771B2 (en) 2007-12-31 2011-06-14 Intel Corporation Method, system, and apparatus for rerouting interrupts in a multi-core processor
US8615647B2 (en) * 2008-02-29 2013-12-24 Intel Corporation Migrating execution of thread between cores of different instruction set architecture in multi-core processor and transitioning each core to respective on / off power state
US7910265B2 (en) 2008-03-14 2011-03-22 Infineon Technologies Ag Reticle for use in a semiconductor lithographic system and method for modifying the same
US8359487B2 (en) 2008-03-19 2013-01-22 Sony Corporation System and method for effectively performing a clock adjustment procedure
US20090307408A1 (en) * 2008-06-09 2009-12-10 Rowan Nigel Naylor Peer-to-Peer Embedded System Communication Method and Apparatus
US7650488B2 (en) * 2008-06-18 2010-01-19 Intel Corporation Communication between processor core partitions with exclusive read or write to descriptor queues for shared memory space
US7764132B2 (en) 2008-07-30 2010-07-27 International Business Machines Corporation All digital frequency-locked loop circuit method for clock generation in multicore microprocessor systems
US8112647B2 (en) 2008-08-27 2012-02-07 Globalfoundries Inc. Protocol for power state determination and demotion
US8103816B2 (en) * 2008-10-28 2012-01-24 Intel Corporation Technique for communicating interrupts in a computer system
US8239699B2 (en) * 2009-06-26 2012-08-07 Intel Corporation Method and apparatus for performing energy-efficient network packet processing in a multi processor core system
US8358651B1 (en) * 2009-09-21 2013-01-22 Marvell International Ltd. Switch device having a plurality of processing cores
US8566836B2 (en) 2009-11-13 2013-10-22 Freescale Semiconductor, Inc. Multi-core system on chip
US8359436B2 (en) 2009-12-18 2013-01-22 Intel Corporation Core snoop handling during performance state and power state transitions in a distributed caching agent
US20110153984A1 (en) 2009-12-21 2011-06-23 Andrew Wolfe Dynamic voltage change for multi-core processing
US8195883B2 (en) * 2010-01-27 2012-06-05 Oracle America, Inc. Resource sharing to reduce implementation costs in a multicore processor
US20110265090A1 (en) 2010-04-22 2011-10-27 Moyer William C Multiple core data processor with usage monitoring
US8751833B2 (en) * 2010-04-30 2014-06-10 Arm Limited Data processing system
US8457920B2 (en) * 2010-05-28 2013-06-04 International Business Machines Corporation Performance improvement for a multi-chip system via kerf area interconnect
US8615672B2 (en) 2010-06-30 2013-12-24 Via Technologies, Inc. Multicore processor power credit management to allow all processing cores to operate at elevated frequency
US8943334B2 (en) 2010-09-23 2015-01-27 Intel Corporation Providing per core voltage and frequency control
US8635476B2 (en) 2010-12-22 2014-01-21 Via Technologies, Inc. Decentralized power management distributed among multiple processor cores
US8631256B2 (en) 2010-12-22 2014-01-14 Via Technologies, Inc. Distributed management of a shared power source to a multi-core microprocessor
US8972707B2 (en) 2010-12-22 2015-03-03 Via Technologies, Inc. Multi-core processor with core selectively disabled by kill instruction of system software and resettable only via external pin
US8782451B2 (en) 2010-12-22 2014-07-15 Via Technologies, Inc. Power state synchronization in a multi-core processor
US8637212B2 (en) 2010-12-22 2014-01-28 Via Technologies, Inc. Reticle set modification to produce multi-core dies
US8930676B2 (en) 2010-12-22 2015-01-06 Via Technologies, Inc. Master core discovering enabled cores in microprocessor comprising plural multi-core dies

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7533316B2 (en) * 2006-03-31 2009-05-12 Intel Corporation Method and apparatus for disabling and swapping cores in a multi-core microprocessor
CN101000596A (zh) * 2007-01-22 2007-07-18 北京中星微电子有限公司 一种可实现芯片内多核间通信的芯片及通信方法
TW200945048A (en) * 2008-04-15 2009-11-01 Freescale Semiconductor Inc Multi-core processing system
CN101901177A (zh) * 2010-01-22 2010-12-01 威盛电子股份有限公司 多核微处理器及其除错方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI614961B (zh) * 2016-04-25 2018-02-11 聯發科技股份有限公司 電力傳送系統及多核處理晶片

Also Published As

Publication number Publication date
US20120239847A1 (en) 2012-09-20
TW201510728A (zh) 2015-03-16
TW201237629A (en) 2012-09-16
CN104503941A (zh) 2015-04-08
CN102521191A (zh) 2012-06-27
CN102521191B (zh) 2015-01-21
CN104503941B (zh) 2017-10-13
TWI514155B (zh) 2015-12-21
US9460038B2 (en) 2016-10-04

Similar Documents

Publication Publication Date Title
TWI474175B (zh) 核心處理器之內部旁路匯流排
TWI437361B (zh) 產生多核心晶片之光罩組改良
KR100690557B1 (ko) 시스템 온 칩 디자인을 위한 컴포넌트로서의 독립프로세서 서브시스템
US6266797B1 (en) Data transfer network on a computer chip using a re-configurable path multiple ring topology
US8051238B2 (en) On-chip bus architectures with interconnected switch points, semiconductor devices using the same and methods for communicating data in an on-chip bus architecture
EP3213220B1 (en) Methods and circuits for deadlock avoidance
US7162546B2 (en) Reordering unrelated transactions from an ordered interface
CN101169771B (zh) 一种axi内部总线的外部接口装置及其数据传输方法
WO2002077835A1 (fr) Dispositif a semi-conducteurs de commande de communication et systeme d'interface
US8457920B2 (en) Performance improvement for a multi-chip system via kerf area interconnect
US20030141904A1 (en) Method and apparatus for communication using a distributed multiplexed bus
US6667636B2 (en) DSP integrated with programmable logic based accelerators
JP4853951B2 (ja) データ処理装置
TWI601150B (zh) 至少部分自晶圓產生的至少一晶粒且其包括至少一複製積體電路
JP2008269078A (ja) バス制御装置
Acasandrei et al. Open library of IP module interfaces for AMBA bus
JP2505032B2 (ja) 半導体集積回路
JP2005276033A (ja) マルチプロセッサモジュール
JP2013134593A (ja) Lsi装置
JPH05235281A (ja) 半導体集積回路
JPH05347610A (ja) バスインターフェース回路
JPH0664540B2 (ja) 大規模集積回路のテスト回路
JPH05183056A (ja) 半導体集積回路
JPS63204452A (ja) 演算処理装置におけるデ−タ授受方式
JP2007265000A (ja) バスマスタ回路/スレーブ回路切替え回路