컴퓨터아키텍처

Computer Architecture

2016-06-01

Error Detection / Correction

과제 제출 안내

  • Google Drive 공유 폴더를 통해 (종이 X, 메일 X)
  • [새로 만들기] 버튼을 눌러
    CA16<이름><학번> 폴더를 만들고 (예: CA16김연아123456)
    만들어진 폴더를 우클릭하여 나오는 드롭메뉴에서
    폴더 공유설정으로 kyagrd@gmail.com 에게 공유 (편집권한)
  • Google 메일 계정만 있으면 Google Drive 서비스 이용 가능 
  • Google 메일 계정은 무료로 만들 수 있으며
    참고로 안드로이드 스마트폰 사용자는 누구나 이미 보유

Error Detection Code

  • 데이타 저장 또는 전송 장치에서 물리적으로
    손상/변질(corruption)되는 에러 발생 가능
  • Error Detection Code: 데이타에 추가 정보를
    덧붙여
    이러한 에러 발생을 알아차릴 수 있도록
  • Error Detction Code의 예
    • Parity Bit (또는 Byte, Word 도 가능)
    • Checksum

1-bit parity scheme

  • 일정 단위 길이마다 추가로 1 bit를 parity bit으로 사용
  • parity bit이란 바이너리 데이타에서
    1의 개수가 짝수이면 0 홀수이면 1
  • parity bit까지 포함한 데이타에서 1의 개수는 항상 짝수
    • 즉 가장 서로 가까운(유사한) 단위 길이 데이타
      사이의 거리(distance)는 2
  • 1-bit error detection 가능
    (하지만 어디서 에러가 발생했는지는 모름)
  • 2 bit이상 corruption은 탐지 불가

Error Correcting Code

  • 가장 서로 가까운(유사한) 단위 길이 데이타
    사이의 거리(distance)를 3으로 한다면?
    • 1-bit error detection 은 물론 correction도 가능
      (더 가까운 쪽으로 correction)
    • 2 bit이상 error 탐지 불가
    • 이것이 Hamming ECC의 기본 발상
  • 가장 서로 가까운(유사한) 단위 길이 데이타
    사이의 거리(distance)를 4로 한다면?
    • ​1-bit error detection 및 correction 가능
    • 2-bit error detection 가능 (correction은 불가)
    • Hamming ECC + 추가 parity bit으로 구성 가능

퀴즈

  1. TLB의 Tag에는 어떤 정보가 들어가나?
    Virtual Page Number
    (추가로 프로그램/프로세스 번호도 들어갈 수도)
  2. Write-through와 Write-back을 비교설명
    W-through는 캐시에 쓰기가 일어나자마자 바로 메인 메모리에도 쓰지만 W-back은 캐시만 변경된 내용을 갖고 있다가 메모리에 쓰는 것은 나중에 (프로그램 종료, 또는 다른 virtual page를 같은 위치에 캐시 등) 한다. 
  3. block, line 혹은 page의 크기가 지나치게 커질 때 문제점은?
    캐시가 금방 꽉 차서 다른 위치의 매모리를 새로 캐시하기 위해서 밀어내야 하는 일이 자주 발생 (더 간단히는 capacity  miss 증가)

컴퓨터아키텍처

By 안기영 (Ahn, Ki Yung)

컴퓨터아키텍처

2016-06-01

  • 1,745