关于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文库

相关推荐
热爱学习地派大星8 分钟前
Xilinx FPGA功耗评估
fpga开发·verilog·vivado·fpga功耗·xpe
搬砖的小码农_Sky5 小时前
XILINX Ultrascale+ Kintex系列FPGA的架构
fpga开发·架构
XvnNing5 小时前
【Verilog硬件语言学习笔记4】FPGA串口通信
笔记·学习·fpga开发
千宇宙航6 小时前
闲庭信步使用SV搭建图像测试平台:第二十七课——图像的腐蚀
图像处理·计算机视觉·fpga开发
尤老师FPGA10 天前
使用DDR4控制器实现多通道数据读写(十六)
fpga开发·ddr4
HX科技10 天前
STM32给FPGA的外挂FLASH进行升级
stm32·嵌入式硬件·fpga开发·flash·fpga升级
sz66cm10 天前
FPGA基础 -- Verilog 驱动强度(drive strength)与电荷强度(charge strength)
fpga开发
海涛高软11 天前
FPGA深度和突发长度计算
fpga开发
hahaha601611 天前
vivado使用非自带的第三方编辑器
fpga开发
芝士不会写代码11 天前
【FPGA学习】DDS信号发生器设计
学习·fpga开发