I'd like to take in a 1PPS signal on the USRP1, and, using the inband FPGA
firmware, trigger a reset of the timestamp on the rising edge of every 1PPS
pulse to get a rough idea of timing.  From reading the documentation, I know
that my max input voltage cannot be higher than 3.3V, so I've got that
covered, but I can't seem to get the verilog code to work.  I've modified
the verilog code to add the following lines to the top level code:

        // Master timestamp counter
        reg [31:0] timestamp_counter;

        wire
ts_io_reset;                                                             //
<-- NEW LINE
        assign ts_io_reset = io_rx_a[0];
     // <-- NEW LINE
        always @ (posedge clk64 or posedge ts_io_reset) begin // <--
MODIFIED
                if (ts_io_reset)
               // <-- NEW LINE
                        timestamp_counter <=
32'd0;                            // <-- NEW LINE
                else if (tx_dsp_reset | rx_dsp_reset)        //FIXME: does
it make sense for rx/tx to reset independently?
                        timestamp_counter <= 32'd0;
                else
                        timestamp_counter <= timestamp_counter + 32'd1;
        end


Nothing happens when I apply a test input to input 0 of the basic rx board
(I am also polling the io from software with read_io, and I see the input
switching).  I am new to verilog, but for the life of me I can't figure out
what I'm doing wrong here.

I am using a basic_rx and a basic_tx on side 0 of a USRP1.

Thanks,
Mike
_______________________________________________
Discuss-gnuradio mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to