TC234 QSPI RxFIFO confused

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
User21797
Level 2
Level 2
10 likes given First comment on blog First solution authored

Hi there,

I have 2 confusion:

1. How RxFIFO work, from manual figure 20-34, it shown in RxFIFO each received data will come with a status:

 

User21797_1-1657869069614.png

But from actual testing I can't read any status data from RxFIFO. E.g. if I have 2 SPI transaction, I only read out 2 data 'D' but no 'S' status data from RX_EXIT

 

2. Difference between RxFIFO batch move and combine interrupt mode. The batch mode description is 'an interrupt is generated only at one point in the RXFIFO, when the filling level rises above the programmed threshold' and combined mode is 'RXFIFO generates interrupt each time a data is written to it above the preprogrammed
level'. From how I comprehend their description are exactly the same: RxFIFO will give me an interrupt signal whenever RxFIFO fill level exceed GLOBALCON1.RXFIFOINT. So e.g. if I said GLOBALCON1.RXFIFOINT to 1, I will receive an interrupt signal when RxFIFO fill level is 2? And so far this is also the result I get from testing. I do 2 SPI transaction and can only receive interrupt signal when GLOBALCON1.RXFIFOINT set to 1, setting to 2 will have nothing. So what's their difference? 

Thanks for reading, any reply is appreciated.

0 Likes
2 Replies
Nambi
Moderator
Moderator
Moderator
50 likes received 5 likes given 100 solutions authored

Hi,

Could you check it based on how RXFIFO is handled in the example?

https://github.com/Infineon/AURIX_code_examples/tree/master/code_examples/SPI_CPU_1_KIT_TC275_LK

Best Regards.

0 Likes
cwunder
Employee
Employee
5 likes given 50 likes received 50 solutions authored

Concerning the STATUS in the RxFIFO. This only happens if you enable GLOBALCON.SI=1

cwunder_0-1657908785830.png