본문 바로가기

IT/컴퓨터구조

[컴퓨터구조] 기억장치 : 기억장치 시스템의 특징들

 

기억장치 : 기억장치 시스템의 특징들

 

 

안녕하세요 지토우에요.

지난 시간에 이어 기억장치 시스템들의 특징에 대해 더 알아보도록 합시다.

 


 

 기억장치 시스템을 설계하는 데에 있어 고려해야할 주요 특성은

용량(capacity)액세스 속도 (access speed)입니다.

기억장치에서 용량을 나타내는 단위는 바이트(byte : 1바이트 = 8비트) 혹은 단어(word)인데요.

일반적으로 단어의 길이는 8, 16, 32, 64 입니다.

단어의 길이는 1) CPU가 실행할 명령어의 길이 혹은 2) 내부 연산에서 한 번에 처리할 수 있는 데이터 비트 수와 같습니다.

 

 CPU가 한 번의 기억장치 액세스에 의해 읽거나 쓸 수 있는 비트 수를 전송 단위(unit of transfer) 라 하는데요.

내부 기억장치에 있어 전송 단위는 기억장치 모듈로 들어가고 나오는 데이터 선들의 수와 같습니다.

전송장치는 '데이터 선들의 수'가 결정 한다고 할 수 있겠네요.

이것은 단어 길이와 같은 경우도 있고, 그렇지 않은 경우도 있습니다.

외부 기억장치에서는 데이터가 단어보다 훨씬 더 큰 단위로 전송되기도 하는데, 그 단위를 블록(block)이라고 부릅니다.

하나씩 가져오면 시간이 오래 걸려서 '블록'으로 갖고 오는 것 입니다.

디스크와 같은 대용량 저장장치의 경우에는 블록의 크기가 일반적으로 512 바이트 혹은 1K 바이트 입니다.

그러나 외부 기억장치에 접속되는 데이터 버스의 폭(width)은 8, 16, 32 비트 이기 때문에,

한 블록을 전송하기 위해서는 여러 번의 전송 동작들이 연속적으로 수행되어야 합니다.

 

 이와 연관된 개념으로, 주소지정 단위(addressable unit)을 정의할 필요가 있습니다.

각 기억장치 위치에는 고유의 주소가 할당됩니다.

각 바이트에 대해 별도 주소를 지정할 수 있고, 각 단어 별로 주소를 지정할 수도 있습니다.

대부분의 시스템들에서는 주소 지정 단위가 바이트이지만, 단어 단위로 주소를 지정하는 시스템들도 있습니다.

CPU가 발생하는 주소 비트의 수 A와 주소지정 될 수 있는 기억장소들의 수 N과의 관계는 2A= N 입니다.

따라서 만야 바이트 단위로 주소를ㅈ ㅣ정한다면, 주소 지정 될 수 있는 기억장치 용량은  N바이트가 됩니다.

그런데 단어의 길이가 32비트(4바이트)인 시스템에서 주소를 단어 단위로 지정한다면,

A개의 주소 비트들로 주소 지정 할 수 있는 전체 기억장치 용량은 N단어, 즉 4N 바이트가 됩니다.

그러나 바이트 단위로 주소를 지정하는 경우에는 필요한 바이트만 별도로 액세스 할 수 있다는 장점이 있습니다.

 

기억장치 시스템의 다른 주요 특성인 액세스 속도와 관련된 파라미터들을 봅시다.

 

  • 액세스 시간(access time) :

    주소와 읽기/쓰기 신호가 기억장치에 도달하는 순간부터 데이터가 저장되거나 읽혀지는 동작이 완료되는 순간까지의 시간을 말합니다.
    임의 액세스 기억장치의 경우에는 액세스 시간이 모든 기억 장소들에 대해 동일합니다만,
    순차적 혹은 직접 액세스 기억장치의 경우에는 데이터가 저장되어 있는 위치에 따라 달라집니다.

  • 기억장치 사이클 시간(memory cycle time) :

    이 시간은 액세스 시간과 다음 액세스를 시작하기 위해 필요한 동작에 걸리는 추가적인 시간을 합한 시간입니다.

    여기서 추가적인 시간이란 읽기 동작 후에 정보가 소멸되는 저장장치인 경우에 그것을 복원시키는 데 걸리는 시간을 말합니다.

    과거에 사용되던 자기 코어(manetic core)나 최근에 개발되고 있는 FARM ( 강유전체라고 불리는 물질의 특성을 이용해 제조되는 반도체 기억장치.) 은 읽기 동작 후 내용이 지워지며,

    자동적으로 다시 복구되지만 일정 시간이 소요됩니다.

    그러나 반도체 기억장치나 디스크와 같은 최근의 저장장치들은 내용이 지워지지 않기 때문에 액세스 시간과 사이클 시간이 같습니다.

  • 데이터 전송률(data transfer rate) :

    이것은 기억장치로부터 초당 읽혀지거나 쓰여질 수 있는 비트 수를 말합니다.

    따라서 이것은 (1 / 액세스 시간) X (한 번에 읽혀지는 데이터 바이트의 수)에 의해 구할 수 있습니다.