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.

TMS320F28374D: EMIF: Accessing 16-Bit Asynchronous Device / Question regarding address generation

Part Number: TMS320F28374D

Hello,

I need to access an external device with 16 Bit Interface.

I read Delfino's technical reference manual and found this:

"...The EMIF address pin EM1A[0] always provides the least significant bit of a 32-bit word address"



I guess, I need to design Interface according to Figure 25-10 in reference Manual, where EM1DQM[1:0] are responsible for Byte selection.

So my question ist, how are EM1A[0..x] and EM1DQM[1:0] generating address exactly?

Because on address lines only 32 bit addresses are available, it seems that I have gaps in adresses and I can access only each second WORD.

Is this correct?  Are there further descriptions or examples?

Thanks

Richard

  • Hi Richard,

    In case of 16bit memory, EMIF signal BA1 is used as least significant address. So you need to connect BA1 of EMIF to A0 of external memory device,

    Please refer "Figure 25-9. EMIF to 8-bit/16-bit Memory Interface" in device TRM.

    Regards,

    Vivek Singh

  • The following applications note may also be helpful:
    http://www.ti.com/lit/sprac96

    There are resources provided there - hardware design, configuration tool, benchmarks, etc - which may help.


    Thank you,
    Brett

  • many thanks for the quick reply!

    The device, we need to connect, is a Siemens ERTEC 200P. We are using a so called XHIF (Host Interface). This interface is accessible either as 16 Bit or 32 Bit interface. It does not has A0! So it is expecting at least 16 Bit addresses on address bus.
    Additionally it has 4 Pins, so called "Byte Enable Pins". With this pins the Byte is selected in the 16 Bit data or 32 Bit data.

    Therefore I thought, I need to connect according to "Figure 25-10. Common Asynchronous Interface"

    I am not sure, when I have to connect a device according to "Figure 25-9. EMIF to 8-bit/16-bit Memory Interface" or according to "Figure 25-10. Common Asynchronous Interface".
  • Hi Richard,

    Since the device you are using only supports 16bit and 32bit access, they may not have provided A0 which generally correspond to byte address. Please check what does least significant address line correspond to. If it's 16bit address then you need to connect that to BA1 of EMIF on C2000 device.

    Figure 25-9 in document is for address and 25-10 is for common signal of this interface.

    Hope that is clear

    Regards,

    Vivek Singh

  • Dear Vivek,

    oh, actually your answer makes me more confused than before!
    For the asynchronous interface, do I need to connect all pins, which are shown in Figure 25-9 AND Figure 25-10 ?
    Specially, do I need to connect both EM1BA and EM1DQM ?

    Sorry, maybe my questions are a bit stupid. I am excellent software developer, but no hardware designer!
  • Hi Richard,

    Were you able to look into the app note which Brett has posted? If not, please go through it and if still there are questions, let us know.

    Vivek Singh