**솔리드 스테이트 드라이브** 또는 **솔리드 스테이트 디스크**는 반도체를 이용하여 정보를 저장하는 장치이다.

솔리드 스테이트 드라이브는 순수 전자식으로 작동하므로 기계식인 하드 디스크 드라이브(HDD)의 문제인 긴 탐색 시간, 반응 시간, 기계적 지연, 실패율, 소음을 크게 줄여 준다. 반면에 DRAM이 아닌 플래시 메모리가 적용된 SSD의 경우, 데이터 접근 시간이 아닌 연속적인 읽기와 쓰기에 대해 하드 디스크보다 속도가 낮은 경우가 대부분이었다. 하지만 최신 기술이 적용된 SSD의 경우, 대부분 하드 디스크 드라이브 이상의 읽기와 쓰기 속도를 낸다.

## 개발과 역사

### RAM과 비슷한 기술을 이용한 초기 SSD
SSD는 1950년대 두 개의 기술과 함께 탄생하였다: 자기 코어 메모리, CCROS. 이러한 보조 기억 장치들은 진공관 컴퓨터 시대에 모습을 드러냈다. 그러나 이들에 대한 사용은 더 값싼 드럼 기억 장치의 도입으로 중단되었다. 2014년 이후로는 SLC 플래시 메모리를 사용한 SSD는 제조단가가 비싸기 때문에, 사실상 보급형에서 전문작업을 필요로 하는 기기에 사용된다. MLC 또는 TLC 플래시 메모리를 사용한 제품이 일반적으로 사용되며, 저렴하게 SSD를 이용하려는 사용자는 TLC SSD를, 오래 사용하거나 보다 안전하게 정보를 저장하려는 사용자는 MLC SSD를 사용한다. 상대적으로 TLC 플래시 메모리가 MLC에 비해 안정성이 떨어지기에, 3D TLC 낸드 사용 제품을 사용하는 일본 굴지의 반도체 업체인 키오시아의 SSD의 경우, 기존 TLC의 한계점을 보완하기 위해, BiCS FLASH의 초미세화 기술로, SLC 쓰기 캐시 기술을 통한 향상된 쓰기 성능을 제공해 대기 시간이 없는 부팅, 애플리케이션 로딩 시간 단축 및 빠른 데이터 전송이 가능하다.

**셀 레벨**

한 셀에 몇 단계의 데이터를 담는가에 따라 SLC와 MLC, TLC, QLC 등등으로 나뉜다.
현재 기술발달로 읽기 쓰기가 절대적인 차이가 나지 않게 됐다. 단적으로 SLC인 메모리보다 MLC인지 TLC인지 헷갈리는 Sandisk Z80이 더 빠른 쓰기와 4k속도를 자랑한다. MLC보다 빠른 쓰기 읽기의 TLC메모리가 나오고 있고, 읽기 속도만큼은 TLC도 100MB가 넘어가는게 보통이 되어가고 있다. 다만 읽기속도는 제한을 걸어 놓은게 많다. 보통 이럴 때에는 최대130MB라고 써놓고 쓰기 속도를 알려주지 않는다.

SLC는 셀당 1비트를 담는 것이고, MLC는 한 셀에 2비트를 담는 것이다. 당연히 용량대비 가격은 MLC가 싸지만, 쓰기 속도가 매우 느리다. 다행이라면 읽는 속도는 별 차이 없다는 것이다. 싼 가격 때문에 대부분의 소비자용 제품이 MLC다. SLC 제품은 보통 전문가용이라고 광고를 하고 있는데 가격이 바로 몇 배로 올라간다. MLC의 또 하나의 단점은 기록 허용 횟수가 SLC에 비해 작다는 것이다.

### 디램 기반 드라이브
디램과 같은 휘발성 메모리를 기반으로 한 SSD는 매우 빠른 데이터 접근 속도를 보인다. (0.01 밀리초 이하이며 주로 플래시 SSD나 전통적인 HDD의 레이턴시에 발목이 잡히는 응용 프로그램을 가속하는 데 쓰인다. 디램 기반의 SSD는 보통 내부 전지나 외장 AC/DC 어댑터, 그리고 백업 스토리지 시스템을 사용하여 데이터 영구성을 보장한다. 그러나 외부 자원으로부터 전력이 드라이브에 공급되지는 않는다. 전원이 손실되면 전지는 모든 정보가 램으로부터 백업 스토리지에 복사되는 동안 전원을 제공한다. 전원이 되돌아오면 정보는 백업 스토리지로부터 램으로 복사되며 SSD는 일반적인 기능을 수행한다. (이는 현대의 운영 체제에서 제공하는 최대 절전 모드와 비슷하다)

이러한 종류의 SSD는 보통 일반적인 PC와 서버에 쓰이는 같은 종류의 디램 모듈로 되어 있어 더 큰 모듈로 대체하거나 교환할 수 있다.

(직접적인) 인피니밴드 연결이나 빠른 네트워크로 된 이차 컴퓨터는 램에 기반을 둔 SSD로 사용된다.

디램 기반 SSD는 플래시 드라이브에 비해 가격이 비싸기 때문에 보통 일반 소비자는 사용하지 않는다.

## 성능 설정
SSD를 컴퓨터에 장착한 다음 가장 먼저 설정해야 할 것이 AHCI(Advanced Host Controller Interface) 설정이다. AHCI는 운영체계 등의 소프트웨어가 하드디스크 등의 S-ATA 연결 장치와 데이터를 주고 받을 수 있도록 제어하는 기술을 뜻한다. 이는 NCQ를 지원하여 하드디스크의 입출력 속도를 향상시키고 데이터 병목현상도 방지할 수 있다. 특히 SSD의 특징인 빠른 데이터 전송속도를 가장 효과적으로 활용할 수 있게 한다.AHCI 설정은 메인보드의 바이오스(CMOS) 설정 화면에서 할 수 있는데, PC 전원을 켠 직후 ‘Delete’ 키나 ‘F2’ 키를 누르면(메인보드에 따라 다름) 설정 화면으로 들어간다. 바이오스 설정 화면 구성 역시 메인보드에 따라 다르지만, 대부분 ‘S-ATA Configuration’(또는 Storage Configuration) 메뉴에서 AHCI 기능을 활성화할 수 있다(기본 설정은 ‘IDE’다).참고로 AHCI는 운영체계를 설치하기 전에 설정하는 것이 좋다. 만약 운영체계 설치 후 AHCI를 설정하면 시스템 오류로 인해 윈도우가 부팅되지 않고 블루 스크린(오류 화면)이 나타날 수 있다.

## 하드디스크와의 비교
HDD(하드 디스크 드라이브)의 경우, 디스크에 기록된 데이터를 읽기 위해서는 데이터를 판독하는 헤드(바늘)가 물리적으로 데이터가 기록된 위치까지 이동해야 하므로 이동에 일정한 시간이 소요된다.
. 따라서 하드 디스크의 경우 데이터를 읽기 위한 요청이 주어진 뒤에 데이터를 실제로 읽기까지 일정한 시간이 소요되는데, 이 시간을 일정한 한계(약 10ms)이하로 줄이는 것이 불가능에 가까우며, 데이터가 플래터에 실제 기록된 위치에 따라서 이러한 데이터에의 접근시간 역시 차이가 나게 된다. 또한 자주 사용되는 두개의 연관된 데이터가 서로 물리적으로 떨어진 위치에 기록된 경우, 두개의 데이터를 읽기 위해 헤드는 쉴새 없이 움직여야 하며 이러한 과정 역시 시간을 소모한다.

하드 디스크의 이러한 제한을 극복하기 위해 다양한 방법이 제안되었으나,
플래터와 헤드로 이루어진 물리적 구조를 유지한 상태에서는 그 한계가 분명하였다.

그 대안으로 등장한 것이 SSD(솔리드 스테이트 드라이브)다.

SSD의 경우 모든 데이터는 플래시 메모리에 저장되어 즉각 읽고 쓰기가 가능하므로, HDD(하드 디스크 드라이브)하고는 달리 지연시간이 0에 가깝다. 또한 데이터가 파편화되어 있는 경우에도 하드 디스크 와는 달리 지연시간이 전혀 늘어나지 않는다.