URL
https://opencores.org/ocsvn/ps2_host_controller/ps2_host_controller/trunk
Show entire file |
Details |
Blame |
View Log
Rev 2 |
Rev 3 |
Line 46... |
Line 46... |
input wire ps2_clk_posedge,
|
input wire ps2_clk_posedge,
|
input wire ps2_clk_negedge,
|
input wire ps2_clk_negedge,
|
output wire watchdog_rst
|
output wire watchdog_rst
|
);
|
);
|
|
|
|
wire ps2_clk_edge = ps2_clk_posedge | ps2_clk_negedge;
|
|
|
|
reg watchdog_active;
|
|
always @(posedge sys_clk)
|
|
begin
|
|
if (sys_rst | watchdog_rst | ~(watchdog_active | ps2_clk_edge)) begin
|
|
watchdog_active = 0;
|
|
end
|
|
else begin
|
|
watchdog_active = 1;
|
|
end
|
|
end
|
|
|
reg [`T_200_MICROSECONDS_SIZE - 1:0] watchdog_timer;
|
reg [`T_200_MICROSECONDS_SIZE - 1:0] watchdog_timer;
|
always @(posedge sys_clk)
|
always @(posedge sys_clk)
|
begin
|
begin
|
if (sys_rst | watchdog_rst | ps2_clk_posedge | ps2_clk_negedge) begin
|
if (sys_rst | watchdog_rst | ~watchdog_active | ps2_clk_edge) begin
|
watchdog_timer <= `T_200_MICROSECONDS;
|
watchdog_timer <= `T_200_MICROSECONDS;
|
end
|
end
|
else begin
|
else begin
|
watchdog_timer <= watchdog_timer - 1;
|
watchdog_timer <= watchdog_timer - 1;
|
end
|
end
|
© copyright 1999-2025
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.