显示译码器——Verilog HDL语言

显示译码器

  • 任务描述
  • 相关知识
    • 逻辑原理
    • 共阴数码管及其电路
  • 编程要求
  • 源代码

任务描述

根据所学的组合逻辑及数字电路的知识完成一个16进制7段数码显示译码器的设计,验证满足一个16进制7段数码显示译码器的规则,根据逻辑真值表和逻辑表达式完成表决功能。熟悉Quartus II的Verilog HDL文本设计流程,掌握组合逻辑电路的设计仿真和硬件测试的方法。最后完善一个16进制7段数码显示译码器电路的功能描述风格Verilog HDL 代码。

相关知识

逻辑原理

7 段数码是纯组合电路,通常的小规模专用 IC,如 74 或 4000 系列的器件只能作十进制 BCD 码译码,然而数字系统中的数据处理和运算都是 2 进制的,所以输出表达都是 16 进制的,为了满足 16 进制数的译码显示。
7 段译码器的输出信号 LED7S 的 7 位分别接如下图所示数码管的 7 个段,高位在左,低位在右。例如当 LED7S输出为“1101101”时,数码管的 7 个段: g,f,e,d,c,b,a 分别接 1,1,0,1,1,0,1;接有高电平的段发亮,于是数码管显示“5”。注意,这里没有考虑表示小数点的发光管。
7 段数码显示译码器设计采用 case 语句对数码管的七个段分别进行赋值 0 或 1,实现数字的显示。

共阴数码管及其电路

显示译码器——Verilog HDL语言_第1张图片

编程要求

为了完成判断学生成绩等级的任务,完善编程模块设计代码,编写的程序要能根据不同的输入能够得到满足7段数码显示译码器显示输出。

源代码

测试平台:EduCoder

module decl7s_test(a,led7s);
      input [3:0] a;
      output [6:0] led7s;
      reg [6:0] led7s;
  always @(a)
// 请在下面添加代码,完成7段数码显示译码器显示
/* Begin */
    begin 
       case(a)
            4'b0000:led7s = 7'b0111111;
            4'b0001:led7s = 7'b0000110;
            4'b0010:led7s = 7'b1011011;
            4'b0011:led7s = 7'b1001111;
            4'b0100:led7s = 7'b1100110;
            4'b0101:led7s = 7'b1101101;
            4'b0110:led7s = 7'b1111101;
            4'b0111:led7s = 7'b0000111;
            4'b1000:led7s = 7'b1111111;
            4'b1001:led7s = 7'b1101111;
            4'b1010:led7s = 7'b1110111;
            4'b1011:led7s = 7'b1111100;
            4'b1100:led7s = 7'b0111001;
            4'b1101:led7s = 7'b1011110;
            4'b1110:led7s = 7'b1111001;
            4'b1111:led7s = 7'b1110001;
            default: led7s = 7'b0000000;
        endcase
    end 
/* End */
endmodule    
       

觉得有帮助的可以点个赞再走哦!!

你可能感兴趣的:(Verilog,HDL)