Hi Gines,
Note that the bblib_ldpc_decode_5gnr() function is doing purely the decoder, 
while the bbdev implementation would include the full FEC including the deRM as 
well. Are you familiar with 3gpp processing chain?
You can look a the function process_ldpc_dec_cp() in bbdev_turbo_software.c to 
see how the different SDK libraries are called to implement the full bbdev api.
Note that familiarity with 3GPP 5GNR standard is required
https://doc.dpdk.org/guides/prog_guide/bbdev.html
https://doc.dpdk.org/guides/bbdevs/turbo_sw.html
https://doc.dpdk.org/guides/tools/testbbdev.html

Thanks
Nic

From: Ginés García Avilés <gines.gar...@i2cat.net>
Sent: Thursday, November 11, 2021 12:23 AM
To: Chautru, Nicolas <nicolas.chau...@intel.com>
Cc: users@dpdk.org
Subject: Re: [test-bbdev] Custom test-vector

Hi Nicolas,
thanks a lot for your quick response.

Basically, when passing the generated LLRs vector to bblib_ldpc_decode_5gnr()
(bblib_ldpc_decoder_5gnr_request request = {}; request.varNodes = 
generated_llrs)
it is able to decode it.
However, converting the same vector to the bbdev format (from int8 vector to 
uint32_t chain),
bbdev throws RTE_BBDEV_SYNDROME_ERROR with the "iterationAtTermination" 
variable always
equals to the max number of iterations.

Where could I find the documentation you are referring to?

Thanks in advance!

Regards,
Ginés.

El mié, 10 nov 2021 a las 19:22, Chautru, Nicolas 
(<nicolas.chau...@intel.com<mailto:nicolas.chau...@intel.com>>) escribió:
Hi Gines,
What do you mean by “flexran DPDK” vs “bbdev”? “The generated LLRs vector is 
directly decodable by flexRAN DPDK but when using it through
Bbdev”
The format of the input/output data is defined in the documentation. Basically 
1 byte per LLR and captured in vectors with CPU endianness and processing as 
per 3gpp.

Thanks
Nic

From: Ginés García Avilés 
<gines.gar...@i2cat.net<mailto:gines.gar...@i2cat.net>>
Sent: Wednesday, November 10, 2021 4:28 AM
To: users@dpdk.org<mailto:users@dpdk.org>
Cc: Chautru, Nicolas 
<nicolas.chau...@intel.com<mailto:nicolas.chau...@intel.com>>
Subject: [test-bbdev] Custom test-vector

Hi,
I'm still trying to generate test vectors for the bbdev application within
DPDK. More precisely, I want to create a test vector to run an LDPC decoding 
operation.

For that, I'm generating the LLRs with matlab (5G NR toolbox) as follows:
  1) LDPC encoding + rate matching + modulation
  2) Demodulation + rate recover

The generated LLRs vector is directly decodable by flexRAN DPDK but when using 
it through
bbdev, it takes max iterations to decode, meaning that the decoding process was
unsuccessful.

Any ideas/documentation about how to properly create the test vectors?

PS: previous question here 
(https://mails.dpdk.org/archives/users/2021-October/005864.html)

Regards,
Ginés.

Reply via email to