Home Up
Home Teaching Glossary ARM Processors Supplements Prof issues About

The Disk: Some Sample  Problems

Problem 1

  1. The order in which multiple tracks are accessed on a hard disk has a significant effect on performance. This statement is not true of the SSD (solid-state drive). Why?

When a track on a hard disk is selected, the head must physically move to that track. The further apart the tracks are, the longer the access time. The SSD has no moving parts and uses random access semiconductor memory. Therefore, track order is unimportant.

  1. If you are wealthy you can improve the access time of your disk system by using more disks and using only a fraction of each disk to store data. That is, partially empty disks have a better performance than nearly full disks. Why?

There are two reasons. First, as a disk fills up, the clusters occupied by files become scattered and the file is defragmented or spread across many tracks. An undue amount of head movement is required to access a fragmented  file. This problem can be reduced by defragmenting files (regrouping the clusters to occupy fewer tracks). A second reason that nearly empty disks are efficient is due to the surface linear bit density. The outer tracks of a disk are longer than the inner tracks. Consequently, the number of bits that can be stored along a track is greater at the periphery. If a disk rotates at a constant angular velocity, the bits written to or read from an outer track are transmitted at a greater rate than those on inner tracks. So, if data is stored only on outer tracks, data rates are improved.  Note that this approach also increases the chance of failure because it requires more disk drives. It also uses more energy.

  1. Why is flash memory so fragile; that is, why does it have a relatively short life span in comparison with other electronic components?

The bit cells of flash memory that store 1s and 0s are very small indeed. In order to store data in the cell, a charge has to be moved through a conductor.  To erase a cell, the charge must be removed which also involves crossing the insulator. There are various means of moving a charge across the insulator. However, the movement of the charge can physically damage the insulator. Eventually it breaks down and fails.

  1. What is NOR and NAND flash and what are the fundamental differences?

Flash memory stored data as a charge on a floating gate embedded within an insulator in a field effect transistor. These transistors can be arranged in NOR gate arrays or NAND gate arrays. A NOR gate array arranges the individual transistors in parallel and a NAND array arranges transistors in series. The NOR array has a better endurance (a factor of 10) and its write cycle is about 100 ns. Its read cycle is very slow at 10 ms. NOR flash is used in specialized applications such as program store in mobile electronics.

The NAND cell is smaller than the NOR cell and has approximately equal read and write cycles of 1 ms. The read access time of a NAND cell is to slow to allow the memory to be used directly. NAND memory is used for bulk data storage in solid state drives, USB pen-drives, and flash cards in cameras.

  1. What is wear-leveling?

Because of the storage mechanism in a flash memory cell, repeated writes and erases gradually break down the insulation of a cell’s embedded gate. When this happens the cell can behave erratically or become stuck-at-0 or stuck-at-1. If some memory cells are written to or erased more frequently than others, they will limit the life of the entire memory. Wear-leveling is a means of extending the life of a flash memory device by spreading the read/erase cycles across the entire memory. Data blocks are remapped to ensure that the same cells are not continually written to or erased. Of course, this technique requires a mechanism to map logical blocks onto physical blocks and increases the complexity of flash memory systems.

  1. Consider a system with 256 GB of flash memory in a solid-state disk, SSD. Assume that the wear-leveling mechanism is perfect and data blocks are optimally mapped to ensure even wearing.  The life or endurance of an SSD is quoted as a guaranteed minimum number of write cycles. If the SSD has a life of 20,000 write cycles and data can be written to the disk at up to 256 MB/s what would the life of the disk be if it were continually written to.

If you executed one write cycle to each cell , it would take capacity x write time = 256 GB/(256 x 106) s to access all cells. Since we can perform 20,000 write cycles/cell, the total endurance is 20,000 x 256 GB/(256 x 106) s = 2 x 107 s. This corresponds to about 230 days.

  1. In the previous question we calculated that the endurance of a SSD was 230 days. What’s this in real money? We are asking whether the previous answer was realistic.

Remember the memory hierarchy: registers, cache, DRAM, disk. The disk comes well down the memory hierarchy; that is,  few accesses come from disk. If the hit rate of the cache is 95%, its miss rate is 5%; that is, only 5% of accesses are to main store and disk combined. Since most of the remaining accesses are to main store, the actual load on disks is low. Even if all misses went to disk, the actual life of the SSD would be  25 times greater than the value we calculated; that is, 25 x 230 days = 15.75 years. In practice, the actual value would be reduced because our assumption about perfect wear-leveling was unrealistic, but it would be increased because our assumption about disk accesses was pessimistic (moreover, not all accesses to disk are writes).

  1. ff

Problem 2