Dependability: Computer System Dependability is the Quality of Delivered Service such that reliance can justifiably be placed on this service. (System failure는 실제 행동이 명시된 행동과 다를 때 일어난다.)
Reliability: Is anything broken?
Availability: Is the system still available to the user?
* Bus
A bus is:
- shared communication link
- set of wires used to connect multiple subsystems
- a fundamental tool for composing large, complex systems
Advantages of Buses:
- Versatility:
새로운 디바이스를 쉽게 추가할 수 있다.
같은 버스 스탠다드를 쓰는 컴퓨터 사이에서는 주변기기를 옮겨 쓸 수 있다.
- Low cost
Disadvantages of Buses:
- communication bottleneck
버스의 bandwidth가 maximum I/O throughput을 제한한다.
- 최대 버스 속도는 ~에 의해 제한된다:
버스의 길이
버스에 부착되어 있는 디바이스의 개수
* Bus is a set of Control Lines and Data Lines.
* Bus Transaction(처리)
- A Sequence of Bus Operations that includes a Request and may include a Response. A Transaction is initiated by a single request and may take many individual Bus Operations
- Two parts: 1) Sending Address, 2)Receiving or Sending Data
Bus transaction의 two parts: Request & Action.
Master - slave model: Master - issuing the command (and address)
Slave - sending or receiving data
마스터가 여러 개이면 중재가 필요하다.
(가장 간단한 형태는 마스터가 하나이며 그것이 프로세서일 때이다. 하지만 그럼 모든 처리(transaction)에 프로세서가 관여해야 한다.)
* Bus Arbitration Scheme: Request, Granted, Release
- Bus arbitration scheme은 두 가지 factor의 balance를 유지해야 한다: Bus priority와 Fairness.
(우선순위와 아무리 우선순위가 낮아도 언젠가 실행은 되어야 한다는 것)
* Bus arbitration schemes는 4개의 broad class로 나눌 수 있다:
- Daisy chain arbitration: Single device with all request lines. 간단하지만 fairness를 보장하지 못한다.
- Centralized, parallel arbitration: Multiple Request lines.
- Distributed arbitration by self-selection: Each device wanting the bus places a code indicating its identity on the bus. Each device determines independently if it is the high priority requestor.
- Distributed arbitration by collision detection: 충돌 감지. 이더넷이 이 방식을 사용함.
* Synchronous Bus vs. Asynchronous Bus
* Polling vs. Interrupt
* DMA (Direct Memory Access)
문제: interrupt driven I/O에서 큰 데이터 블록을 전송하려고 하면 프로세서가 데이터 전송 과정에 관여되어야 한다.
해결책: DMA
DMA:
- External to the CPU
- 버스 마스터처럼 행동한다
- CPU intervention 없이 데이터 블록을 메모리에서 가져오거나 메모리에 저장한다.
'나의' 카테고리의 다른 글
Chapter 4. The Processor - Performance (0) | 2011.03.17 |
---|---|
Enhancing Performance with Pipelining (0) | 2011.03.16 |
Virtual Memory (0) | 2011.03.14 |
Chapter 5. Large and Fast: Exploiting Memory Hierarchy (0) | 2011.03.13 |
Chapter 3. Arithmetic for computers (0) | 2011.03.13 |