18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是Flash閃存以及STM32使用NAND Flash

jim ? 來源:雷龍發(fā)展 ? 作者:雷龍發(fā)展 ? 2025-07-03 14:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

NAND

文章目錄

NAND

一、FLASH閃存是什么?

二、SD NAND Flash

三、STM32例程

一、FLASH閃存是什么?

簡介

FLASH閃存是屬于內(nèi)存器件的一種,“Flash”。閃存則是一種非易失性( Non-Volatile )內(nèi)存,在沒有電流供應(yīng)的條件下也能夠長久地保持數(shù)據(jù),其存儲特性相當(dāng)于硬盤,這項特性正是閃存得以成為各類便攜型數(shù)字設(shè)備的存儲介質(zhì)的基礎(chǔ)。


各類 DDR 、 SDRAM 或者 RDRAM 都屬于揮發(fā)性內(nèi)存,只要停止電流供應(yīng)內(nèi)存中的數(shù)據(jù)便無法保持,因此每次電腦開機都需要把數(shù)據(jù)重新載入內(nèi)存。


閃存則是一種非易失性( Non-Volatile )內(nèi)存,在沒有電流供應(yīng)的條件下也能夠長久地保持數(shù)據(jù),其存儲特性相當(dāng)于硬盤,這項特性正是閃存得以成為各類便攜型數(shù)字設(shè)備的存儲介質(zhì)的基礎(chǔ)。


分類

NOR和NAND是市場上兩種主要的非易失閃存技術(shù)。


在1984年,東芝公司的發(fā)明人舛岡富士雄首先提出了快速閃存存儲器(此處簡稱閃存)的概念。與傳統(tǒng)電腦內(nèi)存不同,閃存的特點是NVM,其記錄速度也非???。


Intel是世界上第一個生產(chǎn)閃存并將其投放市場的公司。1988年,公司推出了一款256K bit閃存芯片。它如同鞋盒一樣大小,并被內(nèi)嵌于一個錄音機里。後來,Intel發(fā)明的這類閃存被統(tǒng)稱為NOR閃存。它結(jié)合EPROM和EEPROM兩項技術(shù),并擁有一個SRAM接口。


第二種閃存稱為NAND閃存。它由日立公司于1989年研制,并被認為是NOR閃存的理想替代者。NAND閃存的寫周期比NOR閃存短90%,它的保存與刪除處理的速度也相對較快。NAND的存儲單元只有NOR的一半,在更小的存儲空間中NAND獲得了更好的性能。鑒于NAND出色的表現(xiàn),它常常被應(yīng)用于諸如CompactFlash、SmartMedia、 SD、 MMC、 xD、 and PC cards、USB sticks等存儲卡上。


NAND 閃存的存儲單元采用串行結(jié)構(gòu),存儲單元的讀寫是以頁和塊為單位來進行(一頁包含若干字節(jié),若干頁則組成儲存塊, NAND 的存儲塊大小為 8 到 32KB ),這種結(jié)構(gòu)最大的優(yōu)點在于容量可以做得很大,超過 512MB 容量的 NAND 產(chǎn)品相當(dāng)普遍, NAND 閃存的成本較低,有利于大規(guī)模普及。


特點

性能


flash閃存是非易失存儲器,可以對稱為塊的存儲器單元塊進行擦寫和再編程。任何flash器件的寫入操作只能在空或已擦除的單元內(nèi)進行,所以大多數(shù)情況下,在進行寫入操作之前必須先執(zhí)行擦除。NAND器件執(zhí)行擦除操作是十分簡單的,而NOR則要求在進行擦除前先要將目標塊內(nèi)所有的位都寫為1。


由于擦除NOR器件時是以64~128KB的塊進行的,執(zhí)行一個寫入/擦除操作的時間為5s,與此相反,擦除NAND器件是以8~32KB的塊進行的,執(zhí)行相同的操作最多只需要4ms。


執(zhí)行擦除時塊尺寸的不同進一步拉大了NOR和NADN之間的性能差距,統(tǒng)計表明,對于給定的一套寫入操作(尤其是更新小文件時),更多的擦除操作必須在基于NOR的單元中進行。這樣,當(dāng)選擇存儲解決方案時,設(shè)計師必須權(quán)衡以下的各項因素。


● NOR的讀速度比NAND稍快一些。


● NAND的寫入速度比NOR快很多。


● NAND的4ms擦除速度遠比NOR的5s快。


● 大多數(shù)寫入操作需要先進行擦除操作。


● NAND的擦除單元更小,相應(yīng)的擦除電路更少。


可靠性


采用flash介質(zhì)時一個需要重點考慮的問題是可靠性。對于需要擴展MTBF的系統(tǒng)來說,Flash是非常合適的存儲方案??梢詮膲勖?耐用性)、位交換和壞塊處理三個方面來比較NOR和NAND的可靠性。


耐用性


在NAND閃存中每個塊的最大擦寫次數(shù)是一百萬次,而NOR的擦寫次數(shù)是十萬次。NAND存儲器除了具有10比1的塊擦除周期優(yōu)勢,典型的NAND塊尺寸要比NOR器件小8倍,每個NAND存儲器塊在給定的時間內(nèi)的刪除次數(shù)要少一些。


易于使用


可以非常直接地使用基于NOR的閃存,可以像其他存儲器那樣連接,并可以在上面直接運行代碼。


由于需要I/O接口,NAND要復(fù)雜得多。各種NAND器件的存取方法因廠家而異。


在使用NAND器件時,必須先寫入驅(qū)動程序,才能繼續(xù)執(zhí)行其他操作。向NAND器件寫入信息需要相當(dāng)?shù)募记?因為設(shè)計師絕不能向壞塊寫入,這就意味著在NAND器件上自始至終都必須進行虛擬映射。


其他作用


驅(qū)動還用于對DiskOnChip產(chǎn)品進行仿真和NAND閃存的管理,包括糾錯、壞塊處理和損耗平衡。


虛擬化

FLASH閃存是一種內(nèi)存技術(shù),與RAM不同,在斷電時它仍舊可以保留所存儲的信息。盡管FLASH閃存在執(zhí)行讀寫操作時并不像RAM那樣快,但性能遠遠高于典型的硬盤。更為重要的是,F(xiàn)LASH閃存訪問數(shù)據(jù)時幾乎不存在任何時間延遲。FLASH閃存技術(shù)非常適合隨機I/O,而虛擬服務(wù)器環(huán)境中恰恰存在大量的隨機I/O。


對FLASH閃存主要的關(guān)注點之一是其執(zhí)行寫操作的方式。FLASH閃存可以執(zhí)行的寫操作次數(shù)有限,這意味著FLASH閃存廠商需要開發(fā)復(fù)雜的控制器技術(shù),對寫入FLASH閃存模塊的方式進行管理,確保每個FLASH閃存單元接收相同的寫請求。


目前有三種類型的FLASH閃存,耐久性各不相同。單階存儲單元(SLC)FLASH閃存在每個單元寫一位數(shù)據(jù),耐久性最好。多階存儲單元(MLC)FLASH閃存在每個單元寫多位數(shù)據(jù),耐久性排名第二。三階存儲單元(TLC)在每個單元寫三位數(shù)據(jù),耐久性最差。每個單元寫入的數(shù)據(jù)位越多意味著每個單元的容量越高,每GB的成本越低,同樣意味著平均壽命更短。


SLC是數(shù)據(jù)中心標準,但控制器技術(shù)的不斷優(yōu)化使得MLC被大多數(shù)用例所接受。尤其是在采用了某種方式的數(shù)據(jù)保護,比如鏡像或者RAID或者使用了FLASH閃存層時。


二、SD NAND Flash

我以貼片式TF卡“CSNP32GCR01-AOW”型號為例介紹

wKgZPGhmI6KAVoUPAACsZyGq-_Q785.png


芯片樣子都一樣,這里隨便放一張


概述

CSNP32GCR01-AOW是基于NAND閃存和SD控制器的32Gb密度嵌入式存儲。該產(chǎn)品與原始NAND相比,它有許多優(yōu)點,包括嵌入式壞塊管理和更強的嵌入式ECC。即使在異常斷電的情況下,它仍然可以安全地保存數(shù)據(jù)。


特點

接口:標準SD規(guī)范2.0版,帶有1-I/O和4-I/O。


電源:Vcc=2.7V-3.6V


默認模式:可變時鐘頻率0-25 MHz,最高12.5 MB/秒接口速度(使用4條并行數(shù)據(jù)線)


高速模式:可變時鐘頻率0-50 MHz,最高25 MB/秒接口速度(使用4條并行數(shù)據(jù)線)


工作溫度:-25°C至+85°C


儲存溫度:-40°C至+85°C


備用電流:<250uA


開關(guān)功能命令支持高速、電子商務(wù)和未來功能


內(nèi)存字段錯誤的糾正


內(nèi)容保護機制-符合SDMI標準的最高安全性。


SD NAND的密碼保護(CMD42-鎖定和解鎖)


使用機械開關(guān)的寫保護功能


內(nèi)置寫保護功能(永久和臨時)


特定于應(yīng)用程序的命令

3. 引腳分配

wKgZO2hmI6KAGyTJAABukkuYxJE179.pngwKgZPGhmI6OASJUeAAJiFzLu7I8327.png


4.數(shù)據(jù)傳輸模式

wKgZO2hmI6SAY_t_AAL1iypAqEc543.png

5. SD NAND寄存器


SDNAND接口中定義了六個寄存器:OCR、CID、CSD、RCA、DSR和SCR。這些信息只能通過


相應(yīng)的命令。OCR、CID、CSD和SCR寄存器攜帶SDNAND/內(nèi)容特定信息,而RCA、DSR寄存器是存儲實際配置參數(shù)的配置寄存器(這里選取倆個寄存器進行展示)。


CID register

wKgZPGhmI6SARM43AAHFad0sbMI351.png

SCR register

wKgZO2hmI6WAfzxpAAJP-9vA2FY445.png


通電圖

wKgZO2hmI6aAELOVAAD5Io3_kmI870.png

通電時間

wKgZPGhmI6eACfTOAAD-JOzJKXY034.pngwKgZO2hmI6eAf9pBAAErqiJ_x1M144.png


Tips: RDAT和RCMD(10K~100 kΩ)是上拉電阻器,當(dāng)SDNAND處于a狀態(tài)時,保護CMD和DAT線路不受總線浮動的影響;在高阻抗模式,即使主機僅在SD模式下使用SDNAND作為1位模式,主機也應(yīng)通過RDAT上拉所有DAT0-3線。它是建議VCC上有2.2uF電容。RCLK參考0~120Ω。


wKgZPGhmI6iAa6vTAAGl2rsLFdc671.png

?

三、STM32例程

1. 初始化




SD_Error SD_Init(void)


{


uint32_t i = 0;




/*!< Initialize SD_SPI */


GPIO_Configuration();




/*!< SD chip select high */


SD_CS_HIGH();




/*!< Send dummy byte 0xFF, 10 times with CS high */


/*!< Rise CS and MOSI for 80 clocks cycles */


for (i = 0; i <= 9; i++)


{


/*!< Send dummy byte 0xFF */


SD_WriteByte(SD_DUMMY_BYTE);


}



//獲取卡的類型,最多嘗試10次


i=0;


do


{


/*------------Put SD in SPI mode--------------*/


/*!< SD initialized and set to SPI mode properly */


SD_GoIdleState();




/*Get card type*/


SD_GetCardType();



}while(SD_Type == SD_TYPE_NOT_SD && i++ >10);



//不支持的卡


if(SD_Type == SD_TYPE_NOT_SD)


return SD_RESPONSE_FAILURE;



return SD_GetCardInfo(&SDCardInfo);



}


2. 單數(shù)據(jù)塊測試




void SD_SingleBlockTest(void)


{


/*------------------- Block Read/Write --------------------------*/


/* Fill the buffer to send */


Fill_Buffer(Buffer_Block_Tx, BLOCK_SIZE, 0x320F);




if (Status == SD_RESPONSE_NO_ERROR)


{


/* Write block of 512 bytes on address 0 */


Status = SD_WriteBlock(Buffer_Block_Tx, 0x00, BLOCK_SIZE);


/* Check if the Transfer is finished */


}




if (Status == SD_RESPONSE_NO_ERROR)


{


/* Read block of 512 bytes from address 0 */


Status = SD_ReadBlock(Buffer_Block_Rx, 0x00, BLOCK_SIZE);




}




/* Check the correctness of written data */


if (Status == SD_RESPONSE_NO_ERROR)


{


TransferStatus1 = Buffercmp(Buffer_Block_Tx, Buffer_Block_Rx, BLOCK_SIZE);


}



if(TransferStatus1 == PASSED)


{


LED2_ON;


printf("Single block 測試成功!n");




}


else


{


LED1_ON;


printf("Single block 測試失敗,請確保SD卡正確接入開發(fā)板,或換一張SD卡測試!n");



}


}


3. 多數(shù)據(jù)塊測試



void SD_MultiBlockTest(void)


{


/*--------------- Multiple Block Read/Write ---------------------*/


/* Fill the buffer to send */


Fill_Buffer(Buffer_MultiBlock_Tx, MULTI_BUFFER_SIZE, 0x0);




if (Status == SD_RESPONSE_NO_ERROR)


{


/* Write multiple block of many bytes on address 0 */


Status = SD_WriteMultiBlocks(Buffer_MultiBlock_Tx, 0x00, BLOCK_SIZE, NUMBER_OF_BLOCKS);


/* Check if the Transfer is finished */


}




if (Status == SD_RESPONSE_NO_ERROR)


{


/* Read block of many bytes from address 0 */


Status = SD_ReadMultiBlocks(Buffer_MultiBlock_Rx, 0x00, BLOCK_SIZE, NUMBER_OF_BLOCKS);


/* Check if the Transfer is finished */


}




/* Check the correctness of written data */


if (Status == SD_RESPONSE_NO_ERROR)


{


TransferStatus2 = Buffercmp(Buffer_MultiBlock_Tx, Buffer_MultiBlock_Rx, MULTI_BUFFER_SIZE);


}



if(TransferStatus2 == PASSED)


{


LED2_ON;


printf("Multi block 測試成功!");




}


else


{


LED1_ON;


printf("Multi block 測試失敗,請確保SD卡正確接入開發(fā)板,或換一張SD卡測試!");


}


}


4. 狀態(tài)緩沖



TestStatus Buffercmp(uint8_t* pBuffer1, uint8_t* pBuffer2, uint32_t BufferLength)


{


while (BufferLength--)


{


if (*pBuffer1 != *pBuffer2)


{


return FAILED;


}




pBuffer1++;


pBuffer2++;


}




return PASSED;


}




void Fill_Buffer(uint8_t *pBuffer, uint32_t BufferLength, uint32_t Offset)


{


uint16_t index = 0;




/* Put in global buffer same values */


for (index = 0; index < BufferLength; index++)


{


pBuffer[index] = index + Offset;


}


}

了解產(chǎn)品更多詳情:官網(wǎng) http://www.longsto.com/

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • NAND
    +關(guān)注

    關(guān)注

    16

    文章

    1733

    瀏覽量

    140107
  • SD
    SD
    +關(guān)注

    關(guān)注

    1

    文章

    171

    瀏覽量

    35243
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    STM32C011開發(fā)(3)----Flash操作

    STM32C011 系列微控制器內(nèi)置 Flash 存儲器,支持程序存儲與數(shù)據(jù)保存,具備頁面擦除、雙字寫入、讀寫保護等功能。本文將簡要介紹 STM32C011 的 Flash 結(jié)構(gòu)與特性
    的頭像 發(fā)表于 09-18 16:48 ?3197次閱讀
    <b class='flag-5'>STM32</b>C011開發(fā)(3)----<b class='flag-5'>Flash</b>操作

    NAND Flash的基本原理和結(jié)構(gòu)

    NAND Flash是什么?NAND Flash閃存)是一種非易失性存儲器技術(shù),主要用于數(shù)據(jù)存儲。與傳統(tǒng)的DRAM或SRAM不同,
    的頭像 發(fā)表于 09-08 09:51 ?4918次閱讀
    <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>的基本原理和結(jié)構(gòu)

    SPI NOR FLASH是什么,與SPI NAND Flash的區(qū)別

    存儲一位數(shù)據(jù) (0或1) ,可以直接尋址,尋址速度非???。SPI NOR FLASH支持全雙工、單工以及半雙工傳輸方式,被廣泛應(yīng)用于嵌入式系統(tǒng)中,如Bootloader、操作系統(tǒng)內(nèi)核等程序的存儲。由于它的讀寫速度和尋址方式類似于系統(tǒng)內(nèi)存,因此它可以映射到系統(tǒng)的0地址空間。
    的頭像 發(fā)表于 08-21 09:26 ?828次閱讀

    FLASH燒寫/編程白皮書

    白皮書:如何燒寫Flash——不同場景不同需求下的選擇認識Flash?NAND vs. NOR如何燒寫/編程不同方案比較
    發(fā)表于 07-28 16:05 ?0次下載

    對于在STM32CubeMx使用FMC中的NAND FLASH里面配置這些時間有什么說明嗎?

    對于在STM32CubeMx使用FMC中的NAND FLASH里面配置這些時間有什么說明嗎?
    發(fā)表于 07-21 07:07

    什么是Flash閃存以及STM32使用NAND Flash

    NAND 文章目錄 NAND 一、FLASH閃存是什么? 二、SD NAND Flash 三、
    發(fā)表于 07-03 14:33

    Flash閃存技術(shù)是什么?創(chuàng)世SD NAND Flash又有何獨特之處?#嵌入式開發(fā) #存儲芯片 #閃存

    閃存
    深圳市雷龍發(fā)展有限公司
    發(fā)布于 :2025年06月05日 17:58:25

    兆易創(chuàng)新推出GD5F1GM9系列高速Q(mào)SPI NAND Flash

    中國北京(2025 年4 月15 日) —— 業(yè)界領(lǐng)先的半導(dǎo)體器件供應(yīng)商 兆易創(chuàng)新 GigaDevice (股票代碼 603986)宣布推出GD5F1GM9系列高速Q(mào)SPI NAND Flash
    發(fā)表于 04-22 10:23 ?1391次閱讀
     兆易創(chuàng)新推出GD5F1GM9系列高速Q(mào)SPI <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>

    兆易創(chuàng)新推出GD5F1GM9系列高速Q(mào)SPI NAND Flash

    今日,兆易創(chuàng)新宣布推出GD5F1GM9系列高速Q(mào)SPI NAND Flash,該系列以其突破性的讀取速度和創(chuàng)新的壞塊管理(BBM)功能,可有效解決傳統(tǒng)SPI NAND Flash響應(yīng)速
    的頭像 發(fā)表于 04-16 13:50 ?911次閱讀

    NAND Flash與SD NAND的存儲扇區(qū)架構(gòu)差異

    NAND Flash?和?SD卡(SD NAND)的存儲扇區(qū)分配表都是用于管理存儲設(shè)備中扇區(qū)的分配信息。它們記錄了哪些扇區(qū)已被使用、哪些是空閑的,以及文件或數(shù)據(jù)與扇區(qū)的對應(yīng)關(guān)系,以便實
    的頭像 發(fā)表于 03-13 15:20 ?1423次閱讀
    <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>與SD <b class='flag-5'>NAND</b>的存儲扇區(qū)架構(gòu)差異

    NAND Flash廠商2025年重啟減產(chǎn)策略

    根據(jù)知名研調(diào)機構(gòu)集邦(TrendForce)最新發(fā)布的研究報告,NAND Flash產(chǎn)業(yè)預(yù)計在2025年將持續(xù)面臨需求疲弱與供給過剩的雙重嚴峻挑戰(zhàn)。這一趨勢迫使NAND Flash的主
    的頭像 發(fā)表于 01-24 14:20 ?950次閱讀

    韓廠首傳減產(chǎn)消息,NAND Flash市場迎供需平衡預(yù)期

    近期,NAND Flash市場再次迎來重要變動。據(jù)媒體報道,繼鎧俠、美光相繼宣布減產(chǎn)后,市場又傳出三星、SK海力士兩大韓廠也將減產(chǎn)消費級NAND Flash的消息。這標志著首次有韓國廠
    的頭像 發(fā)表于 01-07 14:04 ?665次閱讀

    【半導(dǎo)體存儲】關(guān)于NAND Flash的一些小知識

    是數(shù)據(jù)存儲的最小單位,目前閃存已經(jīng)由數(shù)千億個存儲單元組成,通過將電子移入和移出封閉在絕緣體中的電荷存儲膜來存儲數(shù)據(jù)。 []()   NAND Flash存儲器使用浮柵晶體管,它能在沒有電源的情況下
    發(fā)表于 12-17 17:34

    關(guān)于NAND Flash的一些小知識

    前言 作為一名電子專業(yè)的學(xué)生,半導(dǎo)體存儲顯然是繞不過去的一個坎,今天聊一聊關(guān)于Nand Flash的一些小知識。 這里十分感謝深圳雷龍發(fā)展有限公司為博主提供的兩片CS創(chuàng)世SD NAND的存儲芯片
    的頭像 發(fā)表于 12-17 17:33 ?1265次閱讀

    江波龍自研SLC NAND Flash累計出貨突破1億顆!

    江波龍充分發(fā)揮自身芯片設(shè)計能力,持續(xù)積極投入存儲芯片設(shè)計業(yè)務(wù),聚焦 SLC NAND Flash 等存儲芯片設(shè)計。 SLC NAND Flash存儲器產(chǎn)品是應(yīng)用于網(wǎng)絡(luò)通信設(shè)備、安防監(jiān)控
    發(fā)表于 11-14 17:42 ?486次閱讀
    江波龍自研SLC <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>累計出貨突破1億顆!