cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
emotaworld
Adventurer
Adventurer
10,014 Views
Registered: ‎01-13-2015

Linear QSPI addres with ZC702 board

Jump to solution

What is the right address of QSPI flash memory to access(read & write) with DMAC (DMA ps) on ZC702 board?

 

I'm confused with QSPI address.

When I look system.hdf file on SDK(Vivado 2015.2), QSPI address is 0xE000D000, and LQSPI address is 0xFC000000.

how they are different?? The board I use is ZC702 has one 16MB QSPI flash.

If I want to access to the flash memory to write or read, which address is the base address?

For example, if I want to read data from 0x800000 in the QSPI flash memory, the source address is 0xE000D000 + 0x800000?

or 0xFC000000 + 0x800000?

And if one of two is right, the right one can be also available with DMAC (DMA ps)?

I have looked at some example source code for both with DMAC and non-DMAC, but I could not understand..

 

And here is one more this that makes me confused.

when you look at 7th slide of this document 

http://www.em.avnet.com/en-us/design/trainingandevents/Documents/X-Tech%202013%20Presentations/xtech-2013-zynq-2hwsw_ah.pdf

Address 0xFC000000 is not Linear QSPI, but OCM's address.

 

Which one is right one?

I'm very confused.

Please help me.

 

Thank you..

0 Kudos
1 Solution

Accepted Solutions
smarell
Community Manager
Community Manager
18,587 Views
Registered: ‎07-23-2012
QSPI base address starts from 0xFC000000. So, you should be using that plus offset to access the flash.
-----------------------------------------------------------------------------------------------
Please mark the post as "Accept as solution" if the information provided answers your query/resolves your issue.

Give Kudos to a post which you think is helpful.

View solution in original post

0 Kudos
9 Replies
smarell
Community Manager
Community Manager
18,588 Views
Registered: ‎07-23-2012
QSPI base address starts from 0xFC000000. So, you should be using that plus offset to access the flash.
-----------------------------------------------------------------------------------------------
Please mark the post as "Accept as solution" if the information provided answers your query/resolves your issue.

Give Kudos to a post which you think is helpful.

View solution in original post

0 Kudos
emotaworld
Adventurer
Adventurer
9,868 Views
Registered: ‎01-13-2015

Thanks smarell,

 

Hooking up with DMAC is possible for both writing and reading operation on QSPI flash memory?

0 Kudos
trenz-al
Scholar
Scholar
9,807 Views
Registered: ‎11-09-2013

wau you want to WRITE with DMA to read only QSPI linear region?

 

wau! If that would work would be nice

0 Kudos
emotaworld
Adventurer
Adventurer
9,801 Views
Registered: ‎01-13-2015

http://www.spansion.com/Support/Application%20Notes/Optimizing_Quad_SPI_Read_on_Zynq-7000_AN.pdf

Based upon above link, it seems like only reading operation is possible....

I haven't tested yet...

 

Is there anybody who have done this already??

0 Kudos
trenz-al
Scholar
Scholar
9,773 Views
Registered: ‎11-09-2013

of course only reading.

 

the LINEAR memory use of SPI always works as READ ONLY

0 Kudos
emotaworld
Adventurer
Adventurer
9,747 Views
Registered: ‎01-13-2015

 

0 Kudos
trenz-al
Scholar
Scholar
9,741 Views
Registered: ‎11-09-2013

such life.

 

if you need to ask this, then it would take really long to explain it.

 

it would be NOT FEASIBLE to implement writing in linear mode, too complex and useless or even dangerous..

0 Kudos
emotaworld
Adventurer
Adventurer
9,735 Views
Registered: ‎01-13-2015

Can you give me some links or docs that I can roughly figure it out why writing operation with LQSPI is not available?

0 Kudos
trenz-al
Scholar
Scholar
9,709 Views
Registered: ‎11-09-2013

you need 10+ years experience to not ask this question. I can not give you those years. sorry for that.

 

short:

 

Linear mode for serial memories is made for XiP execute in place, where the read access is fast enough to be usable.

 

NOR flashes have limited endurance and very slow writes and do not support byte writing, so while possible implementing linear writes is not feasible as I said.

 

This applies for LQSPI and serial NOR Flash, if you have HyperRAM then you can have linear memory space, that makes again sense, but for HyperFlash sharing the same HyperBus interface linear writes again do not make sense.

0 Kudos