Seri veri iletimi neden paralelden daha hızlı?


133

Sezgisel olarak, paralel veri iletiminin seri veri iletimlerinden daha hızlı olması gerektiğini düşünebilirsiniz; paralel olarak aynı anda birçok bit aktarıyorsunuz, seri halde bir seferde bir bit yapıyorsunuz.

Peki SATA arabirimlerini PATA, PCI-e aygıtları PCI'den daha hızlı ve seri bağlantı noktalarını paralelden daha hızlı yapan nedir?


Belki de öyle, ama öyleyse, nasıl tüm bu intel.com/content/www/us/en/chipsets/performance-chipsets/… 'i görüyorum , PCIe için çok sayıda şerit olduğunu ve wiDI’da FDI’yı aradığımı söyledi. 2 bağımsız 4-bit sabit frekans bağlantısı / kanal / boru "ve 4 bağlantının DMI görüşmeleri. (eklendi - Scott'un cevabı kısmen bunu kapsayabilir)
barlop

2
Hepsi saat hızına kadar kaynar.
Daniel R Hicks,

36
Mevcut üç cevap, ekonomiden, yani maliyetten bahsetmiyor . Çok hızlı bir seri arabirim yapmak çok hızlı bir paralel arabirimden çok daha ucuz. İletim hatları için, sadece birkaç kablo kullanan bir seri kablo, ekranlanması zor ve pahalı olacak paralel bir kablodan daha ucuzdur.
talaş

13
DB25 ve DB9 bağlantılarının yapıldığı günlerde, seri olarak 115 kbit / s iterken şanslıyken , paralel olarak sekiz paralel veri pimiyle 12 Mbit / s elde ettiniz .
bir CVn

Yanıtlar:


145

Bu şekilde formüle edemezsiniz.

Seri aktarım, aynı sinyal frekansı verilen paralel aktarımdan daha yavaştır . Paralel bir aktarma ile döngü başına bir kelime aktarabilirsiniz (örneğin 1 byte = 8 bit) ancak seri aktarımla bunun sadece bir kısmını (örneğin 1 bit) aktarabilirsiniz.

Modern cihazların seri iletimi kullanmasının nedeni şudur:

  • Paralel iletim için sinyal frekansını sınırsız olarak arttıramazsınız, çünkü tasarım gereği vericiden gelen tüm sinyallerin aynı anda alıcıya ulaşması gerekir . Bu, yüksek frekanslar için garanti edilemez, çünkü sinyal geçiş süresinin tüm sinyal hatları için eşit olduğunu garanti edemezsiniz (anakart üzerindeki farklı yolları düşünün). Frekans ne kadar yüksek olursa, farklar o kadar küçük olur. Bu nedenle, alıcı tüm sinyal çizgileri yerleşene kadar beklemek zorundadır - belli ki, bekleme aktarma hızını düşürür.

  • Bir başka iyi nokta ( bu noktadan itibaren ) birinin paralel sinyal çizgileriyle çapraz konuşma yapması gerektiğidir . Sıklık arttıkça, daha belirgin çapraz karışma olur ve onunla birlikte bozuk bir kelimenin olasılığı ve yeniden iletme ihtiyacı artar. 1

Bu nedenle, seri aktarımla döngü başına daha az veri aktarsanız bile, daha yüksek bir net aktarım hızı ile sonuçlanan daha yüksek frekanslara gidebilirsiniz.


1 Bu ayrıca UDMA-Kablolarının (yüksek transfer hızına sahip Paralel ATA) neden pimlerin iki katı kabloya sahip olduğunu da açıklar . Her ikinci kablo, karışma riskini azaltmak için topraklanmıştır.


9
Alıcı, tüm hatların aynı anda durmasını beklemek zorunda değildir - günümüzde hızlı paralel iletim , her bir kablodaki varış gecikmesini ayrı ayrı ölçmeyi ve sonra telafi etmeyi içerir . Bu işlem, CPU <-> DRAM! Bu, gömülü saatler (örneğin 8b / 10b kodlaması) ve / veya eğitim dizileri gibi bazı seri teknikleri benimseyerek mümkün oldu.
Beni Cherniavsky-Paskin

Sizin çalışmanız ifadenize aykırıdır. Seriyi yavaşlatmaya başladığını ve neden daha hızlı olduğunu açıklıyorsunuz. Bunun bir karmaşa kaynağı olduğunu düşünüyorum ve nasıl cevap verebileceğini merak ediyorum.
Val

11
@Val Tüm cevabı okumuyorsunuz. Aynı hız giderken bir otobüs bir arabadan daha fazla insanları etkileyen - fakat yolu fizik eserlerin, bu arabalar gidebilir yolu bir otobüs daha hızlı, nedenle otobüs daha araba kullanarak insanları taşımak için hızlıdır. Aynısı veri bağlantıları için de geçerlidir: aynı hızla paralel kablolar seri kablolardan daha fazla veri taşır; ancak, seri kabloyu paralel kabloya göre çok daha hızlı çalışması için itebiliriz. Paralel kabloyu hızlandırmaya çalışırsak, fizik verinin çöp olmasına neden olur.
Darth Android

1
Aslında baş aşağı görüyorum. Yüksek itiş gücüne sahip olan yolcu taşımacılığıdır (toplu taşımacılıktır), çünkü otomobilleri herkesle birlikte taşımazsınız, ancak insanlar paralel olarak otomobillerde tek tek hareket etmeyi tercih eder ve bu nedenle insanları kompakt, 3d şehirlere paketlemek yerine geniş banliyö altyapısı geliştirir. Seri bitlerin patlamasını bir tren olarak görüyorum. Kabaca, bir paket göndermek pahalıdır, ancak paket başına ne kadar veri gönderdiğiniz önemli değildir. Bu nedenle 1000 paralel araba yerine 1000 bitlik bir tren göndermek daha ucuzdur.
Val

1
@Val Ulaşım böyle çalışır, evet, ancak elektro-manyetizma fiziğinin çalışma şekli böyle değildir ve benzerlik yapmaz. Burada kimse verimlilikten bahsetmiyor, sadece hız ve verimlilik. Paralel bir bağlantı saat döngüsü başına daha fazla veri taşıyabilmesine rağmen, bir seri bağlantı saat döngüsü başına daha az veri taşıyabilir, ancak aynı zaman diliminde daha yüksek verime sahip olduğu kadar çok daha fazla saat döngüsüne sahiptir.
Darth Android

70

Sorun senkronizasyondur.

Paralel olarak gönderdiğinizde, aynı anda tüm çizgileri ölçmelisiniz, çünkü o an için pencerenin boyutu küçülür ve küçülür, sonunda bazı teller hala dengelenebilecek kadar küçük olabilir diğerleri zaman biterse bitmiş durumda.

Seri olarak göndererek, artık sadece bir satır dengeleyici olan tüm hatlar için endişelenmenize gerek kalmaz. Ve bir çizginin aynı hızda 10 çizgi eklemekten 10 kat daha hızlı stabilize olması daha düşük maliyetlidir.

PCI Express gibi bazı şeyler her iki dünyanın da en iyisini yapar, paralel bir seri bağlantı kümesi yaparlar (ana kartınızdaki 16x bağlantı noktası 16 seri bağlantıya sahiptir). Bunu yaparak, her satırın diğer satırlarla mükemmel bir şekilde senkronize edilmesine gerek yoktur, diğer uçtaki kontrolör doğru veriyi kullandıkları sırada veri paketlerini yeniden sıralayabildiği sürece.

PCI-Express için How Stuff Works sayfa PCI Express seri halinde paralel olarak PCI ya da PCI-X daha hızlı olabilir nasıl derinlemesine çok iyi explination yapar.


TL; DR Sürümü: Çok yüksek frekanslara ulaştığınızda, tek bir bağlantının 16 kat daha hızlı, 8 bağlantının 2 kat daha hızlı gitmesi daha kolaydır.


1
@barlop Ethernet'te paralel yapabilirsiniz, ancak tüketici kullanımında çok yaygın değildir, bunun adı Kanal Yapıştırmasıdır . - Düzeltme : Tüketici kullanımında, kablosuz frekansın bağlanması kullanılarak yaygınlaştı. 802.11n'nin 600 Mbit / s'ye kadar hızları nasıl elde edebileceği , aynı anda 4'e kadar seri akışı kullanıyor.
Scott Chamberlain

1
@barlop Size yanlış terimi verdim, Kanal Bağlama daha geniş jenerik terim, özellikle Ethernet için sorduğun şeyin doğru terimine Link toplama denir .
Scott Chamberlain

2
Rich Seifert "Gerçekten, birçok kişi IEEE 802.11" Kablosuz Ethernet "diyor. Bu kesinlikle herhangi bir teknoloji argümanı karşısında uçarken (IEEE 802.3 ile aynı çerçeve biçimini bile kullanmıyor), konuşma sırasında yaşayabilirim. teknoloji farkının önemsiz olduğu insanlara . ” <- onun sözleri. Birkaç yıl önce 802.3x'i yönettiğini ve düzenlediğini ve Ethernet II'yi (yani, DIX Ethernet, görünüşe göre 10 Mbps Ethernet) yönettiğini ve yönettiğini okudum ve "IEEE 802.3z Gigabit Ethernet Görev Gücü'ne aktif bir katılımcı" olduğunu okudum. Bu nedenle, 802.11'i söyleme yetkisi Ethernet değil.
barlop

1
1000BASE-T Ethernet (802.3ab, "gigabit Ethernet") paralel olarak 4 kablo kullanır.
MSalters

4
Ethernet ekonomisi, SATA gibi veri yollarından farklıdır - kabloların değiştirilmesi çok uzun ve pahalıdır, bu nedenle sonunda elektronikleri yükseltmeye odaklanırsınız. Erken Ethernet, 1 çift kablo kullanmış ancak gelecekteki kullanımı öngören 4 çift kabloda standardize edilmiştir (bu dönemde paralel olarak daha hızlı iletim için bariz yaklaşımdı). Bu çarpışma nedeniyle zor olduğu ortaya çıktı, ancak kablolar zaten orada olduğu için bunları kullanmamak ayıptı. Sonunda, çok karmaşık DSP işlemleriyle-> D2A-> ... kablo ... -> A2D-> DSP işlemleriyle karışma iptali yapmak mümkün oldu.
Beni Cherniavsky-Paskin

19

Paralel doğası gereği daha yavaş değildir, ancak seri iletişimin yapmadığı zorlukları da beraberinde getirir.

Ancak en hızlı bağlantıların çoğu hala paraleldir: Bilgisayarınızdaki ön veri yolu tipik olarak oldukça paraleldir ve genellikle bilgisayardaki en hızlı bağlantı noktaları arasındadır. Fiber optik bağlantılar, tek bir fiber üzerinden birden fazla dalga boyunu taşıyarak da oldukça paralel olabilir. Bu pahalıdır ve bu nedenle tipik değildir. Gigabit ethernet'in en yaygın şekli aslında tek bir kabloda 250Mbit Ethernet olan 4 paralel kanaldır.

Paralellik ile ortaya çıkan en belirgin zorluk "karışma" dır: sinyal akımı başladığında veya durduğunda, anlık olarak yanındaki teller üzerinde küçük bir akımı indükler. Sinyal ne kadar hızlı olursa, bu daha sık gerçekleşir ve filtrelenmesi o kadar zor olur. Paralel IDE, şerit kablodaki kablo miktarını ikiye katlayarak ve diğer tüm kabloları toprağa bağlayarak bu sorunu en aza indirmeye çalıştı. Ama bu çözüm sadece seni şimdiye kadar götürür. Uzun kablolar, kıvrımlar ve halkalar ve diğer şerit kablolara olan yakınlık, bunu çok yüksek hızlı sinyaller için güvenilir olmayan bir çözüm haline getirir.

Ancak, yalnızca bir sinyal çizgisiyle giderseniz, donanımınızın izin verdiği kadar hızlı bir şekilde değiştirmekte özgürsünüz. Ayrıca, bazı sinyallerin diğerlerinden daha hızlı hareket etmesiyle ince senkronizasyon sorunlarını çözer.

İki tel her zaman teorik olarak bir iki kat daha hızlıdır, ancak eklediğiniz her sinyal çizgisi fiziği zorlaştırıyor, bu da kaçınılması daha iyi olabilir.


FSB, Intel Core 2 döneminden bu yana AMD64 tasarımı ile birkaç yıl önce geride bıraktığından beri ana işlemci tasarımlarının bir parçası değildi. Bunun yerine her ikisi de bellek denetleyicisini CPU'nun üzerine getirdi ve bir FSB'nin (nispeten) geniş / yavaş tasarımı yerine hızlı / dar veri yollarıyla her şeyi CPU'ya bağladı.
Dan Neely,

Çapraz konuşma azaltma teknikleri, onlarca yıldır bilinmektedir, ancak ek maliyetler getirdikleri soruların yorumlarında da belirtildiği gibi, bazıları da senkronizasyon sorununu daha da kötüleştirmektedir (farklı büküm oranlarına sahip bükümlü çiftlerin, empedansta hafif farklılıklar gösterdiği, aktarım hızlarındaki değişiklikler ve ...).
dmckee

13

Seri veri iletimi paralelden daha hızlı değil. Daha kullanışlıdır ve bu nedenle geliştirme, donanım üniteleri arasında hızlı harici seri arayüz oluşturmaya başladı. Hiç kimse 50 veya daha fazla iletkene sahip şerit kablolarla uğraşmak istemez.

Bir devre kartındaki yongalar arasında, sadece iki kablo gerektiren I2C gibi bir seri protokolün üstesinden gelmek, sayısız paralel izlemekten çok daha kolaydır.

Ancak bilgisayarınızda, bant genişliğini toplu olarak artırmak için paralelliğin kullanıldığı birçok örnek var. Örneğin, kelimeler hafızada bir defada bir bit okunmaz. Ve aslında, önbellekleri büyük bloklar halinde doldurulur. Raster ekranlar başka bir örnektir: pikselleri daha hızlı paralel almak için birden fazla bellek bankasına paralel erişim. Bellek bant genişliği kritik olarak paralelliğe bağlıdır.

Tektronix'in "dünyanın en hızlı ticari 10 bit yüksek hızlı DAC DAC "'si olarak lanse edilen bu DAC cihazı , DAC'ye gelen ve 320'nin üzerinde iki aşamalı 10'a indirgenmiş olan verinin getirilmesi için paralellikten ağır faydalanıyor Master 12 GHZ saatin farklı bölümleri tarafından sürülür. Dünyanın en hızlı 10 bit DAC'si tek bir seri giriş hattı kullanılarak yapılabilseydi, muhtemelen olurdu.


1
50 pimli şerit kablolardan bahsetmek için +1. SAS / SATA kablolarına gitmenin motivasyonlarından biri, geniş kabloların kutunun içindeki hava akışını etkilemesiydi.
jqa

11

Paralel, mantık geçitleri, otobüsler / kablolar ve çip üzerinde iletim için benzer elektrik tekniklerini kullanmanız için yeterince yavaş olduğunda hızı artırmanın açık yoluydu. Kabloyu, transistörünüzün izin verdiği kadar hızlı bir şekilde değiştiriyorsanız, ölçeklemenin tek yolu daha fazla kablo kullanmaktır.

Zamanla, Moore yasası elektromanyetik kısıtlamaları geride bıraktı, böylece kablolar üzerindeki iletimler, hatta on-board otobüsler, çip hızlarına kıyasla bir tıkanıklık haline geldi. OTOH, hız eşitsizliği, kanalı daha verimli kullanmak için uçlardaki karmaşık işlemlere izin verir.

  • İlerleme gecikmesi birkaç saatin sırasına yaklaştığında, reflections => gibi analog etkiler konusunda endişelenmeye başlarsınız (yol boyunca eşleştirilmiş empedanslara ihtiyacınız olur (özellikle konektörler için zor) ve çok noktadan fazla otobüslerin üzerinden noktadan noktaya kabloları tercih edin. Bu yüzden SCSI'nin sonlandırılması gerekiyordu ve bu yüzden USB'nin basit ayırıcılar yerine hublara ihtiyacı var.

  • Daha yüksek hızlarda, tel boyunca herhangi bir anda uçuşta birden fazla bitiniz vardır => boru hattı protokollerini kullanmanız gerekir (bu nedenle Intel'in FSB protokollerinin çok karmaşık bir hal almasına neden olmuş; PCIe gibi paketlenmiş protokollerin bu karmaşıklığa tepki gösterdiğini düşünüyorum).

    Diğer bir etki, sinyal akışının yönünü değiştirmek için kullanılan çok döngülü bir cezadır - bu yüzden USB 2.0'dan daha iyi yönlendirilmiş kablolar kullanan Firewire ve SATA ve PCIe'nin nedeni budur.

  • İndüklenmiş gürültü, aka karışma, frekansla artar. Hızlardaki en büyük tek ilerleme, çarpı karışma oranını önemli ölçüde azaltan diferansiyel sinyallemenin benimsenmesinden kaynaklandı (matematiksel olarak, dengesiz bir yükün alanı R ^ 2 olarak düşüyor, ancak dipolün alanı R ^ 3 olarak düşüyor).

    Sanırım "seri, paralel olandan daha hızlı " izlenimine neden oldu - izlenim o kadar büyüktü ki, 1 veya 2 diferansiyel çifte düşebiliyordu ve hala LPT veya IDE kablolarından daha hızlı olabiliyordu . Ayrıca kabloda sadece bir sinyal çiftinin olması ile çarpışma kazanımı oldu, ama bu küçük.

  • Kablo yayılma gecikmesi değişkendir (hem kablo uzunluklarının 90º dönüşler, konektörler vb. Arasında eşleşmesi zor olduğundan hem de diğer iletkenlerin parazitik etkileri nedeniyle), senkronizasyonu bir sorun haline getirmiştir.

    Çözüm, her alıcıda ayarlanabilir gecikmelere sahip olmak ve onları başlangıçta ve / veya sürekli olarak verilerin kendisinden ayarlamaktı. 0 veya 1 saniyelik çizgilerden kaçınmak için verilerin kodlanması küçük bir ek yüke yol açar ancak elektriksel faydaları vardır (DC sapmasını önler, kontrol spektrumunu) ve en önemlisi saat tellerini tamamen düşürmeyi sağlar (40'ın üzerinde önemli bir şey değildir) Sinyaller ancak seri bir kablo için 2 veya 3 yerine 1 veya 2 çift bulunması çok önemlidir).

Darboğazda paralellik attığımıza dikkat edin - bugünün BGA yongalarında yüzlerce veya binlerce iğne var, PCB'lerde gittikçe daha fazla katman var. Bunu eski 40 pin mikrodenetleyiciler ve 2 katmanlı PCB'lerle karşılaştırın ...

Yukarıdaki tekniklerin çoğu hem paralel hem de seri iletim için vazgeçilmez hale geldi . Sadece kablolar ne kadar uzun olursa, o kadar az kabloyla daha yüksek hızları zorlar.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.