Device Family: Intel® Arria® 10 GT

Device Family: Intel® Arria® 10 GX

Device Family: Intel® Arria® 10 SX

Device Family: Arria® II GX

Device Family: Arria® II GZ

Device Family: Arria® V GT

Device Family: Arria® V GX

Device Family: Arria® V GZ

Device Family: Arria® V ST

Device Family: Arria® V SX

Device Family: Cyclone® IV E

Device Family: Cyclone® IV GX

Device Family: Cyclone® V E

Device Family: Cyclone® V GT

Device Family: Cyclone® V GX

Device Family: Cyclone® V SE

Device Family: Cyclone® V ST

Device Family: Cyclone® V SX

Device Family: Intel® MAX® 10

Device Family: Stratix® IV E

Device Family: Stratix® IV GT

Device Family: Stratix® IV GX

Device Family: Stratix® V E

Device Family: Stratix® V GS

Device Family: Stratix® V GT

Device Family: Stratix® V GX

Type: Answers

Area: Intellectual Property


IP Product: Reed Solomon Encoder / Decoder II

Why do I see "X"s on my Reed-Solomon II encoder outputs?

Description

Due to a problem with the Quartus® Prime version 15.1 software, you will see this behavior if you instantiate more than one Reed-Solomon II (RS-II) IP core in your design.

Workaround/Fix

The problem occurs because the msim_setup.tcl file (or the equivalent for your simulator) compiles both instances into the same library.

To work around this problem, edit the tcl script to add a new library, and move one of the instantiations to that library.

For example you may see the following lines:

ensure_lib ./libraries/_highspeed_rs_enc_151/      
vmap       altera_highspeed_rs_enc_151  ./libraries/altera_highspeed_rs_enc_151/
      

...

eval  vlog -sv "/hs_rs_248_216_enc/altera_highspeed_rs_enc_151/sim/altera_highspeed_rs_enc_lagr_pkg.sv"  -work altera_highspeed_rs_enc_151

eval  vlog -sv "/hs_rs_248_232_enc/altera_highspeed_rs_enc_151/sim/altera_highspeed_rs_enc_lagr_pkg.sv"  -work altera_highspeed_rs_enc_151

...

eval vsim -novopt -t ps -L work -L work_lib -L altera_common_sv_packages ... -L altera_highspeed_rs_enc_151 

You would then modify as follows:

ensure_lib ./libraries/_highspeed_rs_enc_151/      
vmap       altera_highspeed_rs_enc_151  ./libraries/altera_highspeed_rs_enc_151/
ensure_lib ./libraries/_highspeed_rs_enc_151_2/      
vmap       altera_highspeed_rs_enc_151_2  ./libraries/altera_highspeed_rs_enc_151_2/
      

...

eval  vlog -sv "/hs_rs_248_216_enc/altera_highspeed_rs_enc_151/sim/altera_highspeed_rs_enc_lagr_pkg.sv"  -work altera_highspeed_rs_enc_151

eval  vlog -sv "/hs_rs_248_232_enc/altera_highspeed_rs_enc_151/sim/altera_highspeed_rs_enc_lagr_pkg.sv"  -work altera_highspeed_rs_enc_151_2

...

eval vsim -novopt -t ps -L work -L work_lib -L altera_common_sv_packages ... -L altera_highspeed_rs_enc_151 -L altera_highspeed_rs_enc_151_2

This problem is scheduled to be fixed in a future Quartus Prime release.