Info

Questa domanda è chiusa. Riaprila per modificarla o per rispondere.

How to adapt OFDM HDL Coder example from 72 to 36 active subcarriers (ASc)?

4 visualizzazioni (ultimi 30 giorni)
Hello,
I am working with the OFDM HDL Coder MATLAB/Simulink example.
In MATLAB script-based simulation, I successfully changed the number of active subcarriers from 72 → 36, and both transmitter and receiver chains work correctly (headers are encoded/decoded properly, variables are validated, and frames are synchronized).
However, when I move to Simulink implementation, the situation is different:
  • Frames are synchronized,
  • But header is never detected (no CRC pass/fail, nothing happens after sync).
I already adapted the following in the MATLAB side:
  • txParam.ASc = 36;
  • txParam.NHeader = ceil(72/txParam.ASc); % = 2 when ASc=36
  • Verified headerIntrlvMaxBlkSize = ASc * NHeader = 72 and headerIntrlvNColumns = headerIntrlvMaxBlkSize/4 = 18, so block length consistency is preserved.
  • All OFDM-Tx/Rx functions (OFDMTx, OFDMRx, tx rx parameters etc.) run fine in script mode.
In Simulink, I suspect the issue is in one of the HDL-optimized blocks (Header Formatter / Header Interleaver / Header Parsing). Some blocks still assume a single header symbol (NHeader=1), or are hard-coded to ASc=72. For example:
  • Generate Output Control Signals inside Header Interleaver Read Logic subtracts fixed numbers (8, 11) from block length.
  • IndexGen functions (Reference Signal Parsing, Header & Data Parsing) may still be tied to fixed symbol counts.
  • Thresholds in Frame Sync may need retuning for reduced subcarriers.
  3 Commenti
Vaibhav BHATNAGAR
Vaibhav BHATNAGAR il 12 Set 2025
Hello Andreas,
Many thanks for your comment.
I was able to get it working by using two header symbols instead of one, while keeping the block size and other parameters unchanged.
The remaining issue is that when I try to reduce the CP size from 32 to 16, the header at the receiver does not decode properly. I will wait for further information from the MathWorks support team on this.
Best regards,
Vaibhav
Vaibhav BHATNAGAR
Vaibhav BHATNAGAR il 16 Set 2025
I found the solution of my problem the problem is due to : Params.OFDMDemodLatency for shorter CP it requires a adjustment. The same latency wont work.

Risposte (0)

Questa domanda è chiusa.

Prodotti


Release

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by