fpga中vivado怎么使用bram

fpga中vivado怎么使用bram,第1张

两张方法:
1)从vivado的ipcore catalog里面直接拖出来。这个一般需要你用axi4总线去控制,所以你还需要axi4 interconnect,bram controller之类的ipcore。
2) 直接将ipcore catalog里面的bram添加到你的project模块中。可以选择不用axi4接口。这样你在模块里面声明实例化调用bram模块就行。

存放在ZYNQ芯片内部ROM不可更改,用于找到FSBL并启动它(从SD或者QSPI或者NAND),ug585第六章

用于引导U-Boot

用于引导Linux Kernel

petalinux工具可以构建2和3还有内核

BOOTBIN包括fsbl,bitstream,用户程序(uboot)

imageub包括了kernel(devicetree DTB和rootfs通过设置可选包不包含在ub内)

主要是分析下FSBL工程的main函数

调用ps7_init函数

主要是对PS端配置信息进行初始化 *** 作,包括MIO,PLL,CLK and DDR

我们在vivado软件中可以通过图形化的方式对ZYNQ PS端外设进行相关配置,那么这些配置信息会写入到hdf文件,SDK(或petalinux)会对hdf文件进行解析并生成对应的寄存器配置表,然后FSBL工程中会通过ps7_init函数将寄存器配置表写入到对应的寄存器中,完成对MIO/PLL/CLK/DDR等外设的硬件配置。

先调用Xil_DCacheFlush函数完成刷DCache缓存的 *** 作,然后再调用Xil_DCacheDisable禁用DCache缓存。

调用RegisterHandlers函数

调用DDRInitCheck函数

调用InitPcap函数

处理器配置访问端口

这个寄存器记录ZYNQ的启动方式(QSPI、SD、NAND、Nor、JTAG)

可以通过MIO3 MIO4  MIO5这三个引脚去配置ZYNQ的启动方式

ZYNQ上电复位的时候,会将这三个引脚的电平状态保存在BOOT_MODE寄存器当中。

每一种启动方式会有不同的处理方式。

第一、先初始化对应的flash设备

第二、再将MoveImage函数指针指向Flash设备的读写函数实体

调用LoadBootImage函数

FSBL的主要工作是启动U-Boot(终极目标),也要将bitstream文件加载到PL端。

找到U-Boot、bitstream

在读取U-Boot拷贝DDR中对应的加载地址,读取bitstream加载到PL端

调用FsblHandoff(HandoffAddress)

启动完U-Boot之后,FSBL的使命的就完成了。

过程步骤:

1)在Vivado软件里找到Settings设置选项,进入,点击Bitstream选项,将 bin_file 勾上,点击 OK
2)点击 generate bitstream (可以分步进行,Run Synthesis—Run implementation— genereate bitstream),生成 bit 文件和 bin 文件。
3)点击 open hardware manager,连接板子
4)在Hardware面板中右击FPGA器件(xc7a35t_0),选择Add Configuration Memery Device。
5)在d出的添加配置存储器的界面中,找到板载的Flash存储器型号,点击OK,完成添加。这里开发板flash型号是( n25q64 )选择33v。
6)添加完成后,Vivado会提示添加完成,是否立即配置存储器。点击OK,进入配置存储器的界面,开始将二进制bin文件烧写到外部配置flash存储器中。

7)找到二进制bin文件,选中,进行代码烧写, 实现上电自启动,完成程序固化。

1 综合有很多约束可以用:KEEP,DONT_TOUCH,MARK_DEBUG。这些都能帮助你实现自己的需求,具体情况具体分析。 综合和实现的各阶段都有-directive命令可以让你尝试各种策略。 2看一下UG908。 3 HLS生成的IP只能给Vivado用,你可以在ISE工程中导入HLS生成的源代码。 4 一般一个季度出一个新版本。建议在Xilinx主页下载一个Document Navigator,将Vivado的User Guide阅读一下。有问题时再到相应文档中搜索相关的使用办法。

使用vivado isim仿真的方法和过程如下:
1) 测试平台建立;
a) 在工程管理区点击鼠标右键,d出菜单选择New Source,d出界面; b) 输入文件名,选择Verilog Test Fixture,打钩add to project,单击NEXT;
c) 选择要仿真的文件,点击NEXT;
d) 点击“FINISH”,就生成一个Verilog测试模块。
ISE能自动生成测试平台的完整构架,包括所需信号、端口声明以及模块调用的实现。所需要完成的工作就是initial…end模块中的“//Add stimulus here”后面添加测试向量生成代码。
这里给出示例测试代码,将其添加于//Add stimulus here处
#100;
SW = 7;
#100;
SW = 11;
#100;
SW = 13;
#100;
SW = 14;
2) 测试平台建立后,在工程管理区将状态设置为“Simulation”;选择要仿真的文件名,
过程管理区就会显示“Isim simlator”;
3) 下拉“Isim simlator”,选择“Simulate Behavioral Model”,单击鼠标右键,现在“Process Properties”可修改仿真远行时间等。
4) 修改后,直接双击“Isim simlator”中的“Simulate Behavioral Model”进行仿真。
检查仿真结果是否达到预期设计目标。
Vivado设计套件,是FPGA厂商赛灵思公司2012年发布的集成设计环境。包括高度集成的设计环境和新一代从系统到IC级的工具,这些均建立在共享的可扩展数据模型和通用调试环境基础上。集成的设计环境——Vivado设计套件包括高度集成的设计环境和新一代从系统到IC级的工具,这些均建立在共享的可扩展数据模型和通用调试环境基础上。


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

原文地址: http://www.outofmemory.cn/yw/13364595.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-22
下一篇 2023-07-22

发表评论

登录后才能评论

评论列表(0条)

保存