인텔 Stratix 10 직렬 사서함 클라이언트 IP를 사용할 때, WRITEDATA_0 및 WRITEDATA_1 레지스터를 사용하여 데이터를 보낼 때 잘못된 데이터가 플래시로 전송되는 것을 관찰할 수 있습니다. 바이트 주문이 거의 없는 형식이기 때문입니다. 이는 읽기 데이터 작업을 수행하는 것과 동일합니다.
SPI 인터페이스 프로토콜을 기반으로 데이터가 전송될 때 가장 중요한 비트(MSB)가 전송되거나 수신됩니다. 따라서 각 바이트는 가장 중요한 비트(LSB)에서 READDATA_0, READDATA_1, WRITEDATA_0 및 WRITEDATA_1 MSB에 저장됩니다. 즉, 레지스터의 데이터는 LSB 바이트를 읽기 또는 쓰기 데이터 레지스터의 MSB 바이트로 전송합니다.
문제를 해결하려면 WRITEDATA_0 4 바이트 데이터의 바이트 순서를 되돌리거나 레지스터를 WRITEDATA_1 합니다.
예를 들어 4 바이트의 데이터 "0x11223344"은 실제로 "0x44332211"입니다.