Copyright 1986-2021 Xilinx, Inc. All Rights Reserved.
---------------------------------------------------------------------------------------------------------------------------------
| Tool Version : Vivado v.2021.2 (lin64) Build 3367213 Tue Oct 19 02:47:39 MDT 2021
| Date         : Mon Apr 13 14:57:00 2026
| Host         : debian running 64-bit Debian GNU/Linux 13 (trixie)
| Command      : report_drc -file system_wrapper_drc_opted.rpt -pb system_wrapper_drc_opted.pb -rpx system_wrapper_drc_opted.rpx
| Design       : system_wrapper
| Device       : xc7z020clg400-1
| Speed File   : -1
| Design State : Synthesized
---------------------------------------------------------------------------------------------------------------------------------

Report DRC

Table of Contents
-----------------
1. REPORT SUMMARY
2. REPORT DETAILS

1. REPORT SUMMARY
-----------------
            Netlist: netlist
          Floorplan: design_1
      Design limits: <entire design considered>
           Ruledeck: default
             Max violations: <unlimited>
             Violations found: 23
+----------+----------+-------------------------------------+------------+
| Rule     | Severity | Description                         | Violations |
+----------+----------+-------------------------------------+------------+
| BUFC-1   | Warning  | Input Buffer Connections            | 8          |
| DPIP-1   | Warning  | Input pipelining                    | 2          |
| REQP-28  | Advisory | enum_USE_MULT_NONE_connects_CEM_GND | 6          |
| REQP-30  | Advisory | enum_MREG_0_connects_CEM_GND        | 6          |
| REQP-181 | Advisory | writefirst                          | 1          |
+----------+----------+-------------------------------------+------------+

2. REPORT DETAILS
-----------------
BUFC-1#1 Warning
Input Buffer Connections  
Input buffer system_i/io_bridge_out/inst/iobufs[0].iobuf_inst/IBUF (in system_i/io_bridge_out/inst/iobufs[0].iobuf_inst macro) has no loads. It is recommended to have an input buffer drive an internal load.
Related violations: <none>

BUFC-1#2 Warning
Input Buffer Connections  
Input buffer system_i/io_bridge_out/inst/iobufs[1].iobuf_inst/IBUF (in system_i/io_bridge_out/inst/iobufs[1].iobuf_inst macro) has no loads. It is recommended to have an input buffer drive an internal load.
Related violations: <none>

BUFC-1#3 Warning
Input Buffer Connections  
Input buffer system_i/io_bridge_out/inst/iobufs[2].iobuf_inst/IBUF (in system_i/io_bridge_out/inst/iobufs[2].iobuf_inst macro) has no loads. It is recommended to have an input buffer drive an internal load.
Related violations: <none>

BUFC-1#4 Warning
Input Buffer Connections  
Input buffer system_i/io_bridge_out/inst/iobufs[3].iobuf_inst/IBUF (in system_i/io_bridge_out/inst/iobufs[3].iobuf_inst macro) has no loads. It is recommended to have an input buffer drive an internal load.
Related violations: <none>

BUFC-1#5 Warning
Input Buffer Connections  
Input buffer system_i/io_bridge_out/inst/iobufs[4].iobuf_inst/IBUF (in system_i/io_bridge_out/inst/iobufs[4].iobuf_inst macro) has no loads. It is recommended to have an input buffer drive an internal load.
Related violations: <none>

BUFC-1#6 Warning
Input Buffer Connections  
Input buffer system_i/io_bridge_out/inst/iobufs[5].iobuf_inst/IBUF (in system_i/io_bridge_out/inst/iobufs[5].iobuf_inst macro) has no loads. It is recommended to have an input buffer drive an internal load.
Related violations: <none>

BUFC-1#7 Warning
Input Buffer Connections  
Input buffer system_i/io_bridge_out/inst/iobufs[6].iobuf_inst/IBUF (in system_i/io_bridge_out/inst/iobufs[6].iobuf_inst macro) has no loads. It is recommended to have an input buffer drive an internal load.
Related violations: <none>

BUFC-1#8 Warning
Input Buffer Connections  
Input buffer system_i/io_bridge_out/inst/iobufs[7].iobuf_inst/IBUF (in system_i/io_bridge_out/inst/iobufs[7].iobuf_inst macro) has no loads. It is recommended to have an input buffer drive an internal load.
Related violations: <none>

DPIP-1#1 Warning
Input pipelining  
DSP system_i/fsk_detector_tap_0/inst/d1 input system_i/fsk_detector_tap_0/inst/d1/A[29:0] is not pipelined. Pipelining DSP48 input will improve performance.
Related violations: <none>

DPIP-1#2 Warning
Input pipelining  
DSP system_i/fsk_detector_tap_0/inst/d_reg input system_i/fsk_detector_tap_0/inst/d_reg/A[29:0] is not pipelined. Pipelining DSP48 input will improve performance.
Related violations: <none>

REQP-28#1 Advisory
enum_USE_MULT_NONE_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_op_paths[0].g_combine.i_ext_mult/g_two_col_comb.i_gen_upper_bits/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 USE_MULT attribute is set to NONE, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-28#2 Advisory
enum_USE_MULT_NONE_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_op_paths[1].g_combine.i_ext_mult/g_two_col_comb.i_gen_upper_bits/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 USE_MULT attribute is set to NONE, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-28#3 Advisory
enum_USE_MULT_NONE_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_semi_parallel_and_smac.g_paths[0].g_madd_array_and_accum.g_accum.i_accum/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 USE_MULT attribute is set to NONE, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-28#4 Advisory
enum_USE_MULT_NONE_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_semi_parallel_and_smac.g_paths[1].g_madd_array_and_accum.g_accum.i_accum/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 USE_MULT attribute is set to NONE, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-28#5 Advisory
enum_USE_MULT_NONE_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_semi_parallel_and_smac.g_paths[2].g_madd_array_and_accum.g_accum.i_accum/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 USE_MULT attribute is set to NONE, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-28#6 Advisory
enum_USE_MULT_NONE_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_semi_parallel_and_smac.g_paths[3].g_madd_array_and_accum.g_accum.i_accum/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 USE_MULT attribute is set to NONE, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-30#1 Advisory
enum_MREG_0_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_op_paths[0].g_combine.i_ext_mult/g_two_col_comb.i_gen_upper_bits/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 MREG attribute is set to 0, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-30#2 Advisory
enum_MREG_0_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_op_paths[1].g_combine.i_ext_mult/g_two_col_comb.i_gen_upper_bits/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 MREG attribute is set to 0, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-30#3 Advisory
enum_MREG_0_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_semi_parallel_and_smac.g_paths[0].g_madd_array_and_accum.g_accum.i_accum/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 MREG attribute is set to 0, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-30#4 Advisory
enum_MREG_0_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_semi_parallel_and_smac.g_paths[1].g_madd_array_and_accum.g_accum.i_accum/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 MREG attribute is set to 0, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-30#5 Advisory
enum_MREG_0_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_semi_parallel_and_smac.g_paths[2].g_madd_array_and_accum.g_accum.i_accum/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 MREG attribute is set to 0, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-30#6 Advisory
enum_MREG_0_connects_CEM_GND  
system_i/fir_0/U0/i_synth/g_polyphase_decimation.i_polyphase_decimation/g_semi_parallel_and_smac.g_paths[3].g_madd_array_and_accum.g_accum.i_accum/i_add_accum/g_dsp48.g_dsp48e1.i_dsp48e1: When the DSP48E1 MREG attribute is set to 0, the CEM input pin should be tied to GND to save power.
Related violations: <none>

REQP-181#1 Advisory
writefirst  
Synchronous clocking is detected for BRAM (system_i/writer_0/inst/fifo_0/xpm_fifo_base_inst/gen_sdpram.xpm_memory_base_inst/gen_wr_a.gen_word_narrow.mem_reg_bram_0) in SDP mode with WRITE_FIRST write-mode. This is the preferred mode for best power characteristics, however it may exhibit address collisions if the same address appears on both read and write ports resulting in unknown or corrupted read data. It is suggested to confirm via simulation that an address collision never occurs and if so it is suggested to try and avoid this situation. If address collisions cannot be avoided, the write-mode may be set to READ_FIRST which guarantees that the read data is the prior contents of the memory at the cost of additional power in the design. See the FPGA Memory Resources User Guide for additional information.
Related violations: <none>


