Skip to content

Commit 2aadc61

Browse files
Try changing rx logic to *not* reset disparity when getting IDLE and just use the decoder's disparity
1 parent 203ed61 commit 2aadc61

File tree

2 files changed

+1
-11
lines changed

2 files changed

+1
-11
lines changed

hdl/ip/bsv/ignition/IgnitionReceiver.bsv

-10
Original file line numberDiff line numberDiff line change
@@ -341,16 +341,6 @@ module mkReceiver
341341
channels[i].expect_idle <= True;
342342
end
343343

344-
// When an Idle set is received the running disparity of the link
345-
// can be determined. This is idempotent and safe to set any time an
346-
// Idle set is received.
347-
if (idle1) begin
348-
channels[i].rd <= RunningPositive;
349-
end
350-
else if (idle2) begin
351-
channels[i].rd <= RunningNegative;
352-
end
353-
354344
// The link polarity gets to be adjusted once. Subsequent occurances
355345
// of inverted Idle sets are recorded as Invalid in the Idle history
356346
// and will trigger a link reset.

hdl/ip/bsv/ignition/test/TargetTransceiverTests.bsv

+1-1
Original file line numberDiff line numberDiff line change
@@ -316,7 +316,7 @@ module mkLoopbackTransceiver #(
316316

317317
Reg#(UInt#(5)) disconnect_bit_select <- mkReg(0);
318318

319-
mkTestWatchdog((10 * n_characters_watchdog) + 10);
319+
mkTestWatchdog((15 * n_characters_watchdog) + 10);
320320

321321
(* fire_when_enabled *)
322322
rule do_transmit;

0 commit comments

Comments
 (0)