利用FPGA软硬件协同系统验证SoC系统的过程和方法

利用FPGA软硬件协同系统验证SoC系统的过程和方法,第1张

摘要: 设计了一种基于FPGA的验证平台及有效的SoC验证方法,介绍了此FPGA验证软硬件平台及软硬件协同验证架构,讨论和分析了利用FPGA软硬件协同系统验证SoC系统的过程和方法。利用此软硬件协同验证技术方法,验证了SoC系统、DSP指令、硬件IP等。实验证明,此FPGA验证平台能够验证SoC设计,提高了设计效率。

引言

1基于DSP核控制的SoC系统

本文设计的SoC系统采用国内自主研发DSP核,主要包括: DSP处理器核、片上AXI总线、PWM、事件捕获器、看门狗控制、中断控制器、复位管理、存储模块、I/O以及其他外设(UARTCAN、SPI等)模块。这些模块与DSP核之间通过AXI总线连接,进行数据通信。AMBA AXI的总线协议具有高性能、支持高频传输、高速亚微型系统互连的特征,为主从结构,一切触发都由主设备发起。核间通信总线采用SoC系统中应用最多的AXI总线结构,比较灵活,可满足对带宽需求不同的各种IP。

基于DSP的SoC系统结构框图如图1所示。

利用FPGA软硬件协同系统验证SoC系统的过程和方法,图1 基于DSP的SoC系统结构框图,第2张

 

图1 基于DSP的SoC系统结构框图

2 SoC系统的FPGA验证平台

FPGA验证平台用于SoC芯片验证,可以对大规模SoC系统的设计进行快速准确的实时验证,根据不同SoC规模容量,采用不同的FPGA硬件资源,硬件平台建设也有所不同。由于FPGA具有静态可编程和在线动态重构特性,能够使硬件功能电路同软件程序一样方便修改,使得FPGA验证修改十分方便、实时性好,还可以缩短开发周期、降低开发成本。FPGA具有的这些特点使其成为通用的SoC功能验证的器件,为SoC的系统原型验证提供了一个非常合适的平台。目前FPGA已经从系统集成、系统存储、系统时钟和系统接口4个方面满足了SoC芯片验证的要求,为快速系统原型验证提供了一个非常合适的平台。本文的FPGA验证平台采用Xilinx Virtex6 LX760器件,是建立在Xilinx Virtex6 FPGA板上的软硬件联合验证系统,并用ISE13.3进行综合和布局布线。另外,此FPGA硬件验证平台包括支持DSP程序下载的JTAG接口。

2.1FPGA硬件平台搭建
硬件平台搭建主要使用了两个Xilinx Virtex-6 LX760 FPGA器件,具有15.2M个逻辑门。Virtex-6 LX760面向高端应用,具有更多的时钟和存储资源,而且能够支持更快的速度。通过分析,所选择FPAG能够满足此SoC验证使用,为了实现通用性,该FPGA硬件验证平台采用了子板和母板相结合的方式。

在母板上设置有通用的FPGA芯片、相应的PROM、系统全局时钟的选择和配置模块、系统复位逻辑、FPGA芯片下载接口、与子板连接的connector接口等模块。子板根据验证需求,配置了JTAG调试子板,以提供DSP仿真器连接的调试接口。另外还设计配置了验证EMIF访问外部存储设备通路的SRAM存储器子板。为了方便测试和验证EMIF接口功能,在这两类测试子板上,都设有关键信号的测试探测点,以方便测试一些基础的时钟、复位信号以及其他探测信号。

2.2FPGA软件环境搭建
在SoC 设计中,经常会使用一些硬IP 核(如PLL、SRAM、ADCUSB transceiver 等),而在采用FPGA验证技术验证ASIC及SoC设计的过程中,需要做ASIC设计原码的转换,所以首先需要对SoC进行修改,以适合FPGA的开发环境。如门控的处理,添加PLL对所需要的时钟进行适当的分/倍频,存储单元RAM、FIFO的替换,修改子模块配置,特殊单元的处理等。还要根据特定的硬件平台增加FPGA 相关时序TIming的约束和I/O引脚的指定约束,并搭建一个能够自动仿真和验证的环境。在FPGA验证过程中主要使用ISE13.3内置综合工具或专用综合工具对RTL进行编译、综合,生成网表。生成的网表可以生成bit文件,包括优化、适配、bit文件生成等。进行静态时序分析,检查是否满足预定的时钟频率要求,若不能满足,则重新进行综合编译优化。如果多次进行优化仍不能满足时序要求,则根据违反时序信息查找关键路径,对RTL设计代码进行修改优化。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2603327.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-09
下一篇 2022-08-09

发表评论

登录后才能评论

评论列表(0条)

保存