差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
stepmxo2-lab6 [2021/09/12 10:56]
gongyu 移除
— (当前版本)
行 1: 行 1:
-=====实验目的===== 
-  * (1)熟悉和掌握FPGA开发流程和Lattice Diamond软件使用方法; 
-  * (2)通过实验理解译码器电路; 
-  * (3)学习Verilog HDL行为级描述方法描述组合逻辑电路。 
-=====实验任务===== 
-设计一个2-4译码器。 
-=====实验原理===== 
-2-4译码器,输入的2位二进制代码共有四种状态,译码器将每个输入代码译成对应的一根输出线上的高、低电平信号。由此可得如下表1-6的真值表。将输入的A、B和输出Y0、Y1、Y2、Y3的关系写成逻辑表达式则得到:\\ ​ 
-  
-Y0=A’B’\\ ​ 
-Y1=A’B\\ ​ 
-Y2=AB’\\ ​ 
-Y3=AB\\ ​ 
-  
  
-{{::​2-4译码器真值表.png?​nolink&​300|}} \\  ​ 
-=====逻辑电路===== 
-{{::​逻辑电路2-4译码器.png?​nolink&​300|}} 
-=====Verilog HDL建模描述===== 
-2-4译码器程序清单decode24.v\\ ​ 
-<code verilog> 
- 
- 
-  module decode24 
-   ( 
-     input wire [1:0] a,           //​定义两位输入 
-     ​output reg [3:0] led      //​定义输出的4位译码结果对应的led 
-   ); 
-  //​always块语句,a值变化时执行一次过程块 
-  always@(a) ​                   ​ 
- begin 
- case(a) 
- 2'​b00:​ led = 4'​b0001;​ //​2-4译码结果 
- 2'​b01:​ led = 4'​b0010;​ 
- 2'​b10:​ led = 4'​b0100;​ 
- 2'​b11:​ led = 4'​b1000;​ 
- endcase 
- end 
-  endmodule 
-  </​code>​ 
-=====实验步骤===== 
-  - 打开Lattice Diamond,建立工程。 
-  - 新建Verilog HDL设计文件,并键入设计代码。 
-  - 综合并分配管脚,将输入信号a[0]、a[1]分配至拨码开关,将输出信号led[0]~led[3]分配至板卡上的LED。a[0]/​M7,​a[1]/​M8,​led[0]/​N13,​led[1]/​M12,​led[2]/​P12,​led[3]/​M11 
-  - 构建并输出编程文件,烧写至FPGA的Flash之中。 
-  - 按下对应按键/​拨动拨码开关,观察输出结果。