fpga: rfnoc: radio: move arithmetic away from timestamp for timing
Original-commit: 7a3fc743375f065c38f9d6aa3fff43d67cc6b0e0
This commit is contained in:
@@ -421,12 +421,12 @@ module radio_rx_core #(
|
|||||||
|
|
||||||
if (radio_rx_stb) begin
|
if (radio_rx_stb) begin
|
||||||
// Register time comparisons so they don't become the critical path.
|
// Register time comparisons so they don't become the critical path.
|
||||||
// Add two to compensate for the pipeline delays of this comparison and
|
// Subtract two to compensate for the pipeline delays of this comparison
|
||||||
// its propagation through the state machine. This ensures that the
|
// and its propagation through the state machine. This ensures that the
|
||||||
// timestamp in the packet matches the requested timestamp.
|
// timestamp in the packet matches the requested timestamp.
|
||||||
time_now <= (radio_time[63:SHIFT_W]+2 == cmd_time[63:SHIFT_W]);
|
time_now <= (radio_time[63:SHIFT_W] == cmd_time[63:SHIFT_W]-2);
|
||||||
time_now_p1 <= time_now;
|
time_now_p1 <= time_now;
|
||||||
time_past <= (radio_time[63:SHIFT_W] >= cmd_time[63:SHIFT_W]);
|
time_past <= (radio_time[63:SHIFT_W] >= cmd_time[63:SHIFT_W]);
|
||||||
end
|
end
|
||||||
|
|
||||||
case (state)
|
case (state)
|
||||||
|
|||||||
@@ -277,9 +277,9 @@ module radio_tx_core #(
|
|||||||
|
|
||||||
if (radio_tx_stb) begin
|
if (radio_tx_stb) begin
|
||||||
// Register time comparisons so they don't become the critical path
|
// Register time comparisons so they don't become the critical path
|
||||||
time_now_m1 <= (radio_time[63:SHIFT_W]+1 == s_axis_ttimestamp[63:SHIFT_W]);
|
time_now_m1 <= (radio_time[63:SHIFT_W] == s_axis_ttimestamp[63:SHIFT_W]-1);
|
||||||
time_now <= time_now_m1;
|
time_now <= time_now_m1;
|
||||||
time_past <= (radio_time[63:SHIFT_W] > s_axis_ttimestamp[63:SHIFT_W]);
|
time_past <= (radio_time[63:SHIFT_W] > s_axis_ttimestamp[63:SHIFT_W]);
|
||||||
end
|
end
|
||||||
|
|
||||||
if (NSPC > 1) begin
|
if (NSPC > 1) begin
|
||||||
|
|||||||
Reference in New Issue
Block a user