직관적으로, 병렬 데이터 전송이 직렬 데이터 전송보다 빠르다고 생각할 것입니다. 동시에 많은 비트를 동시에 전송하는 반면 직렬에서는 한 번에 한 비트를 수행합니다.
그렇다면 SATA 인터페이스가 PATA보다 빠르고 PCI-e 장치는 PCI보다 빠르며 직렬 포트는 병렬보다 빠릅니다.
직관적으로, 병렬 데이터 전송이 직렬 데이터 전송보다 빠르다고 생각할 것입니다. 동시에 많은 비트를 동시에 전송하는 반면 직렬에서는 한 번에 한 비트를 수행합니다.
그렇다면 SATA 인터페이스가 PATA보다 빠르고 PCI-e 장치는 PCI보다 빠르며 직렬 포트는 병렬보다 빠릅니다.
답변:
이런 식으로 공식화 할 수 없습니다.
직렬 전송은 동일한 신호 주파수 에서 병렬 전송보다 느립니다 . 병렬 전송을 사용하면 사이클 당 하나의 워드 (예 : 1 바이트 = 8 비트)를 전송할 수 있지만 직렬 전송에서는 일부 (예 : 1 비트) 만 전송할 수 있습니다.
최신 장치가 직렬 전송을 사용하는 이유는 다음과 같습니다.
전송기의 모든 신호 가 동시에 수신기에 도착해야하기 때문에 병렬 전송의 신호 주파수를 제한없이 높일 수 없습니다 . 신호 전송 시간 이 모든 신호 라인에 대해 동일하다는 것을 보장 할 수 없기 때문에 (메인 보드의 다른 경로를 생각할 수 있음) 이는 고주파수에 대해 보장 할 수 없습니다 . 빈도가 높을수록 더 작은 차이가 중요합니다. 따라서 수신기는 모든 신호 라인이 정해질 때까지 기다려야합니다. 분명히 기다리는 것은 전송 속도를 낮 춥니 다.
이 게시물의 또 다른 좋은 점 은 병렬 신호 라인과의 누화 를 고려해야한다는 것 입니다. 주파수가 높을수록 누화가 더 두드러지고 단어가 손상 될 가능성이 높아지고 단어를 다시 전송할 필요가 있습니다. 1
따라서 직렬 전송으로 사이클 당 더 적은 데이터를 전송하더라도 훨씬 더 높은 주파수로 이동하여 순 전송률이 높아집니다.
1 또한 UDMA 케이블 (전송 속도가 증가한 병렬 ATA)에 핀보다 2 배 많은 와이어가있는 이유를 설명합니다 . 누화를 줄이기 위해 모든 두 번째 와이어를 접지했습니다.
문제는 동기화입니다.
병렬로 보낼 때 모든 순간을 정확히 같은 순간에 측정해야합니다. 그 순간의 창 크기가 빨라질수록 점점 작아지고 결국에는 일부 전선이 여전히 안정화 될 수있을 정도로 작아 질 수 있습니다 당신이 시간이 다 떨어지기 전에 다른 사람이 완료되는 동안.
직렬로 전송하면 더 이상 한 줄만 안정화되는 모든 줄에 대해 걱정할 필요가 없습니다. 또한 한 줄을 같은 속도로 10 줄을 추가하는 것보다 10 배 빠르게 안정화시키는 것이 더 비용 효율적입니다.
PCI Express와 같은 일부 기능은 두 가지 이점을 모두 활용하며 병렬 직렬 연결 세트를 수행합니다 (마더 보드의 16x 포트에는 16 개의 직렬 연결이 있음). 그렇게하면 다른 쪽 끝의 컨트롤러가 올바른 순서를 사용하여 데이터의 "패킷"을 다시 정렬 할 수있는 한 각 줄이 다른 줄과 완벽하게 동기화 될 필요는 없습니다.
PCI-Express에 대한 방법 물건을 작품 페이지는 PCI 익스프레스 직렬에서 병렬 PCI 또는 PCI-X보다 더 빠르게 할 수있는 방법에 대한 깊이 아주 좋은 explination 않습니다.
TL; DR 버전 : 고주파수에 도달하면 8 개의 연결보다 2 배 빠른 연결보다 단일 연결을 16 배 빠르게 만드는 것이 더 쉽습니다.
병렬은 본질적으로 느리지 않지만 직렬 통신이하지 못하는 문제를 야기합니다.
그러나 대부분의 가장 빠른 링크는 여전히 병렬입니다. 컴퓨터의 전면 버스는 일반적으로 매우 병렬 적이며 일반적으로 컴퓨터에서 가장 빠른 인터링크 중 하나입니다. 광섬유 연결은 단일 광섬유를 통해 여러 파장을 전달함으로써 매우 평행 할 수 있습니다. 그러나 이것은 비싸므로 일반적이지 않습니다. 기가비트 이더넷의 가장 일반적인 형태는 실제로 단일 와이어에서 250Mbit 이더넷의 4 개의 병렬 채널입니다.
병렬 처리에 의해 가장 두드러진 도전은 "크로스 토크"입니다. 신호 전류가 시작되거나 중지 될 때, 그 옆의 전선에 순간적으로 작은 전류가 유도됩니다. 신호가 빠를수록 더 자주 발생하며 필터링하기가 더 어려워집니다. 병렬 IDE는 리본 케이블의 와이어 수를 두 배로 늘리고 다른 모든 와이어를 접지에 연결하여이 문제를 최소화하려고했습니다. 그러나 그 솔루션은 지금까지만 가능합니다. 긴 케이블, 접힘 및 루프 및 다른 리본 케이블과의 근접성 덕분에 매우 빠른 신호를위한 신뢰할 수없는 솔루션입니다.
그러나 하나의 신호 라인 만 사용한다면 하드웨어가 허용하는 한도 내에서 빠르게 전환 할 수 있습니다. 또한 일부 신호가 다른 신호보다 빠르게 이동하는 미묘한 동기화 문제를 해결합니다.
두 개의 와이어는 이론적으로 항상 두 배 빠르지 만, 추가하는 각 신호 라인은 물리를 미묘하게 복잡하게 만들므로 피하는 것이 좋습니다.
직렬 데이터 전송은 병렬보다 빠르지 않습니다. 더욱 편리하고 개발이 진행되어 장비 장치간에 빠른 외부 직렬 인터페이스를 만들었습니다. 아무도 50 개 이상의 도체가있는 리본 케이블을 다루고 싶지 않습니다.
회로 보드의 칩 사이에서 두 개의 와이어 만 필요한 I2C와 같은 직렬 프로토콜은 수많은 병렬 트레이스를 라우팅하는 것보다 처리하기가 훨씬 쉽습니다.
그러나 컴퓨터 내부에는 병렬 처리를 사용하여 대역폭을 크게 늘리는 예제가 많이 있습니다. 예를 들어, 단어는 메모리에서 한 번에 한 비트 씩 읽지 않습니다. 실제로 캐시는 큰 블록으로 채워집니다. 래스터 디스플레이는 또 다른 예입니다. 여러 메모리 뱅크에 병렬로 액세스하여 픽셀을 더 빠르게 병렬로 가져옵니다. 메모리 대역은 병렬 처리에 크게 좌우됩니다.
Tektronix가 "세계에서 가장 빠른 상용 10 비트 고속 DAC"로 선전 한이 DAC 장치 는 병렬 처리를 많이 사용하여 데이터를 가져옵니다. 320 개의 라인을 통해 DAC로 가져와 2 단계의 멀티플렉싱을 통해 10으로 줄었습니다. 마스터 12GHZ 클럭의 서로 다른 부분에 의해 구동 단일 직렬 입력 라인을 사용하여 세계에서 가장 빠른 10 비트 DAC를 만들 수 있다면 아마도 그럴 것입니다.
병렬은 버스 / 케이블 및 온칩 전송에 유사한 전기 기술을 사용할 수있을 정도로 로직 게이트가 느릴 때 속도를 높이는 확실한 방법이었습니다. 트랜지스터가 허용하는 한 빨리 와이어를 토글하고 있다면 스케일링하는 유일한 방법은 더 많은 와이어를 사용하는 것입니다.
시간이 지남에 따라 무어의 법칙은 전자 기적 제약을 뛰어 넘어 케이블 또는 온보드 버스를 통한 전송이 온칩 속도와 비교하여 병목 현상을 일으켰습니다. OTOH는 속도 불균형으로 인해 끝에서 정교한 처리를 통해 채널을보다 효과적으로 사용할 수 있습니다.
전파 지연이 몇 개의 클럭 순서에 도달하면 반사와 같은 아날로그 효과에 대해 걱정하기 시작합니다. => 경로에 따라 일치하는 임피던스가 필요하며 (특히 커넥터에는 까다로운) 다중 포인트 버스보다 점대 점 와이어를 선호합니다. 그렇기 때문에 SCSI에 터미네이션이 필요했고 USB에 간단한 스플리터 대신 허브가 필요합니다.
더 빠른 속도에서는 와이어를 따라 주어진 순간에 여러 비트가 비행합니다. => 파이프 라인 프로토콜을 사용해야합니다 (인텔의 FSB 프로토콜이 엄청나게 복잡해졌습니다 .PCI와 같은 패킷 프로토콜은이 복잡성에 대한 반응이라고 생각합니다).
또 다른 효과는 신호 흐름 방향을 전환 할 때 여러 주기로 인한 불이익입니다. 따라서 방향 당 전용 와이어를 사용하는 Firewire 및 SATA 및 PCIe가 USB 2.0보다 성능이 뛰어납니다.
유도 잡음 (일명 누화)은 주파수와 함께 올라갑니다. 속도에서 가장 큰 발전은 누화를 극적으로 감소시킨 차동 신호의 채택에서 비롯되었습니다 (수학적으로, 불균형 전하 필드는 R ^ 2로 내려가지만 쌍극자 필드는 R ^ 3으로 내려갑니다).
이것이 바로 "직렬이 병렬보다 빠르다"라는 인상을 초래 한 것으로 생각 합니다. 점프가 너무 커서 1 또는 2 개의 차동 쌍으로 내려갈 수 있으며 LPT 또는 IDE 케이블보다 여전히 빠릅니다 . 케이블에 신호 쌍이 하나만 있으면 누화가 발생하지만 사소한 문제입니다.
와이어 전파 지연은 (길이가 90º 회전, 커넥터 등에서 일치하기 어렵고 다른 도체의 기생 효과 때문에) 길이가 동기화 문제를 일으킨다.
해결책은 모든 수신기에서 조정 가능한 지연을 가지고 시작시 및 / 또는 데이터 자체에서 지속적으로 조정하는 것이 었습니다. 0 또는 1의 줄무늬를 피하기 위해 데이터를 인코딩하면 작은 오버 헤드가 발생하지만 전기적인 이점 (DC 드리프트 방지, 스펙트럼 제어)이 있으며 가장 중요한 것은 클럭 와이어를 완전히 떨어 뜨릴 수 있다는 것입니다 (40 개 이상은 큰 문제가 아닙니다) 직렬 케이블의 경우 2 또는 3 대신 1 또는 2 쌍을 갖는 것이 매우 중요합니다.
우리가 참고 하는 병목 현상에 병렬 처리를 던지는 - 오늘날의 BGA 칩은 핀의 수백 또는 수천, PCB는 점점 더 많은 레이어를 가지고있다. 기존 40 핀 마이크로 컨트롤러 및 2 계층 PCB와 비교해보십시오.
상기 기술의 대부분은 필수적이되었다 모두 병렬 및 직렬 전송. 전선이 길수록 전선 수가 적을수록 더 높은 속도를내는 것이 더 매력적입니다.