Verilog HDL行为建模具体实例
出处:maychang 发布于:2007-04-29 10:11:57
7.4 行为建模具体实例
以上面的频率计数器为例,其中的 HEX2LED 和 CNT_4b 模块采用行为建模。
2004-08-16 第37页,共41页
版权所有,侵权必究
绝密
Verilog HDL 入门教程请输入文档编号
CNT_4b 模块对应的文件 CNT_4b.v 的内容如下:
module CNT_4b (CLK, ENABLE, RESET, FULL, Q);
input CLK;
input ENABLE;
input RESET;
output FULL;
output [3:0] Q;
wire CLK;
wire ENABLE;
wire RESET;
wire FULL;
wire [3:0] Q;
// add your declarations here
reg [3:0] Qint;
always @(posedge RESET or posedge CLK)
begin
if (RESET)
Qint = 4'b0000;
else if (ENABLE)
begin
if (Qint == 9)
Qint = 4'b0000;
else
Qint = Qint + 4'b1;
end
end
assign Q = Qint;
assign FULL = (Qint == 9) ? 1'b1 : 1'b0;
endmodule
该模块实现一个模10 的计数器。
HEX2LED 模块对应的文件HEX2LED.v 的内容为:
module HEX2LED (HEX, LED);
2004-08-16 第38页,共41页
版权所有,侵权必究
绝密
Verilog HDL 入门教程请输入文档编号
input [3:0] HEX;
output [6:0] LED;
wire [3:0] HEX;
reg [6:0] LED;
// add your declarations here
always @(HEX)
begin
case (HEX)
4'b0001 : LED = 7'b1111001; // 1
4'b0010 : LED = 7'b0100100; // 2
4'b0011 : LED = 7'b0110000; // 3
4'b0100 : LED = 7'b0011001; // 4
4'b0101 : LED = 7'b0010010; // 5
4'b0110 : LED = 7'b0000010; // 6
4'b0111 : LED = 7'b1111000; // 7
4'b1000 : LED = 7'b0000000; // 8
4'b1001 : LED = 7'b0010000; // 9
4'b1010 : LED = 7'b0001000; // A
4'b1011 : LED = 7'b0000011; // B
4'b1100 : LED = 7'b1000110; // C
4'b1101 : LED = 7'b0100001; // D
4'b1110 : LED = 7'b0000110; // E
4'b1111 : LED = 7'b0001110; // F
default :LED = 7'b1000000; // 0
endcase
end
endmodule
该模块实现模10 计数器的值到 7段码的译码。
至此,整个频率计数器的系统设计由4个模块(4个文件)我们已设计完毕。这就是HDL 的自
顶向下的设计方式和HDL的多种建模方式的应用。
来源:零八我的爱
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- PLC 编程中急停开关触点抉择:常开还是常闭?接线要点揭秘2025/6/26 16:02:37
- 全面解析:PLC 控制柜设计原理、布局接线与原理图2025/6/16 16:12:05
- PLC控制系统输入/输出回路的隔离技术2025/6/12 17:27:11
- 深度解析:PLC 上升沿和下降沿指令的应用时机与使用方法2025/6/9 15:18:19
- 利用 PLC 轻松打造红绿交通灯控制系统2025/5/29 15:36:55