【学习笔记】小梅哥Xilinx FPGA——基于Vivado地FPGA开发流程实践(二选一多路选择器)

目录

创建工程

创建设计文件

编写代码

分析和综合

仿真验证(功能仿真)

布局布线

时序仿真

板级调试


创建工程

1.create project

2.工程名称和地址

3.根据自己手上的开发板进行选择

创建设计文件

编写代码

二选一多路选选择器构造与逻辑:

module mux2(    //module后,括号前,是模块名
    a,          //括号内,端口列表
    b,
    sel,
    out
);
//端口定义
input a;    //输入端口
input b;
input sel;
output out; //输出端口

//二选一多路器实现代码
assign out = (sel==1)? a:b;

endmodule

写完后,保存

分析和综合

仿真验证(功能仿真)

验证思路:sel接地或者接Vcc时,给a和b输入0或1,观察out

写激励文件:

编写仿真文件:

`timescale 1ns/1ps

 module mux2_tb();
    
     reg s_a;//激励信号定义为reg型
     reg s_b;
     reg sel;
     wire out;//观察用的输出 wire型
     
     
 //例化模块
 mux2 mux2_inst0(    //前一个是模块名称 后一个是标签名称
    .a(s_a),          
    .b(s_b),
    .sel(sel),
    .out(out)
);
 
 //产生激励
initial begin
     s_a=0;s_b=0;sel=0;
     #200;   //延时200ns
     s_a=0;s_b=0;sel=1;
     #200;  
      s_a=0;s_b=1;sel=0;
     #200;   
      s_a=0;s_b=1;sel=1;
     #200;  
      s_a=1;s_b=0;sel=0;
     #200;   
      s_a=1;s_b=0;sel=1;
     #200;  
      s_a=1;s_b=1;sel=0;
     #200;   
      s_a=1;s_b=1;sel=1;
     #200;  
end

 
 
 endmodule

功能仿真

仿真结果:

默认仿真到1000ns,但是我们需要1600ns,所以点这个,继续仿真

结果如下:

分析:a、b或者sel变化,out同时变化。

布局布线

时序仿真

分析:输出变化有延迟。信号从输入端口进来,到内部经过传输,最后实现逻辑功能,有一定的延迟。这是真实存在的传输延迟。

板级调试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值