注意:
1. 二进制中9后面为a,而不是10,因此十位以上的数需要将个位和十位分开讨论,即 s[3:0]==4‘d9是否成立,若成立再判断s[7:4]==4'd5是否成立
2. 此题中12表示为十六进制的 8'h12 , 而不是十进制的 8'd12
3. 复位为12:00:00,pm为0
4.时针为12后不复位到0,而复位到1
module top_module(
input clk,
input reset,
input ena,
output pm,
output [7:0] hh,
output [7:0] mm,
output [7:0] ss);
wire enam,enah,enap;
assign enam=(ss==8'h59);
assign enah=(ss==8'h59 && mm==8'h59);
assign enap=(ss==8'h59 && mm==8'h59 && hh==8'h11);
s s1(.clk(clk),.reset(reset),.ena(ena),.ss(ss));
m m1(.clk(clk),.reset(reset),.ena(enam),.mm(mm));
h h1(.clk(clk),