Hi,
I would like to know the advantages/disadvantages of Flex IO I2S over SAI. And, why you someone use FlexIO i2S when the same functionality can be achieved with SAI ?
But, will we have any system related issues when FLEXIO is selected over SAI ?
Thank you
Pravinkumar
The SAI module has much more HW features than the FlexIO.
There are TX/RX FIFOs, Sync and FIFO error flags / warnings / interrupts, etc.
You can compare the two modules in these application notes:
AN12202 Using Synchronous Audio Interface (SAI) on S32K148
https://www.nxp.com/docs/en/application-note/AN12202.pdf
AN12174 Using FlexIO to emulate communications and timing peripherals
https://www.nxp.com/docs/en/application-note/AN12174.pdf
Regards,
Daniel
Thank you.
I also would like to understand interrupt load in both cases, is it same or different, is there any document explaining the same ?
The reason I am asking is that we created a design using Flex IO and but I would like to know if there would be any implications of not using SAI.
Hello @Pravinkumar,
There is no such document.
I should mention that the RTD versions have Quality packages.
For example: SW32K3_RTD_4.4_2.0.2_D2211_QualityPackage.zip
But the interrupt load and other implication are also application dependent.
The modules are different, the drivers are different.
You can compare, for example, the callback event types of the two drivers:
Flexio_I2s_Ip_Types.h
Sai_Ip_Types.h
Regards,
Daniel
Hi @Pravinkumar,
The SAI is a dedicated module for I2S and other protocols.
Whereas the FlexIO just emulates the protocols.
FlexIO is used when there is no SAI module on the part, or if more channels are needed.
Regards,
Daniel