I/O 인터페이스와 버스

PCI Express의 데이터 링크 계층이 전송 중 비트 오류에 대해 수행하는 일로 올바른 것은 무엇입니까?

  1. A오류가 있어도 아무것도 하지 않고, 소프트웨어가 알아챌 때까지 그대로 사용한다
  2. B오류가 발견되면 그 기기의 전원을 끈다
  3. C패킷에 CRC를 붙여 오류를 검출하고, 오류가 있으면 수신하지 못했음을 알려 다시 보내게 한다
정답과 해설 보기

정답: C. 패킷에 CRC를 붙여 오류를 검출하고, 오류가 있으면 수신하지 못했음을 알려 다시 보내게 한다

데이터 링크 계층은 각 패킷에 일련번호와 CRC(순환 중복 검사) 부호를 붙여 보냅니다. 수신 측은 CRC를 확인하여 올바르면 ACK, 오류가 있으면 NAK을 돌려보내고, 송신 측은 확인이 될 때까지 패킷을 보관해 두었다가 NAK을 받으면 다시 보냅니다. 이 구조 덕분에 물리 계층에서 드물게 비트 오류가 발생해도 상위 계층과 소프트웨어에는 올바른 데이터가 전달됩니다.

  • A. 데이터 링크 계층에서 오류를 찾아 고칩니다.
  • B. 전원을 끄는 일은 하지 않습니다.
  • C. 올바릅니다. ACK와 NAK에 의한 재전송 구조입니다.
이 분야 연습하기 분야로 돌아가기

I/O 인터페이스와 버스의 다른 문제

  1. PCI Express 기기의 레지스터나 메모리를 CPU에서 읽고 쓸 수 있게 하는 구조로 올바른 것은 무엇입니까?
  2. PCI Express에서 사용되는 MSI(메시지 시그널 인터럽트)의 특징으로 올바른 것은 무엇입니까?
  3. 인터페이스의 성능을 나타내는 「대역」과 「지연(레이턴시)」의 차이로 올바른 것은 무엇입니까?
  4. 대역 10 GB/s, 지연 1 µs인 연결에서 64바이트 데이터를 1회 보내는 데 걸리는 시간에 가장 가까운 것은 무엇입니까(시간=지연+데이터량÷대역으로 합니다)?
  5. 기기와 작은 데이터를 하나씩 수천 번 주고받는 프로그램을 빠르게 하는 방법으로 가장 효과적인 것은 무엇입니까?

이 분야의 비교