基于可配置处理器及指令集扩展的异构多核系统技术方案

技术编号:2823277 阅读:156 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开一种计算机体系技术领域的基于可配置处理器及指令集扩展的异构多核系统,包括扩展核,基本核或全能核,其中,基本核包含基本指令集ISA1,用于执行操作系统以及应用程序中没有进行指令扩展优化的部分,并且负责核间通信的控制,当扩展核与基本核之间通信时,需申请开FIFO,基本核批准后,才能建立通信管道。扩展核包含基本指令集ISA1、扩展指令集,主要用于执行应用程序中进行了指令扩展优化的部分,也可执行程序中未进行指令扩展优化的部分。全能核包含所有指令集,拥有基本核与全部扩展核的所有功能。本发明专利技术极大的发挥了扩展指令的优势,同时减轻了基本核的负担,有效解决了多线程应用程序执行效率低下的问题。

【技术实现步骤摘要】

本专利技术涉及一种计算机体系
的系统结构,尤其涉及一种基于可配置 处理器及指令集扩展的异构多核系统。
技术介绍
近些年来,高性能多处理器的设计在体系结构中开始占据越来越重要的位 置。多处理器结构的出现,降低了对于指令级并行的要求,取而代之的是对于线 程级并行的研究。这种研究焦点的转移主要是由于单处理器并行化设计的复杂性 以及处理器速度与访存速度之间的巨大差异所造成的。对于多处理器体系而言, 每个核的结构可以得到简化,增强了多线程处理能力。同构结构中,每个处理器是无差别的,更适合于一般的,重复性强的应用。 而对于特定应用来说,异构结构则是更好的选择。异构结构的处理器有着不同的 结构和处理能力,可以根据应用程序本身的特点,将其不同部分分配在不同的处 理器上执行,以提高执行的效率,加快执行的速度。对于多线程应用,尤其是线 程间存在明显差异的多线程应用,合理设计的异构结构会大幅度的提高其执行效 率。而在异构多核结构中,不同处理器的结构存在着明显的差异,因此每个处理 器所能够处理的指令集也就不同。从软件系统层面来看,异构多核架构中,不同 核之间的区别就是所能够处理的指令集之间存在的区别,也就是说,在异构多核 结构中,软件系统所看到的一个个不同的处理器其实就是一个个不同的指令集。 因此,异构系统的构建可以通过配置专用的处理器以及进行指令扩展实现。经对现有技术的文献检索发现,杨凡等在2007年专利技术专利"一种异构多核 间协调调度的方法及异构多核系统(CN 101178666)"。该专利中提出了构建异 构多核的一种具体方法,包括主核与从核,主核控制从核的执行与通信。该专利 中的不足在于,其异构结构中的主核与从核并非是根据特定应用配置的,也未进行过指令集扩展,因此在处理多线程应用程序时,无法使程序的效能大幅度的提 高,不能充分显示出异构结构的优势。
技术实现思路
本专利技术针对现有技术的不足,提出了 一种基于可配置处理器及指令集扩展的 异构多核系统,用以解决线程间差异大的多线程应用程序执行效率低的问题。 本专利技术采用以下技术方案实现的本专利技术所述的异构多核系统,包括扩展核,基本核或全能核,其中, 基本核,包含基本指令集(ISA1),用于执行操作系统以及应用程序中没有 进行指令扩展优化的部分;并且负责核间通信的控制,当扩展核与基本核之间通 信时,需申请开FIF0,基本核批准后,才能建立通信管道;如果当前基本核正 忙或已经没有空间开新的FIF0,基本核会暂时挂起通信请求,等待下一个空闲 的时间或有被释放的空间,批准通信管道建立。扩展核,包含基本指令集(ISA1),另外包含扩展指令集(ISA2或ISA3或…), 主要用于执行应用程序中进行了指令扩展优化的部分,也可执行程序中未进行指 令扩展优化的部分(当基本核没有空闲的时候)。每一个扩展核只包含一种扩展 指令集。全能核,包含所有指令集(ISA1+ISA2+ISA3…),拥有基本核与全部扩展核 的所有功能。本专利技术中所述异构结构,基本核与全能核是互斥的,在一个异构系统中,只 能存在一个基本核或者一个全能核,可以是一个基本核搭配若干扩展核,也可以 是一个全能核搭配若干扩展核。当一个基本核搭配若干扩展核时,多线程应用程序中经过指令扩展优化的部分只能够被分配在拥有该扩展指令的扩展核上,比如a线程经过了扩展指令集 ISA2的扩展,b线程经过了扩展指令集ISA3的扩展,同时第一个扩展核包含扩 展指令集ISA2的指令集,第二个扩展核包含扩展指令集ISA3的指令集,那么a 线程就只会被分配在第一个扩展核上,而不会被分配在第二个扩展核或者基本核 上;b线程只会被分配在第二个扩展核上,而不会被分配至第一个扩展核或基本 核上。应用程序中其他未经过指令扩展优化的部分可以被任意分配于基本核、第 一个扩展核以及第二个扩展核上。上述结构在执行时,首先开启基本核,由基本核运行操作系统。两个扩展核 都处于等待状态。当基本核检测到应用程序的某一线程使用了扩展指令后,会通 知相应的扩展核,并把此线程分配给扩展核进行执行。扩展核执行完当前线程后, 通知基本核,然后继续进入等待状态,等待下一次被分配线程。当一个全能核搭配若干扩展核时,应用程序中未经过指令扩展优化的部分的 分配方式与一个基本核搭配若干扩展核结构中相同,而经过指令扩展优化的部分 除了可以在相对应的扩展核上运行以外,还可以被分配在全能核上。而在分配线 程的时候,全能核取代并扩展了一个基本核搭配若干扩展核结构中基本核的任 务。全能核检测经过指令扩展优化的线程所对应的扩展核,如果该扩展核处于等 待(空闲)状态,则将此线程分配给该扩展核;如果该扩展核目前处于忙碌执行 状态,全能核则将自己执行此线程。本专利技术中所述异构结构中的处理器均通过片上总线共享内存,而且扩展核的 数目是不固定的,可以根据具体的应用程序需求而定。本专利技术具有以下有益效果通过采用自定义配置的处理器以及对不同处理器 进行指令扩展的方法,得到了最优化的异构多核结构,可以过根据运行于其上的 应用程序的特点,将程序中的不同部分进行相对应的指令扩展优化,并分配在最 适合的处理器上,从而使每一个扩展核都使用自己的扩展指令,极大的发挥了扩 展指令的优势,同时减轻了基本核的负担,有效解决了多线程应用程序执行效率 低下的问题。附图说明图l为本专利技术所提出的异构多核结构设计示意图图2为本专利技术中异构多核结构每个核所拥有的指令集的相互关系图 图3为本专利技术中异构多核系统在执行多线程程序时的流程图 图4为本专利技术中异构多核结构的核间通信流程图 具体实施例方式下面结合附图对本专利技术的实施例作详细说明本实施例在以本专利技术技术方案 为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本专利技术的保护 范围不限于下述的实施例。本专利技术的主要技术构思是采用基本核加扩展核的类似主从结构,使得多线程 应用中的不同线程可以根据自己的指令扩展特点分配到最适合运行的扩展核上, 充分发挥扩展核的功效;同时由基本核控制线程的分配以及核间通信,保证结构 的正确性;对于使用全能核的结构来说,还可以自己运行指令扩展的线程,从而 减少了扩展核的压力。这种异构结构有效的提高了多线程应用程序的执行效率, 而且满足了负载平衡的需求。下面通过各个附图,按照一个基本核搭配若干扩展核以及一个全能核搭配若 干扩展核结构,对本专利技术的具体实现过程做进一步详细的说明。请参阅图1,该图为本专利技术所述异构多核结构的示意图,其主要模块包括基本核,用于执行操作系统和应用程序中没有进过指令扩展优化的部分。控 制核间通信的建立,实施应用程序的任务分配。全能核,用于执行操作系统和应用程序中的所有线程,优先执行应用程序中 未经过指令集扩展优化的线程,只有当扩展核忙碌时,才会协助执行指令扩展优 化过的线程。控制核间通信的建立,实施应用程序的任务分配。基本核与全能核是互斥的,在一个异构系统中,只能存在一个基本核或者一个全能核,两者不可同时存在于一个异构系统中。下文对包含有全能核的异构多 核结构简称为全能核结构,对包含有基本核的异构多核结构简称为基本核结构。扩展核,用于执行程序中经过指令集扩展优化的部分。第一扩展核和第二扩 展核分别拥有不同的指令集,因此所能够处理的程序部分也不相同。另外,扩展 核也可以本文档来自技高网
...

【技术保护点】
一种基于可配置处理器及指令集扩展的异构多核系统,其特征在于,包括扩展核,基本核或全能核,其中:基本核,包含基本指令集,用于执行操作系统以及应用程序中没有进行指令扩展优化的部分;并且负责核间通信的控制,当扩展核与基本核之间通信时,需申请开FIFO,基本核批准后,才能建立通信管道;如果当前基本核正忙或已经没有空间开新的FIFO,基本核会暂时挂起通信请求,等待下一个空闲的时间或有被释放的空间,批准通信管道建立;扩展核,包含基本指令集,另外包含扩展指令集,主要用于执行应用程序中进行了指令扩展优化的部分,也可执行程序中未进行指令扩展优化的部分,每一个扩展核只包含一种扩展指令集;全能核,包含所有指令集,拥有基本核与全部扩展核的所有功能;所述基本核与全能核是互斥的,在一个异构系统中,只能存在一个基本核或者一个全能核,所述基本核搭配若干扩展核时,多线程应用程序中经过指令扩展优化的部分只能够被分配在拥有该扩展指令的扩展核上,应用程序中其他未经过指令扩展优化的部分被任意分配于基本核、第一个扩展核或第二个扩展核上;所述全能核搭配若干扩展核时,应用程序中未经过指令扩展优化的部分的分配方式与一个基本核搭配若干扩展核结构中相同,而经过指令扩展优化的部分除了能在相对应的扩展核上运行以外,还能被分配在全能核上。...

【技术特征摘要】

【专利技术属性】
技术研发人员:付宇卓刘婷陈劭胡泊
申请(专利权)人:上海交通大学
类型:发明
国别省市:31[中国|上海]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利