NAND Flash芯片K9F1208在uPSD3234A上的應用
發(fā)布時間:2008/5/27 0:00:00 訪問次數(shù):761
    
     武漢工程大學 劉芳 趙振華
    
    1 nand flash和nor flash
    
    閃存(flash memory)由于其具有非易失性、電可擦除性、可重復編程以及高密度、低功耗等特點,被廣泛地應用于手機、mp3、數(shù)碼相機、筆記本電腦等數(shù)據(jù)存儲設備中。nand flash和nor flash是目前市場上兩種主要的非易失閃存芯片。與nor flash相比,nand flash在容量、功耗、使用壽命等方面的優(yōu)勢使其成為高數(shù)據(jù)存儲密度的理想解決方案。nor flash的傳輸效率很高,但寫入和擦除速度較低;而nand flash以容量大、寫速度快、芯片面積小、單元密度高、擦除速度快、成本低等特點,在非易失性類存儲設備中顯現(xiàn)出強勁的市場競爭力。
    
    結(jié)構(gòu):nor flash為并行,nand flash為串行。
    
    總線:nor flash為分離的地址線和數(shù)據(jù)線,而nandflash為復用的。
    
    尺寸:典型的nand flash尺寸為nor flash尺寸的1/8。
    
    壞塊:nand器件中的壞塊是隨機分布的,需要對介質(zhì)進行初始化掃描以發(fā)現(xiàn)壞塊,并將壞塊標記為不可用。
    
    位交換:nand flash中發(fā)生的次數(shù)要比nor flash多,建議使用nand閃存時,同時使用edc/ecc算法。
    
    使用方法:nor flash是可在芯片內(nèi)執(zhí)行(xip,execute in place),應用程序可以直接在fiash閃存內(nèi)運行,不必再把代碼讀到系統(tǒng)ram中;而nand flash則需i/o接口,因此使用時需要寫入驅(qū)動程序。
    
    通過以上的分析和比較,nand flash更適合于大容量數(shù)據(jù)存儲的嵌入式系統(tǒng)。本設計選用samsung公司生產(chǎn)的nand flash存儲器芯片k9f1208作為存儲介質(zhì),并應用在基于upsd3234a增強型8051單片機的嵌入式系統(tǒng)中。
    
    
    2 upsd3234a簡介
    
    upsd3234a是由意法半導體公司生產(chǎn)的一款基于8052內(nèi)核的增強型flash單片機,其結(jié)構(gòu)如圖1所示。該單片機包含1個帶8032微控制器的flash psd、2塊flash存儲器、sram、通用i/o口可編程邏輯、管理監(jiān)控功能,并可實現(xiàn)usb、i2c、adc、dac和pwm功能。其中,片內(nèi)8032微控制器,帶有2個標準異步通信口、3個16位定時/計數(shù)器、1個外部中斷以及jtag isp接口(用于在系統(tǒng)編程),一般應用于手持設備、家用電器等領域中。
    
    3 k9f1208介紹
    
    k9f1208是samsung公司生產(chǎn)的512 mb(64m×8位)nand flash存儲器。該存儲器的工作電壓為2.7~3.6 v,內(nèi)部存儲結(jié)構(gòu)為528字節(jié)×32頁×4 096塊,頁大小為528字節(jié),塊大小為(16 kb+512字節(jié));可實現(xiàn)程序自動擦寫、頁程序、塊擦除、智能的讀/寫和擦除操作,一次可以讀/寫或者擦除4頁或者塊的內(nèi)容,內(nèi)部有命令寄存器。如圖2所示,該器件按功能可以劃分為:存儲陣列、輸入/輸出緩沖、命令寄存器、地址譯碼寄存器和控制邏輯產(chǎn)生。其中,命令寄存器用來確定外部設備對存儲器進行操作的類型;地址譯碼寄存器用于保存被訪問的地址并產(chǎn)生相應的譯碼選通信號。主設備通過8位i/o端口分時復用訪問器件命令、地址和數(shù)據(jù)寄存器,完成對芯片內(nèi)存儲器的訪問。
    
    
    4 k9f1208讀/寫和擦除操作的實現(xiàn)
    
    對于k9f1208的操作主要有頁讀取和頁編程操作。圖3是nand flash的標準頁讀取時序圖。具體的頁讀取操作如下:發(fā)命令階段,在片選信號ce有效的情況下,首先命令允許信號cle有效,此時寫入信號we有效,芯片準備好信號r/b置高,表示準備好;同時向i/o口發(fā)送讀操作命令(0x00或0x01),表示是讀操作。發(fā)地址階段,此時片選有效,地址允許信號ale有效,寫入信號we保持有效,連續(xù)發(fā)送4個地址字;k9f1208的地址寄存器接收到地址值后,r/b信號將維持“忙”一段時間,此后r/b變?yōu)闇蕚浜脿顟B(tài)。最后是數(shù)據(jù)輸出階段,每次讀有效信號置低有效時,將會輸出一組數(shù)據(jù)。如此往復直到所有數(shù)據(jù)輸出完畢。
    
    
    圖4是nand flash的標準頁編程時序圖。具體的頁編程操
    
     武漢工程大學 劉芳 趙振華
    
    1 nand flash和nor flash
    
    閃存(flash memory)由于其具有非易失性、電可擦除性、可重復編程以及高密度、低功耗等特點,被廣泛地應用于手機、mp3、數(shù)碼相機、筆記本電腦等數(shù)據(jù)存儲設備中。nand flash和nor flash是目前市場上兩種主要的非易失閃存芯片。與nor flash相比,nand flash在容量、功耗、使用壽命等方面的優(yōu)勢使其成為高數(shù)據(jù)存儲密度的理想解決方案。nor flash的傳輸效率很高,但寫入和擦除速度較低;而nand flash以容量大、寫速度快、芯片面積小、單元密度高、擦除速度快、成本低等特點,在非易失性類存儲設備中顯現(xiàn)出強勁的市場競爭力。
    
    結(jié)構(gòu):nor flash為并行,nand flash為串行。
    
    總線:nor flash為分離的地址線和數(shù)據(jù)線,而nandflash為復用的。
    
    尺寸:典型的nand flash尺寸為nor flash尺寸的1/8。
    
    壞塊:nand器件中的壞塊是隨機分布的,需要對介質(zhì)進行初始化掃描以發(fā)現(xiàn)壞塊,并將壞塊標記為不可用。
    
    位交換:nand flash中發(fā)生的次數(shù)要比nor flash多,建議使用nand閃存時,同時使用edc/ecc算法。
    
    使用方法:nor flash是可在芯片內(nèi)執(zhí)行(xip,execute in place),應用程序可以直接在fiash閃存內(nèi)運行,不必再把代碼讀到系統(tǒng)ram中;而nand flash則需i/o接口,因此使用時需要寫入驅(qū)動程序。
    
    通過以上的分析和比較,nand flash更適合于大容量數(shù)據(jù)存儲的嵌入式系統(tǒng)。本設計選用samsung公司生產(chǎn)的nand flash存儲器芯片k9f1208作為存儲介質(zhì),并應用在基于upsd3234a增強型8051單片機的嵌入式系統(tǒng)中。
    
    
    2 upsd3234a簡介
    
    upsd3234a是由意法半導體公司生產(chǎn)的一款基于8052內(nèi)核的增強型flash單片機,其結(jié)構(gòu)如圖1所示。該單片機包含1個帶8032微控制器的flash psd、2塊flash存儲器、sram、通用i/o口可編程邏輯、管理監(jiān)控功能,并可實現(xiàn)usb、i2c、adc、dac和pwm功能。其中,片內(nèi)8032微控制器,帶有2個標準異步通信口、3個16位定時/計數(shù)器、1個外部中斷以及jtag isp接口(用于在系統(tǒng)編程),一般應用于手持設備、家用電器等領域中。
    
    3 k9f1208介紹
    
    k9f1208是samsung公司生產(chǎn)的512 mb(64m×8位)nand flash存儲器。該存儲器的工作電壓為2.7~3.6 v,內(nèi)部存儲結(jié)構(gòu)為528字節(jié)×32頁×4 096塊,頁大小為528字節(jié),塊大小為(16 kb+512字節(jié));可實現(xiàn)程序自動擦寫、頁程序、塊擦除、智能的讀/寫和擦除操作,一次可以讀/寫或者擦除4頁或者塊的內(nèi)容,內(nèi)部有命令寄存器。如圖2所示,該器件按功能可以劃分為:存儲陣列、輸入/輸出緩沖、命令寄存器、地址譯碼寄存器和控制邏輯產(chǎn)生。其中,命令寄存器用來確定外部設備對存儲器進行操作的類型;地址譯碼寄存器用于保存被訪問的地址并產(chǎn)生相應的譯碼選通信號。主設備通過8位i/o端口分時復用訪問器件命令、地址和數(shù)據(jù)寄存器,完成對芯片內(nèi)存儲器的訪問。
    
    
    4 k9f1208讀/寫和擦除操作的實現(xiàn)
    
    對于k9f1208的操作主要有頁讀取和頁編程操作。圖3是nand flash的標準頁讀取時序圖。具體的頁讀取操作如下:發(fā)命令階段,在片選信號ce有效的情況下,首先命令允許信號cle有效,此時寫入信號we有效,芯片準備好信號r/b置高,表示準備好;同時向i/o口發(fā)送讀操作命令(0x00或0x01),表示是讀操作。發(fā)地址階段,此時片選有效,地址允許信號ale有效,寫入信號we保持有效,連續(xù)發(fā)送4個地址字;k9f1208的地址寄存器接收到地址值后,r/b信號將維持“忙”一段時間,此后r/b變?yōu)闇蕚浜脿顟B(tài)。最后是數(shù)據(jù)輸出階段,每次讀有效信號置低有效時,將會輸出一組數(shù)據(jù)。如此往復直到所有數(shù)據(jù)輸出完畢。
    
    
    圖4是nand flash的標準頁編程時序圖。具體的頁編程操