I am trying to implement mod demod for data rate of few kbps . I would like to know is it better/ easier to implement in DSP/FPGA. I am aware of both C and VHDL programming. I think the code flow and build and test time would be faster in DSP? please suggest? Any particular resource for implementation (like a sample code) to get started?

  • 1
    $\begingroup$ we can't tell you what is easier for you. But honestly, I've yet to meet an FPGA engineer that wouldn't, given the choice for anything that is low-rate and not power constraint, wouldn't choose C over HDL any day for a simple modem, for a simple reason: software is much easier to test. It's rather common to write a reference implementation in software before implementing something in digital hardware, so that one has something to test the hardware implementation against. $\endgroup$ Jul 21, 2020 at 14:35

1 Answer 1


I would suggest you to use the GnuRadio API usualy used for Software Defined Radio (SDR) projects.

As Marcus Müller said in the comments, it is easier to develop this kind of project and test it with a software implementation.

I am also pretty sure that you will find a lot of existing examples to help you with your project.

Guided Tutorials
API documentation (not beginner-friendly)
Source code

  • $\begingroup$ @ Nathan . Thanks for the links. Can i reuse the code in my DSP implementation. Or should i add as a library in my implementation. any idea if any sample code for complete tx rx with mod,fec etc...is present with source code which i can use it in my implementation? $\endgroup$
    – Mike
    Jul 21, 2020 at 16:15
  • $\begingroup$ @Mike since we know literally nothing about your platform nor about your programming experience, how are we supposed to tell you whether you can reuse code? Look through the functionality relevant to your modem (which we sadly also know nothing about), and assess for yourself. If you need help with the signal processing aspects of porting it to your platform: We're always here for you :) $\endgroup$ Jul 21, 2020 at 16:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.