버스 (컴퓨팅)

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

컴퓨터 버스는 CPU, 메모리, 주변 장치 등 컴퓨터 내 부품 간의 데이터 전송을 위한 통신 경로이다. 초창기에는 단일 버스 구조였으나, 속도 차이로 인한 병목 현상을 해결하기 위해 세분화되었다. 버스는 주소, 데이터, 제어 버스로 구성되며, 직렬 및 병렬 버스, 내부 및 외부 버스로 분류된다. 다양한 종류의 버스가 존재하며, 각 버스는 특정 장치 연결 또는 데이터 전송 방식에 특화되어 있다.

버스 (컴퓨팅)
📚 더 읽어볼만한 페이지
  • 디지털 회로 - 클럭 신호
    클럭 신호는 디지털 회로의 동작을 동기화하는 주기적인 신호로, 수정 발진기나 위상동기회로를 통해 생성되며 마이크로프로세서의 동작 속도를 결정하고 전력 효율을 위한 동적 주파수 변경 기술과 잡음 감소를 위한 사인파 클럭이 사용되기도 하며, 칩 내부 분배 효율성이 중요하다.
  • 디지털 회로 - 타이머
    타이머는 시간 간격을 측정하거나 제어하는 장치 또는 기능으로, 기계식부터 전자식, 디지털, 소프트웨어 방식 등 다양한 형태로 존재하며, 독립적으로 사용되거나 시스템 내부에 내장되어 폭넓게 활용되고, 작동 방식과 구현 방식에 따라 여러 종류로 나뉘며, 최근에는 모바일 기반 타이머와 인공지능 기술을 활용한 효율적인 시간 관리 기능으로 발전하고 있다.
  • 컴퓨터 버스 - NMEA 0183
    NMEA 0183은 선박용 GPS, 자동식별장치(AIS) 등 항해 장비에서 데이터를 송수신하는 데 사용되는 ASCII 기반의 직렬 통신 프로토콜로, RS-422 전기 표준을 사용하며, 문장 형태의 데이터를 통해 정보를 전달하고, 물리 계층, 데이터 링크 계층, 애플리케이션 계층의 3가지 레이어로 구성되어 다양한 소프트웨어에서 지원된다.
  • 컴퓨터 버스 - 인피니밴드
    인피니밴드는 고성능 컴퓨팅 환경에서 서버, 스토리지, 네트워크 장치 간 고속 데이터 전송을 위한 직렬 통신 기술로, 슈퍼컴퓨터나 데이터 센터에서 주로 사용되지만 이더넷 기반 기술과의 경쟁 및 새로운 컴퓨팅 환경에 대한 적응이라는 과제를 안고 있다.
  • 메인보드 - 칩셋
    칩셋은 컴퓨터 시스템에서 CPU와 주변 장치 간 통신을 중재하는 핵심 부품으로, 초기에는 노스브리지와 사우스브리지로 구성되었으나 현재는 사우스브리지가 주요 부분을 담당하며, 인텔, AMD 등 CPU 제조사들이 시장을 주도하고 있다.
  • 메인보드 - 익스프레스카드
    익스프레스카드는 PCI Express와 USB 2.0을 기반으로 PC 카드의 후속으로 개발된 확장 카드 규격으로, 높은 대역폭을 제공했지만 USB 3.0 등의 등장과 노트북 소형화로 인해 2010년대 이후 거의 사용되지 않으며, 34mm와 54mm 두 가지 폼 팩터를 지원한다.

2. 역사

시간이 지남에 따라 여러 그룹의 사람들이 다양한 컴퓨터 버스 표준을 개발해왔다. 초기에는 중앙 처리 장치(CPU), 메모리, 주변기기가 모두 하나의 버스에 연결되는 단일 버스 구조였으나, 각 장치 간의 속도 차이로 인해 병목 현상이 발생했다. 이를 해결하기 위해 버스는 점차 세분화되었다.

IEEE 버스 아키텍처 표준 위원회(BASC), IEEE 슈퍼버스 연구 단체, 오픈 마이크로프로세서 이니셔티브(OMI), 오픈 마이크로시스템스 이니셔티브(OMI), EISA를 개발한 "갱 오브 나인" 등이 다양한 컴퓨터 버스 표준을 개발했다.

마이크로프로세서의 메모리 버스는 초기에는 버스형 토폴로지가 주류였지만, 메모리 고속화에 따라 채널 형태로 변화했다. 또한, 멀티프로세서 워크스테이션에서 성능 향상을 위해 여러 프로세서와 메모리 간의 동시 통신을 지원하는 크로스바 스위치가 채택되었듯이, 멀티코어 및 메니코어 프로세서 내부에서도 코어, 캐시 메모리, 외부 장치 간의 고속 대용량 전송을 위해 크로스바 스위치나 링 버스가 사용되고 있다.

2.1. 초기 버스 시스템

초창기 컴퓨터는 중앙 처리 장치(CPU), 메모리, 주변 장치가 모두 하나의 버스에 연결되는 단일 버스 구조였다. 초기 호주 CSIRAC 컴퓨터에서는 "디지트 트렁크"라고 불리기도 했다.

초기 컴퓨터 프로그램은 주변 장치가 준비될 때까지 루프에서 기다리는 방식으로 입출력(I/O)를 수행했다. 이는 CPU 시간을 낭비하고 데이터 손실을 유발할 수 있었다. 이를 해결하기 위해 주변 장치가 CPU를 인터럽트하는 방식이 도입되었다. 인터럽트는 CPU가 한 번에 하나의 주변 장치에 대한 코드만 실행할 수 있었기 때문에, 일부 장치가 다른 장치보다 시간이 더 중요했으므로 우선순위를 정해야 했다.

채널 제어기는 특정 버스의 입출력을 처리하는 소형 컴퓨터로, CPU 부하를 줄이고 전반적인 시스템 성능을 향상시키기 위해 도입되었다. IBM은 1958년 IBM 709에 이를 처음 도입했으며, 이후 IBM 플랫폼의 일반적인 기능이 되었다.

--
이후 컴퓨터 프로그램은 여러 CPU에서 공통으로 사용하는 메모리를 공유하기 시작했다. 이 메모리 버스에 대한 접근 권한도 우선순위가 지정되어야 했다. 인터럽트 또는 버스 접근 권한의 우선순위를 지정하는 간단한 방법은 데이지 체인을 사용하는 것이었다.

디지털 이큅먼트 코퍼레이션(DEC)은 주변 장치를 메모리 버스에 매핑하여 입출력 장치가 메모리 위치처럼 보이게 했다. 이는 1969년경 PDP-11유니버스에서 구현되었다.

초기 마이크로컴퓨터 버스 시스템은 CPU의 핀에 직접 연결된 수동형 시스템이었다. 메모리와 기타 장치는 CPU가 사용하는 것과 동일한 주소 및 데이터 핀을 사용하여 버스에 병렬로 연결되었다. 그럼에도 불구하고, 장치는 별도의 CPU 핀에서 신호를 보내 CPU를 인터럽트했다.

이러한 단순한 버스 시스템은 범용 컴퓨터에 사용될 때 몇 가지 단점이 있었다. 첫째, 버스의 모든 장비는 단일 클럭을 공유하므로 동일한 속도로 통신해야 했다. 둘째, CPU 속도를 높이는 것은 모든 장치의 속도도 증가해야 했기 때문에 어려웠다. 셋째, 이러한 버스 시스템은 일반적인 기성품 장비로 구성할 때 구성하기도 어려웠다.

2.2. 2세대 버스 시스템

2세대 버스 시스템은 NuBus와 같이, 컴퓨터를 CPU와 메모리가 있는 부분과 주변 장치가 있는 부분으로 나누었다. '버스 컨트롤러'가 CPU 측에서 주변 장치 측으로 데이터를 전달하여 CPU의 통신 부담을 줄였다. 이로써 CPU와 메모리는 주변 장치 버스와 별도로 발전할 수 있었고, 버스상의 장치들은 CPU 개입 없이 서로 통신하여 성능이 향상되었다. 이러한 버스는 데이터 경로 크기를 16비트 또는 32비트 병렬 버스로 확장하고, 소프트웨어 설정(플러그 앤 플레이)을 추가하여 장치 구성을 간편하게 했다.

하지만 이 시스템도 모든 장치가 동일한 속도로 통신해야 했다. CPU와 메모리의 속도는 계속 빨라졌지만, 버스 속도는 그만큼 빠르지 않아 시스템 성능의 병목 현상이 발생했다. 특히 비디오 카드의 성능이 향상되면서 PCI 버스조차 이를 감당하기 어려워졌고, AGP와 같은 전용 버스가 등장했다. 2004년에는 AGP도 하이엔드 비디오 카드와 주변 장치의 성능을 따라가지 못해 PCI 익스프레스 버스로 대체되었다.

2.3. 3세대 버스 시스템

2001년경부터 HyperTransport 및 InfiniBand를 포함하는 "3세대" 버스가 시장에 등장했다. 3세대 버스는 물리적 연결 측면에서 매우 유연하여 내부 버스뿐만 아니라 서로 다른 시스템을 연결하는 데에도 사용할 수 있다. 이로 인해 서로 다른 요청을 처리할 때 복잡한 문제가 발생할 수 있으므로, 이러한 시스템에 대한 많은 작업은 하드웨어 자체가 아닌 소프트웨어 설계와 관련이 있다. 일반적으로 이러한 3세대 버스는 초기 시스템보다 더 높은 프로토콜 오버헤드가 필요하지만, 여러 장치가 한 번에 버스를 사용할 수 있도록 하여 초기 버스의 개념보다 네트워크처럼 보이는 경향이 있다.

Wishbone과 같은 버스는 컴퓨터 설계에서 법적 및 특허 제약을 더욱 제거하기 위해 오픈 소스 하드웨어 운동에 의해 개발되었다.

Compute Express Link (CXL)는 차세대 데이터 센터 성능을 가속화하기 위해 설계된 고속 CPU-장치 및 CPU-메모리용 오픈 표준 상호 연결이다.

3. 버스의 종류

컴퓨터에서 버스는 여러 장치들이 하나의 통신 경로를 공유하는 구조를 의미하며, 이는 '버스형 토폴로지'에서 유래되었다. 채널은 주로 메모리와 입출력 장치 간의 통신 경로를 가리키는 용어로 사용된다.

초기 컴퓨터에서는 단순한 아키텍처로 인해 각 요소가 단일 버스에 연결되었다. 예를 들어, 썬 마이크로시스템즈의 초기 워크스테이션은 VME 버스나 멀티버스를 사용했다. 그러나 컴퓨터 성능 향상에 따라 CPU와 각 장치를 연결하는 버스의 전송 용량도 함께 발전해야 했고, 이에 따라 새로운 버스들이 등장했다.

마이크로프로세서의 메모리 버스도 초기에는 버스형 토폴로지가 주류였지만, 메모리 고속화에 따라 채널 방식으로 전환되고 있다. 또한, 멀티프로세서 워크스테이션에서 여러 프로세서와 메모리 간의 다대다 동시 통신을 위해 크로스바 스위치가 채택되었듯이, 멀티코어나 메니코어를 갖춘 최신 고성능 마이크로프로세서 내부에서도 코어, 캐시 메모리, 외부 장치와의 고속 대용량 전송을 위해 크로스바 스위치나 링 버스가 사용되고 있다.

버스는 크게 데이터를 병렬로 전송하는 병렬 버스와 직렬로 전송하는 직렬 버스로 나뉜다.

* 병렬 버스: 여러 비트를 동시에 여러 통신로로 전송한다. 클럭 신호 전용선이 데이터 선과 함께 설치되어 데이터 복조에 사용된다. 하지만 신호선 수가 많아 고속 전송에는 적합하지 않다.
* 직렬 버스: 데이터를 1비트씩 순서대로 전송한다. 클럭 신호는 데이터 신호에 중첩되어 전송되며, 통신 선로 수가 적어 고주파 신호를 다루기 쉽다.

데이터 전송 속도가 증가하면서 병렬 버스의 문제점을 극복하기 위해 직렬 버스가 더 많이 사용되고 있다. USB, FireWire, SATA 등이 직렬 버스의 예시이다.

--

병렬 버스의 예:

👆
좌우로 밀어서 보기
버스 이름설명
아수스 미디어 버스일부 아수스 소켓 7 마더보드에서 사용되는 독점 버스
CAMAC계측 시스템용
EISA
ISA
LPC
MBus
MCA
멀티버스산업 시스템용
누버스IEEE 1196
OPTi 로컬 버스초기 인텔 80486 마더보드에서 사용
PCI기존 PCI
PATA하드 디스크 드라이브, 광 디스크 드라이브, 테이프 드라이브 주변 장치 부착 버스
S-100 버스알테어 8800 및 유사한 마이크로컴퓨터에서 사용
SBusIEEE 1496
SS-50 버스
런웨이 버스휴렛 팩커드가 PA-RISC 마이크로프로세서 제품군에 사용하기 위해 개발한 독점적인 전면 버스 CPU
GSC/HSC휴렛 팩커드가 PA-RISC 마이크로프로세서 제품군에 사용하기 위해 개발한 독점적인 주변 장치 버스
HP 정밀 버스휴렛 팩커드가 HP3000 컴퓨터 제품군에 사용하기 위해 개발한 독점 버스
STEbus
STD 버스STD-80 [8비트] 및 STD32 [16/32비트]용
유니버스디지털 이큅먼트 코퍼레이션PDP-11 및 초기 VAX 컴퓨터에 대해 개발한 독점 버스
Q-버스디지털 이큅먼트 코퍼레이션이 PDP 및 후기 VAX 컴퓨터에 대해 개발한 독점 버스
VLB
VME버스VERSAmodule 유로카드 버스
PC/104
PC/104-Plus
PCI-104
PCI/104-Express
PCI/104
조로 II 및 조로 III아미가 컴퓨터 시스템에서 사용


직렬 버스의 예:

* 하이퍼트랜스포트
* I²C
* I3C (버스)
* SLIMbus
* PCIe
* SATA
* SPI 버스
* UNI/O
* SMBus
* Advanced eXtensible Interface
* M-PHY
* RS-232C
* EIA-485
* IEEE 1394
* USB
* 1-Wire
* HIPPI 고성능 병렬 인터페이스
* IEEE-488
* PC 카드
* CAN 버스
* Modbus
* ARINC 429
* MIL-STD-1553
* IEEE 1355
* Camera Link
* eSATA
* ExpressCard
* 썬더볼트
* 퓨처버스
* 인피니밴드
* PCI 익스프레스 외부 케이블
* 퀵링
* 확장 가능한 일관성 인터페이스
* SCSI
* SAS
* 썬더볼트

3.1. 주소 버스 (Address Bus)

프로세서 또는 DMA 지원 장치가 메모리 위치를 읽거나 쓰기 위해 해당 메모리 위치를 지정하는 데 사용되는 것이 주소 버스이다. 주소 버스의 너비는 시스템이 주소를 지정할 수 있는 메모리의 양을 결정한다. 예를 들어, 32비트 주소 버스를 가진 시스템은 232 (4,294,967,296)개의 메모리 위치를 주소 지정할 수 있다. 각 메모리 위치가 1바이트를 저장하는 경우, 주소 지정 가능한 메모리 공간은 4GB이다.

초창기 프로세서는 주소 폭의 각 비트에 대해 전선을 사용했다. 예를 들어, 16비트 주소 버스는 버스를 구성하는 16개의 물리적 전선을 가졌다. 버스가 넓어지고 길어짐에 따라 이 방식은 칩 핀과 보드 트레이스 수 측면에서 비용이 많이 들게 되었다. 모스텍 4096 DRAM을 시작으로, 멀티플렉서를 사용한 주소 멀티플렉싱이 보편화되었다. 멀티플렉싱된 주소 방식에서는 주소가 두 개의 동일한 부분으로 번갈아 가며 버스 사이클에 전송된다. 이는 메모리에 연결하는 데 필요한 주소 버스 신호의 수를 절반으로 줄인다. 예를 들어, 32비트 주소 버스는 16개의 라인을 사용하고 메모리 주소의 첫 번째 절반을 전송한 다음 즉시 메모리 주소의 두 번째 절반을 전송하여 구현할 수 있다.

일반적으로 제어 버스에 두 개의 추가 핀(RAS 및 CAS)이 사용되어 DRAM에 주소 버스가 현재 메모리 주소의 첫 번째 절반을 전송하는지 또는 두 번째 절반을 전송하는지 알려준다. 개별 바이트에 접근하려면 종종 전체 버스 폭(워드)을 한 번에 읽거나 써야 한다. 이러한 경우 주소 버스의 최하위 비트가 구현되지 않을 수도 있으며, 대신 전송된 전체 워드에서 필요한 개별 바이트를 분리하는 것은 제어 장치의 책임이다. 예를 들어, 최하위 두 비트가 없어 이 버스를 정렬된 32비트 전송으로 제한하는 VESA 로컬 버스가 이에 해당한다.

과거에는 워드만 주소 지정할 수 있는 컴퓨터, 즉 워드 머신의 예도 있었다.

3.2. 데이터 버스 (Data Bus)

데이터 버스는 CPU, 메모리, 입출력 장치 간에 데이터를 전송하는 데 사용되는 선이다. 기본적으로 양방향 통신을 하며, S100 버스처럼 컴퓨터→주변 기기, 주변 기기→컴퓨터로 데이터 전송 방향을 나누는 버스도 있다. 데이터 버스 폭은 사용되는 선의 수를 의미한다.

대부분의 마이크로컴퓨터는 양방향 데이터 버스를 사용하여 동일한 와이어로 다른 시간에 입력과 출력을 처리한다. 일부 프로세서는 주소 버스, 데이터 버스, 제어 버스 각각에 전용 와이어를 사용하기도 한다. 예를 들어, 64핀 STEbus는 8비트 데이터 버스에 8개, 20비트 주소 버스에 20개, 제어 버스에 21개, 전원 버스에 15개의 물리적 와이어를 사용한다.

버스 멀티플렉싱은 더 적은 수의 와이어를 필요로 하여 초기 마이크로프로세서 및 DRAM 칩의 비용을 절감하는 데 기여했다. 주소 버스 핀을 데이터 버스 핀으로 재사용하는 방식도 있는데, 이는 컨벤셔널 PCI 및 8086에서 사용되었다. 데이터 버스는 메모리용과 입출력용 핀을 공유하거나 독립적으로 사용하기도 한다.

3.3. 제어 버스 (Control Bus)

제어 버스라고도 한다.

주소 버스나 데이터 버스를 통해 실제 입출력을 수행하는 타이밍이나, 그 외 CPU와 외부 간에 필요한 제어 정보를 주고받는 신호선이다. 입력과 출력은 용도에 따라 다르다.

예를 들어, 각 버스에 유효한 데이터가 실려 있다는 것을 나타낸다. 제어 신호의 에지(변화점)에서 실제 전송 동작이 이루어진다. 예를 들어, Z80에서는 MREQ 핀이 활성화됨으로써 메모리와의 전송임을 나타내고, RD 핀은 CPU로의 입력(읽기), WR 핀은 CPU로부터의 출력(쓰기) 시에 활성화된다.

3.4. 메모리 버스 (Memory Bus)

메모리 버스는 주 기억 장치를 메모리 컨트롤러에 연결하는 컴퓨터 시스템의 버스이다. 원래는 VME버스S-100 버스와 같은 범용 버스가 사용되었지만, 지연 시간을 줄이기 위해 최신 메모리 버스는 DRAM 칩에 직접 연결되도록 설계되었으며, 따라서 JEDEC와 같은 칩 표준 기구에서 설계한다. 예시로는 다양한 세대의 SDRAM, SLDRAM 및 RDRAM과 같은 직렬 지점간 버스가 있다. 예외적으로, 영향을 최소화하도록 신중하게 설계되었음에도 불구하고, 더 높은 지연 시간으로 인해 완전 버퍼 DIMM이 비판을 받았다.

3.5. 내부 버스와 외부 버스

내부 버스는 기기 내부의 구성 요소를 연결하며, 외부 버스는 외부 기기와 연결한다. 이 분류는 마이크로프로세서, 컴퓨터 내부 기판(마더보드 등), 컴퓨터 장치의 케이스 등 시점을 어디에 두느냐에 따라 달라진다. 위치를 명시한 "CPU 내부 버스"와 같은 표현이나, 제조사의 "표준 기기"와 "확장 기기"와 같은 상업 전략상의 분류에서 확장 버스와 같이 불리는 것도 있다.

--

3.6. 직렬 버스 (Serial Bus)와 병렬 버스 (Parallel Bus)

버스(컴퓨팅)는 여러 가닥의 전선으로 데이터 워드를 병렬로 전송하는 병렬 버스와 비트 직렬 형태로 데이터를 전송하는 직렬 버스로 나뉜다.

직렬 버스는 데이터를 1비트씩 순서대로 전송한다. 일반적으로 클록 신호선은 존재하지 않으며, 수신 측에서 복조에 필요한 클록 타이밍은 데이터 신호에 중첩하여 보낸다. 통신 선로의 수가 적으면 실드를 충실하게 하거나 평형 연결도 비교적 쉬워지기 때문에 고주파 신호를 다루기 쉽다. 여러 통신 선로에서는 서로의 신호 간 타이밍이 어긋나는 타이밍 스큐(timing skew) 문제가 발생하지만 직렬화로 회피할 수 있다. 크로스토크(간섭) 문제도 감소한다.

병렬 버스는 여러 비트를 동시에 여러 개의 통신로로 전송한다. 클럭 신호 전용선이 데이터 선과 평행하게 설치되어 수신 측에서 데이터 복조 동기에 사용된다. 신호선의 수가 많으므로 일반적으로 불평형 접속이 채택되며, 쉴드의 부족이나 회선 간 크로스토크, 노선 길이나 LRC 특성의 차이 등으로 인한 스큐 때문에 고속 전송에는 그다지 적합하지 않다.

데이터 전송 속도가 증가함에 따라 병렬 버스를 통한 타이밍 스큐, 전력 소비, 전자파 간섭 및 누화 문제점을 극복하는 것이 점점 더 어려워졌다. 직렬 버스는 전기적 연결이 적음에도 불구하고 본질적으로 타이밍 스큐나 누화가 없기 때문에 병렬 버스보다 더 높은 전체 데이터 전송 속도로 작동할 수 있다. USB, FireWire, SATA가 그 예이다.

3.6.1. 직렬 버스의 예

* 하이퍼트랜스포트
* I²C
* I3C (버스)
* SLIMbus
* PCIe
* SATA
* SPI 버스
* UNI/O
* SMBus
* Advanced eXtensible Interface
* M-PHY
* RS-232C
* EIA-485
* IEEE 1394
* USB
* 1-Wire

3.6.2. 병렬 버스의 예

병렬 버스는 여러 가닥의 전선으로 데이터 워드를 병렬로 전송하는 버스이다. 직렬 버스가 1비트씩 데이터를 전송하는 데 반해, 병렬 버스는 원본 데이터 자체 또는 원본 데이터에서 추출한 여러 비트를 묶어 동시에 여러 개의 통신로로 정보를 전송한다. 클럭 신호의 전용선이 데이터 선과 평행하게 설치되어 수신 측에서 데이터 복조의 동기에 사용된다.

신호선의 수가 많으므로 일반적으로 불평형 접속이 채택되며, 쉴드의 부족이나 회선 간의 크로스토크, 노선 길이 · LRC 특성의 차이 등으로 인한 스큐 때문에 고속 전송에는 그다지 적합하지 않다. 비트 수, 즉 평행하는 회선 수는 8, 16, 32가 많다.

컴퓨터에서 사용되는 데이터 버스나 주소 버스에 채택된 예가 많으며, 외부 장치를 연결하는 버스로도 사용된다. GPIB, IDE/ (패러렐) ATA (Advanced Technology Attachment), SCSI (Small Computer System Interface), PCI (Peripheral Component Interconnect) 등이 대표적이다. 고속화에 한계가 있기 때문에 PCI의 개량판 PCI Express나 패러렐 ATA의 개량판 시리얼 ATA에서는 데이터 라인이 시리얼 버스가 되었다.

다음은 병렬 버스의 예시이다.

* 아수스 미디어 버스(Asus Media Bus): 일부 아수스(Asus) 소켓 7(Socket 7) 마더보드에서 사용되는 독점 버스이다.
* 컴퓨터 자동 측정 및 제어(Computer Automated Measurement and Control, CAMAC): 계측 시스템용이다.
* 확장 ISA(Extended ISA, EISA)
* 산업 표준 구조(Industry Standard Architecture, ISA)
* 로우 핀 카운트(Low Pin Count, LPC)
* MBus
* 마이크로채널(MicroChannel, MCA)
* 멀티버스(Multibus): 산업 시스템용이다.
* 누버스(NuBus) 또는 IEEE 1196
* OPTi 로컬 버스(OPTi local bus): 초기 인텔 80486(Intel 80486) 마더보드에서 사용되었다.
* 주변 구성 요소 상호 연결(Peripheral Component Interconnect, PCI) 또는 기존 PCI
* 병렬 ATA(Parallel ATA, PATA, IDE, EIDE, ATAPI 등으로도 알려짐): 하드 디스크 드라이브, 광 디스크 드라이브, 테이프 드라이브 주변 장치 부착 버스이다.
* S-100 버스(S-100 bus) 또는 IEEE 696: 알테어 8800(Altair 8800) 및 유사한 마이크로컴퓨터에서 사용되었다.
* SBus 또는 IEEE 1496
* SS-50 버스(SS-50 Bus)
* 런웨이 버스(Runway bus): 휴렛 팩커드(Hewlett-Packard)가 PA-RISC 마이크로프로세서 제품군에 사용하기 위해 개발한 독점적인 전면 버스 CPU이다.
* GSC 버스(GSC/HSC): 휴렛 팩커드(Hewlett-Packard)가 PA-RISC 마이크로프로세서 제품군에 사용하기 위해 개발한 독점적인 주변 장치 버스이다.
* HP 정밀 버스(Precision Bus): 휴렛 팩커드(Hewlett-Packard)가 HP3000 컴퓨터 제품군에 사용하기 위해 개발한 독점 버스이다.
* STEbus
* STD 버스(STD Bus): (STD-80 [8비트] 및 STD32 [16/32비트]용)
* 유니버스(Unibus): 디지털 이큅먼트 코퍼레이션(Digital Equipment Corporation)이 PDP-11 및 초기 VAX 컴퓨터에 대해 개발한 독점 버스이다.
* Q-버스(Q-Bus): 디지털 이큅먼트 코퍼레이션(Digital Equipment Corporation)이 프로그래밍된 데이터 프로세서(Programmed Data Processor, PDP) 및 후기 VAX 컴퓨터에 대해 개발한 독점 버스이다.
* VESA 로컬 버스(VESA Local Bus, VLB, VL-버스)
* VME버스(VMEbus): VERSAmodule 유로카드 버스
* PC/104
* PC/104-Plus
* PCI-104
* PCI/104-Express
* PCI/104
* 조로 II(Zorro II) 및 조로 III(Zorro III): 아미가(Amiga) 컴퓨터 시스템에서 사용되었다.

4. 버스 제어

버스형 토폴로지를 사용하는 버스에서는 여러 개의 송신 회로가 존재하기 때문에 동시에 송신을 하지 않도록 전송로에 신호를 내보낼 권리를 조정하는 회로가 설치되는 것이 일반적이다. 이러한 회로는 버스 아비터라고 불리며, 버스 아비트레이션을 수행한다. 조정 회로를 설치하지 않고 버스의 사용 권한을 각 송신 회로에 순서대로 부여하는 방식도 있지만, 버스의 전송 효율은 떨어진다.

5. 신호의 열화

--
컴퓨터에서 하나의 신호선·통신선에 여러 개의 장치가 연결되는 구조인 "버스형 토폴로지"에서는, 여러 송수신 회로의 접속선이나 커넥터가 "스텁(stub)"이라 불리는 인입 부분을 형성하여 신호 파형이 열화될 수 있다. 만약 중간의 커넥터가 빈 채로 방치되면 커넥터의 인입선 부분에서 반사가 발생한다.

6. 주요 컴퓨터용 버스

* S-100 버스 - 알테어 8800에 채용되었으며, 이후 IEEE-696 표준이 되었다.
* VME - 68000용 범용 버스로, 워크스테이션에서 많이 채용되었다. 이후 IEEE 1014-1987 표준이 되었다.
* SCSI - 이전의 SASI를 기반으로 개발되었으며, "SCSI"로 약칭된다.
* ISA - PC/AT에 채용되었다.
* C 버스 - 일본전기PC-9800 시리즈의 확장 버스이다.
* 누버스 - 초기의 애플이나 NeXT에 채용되었다.
* VL 버스 - ISA를 대체하는 그래픽스용 버스이다.
* MCA - IBM이 개발한 ISA 버스의 후속 모델이다.
* EISA - MCA에 대항하여 제정되었다.
* SBus - SPARC용 확장 버스로, VME 버스에서 대체되었으며, IEEE 1496 표준이 되었다.
* PCI - 인텔의 제안으로 광범위하게 보급된 범용 확장 버스이다.
* FSB - 인텔의 CPU 버스로, 고속화에 따라 명칭도 변화했다.
* 다이렉트 램버스 - 램버스사가 설계한 RDRAM 전용 메모리 인터페이스 버스이다.
* 병렬 ATA - 스토리지용 버스이며, 후속 모델인 직렬 ATA는 스타형 토폴로지를 사용한다.
* USB - 초기에는 레거시 대체가 목적이었다.
* IEEE 1394 - 애플의 파이어와이어를 규격화한 것으로, i.LINK라고도 한다.
* 낮은 핀 수 - ISA의 대체 규격이다.
* 이더넷 - 현재 주류가 되고 있는 규격의 논리상의 네트워크 토폴로지는 버스형이다.
* AGP - PCI 상위 호환의 그래픽스용 고속 버스이다.
* PCI 익스프레스 - PCI, AGP의 후속 모델이다.
* HDMI - DVI에서 발전한 AV 기기용 인터페이스로, 데이지 체인을 통한 버스 연결이 가능하다.
* 썬더볼트 - 인텔과 애플이 공동 개발한 범용 버스로, PCI 익스프레스와 디스플레이포트를 기반으로 한다.
* VMBus - Hyper-V의 가상 머신에서 물리 장치에 접근하기 위한 가상 버스이다.

7. 백플레인 버스

백플레인에 버스를 배치하는 구성이 있는데, 이러한 버스를 백플레인 버스라고 한다.