研究生: |
許富淞 Hsu, Fu-Sung |
---|---|
論文名稱: |
SD記憶卡與NAND型快閃記憶體寫入機制之研究 On the Write Mechanism of SD Memory Card and NAND Flash Memory |
指導教授: |
侯廷偉
Hou, Ting-Wei |
學位類別: |
碩士 Master |
系所名稱: |
工學院 - 工程科學系 Department of Engineering Science |
論文出版年: | 2021 |
畢業學年度: | 109 |
語文別: | 中文 |
論文頁數: | 45 |
中文關鍵詞: | NAND 型快閃記憶體 、RAM disk 、Wear Leveling演算法 |
外文關鍵詞: | NAND flash memory, RAM disk , Wear Leveling algorithm |
相關次數: | 點閱:275 下載:39 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
NAND型快閃記憶體(flash memory)因成本低、尺寸小等優勢,廣泛應用於儲存裝置與嵌入式儲存裝置中,例如記憶卡。NAND 型快閃記憶體中的區塊(block)因製程原因導致有擦除(erase)次數的限制,若超過擦除次數有很大機率形成壞區塊。一般SD卡上均內建有控制器以使得各區塊的擦除次數能夠接近相同,以避免有一區塊過度使用導致毀壞而使整個記憶卡報廢。本研究分兩部分,第一部分整合一套軟體並搭配設定檔案可以將資料暫存於平台之RAM disk,一段時間後會自動搬運資料至SD卡之NAND 型快閃記憶體中,目的為減少寫入NAND 型快閃記憶體次數。第二部分對可以直接控制NAND型快閃記憶體讀寫的平台,也實作出wear leveling演算法,讓資料可以平均儲存於各個區塊中。本論文第一部分設計之軟體實驗於四個平台(PC、NanoPi-M1、Raspberry Pi 3B+、NuMaker-IIoT-NUC980),各平台中使用RAM disk搬運方法之吞吐量、寫入速度、擦除次數皆較直接寫入SD卡中為低,吞吐量與擦除次數大約減少95%次數。表示使用RAM disk搬運方法確實有減少寫入SD卡上的NAND 型快閃記憶體中。第二部分,對於可直接控制快閃記憶體讀寫的NuMaker-IIoT-NUC980嵌入式平台,本論文設計之wear leveling 演算法實驗於此開發板上,演算法選擇將資料存入較小擦除次數的區塊中,試圖將資料平均儲存於各個區塊中。實驗中wear leveling 演算法也搭配第一部分之 RAM disk搬運方法來儲存資料,實驗結果有效降低寫入NAND 型快閃記憶體次數,以此提高設備壽命。
NAND flash memory has the advantages of low cost and small size. NAND flash memory is widely used in storage devices and embedded storage devices. Blocks in NAND flash memory have a limit on the number of erasure times. If the number of erasures is exceeded, there is a high probability of forming a bad block. We implemented a set of software that allows users to directly store data temporarily in RAM disk. Data will be automatically transferred to NAND flash memory after a period of time. The purpose is to reduce the number of writing to NAND flash memory. We have also implemented the wear leveling algorithm. The algorithm stores the data in the block of the smaller erase count, allowing data to be stored evenly in each block. Both methods can increase SD card and NAND flash memory lifetime.
The two methods designed in this thesis have good results in experiments. Throughput, writing speed and erase count are all better than direct writing to NAND flash memory. Throughput and erase count are reduced by approximately 95%. It means that the data has been written less in NAND flash memory. The implementation of the proposed wear leveling algorithm can store data in each block. Combining the above experiments can improve the life of the equipment.
[1] NAND Design-In Notice, [online] Available : http://www.macronix.com.tw/Lists/ApplicationNote/Attachments/2005/AN0545V2%20-%20NAND%20Design-In%20Notice.pdf , Sep. 25, 2017.
[2] Y.-H. Chang, J.-W. Hsieh, and T.-W. Kuo. “Endurance Enhancement of Flash-Memory Storage Systems: An Efficient Static Wear Leveling Design,” the 44th ACM/IEEEDesign Automation Conference (DAC), San Diego, California, USA, June 2007, pp.212–217
[3] Dawoon Jung, Yoon-Hee Chae, Heeseung Jo, Jin-Soo Kim, and Joonwon Lee, “AGroup-based Wear-Leveling Algorithm for Large-Capacity Flash Memory Storage Systems,” Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems(CASES), South Korea, 2007, pp.160-164
[4] 黃千庭” 應用於矽態硬碟上的低成本以 LBA 為主的平均磨損演算法”, 國立交通大學資訊科學與工程研究所碩士論文, 中華民國九十七年七月
[5] 曾士豪 ”嵌入式儲存系統效能評估” ,國立交通大學資訊科學與工程研究所碩士 論文,中華民國九十六年十一月
[6] UBIFS-UBI File-System, [online] Available : http://www.linuxmtd.infradead.org /doc/ubifs.html
[7] Xin Ye , Zhengjun Zhai, ‘‘Cold-Warm-Hot Block Wear-Leveling Algorithm for A NAND Flash Storage System ’’, The 2017 4th International Conference on Systems and Informatics (ICSAI 2017) , Hangzhou, China, 2017, pp.762-767
[8] Silberschatz, Abraham, Greg Gagne, Peter B. Galvin, Operating System Concepts,10th Edition, Hoboken, NJ: Wiley, April 2018.
[9] 3V 1G-Bit Serial SLC NAND Flash Memory with DUAL/QUAD SPI Buffer Read & Continuous Read, [online] Available : https://pdf1.alldatash eet.com/datasheet-pdf /view /932059/WINBOND/W25 N01GVZEIG. html , Publication Release Date: March 21, 2016.
[10] General MTD Documentation, [online] Available : http://www.linux-mtd.infradea d .org/doc/general.html
[11] Sysstat - System Performance Tools for the Linux Operating System, [online] Available : https://github.com/sysstat/sysstat
[12] Blktrace - Generate Traces of the i/o Traffic on Block Devices [online] Available : https:// linux.die.net/man/8/blktrace
[13] J. Katcher. PostMark: A New File System Benchmark. Technical Report TR-3022, Network Appliance Inc., October 1997.
[14] Iozone Filesystem Benchmark [online] Available : https://www.iozone.org/