关于FPGA软核的仿真(一)

MicroBlaze是Xilinx专为FPGA设计的软核处理器,其本质是通过FPGA的可编程逻辑资源(如查找表LUT、触发器Flip-Flop)动态构建的处理器架构,其本质为搭建处理器电路。MicroBlaze上运行嵌入式C代码程序,通过CoreConnect总线与FPGA内的硬件模块通信,共同完成可编程系统芯片SOPC的设计。

对有软核处理器的FPGA代码进行仿真主要有以下两种方式,C代码与FPGA联合仿真、verilog测试激励编写。

一、C代码与FPGA联合仿真

当FPGA中存在MicroBlaze要进行仿真时,其核心问题是将嵌入式C代码程序和FPGA设计联系在一起,在仿真运行的过程中,嵌入式C代码程序运行在软核处理器上,通过总线与FPGA内的硬件模块进行通信。

Vivado工具提供的将嵌入式C代码程序和FPGA设计联系在一起的方法为在Tools下面Associate ELE_Files下选择已经编译的C代码程序。

当然上述方法,存在以下难点:

1、如果直接用研制方提供编译的C代码程序,测试激励的产生完成依赖于编译好的程序,其程序产生测试激励是否依赖其他的条件不饿可知,何时产生测试激励不可知,导致测试激励的产生不可控,同时也会造成时间的浪费。

2、如果针对不同的测试场景编写不同.C的测试激励,对测试人员的能力提出了较大挑战,反而额外增加了仿真测试激励编写的复杂度。

二、verilog测试激励编写

更为直接的一种方式则是通过编写verilog代码测试激励模拟软核程序的行为。测试人员只需将重点放在软核处理器与FPGA通信的总线时序上,极大提高了仿真效率。

最新在搜索资料的时候,使用的是迷塔AI搜索,搜索出来的内容质量很高。同时我也搜索到关于软核仿真不错的资料,在这里也共享一下

【免费】FPGA设计基于Kintex-7的MicroBlaze处理器系统仿真与硬件实现:使用IPIntegrator构建和验证嵌入式系统资源-CSDN文库

相关推荐
乌恩大侠10 小时前
【OAI】 USRP 在conf文件中的配置,RU选项
fpga开发
qq_小单车1 天前
xilinx-DNA
fpga开发·xilinx
Flamingˢ1 天前
FPGA中的嵌入式块存储器RAM:从原理到实现的完整指南
fpga开发
Flamingˢ1 天前
FPGA中的存储器模型:从IP核到ROM的深度解析与应用实例
网络协议·tcp/ip·fpga开发
FPGA小c鸡2 天前
【FPGA深度学习加速】RNN与LSTM硬件加速完全指南:从算法原理到硬件实现
rnn·深度学习·fpga开发
Aaron15882 天前
通信灵敏度计算与雷达灵敏度计算对比分析
网络·人工智能·深度学习·算法·fpga开发·信息与通信·信号处理
博览鸿蒙3 天前
IC 和 FPGA,到底区别在哪?
fpga开发
思尔芯S2C3 天前
FPGA原型验证实战:如何应对外设连接问题
fpga开发·risc-v·soc设计·prototyping·原型验证
Flamingˢ3 天前
FPGA实战:VGA成像原理、时序详解与Verilog控制器设计与验证
fpga开发
FPGA_小田老师3 天前
xilinx原语:OSERDES2(并串转换器)原语详解
fpga开发·lvds·xilinx原语·oserdese·并串转换