基于NOC架构的多核处理器平台及其设计方法.pdf

上传人:1*** 文档编号:4261027 上传时间:2018-09-12 格式:PDF 页数:12 大小:672.14KB
返回 下载 相关 举报
摘要
申请专利号:

CN201210396310.0

申请日:

2012.10.18

公开号:

CN102880762A

公开日:

2013.01.16

当前法律状态:

驳回

有效性:

无权

法律详情:

发明专利申请公布后的驳回IPC(主分类):G06F 17/50申请公布日:20130116|||实质审查的生效IPC(主分类):G06F 17/50申请日:20121018|||公开

IPC分类号:

G06F17/50

主分类号:

G06F17/50

申请人:

电子科技大学

发明人:

王坚; 李玉柏; 钟阳; 李桓

地址:

611731 四川省成都市高新区(西区)西源大道2006号

优先权:

专利代理机构:

成都顶峰专利事务所(普通合伙) 51224

代理人:

成实

PDF下载: PDF下载
内容摘要

本发明提供了一种基于NoC架构的多核处理平台及其设计方法,属于通信领域,本发明克服了现有技术中采用的处理器平台并行算法和并行任务处理能力低且开发周期长、运行非常不可靠的缺陷。本发明通过NoC方式接入至少两个处理器,所述NoC采用M×N的MESH拓扑结构构建而成,从而实现了提高平台可靠性的功能;同时本发明还能够通过仿真对并行算法的延时、功耗、处理精度等进行评估,提高了平台并行算法和并行任务处理的精度,且有利于缩短多核平台的开发周期。

权利要求书

权利要求书基于NoC架构的多核处理器平台,其特征在于,包括通过NoC方式接入的至少两个处理器,所述NoC采用M×N的MESH拓扑结构构建而成,其中M和N均为正整数。
根据权利要求1所述的基于NoC架构的多核处理器平台,其特征在于,所述处理器上创建有实现处理器数据输入和输出的网络接口,其中NoC包括与网络接口一一对应的路由节点,且相邻的路由节点之间连接有两条以实现数据相反流向的数据线。
根据权利要求2所述的基于NoC架构的多核处理器平台,其特征在于,所述处理器内设置有用于配合网络接口完成数据传输的RAM读缓存区和RAM写缓存区。
根据权利要求1~3任意一项所述的基于NoC架构的多核处理器平台,其特征在于,所述NoC上还分别搭载了Orion2.0和Mcpat工具。
基于NoC架构的多核处理器平台设计方法,其特征在于,通过以下步骤实现:
(1)设置路由节点的结构,使该路由节点通过XY路由算法寻找目的节点,采用虫洞技术进行数据转发,且通过时间片轮算法对输出竞争进行仲裁;
(2)根据单个路由节点的结构配置Orion2.0功率消耗参数;
(3)输入参数M和N,配置NoC的规模,将路由节点进行互联,即可获得M×N的MESH拓扑结构的NoC;
(4)在处理器上创建网络接口,并在处理器中创建RAM读缓冲区和RAM写缓冲区,将网络接口与路由节点一一连接,得到路由节点排列为M×N的矩阵型结构,并且相邻的路由节点通过两条以实现数据相反流向的数据线连接;
(5)为处理器创建Wrapper程序,并将其和网络接口进行连接,使处理器和网络接口之间进行通信;
(6)根据处理器结构配置Mcpat参数。
根据权利要求5所述的基于NoC架构的多核处理器平台设计方法,其特征在于,所述步骤(1)中单个路由节点包括东、西、南、北和本地五个方向,东、西、南、北中的每一个方向均设置有用于和其他路由接口相连的输出端口和输入端口,其中本地方向还设置有与网络接口相连的输出端口和输入端口。
根据权利要求6所述的基于NoC架构的多核处理器平台设计方法,其特征在于,所述步骤(4)中在处理器中创建RAM读缓冲区和RAM写缓冲区的具体步骤如下:
(4a)创建RAM读缓冲区,并把路由节点本地输出端输出的数据解包后缓存到网络接口;
(4b)当处理器读信号有效时,将数据搬移到RAM读缓冲区中,再根据配置创建RAM写缓冲区,当处理器写信号有效时,将数据搬移到RAM写缓冲区。
根据权利要求5~7任意一项所述的基于NoC架构的多核处理器平台设计方法,其特征在于,所述步骤(6)结束后,还能够对该平台进行仿真,其中仿真步骤如下:
(I)将各个处理器上需要并行处理的任务和并行算法用C代码实现;
(II)使用OpenRISC工具链生成在OpenRISC上执行的程序;
(III)运行仿真平台,并为各个OpenRISC加载需要执行的程序。

说明书

说明书基于NoC架构的多核处理器平台及其设计方法
技术领域
本发明属于计算机领域,具体的说,涉及一种基于NoC架构的多核处理器平台及其设计方法。
背景技术
随着集成电路技术的发展,单个芯片上的集成度在逐渐增加,单核处理器的性能得到了很大的提高。但是由于OSI七层协议中的应用层对实时性和运算量的需求继续增加,已经很难通过提高单核处理器工作频率和扩大芯片面积来满足实时性和运算量的要求,因此多核处理器并行执行任务的解决方式便被提出来。
然而在多核处理器的条件下,传统的总线结构并没有被改变,现有技术中DSP是目前流行的一种处理器平台,可以将多个64+TM集成在一个芯片上,为密集处理型产品提供高达4.2GHz的性能,能够应用到通信基础设施、高端产业、任务关键型应用、高端图像和视频等领域,通过数据总线和配置总线,实现处理器间以及处理器和外围设备间的通信。然而DSP采用的是总线架构,同一时刻只能有一个处理器占用总线,对多核处理器平台的性能造成一定影响,使其并行算法和并行任务处理能力低,而且开发周期长同时运行非常不可靠。
发明内容
本发明的目的在于克服现有技术中采用的处理器平台并行算法和并行任务处理能力低且开发周期长、运行非常不可靠的缺陷,提供一种点对点并行传输,可以在多核平台设计前期对平台进行评估,因此提高平台可靠性的一种基于NoC结构的多核处理器平台及其设计方法。
本发明采用的技术方案如下:
基于NoC架构的多核处理器平台,包括通过NoC方式接入的至少两个处理器,所述NoC采用M×N的MESH拓扑结构构建而成,其中M和N均为正整数。
为了实现本发明,所述处理器上创建有实现处理器数据输入和输出的网络接口,其中NoC包括与网络接口一一对应的路由节点,且相邻的路由节点之间连接有两条以实现数据相反流向的数据线。
为了更好的存储、读写数据,所述处理器内设置有用于配合网络接口完成数据传输的RAM读缓存区和RAM写缓存区。
为了实现功率评估功能,所述NoC上还分别搭载了Orion2.0和Mcpat工具。
基于NoC架构的多核处理器平台,本发明还提供了其设计方法:
(1)设置路由节点的结构,使该路由节点通过XY路由算法寻找目的节点,采用虫洞技术进行数据转发,且通过时间片轮算法对输出竞争进行仲裁;
(2)根据单个路由节点的结构配置Orion2.0功率消耗参数;
(3)输入参数M和N,配置NoC的规模,将路由节点进行互联,即可获得M×N的MESH拓扑结构的NoC;
(4)在处理器上创建网络接口,并在处理器中创建RAM读缓冲区和RAM写缓冲区,将网络接口与路由节点一一连接,得到路由节点排列为M×N的矩阵型结构,并且相邻的路由节点通过两条以实现数据相反流向的数据线连接;
(5)为处理器创建Wrapper程序,并将其和网络接口进行连接,使处理器和网络接口之间进行通信;
(6)根据处理器结构配置Mcpat参数。
为了方便扩建网络,所述步骤(1)中单个路由节点包括东、西、南、北和本地五个方向,东、西、南、北中的每一个方向均设置有用于和其他路由接口相连的输出端口和输入端口,其中本地方向还设置有与网络接口相连的输出端口和输入端口。
进一步的,所述步骤(4)中在处理器中创建RAM读缓冲区和RAM写缓冲区的具体步骤如下:
(4a)创建RAM读缓冲区,并把路由节点本地输出端输出的数据解包后缓存到网络接口;
(4b)当处理器读信号有效时,将数据搬移到RAM读缓冲区中,再根据配置创建RAM写缓冲区,当处理器写信号有效时,将数据搬移到RAM写缓冲区。
再进一步的,所述步骤(6)结束后,还能够进行该平台进行仿真,其中仿真步骤如下:
(I)将各个处理器上需要并行处理的任务和并行算法用C代码实现;
(II)使用OpenRISC工具链生成在OpenRISC上执行的程序;
(III)运行仿真平台,并为各个OpenRISC加载需要执行的程序。
与现有技术相比,本发明具有以下有益效果:
(1)本发明采用了NoC即片上网络进行数据传输,片上网络很好的克服了总线结构的各种局限,实现整个网络多条点到点的连接,相互间不会产生干扰,解决了处理器出现通信冲突问题的同时容易实现全局同步;进一步的,整个平台由于采用的是非总线结构,因此即使随着NoC半径的增大,也不会有任何延迟的情况产生;
(2)本发明的多核处理平台还利用其搭载的Orion2.0和Mcpat工具对各个处理器的功率消耗进行估计,Orion2.0和Mcpat分别根据路由节点结构和处理器的结构进行参数配置,使之与该平台的架构以及处理器和路由节点内部结构更匹配从而提高估计值的精确度;
(3)本发明的路由节点在东、西、南、北的任意一个方向均设置有一个输出端和一个输入端,因此在已经架构好NoC后,依然可以在NoC边缘处的路由节点上再继续连接路由节点,即对该平台扩充,实现对NoC架构的弹性需求;
(4)本发明路由节点的输入缓存大小可以根据需要配置,因此路由节点可以很好的满足不同处理器或者平台适用于不同情况时或者其他任何状况,同时该路由节点还采用了XY路由算法和虫洞技术进行数据转发,更加有效的提高了平台的数据计算和传输速度,节约了时间;同时该路由节点还采用时间片轮转算法对输出竞争进行仲裁,防止了拥堵、死锁情况的发生;
(5)整个平台在设计完毕后,还可以使用OpenRISC工具链编译并行算法源代码,生成在OpenRISC上执行的程序,便可以实现对该平台的仿真,在仿真结束后可以得到并行算法的运算结果、执行时间,还能够得到NoC和OR1200上消耗的功率,因此可以利用该仿真结果对并行算法和并行任务的处理能力和处理精度进行评估,包括并行算法的延时、功耗、处理精度等都能够进行评估,有利于缩短多核平台的开发周期,提高平台的可靠性,其中OpenRISC基于GPL协议的开放源代码的RISC处理器,具有完整的工具链,包括:开源的软件开发工具,C语言实现的CPU仿真模型,操作系统,以及软件应用所需的函数库,使这种处理器非常适用于本发明。
附图说明
图1为本发明—实施例中4×4的MESH拓扑结构的NoC。
图2为本发明中开源处理器OR1200原理框图。
图3为本发明中路由节点的原理框图。
图4为本发明中网络接口的原理框图。
图5为本发明中网络接口的工作流程图。
图6为本发明的设计流程图。
具体实施方式
下面结合附图与实施例对本发明作进一步说明,本发明的实施方式包括但不限于下列实施例。
实施例
如图1所示的基于MESH拓扑结构的片上网络,片上网络简称NoC,所述MESH为无线网格网络。该NoC拓扑配置为M×N=4×4,共有16个OR1200开源处理器,且R为路由节点,其中16个处理器OR1200通过片上网络的方式互联,实现了整个网络点到点的线路连接,相互间不会产生干扰,所有OR1200之间不会产生通信冲突的问题。
其中图2为本发明中开源处理器OR1200原理框图。
OR1200作为本实施例中的多核仿真平台的处理单元,是一款标量RISC处理器,采用哈佛结构,拥有5级整数流水线,支持MMU和基本的DSP能力。
图3为R即路由节点的原理框图,该路由节点采用XY路由算法和虫洞进行数据转发,采用时间片轮转算法对输出竞争进行仲裁,同时配置路由节点的输入缓存大小。其中时间片轮算法即每个进程被分配字一个时间段,称作它的时间片,即该进程允许运行的时间。如果在时间片结束时进程还在运行,则处理器将被剥夺并分配给另一个进程,如果进程在时间片结束前阻塞或结束,处理器当即进行切换,调度程序所要做的就是维护一张就绪进程列表,当进程用完它的时间片后,它被移到队列的末尾。
图4为本发明中网络接口,即NI的原理框图。OR1200和NoC之间是通过网络接口进行连接的,即NI连接到NoC路由节点的本地输出端口。其中如图5所示,NI工作流程如下:
(1)在OR1200中创建RAM读缓冲区,当有数据包从NoC本地端口输出时,NI对数据包进行解包,即除去包头包尾,提取数据部分并进行缓存;
(2)在NI与OR1200连接端,NI将路由节点本地输出端输出的数据解包后缓存,NI提示OR1200有数据到达,并根据OR1200的读信号,将数据搬移到OR1200的RAM即随机存储器的读缓冲区去,RAM读缓冲区是RAM预先留出的一段区域,用于专门存放从NI中读出的数据;
(3)当NI完成数据搬移之后则向OR1200发出信号,让OR1200从RAM读缓冲区中读取数据进行操作。同时,根据配置创建RAM写缓冲区,NI还会检测OR1200发出的写信号,并根据写信号的职能将数据从OR1200的RAM读缓冲区搬移到RAM写缓冲区;
(4)RAM写缓冲区也是RAM中预先留出的一段区域,用于专门存放需要写到NI的数据,因此NI为数据添加包头包尾,并通过路由节点的本地输入端口,发送到NoC网络中进行传输;
(5)当NI完成数据发送任务之后同样会向OR1200发送信号,通知OR1200可以进行下一次的写操作。
通过如图6所示设计流程图,能够实现该设计平台的仿真,其仿真结果可以在多核平台设计前期对平台进行评估,有利于缩短多核平台的开发周期,提高平台的可靠性,其中具体实现步骤如下:
第一步:实现NoC路由节点结构的配置。
路由节点由5条输入端口和输出端口组成,分别代表东、西、南、北和本地5个连接方向,因此路由节点采用XY路由算法寻找目的节点,采用虫洞技术进行数据转发,并采用时间片伦算法对输出竞争进行仲裁,其中还可以根据需要对路由节点的缓存深度以及数据位宽进行配置。
第二步:根据如图1所示的路由节点结构,配置Orion2.0功率消耗参数。
其中Orion2.0为平台上的搭载工具,能够在处理过程中对NoC以及各个处理器的功率消耗进行估计,从而评估该平台并行算法和并行任务的处理能力和处理精度进行评估;并且根据路由节点结构配置Orion2.0能够使该平台搭载工具根据不同的结构进行相应的处理,使其适用于不同网络拓扑结构。
第三步:配置NoC的规模,根据输入的参数M=4和N=4,将路由节点按照对应端口进行互联,即可获得4×4的MESH拓扑结构NoC。
该拓扑结构共有16个路由节点R,16个开源处理器OR1200。
第四步:配置NoC和OR1200间的通信接口NI使NoC、OR1200通过NI实现相应功能。
根据图5所示的NI工作流程,首先需根据配置创建RAM读缓冲区,当OR1200读信号有效时,将数据搬移到OR1200的RAM中;
接着根据配置创建RAM写缓冲区,当OR1200写信号有效时,将数据从RAM读缓冲区搬移到RAM写缓冲区,将数据封装后通过本地输入端口发送到NoC中进行传输。
第五步:为OR1200创建Wrapper,使之能够被平台调用,并将Wrapper和NI进行连接,使OR1200和NI之间能够进行通信。
Wrapper为OR1200和NI之间的媒介,用于实现OR1200和NI之间的通信。
第六步:根据OR1200的结构,配置Mcpat的参数;
其中Mcpat也为该平台上搭载的工具,用于对并行算法和并行任务的处理能力、处理精度以及功率消耗进行估计。并且根据OR1200结构配置Mcpat能够使该平台搭载工具根据不同的结构进行相应的处理,使其适用于不同网络拓扑结构。
第七步:将各个处理器上需要并行处理的任务和并行算法用C代码实现。
第八步:使用OpenRISC工具链生成在OpenRISC处理器上执行的程序。
其中OpenRISC为开放源代码的精简指令集计算机处理器,为现有技术,其采用免费开放的32/64bit RISC/DSP架构,并且用Verilog HDL实现了基于该RISC/DSP架构的RTL描述,这里的RTL为寄存器传输级,并且OpenRISC还具有完整的工具链,该工具链包括:开源的软件开发工具,C语言实现的CPU仿真模型,操作系统,以及软件应用所需的函数库,使这种处理器非常适用于本发明。
第九步:运行该多核处理器平台,并为各个OpenRISC处理器加载需要执行的程序。
按照上述实施例,便可很好的实现本发明。

基于NOC架构的多核处理器平台及其设计方法.pdf_第1页
第1页 / 共12页
基于NOC架构的多核处理器平台及其设计方法.pdf_第2页
第2页 / 共12页
基于NOC架构的多核处理器平台及其设计方法.pdf_第3页
第3页 / 共12页
点击查看更多>>
资源描述

《基于NOC架构的多核处理器平台及其设计方法.pdf》由会员分享,可在线阅读,更多相关《基于NOC架构的多核处理器平台及其设计方法.pdf(12页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102880762 A (43)申请公布日 2013.01.16 C N 1 0 2 8 8 0 7 6 2 A *CN102880762A* (21)申请号 201210396310.0 (22)申请日 2012.10.18 G06F 17/50(2006.01) (71)申请人电子科技大学 地址 611731 四川省成都市高新区(西区)西 源大道2006号 (72)发明人王坚 李玉柏 钟阳 李桓 (74)专利代理机构成都顶峰专利事务所(普通 合伙) 51224 代理人成实 (54) 发明名称 基于NoC架构的多核处理器平台及其设计方 法 (57) 摘要 本发明提供。

2、了一种基于NoC架构的多核处理 平台及其设计方法,属于通信领域,本发明克服了 现有技术中采用的处理器平台并行算法和并行任 务处理能力低且开发周期长、运行非常不可靠的 缺陷。本发明通过NoC方式接入至少两个处理器, 所述NoC采用MN的MESH拓扑结构构建而成,从 而实现了提高平台可靠性的功能;同时本发明还 能够通过仿真对并行算法的延时、功耗、处理精度 等进行评估,提高了平台并行算法和并行任务处 理的精度,且有利于缩短多核平台的开发周期。 (51)Int.Cl. 权利要求书1页 说明书5页 附图5页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 1 页 说明书 5 页 。

3、附图 5 页 1/1页 2 1.基于NoC架构的多核处理器平台,其特征在于,包括通过NoC方式接入的至少两个处 理器,所述NoC采用MN的MESH拓扑结构构建而成,其中M和N均为正整数。 2.根据权利要求1所述的基于NoC架构的多核处理器平台,其特征在于,所述处理器上 创建有实现处理器数据输入和输出的网络接口,其中NoC包括与网络接口一一对应的路由 节点,且相邻的路由节点之间连接有两条以实现数据相反流向的数据线。 3.根据权利要求2所述的基于NoC架构的多核处理器平台,其特征在于,所述处理器内 设置有用于配合网络接口完成数据传输的RAM读缓存区和RAM写缓存区。 4.根据权利要求13任意一项所。

4、述的基于NoC架构的多核处理器平台,其特征在于, 所述NoC上还分别搭载了Orion2.0和Mcpat工具。 5.基于NoC架构的多核处理器平台设计方法,其特征在于,通过以下步骤实现: (1)设置路由节点的结构,使该路由节点通过XY路由算法寻找目的节点,采用虫洞技 术进行数据转发,且通过时间片轮算法对输出竞争进行仲裁; (2)根据单个路由节点的结构配置Orion2.0功率消耗参数; (3)输入参数M和N,配置NoC的规模,将路由节点进行互联,即可获得MN的MESH拓 扑结构的NoC; (4)在处理器上创建网络接口,并在处理器中创建RAM读缓冲区和RAM写缓冲区,将网 络接口与路由节点一一连接,。

5、得到路由节点排列为MN的矩阵型结构,并且相邻的路由节 点通过两条以实现数据相反流向的数据线连接; (5)为处理器创建Wrapper程序,并将其和网络接口进行连接,使处理器和网络接口之 间进行通信; (6)根据处理器结构配置Mcpat参数。 6.根据权利要求5所述的基于NoC架构的多核处理器平台设计方法,其特征在于,所述 步骤(1)中单个路由节点包括东、西、南、北和本地五个方向,东、西、南、北中的每一个方向 均设置有用于和其他路由接口相连的输出端口和输入端口,其中本地方向还设置有与网络 接口相连的输出端口和输入端口。 7.根据权利要求6所述的基于NoC架构的多核处理器平台设计方法,其特征在于,所。

6、述 步骤(4)中在处理器中创建RAM读缓冲区和RAM写缓冲区的具体步骤如下: (4a)创建RAM读缓冲区,并把路由节点本地输出端输出的数据解包后缓存到网络接 口; (4b)当处理器读信号有效时,将数据搬移到RAM读缓冲区中,再根据配置创建RAM写缓 冲区,当处理器写信号有效时,将数据搬移到RAM写缓冲区。 8.根据权利要求57任意一项所述的基于NoC架构的多核处理器平台设计方法,其 特征在于,所述步骤(6)结束后,还能够对该平台进行仿真,其中仿真步骤如下: (I)将各个处理器上需要并行处理的任务和并行算法用C代码实现; (II)使用OpenRISC工具链生成在OpenRISC上执行的程序; (。

7、III)运行仿真平台,并为各个OpenRISC加载需要执行的程序。 权 利 要 求 书CN 102880762 A 1/5页 3 基于 NoC 架构的多核处理器平台及其设计方法 技术领域 0001 本发明属于计算机领域,具体的说,涉及一种基于NoC架构的多核处理器平台及 其设计方法。 背景技术 0002 随着集成电路技术的发展,单个芯片上的集成度在逐渐增加,单核处理器的性能 得到了很大的提高。但是由于OSI七层协议中的应用层对实时性和运算量的需求继续增 加,已经很难通过提高单核处理器工作频率和扩大芯片面积来满足实时性和运算量的要 求,因此多核处理器并行执行任务的解决方式便被提出来。 0003 。

8、然而在多核处理器的条件下,传统的总线结构并没有被改变,现有技术中DSP是 目前流行的一种处理器平台,可以将多个64+ TM 集成在一个芯片上,为密集处理型产品提供 高达4.2GHz的性能,能够应用到通信基础设施、高端产业、任务关键型应用、高端图像和视 频等领域,通过数据总线和配置总线,实现处理器间以及处理器和外围设备间的通信。然而 DSP采用的是总线架构,同一时刻只能有一个处理器占用总线,对多核处理器平台的性能造 成一定影响,使其并行算法和并行任务处理能力低,而且开发周期长同时运行非常不可靠。 发明内容 0004 本发明的目的在于克服现有技术中采用的处理器平台并行算法和并行任务处理 能力低且开。

9、发周期长、运行非常不可靠的缺陷,提供一种点对点并行传输,可以在多核平台 设计前期对平台进行评估,因此提高平台可靠性的一种基于NoC结构的多核处理器平台及 其设计方法。 0005 本发明采用的技术方案如下: 基于NoC架构的多核处理器平台,包括通过NoC方式接入的至少两个处理器,所述NoC 采用MN的MESH拓扑结构构建而成,其中M和N均为正整数。 0006 为了实现本发明,所述处理器上创建有实现处理器数据输入和输出的网络接口, 其中NoC包括与网络接口一一对应的路由节点,且相邻的路由节点之间连接有两条以实现 数据相反流向的数据线。 0007 为了更好的存储、读写数据,所述处理器内设置有用于配合。

10、网络接口完成数据传 输的RAM读缓存区和RAM写缓存区。 0008 为了实现功率评估功能,所述NoC上还分别搭载了Orion2.0和Mcpat工具。 0009 基于NoC架构的多核处理器平台,本发明还提供了其设计方法: (1)设置路由节点的结构,使该路由节点通过XY路由算法寻找目的节点,采用虫洞技 术进行数据转发,且通过时间片轮算法对输出竞争进行仲裁; (2)根据单个路由节点的结构配置Orion2.0功率消耗参数; (3)输入参数M和N,配置NoC的规模,将路由节点进行互联,即可获得MN的MESH拓 扑结构的NoC; 说 明 书CN 102880762 A 2/5页 4 (4)在处理器上创建网。

11、络接口,并在处理器中创建RAM读缓冲区和RAM写缓冲区,将网 络接口与路由节点一一连接,得到路由节点排列为MN的矩阵型结构,并且相邻的路由节 点通过两条以实现数据相反流向的数据线连接; (5)为处理器创建Wrapper程序,并将其和网络接口进行连接,使处理器和网络接口之 间进行通信; (6)根据处理器结构配置Mcpat参数。 0010 为了方便扩建网络,所述步骤(1)中单个路由节点包括东、西、南、北和本地五个方 向,东、西、南、北中的每一个方向均设置有用于和其他路由接口相连的输出端口和输入端 口,其中本地方向还设置有与网络接口相连的输出端口和输入端口。 0011 进一步的,所述步骤(4)中在处。

12、理器中创建RAM读缓冲区和RAM写缓冲区的具体 步骤如下: (4a)创建RAM读缓冲区,并把路由节点本地输出端输出的数据解包后缓存到网络接 口; (4b)当处理器读信号有效时,将数据搬移到RAM读缓冲区中,再根据配置创建RAM写缓 冲区,当处理器写信号有效时,将数据搬移到RAM写缓冲区。 0012 再进一步的,所述步骤(6)结束后,还能够进行该平台进行仿真,其中仿真步骤如 下: (I)将各个处理器上需要并行处理的任务和并行算法用C代码实现; (II)使用OpenRISC工具链生成在OpenRISC上执行的程序; (III)运行仿真平台,并为各个OpenRISC加载需要执行的程序。 0013 与。

13、现有技术相比,本发明具有以下有益效果: (1)本发明采用了NoC即片上网络进行数据传输,片上网络很好的克服了总线结构的 各种局限,实现整个网络多条点到点的连接,相互间不会产生干扰,解决了处理器出现通信 冲突问题的同时容易实现全局同步;进一步的,整个平台由于采用的是非总线结构,因此即 使随着NoC半径的增大,也不会有任何延迟的情况产生; (2)本发明的多核处理平台还利用其搭载的Orion2.0和Mcpat工具对各个处理器的 功率消耗进行估计,Orion2.0和Mcpat分别根据路由节点结构和处理器的结构进行参数 配置,使之与该平台的架构以及处理器和路由节点内部结构更匹配从而提高估计值的精确 度;。

14、 (3)本发明的路由节点在东、西、南、北的任意一个方向均设置有一个输出端和一个输 入端,因此在已经架构好NoC后,依然可以在NoC边缘处的路由节点上再继续连接路由节 点,即对该平台扩充,实现对NoC架构的弹性需求; (4)本发明路由节点的输入缓存大小可以根据需要配置,因此路由节点可以很好的满 足不同处理器或者平台适用于不同情况时或者其他任何状况,同时该路由节点还采用了XY 路由算法和虫洞技术进行数据转发,更加有效的提高了平台的数据计算和传输速度,节约 了时间;同时该路由节点还采用时间片轮转算法对输出竞争进行仲裁,防止了拥堵、死锁情 况的发生; (5)整个平台在设计完毕后,还可以使用OpenRI。

15、SC工具链编译并行算法源代码,生成 在OpenRISC上执行的程序,便可以实现对该平台的仿真,在仿真结束后可以得到并行算法 说 明 书CN 102880762 A 3/5页 5 的运算结果、执行时间,还能够得到NoC和OR1200上消耗的功率,因此可以利用该仿真结 果对并行算法和并行任务的处理能力和处理精度进行评估,包括并行算法的延时、功耗、 处理精度等都能够进行评估,有利于缩短多核平台的开发周期,提高平台的可靠性,其中 OpenRISC基于GPL协议的开放源代码的RISC处理器,具有完整的工具链,包括:开源的软 件开发工具,C语言实现的CPU仿真模型,操作系统,以及软件应用所需的函数库,使这。

16、种处 理器非常适用于本发明。 附图说明 0014 图1为本发明实施例中44的MESH拓扑结构的NoC。 0015 图2为本发明中开源处理器OR1200原理框图。 0016 图3为本发明中路由节点的原理框图。 0017 图4为本发明中网络接口的原理框图。 0018 图5为本发明中网络接口的工作流程图。 0019 图6为本发明的设计流程图。 具体实施方式 0020 下面结合附图与实施例对本发明作进一步说明,本发明的实施方式包括但不限于 下列实施例。 实施例 0021 如图1所示的基于MESH拓扑结构的片上网络,片上网络简称NoC,所述MESH为无 线网格网络。该NoC拓扑配置为MN=44,共有16。

17、个OR1200开源处理器,且R为路由节 点,其中16个处理器OR1200通过片上网络的方式互联,实现了整个网络点到点的线路连 接,相互间不会产生干扰,所有OR1200之间不会产生通信冲突的问题。 0022 其中图2为本发明中开源处理器OR1200原理框图。 0023 OR1200作为本实施例中的多核仿真平台的处理单元,是一款标量RISC处理器,采 用哈佛结构,拥有5级整数流水线,支持MMU和基本的DSP能力。 0024 图3为R即路由节点的原理框图,该路由节点采用XY路由算法和虫洞进行数据转 发,采用时间片轮转算法对输出竞争进行仲裁,同时配置路由节点的输入缓存大小。其中时 间片轮算法即每个进程。

18、被分配字一个时间段,称作它的时间片,即该进程允许运行的时间。 如果在时间片结束时进程还在运行,则处理器将被剥夺并分配给另一个进程,如果进程在 时间片结束前阻塞或结束,处理器当即进行切换,调度程序所要做的就是维护一张就绪进 程列表,当进程用完它的时间片后,它被移到队列的末尾。 0025 图4为本发明中网络接口,即NI的原理框图。OR1200和NoC之间是通过网络接口 进行连接的,即NI连接到NoC路由节点的本地输出端口。其中如图5所示,NI工作流程如 下: (1)在OR1200中创建RAM读缓冲区,当有数据包从NoC本地端口输出时,NI对数据包 进行解包,即除去包头包尾,提取数据部分并进行缓存;。

19、 (2)在NI与OR1200连接端,NI将路由节点本地输出端输出的数据解包后缓存,NI提 说 明 书CN 102880762 A 4/5页 6 示OR1200有数据到达,并根据OR1200的读信号,将数据搬移到OR1200的RAM即随机存储 器的读缓冲区去,RAM读缓冲区是RAM预先留出的一段区域,用于专门存放从NI中读出的 数据; (3)当NI完成数据搬移之后则向OR1200发出信号,让OR1200从RAM读缓冲区中读取 数据进行操作。同时,根据配置创建RAM写缓冲区,NI还会检测OR1200发出的写信号,并 根据写信号的职能将数据从OR1200的RAM读缓冲区搬移到RAM写缓冲区; (4)。

20、RAM写缓冲区也是RAM中预先留出的一段区域,用于专门存放需要写到NI的数据, 因此NI为数据添加包头包尾,并通过路由节点的本地输入端口,发送到NoC网络中进行传 输; (5)当NI完成数据发送任务之后同样会向OR1200发送信号,通知OR1200可以进行下 一次的写操作。 0026 通过如图6所示设计流程图,能够实现该设计平台的仿真,其仿真结果可以在多 核平台设计前期对平台进行评估,有利于缩短多核平台的开发周期,提高平台的可靠性,其 中具体实现步骤如下: 第一步:实现NoC路由节点结构的配置。 0027 路由节点由5条输入端口和输出端口组成,分别代表东、西、南、北和本地5个连接 方向,因此路。

21、由节点采用XY路由算法寻找目的节点,采用虫洞技术进行数据转发,并采用 时间片伦算法对输出竞争进行仲裁,其中还可以根据需要对路由节点的缓存深度以及数据 位宽进行配置。 0028 第二步:根据如图1所示的路由节点结构,配置Orion2.0功率消耗参数。 0029 其中Orion2.0为平台上的搭载工具,能够在处理过程中对NoC以及各个处理器 的功率消耗进行估计,从而评估该平台并行算法和并行任务的处理能力和处理精度进行评 估;并且根据路由节点结构配置Orion2.0能够使该平台搭载工具根据不同的结构进行相 应的处理,使其适用于不同网络拓扑结构。 0030 第三步:配置NoC的规模,根据输入的参数M=。

22、4和N=4,将路由节点按照对应端口 进行互联,即可获得44的MESH拓扑结构NoC。 0031 该拓扑结构共有16个路由节点R,16个开源处理器OR1200。 0032 第四步:配置NoC和OR1200间的通信接口NI使NoC、OR1200通过NI实现相应功 能。 0033 根据图5所示的NI工作流程,首先需根据配置创建RAM读缓冲区,当OR1200读信 号有效时,将数据搬移到OR1200的RAM中; 接着根据配置创建RAM写缓冲区,当OR1200写信号有效时,将数据从RAM读缓冲区搬 移到RAM写缓冲区,将数据封装后通过本地输入端口发送到NoC中进行传输。 0034 第五步:为OR1200创。

23、建Wrapper,使之能够被平台调用,并将Wrapper和NI进行 连接,使OR1200和NI之间能够进行通信。 0035 Wrapper为OR1200和NI之间的媒介,用于实现OR1200和NI之间的通信。 0036 第六步:根据OR1200的结构,配置Mcpat的参数; 其中Mcpat也为该平台上搭载的工具,用于对并行算法和并行任务的处理能力、处理 精度以及功率消耗进行估计。并且根据OR1200结构配置Mcpat能够使该平台搭载工具根 说 明 书CN 102880762 A 5/5页 7 据不同的结构进行相应的处理,使其适用于不同网络拓扑结构。 0037 第七步:将各个处理器上需要并行处理。

24、的任务和并行算法用C代码实现。 0038 第八步:使用OpenRISC工具链生成在OpenRISC处理器上执行的程序。 0039 其中OpenRISC为开放源代码的精简指令集计算机处理器,为现有技术,其采用免 费开放的32/64bit RISC/DSP架构,并且用Verilog HDL实现了基于该RISC/DSP架构的RTL 描述,这里的RTL为寄存器传输级,并且OpenRISC还具有完整的工具链,该工具链包括:开 源的软件开发工具,C语言实现的CPU仿真模型,操作系统,以及软件应用所需的函数库,使 这种处理器非常适用于本发明。 0040 第九步:运行该多核处理器平台,并为各个OpenRISC处理器加载需要执行的程 序。 0041 按照上述实施例,便可很好的实现本发明。 说 明 书CN 102880762 A 1/5页 8 图1 说 明 书 附 图CN 102880762 A 2/5页 9 图2 说 明 书 附 图CN 102880762 A 3/5页 10 图3 图4 说 明 书 附 图CN 102880762 A 10 4/5页 11 图5 说 明 书 附 图CN 102880762 A 11 5/5页 12 图6 说 明 书 附 图CN 102880762 A 12 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1