blob: 1dc9f95ee4cca5c32e02ab1dbe44d6a1106ce86f [file] [log] [blame]
// File name: edgedetect.sv
// Created: 11/28/2020
// Author: Zachary Ellis
// Version: 1.2 Only detect negative edges
// Description: edge detector for synchronization of CAN bus
module edgedetect (
input clk,
input nRST,
input CANRX,
output edgedet
);
reg [1:0] delay_ff;
assign edgedet = ~delay_ff[0] & delay_ff[1];
always_ff @(posedge clk, negedge nRST) begin
if(nRST == 0)
delay_ff <= '0;
else begin
delay_ff[0] <= CANRX;
delay_ff[1] <= delay_ff[0];
end
end
endmodule