Results 1 to 5 of 5

Thread: ALTDDIO_OUT primitive usage internally

  1. #1
    Join Date
    Dec 2016
    Posts
    7
    Rep Power
    1

    Default ALTDDIO_OUT primitive usage internally

    Hi,

    I am using the Output DDR interface in one of my submodules in the hierarchy. I see that the output register is not set in spite of me selecting the option "Registers powerup high". Also, I see that the data is being passed from input to output of the primitive even though, outputclocken is low.

    Is the IP only to be used when the output of the same directly drives the output pin? Can it be used in internal modules whose output drive some internal signals in the next level of hierarchy
    If no, Is there any alternate primitive to help me achieve the same?
    If yes, could you please tell me why I see this behavior?

    Your help is appreciated.

    Thanks,
    Vittal

  2. #2
    Join Date
    Mar 2007
    Posts
    2,165
    Rep Power
    1

    Default Re: ALTDDIO_OUT primitive usage internally

    This is meant to map to the IO cell DDR registers, and my experience is that it errors out if not hooked up to an output port. You should be able to do the same in RTL very easily. The main purpose is to make sure it uses the dedicated resources, especially the output mux, which inference tools have never been great at(not that it would be hard).

  3. #3
    Join Date
    Dec 2016
    Posts
    7
    Rep Power
    1

    Default Re: ALTDDIO_OUT primitive usage internally

    Thanks.
    Yes, I used a custom RTL block and everything works well now.

    Just curious - It does not throw out an error (or even a warning) when I use ODDR2 in the submodules. I have used ODDR2 (in submodules) using different (non-altera) FPGA design tools before, and it works fine there. A warning or error regarding this would have been better.
    Thanks, anyway!

  4. #4
    Join Date
    Mar 2007
    Posts
    2,165
    Rep Power
    1

    Default Re: ALTDDIO_OUT primitive usage internally

    If it works, that's great. Note that some devices don't actually have DDIO, so when you put this down it gets done in logic, so maybe that's what is occurring. If it doesn't error out and synthesizes to something functionally wrong, then it's a problem, but if it works inside, great.

  5. #5
    Join Date
    Dec 2016
    Posts
    7
    Rep Power
    1

    Default Re: ALTDDIO_OUT primitive usage internally

    Sorry if I explained it wrong. What I meant was that I removed the ODDR buffer and wrote one on my own.
    You are right, the ODDR buffer if used internally gives a functional error (although the synthesis tool does not see that and does not throw out any errors/warnings).

    Bottom line - ODDR2 in cycloneV does not work inside.

Similar Threads

  1. ALTDDIO_OUT error 15874
    By GerardoMedina in forum VHDL
    Replies: 3
    Last Post: September 19th, 2016, 03:20 AM
  2. altddio_out in Cyclone III FPGA Development Kit
    By kokos in forum FPGA, Hardcopy, and CPLD Discussion
    Replies: 1
    Last Post: September 16th, 2014, 04:57 AM
  3. Output port "O" of PSEUDO_DIFF_OUT primitive... must drive only one OBUF primitive...
    By JohnG300C in forum FPGA, Hardcopy, and CPLD Discussion
    Replies: 2
    Last Post: April 8th, 2011, 12:17 PM
  4. altddio_in, altddio_out msb, lsb confusion
    By de-em in forum FPGA, Hardcopy, and CPLD Discussion
    Replies: 3
    Last Post: April 17th, 2008, 02:25 PM
  5. are all GND pins connected internally to GND?
    By surfsup in forum FPGA, Hardcopy, and CPLD Discussion
    Replies: 1
    Last Post: March 22nd, 2007, 02:38 AM

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •