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.

TMS320F28386D: QSPI

Part Number: TMS320F28386D


Tool/software:

Hi,
can the CLB be used to emulate a QSPI interface?

Regards, Holger

  • Hi Holger,

    We've had discussions on this in the past but the conclusion was that SPI requires too many input/output signals so likely would not be able to implement with CLB (though this is only from discussion and no active efforts were made to conduct an in-depth demonstration). Previous conversation with SPI expert with the following description regarding implementation on C2000

    "For QSPI, Possible workaround is using two SPI modules. One SPI would be configured as controller and generate the SPICLK. The other SPI would be configured as target and receive the SPICLK from the controller. The controller SPI PICO will connect to DOUTA and the target POCI will connect to DOUTB. The operation would be that the program is loaded into the target and then the controller SPI which should trigger the controller SPI to generate the clock and data output as well as the target to generate data output. Note, user needs specifically look at the timing requirements in the DS, specifically on the target side because there is some maximum speed we can run this “QSPI” setup since there will be larger output data delays."

    Regards,

    Peter

  • Hi Peter,

    > conclusion was that SPI requires too many input/output signals
    so QSPI are 6 signals. Are these too much?

    > For QSPI, Possible workaround is using two SPI modules. 
    I thought to QSPI you need 4 SPIs, right?

    All 4 SPIs are connect to the CLB. So it should also be possible to emulate the QSPI through the CLB.

    Regards, Holger

  • Hi Holger,

    There are some restrictions on the actual connections between the CLB and SPI modules. A CLB only has access to 2 direct SPI modules, either A and B or C and D. The other SPI modules can only be supplied through external XBARs like INPUTXBAR or CLBINPUTXBAR to a GPIO. This complicates the timing for the signals due to the added signal path

    Regards,

    Peter

  • Hi Peter,

    but you have 4 CLB tiles. Can one be used for SPI A+B and the other for C+B and they sync each other?

    Regards, Holger

  • Hi Holger,

    F2838x has 8 CLB tiles, you could theoretically use CLB1 to access SPIA and SPIB, and CLB5 for *** and SPID, and there are inter-CLB connections which can transmit signals across the CLB tiles. Suppose theoretically it could work but it hasn't been developed. Also I referred back to the previous discussion I was referring to and it was targeting F28003x which has less CLB peripherals and SPI modules