linear & non-linear flash

rookie1010

Senior member
Mar 7, 2004
984
0
0
the linear/non-linear refers to addressing

linear memory is NOR flash
& non-linear memory is NAND flash

i came across this article which states that NOR flash data and command bus are seperate and on the NAND flash they are multiplexed. how does that make addressing scheme non-linear though?
 

Mark R

Diamond Member
Oct 9, 1999
8,513
16
81
Linear flash is an old type of flash memory card (basically a PCMCIA card with flash memory in it). There is no intelligence on the card - the flash memory on the card pretty much connects directly to the motherboard chipset (via the PCMCIA bus). This made it very fast. So fast, that some systems could run programs directly from the flash memory (without the need to load it into RAM - the CPU could see the flash just like RAM, with the program already loaded into it).

Because the OS could access the card any way it wanted, different device manufacturers and different OSs tended to use different ways of accessing the memory (so no guarantee that if your PDA took a linear flash card, you could put it in your laptop and get anything useful off it). Additionally, there were a variety of versions of linear flash, which used slightly different voltages and chips, and which could potentially cause compatability problems.

Linear flash is almost obsolete, and has been replaced by emulation type flash cards (e.g. compactflash). CompactFlash cards emulate IDE hard drives - they have the same connections and use the same commands (you can connect a CF card to an IDE port - all you need is an adaptor that can change the voltage and connectors). Other types of card, e.g. SD memory or memory stick may have different connections and commands, but the principle is the same - they use simple disk drive like commands for access.

Inside the flash card a CPU takes the commands from the PC, accesses the flash chips and sends the result back to the PC. This makes it a bit slower, but much easier to use. OS drivers and card reading hardware becomes much simpler, and as disk formats tend to be well standardized - there is good compatability between different computer systems (so you can put a CF card in a camera, and your PC can still read it).
 

rookie1010

Senior member
Mar 7, 2004
984
0
0
from my reading

linear memories might be old, but still NOR flash (linear memories) have the XIP (execution in place) and hence dont need to be shadowed by RAM (and consequently dont need a boot loader program which would copy the OS from non-linear flash to RAM for execution)

what i dont understand is why is the addressing non-linear in a NAND flash?
 

Mark R

Diamond Member
Oct 9, 1999
8,513
16
81
In NOR each byte is individually addressable for reading and writing; each bit is essentially constructed seperately on the die.

Each NOR transistor has an address line and a bit line - when it's address line is asserted, if the flash cell is charged the transistor will pull the output of the chip low. i.e. it's a wired 'NOR' effect.

NAND is more compact. It achieves this by combining bits into blocks of bits, consisting of transistors in series (32 or more in each string). The transistors are by default 'on' pulling the output low, but when an individual one in the string is deactivated, then if discharged may go open circuit, allowing the output to float up.

The problem is that you have to activate the whole string, then strobe the data out of the string into a shift register, before you can get it out. Additionally, because in NOR each transistor has a low resistance when switched on, slew rates on teh output are high - but because of the long series strings in NAND, resistances and slew rates are much degraded.

So, with NAND, the design forces you into blockwise access, with a long random access time to activate a block (up to 250-1000x as long as random access on NOR). Similarly, erases and writes can be performed in blockwise fashion - whereas in NOR, they must be performed sequentially.