Asynchronous EMIF accesses have some really odd behaviors.
For all below operations, we are operating on CE2 with the CE2CFG value set to 0x00360230 and bus clock is 96MHz
1) Running a writeb (strb) operation on an 8-bit configured chip select with Setup/Strobe/Hold set to 1/4/4 and a 96MHz bus clock gives the following plot (Green: /CS, Yellow: /WE). The /CS pulse seems to span 4 bus-cycles. A writel (str) operation takes the same amount of time but has 4 /WE cycles in the same time.
2) Read operations seem to have the correct /CS and /OE periods (again Green: /CS Yellow: /OE) for 1/5/4 settings, but there is a huge delay in back-to-back transfers. As you can see in this case, the delay time is roughly double that of the single byte bus transaction!
This is all very surprising for a RT MCU with "Tightly Coupled Memories" as these delays are huge when pulling high amounts of bandwidth across the bus (say from a high-speed UART). Are there any configurations that we're missing which can remove these artifacts (seemingly always 32-bit ops on writes, large delays between transactions on reads).?
Thanks