入门 FPGA——ALINX XILINX ZYNQ XC7Z020
本文最后更新于 540 天前,其中的信息可能已经有所发展或是发生改变。

写在前面

我花了一晚上来等 AMD 的邮件

本篇为学习 XILINX XC7Z020 开发板笔记。
这篇玩意我估计会超级长,打算 1-2 个月的时间来完成。其中包括了 FPGA、SDK、LINUX、PYNQ、以及硬件设计。

FPGA

首先要安装 VIVADO
https://china.xilinx.com/support/download.html
下载完成后安装,然后把破解 licence 放进去

看到时间就是完成了

一些基本的使用方法

内嵌逻辑分析仪

然后就是一路 OK,Create,,

点这样一个小东西,展开 ILA 层级关系

点灯

创建工程

这里选择 Verilog,仿真选 Mixed ,Mixed 可以仿真 VHDL 和 Verilog HDL 两种语言。

添加约束这里不需要进行任何的操作

这个选型是针对 7Z020 芯片的,其他的需要根据手册自行选择
7Z010 要选择 -1 的速度;7Z020 要选择 -2 的速度;

Summary 有感叹号不重要,直接 Finish 就是了

然后就能看到这样的界面

若有弹出提示窗口,则点击 OK

module led(
 input sys_clk,
 input rst_n,
 output reg [3:0] led
 );
reg[31:0] timer_cnt;
always@(posedge sys_clk or negedge rst_n)
begin
 if (!rst_n)
 begin
 led <= 4'd0 ;
 timer_cnt <= 32'd0 ;
 end
 else if(timer_cnt >= 32'd49_999_999)
 begin
 led <= ~led;
 timer_cnt <= 32'd0;
 end
 else
 begin
 led <= led;
 timer_cnt <= timer_cnt + 32'd1;
 end

end
endmodule

把例程代码复制黏贴到 module-endmodule 内(需要覆盖原有的

打开 IO 菜单,然后设置好端口和电压


普通 IO 口只需约束引脚号和电压,管脚约束如下:
set_property PACKAGE_PIN “引脚编号” [get_ports “端口名称”]
电平信号的约束如下:
set_property IOSTANDARD “电平标准” [get_ports “端口名称”]
这里需要注意文字的大小写,端口名称是数组的话用{ }刮起来,端口名称必须和源代码中的名字一致,且端口名字不能和关键字一样
电平标准中“LVCMOS33”后面的数字指 FPGA 的 BANK 电压,LED 所在 BANK 电压为 3.3伏,所以电平标准为“LVCMOS33”。Vivado 默认要求为所有 IO 分配正确的电平标准和管脚编号。

然后开始综合,这个步骤一路 OK即可,其中会有一步需要选择 CPU 核心数量,可以根据自己电脑性能进行选择

综合完成后我们需要添加约束条件,因此在这里点 Cancel

一个 FPGA 设计除了管脚分配以外,还有一个重要的约束,那就是时序约束,这里通过向导方式演示如果进行一个时序约束。

然后直接 Skip to Finish ,即可

然后开始创建比特流,这一步同样需要选择 CPU 核心数,编译结束后需要进行仿真,同样的选择 Cancel

这一步是进行仿真设置

创建仿真文件

这里打错箭头了,要点 Finish,然后一路 OK

然后打开仿真文件,然后把代码复制进去

然后进行行为级仿真

WOC,VAVIDO 闪退了!

然后就是烧录了,这是需要连接板子的串口和电源,注意,先要把线全部接好,然后再上电

然后点 Auto Connect,然后如图

效果如下图所示

使用内嵌的逻辑分析仪,步骤如图

把代码复制进 LED.V 中,然后再一次生成比特文件

ila_0 ila_inst( 
    .clk(sys_clk),
    .probe0(timer_cnt),
    .probe1(led)
    );

注意,这两处的名字要一样,不然无法创建比特流

然后重新烧录
然后点一下 RUN 就能看到时序了

可以添加一下简单的触发条件

先点循环触发,再点 RUN,能进行一个循环的触发

改变 Trigger Position in window,可以改变触发时序图的分布,增加被触发后的时序采样

Mark Debug 是在代码中添加综合属性,实现在线调试。两种逻辑分析的方法不一样,不能同时使用,因此需要把刚才的例化代码删掉

用 Language Templates 能快速查找想要的代码

然后把 (* MARK_DEBUG=”true” * ) 贴到需要 Debug 的端口前面

然后进行综合

评论

  1. Avatar photo
    Windows Chrome 107.0.0.0
    1 年前
    2022-11-21 20:21:11

    是金钱的味道😍

    • Avatar photo
      于洋
      初心
      Macintosh Chrome 110.0.0.0
      1 年前
      2023-2-22 15:02:33

      h

  2. Avatar photo
    hhl
    Windows Chrome 102.0.0.0
    1 年前
    2023-3-14 15:56:20

    催更

    • Avatar photo
      bobi83
      博主
      hhl
      Windows Edge 109.0.1518.61
      1 年前
      2023-3-14 23:12:59

      我把开发板忘记在家里了,等我做完毕设就回家拿,sorry~~

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇