当前位置: 首页 > news >正文

FPGA自学笔记(正点原子ZYNQ7020):1.Vivado软件安装与点灯

一、Vivado软件安装

        下载链接:通过网盘分享的文件:Vivado
链接: https://pan.baidu.com/s/1-uZ594FYP3U0n5c1zWawLw?pwd=4jex 提取码: 4jex 
--来自百度网盘超级会员v6的分享

        下载完之后,右键点xsetup.exe以管理员方式运行

全同意:        

选择第三个

安装完后,点“Copy license”,选择.lic文件

二、点灯

        先查看最小系统板的原理图,可以看到LED1的那一头接的网络名称是B35_IO0

  然后在文档中搜索B35_IO0,可以看到这个网格名对应的是G14,那么对应的引脚约束文件中就要写G14

        那么新建一个项目,除了下面型号选择:xc7z010clg400-1

        其余部分一路点确定,不熟悉可以看看官方文档,整体的文件路径如下:

       led_twinkle.v代码如下:


module led_twinkle(input   sys_clk,      // 系统时钟input   sys_rst_n,    // 复位信号,低电平有效output  led           // 单 LED 输出,连接到 G14 引脚
);reg [25:0] cnt;// LED 闪烁逻辑:当 cnt < 2500_0000 时,led = 1(点亮);否则 led = 0(熄灭)
assign led = (cnt < 26'd2500_0000) ? 1'b1 : 1'b0;// 计数器逻辑:基于 50MHz 时钟,计数到 5000_0000(1秒),然后复位
always @(posedge sys_clk or negedge sys_rst_n) beginif (!sys_rst_n)cnt <= 26'd0;else if (cnt < 26'd5000_0000)cnt <= cnt + 1'b1;elsecnt <= 26'd0;
endendmodule

        led_twinkle.xdc代码如下:

#时钟周期约束
create_clock -name clk -period 20 [get_ports sys_clk ]
#IO 管脚约束
set_property -dict {PACKAGE_PIN U18 IOSTANDARD LVCMOS33} [get_ports sys_clk]
set_property -dict {PACKAGE_PIN J15 IOSTANDARD LVCMOS33} [get_ports sys_rst_n]
set_property -dict {PACKAGE_PIN G14 IOSTANDARD LVCMOS33} [get_ports led]

        然后vivado左侧框有很多绿色运行的按钮,点击的先后顺序和运行意义如下:

  1. Run Synthesis

    • 作用:将你的 Verilog 代码led_twinkle.v)转换为硬件网表(netlist),并应用约束文件(led_twinkle.xdc)中的时钟和引脚约束。
    • 操作:在 Vivado 的 Flow Navigator 中,点击 Run Synthesis
    • 检查
      • 确保 led_twinkle.v 和 led_twinkle.xdc 已正确添加到项目中,且 led_twinkle.xdc 被设置为目标约束文件。
      • 综合完成后,检查 Messages 或 Reports 窗口,确认没有错误(errors)。如果有警告(warnings),如之前的 [Constraints 18-5210],需参考历史对话中的解决方法(例如,检查约束文件是否正确加载)。
      • 综合成功后,会生成一个合成检查点文件(例如 led_twinkle.dcp)。
  2. Run Implementation

    • 作用:将综合生成的硬件网表映射到目标器件(xc7z010clg400-1)的物理资源上,进行布局(placement)和布线(routing),并优化设计以满足时序要求。
    • 操作:在 Flow Navigator 中,点击 Run Implementation
    • 前置条件:必须先成功完成 Run Synthesis
    • 检查
      • 实现完成后,检查 Messages 或 Log 窗口,确认没有错误。如果有错误(例如时序违例或引脚分配问题),需检查 led_twinkle.xdc 文件中的引脚分配是否与开发板匹配。
      • 打开 Timing Summary 报告,确认时序约束是否满足(即没有负的时序裕量,negative slack)。
      • 实现成功后,会生成布局布线后的设计检查点。
  3. Generate Bitstream

    • 作用:将实现后的设计转换为比特流文件.bit),该文件可下载到 ZYNQ7020 开发板的 FPGA 上以控制硬件(例如 LED 闪烁)。
    • 操作:在 Flow Navigator 中,点击 Generate Bitstream
    • 前置条件:必须先成功完成 Run Implementation
    • 检查
      • 比特流生成完成后,检查 Messages 窗口,确认没有错误。
      • 成功后,Vivado 会在项目目录的 runs 文件夹中生成比特流文件(例如 led_twinkle.bit)。
      • 如果生成失败,查看详细错误日志,可能的原因包括引脚分配错误、时序未满足或约束文件问题。
  4. 下载到硬件(可选,运行程序到开发板)

    • 作用:将生成的比特流文件下载到 ZYNQ7020 开发板,运行 LED 闪烁程序。
    • 操作
      1. 连接 ZYNQ7020 开发板到电脑,确保开发板电源已打开。
      2. 在 Flow Navigator 中,点击 Open Hardware Manager
      3. 点击 Open Target -> Auto Connect,连接到你的开发板。
      4. 选择 Program Device,选择你的设备(xc7z010clg400-1),然后加载生成的 .bit 文件。
      5. 点击 Program 将比特流下载到开发板。

然后观察现象可以看到红色的灯在每隔1s闪烁:

http://www.dtcms.com/a/445939.html

相关文章:

  • 6. linux shell命令(3)进程管理相关命令
  • 临清网站优化做网站必须托管服务器吗
  • 依赖注入的好处和不用依赖注入的对比
  • KAN(Kolmogorov-Arnold Networks)通俗理解
  • 李飞飞物理世界 AI:价值维度、技术瓶颈与突破路径研究
  • 企业网站建设网站优化推广网站开发连接效果
  • k8s学习(二)——kubernetes整体架构及组件解析
  • K8s学习笔记(十三) StatefulSet
  • k8s学习-pod的生命周期
  • 校园网站建设申请报告企业网站建设在国内现状
  • php 8.4.1 更新日志
  • VR大空间资料 01 —— 常用VR框架对比
  • 重庆渝中区企业网站建设哪家专业建湖人才网官网登录
  • 【Linux】IP
  • 近红外相机在机器视觉检测中的应用
  • 【QT常用技术讲解】multimedia实现指定分辨率打开摄像头
  • 阿里巴巴网站的搜索引擎优化案例邢台做网站的价格究竟多少钱?
  • 一个学校随机点名系统(代excel 自定义导入名字,+随机点名)
  • 苍穹外卖-缓存商品、购物车功能
  • 海南住房和城乡建设厅网站首页建站之星怎么使用
  • 番茄畅听音乐版自动化任务实现教程
  • java基础-12 : 单列集合(Collection)
  • 查看邮箱注册过的网站百度资源搜索引擎
  • 网站建设常用编程语言square wordpress
  • 动规:01背包
  • 返利APP的“订单追踪”技术难点:如何通过埋点+消息队列(RocketMQ)实时同步淘宝/京东订单状态?
  • Net开发工具最新Rider 2025使用
  • 基于华为openEuler部署Dillinger个人文本编辑器
  • wordpress 标签固定链接宁波seo网络推广外包报价
  • 网站建设数据库是什么百度一下京东