INF 551 – Fall 2015 Homework #1 (100 points) Solution Due: 11:59pm on 9/11/2015 to Blackboard 1. [SSD, 40 points] A SSD contains a number of flash memory chips. Each chip may contain a number of dies; each die may have a number of planes; each plane has a number of blocks; and finally each block contains a number of pages. See the diagram below. Typically, the size of a page is 4KB and the entire page of data is read or written together (especially in a SSD using the NAND gates). That is, page is the smallest unit of data transfer between drive and main memory. Further recall that SSD does not directly support update. Rather, the page to be updated is marked as stale and a page with the new content is created using a free page. Over the time, no free pages are available and the controller on the SSD will need to find a block with stale content, copy the entire block into cache or RAM on the drive, and reorganize the block there (remove stale pages, reorder the pages, and add new pages). The entire block is then erased, and the new content is written back to the block. Suppose it takes 25 microseconds to read a page, and 250 microseconds to write a page (note that writing is more expensive due to the time needed to charge the memory cell). Erasing is conducted on the block basis, and it takes 2 milliseconds to erase a block.
Suppose the SSD has 16 chips, each chip has two dies, each die has 2 planes, each plane has 1024 blocks, and each block has 128 pages. a. What is the capacity of the SSD? (8 points) 16 * 2 * 2 * 1024 * 128 * 4KB = 2 (4+1+1+10+7+12) Bytes = 2 35 Bytes = 32 GB Rubric: - 2 points if calculation expression is correct but result is wrong. For data storage in computers, by default, 1GB=1024MB, 1MB=1024KB. Results calculated based on 1GB=1000MB and 1MB=1000KB without clearly stating the assumption “1GB=1000MB and 1MB=1000KB” at the beginning will be deducted 1 point. b. How long does it take to perform 32 reads, of size 4KB each, to random locations on the drive? You may assume that each 4KB occupies a page. (8 points) 25 microseconds * 32 = 800 microseconds = .8 ms Note that SSD has much lower latency compared to hard drive. Often 100 times lower. Also its latency does not depend on the location of data and whether data are contiguous on the drive, since no head movement and platter rotation are needed. In this question, we assume that latency has already been factored into the access time, e.g., in the 25 microseconds for reading a page. c. What if all the 32 pages to be read are located on the same block? (7 points) Based on the reasoning in part (b), about the same time is needed here. So .8ms too.
You've reached the end of your free preview.
Want to read all 7 pages?
- Fall '14
- Hard disk drive, Solid-state drive, Seek time, Rotational delay, Rotating disc computer storage media