anchor.diff:         let tlp <- arbiter.tlp_out_to_bus.get();
          tlpToBusFifo.enq(tlp);
          if (csr.tlpTracing) begin
  -	   TimestampedTlpData ttd = TimestampedTlpData { seqno: csr.tlpSeqno, unused: 7'h08, tlp: tlp };
  +	   TimestampedTlpData ttd = TimestampedTlpData { timestamp: timestamp, unused: 7'h08, tlp: tlp };
   	   csr.tlpDataBram.request.put(BRAMRequest{ write: True, responseOnWrite: False, address: truncate(csr.tlpDataBramWrAddr), datain: ttd });
   	   csr.tlpDataBramWrAddr <= csr.tlpDataBramWrAddr + 1;
   	   csr.tlpSeqno <= csr.tlpSeqno + 1;
  
positive.code:    endrule
  
     FIFO#(TLPData#(16)) tlpFromBusFifo <- mkFIFO();
     rule traceTlpFromBus;
         let tlp = tlpFromBusFifo.first;
         tlpFromBusFifo.deq();
         dispatcher.tlp_in_from_bus.put(tlp);
         $display("tlp in: %h\n", tlp);
         if (csr.tlpTracing) begin
  	   TimestampedTlpData ttd = TimestampedTlpData { seqno: csr.tlpSeqno, unused: 7'h04, tlp: tlp };
  	   csr.tlpDataBram.request.put(BRAMRequest{ write: True, responseOnWrite: False, address: truncate(csr.tlpDataBramWrAddr), datain: ttd });
  	   csr.tlpDataBramWrAddr <= csr.tlpDataBramWrAddr + 1;
  	   csr.tlpSeqno <= csr.tlpSeqno + 1;
         end
     endrule: traceTlpFromBus
  
  
negative.code:                                                  , max_payload_bytes
                                                   );
  
     Reg#(Bit#(32)) timestamp <- mkReg(0);
     rule incTimestamp;
         timestamp <= timestamp + 1;
     endrule
     rule endTrace if (csr.tlpTracing && csr.tlpDataBramWrAddr > 2047);
         csr.tlpTracing <= False;
     endrule
  