+ Post New Thread
Results 1 to 3 of 3
  1. #1
    Newbie level 2
    Points: 97, Level: 1

    Join Date
    Aug 2017
    Posts
    2
    Helped
    0 / 0
    Points
    97
    Level
    1

    QPSK Modulator Design Issues

    Hello everyone,

    I have designed a simple QPSK modulator and there are a few issues with my design that I am not sure how to fix, partly due to how I designed my DDS. I designed the modulator in two ways, the first using rotation flags based on whether the even/odd bit is 0/1 and the second method is using a for loop to xor the LUT values with the even/odd bits. I came to both of these methods from BPSK modulator I designed beforehand that worked perfectly. However, the first issue is that I have two seperate clk domains, one for the DDS and the other for the data as my digital sin/cos wave would just look garbled if I didn't do this. My biggest issue, though, is that when I sum the I and Q legs from the DDS for the IQ merge, the output signal looks like there are overflows when they are in phase, (my I/Q and IQ_merge are unsigned and I am looking at the tb using signed analog view) but the maximum value in the LUT is 8192 with 14 bits of resolution. Here are my two questions:

    1. Is it best to scrap these approaches and design the DDS/CORDIC to receive the desired phase based on the even/odd IQ map?
    2. How can I tie everything together so that the data generation and the DDS are in the same clock domain?

    If my questions are not clear, I can attach some screenshots and my vhdl code.

    •   Alt28th December 2017, 03:39

      advertising

        
       

  2. #2
    Super Moderator
    Points: 238,683, Level: 100
    Awards:
    1st Helpful Member

    Join Date
    Jan 2008
    Location
    Bochum, Germany
    Posts
    41,343
    Helped
    12616 / 12616
    Points
    238,683
    Level
    100

    Re: QPSK Modulator Design Issues

    If my questions are not clear
    Not at all, I fear. It's easy to imagine that you get arithmetic overflow by doing the calculations wrong, but why multiple clock domains?



    •   Alt30th December 2017, 12:19

      advertising

        
       

  3. #3
    Newbie level 2
    Points: 97, Level: 1

    Join Date
    Aug 2017
    Posts
    2
    Helped
    0 / 0
    Points
    97
    Level
    1

    Re: QPSK Modulator Design Issues

    For the two seperate clock domains, my logic was that I wanted to generate data on the sysClk. However, with bit transitions at each rising edge, my dds would not be able to keep up. Should I incorporate flow control instead? As for the overflow, I'm simply adding the I and Q legs for the IQ merge, each of the I, Q, and IQ_merge are the same size.



--[[ ]]--