SPRUII0F May 2019 – June 2024 TMS320F28384D , TMS320F28384D-Q1 , TMS320F28384S , TMS320F28384S-Q1 , TMS320F28386D , TMS320F28386D-Q1 , TMS320F28386S , TMS320F28386S-Q1 , TMS320F28388D , TMS320F28388S
The FSI module in this device supports multi-slave TDM configurations, whereas a single master device can control multiple slave devices. To use the FSI module in the multi-slave TDM configuration described, the slave device must utilize tag matching and the CLB module.
This multi-slave TDM configuration is supported in the FSI module through time-division multiplexing. When TDM is enabled, each slave device must also have tag matching enabled. Figure 32-10 shows a scheme where a single master device is communicating with multiple slave devices. All FSI receive modules in the slave devices are directly connected to the master device transmit module. The transmit modules of the slave devices are chained serially such that each transmit module is connected to the next slave device and the last slave device output connects to the master device receive module. Each slave device decides, based on the received frame's tag, whether to transmit the data or to enter bypass mode where the previous slave device transmit module directly connects to the next slave device. This is done by using the FSI transmit module TDM_IN.
When an FSI transmitter module is used in TDM mode, TXCLK_TDM_IN, TXD0_TDM_IN and TXD1_TDM_IN pins are used if the transmitter is required to enter bypass mode. Figure 32-11 shows how the FSI module operates when in multi-slave TDM mode.
The SEL_TDM_PATH signal is sourced from the CLB module. The CLB module also generates the transmit trigger for the FSI transmitter. The CLB module must be configured to decide when to generate the FSI transmit trigger based on the status of the data, ping, and frame tag match generated by the FSI receiver module. The FSITX module must be configured to transmit on an external trigger and the corresponding CLB trigger input must be selected. In a broadcast scenario (FSI tag match notifies all slave devices that a match has occurred), the CLB module inside each slave device generates a trigger and SEL_TDM_PATH signal. The main key here is that the trigger and the SEL_TDM_PATH signal must be generated at a different time interval in a non-overlapping manner. Figure 32-12 shows an example of FSI transmit triggers and the multi-slave TDM SEL_TDM_PATH signals generated by the RX_TRIGx signal or the CLB module of the slave devices in a broadcast scenario.
The TXCLK_TDM_IN, TXD0_TDM_IN, and TXD1_TDM_IN for the FSI transmit modules available in this device are shown in Table 32-10.
FSI Transmit Module | TXCLK_TDM_IN | TXD0_TDM_IN | TXD1_TDM_IN |
---|---|---|---|
FSITXA | FSIRXB RXCLK | FSIRXB RXD0 | FSIRXB RXD1 |
FSITXB | FSIRXA RXCLK | FSIRXA RXD0 | FSIRXA RXD1 |
The FSI transmit modules are configured to use the external triggers generated by the CLB to initiate the transmission. Through appropriate configurations, the logic is designed to work assuming that only one TDM trigger is generated until the transmission is completed. In the case where there is another trigger before the current transmission is competed, an error is flagged in the TX_EVT_ERR_STATUS register. Figure 32-13 shows the connections between CLB, FSITX, and FSIRX modules.
In Figure 32-10, the master device is connected to three slave devices. The master device uses FSITXA to transmit frames to the three slave devices. Each slave device receives every frame, using the FSIRXA. The slave devices are chained together using the FSITXA output and FSIRXB inputs (configured as FSITXA TDM input). When a slave device receives a frame using the FSIRXA, the device checks the tag of the frame to see if the tag matches the specified reference value in the tag compare register. When a match does occur, the CLB module configures the FSITXA of the slave device to select the local FSITXA outputs as the source for the output pins. However, if a match does not occur, the FSITXA of the slave device is configured to enter bypass mode. There, the device selects the FSITXA TDM inputs (which is FSIRXB) to be passed on to the output pins.
In this case, when a frame is transmitted by the master device and the frame tag is matched only in one of the slave devices, all other devices with non-matching tags enter the bypass mode to allow the master device to receive frames from the chosen slave device.