기억장치
1. 기억장치 분류와 특성
1.1 기억장치 액세스 유형
유형 | 설명 | 예시 |
---|---|---|
순차적 액세스 | 처음부터 순서대로 접근 | 자기 테이프 |
직접 액세스 | 위치 근처로 이동 후 순차 검색 | 디스크, CD-ROM |
임의 액세스 | 주소로 직접 접근, 모든 위치 액세스 시간 동일 | RAM, ROM 등 |
연관 액세스 | 내용 일부(비트) 비교로 일치 데이터 접근 | 연관(associative) 메모리 |
1.2 기억장치 설계 및 전송 단위
- 용량: 저장 가능한 총 정보량
- 액세스 속도: 읽기/쓰기 소요 시간
- 전송 단위: CPU가 한 번에 읽거나 쓸 수 있는 비트수 (주기억장치: 단어, 보조저장장치: 블록)
- 주소지정 단위: 각 주소에 저장되는 데이터 길이 (바이트/단어)
- 주소 비트 수 $A$, 주소지정 단위 수 $N$ → $2^A = N$
1.3 액세스 속도 관련 파라미터
- 액세스 시간: 주소/신호 입력~데 이터 액세스 완료까지 시간
- 데이터 전송률: 초당 액세스 비트수
- 공식:
$\text{전송률} = \frac{1}{\text{액세스 시간}} \times \text{전송 단위 비트수}$
- 예: 액세스 100ns, 32비트 → 40MB/s
- 공식:
1.4 기억장치 유형
- 제조 재료:
- 반도체: RAM, ROM, 플래시 메모리
- 자기-표면: 디스크 등
- 데이터 저장 성질:
- 휘발성: 전원 차단 시 데이터 소멸 (RAM)
- 비휘발성: 영구 저장 (ROM, 디스크, SSD)
- 삭제 불가: 내용 변경 불가 (ROM)
2. 계층적 기억장치 시스템
2.1 계층화의 필요성 및 효과
- 다양한 속도/용량/가격의 기억장치 조합 필요
- 효과: 성능-가격비 향상
- 특성:
- 상위 계층: 빠름, 비쌈, 용량 작음, CPU 접근 빈도 높음
- 하위 계층: 느림, 쌈, 용량 큼, 접근 빈도 낮음
2.2 계층적 기억장치 시스템의 원리
- 2단계 계층: ML1(고속/소용량) ↔ ML2(저속/대용량)
- 지역성의 원리: 프로그램 실행 중 특정 영역 집중 액세스 → 상위 계층 액세스 빈도↑, 평균 액세스 시간↓
2.3 기억장치 계층의 구성
- 상위층: 비트당 가격↑, 용량↓, 액세스 시간↓, CPU 접근 빈도↑
- 하위층: 용량↑, 가격↓, 접근 빈도↓
- 캐시 메모리: CPU-주기억장치 사이 고속 메모리, 속도 차이 보완
- 내부 기억장치: CPU 직접 접근 가능 (레지스터, 캐시, 주기억장치)
- 외부 기억장치: 장치 제어기 통해 접근 (디스크, SSD, CD-ROM 등)
3. 반도체 기억장치
3.1 RAM (Random Access Memory)
- 특성: 임의 액세스, 읽기/쓰기 가능, 휘발성
- DRAM: 캐패시터 저장, 주기적 재충전 필요, 대용량/저가, 주기억장치
- SRAM: 플립플롭 저장, 재충전 불필요, 고속, 캐시 메모리
- 내부 조직: 다양한 비트 조직(8x8, 16x4 등), 대용량은 RAS/CAS 신호로 주소 관리
3.2 ROM (Read Only Memory)
- 특성: 읽기만 가능, 영구 저장
- 용도: 시스템 초기화, 진단, 제어 유닛 마이크로 프로그램, 서브루틴 저장
- 종류:
- PROM: 1회 프로그래밍 가능
- EPROM: 자외선 삭제/재기록 가능
- EEPROM: 전기적 삭제/재기록, 갱신 횟수 제한
- 플래시 메모리: NAND/NOR형, 삭제 빠름, SSD 구성요소
4. 기억장치 모듈의 설계
- 병렬 접속: 단어 길이(N) > 칩 데이터 I/O(B) → N/B개 칩 병렬 연결, 데이터 폭 확장
- 직렬 접속: 기억 장소 수↑ 필요시 칩 직렬 연결, 총 용량 확장
- 설계 순서:
- 시스템 필요 용량 결정
- 칩 선정 및 주소 맵 작성
- 세부 회로 설계
5. 결론
컴퓨터 기억장치는 프로그램/데이터 저장의 핵심 요소입니다. 속도, 용량, 가격의 균형을 맞춘 계층적 시스템 이해와 RAM, ROM, 플래시 메모리 등 반도체 기억장치의 원리, 모듈 설계는 컴퓨터 아키텍처의 근간입니다.