设计描述内容摘要:

多选一开关建议不采用 if…else… 结构描述 HDL描述中,注意 if…else… 及其结构嵌套结构、 case/casex/casez结构的完整性。 组合逻辑电路描述 编码 /解码电路  将一组形式的二进制数据转化为另一种形式的二进制数据 形式上,编码 /解码电路可采用:  if …else 及其嵌套结构。  case/casex/casez描述结构;  for 循环结构(一般避免采用) 组合逻辑电路描述 inputs A7 A6 A5 A4 A3 A2 A1 A0 Outputs Y2 Y1 Y0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 组合逻辑电路描述 reg [7:0] A。 reg [2:0] Y。 …….. always @(A) begin if (A==8’b00000001) Y=3’b000。 else if (A==8’b00000010) Y=3’b001。 else if (A==8’b00000100) Y=3’b010。 else if (A==8’b00001000) Y=3’b011。 else if (A==8’b00010000) Y=3’b100。 else if (A==8’b00100000) Y=3’b101。 else if (A==8’b01000000) Y=3’b110。 else if (A==8’b10000000) Y=3’b111。 else Y=3’bxxx。 end reg [7:0] A。 reg [2:0] Y。 …….. always @(A) casex(A) 8’b00000001: Y=3’b000。 8’b00000010: Y=3’b001。 8’b00000100: Y=3’b010。 8’b00001000: Y=3’b011。 8’b00010000: Y=3’b100。 8’b00100000: Y=3’b101。 8’b01000000: Y=3’b110。 8’b10000000: Y=3’b111。 default: Y=3’bxxx。 endcase 组合逻辑电路描述 有时也可用 for 循环结构描述编码 /解码逻辑电路,但一般不建议采用( 综合结果很差 ) reg [7:0] A, B。 reg [2:0] I, Y。 …… for (I=0。 I=7。 I=I+1) begin B=A。 B[I] = 1’b0。 if (A[I]==1’b1 amp。 amp。 B==8’b0) Y=I。 else Y=3’bxxx。 end …… 逻辑模拟结果正确 综合结果差。 组合逻辑电路描述 inputs A7 A6 A5 A4 A3 A2 A1 A0 Outputs Y2 Y1 Y0 Valid 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 x 0 0 0 0 0 1 x x 0 0 0 0 1 x x x 0 0 0 1 x x x x 0 0 1 x x x x x 0 1 x x x x x x 1 x x x x x x x x x x 0 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 组合逻辑电路描述 reg [7:0] A。 reg [2:0] Y。 …….. always @(A)。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。