From 0c30f34bf0afa14e8f2ee128dd4168c7c372b862 Mon Sep 17 00:00:00 2001 From: jcorgan Date: Wed, 18 Jul 2007 20:20:30 +0000 Subject: [PATCH] Merged r5945:6012 from jcorgan/radar into trunk. Updates gr-radar-mono component. Trunk passes distcheck. git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@6013 221aa14e-8319-0410-a670-987f0aec2ac5 --- config/Makefile.am | 1 - gr-radar-mono/README | 64 ++++++- gr-radar-mono/doc/Makefile.am | 1 + gr-radar-mono/doc/registers.ods | Bin 0 -> 14448 bytes gr-radar-mono/src/fpga/lib/cordic_nco.v | 2 +- gr-radar-mono/src/fpga/lib/radar.v | 32 ++-- gr-radar-mono/src/fpga/lib/radar_config.vh | 10 +- gr-radar-mono/src/fpga/lib/radar_control.v | 117 ++++++++++-- gr-radar-mono/src/fpga/lib/radar_rx.v | 6 +- gr-radar-mono/src/fpga/lib/radar_tx.v | 27 ++- gr-radar-mono/src/fpga/tb/radar_tb.sav | 15 +- gr-radar-mono/src/fpga/tb/radar_tb.v | 102 ++++++---- .../src/fpga/top/usrp_radar_mono.qsf | 5 +- .../src/fpga/top/usrp_radar_mono.rbf | Bin 113452 -> 114012 bytes .../src/fpga/top/usrp_radar_mono.srf | 140 ++++++++++++++ gr-radar-mono/src/fpga/top/usrp_radar_mono.v | 4 +- gr-radar-mono/src/python/radar_mono.py | 174 ++++++++++-------- gr-radar-mono/src/python/usrp_radar_mono.py | 20 +- 18 files changed, 534 insertions(+), 186 deletions(-) create mode 100644 gr-radar-mono/doc/registers.ods diff --git a/config/Makefile.am b/config/Makefile.am index 02657e34..1710e96b 100644 --- a/config/Makefile.am +++ b/config/Makefile.am @@ -46,7 +46,6 @@ m4macros = \ grc_gr_radar_mono.m4 \ grc_gr_radio_astronomy.m4 \ grc_gr_rdf.m4 \ - grc_gr_radar_mono.m4 \ grc_gr_sounder.m4 \ grc_gr_trellis.m4 \ grc_gr_usrp.m4 \ diff --git a/gr-radar-mono/README b/gr-radar-mono/README index 9eb07c90..f449af8e 100644 --- a/gr-radar-mono/README +++ b/gr-radar-mono/README @@ -1,14 +1,64 @@ -This GNU Radio component implements (will implement) a monostatic -radar transmitter and receiver. It uses (will use) a custom FPGA -build to generate a linear FM chip waveform directly in the USRP. -Echo returns are (will be) recorded to a file. +This GNU Radio component implements a monostatic radar transmitter +and receiver. It uses a custom FPGA build to generate a linear +FM chirp waveform directly in the USRP. Echo returns are (will be) +recorded to a file for offline analysis. -Currently, only a CW signal is generated for testing the frequency -response of the FPGA code, AD9862, and daughterboard mixer. +The LFM chirp can be up to 32 MHz in width, whose center frequency +is set by which transmit daughter board is installed. This gives +a range resolution of approximately 5 meters. + +Only boards in slot A are supported. + +The script to run is place in $prefix/bin: + +Usage: usrp_radar_mono.py [options] + +Options: + -h, --help show this help message and exit + -f FREQ, --frequency=FREQ + set transmitter center frequency to FREQ in Hz, + default is 0.0 + -w FREQ, --chirp-width=FREQ + set LFM chirp bandwidth in Hz, default is 32000000.0 + -a AMPLITUDE, --amplitude=AMPLITUDE + set waveform amplitude in % full scale, default is + 100, + --ton=TON set pulse on period in seconds, default is 5e-06, + --tsw=TSW set transmitter switching period in seconds, default + is 4.0625e-07, + --tlook=TLOOK set receiver look time in seconds, default is 5e-06, + --prf=PRF set pulse repetition frequency in Hz, default is + 10000.0, + -v, --verbose enable verbose output, default is disabled + -D, --debug enable debugging output, default is disabled + +The transmitter creates a LFM chirp, evenly centered on the supplied frequency. +The four timing parameters are: + +ton Chirp on time in seconds. + +tsw Transmitter switching time in seconds. This the delay after the chirp + is transmitted before the receiver is enabled. These two (tsw and ton) + parameters determine the minimum range of the radar. + +tlook The the amount of time in seconds the receiver is enabled to record + echo responses ("look" time). This parameter determines the maximum + radar range that can be measured, though transmitter power will also + limit return strength and practical range. + +prf Pulse repetition frequency in Hz. This establishes to overall pulse + repetition period, which results in idle time between when the receiver + is turned off and the next transmitted chirp begins. + +Currently, only the transmitter is written. Also, there is not yet any sanity +checks on the supplied parameters to the script. + +The receiver, when completed, will record the radar returns, preserving phase, +into a file with metadata about each chirp. This is experimental code. Johnathan Corgan Corgan Enterprises LLC jcorgan@corganenterprises.com -7/11/2007 +7/18/2007 diff --git a/gr-radar-mono/doc/Makefile.am b/gr-radar-mono/doc/Makefile.am index 623c403e..c522820c 100644 --- a/gr-radar-mono/doc/Makefile.am +++ b/gr-radar-mono/doc/Makefile.am @@ -21,3 +21,4 @@ include $(top_srcdir)/Makefile.common +EXTRA_DIST = registers.ods \ No newline at end of file diff --git a/gr-radar-mono/doc/registers.ods b/gr-radar-mono/doc/registers.ods new file mode 100644 index 0000000000000000000000000000000000000000..4213f8a5901ef465cea1c2fd1bfa8d51650d6b4e GIT binary patch literal 14448 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
4V)Al72fgnzYv#wqe05;i?BjBM7k4c0 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

Gzs=NCVYne#*+>T+22 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 NaPfzS-#aGve*hv}0Hpu` literal 113452 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 XIUVv&Boo@;6#iZL<#X?UpzwbIWMB-d diff --git a/gr-radar-mono/src/fpga/top/usrp_radar_mono.srf b/gr-radar-mono/src/fpga/top/usrp_radar_mono.srf index e69de29b..ebf4bce8 100644 --- a/gr-radar-mono/src/fpga/top/usrp_radar_mono.srf +++ b/gr-radar-mono/src/fpga/top/usrp_radar_mono.srf @@ -0,0 +1,140 @@ +{ "Warning" "WSGN_SEARCH_FILE" "../../../../../trunk/usrp/fpga/megacells/bustri.v 1 1 " "Warning: Using design file ../../../../../trunk/usrp/fpga/megacells/bustri.v, which is not specified as a design file for the current project, but contains definitions for 1 design units and 1 entities in project" { } { } 0 0 "Using design file %1!s!, which is not specified as a design file for the current project, but contains definitions for %2!d! design units and %3!d! entities in project" 1 0 "" 0} +{ "Warning" "WSGN_SEARCH_FILE" "../../../../../trunk/usrp/fpga/megacells/fifo_4k.v 10 10 " "Warning: Using design file ../../../../../trunk/usrp/fpga/megacells/fifo_4k.v, which is not specified as a design file for the current project, but contains definitions for 10 design units and 10 entities in project" { } { } 0 0 "Using design file %1!s!, which is not specified as a design file for the current project, but contains definitions for %2!d! design units and %3!d! entities in project" 1 0 "" 0} +{ "Warning" "WVRFX_L2_HDL_OBJECT_ASSIGNED_NOT_READ" "write_done serial_io.v(48) " "Warning (10036): Verilog HDL or VHDL warning at serial_io.v(48): object \"write_done\" assigned a value but never read" { } { { "../../../../usrp/fpga/sdr_lib/serial_io.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/serial_io.v" 48 0 0 } } } 0 10036 "Verilog HDL or VHDL warning at %2!s!: object \"%1!s!\" assigned a value but never read" 1 0 "" 0} +{ "Warning" "WVRFX_L2_VERI_EXPRESSION_TRUNCATED_TO_FIT" "32 12 atr_delay.v(58) " "Warning (10230): Verilog HDL assignment warning at atr_delay.v(58): truncated value with size 32 to match size of target (12)" { } { { "../../../../usrp/fpga/sdr_lib/atr_delay.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/atr_delay.v" 58 0 0 } } } 0 10230 "Verilog HDL assignment warning at %3!s!: truncated value with size %1!d! to match size of target (%2!d!)" 1 0 "" 0} +{ "Warning" "WVRFX_L2_VERI_EXPRESSION_TRUNCATED_TO_FIT" "32 12 atr_delay.v(71) " "Warning (10230): Verilog HDL assignment warning at atr_delay.v(71): truncated value with size 32 to match size of target (12)" { } { { "../../../../usrp/fpga/sdr_lib/atr_delay.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/atr_delay.v" 71 0 0 } } } 0 10230 "Verilog HDL assignment warning at %3!s!: truncated value with size %1!d! to match size of target (%2!d!)" 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_rx_delay 12 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_rx_delay\" is connected to a signal of width 12. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_rx_delay" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 138 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_tx_delay 12 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_tx_delay\" is connected to a signal of width 12. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_tx_delay" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 137 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_rxval_3 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_rxval_3\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_rxval_3" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 134 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_txval_3 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_txval_3\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_txval_3" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 133 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_mask_3 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_mask_3\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_mask_3" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 132 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_rxval_2 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_rxval_2\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_rxval_2" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 130 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_txval_2 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_txval_2\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_txval_2" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 129 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_mask_2 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_mask_2\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_mask_2" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 128 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_rxval_1 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_rxval_1\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_rxval_1" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 126 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_txval_1 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_txval_1\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_txval_1" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 125 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_mask_1 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_mask_1\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_mask_1" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 124 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_rxval_0 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_rxval_0\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_rxval_0" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 122 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_txval_0 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_txval_0\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_txval_0" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 121 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_atr_mask_0 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_atr_mask_0\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_atr_mask_0" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 120 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_WIDE" "ratio clk_div_3 7 8 " "Warning: Port \"ratio\" on the entity instantiation of \"clk_div_3\" is connected to a signal of width 7. The formal width of the signal in the module is 8. Extra bits will be driven by GND." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "clk_div_3" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 98 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be driven by GND." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_WIDE" "ratio clk_div_2 7 8 " "Warning: Port \"ratio\" on the entity instantiation of \"clk_div_2\" is connected to a signal of width 7. The formal width of the signal in the module is 8. Extra bits will be driven by GND." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "clk_div_2" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 97 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be driven by GND." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_WIDE" "ratio clk_div_1 7 8 " "Warning: Port \"ratio\" on the entity instantiation of \"clk_div_1\" is connected to a signal of width 7. The formal width of the signal in the module is 8. Extra bits will be driven by GND." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "clk_div_1" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 96 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be driven by GND." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_WIDE" "ratio clk_div_0 7 8 " "Warning: Port \"ratio\" on the entity instantiation of \"clk_div_0\" is connected to a signal of width 7. The formal width of the signal in the module is 8. Extra bits will be driven by GND." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "clk_div_0" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 95 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be driven by GND." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_debugen 4 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_debugen\" is connected to a signal of width 4. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_debugen" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 93 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_rxbref 8 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_rxbref\" is connected to a signal of width 8. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_rxbref" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 91 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_txbref 8 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_txbref\" is connected to a signal of width 8. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_txbref" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 90 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_rxaref 8 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_rxaref\" is connected to a signal of width 8. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_rxaref" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 89 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_txaref 8 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_txaref\" is connected to a signal of width 8. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_txaref" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 88 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_decim 8 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_decim\" is connected to a signal of width 8. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_decim" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 51 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_interp 8 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_interp\" is connected to a signal of width 8. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_interp" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 50 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_mstr_ctrl 8 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_mstr_ctrl\" is connected to a signal of width 8. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/master_control.v" "sr_mstr_ctrl" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/master_control.v" 42 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "rate rx_strobe_gen 32 8 " "Warning: Port \"rate\" on the entity instantiation of \"rx_strobe_gen\" is connected to a signal of width 32. The formal width of the signal in the module is 8. Extra bits will be ignored." { } { { "../lib/radar_rx.v" "rx_strobe_gen" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_rx.v" 62 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage11 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage11\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage11" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 100 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage10 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage10\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage10" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 99 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage9 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage9\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage9" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 98 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage8 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage8\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage8" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 97 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage7 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage7\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage7" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 96 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage6 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage6\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage6" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 95 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage5 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage5\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage5" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 94 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage4 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage4\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage4" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 93 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage3 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage3\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage3" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 92 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage2 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage2\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage2" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 91 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage1 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage1\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage1" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 90 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_INPUT_PORT_TOO_NARROW" "ordered port 6 cordic_stage0 16 15 " "Warning: Port \"ordered port 6\" on the entity instantiation of \"cordic_stage0\" is connected to a signal of width 16. The formal width of the signal in the module is 15. Extra bits will be ignored." { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "cordic_stage0" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 89 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be ignored." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_ampl 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_ampl\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_ampl" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 59 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_mode 8 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_mode\" is connected to a signal of width 8. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_mode" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 56 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_TRI_BUS_MISSING_SOURCE_TOP" "" "Warning: The following nets are missing source, defaulting to GND" { } { } 0 0 "The following nets are missing source, defaulting to GND" 1 0 "" 0} +{ "Warning" "WSGN_TRI_BUS_MISSING_SOURCE_TOP" "" "Warning: The following nets are missing source, defaulting to GND" { { "Warning" "WSGN_TRI_BUS_MISSING_SOURCE_SUB" "radar:radar_mono\|radar_control:controller\|rst_i " "Warning: Net \"radar:radar_mono\|radar_control:controller\|rst_i\"" { } { { "../lib/radar_control.v" "rst_i" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 55 -1 0 } } } 0 0 "Net \"%1!s!\"" 1 0 "" 0} } { } 0 0 "The following nets are missing source, defaulting to GND" 0 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_rxformat 11 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_rxformat\" is connected to a signal of width 11. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/rx_buffer.v" "sr_rxformat" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/rx_buffer.v" 66 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_rxmux 20 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_rxmux\" is connected to a signal of width 20. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/adc_interface.v" "sr_rxmux" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/adc_interface.v" 54 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_dco_en 4 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_dco_en\" is connected to a signal of width 4. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../../../../usrp/fpga/sdr_lib/adc_interface.v" "sr_dco_en" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/adc_interface.v" 32 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[0\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[0\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[1\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[1\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[2\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[2\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[3\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[3\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[4\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[4\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[5\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[5\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[6\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[6\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[7\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[7\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[8\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[8\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[9\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[9\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[10\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[10\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[11\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[11\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[12\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[12\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[13\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[13\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[14\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[14\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[15\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[15\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[16\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[16\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[17\] data_in GND " "Warning: Reduced register \"radar:radar_mono\|radar_tx:transmitter\|cordic_nco:nco\|cordic:tx_cordic\|y0\[17\]\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/cordic.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/cordic.v" 64 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WCDB_SGATE_CDB_WARN_TRIVIAL_REG" "master_control:master_control\|atr_delay:atr_delay\|state.0001 data_in GND " "Warning: Reduced register \"master_control:master_control\|atr_delay:atr_delay\|state.0001\" with stuck data_in port to stuck value GND" { } { { "../../../../usrp/fpga/sdr_lib/atr_delay.v" "" { Text "H:/gnuradio/radar/usrp/fpga/sdr_lib/atr_delay.v" 31 -1 0 } } } 0 0 "Reduced register \"%1!s!\" with stuck %2!s! port to stuck value %3!s!" 1 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "MYSTERY_SIGNAL GND " "Warning: Pin \"MYSTERY_SIGNAL\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 24 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "FX2_3 GND " "Warning: Pin \"FX2_3\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 33 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[0\] GND " "Warning: Pin \"tx_b\[0\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[1\] GND " "Warning: Pin \"tx_b\[1\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[2\] GND " "Warning: Pin \"tx_b\[2\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[3\] GND " "Warning: Pin \"tx_b\[3\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[4\] GND " "Warning: Pin \"tx_b\[4\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[5\] GND " "Warning: Pin \"tx_b\[5\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[6\] GND " "Warning: Pin \"tx_b\[6\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[7\] GND " "Warning: Pin \"tx_b\[7\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[8\] GND " "Warning: Pin \"tx_b\[8\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[9\] GND " "Warning: Pin \"tx_b\[9\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[10\] GND " "Warning: Pin \"tx_b\[10\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[11\] GND " "Warning: Pin \"tx_b\[11\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[12\] GND " "Warning: Pin \"tx_b\[12\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "tx_b\[13\] GND " "Warning: Pin \"tx_b\[13\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "TXSYNC_B GND " "Warning: Pin \"TXSYNC_B\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 44 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WOPT_MLS_STUCK_PIN_HDR" "" "Warning: Output pins are stuck at VCC or GND" { { "Warning" "WOPT_MLS_STUCK_PIN" "usbrdy\[0\] GND " "Warning: Pin \"usbrdy\[0\]\" stuck at GND" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 49 -1 0 } } } 0 0 "Pin \"%1!s!\" stuck at %2!s!" 1 0 "" 0} } { } 0 0 "Output pins are stuck at VCC or GND" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[0\] " "Warning: No output dependent on input pin \"rx_b_a\[0\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[1\] " "Warning: No output dependent on input pin \"rx_b_a\[1\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[2\] " "Warning: No output dependent on input pin \"rx_b_a\[2\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[3\] " "Warning: No output dependent on input pin \"rx_b_a\[3\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[4\] " "Warning: No output dependent on input pin \"rx_b_a\[4\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[5\] " "Warning: No output dependent on input pin \"rx_b_a\[5\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[6\] " "Warning: No output dependent on input pin \"rx_b_a\[6\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[7\] " "Warning: No output dependent on input pin \"rx_b_a\[7\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[8\] " "Warning: No output dependent on input pin \"rx_b_a\[8\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[9\] " "Warning: No output dependent on input pin \"rx_b_a\[9\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[10\] " "Warning: No output dependent on input pin \"rx_b_a\[10\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_a\[11\] " "Warning: No output dependent on input pin \"rx_b_a\[11\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 36 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[0\] " "Warning: No output dependent on input pin \"rx_b_b\[0\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[1\] " "Warning: No output dependent on input pin \"rx_b_b\[1\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[2\] " "Warning: No output dependent on input pin \"rx_b_b\[2\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[3\] " "Warning: No output dependent on input pin \"rx_b_b\[3\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[4\] " "Warning: No output dependent on input pin \"rx_b_b\[4\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[5\] " "Warning: No output dependent on input pin \"rx_b_b\[5\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[6\] " "Warning: No output dependent on input pin \"rx_b_b\[6\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[7\] " "Warning: No output dependent on input pin \"rx_b_b\[7\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[8\] " "Warning: No output dependent on input pin \"rx_b_b\[8\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[9\] " "Warning: No output dependent on input pin \"rx_b_b\[9\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[10\] " "Warning: No output dependent on input pin \"rx_b_b\[10\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN_HDR" "49 " "Warning: Design contains * input pin(s) that do not drive logic" { { "Warning" "WCUT_CUT_UNNECESSARY_INPUT_PIN" "rx_b_b\[11\] " "Warning: No output dependent on input pin \"rx_b_b\[11\]\"" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 38 -1 0 } } } 0 0 "No output dependent on input pin \"%1!s!\"" 1 0 "" 0} } { } 0 0 "Design contains %1!d! input pin(s) that do not drive logic" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "MYSTERY_SIGNAL GND " "Info: Pin MYSTERY_SIGNAL has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 24 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "MYSTERY_SIGNAL" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { MYSTERY_SIGNAL } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { MYSTERY_SIGNAL } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "FX2_3 GND " "Info: Pin FX2_3 has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 33 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "FX2_3" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { FX2_3 } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { FX2_3 } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[0\] GND " "Info: Pin tx_b\[0\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[0\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[0] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[0] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[1\] GND " "Info: Pin tx_b\[1\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[1\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[1] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[1] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[2\] GND " "Info: Pin tx_b\[2\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[2\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[2] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[2] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[3\] GND " "Info: Pin tx_b\[3\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[3\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[3] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[3] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[4\] GND " "Info: Pin tx_b\[4\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[4\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[4] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[4] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[5\] GND " "Info: Pin tx_b\[5\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[5\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[5] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[5] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[6\] GND " "Info: Pin tx_b\[6\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[6\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[6] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[6] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[7\] GND " "Info: Pin tx_b\[7\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[7\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[7] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[7] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[8\] GND " "Info: Pin tx_b\[8\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[8\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[8] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[8] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[9\] GND " "Info: Pin tx_b\[9\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[9\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[9] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[9] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[10\] GND " "Info: Pin tx_b\[10\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[10\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[10] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[10] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[11\] GND " "Info: Pin tx_b\[11\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[11\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[11] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[11] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[12\] GND " "Info: Pin tx_b\[12\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[12\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[12] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[12] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "tx_b\[13\] GND " "Info: Pin tx_b\[13\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 41 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "tx_b\[13\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[13] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { tx_b[13] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "TXSYNC_B GND " "Info: Pin TXSYNC_B has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 44 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "TXSYNC_B" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { TXSYNC_B } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { TXSYNC_B } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN" "18 " "Warning: Following * pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" { { "Info" "IFIOMGR_BIDIR_OR_OUTPUT_WITH_TRIVIAL_DATAIN_SUB" "usbrdy\[0\] GND " "Info: Pin usbrdy\[0\] has GND driving its datain port" { } { { "usrp_radar_mono.v" "" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/top/usrp_radar_mono.v" 49 -1 0 } } { "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" "" { Assignment "c:/altera/71sp1/quartus/bin/Assignment Editor.qase" 1 { { 0 "usbrdy\[0\]" } } } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { usbrdy[0] } "NODE_NAME" } } { "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" { Floorplan "c:/altera/71sp1/quartus/bin/TimingClosureFloorplan.fld" "" "" { usbrdy[0] } "NODE_NAME" } } } 0 0 "Pin %1!s! has %2!s! driving its datain port" 1 0 "" 0} } { } 0 0 "Following %1!d! pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results" 0 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_ampl 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_ampl\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_ampl" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 69 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_tlook 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_tlook\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_tlook" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 63 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_tsw 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_tsw\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_tsw" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 60 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_ton 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_ton\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_ton" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 57 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_mode 6 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_mode\" is connected to a signal of width 6. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_mode" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 54 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_ampl 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_ampl\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_ampl" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 70 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_tlook 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_tlook\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_tlook" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 64 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_tsw 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_tsw\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_tsw" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 61 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_ton 16 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_ton\" is connected to a signal of width 16. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_ton" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 58 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} +{ "Warning" "WSGN_WIDTH_MISMATCH_OUTPUT_PORT" "out sr_mode 6 32 " "Warning: Port \"out\" on the entity instantiation of \"sr_mode\" is connected to a signal of width 6. The formal width of the signal in the module is 32. Extra bits will be left dangling without any fanout logic." { } { { "../lib/radar_control.v" "sr_mode" { Text "H:/gnuradio/radar/gr-radar-mono/src/fpga/lib/radar_control.v" 55 0 0 } } } 0 0 "Port \"%1!s!\" on the entity instantiation of \"%2!s!\" is connected to a signal of width %3!d!. The formal width of the signal in the module is %4!d!. Extra bits will be left dangling without any fanout logic." 1 0 "" 0} diff --git a/gr-radar-mono/src/fpga/top/usrp_radar_mono.v b/gr-radar-mono/src/fpga/top/usrp_radar_mono.v index fc8c08d0..891af235 100644 --- a/gr-radar-mono/src/fpga/top/usrp_radar_mono.v +++ b/gr-radar-mono/src/fpga/top/usrp_radar_mono.v @@ -142,7 +142,7 @@ module usrp_radar_mono // Top level application radar radar_mono ( .clk_i(clk64),.saddr_i(serial_addr),.sdata_i(serial_data),.s_strobe_i(serial_strobe), - .tx_strobe_i(tx_sample_strobe),.tx_dac_i_o(tx_i),.tx_dac_q_o(tx_q), + .tx_strobe_o(tx_sample_strobe),.tx_dac_i_o(tx_i),.tx_dac_q_o(tx_q), .rx_strobe_i(rx_sample_strobe),.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) ); @@ -172,7 +172,7 @@ module usrp_radar_mono .tx_dsp_reset(tx_dsp_reset),.rx_dsp_reset(rx_dsp_reset), .enable_tx(enable_tx),.enable_rx(enable_rx), .interp_rate(),.decim_rate(), - .tx_sample_strobe(tx_sample_strobe),.strobe_interp(), + .tx_sample_strobe(),.strobe_interp(), // tx_sample_strobe now generated by radar transmitter module .rx_sample_strobe(rx_sample_strobe),.strobe_decim(), .tx_empty(tx_empty), .debug_0(),.debug_1(), diff --git a/gr-radar-mono/src/python/radar_mono.py b/gr-radar-mono/src/python/radar_mono.py index 5077b3d9..5a5be9c8 100644 --- a/gr-radar-mono/src/python/radar_mono.py +++ b/gr-radar-mono/src/python/radar_mono.py @@ -30,37 +30,32 @@ n2s = eng_notation.num_to_str #----------------------------------------------------------------------- FR_RADAR_MODE = usrp.FR_USER_0 # Operational mode bmFR_RADAR_MODE_RESET = 1 << 0 # bit 0: active high reset -bmFR_RADAR_MODE_TX = 1 << 1 # bit 1: enable transmitter -#bmFR_RADAR_MODE_RX = 1 << 2 # bit 2: enable receiver -#bmFR_RADAR_MODE_LP = 1 << 3 # bit 3: enable digital loopback -#bmFR_RADAR_MODE_DR = 1 << 4 # bit 4: enable on-board deramping -#bmFR_RADAR_MODE_MD = 1 << 5 # bit 5: enable echo metadata -#bmFR_RADAR_MODE_CHIRPS = 3 << 6 # bit 6,7: number of chirp center frequencies +#bmFR_RADAR_MODE_LP = 1 << 1 # bit 1: enable digital loopback +#bmFR_RADAR_MODE_DR = 1 << 2 # bit 2: enable on-board deramping +#bmFR_RADAR_MODE_MD = 1 << 3 # bit 3: enable echo metadata +#bmFR_RADAR_MODE_CHIRPS = 3 << 4 # bit 4,5: number of chirp center frequencies -#FR_RADAR_TON = usrp.FR_USER_1 # 16-bit transmitter on time in clocks -#FR_RADAR_TSW = usrp.FR_USER_2 # 16-bit transmitter switch time in clocks -#FR_RADAR_TLOOK = usrp.FR_USER_3 # 16-bit receiver look time in clocks -#FR_RADAR_TIDLE = usrp.FR_USER_4 # 32-bit inter-pulse idle time +FR_RADAR_TON = usrp.FR_USER_1 # 16-bit transmitter on time in clocks +FR_RADAR_TSW = usrp.FR_USER_2 # 16-bit transmitter switch time in clocks +FR_RADAR_TLOOK = usrp.FR_USER_3 # 16-bit receiver look time in clocks +FR_RADAR_TIDLE = usrp.FR_USER_4 # 32-bit inter-pulse idle time FR_RADAR_AMPL = usrp.FR_USER_5 # 16-bit pulse amplitude (2s complement) into CORDIC -#FR_RADAR_FSTART = usrp.FR_USER_6 # 32-bit FTW for chirp start frequency -#FR_RADAR_FINCR = usrp.FR_USER_7 # 32-bit FTW increment per transmit clock +FR_RADAR_FSTART = usrp.FR_USER_6 # 32-bit FTW for chirp start frequency +FR_RADAR_FINCR = usrp.FR_USER_7 # 32-bit FTW increment per transmit clock # These are for phase II development - -# Temporarily use this for transmitter frequency calibration -FR_RADAR_FREQ1N = usrp.FR_USER_8 # 24-bit N register for chirp #1 - -FR_RADAR_FREQ1R = usrp.FR_USER_9 # 24-bit R register for chirp #1 -FR_RADAR_FREQ1C = usrp.FR_USER_10 # 24-bit control register for chirp #1 -FR_RADAR_FREQ2N = usrp.FR_USER_11 # 24-bit N register for chirp #2 -FR_RADAR_FREQ2R = usrp.FR_USER_12 # 24-bit R register for chirp #2 -FR_RADAR_FREQ2C = usrp.FR_USER_13 # 24-bit control register for chirp #2 -FR_RADAR_FREQ3N = usrp.FR_USER_14 # 24-bit N register for chirp #3 -FR_RADAR_FREQ3R = usrp.FR_USER_15 # 24-bit R register for chirp #3 -FR_RADAR_FREQ3C = usrp.FR_USER_16 # 24-bit control register for chirp #3 -FR_RADAR_FREQ4N = usrp.FR_USER_17 # 24-bit N register for chirp #4 -FR_RADAR_FREQ4R = usrp.FR_USER_18 # 24-bit R register for chirp #4 -FR_RADAR_FREQ4C = usrp.FR_USER_19 # 24-bit control register for chirp #4 +#FR_RADAR_FREQ1N = usrp.FR_USER_8 # 24-bit N register for chirp #1 +#FR_RADAR_FREQ1R = usrp.FR_USER_9 # 24-bit R register for chirp #1 +#FR_RADAR_FREQ1C = usrp.FR_USER_10 # 24-bit control register for chirp #1 +#FR_RADAR_FREQ2N = usrp.FR_USER_11 # 24-bit N register for chirp #2 +#FR_RADAR_FREQ2R = usrp.FR_USER_12 # 24-bit R register for chirp #2 +#FR_RADAR_FREQ2C = usrp.FR_USER_13 # 24-bit control register for chirp #2 +#FR_RADAR_FREQ3N = usrp.FR_USER_14 # 24-bit N register for chirp #3 +#FR_RADAR_FREQ3R = usrp.FR_USER_15 # 24-bit R register for chirp #3 +#FR_RADAR_FREQ3C = usrp.FR_USER_16 # 24-bit control register for chirp #3 +#FR_RADAR_FREQ4N = usrp.FR_USER_17 # 24-bit N register for chirp #4 +#FR_RADAR_FREQ4R = usrp.FR_USER_18 # 24-bit R register for chirp #4 +#FR_RADAR_FREQ4C = usrp.FR_USER_19 # 24-bit control register for chirp #4 #----------------------------------------------------------------------- # Transmitter object. Uses usrp_sink, but only for a handle to the @@ -74,20 +69,38 @@ class radar_tx: self._u = usrp.sink_s(fpga_filename='usrp_radar_mono.rbf') self._subdev_spec = (0,0); # FPGA code only implements side A self._subdev = usrp.selected_subdev(self._u, self._subdev_spec) + self._ton_ticks = 0 + self._tsw_ticks = 0 + self._tlook_ticks = 0 + self._tidle_ticks = 0 + if self._verbose: print "Using", self._subdev.name(), "for radar transmitter." - def tune(self, center_freq, waveform_freq): - self._center_freq = center_freq - self._waveform_freq = waveform_freq - self._ftw = int(waveform_freq*(2**32)/32e6) - if self._verbose: - print "Setting transmitter center frequency to", n2s(center_freq) - print "Setting waveform frequency offset to", n2s(waveform_freq), "with ftw of", self._ftw - result = self._u.tune(0, self._subdev, center_freq) - if result == False: - raise RuntimeError("Failed to set transmitter frequency.") - self._u._write_fpga_reg(FR_RADAR_FREQ1N, self._ftw) + def set_ton(self, ton): + self._ton_ticks = 2*(int(ton*64e6)/2)-1 # Even number, then subtract 1 + if self._verbose: + print "Setting pulse on time to", ton, " sec ("+`self._ton_ticks+1`+" ticks)" + self._u._write_fpga_reg(FR_RADAR_TON, self._ton_ticks) + + def set_tsw(self, tsw): + self._tsw_ticks = 2*(int(tsw*64e6)/2)-1 # Even number, then subtract 1 + if self._verbose: + print "Setting pulse switching time to", tsw, " sec ("+`self._tsw_ticks+1`+" ticks)" + self._u._write_fpga_reg(FR_RADAR_TSW, self._tsw_ticks) + + def set_tlook(self, tlook): + self._tlook_ticks = 2*(int(tlook*64e6)/2)-1 # Even number, then subtract 1 + if self._verbose: + print "Setting receiver look time to", tlook, " sec ("+`self._tlook_ticks+1`+" ticks)" + self._u._write_fpga_reg(FR_RADAR_TLOOK, self._tlook_ticks) + + def set_prf(self, prf): + period = 2*int(32e6/prf) + self._tidle_ticks = period-(self._ton_ticks+self._tsw_ticks+self._tlook_ticks+3)-1 + if self._verbose: + print "Setting PRF to", prf, "Hz ("+`self._tidle_ticks+1`+" ticks idle time)" + self._u._write_fpga_reg(FR_RADAR_TIDLE, self._tidle_ticks) def set_amplitude(self, ampl): self._amplitude = int(ampl*9946/100.0) # CORDIC gain correction @@ -95,6 +108,22 @@ class radar_tx: print "Writing amplitude register with:", hex(self._amplitude) self._u._write_fpga_reg(FR_RADAR_AMPL, self._amplitude) + def set_freq(self, center_freq, chirp_width): + self._center_freq = center_freq + self._chirp_width = chirp_width + self._fstart = -int((chirp_width/2)*(2**32)/32e6) + self._fincr = int((chirp_width/16e6)*(2**32)/(self._ton_ticks+1)) + + if self._verbose: + print "Setting transmitter center frequency to", n2s(center_freq) + print "Setting chirp width to", n2s(chirp_width), "Hz "+"("+hex(self._fstart)+", "+hex(self._fincr)+")" + + result = self._u.tune(0, self._subdev, center_freq) + if result == False: + raise RuntimeError("Failed to set transmitter frequency.") + self._u._write_fpga_reg(FR_RADAR_FSTART, self._fstart) + self._u._write_fpga_reg(FR_RADAR_FINCR, self._fincr) + def start(self): self._u.start() @@ -181,47 +210,25 @@ class radar: self._debug = debug self._mode = 0 - self._transmitting = False self._trans = radar_tx(verbose=self._verbose, debug=self._debug) self.set_reset(True) - def set_amplitude(self, ampl): - self._trans.set_amplitude(ampl) - - def tune(self, center_freq, waveform_freq): - self._trans.tune(center_freq, waveform_freq) - def _write_mode(self): if self._debug: print "Writing mode register with:", hex(self._mode) self._trans._u._write_fpga_reg(FR_RADAR_MODE, self._mode) - def enable_tx(self, value): + def set_reset(self, value): if value: - if self._verbose: - print "Enabling transmitter." - self._mode |= bmFR_RADAR_MODE_TX - self._transmitting = True + if self._debug: + print "Asserting reset." + self._mode |= bmFR_RADAR_MODE_RESET else: - if self._verbose: - print "Disabling transmitter." - self._mode &= ~bmFR_RADAR_MODE_TX - self._transmitting = False + if self._debug: + print "De-asserting reset." + self._mode &= ~bmFR_RADAR_MODE_RESET self._write_mode() - - """ - def enable_rx(self, value): - if value: - self._mode |= bmFR_RADAR_MODE_RX - self._write_mode() - self._rcvr.start() - self._receiving = True - else: - self._rcvr.stop() - self._mode &= ~bmFR_RADAR_MODE_RX - self._write_mode() - self._receiving = False - """ + """ def set_loopback(self, value): if value: @@ -235,27 +242,32 @@ class radar: self._write_mode() """ - def set_reset(self, value): - if value: - if self._debug: - print "Asserting reset." - self._mode |= bmFR_RADAR_MODE_RESET - else: - if self._debug: - print "De-asserting reset." - self._mode &= ~bmFR_RADAR_MODE_RESET - self._write_mode() + def set_ton(self, ton): + self._trans.set_ton(ton) + + def set_tsw(self, tsw): + self._trans.set_tsw(tsw) + + def set_tlook(self, tlook): + self._trans.set_tlook(tlook) + + def set_prf(self, prf): + self._trans.set_prf(prf) + + def set_amplitude(self, ampl): + self._trans.set_amplitude(ampl) + def set_freq(self, center_freq, chirp_width): + self._trans.set_freq(center_freq, chirp_width) + # set receiver center frequency + def start(self): self._trans.start() - self.enable_tx(True) self.set_reset(False) def stop(self): self.set_reset(True) self._trans.stop() - if self._transmitting: - self.enable_tx(False) def __del__(self): self.stop() diff --git a/gr-radar-mono/src/python/usrp_radar_mono.py b/gr-radar-mono/src/python/usrp_radar_mono.py index 61dd1163..47db53c2 100755 --- a/gr-radar-mono/src/python/usrp_radar_mono.py +++ b/gr-radar-mono/src/python/usrp_radar_mono.py @@ -33,11 +33,18 @@ def main(): parser = OptionParser(option_class=eng_option) parser.add_option("-f", "--frequency", type="eng_float", default=0.0, help="set transmitter center frequency to FREQ in Hz, default is %default", metavar="FREQ") - # Temporary for debugging transmitter frequency response - parser.add_option("-w", "--waveform-frequency", type="eng_float", default=1e3, - help="set waveform offset frequency to FREQ in Hz, default is %default", metavar="FREQ") + parser.add_option("-w", "--chirp-width", type="eng_float", default=32e6, + help="set LFM chirp bandwidth in Hz, default is %default", metavar="FREQ") parser.add_option("-a", "--amplitude", type="eng_float", default=100, help="set waveform amplitude in % full scale, default is %default,") + parser.add_option("", "--ton", type="eng_float", default=5e-6, + help="set pulse on period in seconds, default is %default,") + parser.add_option("", "--tsw", type="eng_float", default=406.25e-9, + help="set transmitter switching period in seconds, default is %default,") + parser.add_option("", "--tlook", type="eng_float", default=5e-6, + help="set receiver look time in seconds, default is %default,") + parser.add_option("", "--prf", type="eng_float", default=10e3, + help="set pulse repetition frequency in Hz, default is %default,") parser.add_option("-v", "--verbose", action="store_true", default=False, help="enable verbose output, default is disabled") parser.add_option("-D", "--debug", action="store_true", default=False, @@ -69,8 +76,13 @@ def main(): msgq = gr.msg_queue() s = radar(msgq=msgq,verbose=options.verbose,debug=options.debug) + s.set_ton(options.ton) + s.set_tsw(options.tsw) + s.set_tlook(options.tlook) + s.set_prf(options.prf) s.set_amplitude(options.amplitude) - s.tune(options.frequency, options.waveform_frequency) + s.set_freq(options.frequency, options.chirp_width) + s.start() """ -- 2.47.2