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

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

Info

Publication number
CN111506433A
CN111506433A CN202010369426.XA CN202010369426A CN111506433A CN 111506433 A CN111506433 A CN 111506433A CN 202010369426 A CN202010369426 A CN 202010369426A CN 111506433 A CN111506433 A CN 111506433A
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.)
Pending
Application number
CN202010369426.XA
Other languages
English (en)
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
Priority to CN202010369426.XA priority Critical patent/CN111506433A/zh
Publication of CN111506433A publication Critical patent/CN111506433A/zh
Priority to CN202010865739.4A priority patent/CN111858073B/zh
Pending legal-status Critical Current

Links

Images

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, 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

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:通过L1Cache指令存储器取出指令;
S2:通过指令译码器将指令存储器取出的所述指令翻译为机器指令并进入指令队列;
S3:根据当前指令队列中队首机器指令所需的计算单元,通过分区选择控制器选择与之对应的四个特定处理核心分区,作为可运行分区。
如图2所示,根据当前指令队列中指令需要占用的分区,通过分区选择控制器在五个可选分区中选择四个需要执行计算的分区,当处理器完成分区选择后,被选择的分区进入运行状态,按照处理器的指令执行顺序分别占用各个可运行分区的计算单元,执行计算指令;未被选择的分区内将被暂时断电,该分区将进入停机节能状态。该处理器能够根据业务类型优化分配计算单元,合理利用计算资源,可以保证不浪费,节省开销。
如图3所示,所述多个特定处理核心分区和一个通用处理核心分区分别共享同一内存,且各分区之间通过该共享内存进行分区间的数据传递,以便于数据访问且方便替换分区数据。
本专利的处理器,工作流指令类型可扩展。本专利的处理器,除可用于执行OODA四个执行步骤的指令外,还可以按照当前指令集需要执行的计算需求,通过替换分区方式,选择可运行的计算分区。除满足OODA基本指令集的指令外,满足OODA扩展指令集指令需求。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (7)

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

Priority Applications (2)

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

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
CN111506433A true CN111506433A (zh) 2020-08-07

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 After (1)

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

Country Status (1)

Country Link
CN (2) CN111506433A (zh)

Family Cites Families (6)

* 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虚拟化方法
CN103207782B (zh) * 2013-03-27 2014-02-26 北京航空航天大学 基于multi-kernel MOS 的分区系统构建方法
CN106528475A (zh) * 2016-11-21 2017-03-22 郑州云海信息技术有限公司 一种支持单八路和双四路动态分区的多路计算机系统
CN109901820B (zh) * 2019-01-17 2022-03-04 西北工业大学 一种符合do-178b/c的机载软件敏捷开发过程的优化方法

Also Published As

Publication number Publication date
CN111858073B (zh) 2023-08-01
CN111858073A (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
US9329900B2 (en) Hetergeneous processor apparatus and method
CN1117319C (zh) 在多线程处理器中改变线程优先级的方法和装置
CN104102474B (zh) 信息处理装置和信息处理方法
CN106909444B (zh) 用于指定应用线程性能状态的指令的指令处理装置及相关方法
US9672046B2 (en) Apparatus and method for intelligently powering heterogeneous processor components
US9448829B2 (en) Hetergeneous processor apparatus and method
US20140129808A1 (en) Migrating tasks between asymmetric computing elements of a multi-core processor
US9632790B2 (en) Select logic for the instruction scheduler of a multi strand out-of-order processor based on delayed reconstructed program order
CN103226463A (zh) 用于使用预解码数据调度指令的方法和装置
EP1416377B1 (en) Processor system with a plurality of processor cores for executing tasks sequentially or in parallel
KR20010095073A (ko) 다중 스레드 초장 명령어 프로세서, 명령어 처리 방법 및그 제품
US9639372B2 (en) Apparatus and method for heterogeneous processors mapping to virtual cores
US20050278720A1 (en) Distribution of operating system functions for increased data processing performance in a multi-processor architecture
Madhu et al. Compiling HPC kernels for the REDEFINE CGRA
CN100440153C (zh) 处理器
EP2652597B1 (en) Method and apparatus for scheduling the issue of instructions in a microprocessor using multiple phases of execution
KR101765830B1 (ko) 멀티 코어 시스템 및 그 구동 방법
CN111506433A (zh) 具有ooda多分区可替换机制的处理器
US9009506B2 (en) Energy efficient microprocessor platform based on instructional level parallelism
Putnam et al. Dynamic vectorization in the E2 dynamic multicore architecture
CN111435309A (zh) 一种寄存器分配优化实现方法
Robatmili et al. Exploiting criticality to reduce bottlenecks in distributed uniprocessors
CN111984328B (zh) 具有ooda循环分区机制的流式处理器
CN111221640A (zh) 一种gpu-cpu协同节能方法
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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200807