commit-gnuradio
[Top][All Lists]
Advanced

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

[Commit-gnuradio] r5477 - in gnuradio/branches/developers/jcorgan/snd/gr


From: jcorgan
Subject: [Commit-gnuradio] r5477 - in gnuradio/branches/developers/jcorgan/snd/gr-sounder/src: fpga fpga/lib fpga/tb fpga/top python
Date: Wed, 16 May 2007 14:07:46 -0600 (MDT)

Author: jcorgan
Date: 2007-05-16 14:07:46 -0600 (Wed, 16 May 2007)
New Revision: 5477

Added:
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/strobe.v
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/Makefile.am
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.sav
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.v
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb_test.sh
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb_wave.sh
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_lp.sh
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_rx.sh
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_tx.sh
Modified:
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/Makefile.am
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/dac_interface.v
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/lfsr_constants.v
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder.v
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_rx.v
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_tx.v
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.qsf
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.rbf
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.v
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/Makefile.am
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py
Log:
Work in progress.

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/Makefile.am
===================================================================
--- gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/Makefile.am    
2007-05-15 20:58:19 UTC (rev 5476)
+++ gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/Makefile.am    
2007-05-16 20:07:46 UTC (rev 5477)
@@ -21,4 +21,4 @@
 
 include $(top_srcdir)/Makefile.common
 
-SUBDIRS = top lib
+SUBDIRS = top lib tb

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/dac_interface.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/dac_interface.v
    2007-05-15 20:58:19 UTC (rev 5476)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/dac_interface.v
    2007-05-16 20:07:46 UTC (rev 5477)
@@ -27,16 +27,16 @@
    input ena_i;
    input strobe_i;
    
-   input [15:0] tx_i_i;
-   input [15:0] tx_q_i;
+   input [13:0] tx_i_i;
+   input [13:0] tx_q_i;
 
-   output [15:0] tx_data_o;
+   output [13:0] tx_data_o;
    output       tx_sync_o;
 
 `ifdef TX_RATE_MAX
    wire clk128;
    reg clk64_d;
-   reg [15:0] tx_data_o;
+   reg [13:0] tx_data_o;
    
    // Create a 128 MHz clock
    dacpll pll128(.areset(rst_i),.inclk0(clk_i),.c0(clk128));

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/lfsr_constants.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/lfsr_constants.v
   2007-05-15 20:58:19 UTC (rev 5476)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/lfsr_constants.v
   2007-05-16 20:07:46 UTC (rev 5477)
@@ -24,8 +24,7 @@
    output reg  [15:0] mask_o;
    output wire [15:0] len_o;
    
-   wire [31:0] len = (32'b1 << degree_i) - 32'b1;
-   assign len_o = len[15:0];
+   assign len_o = (1 << degree_i) - 1;
    
    always @*
      case (degree_i)

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder.v
===================================================================
--- gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder.v  
2007-05-15 20:58:19 UTC (rev 5476)
+++ gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder.v  
2007-05-16 20:07:46 UTC (rev 5477)
@@ -35,14 +35,14 @@
    
    // Transmit subsystem
    input         tx_strobe_i;  // Generate an transmitter output sample
-   output [15:0] tx_dac_i_o;   // I channel transmitter output to DAC
-   output [15:0] tx_dac_q_o;    // Q channel transmitter output to DAC
+   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
 
    // Receive subsystem
    input         rx_strobe_i;  // Indicates receive sample ready from ADC
    output       rx_strobe_o;   // Indicates output samples ready for Rx FIFO
-   input  [15:0] rx_adc_i_i;   // I channel input from ADC
-   input  [15:0] rx_adc_q_i;   // Q channel input from ADC
+   input  [15:0] rx_adc_i_i;   // I channel input from ADC interface module
+   input  [15:0] rx_adc_q_i;   // Q channel input from ADC interface module
    output [15:0] rx_imp_i_o;   // I channel impulse response to Rx FIFO
    output [15:0] rx_imp_q_o;   // Q channel impulse response to Rx FIFO
         
@@ -51,6 +51,7 @@
    wire         transmit;
    wire         receive;
    wire         loopback;
+
    wire [4:0]   degree;
    wire [15:0]          mask;
    wire [15:0]          len;
@@ -65,12 +66,13 @@
    lfsr_constants constants(.degree_i(degree),.mask_o(mask),.len_o(len));
 
    // Loopback implementation
-   wire   [15:0] tx_i, tx_q, rx_i, rx_q; // Internal transmit and receive data 
bus
+   wire [13:0] tx_i, tx_q; // Internal transmit and receive data busses
+   wire [15:0] rx_i, rx_q; 
 
-   assign tx_dac_i_o = loopback ? 16'b0 : tx_i;
-   assign tx_dac_q_o = loopback ? 16'b0 : tx_q;
-   assign rx_i       = loopback ? tx_i  : rx_adc_i_i;
-   assign rx_q       = loopback ? tx_q  : rx_adc_q_i;
+   assign tx_dac_i_o = loopback ? 13'b0 : tx_i;
+   assign tx_dac_q_o = loopback ? 13'b0 : tx_q;
+   assign rx_i       = loopback ? {tx_i,2'b00} : rx_adc_i_i;
+   assign rx_q       = loopback ? {tx_q,2'b00} : rx_adc_q_i;
    
    sounder_tx transmitter
      ( .clk_i(clk_i),.rst_i(reset),.ena_i(transmit),
@@ -81,6 +83,6 @@
      ( .clk_i(clk_i),.rst_i(reset),.ena_i(receive),
        
.rx_strobe_i(rx_strobe_i),.tx_strobe_i(tx_strobe_i),.mask_i(mask),.len_i(len),
        
.rx_in_i_i(rx_i),.rx_in_q_i(rx_q),.rx_i_o(rx_imp_i_o),.rx_q_o(rx_imp_q_o),
-       .rx_strobe_o(rx_strobe_o) );
+       .rx_strobe_o(rx_strobe_o),.loop_i(loopback));
 
 endmodule // sounder

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_rx.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_rx.v   
    2007-05-15 20:58:19 UTC (rev 5476)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_rx.v   
    2007-05-16 20:07:46 UTC (rev 5477)
@@ -20,7 +20,8 @@
 //
 
 module sounder_rx(clk_i,rst_i,ena_i,rx_strobe_i,tx_strobe_i,mask_i,len_i,
-                 rx_in_i_i,rx_in_q_i,rx_i_o,rx_q_o,rx_strobe_o);
+                 rx_in_i_i,rx_in_q_i,rx_i_o,rx_q_o,rx_strobe_o,
+                 loop_i);
    
    input         clk_i;                // Master clock
    input         rst_i;         // Subsystem reset
@@ -37,19 +38,43 @@
    output [15:0] rx_q_o;       // Q channel of impulse response
    output        rx_strobe_o;   // Impulse response value ready
 
-   reg [31:0] decim;
+   input         loop_i;        // Implement loopback
    
+   wire strobe_in  = loop_i ? tx_strobe_i : rx_strobe_i;
+   wire [16:0] len = loop_i ? (len_i - 1) : ((len_i << 1) - 2);
+                
+   strobe #(17) phase_strobe(.clk_i(clk_i),.rst_i(rst_i),.ena_i(ena_i),
+                      .rate_i(len),.strobe_i(strobe_in),.strobe_o(rx_strobe_o),
+                      .count_o());
+
+   // Must register these for RX FIFO as it grabs the value one clock after 
strobe
+   reg [15:0] rx_i_o;
+   reg [15:0] rx_q_o;
+
+   // For debugging, accumulate the sum of the input over one phase period
+   reg [31:0]  sum_i;
+   
+   wire [31:0] i_ext;
+   wire [31:0] q_ext;
+
+   sign_extend #(16,32) i_extender(rx_in_i_i, i_ext);
+   sign_extend #(16,32) q_extender(rx_in_q_i, q_ext);
+
    always @(posedge clk_i)
      if (rst_i | ~ena_i)
-       decim <= 0;
-     else if (decim == 7)
-       decim <= 0;
-     else
-       decim <= decim + 1;
-
-   assign rx_i_o = rx_in_i_i;
-   assign rx_q_o = rx_in_q_i;
-   assign rx_strobe_o = (decim == 7);
+       begin
+         sum_i <= 0;
+         rx_i_o <= 0;
+         rx_q_o <= 0;
+       end
+     else if (rx_strobe_o)
+       begin
+         rx_i_o <= sum_i[31:16];
+         rx_q_o <= sum_i[15:0];
+         sum_i <= i_ext;
+       end
+     else if (strobe_in)
+       sum_i <= sum_i + i_ext;
    
 endmodule // sounder_rx
 

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_tx.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_tx.v   
    2007-05-15 20:58:19 UTC (rev 5476)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_tx.v   
    2007-05-16 20:07:46 UTC (rev 5477)
@@ -22,8 +22,8 @@
 `include "../../../../usrp/firmware/include/fpga_regs_common.v"
 `include "../../../../usrp/firmware/include/fpga_regs_standard.v"
 
-`define MAX_VALUE 16'h7FFF // 2s complement
-`define MIN_VALUE 16'h8000
+`define MAX_VALUE 14'h1FFF // 2s complement
+`define MIN_VALUE 14'h2000
 
 module sounder_tx(clk_i,rst_i,ena_i,strobe_i,mask_i,tx_i_o,tx_q_o);
    input         clk_i;
@@ -31,15 +31,15 @@
    input         ena_i;
    input         strobe_i;
    input  [15:0] mask_i;
-   output [15:0] tx_i_o;
-   output [15:0] tx_q_o;
+   output [13:0] tx_i_o;
+   output [13:0] tx_q_o;
 
    wire          pn;
 
    lfsr pn_code
      ( 
.clk_i(clk_i),.rst_i(rst_i),.ena_i(ena_i),.strobe_i(strobe_i),.mask_i(mask_i),.pn_o(pn)
 );
 
-   assign tx_i_o = ena_i ? (pn ? `MAX_VALUE : `MIN_VALUE) : 16'b0; // Bipolar
-   assign tx_q_o = 16'b0;
+   assign tx_i_o = ena_i ? (pn ? `MAX_VALUE : `MIN_VALUE) : 14'b0; // Bipolar
+   assign tx_q_o = 14'b0;
 
 endmodule // sounder_tx

Added: gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/strobe.v
===================================================================
--- gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/strobe.v   
                        (rev 0)
+++ gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/strobe.v   
2007-05-16 20:07:46 UTC (rev 5477)
@@ -0,0 +1,48 @@
+// -*- verilog -*-
+//
+//  USRP - Universal Software Radio Peripheral
+//
+//  Copyright (C) 2007 Corgan Enterprises LLC
+//
+//  This program is free software; you can redistribute it and/or modify
+//  it under the terms of the GNU General Public License as published by
+//  the Free Software Foundation; either version 2 of the License, or
+//  (at your option) any later version.
+//
+//  This program is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//  GNU General Public License for more details.
+//
+//  You should have received a copy of the GNU General Public License
+//  along with this program; if not, write to the Free Software
+//  Foundation, Inc., 51 Franklin Street, Boston, MA  02110-1301  USA
+//
+
+module strobe(clk_i,rst_i,ena_i,rate_i,strobe_i,strobe_o,count_o);
+   parameter width = 16;
+
+   input              clk_i;
+   input             rst_i;
+   input             ena_i;
+   input  [width-1:0] rate_i;  // Desired period minus one
+   input             strobe_i;
+   output            strobe_o;
+   output [width-1:0] count_o;
+
+   
+   reg [width-1:0] counter;
+
+   always @(posedge clk_i)
+     if(rst_i | ~ena_i)
+       counter <= 0;
+     else if(strobe_i)
+       if(counter == 0)
+        counter <= rate_i;
+       else 
+        counter <= counter - 1;
+
+   assign strobe_o = ~|counter & ~rst_i & ena_i & strobe_i;
+   assign count_o = counter;
+   
+endmodule // strobe


Property changes on: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb
___________________________________________________________________
Name: svn:ignore
   + Makefile
Makefile.in
*.vcd
sounder_tb
*.out


Added: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/Makefile.am
===================================================================
--- gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/Makefile.am 
                        (rev 0)
+++ gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/Makefile.am 
2007-05-16 20:07:46 UTC (rev 5477)
@@ -0,0 +1,30 @@
+#
+# Copyright 2007 Free Software Foundation, Inc.
+# 
+# This file is part of GNU Radio
+# 
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+# 
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with GNU Radio; see the file COPYING.  If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+# 
+
+include $(top_srcdir)/Makefile.common
+
+EXTRA_DIST = \
+       sounder_tb.v \
+       sounder_tb.sav \
+       sounder_tb_test.sh \
+       sounder_tb_wave.sh
+
+MOSTLYCLEANFILES = *~ *.vcd *.out sounder_tb
\ No newline at end of file

Added: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.sav
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.sav  
                            (rev 0)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.sav  
    2007-05-16 20:07:46 UTC (rev 5477)
@@ -0,0 +1,9 @@
+*-15.000000 119600 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 
-1 -1 -1 -1 -1 -1
address@hidden
+sounder_tb.uut.clk_i
+sounder_tb.rst
+sounder_tb.s_strobe
address@hidden
+sounder_tb.sdata[31:0]
address@hidden
+sounder_tb.uut.reset

Added: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.v    
                            (rev 0)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.v    
    2007-05-16 20:07:46 UTC (rev 5477)
@@ -0,0 +1,133 @@
+// -*- verilog -*-
+//
+//  USRP - Universal Software Radio Peripheral
+//
+//  Copyright (C) 2007 Corgan Enterprises LLC
+//
+//  This program is free software; you can redistribute it and/or modify
+//  it under the terms of the GNU General Public License as published by
+//  the Free Software Foundation; either version 2 of the License, or
+//  (at your option) any later version.
+//
+//  This program is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//  GNU General Public License for more details.
+//
+//  You should have received a copy of the GNU General Public License
+//  along with this program; if not, write to the Free Software
+//  Foundation, Inc., 51 Franklin Street, Boston, MA  02110-1301  USA
+//
+
+`timescale 1ns/1ps
+
+`include "../lib/sounder.v"
+
+`define FR_MODE                7'd64
+`define bmFR_MODE_RESET                32'h0001
+
+`define FR_DEGREE              7'd65
+
+module sounder_tb;
+
+   // System bus
+   reg         clk;
+   reg         rst;
+   reg         ena;
+   
+   // Configuration bus
+   reg [6:0]   saddr;
+   reg [31:0]  sdata;
+   reg                s_strobe;
+
+   // DAC bus
+   wire        tx_strobe;
+   wire [13:0] tx_dac_i;
+   wire [13:0] tx_dac_q;
+
+   // ADC bus
+   reg         rx_strobe;
+   reg [15:0]  rx_adc_i;
+   reg [15:0]  rx_adc_q;
+
+   // FIFO bus
+   wire        fifo_strobe;
+   wire [15:0] fifo_i;
+   wire [15:0] fifo_q;
+
+   // Configuration shadow registers
+   reg [31:0] mode;
+   reg [31:0] degree;
+   
+   sounder uut
+     (.clk_i(clk),.saddr_i(saddr),.sdata_i(sdata),.s_strobe_i(s_strobe),
+      .tx_strobe_i(tx_strobe),.tx_dac_i_o(tx_dac_i),.tx_dac_q_o(tx_dac_q),
+      .rx_strobe_i(rx_strobe),.rx_adc_i_i(rx_adc_i),.rx_adc_q_i(rx_adc_q),
+      .rx_strobe_o(fifo_strobe),.rx_imp_i_o(fifo_i),.rx_imp_q_o(fifo_q));
+
+
+   // Start up initialization
+   initial
+     begin
+       clk = 0;
+       rst = 0;
+       ena = 0;
+       saddr = 0;
+       sdata = 0;
+       s_strobe = 0;
+       rx_strobe = 0;
+       rx_adc_i = 0;
+       rx_adc_q = 0;
+       mode = 0;
+       degree = 0;
+       
+       @(posedge clk);
+       rst = 1;
+       @(posedge clk);
+       rst = 0;
+       @(posedge clk);
+       ena = 1;
+     end
+
+   always
+     #5 clk <= ~clk;
+
+   initial
+     begin
+       $dumpfile("sounder_tb.vcd");
+       $dumpvars(0, sounder_tb);
+     end
+   
+   // Test tasks
+   task write_cfg_register;
+      input [6:0]  regno;
+      input [31:0] value;
+
+      begin
+        @(posedge clk);
+        saddr <= regno;
+        sdata <= value;
+        s_strobe <= 1'b1;
+        @(posedge clk);
+        s_strobe <= 0;
+      end
+   endtask // write_cfg_register
+
+   task reset;
+     begin
+       mode = mode | `bmFR_MODE_RESET;
+       write_cfg_register(`FR_MODE, mode);
+       mode = mode & ~`bmFR_MODE_RESET;
+       write_cfg_register(`FR_MODE, mode);
+     end
+   endtask // reset
+   
+   
+   // Execute tests
+   initial
+     begin
+       #100 reset;
+       #1000 $finish;
+     end
+endmodule
+

Added: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb_test.sh
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb_test.sh
                          (rev 0)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb_test.sh
  2007-05-16 20:07:46 UTC (rev 5477)
@@ -0,0 +1,4 @@
+#!/bin/sh
+iverilog -y ../lib/ -y ../../../../usrp/fpga/sdr_lib \
+    sounder_tb.v -o sounder_tb &&  \
+    ./sounder_tb >> sounder_tb.out


Property changes on: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb_test.sh
___________________________________________________________________
Name: svn:executable
   + *

Added: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb_wave.sh
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb_wave.sh
                          (rev 0)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb_wave.sh
  2007-05-16 20:07:46 UTC (rev 5477)
@@ -0,0 +1,2 @@
+#!/bin/sh
+gtkwave sounder_tb.vcd sounder_tb.sav


Property changes on: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb_wave.sh
___________________________________________________________________
Name: svn:executable
   + *

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.qsf
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.qsf
   2007-05-15 20:58:19 UTC (rev 5476)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.qsf
   2007-05-16 20:07:46 UTC (rev 5477)
@@ -368,15 +368,16 @@
 set_instance_assignment -name PARTITION_HIERARCHY no_file_for_top_partition 
-to | -section_id Top
 set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top
 
-set_global_assignment -name VERILOG_FILE 
../../../../usrp/fpga/sdr_lib/sign_extend.v
+set_global_assignment -name VERILOG_FILE ../lib/strobe.v
 set_global_assignment -name VERILOG_FILE ../lib/lfsr_constants.v
-set_global_assignment -name VERILOG_FILE ../lib/sounder.v
 set_global_assignment -name VERILOG_FILE ../lib/lfsr.v
-set_global_assignment -name VERILOG_FILE 
../../../../usrp/fpga/sdr_lib/atr_delay.v
 set_global_assignment -name VERILOG_FILE ../lib/dac_interface.v
 set_global_assignment -name VERILOG_FILE ../lib/dacpll.v
 set_global_assignment -name VERILOG_FILE ../lib/sounder_rx.v
 set_global_assignment -name VERILOG_FILE ../lib/sounder_tx.v
+set_global_assignment -name VERILOG_FILE ../lib/sounder.v
+set_global_assignment -name VERILOG_FILE 
../../../../usrp/fpga/sdr_lib/atr_delay.v
+set_global_assignment -name VERILOG_FILE 
../../../../usrp/fpga/sdr_lib/sign_extend.v
 set_global_assignment -name VERILOG_FILE 
../../../../usrp/fpga/sdr_lib/rx_buffer.v
 set_global_assignment -name VERILOG_FILE 
../../../../usrp/fpga/sdr_lib/setting_reg.v
 set_global_assignment -name VERILOG_FILE 
../../../../usrp/fpga/sdr_lib/strobe_gen.v

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.rbf
===================================================================
(Binary files differ)

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.v 
    2007-05-15 20:58:19 UTC (rev 5476)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.v 
    2007-05-16 20:07:46 UTC (rev 5477)
@@ -103,14 +103,14 @@
    
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // Transmit Side
    
-   wire [15:0] tx_i, tx_q;
-   wire [15:0] tx_dac;
+   wire [13:0] tx_i, tx_q;
+   wire [13:0] tx_dac;
    
    dac_interface dac(.clk_i(clk64),.rst_i(tx_dsp_reset),.ena_i(enable_tx),
                     .strobe_i(tx_sample_strobe),.tx_i_i(tx_i),.tx_q_i(tx_q),
                     .tx_data_o(tx_dac),.tx_sync_o(TXSYNC_A));
 
-   assign tx_a = tx_dac[15:2];
+   assign tx_a = tx_dac;
 
    // Wedge DAC #2 at zero
    assign TXSYNC_B = 1'b0;


Property changes on: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python
___________________________________________________________________
Name: svn:ignore
   - Makefile
Makefile.in
run_tests
*.pyc

   + Makefile
Makefile.in
run_tests
*.pyc
output.*


Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/Makefile.am
===================================================================
--- gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/Makefile.am  
2007-05-15 20:58:19 UTC (rev 5476)
+++ gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/Makefile.am  
2007-05-16 20:07:46 UTC (rev 5477)
@@ -29,4 +29,4 @@
 bin_SCRIPTS =          \
        usrp_sounder.py
 
-MOSTLYCLEANFILES = *~ *.pyc *.pyo
+MOSTLYCLEANFILES = *~ *.pyc *.pyo output.*

Added: gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_lp.sh
===================================================================
--- gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_lp.sh   
                        (rev 0)
+++ gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_lp.sh   
2007-05-16 20:07:46 UTC (rev 5477)
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+usrp_sounder.py -r -l -t -n4095 -d12
+hexdump output.dat >output.hex


Property changes on: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_lp.sh
___________________________________________________________________
Name: svn:executable
   + *

Added: gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_rx.sh
===================================================================
--- gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_rx.sh   
                        (rev 0)
+++ gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_rx.sh   
2007-05-16 20:07:46 UTC (rev 5477)
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+usrp_sounder.py -r -n4095 -d12
+hexdump output.dat >output.hex


Property changes on: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_rx.sh
___________________________________________________________________
Name: svn:executable
   + *

Added: gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_tx.sh
===================================================================
--- gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_tx.sh   
                        (rev 0)
+++ gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_tx.sh   
2007-05-16 20:07:46 UTC (rev 5477)
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+usrp_sounder.py -t -d12


Property changes on: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/test_tx.sh
___________________________________________________________________
Name: svn:executable
   + *

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py  
    2007-05-15 20:58:19 UTC (rev 5476)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py  
    2007-05-16 20:07:46 UTC (rev 5477)
@@ -109,12 +109,15 @@
            self._write_mode()
            self._fg.start()
            self._receiving = True
+           if self._options.samples >= 0:
+               self._fg.wait()
        else:
            print "Stopping receiver flow graph."
-           self._fg.stop()
-           print "Waiting for threads..."
-           self._fg.wait()
-           print "Receiver flow graph stopped."
+           if self._options.samples < 0:
+               self._fg.stop()
+               print "Waiting for threads..."
+               self._fg.wait()
+               print "Receiver flow graph stopped."
            self._mode &= ~bmFR_MODE_RX
            self._write_mode()
            self._receiving = False
@@ -183,7 +186,8 @@
     if options.receive:
        s.enable_rx(True)
 
-    raw_input("Press enter to exit.")
+    if options.samples < 0:
+        raw_input("Press enter to exit.")
        
 if __name__ == "__main__":
     main()





reply via email to

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