Головна » як » Чому послідовна передача даних швидше, ніж паралельна передача даних?

    Чому послідовна передача даних швидше, ніж паралельна передача даних?

    З'єднання жорсткого диска SATA швидше, ніж старі з'єднання PATA з жорсткими дисками, і те ж саме можна сказати і про зовнішні стандарти кабелів, але це інтуїтивно зрозуміло: чому б не було швидше паралельна передача?

    Сьогоднішня сесія запитань та відповідей приходить до нас люб'язно SuperUser - підрозділ Stack Exchange, групування веб-сайтів із запитаннями та відповідями на рівні спільноти..

    Питання

    Зчитувач SuperUser Modest цікавить швидкість передачі даних паралельних і послідовних з'єднань:

    Інтуїтивно, ви вважаєте, що паралельна передача даних повинна бути швидшою, ніж послідовна передача даних; паралельно ви передаєте багато бітів одночасно, тоді як в послідовних ви робите один біт за один раз.

    Що робить SATA інтерфейси швидше PATA, PCI-e пристрої швидше, ніж PCI, а послідовні порти швидше, ніж паралельно?

    Незважаючи на те, що легко потрапити в аргументацію, що SATA є більш новою, ніж PATA, має бути більш конкретний механізм на роботі, ніж просто вік.

    Відповідь

    Співробітник SuperUser Mpy пропонує деякий погляд на природу типів передачі:

    Ви не можете сформулювати його таким чином.

    Послідовна передача є повільніше ніж паралельна передача даних частота сигналу однакова. При паралельній передачі можна перенести одне слово на цикл (наприклад, 1 байт = 8 біт), але з послідовною передачею лише частку його (наприклад, 1 біт).

    Причина того, що сучасні пристрої використовують послідовну передачу:

    • Ви не можете збільшити частоту сигналу для паралельної передачі без обмежень, оскільки, за проектом, всі сигнали від передавача повинні прийти до приймача на в той же час. Це не може бути гарантоване для високих частот, оскільки ви не можете гарантувати, що час транзиту сигналу рівний для всіх сигнальних ліній (подумайте про різні шляхи на материнській платі). Чим вище частота, тим більше крихких відмінностей. Отже, приймач повинен чекати, поки всі сигнальні лінії будуть улагоджені - очевидно, очікування знижує швидкість передачі.
    • Інший хороший момент (з цієї посади) є те, що потрібно розглянути перехресні перешкоди з паралельними сигнальними лініями. Чим вище частота, тим більш вираженими є перехресні перешкоди, і з цим вища ймовірність пошкодженого слова і необхідність його повторної передачі. [1]

    Отже, навіть якщо ви передаєте менше даних за цикл з послідовною передачею, ви можете перейти на набагато більш високі частоти, що призводить до більш високої швидкості передачі..

    Це також пояснює, чому UDMA-кабелі (Parallel ATA з підвищеною швидкістю передачі) мали вдвічі більше проводів, ніж штифти. Кожен другий провід був заземлений для зменшення перехресних перешкод.

    Скотт Чемберлен повторює відповідь Myp і розширює економічні аспекти дизайну:

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

    Коли ви відправляєте паралельно, ви повинні виміряти всі лінії в той самий момент, як ви йдете швидше, розмір вікна на той момент стає все менше і менше, зрештою він може стати настільки малим, що деякі дроти все одно можуть стабілізуватися в той час як інші закінчуються до того, як ви втратили час.

    Надсилаючи в серійний ви більше не потрібно турбуватися про всі лінії, що стабілізуються, лише один рядок. І більш економічно ефективним є те, що одна лінія стабілізується в 10 разів швидше, ніж додати 10 ліній з однаковою швидкістю.

    Деякі речі, як PCI Express роблять краще з обох світів, вони роблять паралельний набір послідовних з'єднань (16x порт на материнській платі має 16 послідовних з'єднань). При цьому кожна лінія не повинна бути в ідеальній синхронізації з іншими лініями, тільки до тих пір, поки контролер на іншому кінці може змінити порядок "пакетів" даних, коли вони прийдуть з використанням правильного порядку.

    Сторінка How Stuff Works для PCI-Express робить дуже глибоке роз'яснення щодо того, як PCI Express в послідовному режимі може бути швидше, ніж PCI або PCI-X паралельно.

    TL; Версія DR: Легше зробити одне підключення йти в 16 разів швидше, ніж 8 з'єднань йдуть в 2 рази швидше, як тільки ви потрапите на дуже високі частоти.


    Маєте щось додати до пояснення? Звучить в коментарях. Хочете прочитати більше відповідей від інших технологічних користувачів Stack Exchange? Перегляньте повний потік обговорення тут.