Não é tanto que o NAND não seja confiável (embora seja menos confiável), é o fato de que eles são diferentes tipos de memória na maneira como são acessados e as diferenças na velocidade de leitura / gravação; portanto, são úteis para diferentes aplicações.
A principal vantagem do NOR é que ele é de acesso aleatório, o que torna possível usá-lo para executar código. Possui um endereço completo e um barramento de dados, para que você possa endereçar qualquer local e ler de / gravar para imediatamente (a gravação assume que o endereço está vazio, é claro).
Você lê / grava NAND configurando o endereço através de sua pequena interface de E / S e lendo ou gravando dados com o endereço incrementando automaticamente a cada leitura ou gravação. Isso o torna bom para escrever ou ler fluxos de dados ou arquivos. A velocidade de gravação para NAND é mais rápida que a NOR. Quando você está gravando imagens em uma câmera, por exemplo, essa velocidade rápida de gravação é especialmente útil. A densidade mais alta do NAND é, obviamente, melhor para aplicativos como o armazenamento de dados.
Edit: após a pergunta de Marcus.
Há uma razão para esse acesso devido à maneira como os MOSFETs estão fisicamente organizados no IC. Para pedir um pouco da Wikipedia:
No flash NOR, cada célula tem uma extremidade conectada diretamente ao terra e a outra extremidade conectada diretamente a uma linha de bits. Esse arranjo é chamado de "flash NOR" porque age como uma porta NOR.
O fato de cada célula ter uma extremidade conectada a uma linha de bits significa que eles (e, portanto, cada bit) podem ser acessados aleatoriamente.
O flash NAND também usa transistores de porta flutuante, mas eles são conectados de uma maneira que se assemelha a um portão NAND: vários transistores são conectados em série e a linha de bits é puxada para baixo somente se todas as linhas de palavras forem puxadas para cima (acima da linha dos transistores). VT).
Isso significa que todos os bits da palavra devem ser acessados ao mesmo tempo.
O design da memória de célula NOR permite que os bits sejam programados (gravados em "0") independentemente, em qualquer ordem e sem risco de perturbar outros bits. Algumas matrizes de memória baseadas em células NOR usam blocos de memória com correção de erros, que devem ser gravados em blocos de um certo tamanho (por exemplo, 32 bits) em vez de um bit ou mesmo byte por vez, mas isso ainda torna prático escrever muitos pequenos dados independentemente no mesmo bloco, sem precisar realocar os dados e apagar o bloco antigo.
Muitos dispositivos flash NAND, por outro lado, exigem que cada página de dados seja gravada usando no máximo duas operações distintas, antes que a página inteira precise ser apagada. Se alguém quiser acrescentar dados repetidamente à mesma página, cada uma dessas operações exigiria uma cópia da página e um ciclo de apagamento (talvez seja possível otimizar as coisas para usar apenas uma cópia e apagar após cada ciclo, mas ao usar o NOR flash, pode-se gerenciar 1.000 pequenos atualizações para cada ciclo de copiar / apagar).
fonte