NOR FlashÉÁ´æ¼¼Êõ
ÊÇÏÖÔÚÊг¡ÉÏÁ½ÖÖÖ÷ÒªµÄ·ÇÒ×ʧÉÁ´æ¼¼ÊõÖ®Ò»¡£IntelÓÚ1988ÄêÊ×ÏÈ¿ª·¢³öNOR Flash ¼¼Êõ£¬³¹µ×¸Ä±äÁËÔÏÈÓÉEPROM(Erasable Programmable Read-Only-Memoryµç¿É±à³ÌÐòÖ»¶Á´æ´¢Æ÷)ºÍEEPROM(µç¿É²ÁÖ»¶Á´æ´¢Æ÷Electrically Erasable Programmable Read - Only Memory)һͳÌìϵľÖÃæ¡£½ô½Ó×Å£¬1989Ä꣬¶«Ö¥¹«Ë¾·¢±íÁËNAND Flash ½á¹¹£¬Ç¿µ÷½µµÍÿ±ÈÌØµÄ³É±¾£¬Óиü¸ßµÄÐÔÄÜ£¬²¢ÇÒÏñ´ÅÅÌÒ»Ñù¿ÉÒÔͨ¹ý½Ó¿ÚÇáËÉÉý¼¶¡£NOR Flash µÄÌØµãÊÇоƬÄÚÖ´ÐУ¨XIP £¬eXecute In Place£©£¬ÕâÑùÓ¦ÓóÌÐò¿ÉÒÔÖ±½ÓÔÚFlashÉÁ´æÄÚÔËÐУ¬²»±ØÔÙ°Ñ´úÂë¶Áµ½ÏµÍ³RAMÖС£NOR µÄ´«ÊäЧÂʺܸߣ¬ÔÚ1~4MBµÄСÈÝÁ¿Ê±¾ßÓкܸߵijɱ¾Ð§Ò棬µ«ÊǺܵ͵ÄдÈëºÍ²Á³ýËÙ¶È´ó´óÓ°Ïìµ½ËüµÄÐÔÄÜ¡£NANDµÄ½á¹¹ÄÜÌṩ¼«¸ßµÄµ¥ÔªÃܶȣ¬¿ÉÒÔ´ïµ½¸ß´æ´¢Ãܶȣ¬²¢ÇÒдÈëºÍ²Á³ýµÄËÙ¶ÈÒ²ºÜ¿ì¡£Ó¦ÓÃNANDµÄÀ§ÄÑÔÚÓÚFlashµÄ¹ÜÀíÐèÒªÌØÊâµÄϵͳ½Ó¿Ú¡£Í¨³£¶ÁÈ¡NORµÄËٶȱÈNANDÉÔ¿ìһЩ£¬¶øNANDµÄдÈëËٶȱÈNOR¿ìºÜ¶à£¬ÔÚÉè¼ÆÖÐÓ¦¸Ã¿¼ÂÇÕâЩÇé¿ö¡£¡ª¡ª¡¶ARMǶÈëʽLinuxϵͳ¿ª·¢´ÓÈëÃŵ½¾«Í¨¡· ÀîÑÇ·å Å·ÎÄÊ¢ µÈ±àÖø Ç廪´óѧ³ö°æÉç P52 ×¢ÊÍ API Key
ÐÔÄܱȽÏ
flashÉÁ´æÊÇ·ÇÒ×ʧ´æ´¢Æ÷£¬¿ÉÒÔ¶Ô³ÆÎª¿éµÄ´æ´¢Æ÷µ¥Ôª¿é½øÐвÁдºÍÔÙ±à³Ì¡£ÈκÎflashÆ÷¼þµÄдÈë²Ù×÷Ö»ÄÜÔÚ¿Õ»òÒѲÁ³ýµÄµ¥ÔªÄÚ½øÐУ¬ËùÒÔ´ó¶àÊýÇé¿öÏ£¬ÔÚ½øÐÐдÈë²Ù×÷֮ǰ±ØÐëÏÈÖ´ÐвÁ³ý¡£NANDÆ÷¼þÖ´ÐвÁ³ý²Ù×÷ÊÇÊ®·Ö¼òµ¥µÄ£¬¶øNORÔòÒªÇóÔÚ½øÐвÁ³ýǰÏÈÒª½«Ä¿±ê¿éÄÚËùÓеÄλ¶¼Ð´Îª0¡£
ÓÉÓÚ²Á³ýNORÆ÷¼þʱÊÇÒÔ64¡«128KBµÄ¿é½øÐеģ¬Ö´ÐÐÒ»¸öдÈë/²Á³ý²Ù×÷µÄʱ¼äΪ5s£¬Óë´ËÏà·´£¬²Á³ýNANDÆ÷¼þÊÇÒÔ8¡«32KBµÄ¿é½øÐеģ¬Ö´ÐÐÏàͬµÄ²Ù×÷×î¶àÖ»ÐèÒª4ms¡£
Ö´ÐвÁ³ýʱ¿é³ß´çµÄ²»Í¬½øÒ»²½À´óÁËNORºÍNANDÖ®¼äµÄÐÔÄܲî¾à£¬Í³¼Æ±íÃ÷£¬¶ÔÓÚ¸ø¶¨µÄÒ»Ì×дÈë²Ù×÷(ÓÈÆäÊǸüÐÂСÎļþʱ)£¬¸ü¶àµÄ²Á³ý²Ù×÷±ØÐëÔÚ»ùÓÚNORµÄµ¥ÔªÖнøÐС£ÕâÑù£¬µ±Ñ¡Ôñ´æ´¢½â¾ö·½°¸Ê±£¬Éè¼ÆÊ¦±ØÐëȨºâÒÔϵĸ÷ÏîÒòËØ¡£
l ¡¢NORµÄ¶ÁËٶȱÈNANDÉÔ¿ìһЩ¡£
2¡¢ NANDµÄдÈëËٶȱÈNOR¿ìºÜ¶à¡£
3 ¡¢NANDµÄ4ms²Á³ýËÙ¶ÈÔ¶±ÈNORµÄ5s¿ì¡£
4 ¡¢´ó¶àÊýдÈë²Ù×÷ÐèÒªÏȽøÐвÁ³ý²Ù×÷¡£
5 ¡¢NANDµÄ²Á³ýµ¥Ôª¸üС£¬ÏàÓ¦µÄ²Á³ýµç·¸üÉÙ¡£
´ËÍ⣬NANDµÄʵ¼ÊÓ¦Ó÷½Ê½Òª±ÈNOR¸´ÔӵĶࡣNOR¿ÉÒÔÖ±½ÓʹÓ㬲¢¿ÉÔÚÉÏÃæÖ±½ÓÔËÐдúÂ룻¶øNANDÐèÒªI/O½Ó¿Ú£¬Òò´ËʹÓÃʱÐèÒªÇý¶¯³ÌÐò¡£²»¹ýµ±½ñÁ÷ÐеIJÙ×÷ϵͳ¶ÔNAND½á¹¹µÄFlash¶¼ÓÐÖ§³Ö¡£´ËÍ⣬LinuxÄÚºËÒ²ÌṩÁ˶ÔNAND½á¹¹µÄFlashµÄÖ§³Ö¡£
NOR FlashÏê½â
NORºÍNANDÊÇÏÖÔÚÊг¡ÉÏÁ½ÖÖÖ÷ÒªµÄ·ÇÒ×ʧÉÁ´æ¼¼Êõ¡£IntelÓÚ1988ÄêÊ×ÏÈ¿ª·¢³öNOR flash¼¼Êõ£¬³¹µ×¸Ä±äÁËÔÏÈÓÉEPROMºÍEEPROMһͳÌìϵľÖÃæ¡£½ô½Ó×Å£¬1989Ä꣬¶«Ö¥¹«Ë¾·¢±íÁËNAND flash½á¹¹£¬Ç¿µ÷½µµÍÿ±ÈÌØµÄ³É±¾£¬¸ü¸ßµÄÐÔÄÜ£¬²¢ÇÒÏó´ÅÅÌÒ»Ñù¿ÉÒÔͨ¹ý½Ó¿ÚÇáËÉÉý¼¶¡£µ«ÊǾ¹ýÁËÊ®¶àÄêÖ®ºó£¬ÈÔÈ»ÓÐÏ൱¶àµÄÓ²¼þ¹¤³Ìʦ·Ö²»ÇåNORºÍNANDÉÁ´æ¡£
Ïñ¡°flash´æ´¢Æ÷¡±¾³£¿ÉÒÔÓëÏà¡°NOR´æ´¢Æ÷¡±»¥»»Ê¹Óá£Ðí¶àÒµÄÚÈËʿҲ¸ã²»Çå³þNANDÉÁ´æ¼¼ÊõÏà¶ÔÓÚNOR¼¼ÊõµÄÓÅÔ½Ö®´¦£¬ÒòΪ´ó¶àÊýÇé¿öÏÂÉÁ´æÖ»ÊÇÓÃÀ´´æ´¢ÉÙÁ¿µÄ´úÂ룬ÕâʱNORÉÁ´æ¸üÊʺÏһЩ¡£¶øNANDÔòÊǸßÊý¾Ý´æ´¢ÃܶȵÄÀíÏë½â¾ö·½°¸¡£
NORµÄÌØµãÊÇоƬÄÚÖ´ÐÐ(XIP, eXecute In Place)£¬ÕâÑùÓ¦ÓóÌÐò¿ÉÒÔÖ±½ÓÔÚflashÉÁ´æÄÚÔËÐУ¬²»±ØÔÙ°Ñ´úÂë¶Áµ½ÏµÍ³RAMÖС£NORµÄ´«ÊäЧÂʺܸߣ¬ÔÚ1¡«4MBµÄСÈÝÁ¿Ê±¾ßÓкܸߵijɱ¾Ð§Ò棬µ«ÊǺܵ͵ÄдÈëºÍ²Á³ýËÙ¶È´ó´óÓ°ÏìÁËËüµÄÐÔÄÜ¡£
NAND½á¹¹ÄÜÌṩ¼«¸ßµÄµ¥ÔªÃܶȣ¬¿ÉÒÔ´ïµ½¸ß´æ´¢Ãܶȣ¬²¢ÇÒдÈëºÍ²Á³ýµÄËÙ¶ÈÒ²ºÜ¿ì¡£Ó¦ÓÃNANDµÄÀ§ÄÑÔÚÓÚflashµÄ¹ÜÀíÐèÒªÌØÊâµÄϵͳ½Ó¿Ú¡£
NOR Flash½Ó¿Ú²î±ð
NOR flash´øÓÐSRAM½Ó¿Ú£¬ÓÐ×ã¹»µÄµØÖ·Òý½ÅÀ´Ñ°Ö·£¬¿ÉÒÔºÜÈÝÒ׵شæÈ¡ÆäÄÚ²¿µÄÿһ¸ö×Ö½Ú¡£
NANDÆ÷¼þʹÓø´ÔÓµÄI/O¿ÚÀ´´®ÐеشæÈ¡Êý¾Ý£¬¸÷¸ö²úÆ·»ò³§É̵ķ½·¨¿ÉÄܸ÷²»Ïàͬ¡£8¸öÒý½ÅÓÃÀ´´«ËÍ¿ØÖÆ¡¢µØÖ·ºÍÊý¾ÝÐÅÏ¢¡£
NAND¶ÁºÍд²Ù×÷²ÉÓÃ512×ֽڵĿ飬ÕâÒ»µãÓеãÏñÓ²Å̹ÜÀí´ËÀà²Ù×÷£¬ºÜ×ÔÈ»µØ£¬»ùÓÚNANDµÄ´æ´¢Æ÷¾Í¿ÉÒÔÈ¡´úÓ²ÅÌ»òÆäËû¿éÉ豸¡£
NOR FlashÈÝÁ¿³É±¾
NAND flashµÄµ¥Ôª³ß´ç¼¸ºõÊÇNORÆ÷¼þµÄÒ»°ë£¬ÓÉÓÚÉú²ú¹ý³Ì¸üΪ¼òµ¥£¬NAND½á¹¹¿ÉÒÔÔÚ¸ø¶¨µÄÄ£¾ß³ß´çÄÚÌṩ¸ü¸ßµÄÈÝÁ¿£¬Ò²¾ÍÏàÓ¦µØ½µµÍÁ˼۸ñ¡£
NOR flashÕ¼¾ÝÁËÈÝÁ¿Îª1¡«16MBÉÁ´æÊг¡µÄ´ó²¿·Ö£¬¶øNAND flashÖ»ÊÇÓÃÔÚ8¡«128MBµÄ²úÆ·µ±ÖУ¬ÕâҲ˵Ã÷NORÖ÷ÒªÓ¦ÓÃÔÚ´úÂë´æ´¢½éÖÊÖУ¬NANDÊʺÏÓÚÊý¾Ý´æ´¢£¬NANDÔÚCompactFlash¡¢Secure Digital¡¢PC CardsºÍMMC(¶àýÌå´æ´¢¿¨Multi Media Card)´æ´¢¿¨Êг¡ÉÏËùÕ¼·Ý¶î×î´ó¡£
NOR Flash¿É¿¿ÄÍÓÃ
²ÉÓÃflash½éÖÊʱһ¸öÐèÒªÖØµã¿¼ÂǵÄÎÊÌâÊǿɿ¿ÐÔ¡£¶ÔÓÚÐèÒªÀ©Õ¹MTBF(ƽ¾ù¹ÊÕϼä¸ôʱ¼äMean Time Between Failures)µÄϵͳÀ´Ëµ£¬FlashÊǷdz£ºÏÊʵĴ洢·½°¸¡£¿ÉÒÔ´ÓÊÙÃü(ÄÍÓÃÐÔ)¡¢Î»½»»»ºÍ»µ¿é´¦ÀíÈý¸ö·½ÃæÀ´±È½ÏNORºÍNANDµÄ¿É¿¿ÐÔ¡£
ÊÙÃü(ÄÍÓÃÐÔ)
ÔÚNANDÉÁ´æÖÐÿ¸ö¿éµÄ×î´ó²Áд´ÎÊýÊÇÒ»°ÙÍò´Î£¬¶øNORµÄ²Áд´ÎÊýÊÇÊ®Íò´Î¡£NAND´æ´¢Æ÷³ýÁ˾ßÓÐ10±È1µÄ¿é²Á³ýÖÜÆÚÓÅÊÆ£¬µäÐ͵ÄNAND¿é³ß´çΪNORÆ÷¼þµÄ°Ë·ÖÖ®Ò»£¬Ã¿¸öNAND´æ´¢Æ÷¿éÔÚ¸ø¶¨µÄʱ¼äÄÚµÄɾ³ý´ÎÊýÒªÉÙһЩ¡£
NOR Flashλ½»»»
ËùÓÐflashÆ÷¼þ¶¼ÊÜλ½»»»ÏÖÏóµÄÀ§ÈÅ¡£ÔÚijЩÇé¿öÏÂ(ºÜÉÙ¼û£¬NAND·¢ÉúµÄ´ÎÊýÒª±ÈNOR¶à)£¬Ò»¸ö±ÈÌØÎ»»á·¢Éú·´×ª»ò±»±¨¸æ·´×ªÁË¡£
һλµÄ±ä»¯¿ÉÄܲ»ºÜÃ÷ÏÔ£¬µ«ÊÇÈç¹û·¢ÉúÔÚÒ»¸ö¹Ø¼üÎļþÉÏ£¬Õâ¸öССµÄ¹ÊÕÏ¿ÉÄܵ¼ÖÂϵͳͣ»ú¡£Èç¹ûÖ»ÊDZ¨¸æÓÐÎÊÌ⣬¶à¶Á¼¸´Î¾Í¿ÉÄܽâ¾öÁË¡£
µ±È»£¬Èç¹ûÕâ¸öÎ»ÕæµÄ¸Ä±äÁË£¬¾Í±ØÐë²ÉÓôíÎó̽²â/´íÎó¸üÕý(EDC/ECC)Ëã·¨¡£Î»·´×ªµÄÎÊÌâ¸ü¶à¼ûÓÚNANDÉÁ´æ£¬NANDµÄ¹©Ó¦É̽¨ÒéʹÓÃNANDÉÁ´æµÄʱºò£¬Í¬Ê±Ê¹ÓÃEDC/ECCËã·¨¡£
Õâ¸öÎÊÌâ¶ÔÓÚÓÃNAND´æ´¢¶àýÌåÐÅϢʱµ¹²»ÊÇÖÂÃüµÄ¡£µ±È»£¬Èç¹ûÓñ¾µØ´æ´¢É豸À´´æ´¢²Ù×÷ϵͳ¡¢ÅäÖÃÎļþ»òÆäËûÃô¸ÐÐÅϢʱ£¬±ØÐëʹÓÃEDC/ECCϵͳÒÔÈ·±£¿É¿¿ÐÔ¡£
NOR Flash»µ¿é´¦Àí
NANDÆ÷¼þÖеϵ¿éÊÇËæ»ú·Ö²¼µÄ¡£ÒÔÇ°Ò²ÔøÓйýÏû³ý»µ¿éµÄŬÁ¦£¬µ«·¢Ïֳɯ·ÂÊÌ«µÍ£¬´ú¼ÛÌ«¸ß£¬¸ù±¾²»»®Ëã¡£
NANDÆ÷¼þÐèÒª¶Ô½éÖʽøÐгõʼ»¯É¨ÃèÒÔ·¢ÏÖ»µ¿é£¬²¢½«»µ¿é±ê¼ÇΪ²»¿ÉÓá£ÔÚÒÑÖÆ³ÉµÄÆ÷¼þÖУ¬Èç¹ûͨ¹ý¿É¿¿µÄ·½·¨²»ÄܽøÐÐÕâÏî´¦Àí£¬½«µ¼Ö¸߹ÊÕÏÂÊ¡£
NOR FlashÒ×ÓÚʹÓÃ
¿ÉÒԷdz£Ö±½ÓµØÊ¹ÓûùÓÚNORµÄÉÁ´æ£¬¿ÉÒÔÏñÆäËû´æ´¢Æ÷ÄÇÑùÁ¬½Ó£¬²¢¿ÉÒÔÔÚÉÏÃæÖ±½ÓÔËÐдúÂë¡£
ÓÉÓÚÐèÒªI/O½Ó¿Ú£¬NANDÒª¸´Ôӵöࡣ¸÷ÖÖNANDÆ÷¼þµÄ´æÈ¡·½·¨Òò³§¼Ò¶øÒì¡£
ÔÚʹÓÃNANDÆ÷¼þʱ£¬±ØÐëÏÈдÈëÇý¶¯³ÌÐò£¬²ÅÄܼÌÐøÖ´ÐÐÆäËû²Ù×÷¡£ÏòNANDÆ÷¼þдÈëÐÅÏ¢ÐèÒªÏ൱µÄ¼¼ÇÉ£¬ÒòΪÉè¼ÆÊ¦¾ø²»ÄÜÏò»µ¿éдÈ룬Õâ¾ÍÒâζ×ÅÔÚNANDÆ÷¼þÉÏ×ÔʼÖÁÖÕ¶¼±ØÐë½øÐÐÐéÄâÓ³Éä¡£
NOR FlashÈí¼þÖ§³Ö
µ±ÌÖÂÛÈí¼þÖ§³ÖµÄʱºò£¬Ó¦¸ÃÇø±ð»ù±¾µÄ¶Á/д/²Á²Ù×÷ºÍ¸ßÒ»¼¶µÄÓÃÓÚ´ÅÅÌ·ÂÕæºÍÉÁ´æ¹ÜÀíËã·¨µÄÈí¼þ£¬°üÀ¨ÐÔÄÜÓÅ»¯¡£
ÔÚNORÆ÷¼þÉÏÔËÐдúÂë²»ÐèÒªÈκεÄÈí¼þÖ§³Ö£¬ÔÚNANDÆ÷¼þÉϽøÐÐͬÑù²Ù×÷ʱ£¬Í¨³£ÐèÒªÇý¶¯³ÌÐò£¬Ò²¾ÍÊÇÄÚ´æ¼¼ÊõÇý¶¯³ÌÐò(MTD)£¬NANDºÍNORÆ÷¼þÔÚ½øÐÐдÈëºÍ²Á³ý²Ù×÷ʱ¶¼ÐèÒªMTD(Memory Technology Devices)¡£
ʹÓÃNORÆ÷¼þʱËùÐèÒªµÄMTDÒªÏà¶ÔÉÙһЩ£¬Ðí¶à³§É̶¼ÌṩÓÃÓÚNORÆ÷¼þµÄ¸ü¸ß¼¶Èí¼þ£¬ÕâÆäÖаüÀ¨M-SystemµÄTrueFFSÇý¶¯£¬¸ÃÇý¶¯±»Wind River System¡¢Microsoft¡¢QNX Software System¡¢SymbianºÍIntelµÈ³§ÉÌËù²ÉÓá£
Çý¶¯»¹ÓÃÓÚ¶ÔDiskOnChip²úÆ·½øÐзÂÕæºÍNANDÉÁ´æµÄ¹ÜÀí£¬°üÀ¨¾À´í¡¢»µ¿é´¦ÀíºÍËðºÄƽºâ¡£