module top(input clk, cen, rst, ina, inb, output reg outa, outb, outc, outd); | |
reg temp0 = 1'b0, temp1 = 1'b0; | |
initial outa = 1'b0; | |
initial outb = 1'b0; | |
initial outc = 1'b0; | |
initial outd = 1'b0; | |
always @(posedge clk) | |
if (cen) | |
if(rst) | |
temp0 <= 1'b0; | |
else | |
temp0 <= ina; | |
always @(negedge clk) | |
if (ina) | |
if(rst) | |
temp1 <= 1'b1; | |
else | |
temp1 <= inb; | |
always @(posedge clk or posedge rst) | |
if(rst) | |
outa <= 1'b0; | |
else | |
outa <= temp0; | |
always @(posedge clk) | |
outb <= temp1; | |
always @(negedge clk) | |
outc <= temp0; | |
always @(negedge clk or posedge rst) | |
if (rst) | |
outd <= 1'b1; | |
else | |
outd <= temp1; | |
endmodule |