Platform forum

Pinswap on address and Datapins

CircuitWarrior , 04-28-2016, 05:35 AM

I have a question to the pin-swap suggestion.
For my own project I am using a STM32F4xx controller with external NOR Flash and SDRAM.
There are totally 25 Adress-tracks and 16 Data-tracks.
Now, is it correct that I can swap one Address line with another or swap one data line with another?
What needs to be considered by creating the firmware?
I mean there are specific commands for the Flash / RAM to erase it completely, write/read to it. If one D[0] is at D[6] and the command to erase the memory completely includes line D[0], I need to send the command with D[6] high, right?

Thank you!
robertferanec , 04-28-2016, 01:31 PM
Hi @CircuitWarrior. I have never done bit swapping for NOR nor SDRAM, but if I remember right, I think I read an article, that on a simple old RAM you should be able to swap between address lines and between data lines (basically you always read from the same place where you write it before). Later it gets more complicated - especially because chips may have internal status & control registers and address and data swapping becomes limited.

The same for NOR, I don't know, but if the chip has some internal registers, I am not really sure how it could then work.

However, if in your project you have full control over the address and data bus (you are not using in build memory controller), then you may be able to swap the signals.

So I guess I didnt help much, but maybe someone other readers can give you an advice.
CircuitWarrior , 04-29-2016, 12:32 AM
Thank you robert, of course you helped me
I was just thinking you generalize the swap of Data and Address-pins for every memory. But now I understand you mentioned this only for classic RAM like DDR-RAM which is used on computer-boards.
That's the same what I was thinking about it. If a memory controller is used, i'm unable to swap the lines, if not, i am

Have a nice day!
Use our interactive Discord forum to reply or ask new questions.
Discord invite
Discord forum link (after invitation)

Didn't find what you were looking for?