Trots flashminnets alla fördelar framför DRAM och EPROM är det viktigt att känna till dess speciella egenskaper. En sådan är programmeringen.
Urban Källqvist på Kaliber är en van minnestestare. Kaliber representera Data IO, ett ledande företag inom programmerings- och testutrustningar för programmerbara kretsar.
Han menar att datainnehållet i en flashkrets alltid bör testas innan kretsen börjar användas. Visserligen säger både AMD och Intel att deras kretsar inte behöver testas, men erfarenheten talar för det motsatta. De flesta stora svenska elektronikproducenter testar dessutom sina flashkretsar idag, vilket väl säger en hel del i sig.
I korthet går en minnestest till så att man först ser till att kretsen raderas. Därefter programmerar man den för att slutligen verifiera innehållet vid nominell spänning, Vccmin samt Vccmax. Vid själva programmeringen skjuts en puls till cellen varvid man försöker läsa tillbaka innehållet. Så fortsätter man till dess att tillbakaläsningen lyckas. Då skjuts en så kallad överprogrammeringspuls till cellen som därmed är programmerad.
Hur lång tid en programmering tar varierar stort, menar Urban Källqvist. Nyligen programmerade han ett flashminne på 4 Mbit. Det tog 45 sekunder, men då hade han direkt access till minnet. Sitter minnet istället fastlött på ett kort är 20 minuter en mer rimlig programmeringstid för 4 Mbit.
Orsaken är att koden vanligtvis måste föras över seriellt till kretsar på kort. Slutsatsen är att kortprogrammering oftast är ett dåligt alternativ då stora kretsvolymer skall programmeras. Däremot kan det vara bra att kunna programmera mindre, kundanpassade, delar när minnet väl sitter på plats.