SSD µð½ºÅ©´Â »ç¿ëµÈ °ø°£ÀÇ ºñÀ², ÃÑ ¾²±â·®(TBW), Æ®¸²(Trim) ó¸® »óÅÂ, SSD Á¾·ù(NAND ŸÀÔ)¿¡ µû¶ó ¼º´É ÀúÇÏ ¾ç»óÀÌ ´Þ¶óÁý´Ï´Ù.
µð½ºÅ© °ø°£ÀÌ 70~90% ÀÌ»ó »ç¿ë
- 70% ÀÌ»ó : ¼º´ÉÀúÇÏ ½ÃÀÛ(¸ðµ¨¿¡ µû¶ó ´Ù¸§)
- 90% ÀÌ»ó : ¾²±â¼Óµµ ±Þ°ÝÈ÷ ÀúÇÏ
- ¿©À¯ ºí·Ï ºÎÁ·À¸·Î ³»ºÎ GC(Garbage Collection)¿Í º´¸ñ¹ß»ý
- SSD´Â ÀϺΠ¿©À¯ °ø°£ÀÌ ÀÖÀ» ¶§ ÃÖ°íÀÇ ¼º´É ¹ßÈÖ
SSD ±¸Á¶
¦§¦¡¦¡ ¿©·¯ °³ÀÇ ºí·Ï(Block)
¦¢ ¦§¦¡¦¡ ÆäÀÌÁö(Page) 1
¦¢ ¦§¦¡¦¡ ÆäÀÌÁö(Page) 2
¦¢ ¦§¦¡¦¡ ...
¦¢ ¦¦¦¡¦¡ ÆäÀÌÁö(Page) N
Page(ÆäÀÌÁö)
- °¡Àå ÀÛÀº ¾²±â ´ÜÀ§
- ÀϹÝÀûÀ¸·Î 4KB ¶Ç´Â 8KB Å©±â
- µ¥ÀÌÅ͸¦ ¾µ ¶§´Â ¹Ýµå½Ã ºó ÆäÀÌÁö¿¡¸¸ ¾µ ¼ö ÀÖÀ½
- »èÁ¦´Â °³º° ÆäÀÌÁö ´ÜÀ§·Î ºÒ°¡´É
Block(ºí·Ï)
- ÆäÀÌÁö ¿©·¯°³°¡ ¸ðÀÎ ´ÜÀ§
- º¸Åë ÇϳªÀÇ ºí·ÏÀº 128~256ÆäÀÌÁö·Î ±¸¼º / ¿¹: 256ÆäÀÌÁö * 4KB = 1MB ºí·Ï
- »èÁ¦´Â ºí·Ï ´ÜÀ§·Î¸¸ °¡´É
- ºí·ÏÀ» Áö¿ì·Á¸é ±× ¾ÈÀÇ ¸ðµç ÆäÀÌÁö¸¦ ¸ÕÀú ºñ¿ö¾ß ÇÕ´Ï´Ù.
¾²±â¿Í »èÁ¦ °úÁ¤
¾²±â(Write)
- SSD´Â Ç×»ó ºó ÆäÀÌÁö¿¡¸¸ µ¥ÀÌÅ͸¦ ¾¸
- ±âÁ¸¿¡ ÀÖ´ø µ¥ÀÌÅ͸¦ µ¤¾î¾µ ¼ö ¾øÀ½
¿¹) ¼öÁ¤µÈ ÆÄÀÏÀº »õ ÆäÀÌÁö¿¡ ±â·ÏµÇ¸ç ÀÌÀü µ¥ÀÌÅÍ´Â »èÁ¦ Ç¥½Ã¸¸ µÊ
- ¸¸¾à °°Àº ÆÄÀÏÀ» ´Ù½Ã ¾²°Ô µÈ´Ù¸é »õ ÆäÀÌÁö¿¡ ¾²¸ç ±âÁ¸ ÆäÀÌÁö´Â ¹«È¿(Invalid)·Î Ç¥½Ã
»èÁ¦ (Block Erase)
- SSD´Â ÆäÀÌÁö¸¦ Á÷Á¢ Áö¿ìÁö ¸øÇϰí, ºí·Ï Àüü¸¦ Áö¿ö¾ß ÇÔ
- »èÁ¦µÈ ÆÄÀÏÀÌ ½ÇÁ¦·Î µð½ºÅ©¿¡¼ »ç¶óÁöÁö ¾Ê´Â ÀÌÀ¯µµ ÀÌ ±¸Á¶ ¶§¹®
¹«È¿(Invalild)
- ÀÌÀü¿¡ ¾²¿© ÀÖ´ø ÆäÀÌÁö´Â »èÁ¦°¡ ¾Æ´Ñ ¹«È¿ 󸮸¸ µÊ
- SSD´Â ¹«È¿ÈµÈ °ø°£À» Áï½Ã Àç»ç¿ëÇÏÁö ¸øÇÏ¸ç »èÁ¦µÇ°Å³ª ȤÀº GC µÇ±â±îÁö À¯Áö
Àбâ (Read)
- SSD´Â ÆäÀÌÁö ´ÜÀ§·Î ºü¸£°Ô µ¥ÀÌÅ͸¦ ÀÐÀ» ¼ö ÀÖÀ½
- Àбâ´Â ´Ù¸¥ ÀÛ¾÷¿¡ °ÅÀÇ ¿µÇâÀ» ÁÖÁö ¾ÊÁö¸¸ ¾²±â¿Í GC Áß¿¡´Â ¼Óµµ ÀúÇÏ °¡´É
TRIM (OS -> SSD)
- OS°¡ SSD¿¡ "ÀÌ ÆÄÀÏÀº »èÁ¦µÇ¾úÀ¸´Ï Á¤¸®ÇØ" ¶ó°í ¾Ë¸²
- SSD´Â ¹«È¿ÆäÀÌÁö¸¦ ÃßÀûÇϰí GC ŸÀ̹ÖÀ» ÆÇ´Ü
Garbage Collection
- ¹«È¿(Invalid) ÆäÀÌÁö°¡ ¸¹Àº ºí·ÏÀ» °ñ¶ó¼ À¯È¿ µ¥ÀÌÅ͸¸ »õ ºí·Ï¿¡ º¹»çÇÏ¸ç ¿ø·¡ ºí·ÏÀº Áö¿ò
- ¼º´É¿¡ Å« ¿µÇâÀ» ÁÖ¸ç °úµµÇÏ¸é º´¸ñ ¹ß»ý
[Block A] Page 1: À¯È¿ µ¥ÀÌÅÍ Page 2: »èÁ¦µÊ Page 3: »èÁ¦µÊ Page 4: À¯È¿ µ¥ÀÌÅÍ
¡æ »õ µ¥ÀÌÅÍ ¾²·Á¸é ÀÌ ºí·ÏÀ» "Á¤¸®"ÇØ¾ß ÇÔ
1. Page 1, 4 ¡æ ´Ù¸¥ ºí·ÏÀ¸·Î º¹»ç 2. Block A Àüü »èÁ¦ 3. Block A´Â ´Ù½Ã ºó ºí·ÏÀ¸·Î Àç»ç¿ë |
¡Ø Wear Leveling
- Ç÷¡½Ã ¸Þ¸ð¸®´Â Áö¿ì±â Ƚ¼ö¿¡ Á¦ÇÑÀÌ ÀÖÀ½
- SSD ÄÁÆ®·Ñ·¯´Â Ç÷¡½Ã ¼Õ»óÀ» ÁÙÀ̱â À§ÇØ ¸ðµç ºí·°ÀÌ ±ÕµîÇÏ°Ô »ç¿ëµÇµµ·Ï µ¥ÀÌÅ͸¦ ºÐ»ê
¡Ø À§°úÁ¤À» SSD ÄÁÆ®·Ñ·¯°¡ ÀÚµ¿À¸·Î ¼öÇàÇÏ¸ç »ç¿ëÀÚ´Â °ÅÀÇ ´À³¢Áö ¸øÇÏÁö¸¸ ³»ºÎÀûÀ¸·Î´Â Áö¼ÓÀûÀ¸·Î ÃÖÀûȰ¡ ÁøÇàµË´Ï´Ù.
¾²±â ´©Àû·®ÀÌ ¸¹¾ÆÁü(TBW ¼Ò¸ð)
- Àбâ/¾²±â ¸ðµÎ Á¡ÁøÀû ÀúÇÏ
- ¼¿¸¶¸ð·Î ÀÎÇØ ¿¡·¯À² »ó½Â, ECC º¸Á¤ Áõ°¡
TRIM ¸í·É ¹Ì»ç¿ë
- TRIMÀÌ ¾øÀ¸¸é SSD´Â ¾î¶² ÆäÀÌÁö°¡ »èÁ¦µÈ °ÇÁö ¸ô¶ó GC°¡ ´õ ºñÈ¿À²Àû
- ¾²±â ¼º´ÉÀúÇÏ
- »èÁ¦µÈ ÆÄÀϵµ ¿©ÀüÈ÷ »ç¿ë ÁßÀÎ ºí·ÏÀ¸·Î ÀνÄ
- Æ®¸² Ȱ¼ºÈ üũ # fstrim -v /
Over-provisioning ºÎÁ·
- ¼ö¸í ¹× ¼º´É ÀúÇÏ
- ÄÁÆ®·Ñ·¯°¡ Àç¹èÄ¡ ¹× ÃÖÀûȸ¦ Àß ¼öÇàÇÏÁö ¸øÇÔ
- ÀϺΠ°ø°£À» »ç¿ëÀÚ°¡ ÇÒ´çÇÏÁö ¾Ê°í ³²°ÜµÎ¸é ¼ö¸í°ú ¼º´É¿¡ ÁÁÀ½
DRAM-less SSD »ç¿ë
- ij½Ã ºÎÁ·À¸·Î ¼º´É ºÒ¾ÈÁ¤
- ¿¬¼Ó ¾²±â ¼º´ÉÀÌ ³·°í º¯µ¿ÀÌ Å
- DRAM-less SSD´Â ºñ¿ëÀÌ Àú·ÅÇÏÁö¸¸ ¾²±â ¼º´É°ú ¾ÈÁ¤¼º¿¡¼ ºÒ¸®