commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] r6480 - in gnuradio/branches/developers/jcorgan/radar/


From: jcorgan
Subject: [Commit-gnuradio] r6480 - in gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga: lib tb top
Date: Wed, 19 Sep 2007 19:27:26 -0600 (MDT)

Author: jcorgan
Date: 2007-09-19 19:27:26 -0600 (Wed, 19 Sep 2007)
New Revision: 6480

Modified:
   gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/lib/radar.v
   
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/lib/radar_control.v
   
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/tb/radar_tb.sav
   
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.rbf
   
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v
Log:
Work in progress.

Modified: 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/lib/radar.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/lib/radar.v   
    2007-09-20 00:21:18 UTC (rev 6479)
+++ 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/lib/radar.v   
    2007-09-20 01:27:26 UTC (rev 6480)
@@ -24,7 +24,7 @@
 module radar(clk_i,saddr_i,sdata_i,s_strobe_i,
             tx_side_o,tx_strobe_o,tx_dac_i_o,tx_dac_q_o,
             rx_adc_i_i,rx_adc_q_i,
-            rx_strobe_o,rx_ech_i_o,rx_ech_q_o,auto_tr_o);
+            rx_strobe_o,rx_ech_i_o,rx_ech_q_o,io_tx_ena_o);
    
    // System interface
    input         clk_i;                // Master clock @ 64 MHz
@@ -37,7 +37,7 @@
    output        tx_strobe_o;  // Generate an transmitter output sample
    output [13:0] tx_dac_i_o;   // I channel transmitter output to DAC
    output [13:0] tx_dac_q_o;    // Q channel transmitter output to DAC
-   output        auto_tr_o;     // Transmit/Receive switching
+   output        io_tx_ena_o;   // Transmit/Receive switching
       
    // Receive subsystem
    input  [15:0] rx_adc_i_i;   // I channel input from ADC
@@ -65,8 +65,8 @@
      
(.clk_i(clk_i),.saddr_i(saddr_i),.sdata_i(sdata_i),.s_strobe_i(s_strobe_i),
       .reset_o(reset),.tx_side_o(tx_side_o),.dbg_o(debug_enabled),
       .tx_strobe_o(tx_strobe_o),.tx_ctrl_o(tx_ctrl),.rx_ctrl_o(rx_ctrl),
-      .ampl_o(ampl),.fstart_o(fstart),.fincr_o(fincr),.pulse_num_o(pulse_num));
-    assign auto_tr_o = tx_ctrl;
+      .ampl_o(ampl),.fstart_o(fstart),.fincr_o(fincr),.pulse_num_o(pulse_num),
+      .io_tx_ena_o(io_tx_ena_o));
 
    radar_tx transmitter
      ( .clk_i(clk_i),.rst_i(reset),.ena_i(tx_ctrl),.strobe_i(tx_strobe_o),

Modified: 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/lib/radar_control.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/lib/radar_control.v
       2007-09-20 00:21:18 UTC (rev 6479)
+++ 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/lib/radar_control.v
       2007-09-20 01:27:26 UTC (rev 6480)
@@ -23,7 +23,8 @@
 
 module radar_control(clk_i,saddr_i,sdata_i,s_strobe_i,reset_o,
                     tx_side_o,dbg_o,tx_strobe_o,tx_ctrl_o,rx_ctrl_o,
-                    ampl_o,fstart_o,fincr_o,pulse_num_o);
+                    ampl_o,fstart_o,fincr_o,pulse_num_o,
+                    io_tx_ena_o);
 
    // System interface
    input         clk_i;                // Master clock @ 64 MHz
@@ -42,7 +43,8 @@
    output [31:0] fstart_o;
    output [31:0] fincr_o;
    output [15:0] pulse_num_o;
-
+   output        io_tx_ena_o;
+   
    // Internal configuration
    wire         lp_ena;
    wire         md_ena;
@@ -152,5 +154,8 @@
    assign tx_strobe_o = count[0]; // Drive DAC inputs at 32 MHz
    assign tx_ctrl_o = (state == `ST_ON);
    assign rx_ctrl_o = (state == `ST_LOOK);
+
+   // TODO: make delay configurable
+   assign io_tx_ena_o = tx_ctrl_o;
    
 endmodule // radar_control

Modified: 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/tb/radar_tb.sav
===================================================================
--- 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/tb/radar_tb.sav
   2007-09-20 00:21:18 UTC (rev 6479)
+++ 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/tb/radar_tb.sav
   2007-09-20 01:27:26 UTC (rev 6480)
@@ -19,12 +19,13 @@
 @8420
 radar_tb.uut.tx_dac_i_o[13:0]
 radar_tb.uut.tx_dac_q_o[13:0]
address@hidden
+radar_tb.uut.io_tx_ena_o
 @200
 -
 @28
 radar_tb.uut.controller.tx_ctrl_o
 radar_tb.uut.controller.rx_ctrl_o
-radar_tb.uut.auto_tr_o
 @200
 -
 @28
@@ -37,13 +38,3 @@
 -
 @22
 radar_tb.uut.pulse_num[15:0]
-radar_tb.uut.receiver.count[15:0]
address@hidden
-radar_tb.uut.receiver.fifo_empty
address@hidden
-radar_tb.uut.receiver.fifo_inp[31:0]
-radar_tb.uut.receiver.fifo_out[31:0]
address@hidden
-radar_tb.uut.receiver.state[2:0]
address@hidden
--

Modified: 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.rbf
===================================================================
(Binary files differ)

Modified: 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v
     2007-09-20 00:21:18 UTC (rev 6479)
+++ 
gnuradio/branches/developers/jcorgan/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v
     2007-09-20 01:27:26 UTC (rev 6480)
@@ -86,7 +86,7 @@
 
    // TX
    wire        tx_sample_strobe;
-   wire        auto_tr;
+   wire        io_tx_ena;
    
    wire        serial_strobe;
    wire [6:0]  serial_addr;
@@ -145,9 +145,25 @@
    radar radar_mono ( 
.clk_i(clk64),.saddr_i(serial_addr),.sdata_i(serial_data),.s_strobe_i(serial_strobe),
             
.tx_side_o(tx_side),.tx_strobe_o(tx_sample_strobe),.tx_dac_i_o(tx_i),.tx_dac_q_o(tx_q),
             .rx_adc_i_i(rx_adc0_i),.rx_adc_q_i(rx_adc0_q),
-            
.rx_strobe_o(rx_strobe),.rx_ech_i_o(rx_buf_i),.rx_ech_q_o(rx_buf_q),.auto_tr_o(auto_tr)
+            
.rx_strobe_o(rx_strobe),.rx_ech_i_o(rx_buf_i),.rx_ech_q_o(rx_buf_q),.io_tx_ena_o(io_tx_ena)
           );
+
+   // Route TX enable out to RFX transmit mixer enable
+   assign io_tx_a[5] = tx_side ? 1'bz : io_tx_ena;
+   assign io_tx_b[5] = tx_side ? io_tx_ena : 1'bz;
+
+   // Route opposite of TX enable out to RFX receive mixer
+   assign io_rx_a[5] = tx_side ? 1'bz : ~io_tx_ena;
+   assign io_rx_b[5] = tx_side ? ~io_tx_ena : 1'bz;
    
+   // Route TX enable out to RX/TX switch
+   assign io_tx_a[6] = tx_side ? 1'bz : ~io_tx_ena;
+   assign io_tx_b[6] = tx_side ? ~io_tx_ena : 1'bz;
+
+   // Enable common RX/TX antenna
+   assign io_rx_a[6] = tx_side ? 1'bz : 1'b0;
+   assign io_rx_b[6] = tx_side ? 1'b0 : 1'bz;
+   
    
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // Control Functions
 
@@ -179,9 +195,14 @@
        .debug_0(),.debug_1(),
        .debug_2(),.debug_3(),
        .reg_0(reg_0),.reg_1(reg_1),.reg_2(reg_2),.reg_3(reg_3) );
+
+   wire [1:0] dummy_io = 2'bz;
    
    io_pins io_pins
-     (.io_0(io_tx_a),.io_1(io_rx_a),.io_2(io_tx_b),.io_3(io_rx_b),
+     (.io_0({io_tx_a[15:7],dummy_io,io_tx_a[4:0]}), // Don't connect pins used 
above
+      .io_1({io_rx_a[15:7],dummy_io,io_rx_a[4:0]}),
+      .io_2({io_tx_b[15:7],dummy_io,io_tx_b[4:0]}),
+      .io_3({io_rx_b[15:7],dummy_io,io_rx_b[4:0]}),
       .reg_0(reg_0),.reg_1(reg_1),.reg_2(reg_2),.reg_3(reg_3),
       .clock(clk64),.rx_reset(rx_dsp_reset),.tx_reset(tx_dsp_reset),
       
.serial_addr(serial_addr),.serial_data(serial_data),.serial_strobe(serial_strobe));





reply via email to

[Prev in Thread] Current Thread [Next in Thread]