Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Flash memory
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Applications== ==={{Anchor|SERIAL}}Serial flash=== [[File:IPhone 3G teardown - Silicon Storage Tech SST25VF080B-3309.jpg|thumb|Serial Flash: Silicon Storage Tech SST25VF080B]] Serial flash is a small, low-power flash memory that provides only serial access to the data - rather than addressing individual bytes, the user reads or writes large contiguous groups of bytes in the address space serially. [[Serial Peripheral Interface Bus]] (SPI) is a typical protocol for accessing the device. When incorporated into an [[embedded system]], serial flash requires fewer wires on the [[printed circuit board|PCB]] than parallel flash memories, since it transmits and receives data one bit at a time. This may permit a reduction in board space, power consumption, and total system cost. There are several reasons why a serial device, with fewer external pins than a parallel device, can significantly reduce overall cost: * Many [[application-specific integrated circuit|ASICs]] are pad-limited, meaning that the size of the [[die (integrated circuit)|die]] is constrained by the number of [[wire bond]] pads, rather than the complexity and number of gates used for the device logic. Eliminating bond pads thus permits a more compact integrated circuit, on a smaller die; this increases the number of dies that may be fabricated on a [[wafer (electronics)|wafer]], and thus reduces the cost per die. * Reducing the number of external pins also reduces assembly and [[IC package|packaging]] costs. A serial device may be packaged in a smaller and simpler package than a parallel device. * Smaller and lower pin-count packages occupy less PCB area. * Lower pin-count devices simplify PCB [[routing (EDA)|routing]]. There are two major SPI flash types. The first type is characterized by small blocks and one internal SRAM block buffer allowing a complete block to be read to the buffer, partially modified, and then written back (for example, the Atmel [[AT45]] ''DataFlash'' or the [[Micron Technology]] Page Erase NOR Flash). The second type has larger sectors where the smallest sectors typically found in this type of SPI flash are 4 KB, but they can be as large as 64 KB. Since this type of SPI flash lacks an internal SRAM buffer, the complete block must be read out and modified before being written back, making it slow to manage. However, the second type is cheaper than the first and is therefore a good choice when the application is code shadowing. The two types are not easily exchangeable, since they do not have the same pinout, and the command sets are incompatible. Most [[FPGA]]s are based on SRAM configuration cells and require an external configuration device, often a serial flash chip, to reload the configuration [[bitstream]] every power cycle.<ref name="maxfield"> Clive Maxfield. [https://books.google.com/books?id=u0xyEuXF3l4C "Bebop to the Boolean Boogie: An Unconventional Guide to Electronics"]. p. 232. </ref> ====Firmware storage==== With the increasing speed of modern CPUs, parallel flash devices are often much slower than the memory bus of the computer they are connected to. Conversely, modern [[Static RAM|SRAM]] offers access times below 10 [[nanosecond|ns]], while [[DDR2 SDRAM]] offers access times below 20 ns. Because of this, it is often desirable to [[shadow RAM|shadow]] code stored in flash into RAM; that is, the code is copied from flash into RAM before execution, so that the CPU may access it at full speed. Device [[firmware]] may be stored in a serial flash chip, and then copied into SDRAM or SRAM when the device is powered-up.<ref>Many serial flash devices implement a ''bulk read'' mode and incorporate an internal address counter, so that it is trivial to configure them to transfer their entire contents to RAM on power-up. When clocked at 50 MHz, for example, a serial flash could transfer a 64 [[Mbit]] firmware image in less than two seconds.</ref> Using an external serial flash device rather than on-chip flash removes the need for significant process compromise (a manufacturing process that is good for high-speed logic is generally not good for flash and vice versa). Once it is decided to read the firmware in as one big block it is common to add compression to allow a smaller flash chip to be used. Since 2005, many devices use serial NOR flash to deprecate parallel NOR flash for firmware storage. Typical applications for serial NOR flash include storing firmware for [[hard drive]]s, [[BIOS]], [[Option ROM]] of [[expansion card]]s, [[DSL modem]]s, etc. ===Flash memory as a replacement for hard drives=== {{Main|Solid-state drive}} [[File:Intel 525 mSATA SSD.jpg|thumb|An Intel mSATA SSD in 2020]] One more recent application for flash memory is as a replacement for [[hard disk]]s. Flash memory does not have the mechanical limitations and latencies of hard drives, so a [[solid-state drive]] (SSD) is attractive in terms of speed, noise, power consumption, and reliability. Flash drives are gaining traction as mobile device secondary storage devices; they are also used as substitutes for hard drives in high-performance desktop computers and some servers with [[RAID]] and [[Storage area network|SAN]] architectures. There remain some aspects of flash-based SSDs that make them unattractive. The cost per gigabyte of flash memory remains significantly higher than that of hard disks.<ref name="elitepcbuilding-20110317">{{Cite web |date=17 March 2011 |title=SSD vs. HDD |url=http://elitepcbuilding.com/ssd-vs-hdd |url-status=dead |archive-url=https://web.archive.org/web/20110820095531/http://elitepcbuilding.com/ssd-vs-hdd |archive-date=20 August 2011 |access-date=11 July 2011 |website=elitepcbuilding.com |author=((Lyth0s)) }}</ref> Also, flash memory has a finite number of P/E (''program/erase'') cycles, but this seems to be currently under control since warranties on flash-based SSDs are approaching those of current hard drives.<ref>{{cite web |url=http://www.storagesearch.com/bitmicro-art1.html |title=Flash Solid State Disks – Inferior Technology or Closet Superstar? |publisher=STORAGEsearch |access-date=30 November 2008 |url-status=live |archive-url=https://web.archive.org/web/20081224215032/http://www.storagesearch.com/bitmicro-art1.html |archive-date=24 December 2008}}</ref> In addition, deleted files on SSDs can remain for an indefinite period of time before being overwritten by fresh data; erasure or shred techniques or software that work well on magnetic hard disk drives have no effect on SSDs, compromising security and forensic examination. However, due to the so-called ''[[Trim (computing)#SD/MMC|TRIM]]'' command employed by most solid state drives, which marks the logical block addresses occupied by the deleted file as unused to enable [[garbage collection (computing)|garbage collection]], data recovery software is not able to restore files deleted from such. For relational databases or other systems that require [[ACID]] transactions, even a modest amount of flash storage can offer vast speedups over arrays of disk drives.<ref name="ssd-strat-mysql">{{Cite web |last=Matsunobu |first=Yoshinori |date=15 April 2010 |title=SSD Deployment Strategies for MySQL |url=http://www.slideshare.net/matsunobu/ssd-deployment-strategies-for-mysql |url-status=dead |archive-url=https://web.archive.org/web/20160303224013/http://www.slideshare.net/matsunobu/ssd-deployment-strategies-for-mysql |archive-date=3 March 2016 }}</ref> In May 2006, [[Samsung Electronics]] announced two flash-memory based PCs, the Q1-SSD and Q30-SSD were expected to become available in June 2006, both of which used 32 GB SSDs, and were at least initially available only in [[South Korea]].<ref>{{cite web |url=http://www.samsung.com/he/presscenter/pressrelease/pressrelease_20060524_0000257996.asp |title=Samsung Electronics Launches the World's First PCs with NAND Flash-based Solid State Disk |work=Press Release |publisher=Samsung |date=24 May 2006 |access-date=30 November 2008 |url-status=live |archive-url=https://web.archive.org/web/20081220094813/http://www.samsung.com/he/presscenter/pressrelease/pressrelease_20060524_0000257996.asp |archive-date=20 December 2008}}</ref> The Q1-SSD and Q30-SSD launch was delayed and finally was shipped in late August 2006.<ref>{{cite web| url=https://news.softpedia.com/news/Samsung-s-SSD-Notebook-33475.shtml| title=Samsung's SSD Notebook| date=22 August 2006| access-date=15 October 2018| archive-date=15 October 2018| archive-url=https://web.archive.org/web/20181015192607/https://news.softpedia.com/news/Samsung-s-SSD-Notebook-33475.shtml| url-status=dead}}</ref> The first flash-memory based PC to become available was the Sony Vaio UX90, announced for pre-order on 27 June 2006 and began to be shipped in Japan on 3 July 2006 with a 16 GB flash memory hard drive.<ref name="sony-20060627">{{Cite press release |date=27 June 2006 |title=文庫本サイズの「VAIO type U」 フラッシュメモリー搭載モデル発売 |trans-title=Release of the "VAIO type U" paperback-sized model with flash memory |url=https://www.sony.jp/CorporateCruise/Press/200606/06-0627/ |url-status=live |archive-url=https://web.archive.org/web/20230510003927/https://www.sony.jp/CorporateCruise/Press/200606/06-0627/ |archive-date=10 May 2023 |publisher=[[Sony]] |language=ja }}</ref> In late September 2006 Sony upgraded the flash-memory in the Vaio UX90 to 32 GB.<ref>{{cite web | url=http://nbnews.info/en/news/397 | title=Sony Vaio UX UMPC – now with 32 GB Flash memory | NBnews.info. Laptop and notebook news, reviews, test, specs, price | Каталог ноутбуков, ультрабуков и планшетов, новости, обзоры | access-date=7 November 2018 | archive-date=28 June 2022 | archive-url=https://web.archive.org/web/20220628004451/https://nbnews.info/en/news/397 | url-status=dead }}</ref> A solid-state drive was offered as an option with the first [[MacBook Air]] introduced in 2008, and from 2010 onwards, all models were shipped with an SSD. Starting in late 2011, as part of [[Intel]]'s [[Ultrabook]] initiative, an increasing number of ultra-thin laptops are being shipped with SSDs standard. There are also hybrid techniques such as [[hybrid drive]] and [[ReadyBoost]] that attempt to combine the advantages of both technologies, using flash as a high-speed non-volatile [[cache (computing)|cache]] for files on the disk that are often referenced, but rarely modified, such as application and operating system [[executable]] files. On [[smartphone]]s, the NAND flash products are used as file storage device, for example, [[eMMC]] and [[eUFS]]. ===Flash memory as RAM=== {{As of|2012|post=,}} there are attempts to use flash memory as the main computer memory, [[Dynamic random-access memory|DRAM]].<ref name="toms-20120725">{{Cite news |last=Perry |first=Douglas |date=July 25, 2012 |title=Princeton: Replacing RAM with Flash Can Save Massive Power |work=[[Tom's Hardware]] |url=https://www.tomshardware.com/news/fusio-io-flash-ssdalloc-memory-ram,16352.html |url-status=live |archive-url=https://web.archive.org/web/20231106092024/https://www.tomshardware.com/news/fusio-io-flash-ssdalloc-memory-ram,16352.html |archive-date=6 November 2023 }}</ref> ===Archival or long-term storage=== Floating-gate transistors in the flash storage device hold charge which represents data. This charge gradually leaks over time, leading to an accumulation of [[Data integrity#Logical integrity|logical errors]], also known as "[[Data rot|bit rot]]" or "bit fading".<ref name=ni12 /> ==== Data retention ==== It is unclear how long data on flash memory will persist under archival conditions (i.e., benign temperature and humidity with infrequent access with or without prophylactic rewrite). Datasheets of Atmel's flash-based "[[ATmega]]" microcontrollers typically promise retention times of 20 years at 85 °C (185 °F) and 100 years at 25 °C (77 °F).<ref>{{cite web |title=8-Bit AVR Microcontroller ATmega32A Datasheet Complete |date=2016-02-19 |access-date=2016-05-29 |page=18 |url=https://www.atmel.com/images/atmel-8155-8-bit-microcontroller-avr-atmega32a_datasheet.pdf |quote=Reliability Qualification results show that the projected data retention failure rate is much less than 1 PPM over 20 years at 85 °C or 100 years at 25 °C |url-status=dead |archive-url=https://web.archive.org/web/20160409120244/http://www.atmel.com/Images/Atmel-8155-8-bit-Microcontroller-AVR-ATmega32A_Datasheet.pdf |archive-date=9 April 2016}}</ref> The retention span varies among types and models of flash storage. When supplied with power and idle, the charge of the transistors holding the data is routinely refreshed by the [[firmware]] of the flash storage.<ref name="ni12">{{Cite web |date=23 July 2020 |title=Understanding Life Expectancy of Flash Storage |url=https://www.ni.com/en-us/support/documentation/supplemental/12/understanding-life-expectancy-of-flash-storage.html |url-status=live |archive-url=https://web.archive.org/web/20231201202529/https://www.ni.com/en/support/documentation/supplemental/12/understanding-life-expectancy-of-flash-storage.html |archive-date=1 December 2023 |access-date=19 December 2020 |website=www.ni.com }}</ref> The ability to retain data varies among flash storage devices due to differences in firmware, [[data redundancy]], and [[error correction]] algorithms.<ref name="bunnie-microsdcards">{{Cite web |date=29 December 2013 |title=On Hacking MicroSD Cards |url=https://www.bunniestudios.com/blog/?p=3554 |url-status=live |archive-url=https://web.archive.org/web/20231102105433/https://www.bunniestudios.com/blog/?p=3554 |archive-date=2 November 2023 |website=bunnie's blog }}</ref> An article from [[Carnegie Mellon University|CMU]] in 2015 states "Today's flash devices, which do not require flash refresh, have a typical retention age of 1 year at room temperature." And that retention time decreases exponentially with increasing temperature. The phenomenon can be modeled by the [[Arrhenius equation]].<ref>{{cite web |title = Data Retention in MLC NAND Flash Memory: Characterization, Optimization, and Recovery |date = 2015-01-27 |access-date = 2016-04-27 |page = 10 |url = https://users.ece.cmu.edu/~omutlu/pub/flash-memory-data-retention_hpca15.pdf |url-status = live |archive-url = https://web.archive.org/web/20161007000927/https://users.ece.cmu.edu/~omutlu/pub/flash-memory-data-retention_hpca15.pdf |archive-date = 7 October 2016}}</ref><ref>{{cite web |title = JEDEC SSD Specifications Explained |url = https://www.jedec.org/sites/default/files/Alvin_Cox%20%5BCompatibility%20Mode%5D_0.pdf |at = p. 27 }}</ref> === FPGA configuration === Some [[FPGA]]s are based on flash configuration cells that are used directly as (programmable) switches to connect internal elements together, using the same kind of floating-gate transistor as the flash data storage cells in data storage devices.<ref name="maxfield" />
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)