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

相关推荐
黄埔数据分析13 小时前
QDMA把描述符当数据搬移, 不用desc engine
fpga开发
南檐巷上学20 小时前
基于FPGA的正弦信号发生器、滤波器的设计(DAC输出点数受限条件下的完整正弦波产生器)
fpga开发·数字信号处理·dsp·dds
嵌入式-老费1 天前
Linux Camera驱动开发(fpga + csi rx/csi tx)
fpga开发
ALINX技术博客2 天前
【202601芯动态】全球 FPGA 异构热潮,ALINX 高性能异构新品预告
人工智能·fpga开发·gpu算力·fpga
JJRainbow2 天前
SN75176 芯片设计RS-232 转 RS-485 通信模块设计原理图
stm32·单片机·嵌入式硬件·fpga开发·硬件工程
s9123601012 天前
FPGA眼图
fpga开发
北京青翼科技2 天前
【PCIe732】青翼PCIe采集卡-优质光纤卡- PCIe接口-万兆光纤卡
图像处理·人工智能·fpga开发·智能硬件·嵌入式实时数据库
minglie12 天前
verilog信号命名规范
fpga开发
XINVRY-FPGA2 天前
中阶FPGA效能红线重新划定! AMD第2代Kintex UltraScale+登场,记忆体频宽跃升5倍
嵌入式硬件·fpga开发·硬件工程·dsp开发·fpga
南檐巷上学2 天前
基于FPGA的音频信号监测识别系统
fpga开发·音频·verilog·fpga·傅立叶分析·fft·快速傅里叶变换