CN111858073B - 具有ooda多分区可替换机制的处理器 - Google Patents

具有ooda多分区可替换机制的处理器 Download PDF

Info

Publication number
CN111858073B
CN111858073B CN202010865739.4A CN202010865739A CN111858073B CN 111858073 B CN111858073 B CN 111858073B CN 202010865739 A CN202010865739 A CN 202010865739A CN 111858073 B CN111858073 B CN 111858073B
Authority
CN
China
Prior art keywords
partition
instruction
processor
partitions
processing core
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202010865739.4A
Other languages
English (en)
Other versions
CN111858073A (zh
Inventor
谭光明
邵恩
张春明
段勃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Western Institute Of Advanced Technology Institute Of Computing Chinese Academy Of Sciences
Original Assignee
Western Institute Of Advanced Technology Institute Of Computing Chinese Academy Of Sciences
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 Western Institute Of Advanced Technology Institute Of Computing Chinese Academy Of Sciences filed Critical Western Institute Of Advanced Technology Institute Of Computing Chinese Academy Of Sciences
Publication of CN111858073A publication Critical patent/CN111858073A/zh
Application granted granted Critical
Publication of CN111858073B publication Critical patent/CN111858073B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Advance Control (AREA)

Abstract

本发明公开了一种具有OODA多分区可替换机制的处理器,该处理器包括多个特定处理核心分区和一个通用处理核心分区;每个所述特定处理核心分区内设有多个计算单元PE;所述通用处理核心分区内设有多个ALU计算单元,处理器每条指令分别占用五个分区的部分或全部资源。本发明利用OODA多分区结构,来设计功能可替换的多核处理器。在处理多步骤作业任务时,只需要一条指令即可在四个不同的分区上完成处理,能够随指令需求,按需调整处理器计算核心组织结构,合理利用计算资源,使得处理效率明显高于比传统处理器的处理效率。

Description

具有OODA多分区可替换机制的处理器
技术领域
本发明涉及一种具有OODA多分区可替换机制的处理器。
背景技术
随着计算机体系结构学科的不断进步,针对处理器的结构设计逐渐向“多核”化的设计思路延伸。现有多核处理器结构,包括SMP、NUMA、MPP,以及共享存储器结构。
然而,现有处理器结构设计往往以相同计算单元,来构建处理器上的各个独立计算核心(即:“核”)。此外,现有处理器结构以固定的多核结构为主,很难能够随指令需求,按需调整处理器计算核心组织结构。
OODA环(OODA Loop)理论最早由美国空军上校John Boyd于1966年提出,是用于描述军事指挥决策过程的主要模型框架。OODA环依次由:观察(Observe),调整(Orient),想定(Decide),行动(Act),在内共四步以循环方式执行军事决策。OODA环理论完成决策或复杂问题的思维过程,整是人脑理性思维的思维定式。
发明内容
本发明的目的是提供一种具有OODA多分区可替换机制的处理器,以解决现有处理器结构以固定的多核结构为主,很难能够随指令需求,按需调整处理器计算核心组织结构的问题。
为解决上述技术问题,本发明提供一种具有OODA多分区可替换机制的处理器,包括多个特定处理核心分区和一个通用处理核心分区;每个所述特定处理核心分区内设有多个计算单元PE;所述通用处理核心分区内设有多个ALU计算单元,处理器每条指令分别占用五个分区的部分或全部资源。
进一步地,处理器每条指令占用各个分区资源的数量,由各个分区的调度器指定;运行指令时根据各个分区的调度器,为每条指令分配各个分区的计算资源。
进一步地,处理器运行指令时执行以下步骤:
S1:通过指令存储器取出指令;
S2:通过指令译码器将指令存储器取出的所述指令翻译为机器指令并进入指令队列;
S3:根据当前指令队列中队首机器指令所需的计算单元,通过分区选择控制器选择与之对应的多个特定处理核心分区,作为可运行分区。
进一步地,该处理器包括四个特定处理核心分区和一个通用处理核心分区。
进一步地,所述四个特定处理核心分区中均分别包括四类计算单元,所述四类计算单元分别为:观察计算单元O1、调整计算单元O2、想定计算单元D3和行动计算单元A4。
进一步地,根据当前指令队列中指令需要占用的分区,通过分区选择控制器在五个可选分区中选择四个需要执行计算的分区,当处理器完成分区选择后,被选择的分区进入运行状态,按照处理器的指令执行顺序分别占用各个可运行分区的计算单元,执行计算指令;未被选择的分区内将被暂时断电,该分区将进入停机节能状态。
进一步地,所述多个特定处理核心分区和一个通用处理核心分区分别共享同一内存,且各分区之间通过该共享内存进行分区间的数据传递。
本发明的有益效果为:在处理多步骤作业任务时,只需要一条指令即可在四个不同的分区上完成处理,能够随指令需求,按需调整处理器计算核心组织结构,合理利用计算资源,使得处理效率明显高于比传统处理器的处理效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,在这些附图中使用相同的参考标号来表示相同或相似的部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明一个实施例的分区结构示意图;
图2为本发明一个实施例的处理器可运行分区替换举例示意图;
图3为本发明一个实施例的可运行分区功能结构示意图。
具体实施方式
如图1所示的具有OODA多分区可替换机制的处理器,包括多个特定处理核心分区和一个通用处理核心分区;每个所述特定处理核心分区内设有多个计算单元PE;所述通用处理核心分区内设有多个ALU计算单元,处理器每条指令分别占用五个分区的部分或全部资源。处理器每条指令占用各个分区资源的数量,由各个分区的调度器指定;运行指令时根据各个分区的调度器,为每条指令分配各个分区的计算资源。
特别地,根据OODA环(OODA Loop)理论,可以将该处理器分为四个特定处理核心分区和一个通用处理核心分区;所述四个特定处理核心分区中均分别包括四类计算单元,所述四类计算单元分别为:观察(Observe)计算单元O1、调整(Orient)计算单元O2、想定(Decide)计算单元D3和行动(Act)计算单元A4。
针对具有OODA个独立步骤的工作流计算指令,可通过四个核心分区和共享处理器内存方式,以流水线方式处理工作流,实现“芯片级”多工作流并行执行,提高处理工作流的处理效率。
处理器运行指令时执行以下步骤:
S1:通过L1 Cache指令存储器取出指令;
S2:通过指令译码器将指令存储器取出的所述指令翻译为机器指令并进入指令队列;
S3:根据当前指令队列中队首机器指令所需的计算单元,通过分区选择控制器选择与之对应的四个特定处理核心分区,作为可运行分区。
如图2所示,根据当前指令队列中指令需要占用的分区,通过分区选择控制器在五个可选分区中选择四个需要执行计算的分区,当处理器完成分区选择后,被选择的分区进入运行状态,按照处理器的指令执行顺序分别占用各个可运行分区的计算单元,执行计算指令;未被选择的分区内将被暂时断电,该分区将进入停机节能状态。该处理器能够根据业务类型优化分配计算单元,合理利用计算资源,可以保证不浪费,节省开销。
如图3所示,所述多个特定处理核心分区和一个通用处理核心分区分别共享同一内存,且各分区之间通过该共享内存进行分区间的数据传递,以便于数据访问且方便替换分区数据。
本专利的处理器,工作流指令类型可扩展。本专利的处理器,除可用于执行OODA四个执行步骤的指令外,还可以按照当前指令集需要执行的计算需求,通过替换分区方式,选择可运行的计算分区。除满足OODA基本指令集的指令外,满足OODA扩展指令集指令需求。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (4)

1.一种具有OODA多分区可替换机制的处理器,其特征在于,包括多个特定处理核心分区和一个通用处理核心分区;每个所述特定处理核心分区内设有多个计算单元PE;所述通用处理核心分区内设有多个ALU计算单元,处理器每条指令分别占用五个分区的部分或全部资源;
该处理器包括四个特定处理核心分区和一个通用处理核心分区;所述四个特定处理核心分区中均分别包括四类计算单元,所述四类计算单元分别为:观察计算单元O1、调整计算单元O2、想定计算单元D3和行动计算单元A4;
根据当前指令队列中指令需要占用的分区,通过分区选择控制器在五个可选分区中选择四个需要执行计算的分区,当处理器完成分区选择后,被选择的分区进入运行状态,按照处理器的指令执行顺序分别占用各个可运行分区的计算单元,执行计算指令;未被选择的分区内将被暂时断电,该分区将进入停机节能状态。
2.根据权利要求1所述的具有OODA多分区可替换机制的处理器,其特征在于,处理器每条指令占用各个分区资源的数量,由各个分区的调度器指定;运行指令时根据各个分区的调度器,为每条指令分配各个分区的计算资源。
3.根据权利要求2所述的具有OODA多分区可替换机制的处理器,其特征在于,处理器运行指令时执行以下步骤:
S1:通过指令存储器取出指令;
S2:通过指令译码器将指令存储器取出的所述指令翻译为机器指令并进入指令队列;
S3:根据当前指令队列中队首机器指令所需的计算单元,通过分区选择控制器选择与之对应的多个特定处理核心分区,作为可运行分区。
4.根据权利要求1所述的具有OODA多分区可替换机制的处理器,其特征在于,所述多个特定处理核心分区和一个通用处理核心分区分别共享同一内存,且各分区之间通过该共享内存进行分区间的数据传递。
CN202010865739.4A 2020-04-30 2020-08-25 具有ooda多分区可替换机制的处理器 Active CN111858073B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010369426.XA CN111506433A (zh) 2020-04-30 2020-04-30 具有ooda多分区可替换机制的处理器
CN202010369426X 2020-04-30

Publications (2)

Publication Number Publication Date
CN111858073A CN111858073A (zh) 2020-10-30
CN111858073B true CN111858073B (zh) 2023-08-01

Family

ID=71876614

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202010369426.XA Pending CN111506433A (zh) 2020-04-30 2020-04-30 具有ooda多分区可替换机制的处理器
CN202010865739.4A Active CN111858073B (zh) 2020-04-30 2020-08-25 具有ooda多分区可替换机制的处理器

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202010369426.XA Pending CN111506433A (zh) 2020-04-30 2020-04-30 具有ooda多分区可替换机制的处理器

Country Status (1)

Country Link
CN (2) CN111506433A (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103207782A (zh) * 2013-03-27 2013-07-17 北京航空航天大学 基于multi-kernel MOS 的分区系统构建方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6587938B1 (en) * 1999-09-28 2003-07-01 International Business Machines Corporation Method, system and program products for managing central processing unit resources of a computing environment
US20120215574A1 (en) * 2010-01-16 2012-08-23 Management Consulting & Research, LLC System, method and computer program product for enhanced performance management
CN101788920A (zh) * 2010-02-05 2010-07-28 北京航空航天大学 一种基于处理器分区技术的cpu虚拟化方法
CN106528475A (zh) * 2016-11-21 2017-03-22 郑州云海信息技术有限公司 一种支持单八路和双四路动态分区的多路计算机系统
CN109901820B (zh) * 2019-01-17 2022-03-04 西北工业大学 一种符合do-178b/c的机载软件敏捷开发过程的优化方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103207782A (zh) * 2013-03-27 2013-07-17 北京航空航天大学 基于multi-kernel MOS 的分区系统构建方法

Also Published As

Publication number Publication date
CN111858073A (zh) 2020-10-30
CN111506433A (zh) 2020-08-07

Similar Documents

Publication Publication Date Title
US11782870B2 (en) Configurable heterogeneous AI processor with distributed task queues allowing parallel task execution
CN112465129B (zh) 片内异构人工智能处理器
Kim et al. Composable lightweight processors
CN1117319C (zh) 在多线程处理器中改变线程优先级的方法和装置
CN106909444B (zh) 用于指定应用线程性能状态的指令的指令处理装置及相关方法
US20140129808A1 (en) Migrating tasks between asymmetric computing elements of a multi-core processor
WO2015106533A1 (zh) 基于协处理器的作业调度处理方法及装置
US20140137123A1 (en) Microcomputer for low power efficient baseband processing
CN106201707A (zh) 处理器资源分配方法及装置
EP1416377B1 (en) Processor system with a plurality of processor cores for executing tasks sequentially or in parallel
CN1825286A (zh) 嵌入式sram操作系统线程实现和线程状态转换的方法
CN107180010A (zh) 异构计算系统和方法
KR20220016859A (ko) 디지털 처리 시스템에서 매트릭스 작업을 스케줄링하기 위한 방법 및 장치
Madhu et al. Compiling HPC kernels for the REDEFINE CGRA
Li et al. Symbiotic scheduling of concurrent GPU kernels for performance and energy optimizations
Thomas et al. Dynamic optimizations in gpu using roofline model
CN111045800A (zh) 一种基于短作业优先的优化gpu性能的方法及系统
Poss et al. Apple-CORE: Microgrids of SVP Cores--Flexible, General-Purpose, Fine-Grained Hardware Concurrency Management
CN111858073B (zh) 具有ooda多分区可替换机制的处理器
EP2652597B1 (en) Method and apparatus for scheduling the issue of instructions in a microprocessor using multiple phases of execution
Garcia et al. A dynamic schema to increase performance in many-core architectures through percolation operations
Hussain et al. AMMC: Advanced multi-core memory controller
CN111221640B (zh) 一种gpu-cpu协同节能方法
CN111984328A (zh) 具有ooda循环分区机制的流式处理器
CN111813562B (zh) 具有ooda多分区io资源池机制的服务器主机

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant