采用FPGA的NoC验证平台实现方案_第1页
采用FPGA的NoC验证平台实现方案_第2页
采用FPGA的NoC验证平台实现方案_第3页
采用FPGA的NoC验证平台实现方案_第4页
采用FPGA的NoC验证平台实现方案_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

采用FPGA的NoC验证平台实现方案

半导体工艺技术进入深亚微米时代后,基于总线系统芯片SoC(Svstemon

Chip)的体系结构在物理设计、通信带宽以及功耗等方面无法满足未来多IP体

系发展的需求。片上网络NoC(NetwotlkonChip)是一种新的系统芯片体系

结构,其核心思想是将计算机网络技术移植到系统芯片设计中来,从体系结构

上彻底解决总线架构带来的问题。

研究人员从拓扑结构、路由算法、交换策略以及流控机制等多个方面对NoC

进行研究,但是如何构建NoC验证平台,快速得到NoC的性能也一直是NoC研

究的重点。

在过去的几年里,一些研究机构提出了对于NoC不同抽象层次的验证方法

的研究,一般的NoC验证是基于软件的假真和建模,如:用C、也、SvstemC

进行系统级建模仿真,这样验证很灵活,但在仿真时间上却开销很大。本文提

出的基于FPGA的NoC验证平台在仿真速度方面是一般基于HDL的软件仿真的

16000倍,而基于PC机编写的NoC软件更增强了该平台的灵活性和实用性。

1验证平台架构

该验证平台采用模块化设计,可以很容易地对不同的NoC进行功能验证和

性能*估。图1给出了该验证平台的基本架构。

图1基于FPGA的NoC验证平台架构

它主要包括3个模块:

1)模拟IP核模块该模块包含有数据流量产生器TG(Traffic

Generator)模块及数据流量接收器TR(TrafficReceiver)模块。TG模拟产

生NoC网络中各个TP节点可能产生的数据流量,TR用于收集NoC运行过程中

的各种信息。TG/R作为一个IP节点和待测NoC中的每个交换节点相连接。

2)微处理器MPU及其接口MP1模块PC机通过MPU(FPGA中自带的Nj至II

软核)和MPI实现对NoC各IP核中TG内部各个配置寄存器的配置,并将TR中

各个寄存器的内容读取到PC机中进行处理。本模块和模拟IP核模块构成FPGA

硬件平台。

3)NoC软件模块完成对NoC的配置以及NoC系统的性能统计。PC机通过

MPU与FPGA进行通信,实现对NoC的配置并从FPGA中得到数据并进行后端处

理,以图形的方式显示给用户,供用户对所设计的NoC进行*估。同时PC机可

以监控NoC运行的情况。

FPGA采用Ahera公司StratixIV系列中的EP4SGX230KF40C2,该器件能够

提供高速的时钟信号和大量的片内资源,并具有大量外围接口电路可供使用,

这为基于FPGA的验证提供了强有力的保证。

1.1流量产生器TG

该平台中的TG是一个可重用的软核,用户可以通过为配置寄存器写入不同

的配置信息使其产生不同的流量并注入NoC中。TR用于接收数据信息,并统计

发包数和收包数。

记录延时信息,统计误码个数。图2给出了TG、TR和MPI以及NoC之间的

数据流向。

图2TG.TH和MPI以及NoC之间的金据流向

在片上网络中,流量的分布由以下2方面决定:1)流量的源/目的节点对

的分布,即空间位置上的通信概率分布,称为空间分相;2)流量注入网络时,

注入网络的时间间隔在时间上呈现的概率分布,称为时间分布。为了使该平台

达到*价NoC性能的目的,流量产生器TG将从空间分布和时间分布的不同,模

拟出不同的流量。

空间分布主要包括:1)给定目标地址:即配置TG产生发往确定目标地址

的数据包;2)均匀分布:即配置TG产生均匀的发往网络中各个节点的数据

包,类似于网络中的广播现象;3)热点分布:即配置TG产生发往网络中一些

特定的数据交换相对频繁的节点的数据包;4)局部分布:即配置TG产生发往

网络中某一局部的网络距离较近的节点的数据包;5)矩阵转换地址分布:即按

照矩阵X,Y向量转置的特点。配置TG产生发往与发送节点地址相对应的节点

的数据包。

时间分布主要包括:1)确定时间间隔:即配置TG每过一定数目的时钟周

期发送1个数据包,直到停止发包为止;2)自相似流量模型:即ON-OFF流量

模型。即配置TG在一段时间内发送数据包,在一段时间内停止发包。此类流量

模型就是模拟现实中在某一段时间突发很大的流量,而在另外的时间段不产生

流量;3)随机分布:即配置TG在发送1个数据包之间的间隔是1个随机时钟

周期数。

空间分布和时间分布一般会交错配置使用,那么组合之后可以产生十儿种

不同的流量模型.另外,数据包的格式可以是用户指定的数据,也可以是伪随

机序列PRBS(PseudoRandomBinarySequences)o数据包的大小亦可由月户

指定,以数据片为单位,最小的数据包包含4片,最大的数据包包含511片。

那么将流量模型和数据格式以及数据包的大小组合起来,就会产生种类更为丰

富的流量模型。

流量产生器TG内部设有多个配置寄存器,包括:发包使能寄存器,发包间

隔寄存器,发包地址和数据寄存器以及发包类型寄存器。这些寄存器统一编

址,用户可以通过配置这些寄存器控制TG工作。

1.2流量接收器TR

流量接收器TR用于收集收发包数目,收发包的收据片,并且统计误码和时

延信息。为了达到此目的,TR内部设有多个只读寄存器,包括:发包个数寄存

落.收包个数寄存器,发包数据寄存潜,收包数据寄存器,中断寄存器,误码

计数器以及延时寄存器,延时寄存器可以保存最近80个包的延时信息。这些寄

存器统一编址,可以通过访问这些寄存器来读取各种用于功能验证和性能*估的

原始数据。

1.3微处理器MPU及微处理器接口MPI

微处理器MPU是在QuartusII软件的SOPCBuilder工具中定制的。它包括

1个NiosH处理器IP核和外围的一些并行输入输出接口。NiosIH系列嵌入式

处理器是一款通用的RISC结构的CPU,使用32位指令集结构(ISA)的二进制

代码兼容。将NioslI处理器嵌入到FPGA硬件平台中,配合整个系统实现验证

的功能。该平台在所定制的NiosH处理器的外围还加入读信号、写信号、地址

信号、输入数据信号、输出数据信号和中断信号等,来完成PC机和FPGA硬件

平台之间的数据通信。

NiosII处理器外围还包括一个锁相环(PLL)软核,用于提供NoC电路中所

需要的各种时钟频率。微处理器MPU与TG/R通信时,读写控制时钟作为突发

时钟,频率一般比较低。而NoC中交换节点之间的数据交换会由于特定电路的

不同,工作时钟频率会大小不同,那么根据此工作频率,PLL产生相应的时钟

信号配合其工作。MPU处理器仅占StratixIVEP4SGX230KF40c2器件2820个

逻辑资源LE(LogicElement)(即1%)。因此使用非常高效。

该平台还提供一个通用的微处理器接口MPL用于保障MPU和TG/R之间的

数据通信,也为MPU和TG/R的重复使用提供了统一接口。

1.4NoC软件

NoC软件主要完成对FPGA硬件平台的初始化配置和信息收集及统计处理。

根据功能划分为2部分:

1)NoC测试部分其基本功能包括对FPGA硬件平台的各个IP中TG内部配

置寄存器的初始化配置,启动产生数据流并注入到NoC中,同时对NoC的运行

情况进行监控,并实时收集与功能验证和性能*估相关的信息。该软件是在

NiosH的集成开发环境(IDE)下用C语言设计开发的,在GNU的编译器下编译

之后形成可以上载到MPU上直接运行的二进制文件。

2)NoC性能统计处理部分该部分的主要功能是借助于第三方绘图工具按照

NoC性能统计规则对收集到的数据进行统计处理,并以图表的方式直观显示NoC

的基本功能和统计学性能。

以上两部分都是在PC机上开发完成的,可应用于对不同NoC的测试与验

证。这为基于FPGA的鲤件验证平台增强了灵活性和实用性。

2仿真验证流程

该验证平台的验证流程包括FPGA硬件平台的构建和对该硬件平台的初始化

配置以及NoC运行之后的信息收集和统计处理。为真验证流程如图3所示。

图3仿真验证流程

其流程简述如下:1)根据硬件架构思想和模块化设计策略将用HDL语言描

述的NoC连接到FPGA硬件平台;2)初始化配置FPGA硬件平台,在PC机上编

写NoC测试软件,并通过Jtag线下载到MPU上运行,配置TG产生指定流量,

并注入到NoC中;3)当FPGA平台运行时,即当数据在NoC各个交换节点之间

传送或停止传送时,用户可以随时改变配置以产生不同的流量,来测试NoC在

不同流量下的性能,并随时*测试平台的运行情况;4)将TR收集到的数据在

NiosHIDE的控制台显示,并保存数据。然后对收集到的数据进行统计处理,

并以图形的方式直观显示待测NoC的性能。

3NoC性能统计处理

在验证平台中,采用PC机对NoC中运行之后相关的数据进行处理.,并借助

于第三方工具将处理结果以图形方式显示,以直观表示NoC的性能。该平台对

于课题组设计的Mesh结构的NoC进行了功能验证和性能*估。

主要处理包括平均网络吞吐量和最近收到的80个数据包从发送端到接收端

的网络平均延时以及误码统计,下面简单介绍性能*估的方法:

1)网络平均吞吐量对于TR收集到的收包个数通过PC读取之后,绘制性

能曲线图。以归一化仿真时间为基准,以相同时间段中收集的数据包数目作为

网络总吞吐量。

式中,总运行时间xlO%表示取归一化时延的1/10o

图4给出了在不同流量模型下,每包4个数据片时,所设计NoC的网络平

均吞吐量。

/

*,

4

*

地址纥力.■灵时引,隔

序肥加J匕[梢依成,立

局配地址.陈机分布

G.507b0^V.X0.9

归一化仿衰H同

W4不同流政模型FM网络平均吞吐量

2)平均网络延迟对于TR收集到的最近80人数据包从发送端到接收端的

延迟信息,以归一化仿真时间为基准,计算平均网络延迟:

o.i0.20.50.60.70.80.9

«一亿访工时间

图5不同流址模舒F的平均网络延迟

式中,P是发包总数,每个包的延迟为Li,那么Latency就是一段时间内

的平均网络延迟。

3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论