LS1043a QSPI RX/TX messages larger than 128 bytes

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

LS1043a QSPI RX/TX messages larger than 128 bytes

1,312 次查看
Alexandre-SCHMITT
Contributor II

Hi,

I want to use the QSPI controller to send and receive messages to a specific chip.
The frames between this chip and my LS1043a need to be bigger than 128 bytes whitout CS rising up.

Is there a method to pop the  RX buffer when the IDATSZ value is higher than 128 bytes?

 

What I am doing today with a flash memory to test a read of 4ko at one time :

1- Init of the QSPI Controller
2- Unlock the LUT
3- Progam the LUT4 with : INST0 : CMD , OP0 : 0x03, INST1 : ADDR, OP1 : 0x18
4- Progam the LUT5 with : INST0 : READ, OP0 : 0x00, INST1 : 0x00 , OP1 : 0x00
5- Lock the LUT
6- RBCT -> Use IP
7- SFAR -> 0x40000000
8- IPCR[SEQID] = 0x01, IPCR[IDATSZ] = 0x1000 (4ko)
9- I can read all (32) RBDRn
10- How to pop RBDRn? And read the following 128 bytes and others?

Thanks,

Alexandre SCHMITT

标记 (2)
0 项奖励
回复
1 回复

1,296 次查看
yipingwang
NXP TechSupport
NXP TechSupport

qSPI in LS1043a has a hardware limitation of RX FIFO length of 128 Bytes. There is no method to pop the RX buffer when the IDATSZ value is higher than 128 bytes. The maximum value for WMRK is 31, which works with 128 Byte data. The Read/Write operations involve access the FIFO buffers and then to the external slave devices.
Is any particular reason why it cannot use a frame size of 128 Bytes? The FlexSPI controller in LX2160 SoC can have 1 KBytes FIFO.

0 项奖励
回复