När vi initierar en seriekommunikation måste vi vanligtvis ställa in överföringshastigheten (t.ex. 115200) Jag märker att många antar att 115200 betyder 115200 bitar per sekund. Varje baud (signaländring) kan dock koda mer än 1 bit. baud 115200 betyder endast 115200 bitar per sekund om varje baud = 1 bit. Om varje baud är 5 bitar betyder det att ha baud 115200 en bithastighet på 115200 * 5 bitar per sekund.
Om det jag sa ovan är sant, vad är förhållandet baud till bit för UART och USB3.0 förutsatt att baudhastigheten är inställd på 115200?
Det kan inte vara 1 till 1 eftersom 115200 bitar per sekund är 14,0625 kbps (kilobyte per sekund), vilket är för långsamt.
Kommentarer
- Ignorera USB3.0, tänk dig ” och USB3.0 ” tas bort
- En UART kodar helt enkelt 1 som högspänningsnivå och 0 som lågspänningsnivå.
- (Det betyder 1 bit per symbol)
- För en ’ normal ’ UART, baud == bithastighet, så 115200 baud = 115200 bithastighet = 11.520 kBps (förutsatt att 8N1 betyder 8bitsdata + 1 startbit + 1 stoppbit).
- Relaterat: Skillnad mellan Hz och bps .
Svar
En mindre punkt: b y definition, en Baud (uppkallad efter Emile Baudot) är en symbol per sekund. Så ditt uttalande,
baud 115200 betyder bara 115200 bitar per sekund om varje baud = 1 bit. Om varje baud är 5 bitar betyder det att ha baud 115200 en bithastighet på 115200 * 5 bitar per sekund.
är korrekt i sin anda, men du bör ersätt ordet ”baud” med ”symbol”. Om du har ett alfabet med 32 symboler, kodar varje symbol 5 bitar och en signalhastighet på 115200 symboler per sekund, vilket är 115200 Baud (per definition), ger dig 115200 * 5 = 576000 bitar per sekund.
Den vanliga frasen ”Överföringshastighet” är grammatiskt felaktig på i princip samma sätt som ”ATM-maskin” är felaktig. Definitionen av Baud har begreppet hastighet inbyggd i sig, så att säga ”Baud rate” är grammatiskt detsamma som att säga ”symbol rate rate” (vilket kan vara vettigt om du ”pratar om en förändrad symbolhastighet, men det” s inte hur de flesta använder det). På samma sätt har ”ATM” redan ”maskin” integrerat i den, så ”ATM-maskin” motsvarar att säga ”automatiserad kassamaskin” (vilket återigen kan vara vettigt om du pratar om en maskin som producerar bankomater, men att ”s vanligtvis inte vad folk menar).
Grammatik förutom att de flesta korta räckviddssignaler med låg till måttlig hastighet över tråd använder binär signalering, så symbolhastigheten är lika med bithastigheten. Lång räckviddssignalering över tråd (t.ex. kabelmodem) och via radio är mer benägna att använda flerbitsymboler, och därför blir bithastigheten högre än symbolhastigheten.
Kommentarer
- Tyvärr, men jag röstade ned för att du har fel. ” Symbol ” betyder i det här fallet inte vad du tycker det betyder. Vanligtvis i binär överföring finns det bara två symboler, märke och mellanslag. Ett alfabet med 32 tecken kräver 5 bitar, men varje bit kräver överföring av en symbol. Så ditt exempel på en 115 k baud si gnaleringshastigheten överför bara 115k bitar per sekund. Se en.wikipedia.org/wiki/Baud för mer information.
- @WhatRoughBeast Endast om du har 0 och 1 som symboler. Entropivore talar om 32 spänningsnivåer. sv.wikipedia.org/wiki/Pulse-amplitude_modulation I så fall får du 5 bitar med en signal eftersom den ’ s kodade i amplituden för en symbol.
- @WhatRoughBeast, jag tror att du kanske är förvirrad av termen ” alfabetet ”. I kommandon betyder ” alfabetet ” den uppsättning symboler som kan kommuniceras över kanalen. Om det bara finns två skiljbara tillstånd för kanalen, har du ett alfabet som består av två symboler. Om det finns, som i vårt tidigare exempel, 32 stater, har du ett alfabet med 32 symboler. Dessa kan representeras på många sätt, inklusive amplitud och fas för en sinusformad bärare, pulsamplitud, bredd eller position etc., etc. Om du väljer att representera dessa symboler som ett binärt ord tar det 5 bitar.
- Tyvärr, den sista meningen är dåligt formulerad. Jag borde ha sagt, ” Om du väljer att representera en av dessa symboler som ett binärt ord. ”
Svar
Medan kommunikationen är digital är baudhastigheten lika med bithastigheten.Endast när kommunikationen är modulerad till analog kan 1 baud koda mer än 1 bit enligt konstellationsdiagram .
För bussar som överför data som är snabbare än den seriella anslutningens bithastighet utförs överföringen i skurar. USB 3.0 kan skicka upp till 1024 databytes per bulköverföring, vilket innebär att ett fullständigt paket skickas i genomsnitt varje 1.6384 under antagande av en 5 Gbps busshastighet.
Kommentarer
- Är ditt första stycke sant för bussar som använder parallella kanaler?
- Låt mig göra min fråga enkel. Vad betyder det om jag ställer in överföringshastigheten för uart till 115200? Innebär det att den maximala datahastigheten är 115200 bps. Om det kan vara mer, varför?
- @jippie: Jag antar att det tekniskt sett inte är ’ t, men i princip hänvisar ingen till ” baud ” när man talar om en parallell kanal.
- @WeidongGuo: Det innebär att någonstans längs linjen finns en enhet som skickar bitar med minst cirka 8,7us mellanrum mellan varje bit och en annan som kan ta emot bitar med inte mindre än samma period.
- @WeidongGuo: Det finns inte ’ t . Därför kan USB-latens vara ett problem för vissa applikationer.
Svar
Du jämför priserna på olika lager i en abstraktionsmodell. I ditt exempel används USB3.0 bara som en tunnel för att skicka ”115200 bps UART” igenom. Det spelar ingen roll hur USB3.0 gör det, spänningarna kan skilja sig, ramarna kan skilja sig, hastigheten kan skilja sig. (De kommer alla att vara BTW).
Svar
Bithastighet och överföringshastighet är samma för UART, som andra sa. Det är inte detsamma för alla basbandssignaleringsmetoder (andra kallade dem digitala, vilket inte är korrekt). Manchester-linjekod, till exempel, där kodas biten som höjning eller misslyckande kant.
Hur du beräknade bithastigheten är dock inte korrekt. UART använder ordsynkronisering, vilket betyder att den skickar hela byte samtidigt inkapslat i ramar på minst 9 bitar. Startbiten läggs till för fassynkronisering av klockor mellan mottagare och sändare.
Det är också därför det inte är meningsfullt att referera till bithastigheter vid UART – dess antingen byte hastighet eller överföringshastighet.
Kommentarer
- Enligt denna sida en.wikipedia. org / wiki / List_of_device_bit_rates , serie 16 550 UART max har en bithastighet på 1,5 Mbit / s, då betyder det att varje symbol (signaländring) är kodad (1,5 M / 115200 = 13 bitar), förutsatt att 115220 Baud antas. Har jag rätt?
- Nej, 1,5Mbit är maximal genomströmning som kan uppnås med UART, med tanke på linjekoden och signalmetoden. Det har ingenting att göra med 115,2 kB, det är bara en annan hastighet.
- så låt mig göra upp ett tal då, om medelhastigheten är 1,5Mbit / s för UART, är det jag sa ovan sant då.
- Nej, om du har genomströmning 1,5Mbit / s betyder det att du har ungefär 187 kB / s, vilket översätts till överföringshastighet minst 1,65MBd. Detta är fallet när varje byte kodas med startbit och de 8 bitarna i byten, utan stopp- och paritetsbitar (de är valfria). Som jag sa ovan är bitar och bauds 1: 1 i UART, men det finns skillnad mellan bitarna du överförde och bitar av data eftersom varje byte är inkapslad i sin egen ram.
- jag bryr mig bara om de överförda bitarna inte bara data (nyttolast). ” Överföringshastigheter kan vara nästan vilket värde som helst inom anledningen. Det enda kravet är att båda enheterna arbetar i samma takt ”. Så, baud är protokollberoende, eller maskinvaruberoende, eller båda?