TW202139002A - 多核心處理器電路 - Google Patents
多核心處理器電路 Download PDFInfo
- Publication number
- TW202139002A TW202139002A TW109112108A TW109112108A TW202139002A TW 202139002 A TW202139002 A TW 202139002A TW 109112108 A TW109112108 A TW 109112108A TW 109112108 A TW109112108 A TW 109112108A TW 202139002 A TW202139002 A TW 202139002A
- Authority
- TW
- Taiwan
- Prior art keywords
- processor
- core
- processor cores
- circuit according
- cores
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25257—Microcontroller
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Microcomputers (AREA)
- Hardware Redundancy (AREA)
- Exchange Systems With Centralized Control (AREA)
Abstract
一種多核心處理器電路,包括多個處理器核心、程式記憶體、第一匯流排、資料記憶體及第二匯流排。程式記憶體用以儲存至少一程式指令。第一匯流排耦接於這些處理器核心與程式記憶體之間。資料記憶體用以儲存至少一程式資料。第二匯流排耦接於多個處理器核心與資料記憶體之間。中這些處理器核心逐個被致能以存取程式記憶體及資料記憶體,且其餘的處理器核心被關閉。
Description
本發明是有關於一種處理器電路,且特別是有關於一種多核心處理器電路。
由於電子技術的進步,透過使用多核處理器可以實現更高的計算複雜性。為了降低晶片的成本,多核心設計中通常需要共享記憶體架構。常規的多核心記憶體共享設計需要仲裁器中的額外成本,尤其是程式記憶體和資料記憶體。於是,為共享程式記憶體和用於多核心設計的資料記憶體提出了一種新的架構,以透過使用分時共享方法,不存在記憶體仲裁器的開銷。
本發明提供一種多核心處理器電路,可省略記憶體仲裁器的開銷。
本發明的多核心處理器電路,包括多個處理器核心、程式記憶體、第一匯流排、資料記憶體及第二匯流排。程式記憶體用以儲存至少一程式指令。第一匯流排耦接於這些處理器核心與程式記憶體之間。資料記憶體用以儲存至少一程式資料。第二匯流排耦接於多個處理器核心與資料記憶體之間。其中,這些處理器核心逐個被致能以存取程式記憶體及資料記憶體,且其餘的處理器核心被關閉。
基於上述,本發明實施例的多核心處理器電路,其中多個處理器核心不會同時運行,因此這些處理器核心與程序記憶體或資料記憶體的存取永遠不會發生衝突。因此,不需要額外的仲裁程序設計來協調程序記憶體和資料記憶體。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
圖1為依據本發明一實施例的多核心處理器電路的示意圖。請參照圖1,在本實施例中,多核心處理器電路100包括多個處理器核心110_1~110_n、程式記憶體120、第一匯流排130、資料記憶體140、第二匯流排150、控制電路160及時脈產生器170,其中程式記憶體120用以儲存至少一程式指令INST,並且資料記憶體140用以儲存至少一程式資料DATA。其中,n為二以上的正整數。
第一匯流排130,耦接於這些處理器核心110_1~110_n與程式記憶體120之間,並且第二匯流排150,耦接於這些處理器核心110_1~110_n與資料記憶體140之間。控制電路160耦接處理器核心110_1~110_n,以逐個致能這些處理器核心110_1~110_n,並且關閉其餘的處理器核心110_1~110_n。接著,當處理器核心110_1~110_n的其中之一被致能後,被致能的處理器核心110_1~110_n可以正常運作以存取程式記憶體120及資料記憶體140。其中,致能的處理器核心110_1~110_n可透過第一匯流排130存取程式記憶體120及/或透過第二匯流排150存取資料記憶體140。
進一步來說,時脈產生器170用以產生操作時脈CLK至控制電路160,並且控制電路160僅將操作時脈CLK提供至被致能的處理器核心110_1~110_n,而其餘的處理器核心110_1~110_n不會接收到操作時脈CLK。在致能的處理器核心110_1~110_n的致能期間(亦即所分配的操作期間)結束後,控制電路160會將操作時脈CLK提供至下一個被致能的處理器核心110_1~110_n。
在本發明實施例中,控制電路160包括計數器161及多個暫存器A~N,其中暫存器A~N個別與這些處理器核心110_1~110_n對應,用以決定處理器核心110_1~110_n個別的致能期間。換言之,暫存器A~N中所儲存的值決定處理器核心110_1~110_n個別的致能期間。並且,處理器核心110_1~110_n個別的致能期間TA、TB決定於各個處理器核心110_1~110_n的性質,亦即相同性質的處理器核心110_1~110_n可具有相同時間長度的致能期間,並且不同性質的處理器核心110_1~110_n可具有不同時間長度的致能期間。此外,具有簡單處理任務的處理器核心110_1~110_n可具有較短時間的致能期間,並且具有複雜處理任務的處理器核心110_1~110_n可具有較長時間的致能期間。亦即,處理器核心110_1~110_n的致能期間可取決於任務複雜性和每個處理器核心110_1~110_n的計算能力。
計數器161用以計數這些處理器核心110_1~110_n的致能期間。進一步來說,計數器161依據操作時脈CLK進行計數,在控制電路160改變操作時脈CLK的提供至的處理器核心110_1~110_n時重置,且接著依據操作時脈CLK進行計數,並且在計數器161的值達到對應的暫存器A~N中所儲存的值時,將操作時脈CLK提供至下一處理器核心110_1~110_n。
圖2為依據本發明一實施例的多核心處理器電路的時序示意圖。請參照圖1及圖2,在本實施例中,是以兩個處理器核心110_1及110_2為例,並且處理器核心110_1的致能期間為TA(對應暫存器A),處理器核心110_2的致能期間為TB(對應暫存器B)。在此,一個總體循環期間可以為TA+TB。並且,假設處理器核心110_1具有簡單的處理任務,因此具有較短時間的致能期間TA,並且假設處理器核心110_2具有複雜的處理任務,因此具有較長時間的致能期間TB。
在致能期間TA開始時,計數器161被重置,且接著進行計數。當計數器161的值等於暫存器A所儲存的值時,代表致能期間TA到達結束時間點,此時控制電路160會將操作時脈CLK提供至處理器核心110_2。在致能期間TA,處理器核心110_1依序執行讀取程式記憶體120的操作循環PM及讀取資料記憶體140的操作循環DM,其中操作循環PM及DM的數量為用以說明,本發明實施例不以此為限。
接著,在致能期間TB開始時,計數器161會再被重置,且接著進行計數。當計數器161的值等於暫存器B所儲存的值時,代表致能期間TB到達結束時間點,此時控制電路160會將操作時脈CLK再提供至處理器核心110_1。在致能期間TB,處理器核心110_2同樣會依序執行讀取程式記憶體120的操作循環PM及讀取資料記憶體140的操作循環DM。
在以兩個處理器核心110_1及110_2的實施例中,處理器核心110_1對應的暫存器A可以設置為1200,處理器核心110_2對應的暫存器B可以設置為1200,亦即處理器核心110_1及110_2的致能期間的比率可以為1:1。另一實施中,處理器核心110_1對應的暫存器A可以設置為2400,處理器核心110_2對應的暫存器B可以設置為2400,亦即處理器核心110_1及110_2的致能期間的比率仍可以為1:1。在本發明實施例中,取決於任務的複雜性和每個處理器核心的計算能力,即使處理器核心的致能期間的比率相同,也可以設置得更靈活。
綜上所述,本發明實施例的多核心處理器電路,其中多個處理器核心不會同時運行,因此這些處理器核心與程序記憶體或資料記憶體的存取永遠不會發生衝突。因此,不需要額外的仲裁程序設計來協調程序記憶體和資料記憶體。透過設定暫存器內所儲存的值,多核心處理器電路於時間共享上的另一個優點是時間共享的靈活性。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
100:多核心處理器電路
110_1~110_n:處理器核心
120:程式記憶體
130:第一匯流排
140:資料記憶體
150:第二匯流排
160:控制電路
161:計數器
170:時脈產生器
A~N:暫存器
CLK:操作時脈
DATA:程式資料
INST:程式指令
PM、DM:操作循環
TA、TB:致能期間
圖1為依據本發明一實施例的多核心處理器電路的示意圖。
圖2為依據本發明一實施例的多核心處理器電路的時序示意圖。
100:多核心處理器電路
110_1~110_n:處理器核心
120:程式記憶體
130:第一匯流排
140:資料記憶體
150:第二匯流排
160:控制電路
161:計數器
170:時脈產生器
A~N:暫存器
CLK:操作時脈
DATA:程式資料
INST:程式指令
Claims (10)
- 一種多核心處理器電路,包括: 多個處理器核心; 一程式記憶體,用以儲存至少一程式指令; 一第一匯流排,耦接於該些處理器核心與該程式記憶體之間; 一資料記憶體,用以儲存至少一程式資料;以及 一第二匯流排,耦接於該多個處理器核心與該資料記憶體之間, 其中該些處理器核心逐個被致能以存取該程式記憶體及該資料記憶體,且其餘的該些處理器核心被關閉。
- 如請求項1所述的多核心處理器電路,更包括一控制電路,耦接該些處理器核心,以逐個致能該些處理器核心。
- 如請求項2所述的多核心處理器電路,更包括一時脈產生器,用以產生一操作時脈至該控制電路,其中該控制電路僅將該操作時脈提供至被致能的處理器核心。
- 如請求項2所述的多核心處理器電路,其中該控制電路具有多個暫存器,該些暫存器個別與該些處理器核心對應,並且該些處理器核心個別的致能期間決定於對應的暫存器中所儲存的值。
- 如請求項4所述的多核心處理器電路,其中該些處理器核心個別的致能期間決定於各該些處理器核心的性質。
- 如請求項5所述的多核心處理器電路,其中相同性質的處理器核心具有相同時間長度的致能期間,並且不同性質的處理器核心具有不同時間長度的致能期間。
- 如請求項5所述的多核心處理器電路,其中具有簡單處理任務的處理器核心具有較短時間的致能期間,並且具有複雜處理任務的處理器核心具有較長時間的致能期間。
- 如請求項4所述的多核心處理器電路,其中該控制電路包括一計數器,用以計數該些處理器核心的致能期間。
- 如請求項8所述的多核心處理器電路,其中該計數器依據該操作時脈進行計數,在該控制電路改變該操作時脈的提供至的處理器核心時重置,並且在該計數器的值達到對應的暫存器中所儲存的值時,將該操作時脈提供至下一處理器核心。
- 如請求項1所述的多核心處理器電路,其中致能的處理器核心透過該第一匯流排存取該程式記憶體且透過該第二匯流排存取該資料記憶體。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109112108A TWI816032B (zh) | 2020-04-10 | 2020-04-10 | 多核心處理器電路 |
CN202110330711.5A CN113515063B (zh) | 2020-04-10 | 2021-03-26 | 多核心处理器电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109112108A TWI816032B (zh) | 2020-04-10 | 2020-04-10 | 多核心處理器電路 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202139002A true TW202139002A (zh) | 2021-10-16 |
TWI816032B TWI816032B (zh) | 2023-09-21 |
Family
ID=78062071
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109112108A TWI816032B (zh) | 2020-04-10 | 2020-04-10 | 多核心處理器電路 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113515063B (zh) |
TW (1) | TWI816032B (zh) |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5367678A (en) * | 1990-12-06 | 1994-11-22 | The Regents Of The University Of California | Multiprocessor system having statically determining resource allocation schedule at compile time and the using of static schedule with processor signals to control the execution time dynamically |
BR9509870A (pt) * | 1994-12-08 | 1997-11-25 | Intel Corp | Método e aparelho para permitir a um processador acessar um componente externo através de um barramento privado ou um barramento compartílhado |
US6691216B2 (en) * | 2000-11-08 | 2004-02-10 | Texas Instruments Incorporated | Shared program memory for use in multicore DSP devices |
US7237071B2 (en) * | 2001-12-20 | 2007-06-26 | Texas Instruments Incorporated | Embedded symmetric multiprocessor system with arbitration control of access to shared resources |
JP4222803B2 (ja) * | 2002-09-11 | 2009-02-12 | Necエレクトロニクス株式会社 | データ処理装置およびデータ処理回路 |
JP2006345011A (ja) * | 2005-06-07 | 2006-12-21 | Sony Corp | 通信装置 |
US8782451B2 (en) * | 2010-12-22 | 2014-07-15 | Via Technologies, Inc. | Power state synchronization in a multi-core processor |
US20130031327A1 (en) * | 2011-07-28 | 2013-01-31 | Yung Chang | System and method for allocating cache memory |
CN103092570A (zh) * | 2011-10-31 | 2013-05-08 | 佑华微电子股份有限公司 | 平行处理来自单一程序存储器的单芯片双核心微处理器架构 |
US9535860B2 (en) * | 2013-01-17 | 2017-01-03 | Intel Corporation | Arbitrating memory accesses via a shared memory fabric |
US9471133B2 (en) * | 2013-08-28 | 2016-10-18 | Via Technologies, Inc. | Service processor patch mechanism |
GB2542853B (en) * | 2015-10-02 | 2021-12-15 | Cambridge Consultants | Processing apparatus and methods |
CN107329810B (zh) * | 2016-04-28 | 2023-09-08 | 恩智浦美国有限公司 | 用于多核处理器的信号机 |
US11301142B2 (en) * | 2016-06-06 | 2022-04-12 | Vmware, Inc. | Non-blocking flow control in multi-processing-entity systems |
US11024361B2 (en) * | 2017-01-06 | 2021-06-01 | Qualcomm Incorporated | Coincident memory bank access via cross connected shared bank resources |
-
2020
- 2020-04-10 TW TW109112108A patent/TWI816032B/zh active
-
2021
- 2021-03-26 CN CN202110330711.5A patent/CN113515063B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113515063A (zh) | 2021-10-19 |
CN113515063B (zh) | 2024-03-12 |
TWI816032B (zh) | 2023-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5768559A (en) | Multiple bank structured memory access device having flexible setting of a pipeline stage number | |
US9971635B2 (en) | Method and apparatus for a hierarchical synchronization barrier in a multi-node system | |
US5423009A (en) | Dynamic sizing bus controller that allows unrestricted byte enable patterns | |
KR101642646B1 (ko) | 인터럽트가능 저장 익스클루시브 | |
JPH04313121A (ja) | インストラクションメモリ装置 | |
JPS5924462B2 (ja) | 共有メモリのアクセス制御方式 | |
JPS58151631A (ja) | Dmaバス負荷可変装置 | |
TWI816032B (zh) | 多核心處理器電路 | |
JP2008046771A (ja) | ダイレクトメモリアクセスコントローラ | |
CN114995587B (zh) | 时钟信号获得方法、装置、芯片及存储介质 | |
US6691182B2 (en) | DMA controller in which bus access ratio can be set | |
US9627014B2 (en) | Multiple port shared memory | |
JP3562215B2 (ja) | マイクロコンピュータ及び電子機器 | |
Prakash et al. | Custom instructions with local memory elements without expensive DMA transfers | |
EP4145277A1 (en) | Data processing device, chip, and data processing method | |
Tse et al. | ASYNMPU: a fully asynchronous CISC microprocessor | |
JP5929600B2 (ja) | 情報処理システム、情報処理装置、及び電子装置 | |
JPH03161883A (ja) | マイクロプロセッサ | |
JP2021005327A (ja) | 情報処理装置 | |
JP2013077216A (ja) | プロセッサ | |
JP2004110742A (ja) | Dmaコントローラ | |
JPS62166463A (ja) | デ−タ転送方式 | |
JPS62177652A (ja) | マルチcpuシステムの制御装置 | |
WO2015136686A1 (ja) | 情報処理装置及び方法 | |
JPH0258152A (ja) | マイクロプロセッサ |