프론트 사이드 버스

멀티 코어 프로세서 내에서 [[백사이드 버스는 종종 내부적이며, 프론트 사이드 버스는 외부 통신을 위해 사용된다.]] **프론트 사이드 버스**(front-side bus, **FSB**)는 1990년대와 2000년대에 인텔 칩 기반 컴퓨터에서 자주 사용되던 컴퓨터 통신 인터페이스 (버스)이다. EV6 버스는 경쟁사의 AMD CPU에 대해 동일한 기능을 수행했다. 둘 다 일반적으로 중앙 처리 장치(CPU)와 노스브리지로 알려진 메모리 컨트롤러 허브 간에 데이터를 전송한다.page=314 구현에 따라 일부 컴퓨터에는 CPU를 캐시에 연결하는 백사이드 버스가 있을 수도 있다. 이 버스와 연결된 캐시는 프론트 사이드 버스를 통한 시스템 메모리(또는 RAM) 접근보다 빠르다. 프론트 사이드 버스의 속도는 컴퓨터 성능의 중요한 척도로 자주 사용된다. 초기 프론트 사이드 버스 아키텍처는 하이퍼트랜스포트, 퀵패스 인터커넥트, 다이렉트 미디어 인터페이스로 대체되었으며, 이어서 인텔 울트라 패스 인터커넥트(Intel Ultra Path Interconnect)와 AMD의 인피니티 패브릭(Infinity Fabric)이 뒤를 이었다.
# 역사
이 용어는 1990년대 펜티엄 프로 및 펜티엄 II 제품이 발표될 무렵 인텔 코퍼레이션에서 사용되기 시작했다. "프론트 사이드"는 프로세서에서 컴퓨터 시스템의 나머지 부분으로의 외부 인터페이스를 의미하며, 백사이드 버스가 캐시(및 잠재적으로 다른 CPU)를 연결하는 백 사이드와는 대조적이다.access-date= May 28, 2011 프론트 사이드 버스(FSB)는 주로 PC 관련 메인보드(개인용 컴퓨터 및 서버 포함)에서 사용된다. 임베디드 시스템이나 유사한 소형 컴퓨터에서는 거의 사용되지 않는다. FSB 설계는 이전 수십 년간의 단일 시스템 버스 설계에 비해 성능 향상이었지만, 이러한 프론트 사이드 버스는 때때로 "시스템 버스"로 불리기도 한다. 프론트 사이드 버스는 일반적으로 CPU와 나머지 하드웨어를 칩셋을 통해 연결하며, 인텔은 이를 노스브리지와 사우스브리지로 구현했다. PCI 버스(PCI), 가속 그래픽 포트(AGP), 메모리 버스와 같은 다른 버스들도 연결된 장치들 간에 데이터가 흐르도록 칩셋에 연결된다. 이러한 보조 시스템 버스들은 일반적으로 프론트 사이드 버스 클럭에서 파생된 속도로 실행되지만, 반드시 동기화될 필요는 없다. AMD의 Torrenza 이니셔티브에 대응하여 인텔은 FSB CPU 소켓을 서드파티 장치에 개방했다.access-date= May 28, 2011 베이징에서 열린 인텔 개발자 포럼에서 2007년 봄에 발표되기 전까지 인텔은 FSB에 대한 접근 권한을 매우 엄격하게 제한하여 인텔 프로세서만 CPU 소켓에 허용했다. 첫 번째 예는 인텔-자일링스-Nallatechaccess-date= June 14, 2011와 인텔-알테라-XtremeData(2008년 출시) 간의 협력 결과인 FPGA 코프로세서였다.url-status= deadaccess-date= May 28, 2011access-date= June 14, 2011
# 관련 부품 속도
펜티엄 II/III 시대의 일반적인 칩셋 레이아웃
## CPU
프로세서(CPU)가 작동하는 진동수는 경우에 따라 프론트 사이드 버스(FSB) 속도에 클럭 승수를 적용하여 결정된다. 예를 들어, 3200 MHz로 실행되는 프로세서는 400 MHz FSB를 사용할 수 있다. 이는 8의 내부 클럭 배율 설정(버스/코어 비율이라고도 함)이 있다는 의미이다. 즉, CPU는 프론트 사이드 버스 주파수의 8배로 실행되도록 설정된다: 400 MHz × 8 = 3200 MHz. 다른 CPU 속도는 FSB 주파수 또는 CPU 배율을 변경하여 달성되며, 이를 오버클럭 또는 언더클럭이라고 한다.
## 메모리
FSB 속도 설정은 시스템이 사용해야 하는 메모리의 속도 등급과 직접적으로 관련된다. 메모리 버스는 노스브리지와 RAM을 연결하며, 프론트 사이드 버스가 CPU와 노스브리지를 연결하는 것과 같다. 종종 이 두 버스는 동일한 주파수로 작동해야 한다. 대부분의 경우 프론트 사이드 버스를 450 MHz로 늘리는 것은 메모리도 450 MHz로 실행한다는 것을 의미한다. 최신 시스템에서는 "4:5"와 같은 메모리 비율을 볼 수 있다. 이 상황에서 메모리는 FSB보다 5/4배 빠르게 실행되며, 이는 400 MHz 버스가 500 MHz의 메모리로 실행될 수 있음을 의미한다. 이를 종종 '비동기' 시스템이라고 부른다. CPU 및 시스템 아키텍처의 차이로 인해 다른 FSB-메모리 비율에서 전체 시스템 성능은 예상치 못한 방식으로 달라질 수 있다. 각 요소에 대해 소량의 작업을 수행하는 이미지, 오디오, 비디오, 게임, FPGA 합성 및 과학 응용 프로그램에서 FSB 속도는 주요 성능 문제가 된다. 느린 FSB는 CPU가 시스템 메모리에서 데이터가 도착하기를 기다리는 데 상당한 시간을 소비하게 한다. 그러나 각 요소를 포함하는 계산이 더 복잡할 경우 프로세서는 이를 수행하는 데 더 많은 시간을 소비하게 되므로 메모리 접근 속도가 줄어들어 FSB가 속도를 유지할 수 있게 된다.
## 주변 장치 버스
메모리 버스와 유사하게 PCI 및 AGP 버스도 프론트 사이드 버스와 비동기적으로 실행될 수 있다. 이전 시스템에서는 이러한 버스가 프론트 사이드 버스 주파수의 설정된 비율로 작동했다. 이 비율은 바이오스에 의해 설정되었다. 최신 시스템에서는 PCI, AGP 및 PCI 익스프레스 주변 장치 버스가 종종 자체 클럭 신호를 수신하여 타이밍에 대한 프론트 사이드 버스 의존성을 제거한다.
## 오버클럭
오버클럭 오버클럭은 부품이 실행되도록 설정된 주파수를 조작하고, 필요한 경우 더 높은 주파수에서 더 안정적으로 작동하도록 부품에 전송되는 전압을 수정하여 컴퓨터 부품이 기본 성능 수준을 초과하여 작동하게 하는 방법이다. 많은 메인보드는 사용자가 점퍼 또는 바이오스 설정을 변경하여 클럭 배율 및 FSB 설정을 수동으로 설정할 수 있도록 한다. 거의 모든 CPU 제조업체는 이제 미리 설정된 배율 설정을 칩에 "잠금"한다. 일부 잠긴 CPU는 잠금 해제할 수 있다. 예를 들어, 일부 AMD 애슬론 프로세서는 CPU 표면의 전기 접점을 연결하여 잠금 해제할 수 있다. AMD와 인텔의 일부 다른 프로세서는 공장에서 잠금 해제되어 이 기능 때문에 최종 사용자와 소매업체에 의해 "매니아급" 프로세서로 분류된다. 모든 프로세서의 경우 FSB 속도를 높이면 CPU와 노스브리지 간의 레이턴시를 줄여 처리 속도를 높일 수 있다. 이러한 행위는 부품을 사양 이상으로 사용하게 하며, 불안정한 동작, 과열 또는 조기 고장을 유발할 수 있다. 컴퓨터가 정상적으로 작동하는 것처럼 보여도, 과부하 시 문제가 발생할 수 있다. 휴렛 팩커드나 델과 같은 소매점이나 제조업체에서 구입한 대부분의 PC는 불안정한 동작이나 고장 가능성 때문에 사용자가 배율 또는 FSB 설정을 변경할 수 있도록 허용하지 않는다. 맞춤형 기기를 만들기 위해 별도로 구매한 메인보드는 사용자가 PC의 바이오스에서 배율 및 FSB 설정을 편집할 수 있도록 허용할 가능성이 더 높다.
# 진화
프론트 사이드 버스는 처음 설계될 때 높은 유연성과 낮은 비용의 장점을 가지고 있었다. 간단한 대칭형 다중 처리 시스템은 공유 FSB에 여러 개의 CPU를 배치하지만, 병목 현상으로 인해 성능이 선형적으로 확장될 수 없었다. 프론트 사이드 버스는 2008년경까지 모든 인텔 아톰, 셀러론, 펜티엄, Core 2, 제온 프로세서 모델에서 사용되었으며title=Intel X38 Tango - is High FSB Overclocking Worth It? 2009년에는 제거되었다.date=2 June 2009 원래 이 버스는 모든 시스템 장치와 CPU의 중앙 연결 지점이었다. 더 빠른 CPU의 잠재력은 명령과 데이터를 실행할 수 있는 만큼 빠르게 가져올 수 없다면 낭비된다. CPU는 주 메모리에서 데이터를 읽거나 쓰는 것을 기다리는 데 상당한 시간을 유휴 상태로 보낼 수 있으며, 따라서 고성능 프로세서는 메모리에 대한 높은 대역폭과 낮은 레이턴시 액세스를 필요로 한다. 프론트 사이드 버스는 AMD에 의해 시스템 성능을 제한하는 오래되고 느린 기술이라고 비판받았다.url-status= dead 더 현대적인 설계는 AMD의 하이퍼트랜스포트 및 인텔의 DMI 2.0 또는 퀵패스 인터커넥트(QPI)와 같은 점대점 및 직렬 연결을 사용한다. 이러한 구현은 기존의 노스브리지 대신 CPU에서 시스템 메모리, 고속 주변 장치 및 플랫폼 컨트롤러 허브, 사우스브리지 또는 I/O 컨트롤러로 직접 연결되는 링크를 선호한다.access-date= June 14, 2011date=8 September 2009date=2 June 2009 전통적인 아키텍처에서 프론트 사이드 버스는 CPU와 주 메모리를 포함한 시스템의 모든 다른 장치 간의 즉각적인 데이터 링크 역할을 했다. 하이퍼트랜스포트 및 QPI 기반 시스템에서는 CPU에 통합된 메모리 컨트롤러를 통해 시스템 메모리에 독립적으로 액세스하여 하이퍼트랜스포트 또는 QPI 링크의 대역폭을 다른 용도로 사용할 수 있도록 한다. 이는 CPU 설계의 복잡성을 증가시키지만, 더 큰 처리량과 멀티프로세서 시스템에서의 우수한 확장을 제공한다.
# 전송 속도
프론트 사이드 버스의 대역폭 또는 최대 이론적 처리량은 데이터 경로의 폭, 클럭 주파수(초당 사이클) 및 클럭 사이클당 수행하는 데이터 전송 수의 곱으로 결정된다. 예를 들어, 100 MHz 주파수에서 작동하며 사이클당 4회 전송을 수행하는 64-비트(8-바이트) 폭의 FSB는 3200 메가바이트/초(MB/s)의 대역폭을 갖는다: :8 bytes/transfer × 100 MHz × 4 transfers/cycle = 3200 MB/s 클럭 사이클당 전송 횟수는 사용된 기술에 따라 달라진다. 예를 들어, GTL+는 사이클당 1회 전송, EV6는 2회 전송, AGTL+는 4회 전송을 수행한다. 인텔은 사이클당 4회 전송 기술을 쿼드 펌핑이라고 부른다. 많은 제조업체는 프론트 사이드 버스의 주파수를 MHz로 게시하지만, 마케팅 자료에는 종종 이론적인 유효 신호 전송 속도(일반적으로 메가트랜스퍼/초 또는 MT/s로 불림)가 나열된다. 예를 들어, 메인보드(또는 프로세서)의 버스가 200 MHz로 설정되어 있고 클럭 사이클당 4회 전송을 수행하는 경우 FSB는 800 MT/s로 평가된다. 여러 인기 있는 프로세서 세대의 사양은 아래에 나와 있다.
## 인텔 프로세서
{|class="wikitable" ! CPU !! FSB 주파수 (MHz) !! 사이클당 전송 수 !! 버스 폭 !! 전송 속도 (MB/초) |- | 펜티엄 || 50 - 66 || 1 || 64-bit || 400 - 528 |- | Pentium Overdrive || 25 - 66 || 1 || 32 or 64-bit || 200 - 528 |- | 펜티엄 프로 || 60 / 66 || 1 || 64-bit || 480 - 528 |- | Pentium MMX || 60 / 66 || 1 || 64-bit || 480 - 528 |- | Pentium MMX Overdrive || 50 / 60 / 66 || 1 || 64-bit || 400 - 528 |- | 펜티엄 II || 66 / 100 || 1 || 64-bit || 528 / 800 |- | Pentium II Xeon || 100 || 1 || 64-bit || 800 |- | Pentium II Overdrive || 60 / 66 || 1 || 64-bit || 480 - 528 |- | Pentium III || 100 / 133 || 1 || 64-bit || 800 / 1064 |- | Pentium III Xeon || 100 / 133 || 1 || 64-bit || 800 / 1064 |- | Pentium III-M || 100 / 133 || 1 || 64-bit || 800 / 1064 |- | Pentium 4 || 100 / 133 || 4 || 64-bit || 3200 - 4256 |- | Pentium 4-M || 100 || 4 || 64-bit || 3200 |- | Pentium 4 HT || 133 / 200 || 4 || 64-bit || 4256 / 6400 |- | Pentium 4 HT Extreme Edition || 200 / 266 || 4 || 64-bit || 6400 / 8512 |- | Pentium D || 133 / 200 || 4 || 64-bit || 4256 - 6400 |- | Pentium Extreme Edition || 200 / 266 || 4 || 64-bit || 6400 / 8512 |- | Pentium M || 100 / 133 || 4 || 64-bit || 3200 / 4256 |- | Pentium Dual-Core || 200 / 266 || 4 || 64-bit || 6400 / 8512 |- | Pentium Dual-Core Mobile || 133 - 200 || 4 || 64-bit || 6400 - 8512 |- | 셀러론 || 66 - 200 || 1-4 || 64-bit || 528 - 6400 |- | Celeron Mobile || 133 - 200 || 1-4 || 64-bit || 4256 - 6400 |- | Celeron D || 133 || 4 || 64-bit || 4256 |- | Celeron M || 66 - 200 || 1-4 || 64-bit || 528 - 6400 |- | Celeron Dual-Core || 200 || 4 || 64-bit || 6400 |- | Celeron Dual-Core Mobile || 133 - 200 || 4 || 64-bit || 4256 - 6400 |- | Itanium || 133 || 2 || 64-bit || 2133 |- | Itanium 2 || 200 - 333 || 2 || 128-bit || 6400 - 10666 |- | 제온 || 100 - 400 || 4 || 64-bit || 3200 - 12800 |- | Core Solo || 133 / 166 || 4 || 64-bit || 4256 / 5312 |- | Core Duo || 133 / 166 || 4 || 64-bit || 4256 / 5312 |- | Core 2 Solo || 133 - 200 || 4 || 64-bit || 4256 - 6400 |- | Core 2 Duo || 200 - 333 || 4 || 64-bit || 6400 - 10656 |- | Core 2 Duo Mobile || 133 - 266 || 4 || 64-bit || 4256 - 8512 |- | Core 2 Quad || 266 / 333 || 4 || 64-bit || 8512 / 10656 |- | Core 2 Quad Mobile || 266 || 4 || 64-bit || 8512 |- | Core 2 Extreme || 266 - 400 || 4 || 64-bit || 8512 - 12800 |- | Core 2 Extreme Mobile || 200 / 266 || 4 || 64-bit || 6400 / 8512 |- | 인텔 아톰 || 100 - 166 || 4 || 64-bit || 3200 - 5312 |}
## AMD 프로세서
{|class="wikitable" ! CPU !! FSB 주파수 (MHz) !! 사이클당 전송 수 !! 버스 폭 !! 전송 속도 (MB/초) |- | K5 || 50 - 66 || 1 || 64-bit || 400 - 528 |- | K6 || 66 || 1 || 64-bit || 528 |- | K6-II || 66 - 100 || 1 || 64-bit || 528 - 800 |- | K6-III || 66 / 100 || 1 || 64-bit || 528 - 800 |- | 애슬론 || 100 / 133 || 2 || 64-bit || 1600 - 2128 |- | Athlon XP || 100 / 133 / 166 / 200 || 2 || 64-bit || 1600 - 3200 |- | Athlon MP || 100 / 133 || 2 || 64-bit || 1600 - 2128 |- | Mobile Athlon 4 || 100 || 2 || 64-bit || 1600 |- | Athlon XP-M || 100 / 133 || 2 || 64-bit || 1600 - 2128 |- | Duron || 100 / 133 || 2 || 64-bit || 1600 - 2128 |- | Sempron || 166 / 200 || 2 || 64-bit || 2656 - 3200 |}