[发明专利]基于单一指令集微处理器运算单元的可配置多核/众核系统无效
申请号: | 200810203778.7 | 申请日: | 2008-11-28 |
公开(公告)号: | CN101751373A | 公开(公告)日: | 2010-06-23 |
发明(设计)人: | 林正浩;任浩琪;耿红喜 | 申请(专利权)人: | 上海芯豪微电子有限公司 |
主分类号: | G06F15/76 | 分类号: | G06F15/76;G06F9/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 200092 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 单一 指令 微处理器 运算 单元 配置 多核 系统 | ||
技术领域
本发明涉及集成电路设计领域,尤其涉及一种基于微处理器核、微处理器运算单元的单一指令集可配置多核/众核系统。
背景技术
随着信息化的普及、生活水平的提高,消费者需要把更多的功能集成到同一款电子产品中,使得在许多应用中同时具有智能控制和数字信号处理能力,如数字电视机顶盒,既需要能对用户的操作有正确、快速的反应,又需要对音、视频信号进行高效解码。
微处理器(CPU)能支持操作系统,可以运行一般的应用程序,并能根据程序访问、处理随机的指令和数据,能很好的完成跳转等不规则操作,但是对音、视频等流数据的处理能力相对较弱。而数字信号处理器(DSP)正好与之相反,具有很强的流处理能力。因此,在同一款芯片中集成CPU核和DSP核,并通过一些互连策略进行交互,可以同时发挥两种处理器的优势。通过两种核的集成加速个人通信机、智能电话、无线网络产品的开发,同时可以简化设计,减小板级系统复杂度,降低功耗和整个系统的成本。
CPU与DSP的融合能解决既需要智能控制,又需要流处理的需求,然而更高级的用户接口和应用程序对嵌入式系统提出了更高的并行处理要求。简单采用增加DSP核的方法可以进一步提高嵌入式CPU的性能,但这种方法存在一定的局限性。目前的数字信号处理算法中依然存在大量必须串行执行的程序,无法被很好的分割。当DSP核达到一定数量后,性能就无法再随着核数量的增加而提升了。此外,随着半导体制造工艺的不断提升,芯片内部的工作频率已大大高于其外部存储器的工作频率,多个DSP核同时进行访问外部存储器所导致访问外部存储器等待时间过长的问题也已经成为制约系统性能的一大瓶颈。
经对现有技术的文献检索发现,国外已有成熟的CPU与DSP融合的结构,如美国德州仪器公司(TI)的达芬奇系列处理器,要求有两种不同的编译系统,分别编译CPU和DSP各自的指令集。美国斯坦福大学的Imagine处理器则采用了两级编译方式:流级(stream)编译和核心级(Kernel)编译,分别在主CPU和Imagine上运行。无论两种编译系统还是两级编译方式,都会大大增加应用软件开发的复杂性和软件调试的难度。
在多核处理器方面,以美国英特尔公司(Intel)和超威半导体公司(AMD)的多核处理器最为典型,都是简单地将两个或多个复杂的微处理器内核叠加在一起。多核处理器中每个微处理器核都包含有缓存,为解决不同核内缓存数据的一致性问题,微处理器核之间必须频繁交换数据,降低了整个多核处理器的效率。尽管多个内核之间可以进行并行运算,但就整体而言,无法实现真正的流水线操作。此外,在软件方面,对于多核处理器,需要有并行编程的思想才有可能充分利用资源,然而操作系统对资源的分配和管理并没有本质的改变,多是以对称的方式进行平均分配。并且,多数软件并没有充分考虑到双核乃至多核的运行情况,导致线程平均分配的时间以及线程之间的交换数据的时间都会大大增加,尤其在线程需要反复访问内存的时候,效率损失更为严重。
发明内容
本发明针对现有技术的不足,提出了一种基于微处理器核、微处理器运算单元的单一指令集可配置多核/众核系统,用以解决多核系统中工作负荷分配困难、访问外部存储器效率低及使用不同编译系统带来的软件开发与调试的复杂性问题。
本发明采用以下技术方案实现:
本发明所述基于单一指令集微处理器运算单元的的可配置多核/众核系统,包括微处理器核,处理单元,仲裁器,DMA控制器,输入分配器和输出分配器,其中:微处理器核,用于执行操作系统以及应用程序中非密集运算部分,并且负责对处理单元的配置;处理单元,用于执行密集运算中的乘法、加/减法、乘加/减、累加、移位、提取、交换操作,每个处理单元完成一条或多条乘法、加/减法、乘加/减、累加、移位、提取、交换操作;仲裁器,用于仲裁微处理器核和处理单元对外部存储器的访问请求;DMA控制器,用于直接配置处理单元中的存储器;输入分配器,用于将取自仲裁器的数据分配给不同处理单元;输出分配器,用于从不同处理单元取得数据并送往仲裁器。
本发明所述微处理器核和处理单元包含的指令集均是同一指令集的子集,可由同一编译器编译;完成应用程序的编译后,使用同一个后编译器进行机器码分解,确定每个处理单元的工作内容及负荷。
本发明所述微处理器核包括运算单元、寄存器堆、程序计数器、中断/异常控制器、存储管理单元和缓存。
本发明所述处理单元包括运算单元、寄存器堆、本地指令存储器、本地数据存储器和程序计数器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海芯豪微电子有限公司,未经上海芯豪微电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810203778.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种批量制造溴化亚铜粉体材料的方法
- 下一篇:气动压紧装置