Improve generate_test_vectors() to use mixed SNR levels (high SNR for
first half, nominal for second half) ensuring a mix of converged and
non-converged test cases. Add gen_firmware_vectors.py converter that
reads test_vectors.json and produces packed LLR data matching the
RTL wishbone interface format (5 LLRs per 32-bit word, 6-bit two's
complement).
Generated 20 vectors: 11 converged, 9 non-converged.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>