Generic Serial Flash Interface reading only 0's
Hi, I'm using the Cyclone 10 EVAL kit with the EP128A flash connected. I perform the following events and made sure that the csr /mem wait requests were low before issuing the next command, but only get all 0x00 for read responses (Signal Tap screenshots are attached):
WR ENABLE:
csr_addr: 0x07 csr_wr_data: 0x00000006
csr_addr: 0x08 csr_wr_data: 0x00000001
SECTOR 0 ERASE:
csr_addr: 0x07 csr_wr_data: 0x000003D8
csr_addr: 0x09 csr_wr_data: 0x00000000
csr_addr: 0x08 csr_wr_data: 0x00000001
WR 4 BYTES OF DATA TO ADDR 0x4000:
csr_addr: 0x04 csr_wr_data: 0x00000000
csr_addr: 0x00 csr_wr_data: 0x00000001
csr_addr: 0x06 csr_wr_data: 0x00000502
mem_addr:0x4000 mem_wr_data: 0x0011223
mem_addr:0x4000 mem_wr_data: 0x44556677
mem_addr:0x4000 mem_wr_data: 0x8899AABB
mem_addr:0x4000 mem_wr_data: 0xCCDDEEFF
READ DATA BACK:
csr_addr: 0x04 csr_wr_data: 0x00000000
csr_addr: 0x00 csr_wr_data: 0x00000001
csr_addr: 0x05 csr_wr_data: 0x00000001
mem_addr:0x4000
So it seems the issue has been with Signal tap all along, when I changed my trigger conditions to make sure pivotal actions were hit, then set my Storage enables to output when the rising edge of "avl_mem_readdatavalid", I was able to see valid and correct read data from the Flash.