If-Koubou

Защо серийното предаване на данни е по-бързо от предаването на паралелни данни?

Защо серийното предаване на данни е по-бързо от предаването на паралелни данни? (Как да)

SATA твърдите дискове са по-бързи от по-старите PATA твърди дискове и същото може да се каже за външни кабелни стандарти, но това е противоинтуитивно: защо паралелното предаване не би било по-бързо?

Днешната сесия за въпроси и отговори ни идва с любезното съдействие на SuperUser - подразделение на Stack Exchange - обединяване на уеб сайтове с въпроси и отговори.

Въпроса

Reader на SuperUser Modest е любопитен за скоростите на предаване на паралелни и серийни връзки:

Интуитивно, бихте помислили, че паралелното предаване на данни трябва да бъде по-бързо от предаването на серийни данни; паралелно прехвърляте много бита по едно и също време, докато по сериен начин правите едно по едно.

И така, какво прави SATA интерфейсите по-бързи от PATA, PCI-e устройства по-бързо от PCI и серийните портове по-бързо от паралелно?

Макар да е лесно да се помислим, че SATA е по-нова от PATA, трябва да има по-конкретен механизъм на работа, отколкото просто възраст.

Отговорът

Сътрудникът на SuperPower Mpy предлага известно разбиране за естеството на типовете предаване:

Не можете да го формулирате по този начин.

Серийно предаване епо-бавно отколкото паралелното предаване, като се има предвидсъщата честота на сигнала. При паралелно предаване можете да прехвърлите една дума на цикъл (например 1 байт = 8 бита), но със серийно предаване само част от него (например 1 бит).

Причината, поради която съвременните устройства използват серийно предаване, е следното:

  • Не можете да увеличите честотата на сигнала за паралелно предаване без ограничение, защото по проект всички сигнали от предавателя трябва да пристигнат на приемника напо същото време, Това не може да бъде гарантирано при високи честоти, тъй като не можете да гарантирате, чевреме за преминаване на сигнала е равен за всички линии на сигнала (помислете за различни пътища на дънната платка). Колкото по-висока е честотата, толкова по-малки разлики имат значение. Оттук приемникът трябва да изчака, докато всички линии на сигнала бъдат уредени - очевидно чакането намалява скоростта на предаване.
  • Друг добър момент (от този пост) е, че човек трябва да обмислипрослушване с паралелни сигнални линии. Колкото по-висока е честотата, толкова по-ясно изразена е мълвата и с нея толкова по-голяма е вероятността от повредена дума и необходимостта от повторно предаване. [1]

Така че, дори ако прехвърлите по-малко данни на цикъл със серийно предаване, можете да отидете на много по-високи честоти, което води до по-висока нетна скорост на трансфер.

[1] Това също така обяснява защо UDMA-кабелите (паралелен АТА с повишена скорост на предаване) имат два пъти повече жици, отколкото щифтовете. Всеки втори кабел беше заземен, за да намали прослушването.

Скот Чембърлейн отразява отговора на Myp и разширява икономическите аспекти на дизайна:

Проблемът е синхронизация.

Когато изпращате успоредно, трябва да измервате всички линии в точния момент, докато отивате по-бързо, като прозорецът за този момент става все по-малък и по-малък, в крайна сметка може да стане толкова малък, че някои от жиците все още могат да се стабилизират докато други са завършени, преди да изтече времето.

Изпращайки се по сериен път вече няма нужда да се безпокоите за стабилизирането на линиите, само на един ред. И е по-ефективно да се направи една линия да се стабилизира 10 пъти по-бързо, отколкото да се добавят 10 линии със същата скорост.

Някои неща като PCI Express правят най-доброто от двата свята, правят паралелен набор от серийни връзки (16x порт на вашата дънна платка има 16 серийни връзки). По този начин, всеки ред не трябва да бъде в перфектна синхронизация с другите линии, само докато контролерът от другия край може да пренареди пакетите с данни, когато се намират, използвайки правилния ред.

Работната страница на "Как работи" за PCI-Express прави много добро изясняване в дълбочина относно начина, по който PCI Express серийно може да бъде по-бърз от PCI или PCI-X успоредно.

TL; DR Версия: По-лесно е да направите една връзка да отиде 16 пъти по-бързо, отколкото 8 връзки да изминат 2 пъти по-бързо, след като стигнете до много високи честоти.

Имате ли нещо, което да добавите към обяснението? Звучи в коментарите. Искате ли да прочетете повече отговори от други потребители на Stack Exchange? Вижте цялата тема на дискусията тук.