This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6678 EMIF connection to FPGA

Is it possible to use the EMIF on the 6678 DSP to connect to a FPGA?  All the notes talk about connection of the EMIF to memory but none show to external processor or FPGA, is this possible? I was told there are 2 different types of EMIF interfaces available one is dedicated to DDR3 but I believe the other may be configurable, can you clarify?

  • Hi Charles,

    As I stated in your other post, it is possible to connect the EMIF16 of the C6678 to an FPGA. I'm sure that the manufacturer of your FPGA can give you examples of programming the FPGA to emulate a memory access. The C6678 does have an EMIF dedicated to DDR3 memories. That EMIF cannot be used for anything other the Jedec compliant DDR3 memories. The EMIF16 is designed to provide an asynchronous memory style parallel address and data bus access and this is the one you should use to connect to the FPGA.

    Regards, Bill

  • Hello,

    On the note of connecting to external processors.  Would it be possible to connect to a Cypress FX3 USB controller?  My primary uncertainty is that the FX3 says that the maximum frequency for its fifo interface is 100mhz, but the EMIF users guide says it will only run at 166mhz when the CPU is running at 1ghz.  Is there anyway to make these interface successfully?  Thanks.

    Matt

  • Matt,

    - I think that the below app note might help:
    http://www.ti.com/dsp/docs/litabsmultiplefilelist.tsp?sectionId=3&tabId=409&literatureNumber=spraa13a&docCategoryId=1&familyId=477
    TMS320C6000 EMIF to USB Interfacing Using Cypress EZ-USB SX2
    It is not specifically about C66x but the EMIF mentioned in the doc is comparable. Also the associated SW provided might not be functional for C66x.

    On a side note: On the E2E it is usually better to start a new thread for a new topic. For similar topics you can re-use an older thread.

    Anthony

  • Hi Matt,

    The 166MHz refers to the clock speed used within the device for the EMIF16 logic. The external speed of the interface is dependent on the delays programmed into the control registers. Running it slower is not an issue. Note that the EMIF16 was included as an asynchronous memory interface and wasn't specifically intended for streaming data to an external device. There are numerous posts discussing the throughput that has been achieved by customers. You may want to review some of those.

    Regards, Bill