并行傳輸數據和串行傳輸數據_為什么串行數據傳輸比并行數據傳輸快?

并行傳輸數據和串行傳輸數據

并行傳輸數據和串行傳輸數據

SATA hard drive connections are faster than older PATA hard drive connections and the same can be said for external cabling standards, but this is counter-intuitive: why wouldn’t the parallel transmission be faster?

SATA硬盤驅動器的連接速度比舊的PATA硬盤驅動器連接要快,對于外部電纜連接標準也可以這么說,但這是違反直覺的:為什么并行傳輸不會更快?

Today’s Question & Answer session comes to us courtesy of SuperUser—a subdivision of Stack Exchange, a community-driven grouping of Q&A web sites.

今天的“問答”環節由SuperUser提供,它是Stack Exchange的一個分支,該社區是由社區驅動的Q&A網站分組。

問題 (The Question)

SuperUser reader Modest is curious about the data transfer rates of parallel and serial connections:

SuperUser閱讀器Modest對并行和串行連接的數據傳輸速率感到好奇:

Intuitively, you would think that parallel data transmission should be faster than serial data transmission; in parallel you are transferring many bits at the same time, whereas in serial you are doing one bit at a time.

憑直覺,您會認為并行數據傳輸應該比串行數據傳輸快; 并行操作是同時傳輸許多位,而串行操作是一次傳輸一位。

So what makes SATA interfaces faster than PATA, PCI-e devices faster than PCI, and serial ports faster than parallel?

那么,什么使SATA接口比PATA更快,PCI-e設備比PCI更快,串行端口比并行更快?

While it’s easy to fall into the reasoning that SATA is newer than PATA, there must be a more concrete mechanism at work than just age.

雖然很容易得出SATA比PATA更新的理由,但在工作中必須有一種比年齡更具體的機制。

答案 (The Answer)

SuperUser contributor Mpy offers some insight into the nature of the transmission types:

超級用戶貢獻者Mpy對傳輸類型的性質提供了一些見解:

You cannot formulate it this way.

您不能以此方式制定。

Serial transmission is?slower?than parallel transmission given the?same signal frequency.?With a parallel transmission you can transfer one word per cycle (e.g. 1 byte = 8 bits) but with a serial transmission only a fraction of it (e.g. 1 bit).

相同的信號頻率下,串行傳輸比并行傳輸要慢 在并行傳輸中,您可以每個周期傳輸一個字(例如1字節= 8位),而在串行傳輸中,僅傳輸其一小部分(例如1位)。

The reason modern devices use serial transmission is the following:

現代設備使用串行傳輸的原因如下:

  • You cannot increase the signal frequency for a parallel transmission without limit, because, by design, all signals from the transmitter need to arrive at the receiver at?the same time. This cannot be guaranteed for high frequencies, as you cannot guarantee that the?signal transit time?is equal for all signal lines (think of different paths on the mainboard). The higher the frequency, the more tiny differences matter. Hence the receiver has to wait until all signal lines are settled — obviously, waiting lowers the transfer rate.

    您可以在不增加信號頻率并行傳輸無極限,因為按照設計,從發射器需要的所有信號在接收器在同一時間到達。 這不能保證在高頻下使用,因為您不能保證所有信號線的信號傳輸時間都相等(請考慮主板上的不同路徑)。 頻率越高,差異越小。 因此,接收器必須等到所有信號線都建立好之后,顯然,等待會降低傳輸速率。

  • Another good point (from?this post) is that one needs to consider?crosstalk?with parallel signal lines. The higher the frequency, the more pronounced crosstalk gets and with it the higher the probability of a corrupted word and the need to retransmit it. [1]

    另一個好處(來自本文)是,需要考慮與并行信號線的串擾。 頻率越高,串擾越明顯,隨之而來的單詞損壞和重傳的可能性也越高。 [1]

So, even if you transfer less data per cycle with a serial transmission, you can go to much higher frequencies which results in a higher net transfer rate.

因此,即使您使用串行傳輸每個周期傳輸較少的數據,您也可以使用更高的頻率,從而導致更高的凈傳輸速率。

[1] This also explains why?UDMA-Cables?(Parallel ATA with increased transfer speed) had twice as many wires as pins. Every second wire was grounded to reduce crosstalk.

[1]這也解釋了為什么UDMA電纜(具有更高傳輸速度的并行ATA)的導線數是引腳的兩倍。 每隔兩根導線接地,以減少串擾。

Scott Chamberlain echoes Myp’s answer and expands upon the economics of design:

斯科特·張伯倫(Scott Chamberlain)回應了Myp的回答,并擴展了設計經濟學:

The problem is synchronization.

問題是同步。

When you send in parallel you must measure all of the lines at the exact same moment, as you go faster the size of the window for that moment gets smaller and smaller, eventually it can get so small that some of the wires may still be stabilizing while others are finished before you ran out of time.

并行發送時,必須在同一時刻測量所有線路,因為隨著速度的加快,該時刻的窗口尺寸會越來越小,最終可能會變得很小,以至于某些電線可能仍在穩定而其他人則在您沒時間用完之前就完成了。

By sending in serial you no longer need to worry about all of the lines stabilizing, just one line. And it is more cost efficient to make one line stabilize 10 times faster than to add 10 lines at the same speed.

通過串行發送,您無需擔心所有線路都穩定下來,只需擔心一條線路。 而且,使一條線的穩定速度比以相同速度添加10條線的速度快10倍,具有更高的成本效益。

Some things like PCI Express do the best of both worlds, they do a parallel set of serial connections (the 16x port on your motherboard has 16 serial connections). By doing that each line does not need to be in perfect sync with the other lines, just as long as the controller at the other end can reorder the “packets” of data as they come in using the correct order.

諸如PCI Express之類的東西在兩全其美方面發揮了最大作用,它們完成了一組并行的串行連接(主板上的16x端口具有16個串行連接)。 通過這樣做,只要另一端的控制器可以按照正確的順序對數據的“數據包”進行重新排序,就不必與其他行完美同步。

The?How Stuff Works page for PCI-Express?does a very good explination in depth on how PCI Express in serial can be faster than PCI or PCI-X in parallel.

PCI-Express的“工作原理”頁面對串行PCI Express如何比并行PCI或PCI-X更快提供了很好的深度解釋。

TL;DR Version:?It is easier to make a single connection go 16 times faster than 8 connections go 2 times faster once you get to very high frequencies.

TL; DR版本:一旦到達非常高的頻率,使單個連接的傳輸速度比8個連接的傳輸速度快2倍就容易了。



Have something to add to the explanation? Sound off in the the comments. Want to read more answers from other tech-savvy Stack Exchange users??Check out the full discussion thread here.

有什么補充說明嗎? 在評論中聽起來不對。 是否想從其他精通Stack Exchange的用戶那里獲得更多答案? 在此處查看完整的討論線程。

翻譯自: https://www.howtogeek.com/171947/why-is-serial-data-transmission-faster-than-parallel-data-transmission/

并行傳輸數據和串行傳輸數據

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/280601.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/280601.shtml
英文地址,請注明出處:http://en.pswp.cn/news/280601.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

得到某月的天數

Calendar timeCalendar.getInstance(); time.clear(); time.set(Calendar.YEAR,2018);//year年 time.set(Calendar.MONTH,1);//Calendar對象默認一月為0,month月 int daytime.getActualMaximum(Calendar.DAY_OF_MONTH);//本月份的天數 System.out.pri…

Django09:圖書管理系統筆記/choices用法/ MTV與MVC模型/多對多三種創建方式

圖書管理系統筆記 redirect括號內可以直接寫url 也可以直接寫別名 但如果別名需要參數,必須使用reverse解析。 choices用法 使用場景:能列舉完全的數據 #使用方法:xxx_choice #1. get.xxx_display #2. 如果超出范圍,則顯示原…

業務處理速度變慢?且看IT如何成為救世主

在日常生活的方方面面,我們似乎都在期待著一種即時的便利。比如,用手機購物、訂餐、繳費、預約掛號等等。而在企業中,時間與效率可不是一種休閑福利,而是一項重要的商業功能。我們有理由期待,當今史無前例的數字革命正…

微軟讓卡塔爾世界杯踏入元宇宙

遵守前一篇公眾號文章里的承諾,昨天盆盆在視頻號里錄制了一段5分鐘左右的短視頻,講了江森自控和微軟Azure,如何幫助卡塔爾世界杯打造基于元宇宙的數字體育館。Part.1歡迎掃碼關注我的視頻號(每天更新元宇宙、云計算和數字化的短視頻)。Part.2…

洛谷——P1305 新二叉樹(新建二叉樹以及遍歷)

題目描述輸入一串二叉樹,用遍歷前序打出。 輸入輸出格式輸入格式: 第一行為二叉樹的節點數n。(n \leq 26n≤26) 后面n行,每一個字母為節點,后兩個字母分別為其左右兒子。 空節點用*表示 輸出格式: 前序排列的二叉樹 輸…

插槽1單通道插槽2雙通道_相機雙存儲卡插槽有什么大不了的?

插槽1單通道插槽2雙通道If you paid any attention to the launch of Canon and Nikon’s first full frame mirrorless cameras—the EOS R, Z6, and Z7— you’d have noticed that some people were pretty unhappy that they only came with a single card slot—an SD slo…

python 垃圾回收詳解

原文:https://zhuanlan.zhihu.com/p/31150408 總綱策略和垃圾回收系統工作內容引用計數詳解標記-清除分代收集循環引用編程應用-常見方法ex 過程詳解使用建議觸發機制參考文獻Python垃圾回收機制--完美講解(Python vs Ruby)Python垃圾回收機制…

Django10:Ajax介紹/發送數據/SweetAlert

Ajax 異步提交 局部刷新 發送方式 1. 瀏覽器輸入url,按enter get 2.a標簽href屬性 get 3.form表單 get/post 4. ajax get/post ajax 不是編程語言&#xf…

物聯網數據終端演進之道

智能手機的普及在最近幾年掀起了一股取代企業數據終端的風潮,但正如筆者在一年前便提到過 的,“智能手機難以在企業級應用中得以普及”,這種觀點最好的佐證便是時至今日,由于安全性與管理合規的需要,個人計算機用于企業…

mac 不能連接wi-fi_如何阻止Mac自動連接到Wi-Fi網絡

mac 不能連接wi-fiYour Mac automatically reconnects to Wi-Fi networks you’ve previously connected to. Starting with macOS High Sierra, you can now tell your Mac not to automatically connect to certain Wi-FI networks. Your Mac will remember the Wi-Fi networ…

“玩轉課堂”基本構想

1、項目背景隨著互聯網科技的高速發展,人們的生活、學習和工作中的許多事情都可以借助互聯網來完成,并且反響良好。作為學生,我們切身體會到,能夠使用網絡平臺來進行學習可以節約時間、并且十分方便;而在老師的角度&am…

SQLServer之分離數據庫

分離數據庫注意事項 要求具有 db_owner 固定數據庫角色中的成員資格。 可以分離數據庫的數據和事務日志文件,然后將它們重新附加到同一或其他 SQL Server實例。 如果要將數據庫更改到同一計算機的不同 SQL Server 實例或要移動數據庫,分離和附加數據庫會…

django11:自動序列化/批量插入數據/分頁器

自動序列化 借助serializers幫你自動完成序列化 from app01 import models from django.core import serializers def ab_se(request):user_queryset models.Userinfo.objects.all()#原始方法user_list []for user_obj in user_queryset:user_list.append({username:user_o…

羅漢塔最少步驟_如何以最少的步驟壓縮和密碼保護文件?

羅漢塔最少步驟If you have a large batch of files to compress and you want to add password protection to each of them, what is the simplest or quickest way to do so? Today’s SuperUser Q&A post has the answer to a curious reader’s question. 如果要壓縮…

IoTSharp中使用X509加密MQTT通訊并實現設備鑒權

IoTSharp支持MQTT協議通過 TLS 1.2 加密通訊, 并可以通過X509證書進行設備認證登錄。基本配置在 appsettings.Production.json中需要 指定域名, 并設置EnableTls為true"MqttBroker":{"DomainName":"http://demo.iotsharp.net:2…

IBM希望其“裁剪”過的Swift能夠引誘你使用BlueMix云

現在所有人都可以使用了——微軟頂尖的工程師表示,“呼吸新鮮的空氣吧!” 據Stack Overflow的估計,Swift在最受歡迎的編程語言中排名第二,該語言已經出現在了IBM的BlueMix云平臺之上,供所有人使用。 她從今年二月份開始…

物理層、數據鏈路層、介質訪問控制子層

物理層 物理層定義了比特作為信號在信道上發送時相關的電氣、時序和其它接口,物理層是構建網絡的基礎。數據通信理論基礎:改變諸如電壓或者電流等某種物理特性的方法可用來在電線上傳輸信息,如果用一個以時間t為自變量的單值函數 f(t) 來表示…

如何批量刪除指定的GitHub Repos

正常情況下,如果需要刪除GitHub上不需要的repos,手動刪除的操作有點繁瑣。如果只要刪除一個還能接受,手動刪除多個repos就有點浪費時間了。其實我們可以通過GitHub的API接口來批量刪除不需要的repos。 將要刪除的repos按照username\repos-nam…

django12:form 組件/渲染標簽/數據校驗/鉤子函數/

基本用法 from django import forms# 自己寫一個類 class RegForm(forms.Form):username forms.CharField(min_length3,max_length8, label"用戶名")password forms.CharField(min_length3,max_length8,label"密碼")emailforms.EmailField() 1.校驗數據為…

如何快速擁有一個 Web IDE

本文將介紹如何使用 2-3 句指令在幾分鐘內創建一個 Web IDE 環境。服務器準備如何準備服務器可以參考上文 一鍵體驗 Istio,這里只需要一臺即可,示例中的服務器 IP 為:43.154.189.116安裝 Web IDE下載安裝工具在服務器上,執行以下指…