Automatisk detektering av överföringshastighet

Automatisk överföringshastighetsdetektering ( ABR , autobaud ) hänvisar till den process genom vilken en mottagande enhet (som ett modem ) bestämmer hastigheten, kodnivån, startbiten och stoppbitarna för inkommande data genom att undersöka det första tecknet , vanligtvis ett förvalt tecken -on-tecken ( syncword ) på en UART -anslutning. ABR tillåter den mottagande enheten att acceptera data från en mängd olika sändande enheter som arbetar med olika hastigheter utan att behöva fastställa datahastigheter i förväg.

Under autobaudprocessen bestäms baudhastigheten för mottagen teckenström genom att undersöka det mottagna mönstret och dess timing, och längden på en startbit. Denna typ av överföringshastighetsdetekteringsmekanism stöds av många hårdvaruchip inklusive processorer som STM32 MPC8280, MPC8360 och så vidare.

När startbitlängden används för att bestämma baudhastigheten, kräver det att tecknet är udda eftersom UART skickar LSB- biten först. Ofta används symbolerna 'a' eller 'A' (0x61 eller 0x41). Till exempel försöker MPC8270 SCC detektera längden på UART-startbiten för autobaud.

De flesta modem som finns på marknaden stöder för närvarande autobaud. Innan de tar emot indata använder de flesta modem en standardöverföringshastighet på 9600 för utmatning. Till exempel har följande modem verifierats för autobaud och standardutgångsöverföringshastighet 9600:

  • USRobotics USR5686G 56K seriell styrenhet Faxmodem
  • Hayes V92 Externt modem
  • Microcom DeskPorte 28.8P

Baudhastigheten för modem justeras automatiskt efter att ha tagit emot indata genom autobaud-processen.

Många protokoll börjar varje ram med en inledning med alternerande 1 och 0 bitar som kan användas för automatisk detektering av baudhastighet. Till exempel använder TI PGA460 en "U" (0x55) synkbyte för automatisk överföringshastighetsdetektering såväl som ramsynkronisering , och det gör även LIN-huvudet ( Local Interconnect Network#Header ). Till exempel börjar det UART-baserade FlexWire-protokollet varje bildruta med en "U" (0x55) synkbyte . FlexWire-mottagare använder synkbyten för att exakt ställa in sin UART-bitklockfrekvens utan en oscillator med hög precision. Till exempel Ethernet-ingressen 56 bitar med alternerande 1 och 0 bitar för synkronisering av bitklockor.

Se även