微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 关于case语句的综合结果!

关于case语句的综合结果!

时间:10-02 整理:3721RD 点击:
一直在学习Verilog,一般作仿真。一直以为学习的还可以,最近买了一个开发板,发现一个很简单的例子都没弄清楚!
请高手指教,以下是由case语句实现的7段显示译码器,一般书上说,如果没写default分支,那么该模块综合的结构应该带锁存器,也就是说,
综合后的电路对超过9的输入,不应该做任何的反应,保持原来的值不变,而我在实验板做的结果是当输入超过9的情况时,其显示结果有变化。
输入连接到四个开关,输出连接数码管。

请高手给解释解释!
module SEG7_LUT (oSEG,iDIG);
input [3:0] iDIG;
output [6:0] oSEG;
reg  [6:0] oSEG;
always @(iDIG)
begin
  case(iDIG)
  4'h1: oSEG = 7'b1111001; // ---t----
  4'h2: oSEG = 7'b0100100;  // |   |
  4'h3: oSEG = 7'b0110000;  // lt  rt
  4'h4: oSEG = 7'b0011001;  // |   |
  4'h5: oSEG = 7'b0010010;  // ---m----
  4'h6: oSEG = 7'b0000010;  // |   |
  4'h7: oSEG = 7'b1111000;  // lb  rb
  4'h8: oSEG = 7'b0000000;  // |   |
  4'h9: oSEG = 7'b0011000;  // ---b----
  4'h0: oSEG = 7'b1000000;
  endcase
end
endmodule

难道,我没说清楚吗?怎么没人讲讲呢?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top