初学Vivado,点亮led,点亮新的世界

系列文章前言

关于FPGA的学习,之前的很长一段时间都是用的Altera(已被Intel收购)的芯片在做事情,平台是Quartus;最近接触到了ZYNQ,是Xilinx(已被AMD收购)推出的一款SOC,把ARM cortex-A9处理器与FPGA组合起来的一种片上系统,性能强大啊!因此学习记录一下吧!就当做个学习笔记,平台为Vivado,还需要熟悉一下这款EDA工具啊!加油友友们!!!



前言

第一步永远是点灯啊,老点灯大师啦,哈哈哈,其实点灯也有很多学问啊,可以用简单的计数器,也可以用FSM实现,点灯可以玩出很多花样,本次试验是为了熟悉Vivado这款EDA工具,熟悉一下页面以及流程。

一、Vivado软件的使用?

其实FPGA的开发流程都是一样的,因为之前有点点小小小小的基础,此次也就是回顾一下下,然后最重要的是熟悉Vivado啦

二、具体步骤

1.创建工程

第一步肯定是建一个工程啦,这个工程是干嘛的? 我直接,命名led了,和quartus一样,创建要命名,要选地址,要选器件类型等等;

2.创建v文件

工程创建完成后就是创建一个rtl文件,也就是.v文档,用于写你的FPGA逻辑啊,这一块就是很重要了,这属于PL端的事情,也就是你想在FPGA端想要实现的功能啊!点灯嘛~

`timescale 1ns / 1ps
//
// Company: 
// Engineer: 
// 
// Create Date: 2023/09/27 09:26:54
// Design Name: 
// Module Name: led
// Project Name: 
// Target Devices: 
// Tool Versions: 
// Description: 
// 
// Dependencies: 
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
//


module led(
    input clk,
    input rst_n,
    output reg [3:0] led
    );
    reg [24:0] count;
    always@(posedge clk or negedge rst_n)begin
        if(!rst_n) begin
            count <= 25'd0;
        end
        else if(count == 25'd24_999_999) begin
            count <= 25'd0;
        end
        else begin
            count <= count + 1'b1;
        end 
    end
    always@(posedge clk or negedge rst_n)begin
        if(!rst_n) begin
            led <= 4'd0;
        end
        else if(count == 25'd24_999_999) begin
            led <= ~led;
        end
        else  begin
            led <= led;
        end
    end    
endmodule
 

插入代码选择语言的时候为啥没有verilog或者VHDL啊,差评,只能插入块啦

3.描述完了电路,得转换成真实的电路啊

所以第三步要分析综合了,看看你用硬件描述语言VHDL描述的电路,分析与综合出来的电路是不是一坨,综合完你就能看到了。

4.接着就是添加约束啦

约束有引脚约束和时序约束,很容易理解,就不多说了,TCL脚本语言玩得6的,直接写就行,玩不6,根据界面操作也可,操作完就能看到一个.xdc文档,就是约束文档。

5.也约束完了,还得综合一下

高速EDA工具,你必须在我的约束下进行布局布线哈,要听话喔!所以EDA在布局布线的时候,就会考虑你的约束,尽量满足你的需求,真棒啊!

6.设计的功能对不对啊,要仿真的

仿真也是直接创建一个.v文件,把工程例化进去,看看波形,是否是自己所要。

7.没问题就生成bit文件吧,这是下载到芯片里的文档啊,

8.然后下载板级调试就可以啦


总结

点灯并不难,重要的是把这个EDA工搞明白,这才是目的,接下来还有很多要学习的地方,一步一个脚印,慢慢来。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值