i'm just want a simple working example on it
i think i'm having problems with timing and no reference (manuals or help file ) gave a solution
thanks in advance
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
i'm just want a simple working example on it
i think i'm having problems with timing and no reference (manuals or help file ) gave a solution
thanks in advance
Here is an example for the C6416 which does BER calculation for VCP (as well as TCP).
Regards,
Travis
hi guys,
Do you have the error codes for viterbi? I just got an error code 0x4. But this code is not define spru533d.
Best regards
Thanks for the code. It helped to run TCP. Don't you have more detailed example on VCP? Provided one does not show use of custom polynomials. Also would appreciate any hint on decoding tail-biting code using VCP. Thanks in advance.tscheck said:Here is an example for the C6416 which does BER calculation for VCP (as well as TCP).
Hi community.
I'm also searching for a detailed example on VCP2. A example with a short input vector (informations bits) and the according result vector (hard decisions from VCP2) would be very helpful.
Thanks in advance.
Joachim,
Here is a similar example to the one posted above, except it is for the VCP2. It was developed for the C6474 or TCI6488 devices, but it should be applicable to all the C64x DSPs that have the VCP2. I don't have experience with this accelerator or code, but I know that it works and has been delivered to customers in the past. Hope it helps.
Regards,
Travis
Travis,
Thank you for this additonal example. In my case the polynomials was the problem. The answer to the format of the polynomials is given in the document SPRU972C on page 18. Hint (1) says:
"The polynomial generators are 9-bit values defined as G(z) = b8z^8 + b7z^7 + b6z^6 + b5z^5 + b4z^4 + b3z^3 + b2z^2 + b1z^1 + b0, but only 8 bits
are passed in the POLYn bitfields so that b1 is the most significant bit and b8 is the least significant bit (b0 is not passed, but set by the
internal VCP hardware). The VCP2 uses the number of poly fields set to zero starting at POLY3 to determine the code rate. Therefore,
POLYn fields not used by the current code rate must be set to zero. The VCP2 uses the number of least-significant bits that are zero in
POLY0 to determine the constraint length."
So for example the K = 7 polynomial [133, 171, 145, 133] <- Octal numbers will result in:
vcpParam.poly0 = 0554 & 0xFF; // 133, 0554 is also a octal number!!!
vcpParam.poly1 = 0744 & 0xFF; // 171
vcpParam.poly2 = 0624 & 0xFF; // 145
vcpParam.poly3 = 0554 & 0xFF; // 133
Because of b0 is not passed to the POLYn bitfields we have to mask with 0xFF!
Maybe this hint is helpful for rrlagic.
Best regards,
Joachim
Well, it took me so long time to get it running.
Thanks to Joahim, your hint was just right. Polynomials must be shifted in a way that b1 corresponds to MSB and clipped to 8 bit. Things to remember: make proper scaling of soft decisions, for tail biting code use additional training symbols and convergent processing mode.
And again, many thanks to all commentators, you really helped.
Hi Travis
I was looking for an example project for VCP2 then I came across this post. I tried the above zipped code on C6670.
It shows some memory issues. i want to know whether the same code will run on C6670 or it is only for C64xx family.
Thanks,
Jayendra
Jayendra,
Did you check out this thread? http://e2e.ti.com/support/dsp/c6000_multi-core_dsps/f/639/p/148997/895205.aspx#895205
Regards,
Travis