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.

TMS320F280049C: the problem of FSI example

Part Number: TMS320F280049C
Other Parts Discussed in Thread: C2000WARE, ISO7842

now i use the example of FSI in c2000ware v3; use two DSP to debug;

now i use these to communicate successfully through FSI channel whit 5MHZ clock(Why not the default 50MHz in the routine because 50MHz doesn't work in the first time); but when i change the clock of FSI to even 10MHZ, and the communication can not be established 

What are the possible reasons? i didn't change the example code almost except some GPIO initialization, i use my own test board of 280049

  • Can you share whether you're using RS485 / LVDS? And also, are you using dual line communication or single?

  • i'm using single line; in my own 280049s board, there is a isolate chip named ISO7842FDWW in the middle of two dsps, and the distance of the FSI comunicate channel (include ISO7842FDWW) is only 10cm almost, PCB line.

  • I am forwarding the details to an expert. Kindly give us some time to look through this.

    Regards,

    Aditya

  • Hi,

    10cm trace lengths with ISO7842 should be OK for up to 50 MHz FSI comms. What do you have the defines below set to in your SW? i.e. DMA or CPU mode?

    #define FSI_DMA_ENABLE              0
    #define TX_DMA_TRIGGER_ENABLE       0

    When testing the examples at 10MHz are both the lead and node devices getting passed the handshake sequence? If so, are either devices receiving errors after the handshake, where the code execution halts in 'fsiRxInt2ISR'?

    Best,

    Kevin

  • i run in CPU mode:

    Is it because the CPU can't respond in time?

    I don't know if you've run these examples under a variety of working conditions, but when i change it to 10MHZ, the leader is sent info periodically but the node seem can not receive info when hanshake process; 

    node:

    but when i change the clock of FSI to 5MHZ, the communicatio is ok

  • Hi,

    OK, CPU mode and regular DMA mode (TX_DMA_TRIGGER_ENABLE = 0) should work normally without issues.

    I don't know if you've run these examples under a variety of working conditions, but when i change it to 10MHZ, the leader is sent info periodically but the node seem can not receive info when hanshake process; 

    These examples have been tested with different hardware and varying operating FSI frequencies. Communicating at 50 MHz should not be an issue, assuming good signal integrity and channel-to-channel skew (when not using FSI RX skew compensation) is maintained in the design.

    If the handshake_node() function is getting stuck at the line of code below, then the node device is not receiving a valid ping frame from the lead device during the handshake sequence.

    while(fsiRxInt1Received != 1);

    The fact that 5 MHz frequency works, but not 10 MHz makes me think there may be some HW level signal issue traced to the node FSI RX pins. Can you try probing the signals at the node FSI RX pins with an oscilloscope for both the 5 MHz and 10 MHz case and compare them? For the 10 MHz case we want to look at the integrity of the CLK and D0 lines, you can share screenshots of the waveforms here.

    Best,

    Kevin

  •  In terms of waveform quality, there is no significant difference,If the waveform quality has an impact, does my actual product also need to focus on this factor? This uncontrollable risk is a little big

    here is the waveform i test from my own 280049 test board, in 9MHZ, 10MHZ, 5MHZ, different performance

    FSI CLK=9MHZ(handshake can be done,but data communication can not be done

     

    Detail:

     

    FSI CLK = 10MHZ(handshake can not be done

    Detail:

     

    FSI CLK = 5MHZ(handshake and data transfer all ok

     

    Detail:

  • sorry, The first few diagrams are a bit miscommented, they should all be FSITX instead of FSIRX(node side)

  • according to your remind, i find that all FSI signals in our test board have RC filters, the RC bandwidth is about 3.5Mhz, so this load to my problem. i now take out all RC filters for FSI and 50Mhz can communicate. thank you 

    Also, do we need to do some RC filtering on the signal path in the standard design of FSI? since the DSP is used in strong electric interference occasions

  • Hi,

    That's good that you were able to identify the root cause.

    Also, do we need to do some RC filtering on the signal path in the standard design of FSI? since the DSP is used in strong electric interference occasions

    This isn't a requirement for FSI communications, but if you're worried about high frequency noise (>50MHz) you could include RC filtering with higher bandwidth. For devices communicating on a single PCB, like you have, limiting FSI trace lengths and following good high-speed signal PCB design practices is likely more important.

    Best,

    Kevin

  • OK,but if we consider to use FSI in commuication between two individual boards through 30cm cable and isolater,  also in power supply product condition, is it available for 50MHZ communication?

  • Hi,

    Successful FSI communication (or for any communication peripheral for that matter) will depend on the signal integrity of the lines while your system is operating. The signals integrity will need to be properly maintained between the Transmitter and Receiver for comms to work.

    if we consider to use FSI in commuication between two individual boards through 30cm cable and isolater,  also in power supply product condition, is it available for 50MHZ communication?

    For these conditions you listed, where you have a 30cm cable between boards in a noisy system environment, we would recommend you use differential devices, such as LVDS or RS-485, for the FSI lines.Differential devices will substantially improve the noise immunity of the FSI lines on your PCB and cable, allowing you to have robust 50 MHz comms.

    I suggest you look at the evaluation board and related documentation on the page below for some additional information on FSI + differential devices.

    https://www.ti.com/tool/TMDSFSIADAPEVM

    Best,

    Kevin