[发明专利]一种用于片上多核通信的全硬件数据驱动装置在审
申请号: | 201710803853.2 | 申请日: | 2017-09-08 |
公开(公告)号: | CN107562688A | 公开(公告)日: | 2018-01-09 |
发明(设计)人: | 王镇;张磊;汪健 | 申请(专利权)人: | 北方电子研究院安徽有限公司 |
主分类号: | G06F15/173 | 分类号: | G06F15/173 |
代理公司: | 南京纵横知识产权代理有限公司32224 | 代理人: | 耿英,董建林 |
地址: | 233040*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 多核 通信 硬件 数据 驱动 装置 | ||
技术领域
本发明属于片上多核通信技术领域,尤其涉及一种用于片上多核通信的全硬件数据驱动装置。
背景技术
多核时代,系统处理器核间的数据交换机制成为了影响性能的关键,一方面高性能系统中会存在需进行大量运算的处理核以提供强大的解算能力,另一方面,典型应用的数据通信需求非常大,每个处理器的运算结果都有可能与其他处理器进行交换。随着技术的发展,处理器核间可以提供与计算能力相匹配的高带宽,但依然存在两个主要问题:(1)程序控制开销复杂。通信结构需引入复杂的程序控制开销,降低通信效率;(2)使用麻烦。通信程序需程序员专门优化,人工参与程度较高,使用烦琐,不利于单核程序向多核程序的移植和调试。软件系统如何有效利用其架构优势进行数据的快速发送与接收已然成为研究热点。
申请号为201510210877.8的发明专利公开了一种用于多核DSP间的片上通信方法及数据装置,其为每个DSP内核配置了独立的数据通信装置,各DSP内核通过数据通信装置发送事务至目的DSP核,通过数据通信装置接收与发送数据,一定程度上解放了处理器,但是其需提供复杂的全局事务管理单元,且数据装置接收发送都是被动式的,需要处理器进行复杂的管理控制,一定程度上降低了通信效率。
申请号为201110164421.4的发明专利公开了一种基于FPGA多核系统的核间通信方法,其提供了两种通信结构方式,相邻处理器核间通过点对点的通信方式,非相邻核间通过共享缓冲、邮箱及互斥量的方式通信,此结构虽可根据需求提供合适的通信结构,但同样需要软件配合,有一定的程序控制开销。
解决程序控制开销及使用便利性的另一思路是从硬件结构出发。数据驱动计算机(数据流计算机)是麻省理工的丹尼斯(Jack Dennis)在1972年提出的,它背离了传统冯诺依曼计算机思想,最终目的是实现并行处理以提高运算速度,历经40年的实践检验,该模型已经证明其并行方面的有效性。与传统的冯·诺伊曼计算机不同,数据流计算机不是采用指令驱动操作,而是采用数据(操作数)驱动操作的一种执行方式,即当且仅当某一操作所需的操作数全部到齐后,此操作就立即开始执行。这样,如果有很多个操作均满足上述条件,他们就可以彼此并发执行而不受指令顺序执行的限制,从而充分开拓并行度。数据流是基于“异步性”和“函数性”的一种计算模型。“异步性”指数据流操作一旦收到其操作数后就开始执行;“函数性”指每一位数据流操作均消耗一组输入,产生一组输出而不存在副作用。显然,“异步性”是数据流中开拓并行性的基础;而“函数性”能确保任何两个并发操作可以任意次序的并发执行而不会相互干扰。
但是现有商业多核处理器一般没有类似部件,通信系统和存储系统是各自独立的设计。研究型的通用数据驱动处理器则只带有指令级的数据完备性检测模块,粒度过细无法与片内通信系统互动。
发明内容
本发明所要解决的技术问题是克服现有技术中的缺陷,在现有数据驱动计算机软硬件研究的成果上,结合多核微控制器发展的趋势,提出一种与片内通信网络配套的全硬件数据驱动装置。这种结构的硬件按照混合(Hybrid)数据流计算机组织,以经典处理器核为处理单元,使得用户可以采用函数语言(Functional Programming Language)风格进行编程。通过利用函数的执行时间隐藏核间通信时延;利用函数之间的时空分布关系,隐藏外部存储器访问时延,达到以合理功耗提升性能的目的。
为解决上述技术问题,本发明提供一种用于片上多核通信的全硬件数据驱动装置,其特征是,设置在系统总线与处理器之间,包括数据包接收模块、数据包发送模块、数据完备性检查模块、关系生成器和寄存器组;
数据包接收模块从系统总线接收属于自己的数据,同时数据包接收模块中的关系生成器利用函数标号和参数序号计算该数据在数据完备性检查模块中的参数存储器中地址,将有效数据存入该地址;
数据完备性检查模块中的标识生成器利用写操作信号建立该数据的有效标志;如果一个函数所需的数据都被标记为有效,则该函数标号进入数据完备性检查模块中的函数队列,当函数队列非空时,经过中断请求生成请求信号请求处理器的执行;
处理器在接收到请求信号后从函数队列取出函数标号,并计算出相关程序地址入口,实现函数计算;
计算过程中从参数存储器读取相关数据,标识生成器利用这个读操作信号来将该数据的有效位清零,等待下一次触发;
函数计算完成后将结果发送给后继函数。
处理器的执行步骤为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北方电子研究院安徽有限公司,未经北方电子研究院安徽有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710803853.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于铁路信号安全计算机的设计方法
- 下一篇:一种系统级芯片和终端