Interconnection
Interconnection은 processor, memory, I/O devices를 연결하는 방법이다.
여러 방법이 있지만, Bus가 가장 저렴하기 때문에 주로 data bus와 address bus를 사용한다.
많은 부품이 연결되야 하는 곳(슈퍼컴퓨터 등)에서는 가장 고가인 Fully connected 방식을 사용한다.
이슈들
Interconnection을 할 때 다음과 같은 것들을 고려해야 한다.
- Unique address
- 각 기기별로 고유한 주소를 가져야 한다.
- Routing
- 메시지를 전달하는 방법이다.(어떻게 전달할 것인지)
인터넷의 경우, IP address라는 unique address를 가지고, TCP/IP protocol을 이용해 메시지를 전달한다.
Bus
간단히 Shared medium이다.
컴퓨터 안의 부품들 간, 혹은 컴퓨터 간에 데이터와 정보를 전송하는 통로(통신 시스템)이다.
관련된 모든 하드웨어나 소프트웨어(통신 프로토콜 등)을 포함한다.
예를 들어, Bus arbitration(누가 사용하고 있는지, 사용할 수 있는지), bus protocol, bus controller, ISA, 이더넷 등이 있다.
성능이 가장 떨어지지만 가장 low-cost 방식이라서, 성능이 허용되는 한 가장 많이 사용된다.
- 장점
- simple
- low-cost
- widely used
- 단점
- limited performance
- 1:1 로만 통신 가능
- limited performance
Unique address과 routing에 대한 문제를 다음과 같이 해결한다.
- unique address
- 버스에 연결되는 모든 부품들은 고유의 주소를 가져야 한다.
- routing
- 모두가 medium을 공유하기 때문에 모든 곳에서 수신하는 broadcast 방식을 사용한다.
Data bus, Address bus
프로세서, 메모리, I/O device을 연결하기 위해 사용한다.
다수의 Interconnection
데이터 센터, 슈퍼컴퓨터 등은 매우 많은 프로세서를 연결해야 한다.
그러나 bus는 1:1로만 사용 가능하기 때문에, 많은 프로세서를 연결하게 되면 성능 저하를 일으킨다.
따라서 Fully connected 방식을 주로 채택한다.
Fully connected는 모든 프로세서 간 통로가 따로 존재한다. 모두가 전용 link를 갖는 것이다.
실용성은 떨어지나 다수의 프로세서를 연결해야 하기 때문에 이 방식을 사용한다.
일반적인 Interconnection (In real)
다음 예시에서 아래 두개의 버스가 사용되고 있다.
- Processor-memory bus
- 프로세서 회사와 메모리 회사에서 협의하여 독자적인 연결 방식을 사용한다.
- I/O bus
- 많은 부품들이 연결되기 때문에 표준화 된 방법을 사용하는 것이 중요하다.
- industry-driven으로 개발이 진행된다.
- 한번 개발되면 오랫동안 사용된다.
'Computer Science > Computer Architecture' 카테고리의 다른 글
성능을 위한 ISA 구현 방법(간략) (0) | 2021.03.27 |
---|---|
I/O : Interrupt (+ Atomic) (0) | 2021.03.27 |
Microcontroller, Memory Map, Processor Databook (0) | 2021.03.27 |
X-Bit Computer에서 X의 영향 (0) | 2021.03.26 |
반도체 기술과 프로세서 기술의 발전 (0) | 2021.03.25 |
댓글