시스템 버스

System bus
단일 시스템 컴퓨터 버스의 예

시스템 버스는 컴퓨터 시스템의 주요 컴포넌트를 연결하는 단일 컴퓨터 버스이며, 정보를 전달하기 위한 데이터 버스, 정보를 보내거나 읽어야 하는 위치를 결정하는 주소 버스 및 작동을 결정하는 제어 버스를 결합합니다.이 기술은 비용을 절감하고 모듈화를 개선하기 위해 개발되었으며, 1970년대와 1980년대에 인기를 끌었지만, 더 현대적인 컴퓨터는 보다 구체적인 요구에 맞게 조정된 다양한 개별 버스를 사용합니다.

시스템 레벨 버스(CPU의 내부 데이터 패스 버스와는 다른)는 CPU를 메모리 [1]및 I/O 디바이스에 연결합니다.일반적으로 시스템 레벨버스는 백플레인으로 [2]사용하도록 설계되어 있습니다.

백그라운드 시나리오

많은 컴퓨터가 1945년에 발표된 EDVAC 보고서에 대한 보고서 초안을 기반으로 했습니다.폰 노이만 아키텍처로 알려지게 된 것에서, 중앙 제어 장치와 산술 논리 장치(ALU, 그가 중앙 산술 부분이라고 불렀던)가 컴퓨터 메모리와 입출력 기능과 결합되어 저장된 프로그램 [3]컴퓨터를 형성했다.그러나 이 보고서는 컴퓨터의 일반적인 조직과 이론 모델을 제시했지만 그 [4]모델의 구현은 제시하지 않았다.곧 설계는 컨트롤 유닛과 ALU를 중앙처리장치(CPU)로 통합했습니다.

1950년대와 1960년대의 컴퓨터는 일반적으로 임시방편으로 만들어졌다.예를 들어 CPU, 메모리 및 입출력 장치는 각각 케이블로 연결된1개 이상의 캐비닛이었습니다.엔지니어들은 표준화된 와이어 묶음의 일반적인 기술을 사용했으며, 이러한 초기 기계에서 인쇄 회로 기판을 고정하기 위해 백플레인이 사용됨에 따라 개념을 확장했습니다."버스"라는 이름은 초기 기계 계산기를 [5]포함한 전기 기계의 다양한 부품에 전력을 전달하는 "버스 바"에 이미 사용되었습니다.집적회로의 등장으로 각 컴퓨터 유닛의 크기가 크게 줄어들었고 버스는 [6]더욱 표준화 되었다.표준 모듈은 보다 균일한 방법으로 상호 접속할 수 있으며 개발 및 유지보수가 용이했습니다.

묘사

비용 절감으로 모듈성을 더욱 높이기 위해 메모리 및 I/O 버스(및 필요한 제어 및 전원 버스)를 하나의 통합 시스템 버스로 [7]결합하는 경우가 있었습니다.컴퓨터가 하나의 캐비닛에 들어갈 수 있을 정도로 작아짐에 따라 모듈러와 비용이 중요해졌다(그리고 고객들은 비슷한 가격 인하를 기대했다).DEC(Digital Equipment Corporation)는 또한 대량 생산된 미니컴퓨터의 비용을 절감하고 메모리 버스에 I/O를 매핑하여 디바이스가 메모리 위치에 있는 것처럼 보이게 했습니다.이것은 1969년경 PDP-11유니버스에 실장되어 별도의 I/O버스가 필요하지 [8]않게 되었습니다.메모리 매핑 I/O가 없는 PDP-8과 같은 컴퓨터도 곧 시스템 버스를 통해 구현되어 모듈을 어떤 [9]슬롯에도 연결할 수 있게 되었습니다.일부 저자들은 이것을 [10]컴퓨터 아키텍처의 새로운 합리화된 "모델"이라고 불렀습니다.

1975년경 Altair 8800 컴퓨터 시스템의 S-100 버스를 시작으로 많은 초기 마이크로컴퓨터(일반적으로 단일 집적회로 상에 CPU가 있음)가 단일 시스템 버스로 구축되었습니다.[11]IBM PC는 1981년에 ISA(Industry Standard Architecture) 버스를 시스템 버스로 사용했습니다.초기 모델의 패시브 백플레인은 CPU와 RAM을 메인보드에 장착하는 표준으로 대체되었으며 시스템 버스 슬롯에는 옵션인 도터보드 또는 확장 카드만 장착되었습니다.

시스템 버스를 사용한 간단한 대칭 다중 처리

멀티버스는 1983년 [12]IEEE 표준 796으로 전기전자공학협회의 표준이 되었다.Sun Microsystems는 1989년에 소형 확장 [13]카드를 지원하기 위해 SBus를 개발했습니다.대칭형 멀티프로세싱을 구현하는 가장 쉬운 방법은 1980년대에 사용된 공유 시스템 버스에 여러 CPU를 연결하는 것이었습니다.그러나 공유 버스는 곧 병목현상이 되었고 보다 정교한 연결 기술이 연구되었습니다.[14]

매우 단순한 시스템에서도 데이터 버스는 프로그램 메모리, RAM 및 I/O 장치로 구동됩니다.데이터 버스의 버스 경합을 방지하기 위해 한 순간에 하나의 장치만 데이터 버스를 구동합니다.매우 단순한 시스템에서는 데이터 버스만 양방향 버스가 됩니다.매우 간단한 시스템에서는 메모리 주소 레지스터가 항상 주소 버스를 구동하고 제어 유닛이 항상 제어 버스를 구동하며 주소 디코더는 이 버스 사이클 동안 데이터 버스를 구동할 수 있는 특정 장치를 선택한다.매우 단순한 시스템에서는 모든 명령 사이클이 READ 메모리 사이클에서 시작됩니다.이 사이클에서는 프로그램 메모리는 명령을 데이터 버스에 구동하고 명령 레지스터는 데이터 버스로부터의 명령을 래칭합니다.일부 명령은 메모리 데이터 레지스터가 데이터 버스에 있는 데이터를 선택한 RAM 또는 I/O 장치로 구동하는 쓰기 메모리 사이클을 계속합니다.다른 명령은 메모리 데이터 레지스터가 데이터 버스의 데이터를 래칭하는 동안 선택한 RAM, 프로그램 메모리 또는 I/O 장치가 데이터 버스에 데이터를 구동하는 또 다른 읽기 메모리 사이클로 계속됩니다.

더 복잡한 시스템에는 멀티 마스터 버스가 있습니다. 각 시스템에 데이터 버스를 구동하는 장치가 많을 뿐만 아니라 주소 버스를 구동하는 버스 마스터도 많이 있습니다.버스 스누핑 시스템의 데이터 버스뿐만 아니라 주소 버스도 양방향 버스여야 하며, 종종 3 스테이트버스로 구현됩니다.주소 버스에서의 버스 경합을 방지하기 위해 버스 아비터는 이 버스 사이클 중에 주소 버스를 구동할 수 있는 특정 버스 마스터를 선택합니다.

듀얼 인디펜던트 버스

인텔에서는 듀얼 인디펜던트 버스(DIB)라는 용어를 두 가지 목적으로 사용하고 있습니다.첫 번째는 인텔이 메인 시스템 메모리와 I/O 디바이스에 외부 프론트 사이드 버스를 사용하고 L2 CPU 캐시에 내부 백사이드 버스를 사용하여 단일 로컬버스에서 DIB로 변경했을 때입니다.이것은 1995년에 [15][16][17]펜티엄 프로에 도입되었습니다.

2005년과 2006년에 인텔은 8500 및 5000 칩셋을 출시했습니다.DIB는 칩셋 상의 2개의 프론트 사이드 버스를 가리킵니다.이는 모든 CPU가 공유하는 FSB를 1개만 사용하는 것에 비해 시스템 대역폭이 2배가 됩니다.다만, 다른 캐시에 있는 공유 데이터의 캐시 일관성을 보증하기 위해서 필요한 정보는 브로드캐스트(스누핑)로 송신해, 다른 FSB 의 CPU 의 캐시 상태를 체크할 필요가 있기 때문에, 사용 가능한 대역폭이 감소합니다.일관성 트래픽을 줄이기 위해 스눕 필터가 하이엔드 칩셋에 포함되어 온칩셋에서 캐시 상태 정보를 사용할 수 있게 되었습니다.2007년에 인텔은 4개의 독립된 FSB를 갖춘 7300 칩셋에 복수의 버스를 탑재하는 아이디어를 확장하여 전용 고속 인터커넥트(DHSI)[18]라고 부르고 있습니다.

시스템 버스 어프로치는 오늘날의 퍼스널 컴퓨터나 서버 컴퓨터에서는 사용되지 않습니다.HyperTransportIntel QuickPath Interconnect 등의 고성능 인터커넥트 테크놀로지를 사용하는 한편, 시스템 버스 아키텍처는 심플한 임베디드 마이크로프로세서에 계속 사용되고 있습니다.시스템 버스는 단일 집적회로 내부에 있어 시스템 온 을 생성할 수도 있습니다.예를 들어 AMBA, CoreConnect, Wishbone [19]등이 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ 에드워드 보즈워스."제10장버스 개요"
  2. ^ Hui Wu. "컴퓨터 버스병렬 입출력", 2006.
  3. ^ John von Neumann (June 30, 1945). "First Draft of a Report on the EDVAC" (PDF). Archived from the original (PDF) on March 14, 2013. Retrieved May 27, 2011. 마이클 D의 소개와 편집.1992년 11월 스탠퍼드 대학교 갓프리입니다
  4. ^ Michael D. Godfrey; D. F. Hendry (1993). "The Computer as von Neumann Planned It" (PDF). IEEE Annals of the History of Computing. 15 (1): 11–21. doi:10.1109/85.194088. S2CID 569933. Archived from the original (PDF) on 2011-08-25.
  5. ^ 미국 특허 3,470,421 "커넥터 플레이트 백 패널 기계 배선을 위한 연속 버스 바" 도널드 L.Shore et al., 1967년 8월 30일 제출, 1969년 9월 30일 발행.
  6. ^ 미국 특허 3,462,742 "대형 집적회로 어레이로 구성되도록 조정된 컴퓨터 시스템" 헨리 S. 밀러 외, 1966년 12월 21일 출원, 1969년 8월 19일 발행.
  7. ^ Linda Null; Julia Lobur (2010). The essentials of computer organization and architecture (3rd ed.). Jones & Bartlett Learning. pp. 36, 199–203. ISBN 978-1-4496-0006-8.
  8. ^ C. Gordon Bell; R. Cady; H. McFarland; B. Delagi; J. O'Laughlin; R. Noonan; W. Wulf (1970). "A New Architecture for Mini-Computers—The DEC PDP-11" (PDF). Spring Joint Computer Conference: 657–675.
  9. ^ Small Computer Handbook (PDF). Digital Equipment Corporation. 1973. pp. 2–9.
  10. ^ Miles J. Murdocca; Vincent P. Heuring (2007). Computer architecture and organization: an integrated approach. John Wiley & Sons. p. 11. ISBN 978-0-471-73388-1.
  11. ^ Herbert R. Johnson. "Origins of S-100 computers".
  12. ^ "796-1983 — IEEE Standard Microcomputer System Bus". Institute of Electrical and Electronics Engineers. 1983. Retrieved May 25, 2011.
  13. ^ Frank, E.H. (1990). "The SBus: Sun's high performance system bus for RISC workstations". Digest of Papers Compcon Spring '90. Thirty-Fifth IEEE Computer Society International Conference on Intellectual Leverage. pp. 189–194. doi:10.1109/CMPCON.1990.63672. ISBN 0-8186-2028-5. S2CID 25815415.
  14. ^ Donald Charles Winsor (1989). Bus and Cache Memory Organization for Multiprocessors (PDF). University of Michigan Electrical Engineering department. 박사 학위 논문
  15. ^ 인텔 CEO, Pentium®II 마이크로프로세서에 새로운 버스 아키텍처 구현 발표
  16. ^ Todd Langley and Rob Kowalczyk (January 2009). "Introduction to Intel Architecture: The Basics" (PDF). White paper. Intel Corporation. Archived from the original (PDF) on June 7, 2011. Retrieved May 25, 2011.
  17. ^ "Accelerated Graphics Port". Next Generation. No. 37. Imagine Media. January 1998. pp. 94–96.
  18. ^ 인텔 ® QuickPath 인터커넥트 개요그림 4 및 5
  19. ^ Rudolf Usselmann (January 9, 2001). "OpenCores SoC Bus Review" (PDF). Retrieved May 30, 2011.