왜 어디서나 디지털 직렬 전송이 사용됩니까? 즉, SATA, PCIe, USB


47

SATA, PCIe, USB, SD UHS-II를 살펴보면 링크 / 프로토콜 계층에 약간의 차이가있는 차동 쌍 (보통 8b / 10b 코드)을 사용하여 전송되는 디지털 직렬 비트 스트림이 모두 동일하다는 사실을 알게되었습니다.
왜 그래? 이것이 왜 표준이 되었습니까?
더 나은 심볼 속도를 위해 일부 고급 변조 방법을 많이 사용하는 광범위한 시스템 통신 프로토콜이없는 이유는 무엇입니까? 뭔가 빠졌습니까? 이것은 "직렬 대 병렬"의 문제가 아니라 "디지털 신호 대 변조 된 아날로그"의 문제입니다.


7
어떤 대안이 있습니까?
PlasmaHH

27
글쎄, 병렬이 있었지만 많은 구리와 넓은 케이블이 필요합니다.
Jeroen3

7
물론 DDR이 오늘날에도 여전히 작동하는 방식입니다.
MSalters

10
또한 직렬 케이블 변환기는 전선보다 저렴하기 때문에 전자 제품이 너무 저렴 해지면 프린터 케이블과 병렬로 처리되었습니다.
핫 릭

4
왜 "일부 고급 변조 방법"을 제안하지 않습니까? 그래서 우리는 무슨 의미를 이해하고 "직렬 비트 스트림"과 비교할 수 있습니까?
Ale..chenski

답변:


30

더 나은 심볼 속도를 위해 일부 고급 변조 방법을 많이 사용하는 광범위한 시스템 통신 프로토콜이없는 이유는 무엇입니까?

두 지점 사이의 기본 구리 연결이 "애플리케이션"이 전송하는 데 필요한 데이터 속도를 초과하는 디지털 비트 전송률을 지원하는 경우 표준 차동 고속 ​​신호 이외의 다른 문제가 발생하는 이유는 무엇입니까?

고급 변조 방식은 일반적으로 "채널"의 대역폭이 구리 나 광섬유보다 훨씬 제한된 경우에 수행됩니다.


감사! 정말 좋은 답변이 있었지만 이것은 내가 찾던 것입니다!
artemonster

3
간단한 질문에는 간단한 답변이 필요하지만 원래 질문에 필요한 것보다 더 많은 내용을 다루려는 사람들을 막을 수는 없습니다.
Andy 일명

1
그리고 이것은 좋은 것입니다 :) 나는 다른 정보로부터 많은 정보를 얻었으므로 많은 것을 배웠습니다.
artemonster

69

연쇄 상승의 두 가지 주요 이유가 있습니다.

1) 가능합니다. 저비용 트랜지스터는 현재 10 년 동안 GHz 스위칭을 관리 할 수 ​​있었으며, 그 기능을 사용하고 표준이되기에 충분했습니다.

2) 필요하다. 초고속 데이터를 몇 인치 이상 이동시키려는 경우. 이 거리는 mobo 대 PCI 카드 링크를 배제하기 시작하고 mobo 대 하드 디스크 또는 mobo / settopbox를 배제하여 연결을 표시합니다.

그 이유는 비뚤어지기 때문입니다. 케이블을 따라 여러 병렬 신호를 전송하는 경우 동일한 클럭주기의 작은 부분 내에 도착해야합니다. 이는 클럭 속도를 낮추므로 케이블 너비를 늘려야합니다. 데이터 전송률이 높아짐에 따라 점점 더 부실 해지고 있습니다. 미래에 속도를 올릴 전망은 존재하지 않는 이중 또는 4 배 폭 ATA입니까?

스큐 데몬을 죽이는 방법은 연속입니다. 한 줄은 항상 자체와 동기화되므로 기울어 질 것이 없습니다. 라인은 자체 클럭 된 데이터를 전달합니다. 즉, 클럭 추출을 허용하는 최소 보장 전이 밀도를 제공하는 데이터 코딩 체계 (종종 8b / 10b, 때로는 훨씬 높음)를 사용합니다.

미래의 데이터 전송률 또는 거리가 증가 할 것으로 예상됩니다. 각 세대는 더 빠른 트랜지스터와 더 많은 메디 엄 제작 경험을 제공합니다. 우리는 이것이 1.5Gb / s에서 시작하여 3G로 이동하여 현재 6Gb / s 인 SATA에서 어떻게 작동하는지 보았습니다. 저렴한 케이블이라도 충분히 일관된 임피던스와 합리적인 손실을 제공 할 수 있으며, 주파수 의존 손실을 처리하기 위해 인터페이스 실리콘에 이퀄라이저가 내장되어 있습니다. 광섬유는 매우 오래 사용할 수 있습니다.

높은 데이터 속도를 위해 여러 직렬 링크를 병렬로 작동 할 수 있습니다. 이것은 도체를 병렬로 배치하는 것과 같지 않으며, 클럭 사이클 미만으로 시간을 맞춰야합니다. 이 직렬 레인은 µs 또는 ms 길이 일 수있는 높은 수준의 데이터 프레임 내에서만 일치하면됩니다.

물론 데이터 폭의 이점은 케이블과 커넥터에만 적용되는 것은 아닙니다. 직렬은 커넥터와 칩, 칩 핀아웃 및 칩 실리콘 영역 사이의 PCB 보드 영역에도 도움이됩니다.

나는 이것에 대해 개인적인 견해를 가지고 있습니다. 90 년대부터 소프트웨어 정의 라디오 (SDR)를 작업하는 설계자로서, 나는 Analog Devices와 Xilinx (및 다른 모든 ADC 및 FPGA 회사)와 같은 사람들을 방문했습니다. SATA가 ATA를 대체하기 시작했을 때 멀티 -100MHz ADC와 FPGA 사이에 많은 병렬 차동 연결을 실행하게되었습니다. 마침내 JESD204x를 얻었으므로 이제 몇 개의 직렬 회선으로 컨버터와 FPGA를 연결할 수 있습니다.


7
PCI Express 3 및 4는 128b / 130b 인코딩을 사용합니다.
피터 스미스

11
Nb/(N+2)b사람들이 여기서 사용 하는 명명법 은 무엇입니까 ?
detly

17
@detly 8b / 10b , 64b / 66b는 두 가지 형식의 라인 코드 인코딩입니다. 직렬 통신 컨텍스트에서 라인 인코딩은 Clock-Recovery] ( en.wikipedia.org/wiki/Clock_recovery )를 수행하기 위해 필요합니다 .
Trevor Boyd Smith 12

4
@tolos- 일반 PCB 재료 의 대부분의 풍미에 대한 속도 계수 는 약 50 % (6 in / ns)입니다.
피터 스미스

4
@supercat 여러 레인을 정확히 처리하는 방식이며, 각 레인마다 독립적 인 클럭킹 기능이 있습니다. 데이터는 모든 레인에 걸쳐 프레임으로 구성되어 있습니다. 수신기에 모든 프레임이 있으면 데이터에 대해 작동합니다. 이것은 데이터 프레임의 길이와 관련된 스큐를 허용하며, 대답에서 말했듯이 우리 또는 심지어 ms 일 수 있습니다. 이는 PCIe의 레인 수와 2xHDMI가 고성능 디스플레이로 처리되는 방식의 의미입니다.
Neil_UK

24

널리 사용되지만 다른 예제를 원한다면 1000BASE-T 기가비트 이더넷을 살펴보십시오. 병렬 케이블과 사소한 신호 인코딩을 사용합니다.

대부분의 사람들은 단순하기 때문에 직렬 버스를 사용합니다. 병렬 버스는 더 많은 케이블을 사용하며 긴 케이블에서 높은 데이터 속도로 신호 왜곡을 겪습니다.


9
GbE는 방대한 양의 기존 Cat 5 배선에서 더 많은 데이터를 푸시하는 문제에 돈을 던져서 만들어졌습니다. 새로운 인터페이스가 이전 버전과의 호환성에 대해 염려하지 않고 설계된 경우 아마도 모양이 좋지 않을 것입니다. 10GbE가 새로운 Cat 6a 케이블 링을 설치해야하므로 상용 / 국내 환경에 심각한 영향을 미치지 않는 방법.
보리 맨

10GbE는 케이블 길이 및 / 또는 품질에 따라 cat5e 또는 cat5에서 계속 작동 할 수 있습니다.
user3549596

12

다른 훌륭한 답변을 추가하려면 :

다른 답변에서 언급 된 문제 (특히, 병렬 신호 간 왜곡 및 케이블의 추가 전선 비용)는 신호 거리가 증가함에 따라 증가합니다. 따라서, 직렬이 병렬보다 우수 해지는 거리가 있으며, 데이터 속도가 증가함에 따라 거리가 감소하고있다.

병렬 데이터 전송은 여전히 ​​칩 내부와 회로 보드 내의 대부분의 신호에서 발생합니다. 그러나 외부 주변 장치, 심지어 내부 드라이브에 필요한 거리가 너무 멀어서 병렬 인터페이스가 실용적으로 유지 되기에는 너무 빠릅니다. 따라서 최종 사용자에게 노출 될 신호는 대부분 직렬입니다.


4
고속 병렬 시그널링의 가장 좋은 예는 특히 PC의 RAM 메모리입니다.
Jan Dorniak

탁월한 대답은 공간 영역에서 시간 동기화의 근본 문제를 직접 지적합니다. 한 가지 주목할 점은, 직렬 링크에 여전히 2 개 이상의 심볼을 가질 수 있으므로 변조를 사용하여 보드 당 더 많은 비트를 인코딩함으로써 병렬 통신의 이점을 얻을 수 있다는 것입니다
crasic

@ JanDorniak, DDR * 메모리에는 동기화에 사용되는 데이터 스트로브 비트가 있다는 점에 주목할 가치가 있습니다. 이를 통해 넓은 버스를 여러 개의 작은 버스로 나눌 수 있습니다. 단일 32 비트 버스를 라우팅하는 것보다 여러 개의 8 비트 병렬 버스를 라우팅하는 것이 더 쉽습니다.
Caleb Reister

@CalebReister는 그것을 몰랐습니다. 여전히 평행입니다. 개인적으로 DDR4가 삽입 된 슬롯에 따라 최신 PC가 작동하거나 작동하지 않는 상황이있었습니다. UEFI로 인해 대기 시간이 단축되고 메모리가 가능해졌습니다.
Jan Dorniak

11

고급 변조 기술을 사용하려면 아날로그 신호를 송수신해야합니다. 수백 MHz에서 실행되는 ADC 및 DAC는 비용이 많이 들고 약간의 전력을 소비하는 경향이 있습니다. 디코딩에 필요한 신호 처리는 실리콘 및 전력면에서 비용이 많이 든다.

바이너리 신호를 지원할 수있는 더 나은 통신 매체를 만드는 것이 더 저렴합니다.


1
좋은 지적. спасибо за ответ :)
artemonster

8

직렬 비트 스트림이 왜 그렇게 일반화 되었습니까?

직렬 링크를 사용하면 연결의 물리적 크기가 줄어든다는 이점이 있습니다. 현대의 집적 회로 아키텍처에는 핀이 너무 많아서 설계에 대한 물리적 상호 연결 요구를 최소화해야합니다. 이로 인해 직렬 프로토콜을 사용하여 이러한 회로의 인터페이스에서 최고 속도로 작동하는 회로가 개발되었습니다. 같은 이유로, 다른 데이터 링크의 다른 곳에서 물리적 상호 연결 요구를 최소화하는 것이 당연합니다.

이러한 종류의 기술에 대한 원래 수요는 광섬유 데이터 전송 설계에서도 기원을 가질 수 있습니다.

고속 링크를 지원하는 기술이 널리 보급되면 직렬 연결의 물리적 크기가 병렬 연결보다 훨씬 작기 때문에 다른 여러 곳에 적용하는 것이 당연했습니다.

더 나은 심볼 속도를 위해 일부 고급 변조 방법을 많이 사용하는 광범위한 시스템 통신 프로토콜이없는 이유는 무엇입니까?

인코딩 레벨에서, 디지털 통신을위한 코딩 방식은 NRZ (Non-Return to Zero) , 약간 더 복잡한 라인 코드 (예 : 8B / 10B) 또는 QAM (Quadrature Amplitude Modulation) 과 같이 훨씬 더 복잡 할 수 있습니다.

복잡성은 비용을 추가하지만 선택은 궁극적으로 정보 이론과 링크의 용량 제한에 의존하는 요소에 따라 달라집니다. Shannon -Hartley 정리Shannon 법칙 은 채널의 최대 용량을 설명합니다 ( "연결"또는 "링크"라고 생각).

비트 / 초의 최대 용량 = 대역폭 * Log2 (1 + 신호 / 노이즈)

무선 링크 ( LTE 또는 WiFi 와 같은 것 )의 경우 대역폭은 종종 법적 규정에 따라 제한됩니다. 이 경우 QAM 및 이와 유사한 복잡한 프로토콜을 사용하여 가능한 최고 데이터 속도를 얻을 수 있습니다. 이 경우 신호 대 잡음비는 종종 상당히 낮습니다 (10 ~ 100 또는 10 ~ 20dB). 주어진 대역폭과 신호 대 잡음비에서 상한에 도달하기 전에는 너무 높아질 수 있습니다.

와이어 링크의 경우 대역폭은 구현의 실용성에 의해 규제되지 않습니다. 와이어 링크는 1000 (30 dB)보다 큰 신호대 잡음비를 가질 수 있습니다. 다른 답변에서 언급했듯이, 대역폭은 와이어를 구동하고 신호를 수신하는 트랜지스터의 디자인과 와이어 자체의 디자인 (전송 라인)에 의해 제한됩니다.

대역폭이 제한 요인이되지만 신호 대 잡음비가 아닌 경우 설계자는 데이터 속도를 높이는 다른 방법을 찾습니다. 더 복잡한 인코딩 체계로 갈 것인지 또는 더 많은 유선으로 갈 것인지는 경제적 인 결정이됩니다.

단일 와이어가 여전히 너무 느릴 때 직렬 / 병렬 프로토콜이 사용되는 것을 볼 수 있습니다. PCI-Express 는 다중 레인을 사용하여 하드웨어의 대역폭 제한을 극복하기 위해이를 수행합니다.

광섬유 전송에서는 광섬유를 더 추가 할 필요가 없습니다 (이미 다른 광섬유를 사용하고 있지 않은 경우 다른 광섬유를 사용할 수도 있음). 웨이브 분할 다중화를 사용할 수 있습니다 . 일반적으로 이는 여러 개의 독립적 인 병렬 채널을 제공하기 위해 수행되며 다른 답변에서 언급 된 왜곡 문제는 독립된 채널에 대한 문제가 아닙니다.


1
좋은 대답입니다. 누군가가 정말 놀라운 전송 속도를 위해 USB3 속도로 256-QAM을 구현하는 것과 같은 일을 할 수 있는지 (또는 이미 가지고 있습니까?) 궁금합니다.
mbrig

FWIW에서 광섬유 세계는보다 복잡한 변조 방식을 개발하고 배포하기 시작했습니다. PAM-4는 100 및 400G 이더넷 용으로 출시 될 예정이며 통신 시스템은 일관된 QAM을 사용하기 시작했습니다.
광자

그러나 실제로 유선 회선의 SNR이 너무 좋으면 가능한 모든 대역폭을 짜 내지 않겠습니까? GHZ 주파수 (모든 관련 문제가있는)를 사용하여 속도를 늦추고 변조 / 코딩을 사용할 수있는 이유는 무엇입니까? 더 편리하지 않습니까?
artemonster

그렇게 할 수 있습니다. 경제적 인 결정이됩니다.
Jim

1
QAM에는 이동 통신사가 필요하므로 '기저 대역'디지털에 대해 PAM 이외의 다른 작업을 수행하는 것은 의미가 없습니다. 그것은 빛 자체를 캐리어로 사용하여 광학 영역에서 사용됩니다. 구리보다 기본적으로 라디오 트랜시버 만 구축하면됩니다. 이를 위해서는 훨씬 더 빠른 속도의 아날로그 회로와 그에 따른 복잡성과 증가 된 전력 소비가 필요합니다. 시리얼 라이저와 디시리얼라이저는 비교적 간단합니다. IMHO는 구리를 통해 QAM으로 이동하는 것보다 통합 된 실리콘 광 변조기와 검출기를 볼 가능성이 높습니다.
alex.forencich

1

탑재량으로 4 대의 세미 트럭을 가져 가십시오. 측면 고속도로 당 4 개의 차선. 트럭이 페이로드 평행을 성공적으로 운반하기 위해서는 완벽하게 나란히 있어야합니다. 하나는 1 인치 이상 앞뒤로 움직일 수 없습니다. 언덕, 곡선은 중요하지 않습니다. 너무 다양하고 전체적으로 실패합니다.

그러나 한 차선을 타도록하고 그 거리는 다를 수 있습니다. 페이로드를 이동하기 위해 첫 번째 트럭의 앞쪽에서 마지막 트럭의 뒤쪽으로 거리가 4 배 이상 걸리는 것은 사실이지만, 완벽하게 간격을 둘 필요는 없습니다. 하나의 트럭 길이 내에서만 운전실과 페이로드 및 페이로드 길이를 올바르게 배치하고 간격을 유지해야합니다.

그들은 병렬, pcie, 네트워크 등까지 진행되지만 기술적으로 여러 개의 개별 데이터 경로이지만 병렬로 4 대의 트럭을 사용하여 트럭을 사용하여 떠나고 동시에 도착해야한다는 점에서 평행하지 않습니다 4 개의 차선에서 대략 평행하게 주행 할 수 있지만 다를 수 있습니다. 트럭은 도착한 차선으로 표시되어 다른 쪽 끝에 도착하면 페이로드를 원래 데이터 세트로 다시 결합 할 수 있습니다. 그리고 / 또는 각 레인은 직렬로 하나의 데이터 세트가 될 수 있으며, 더 많은 레인을 가짐으로써 한 번에 더 많은 데이터 세트를 이동할 수 있습니다.


차선을 완벽하게 "정렬"할 필요는 없습니다. 최신 다중 레인 인터페이스는 완벽하게 나란히있는 것보다 더 정교한 기호 정렬 방법을 사용합니다.
Ale..chenski

1
그렇습니다, 내가 말한 것입니다.
old_timer

1

Dmitry Grigoryev 의 의견 외에도 .

아날로그 전송은 항상 디지털 전송보다 오류가 발생하기 쉽습니다. 예를 들어 디지털 직렬 전송에는 클럭킹 측면이 있으며 아날로그 신호는 0V와 VDD 사이에서 부동합니다. 따라서 간섭을 감지하기가 더 어렵습니다. 오디오에서와 같이이를 고려하여 차동 신호를 사용할 수 있습니다.

그러나 당신은 DAC / ADC의 속도 대 정확한 거래에 빠지게됩니다. 서로 통신하는 디지털 시스템이 필요한 경우 시간이 많이 걸리는 DA-AD 변환이 필요하지 않기 때문에 디지털 전송을 사용하는 것이 더 합리적입니다.

그러나 아날로그 제어 전압으로 실행되는 아날로그 컴퓨터가 여전히 주위에 몇 가지가 있으며 기본적으로 아날로그 모듈 식 신디사이저처럼 보이지만 상황이 다르며 일반적으로 특정 작업을 위해서만 아날로그 컴퓨터를 만들 수 있습니다. 아날로그 컴퓨팅에 대한 독일어로 재미있는 프리젠 테이션 .

아날로그 모듈 식 신디사이저에 대해 말하면, 그들은 또한 신호 변화에 대한 소문을 내도록 설계된 일종의 아날로그 컴퓨터입니다.

따라서 컴퓨팅에는 아날로그 전송이 있지만 매우 구체적인 필드로 제한됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.