Кіріспе
Компьютерлік аппараттық құрылғы. Универсалды асинхронды қабылдағыш-бергіш (UART /ˈjuː//ɑːr//ti/) – дерек форматы мен беру жылдамдықтары конфигурацияланатын асинхронды тізбектік байланыс үшін шеткі құрылғы. Ол дерек биттерін бірінен соң бірі, ең кішкентай маңыздысынан ең үлкен маңыздысына дейін, басталу және тоқтату биттерімен шектеулі түрде жібереді, соның арқасында байланыс арнасы нақты уақытты басқарады. UART-қа сыртқы драйверлік схема электр сигналдарының деңгейін басқарады. Көбінесе қолданылатын сигнал деңгейлері – RS 232, RS 485 және қысқа жөндеу байланыстары үшін таза TTL. Алғашқы телетайптар ток тізбектерін пайдаланған. Бұл оператор консоліне телетайптарды қосу үшін қолданылған ең алғашқы компьютерлік байланыс құрылғыларының бірі болды. Сонымен қатар, ол Интернет үшін алғашқы аппараттық жүйе болды. UART әдетте компьютер немесе шеткі құрылғының тізбектік порты арқылы тізбектік байланыс үшін қолданылатын жеке (немесе) интегралдық схеманың (IC) бөлігі болып табылады. Бір немесе бірнеше UART шеткі құрылғылары микроконтроллерлерге жиі енгізіледі. Арнайы UART-тар автомобильдерде, смарт-карталарда және SIM-карталарда қолданылады. Байланысты құрылғы – әмбебап синхронды және асинхронды қабылдағыш-бергіш (USART) синхронды жұмыс режимін де қолдайды. OSI деңгейі бойынша, UART 2-ші қабатта, яғни дерек байланысы қабатында орналасқан.
A universal asynchronous receiver transmitter (UART '/juː//ɑr//t/) is a peripheral device for asynchronous serial communication in which the data format and transmission speeds are configurable. It sends data bits one by one, from the least significant to the most significant, framed by start and stop bits so that precise timing is handled by the communication channel. The electric signaling levels are handled by a driver circuit external to the UART. Common signal levels are RS 232, RS 485, and raw TTL for short debugging links. Early teletypewriters used current loops. It was one of the earliest computer communication devices, used to attach teletypewriters for an operator console. It was also an early hardware system for the Internet. A UART is usually an individual (or part of an) integrated circuit (IC) used for serial communications over a computer or peripheral device serial port. One or more UART peripherals are commonly integrated in microcontroller chips. Specialised UARTs are used for automobiles, smart cards and SIMs. A related device, the universal synchronous and asynchronous receiver transmitter (USART) also supports synchronous operation. In OSI level terms, UART lives on layer 2, the Data link layer.
Бастау біті
Бастау биті қабылдағышқа жаңа символ келіп жатыр екенін хабарлайды.
Деректер биті
Келесі бес-тоғыз бит, қолданылған код жиынтығына қарай, символды көрсетеді.
Партистік бит
Егер паритеттік бит қолданылса, ол барлық дерек биттерінен кейін орналастырылады. Паритеттік бит – қабылдаушы UART-қа берілу барысында деректердің өзгергенін анықтауға мүмкіндік беретін тәсіл.
Тоқтаңыз
Келесі бір немесе екі бит әрқашан белгіде (логикалық жоғары, яғни "1") күйде болады және тоқтату биті(тері) деп аталады. Олар қабылдағышқа символ аяқталғанын хабарлайды. Басталу биті логикалық төмен (0) және тоқтату биті логикалық жоғары (1) болғандықтан, символдар арасында әрқашан кемінде екі кепілдірілген сигнал өзгерісі болады. Егер желі логикалық төмен күйде символ уақытынан ұзақ сақталса, бұл UART-пен анықталуы мүмкін үзіліс жағдайы болып табылады.
Қабылдаушы
UART аппараттарының барлық операциялары деректер жылдамдығының бірнеше еселенгенімен, әдетте 8 немесе 16 еселенгенімен жұмыс істейтін ішкі сағаттық сигналмен басқарылады. Қабылдағыш әрбір сағаттық импульсте кіріс сигналының күйін тексереді, басталу битінің басталуын іздейді. Егер басталу битінің ұзақтығы бит уақытының кемінде жартысына тең болса, онда ол жарамды болып есептеледі және жаңа символдың басталуын көрсетеді. Әйтпесе, ол қате импульс деп саналады және назарға алынбайды. Тағы бір бит уақытын күткеннен кейін, желінің күйі қайтадан сыналып алынады және нәтижесі ауысу тіркегішіне енгізіледі. Символ ұзындығы үшін қажетті бит кезеңдерінің саны (әдетте 5-тен 8 битке дейін) өткеннен кейін, ауысу тіркегішінің мазмұны қабылдау жүйесіне параллель түрде қолжетімді болады. UART жаңа деректердің бар екенін көрсететін белгіні орнатады және сондай-ақ хост процессордан алынған деректерді беруді сұрап процессорлық үзіліс жасауы мүмкін. Байланыс жасайтын UART-тарда байланыс сигналынан басқа ортақ уақыт жүйесі болмайды. Әдетте, UART-тар жалған импульс деп есептелмейтін дерек желісінің әрбір өзгеруі бойынша ішкі сағаттарын қайта синхрондайды. Осылайша уақыт туралы ақпаратты алып, олар хабарды жіберушінің сәл өзгеше жылдамдықпен жіберген жағдайында да сенімді түрде қабылдай алады. Жаңартпалы UART-тар мұны істемейді; олар тек басталу битінің төмендеу жиегінде ғана қайта синхрондалады, содан кейін әрбір күтілетін дерек битінің ортасын оқиды, және бұл жүйе таратылатын деректердің жылдамдығы тоқтату биттерін сенімді түрде сынауға жеткілікті дәл болса жұмыс істейді. UART үшін соңғы символды келесі символ қабылданып жатқанда сақтау стандартты мүмкіндік. Бұл "қос буферлеу" қабылдаушы компьютерге алынған символді алу үшін толық символ беру уақытын береді. Көптеген UART-тарда қабылдағыш ауысу тіркегіші мен хост жүйесінің интерфейсі арасында кішкентай бірінші кірген, бірінші шыққан (FIFO) буферлік жады болады. Бұл хост процессорға UART-тан келетін үзілісті өңдеуге көбірек уақыт береді және жоғары жылдамдықтарда алынған деректердің жоғалуын болдырмайды.
Беруші
Беріліс операциясы қарапайым, себебі уақытты желінің күйінен анықтау қажеттілігі жоқ, сондай-ақ ол белгілі бір уақыт аралықтарымен байланысты емес. Жіберуші жүйе ауысу тіркегіне символді (алдыңғы символ аяқталғаннан кейін) орналастырғаннан кейін, UART бастапқы битті жасайды, қажетті дерек биттерінің санын желіге жылдырады, паритет битін (қолданылса) жасайды және жібереді, содан кейін тоқтату биттерін жібереді. Толық дуплекс режимінде символдарды бір уақытта жіберу және қабылдау қажет болғандықтан, UART жіберуге және қабылдауға арналған екі түрлі ауысу тіркегін пайдаланады. Жоғары өнімді UART-терде FIFO (бірінші кірген, бірінші шыққан) буфері болуы мүмкін, бұл процессорға немесе DMA контроллеріне бір-бірлеп емес, бірден бірнеше символды FIFO-ға орналастыруға мүмкіндік береді. Бір немесе бірнеше символдарды жіберу процессордың жылдамдығына қарағанда ұзаққа созылуы мүмкін болғандықтан, UART ағымдағы мәнін көрсететін флагты сақтайды, осылайша хост жүйесі жіберу буферінде немесе ауысу тіркегінде кем дегенде бір символ бар екенін біледі; "келесі символдарға дайын" жағдайы да үзіліс арқылы хабарлануы мүмкін.
Қолдану
Жіберу және қабылдау UART-тары дұрыс жұмыс істеуі үшін бірдей бит жылдамдығы, символ ұзындығы, теңдік және тоқтату биттерімен конфигурациялануы керек. Қабылдаушы UART кейбір қате параметрлерді анықтап, хост жүйесі үшін "фреймдеу қатесі" туын қоюы мүмкін; ерекше жағдайларда қабылдаушы UART бұзылған символдардың ретсіз ағынын жасап, оларды хост жүйесіне жібереді. Модемдерге қосылған жеке компьютерлерде қолданылатын стандартты тізбектік порттар сегіз дерек битін, теңдіксіз және бір тоқтату битін пайдаланады; осы конфигурацияда секундтағы ASCII символдарының саны бит жылдамдығын 10-ға бөлуге тең. Кейбір өте төмен бағалы үй компьютерлері немесе кіріктірілген жүйелер UART-ты пайдаланбай, CPU-ды кіріс портының күйін сынауға немесе деректерді жіберу үшін шығыс портын тікелей басқаруға қолданады. Бұл CPU-ға үлкен жүктеме салса да (CPU уақыты маңызды болғандықтан), UART чипін жоюға болады, бұл ақша мен орынды үнемдейді. Бұл техника "бит соққысы" деп аталады.
Тарих
Кейбір ерте телеграф жүйелері өзгергіш ұзындықтағы импульстарды (Морс кодындағыдай) және айналмалы сағат механизмдерін әліпбилік символдарды беру үшін пайдаланды. Алғашқы тізбекті байланыс құрылғылары (белгілі ұзындықтағы импульстармен) айналмалы механикалық коммутаторлар болды. 5, 6, 7 немесе 8 биттік әртүрлі символ кодтары телепринтерлерде, кейіннен компьютерлік перифериялық құрылғыларда кең таралды. Телетайппирин кішкентай компьютер үшін өте жақсы жалпы мақсаттағы I/O құрылғысы болды. DEC компаниясының Гордон Белл PDP сериялы компьютерлер үшін PDP 1-ден басталатын желілік блок деп аталатын толық схемалық тақтаны алып, алғашқы UART-ті жобалады. Беллдің айтуынша, UART-тің негізгі жаңалығы – сигналды цифрлық доменге түрлендіру үшін дискретизацияны пайдалану, бұл алдыңғы схемаларға қарағанда сенімді уақыттауға мүмкіндік берді, олар аналогтық уақыттау құрылғыларын қолмен реттелетін потенциометрлермен қолданды. Сымдардың, артқы панельдің және басқа компоненттердің құнын төмендету үшін бұл компьютерлер аппараттық сымдардың орнына XON және XOFF символдарымен ағынды басқаруды енгізді. DEC желілік блоктың дизайнын өздері үшін ертедегі бір чипті UART-ке ықшамдады. 1990 жылдары жаңа UART-тар чиптегі буферлермен жасалды. Бұл деректерді жоғалтпай және компьютерден жиі назар аударуды қажет етпей, жоғары жылдамдықпен беруге мүмкіндік берді. Мысалы, танымал National Semiconductor 16550 16 байттық FIFO-ға ие және көптеген нұсқаларды тудырды, соның ішінде 16C550, 16C650, 16C750 және 16C850. Өндірушіге байланысты UART функцияларын орындайтын құрылғыларды анықтау үшін әртүрлі терминдер қолданылады. Intel өздерінің 8251 құрылғысын «Бағдарламаланатын байланыс интерфейсі» деп атады. MOS Technology 6551 «Асинхронды байланыс интерфейсі адаптері» (ACIA) деген атпен белгілі болды. «Тізбекті байланыс интерфейсі» (SCI) термині алғаш рет 1975 жылы Motorola компаниясында олардың UART деп аталатын бастау-тоқтату асинхронды тізбекті интерфейс құрылғысына қатысты қолданылды. Zilog бірқатар тізбекті байланыс контроллерлерін немесе SCC-терді өндірді. 2000 жылдардан бастап көптеген IBM PC-ге үйлесімді компьютерлер сыртқы RS 232 COM порттарын алып тастап, деректерді жылдам жібере алатын USB порттарын пайдаланды. RS 232 тізбекті порттарын қажет ететін пайдаланушылар үшін сыртқы USB-UART көпірлері қазір кеңінен қолданылады. Олар USB және UART түрлендіруі үшін аппараттық кабельдер мен чиптерді біріктіреді. Cypress Semiconductor және FTDI осы чиптердің маңызды коммерциялық жеткізушілері болып табылады. RS 232 порттары көптеген компьютерлердің сыртында пайдаланушыларға қолжетімді болмаса да, көптеген ішкі процессорлар мен микропроцессорлар UART-ті өздерінің чиптеріне енгізіп, аппараттық дизайнерлерге RS 232 немесе RS 485 байланысын қолданатын басқа чиптермен немесе құрылғылармен байланыс орнату мүмкіндігін береді.
Ашылу қатесі
Ауысу қатесі қабылдағыш келесі таңба келмес бұрын, енді ғана келген таңбаны өңдей алмай қалғанда пайда болады. Әртүрлі құрылғыларда алынған таңбаларды сақтау үшін әртүрлі көлемде буферлік жад болады. Кіріс буферінен таңбаларды алып тастау үшін CPU немесе DMA контроллері UART-қа қызмет көрсетуі керек. Егер CPU немесе DMA контроллері UART-қа жеткілікті жылдамдықпен қызмет көрсетпесе және буфер толып кетсе, ауысу қатесі орын алады және келіп түсетін таңбалар жоғалып кетеді.
Төмендету қатесі
Артқы қате UART таратушысы бір таңбаны жіберуді аяқтағанда және тарату буфері бос болғанда туындайды. Асинхронды режимдерде бұл қате ретінде қарастырылмайды, керісінше, тағы берілуі керек дерек қалмағанын көрсетеді, себебі қосымша тоқтау биттері қосылуы мүмкін. Бұл қате туралы хабарлама USART-терде жиі кездеседі, өйткені синхронды жүйелерде артқы қателер ауыр салдарға әкелуі мүмкін.
Фреймдеу қатесі
UART күтілетін "тоқтату" бит уақытында "тоқтату" битін көрмесе, кадрлау қатесін анықтайды. "Бастау" биті келіп жатқан символдың басын анықтау үшін қолданылатындықтан, оның уақыты қалған биттер үшін эталон болып табылады. Егер деректер желісі "тоқтату" биті күтілетін кезде күтілмеген күйде болса (UART-қа орнатылған дерек және паритет биттерінің санына сәйкес), UART кадрлау қатесін хабарлайды. Желідегі "үзілу" жағдайы да кадрлау қатесі ретінде қарастырылады.
Парит қатесі
Теңдік қатесі, сандағы бірлік биттерінің саны, теңдік битінде көрсетілгенмен сәйкес келмегенде пайда болады. Теңдік тексеруі, көбінесе деректерді жіберу кезіндегі қателерді анықтау үшін қолданылады. Теңдік битін пайдалану міндетті емес, сондықтан бұл қате тек теңдік тексеруі қосылған жағдайда ғана туындайды.
Ажырату жағдайы
Ажырату шарты қабылдағыш кірісі "кеңістік" (логикалық төмен, яғни '0') деңгейінде белгілі бір уақыттан артық, әдетте, бір символ ұзақтығынан көп болғанда туындайды. Бұл міндетті түрде қате емес, бірақ қабылдағышқа барлық нөлдік биттерден тұратын символ ретінде және қателікпен бірге көрінеді. "Брейк" термині ток тізбегінің сигналдауынан шыққан, ол телетайптар үшін дәстүрлі сигналдау түрі болған. Ток тізбегі желісінің "кеңістік" жағдайы ток ағынының болмауымен көрсетіледі, ал ток ағынының ұзақ үзілісі көбінесе желідегі ақау немесе үзілістен туындайды. Кейбір құрылғылар назар аудару сигналы ретінде символ ұзақтығынан артық "кеңістік" деңгейін жіберуі мүмкін. Сигналдау жылдамдықтары үйлеспеген жағдайда, мағыналы символдар жіберілмейді, бірақ ұзақ "брейк" сигналы үйлеспейтін қабылдағыштың назарын аударудың тиімді тәсілі болуы мүмкін (мысалы, өзін қайта орнату үшін). Компьютерлік жүйелер ұзақ "брейк" деңгейін сигналдау жылдамдығын өзгерту туралы сұрау ретінде пайдалана алады, соның арқасында әртүрлі жылдамдықтармен қосылу мүмкін болады. DMX512 протоколы жаңа пакеттің басталуын сигналдау үшін ажырату шартын қолданады.
UART үлгілері
Дуаль UART немесе DUART екі UART-ты бір чипке біріктіреді. Сол сияқты, төрт еселік UART немесе QUART төрт UART-ты бір пакетке біріктіреді, мысалы NXP 28L194. Октальді UART немесе OCTART сегіз UART-ты бір пакетке біріктіреді, мысалы Exar XR16L788 немесе NXP SCC2698. Модельдің сипаттамасы WD1402A – жалпы сатылымдағы алғашқы UART бір чипі. 1971 жылы таныстырылды. Үйлесімді микросхемаларға Fairchild TR1402A және General Instruments AY 5 1013 кірді. Exar XR21V1410 Intersil 6402 CDP 1854 (RCA, қазір Intersil) Zilog Z8440 – универсалды синхронды және асинхронды қабылдағыш-таратушы (USART). 2000 кбит/с. Асинхронды, Bisync, SDLC, HDLC, X.25. CRC. 4 байт RX буфері. 2 байт TX буфері. DMA-ны жүзеге асыру үшін үшінші тараптың DMA контроллеріне қажетті сигналдарды ұсынады. Z8530/Z85C30 – бұл USART-та 3 байттық қабылдау буфері және 1 байттық жіберу буфері бар. HDLC және SDLC процестерін жеделдету үшін аппараттық жабдығы бар. CMOS нұсқасы (Z85C30) үшінші тараптың DMA контроллеріне DMA трансфертерін жүргізуге мүмкіндік беретін сигналдарды ұсынады. Асинхронды, байт деңгейіндегі синхронды және бит деңгейіндегі синхронды байланыстарды жасай алады. 8250 – 1 байт буфері бар ескірген. Бұл UART-тардың ең жоғары стандартты сериялық порт жылдамдығы, егер операциялық жүйеде 1 миллисекундтық үзіліс күту уақыты болса, секундына 9600 бит. 8250 UART-тар IBM PC 5150 және IBM PC/XT компьютерлерінде, ал 16450 UART-тар IBM PC/AT сериялы компьютерлерінде қолданылған. 8251 USART мүмкіндігіне ие. 8251 Motorola 6850 6551 Rockwell 65C52 16450 82510 – бұл UART екі тәуелсіз төрт байттық FIFO-мен 288 кбит/с-қа дейін асинхронды жұмыс істеуге мүмкіндік береді. Intel кем дегенде 1993-1996 жылдар аралығында өндірді, ал Innovastic Semiconductor компаниясының IA82510 үшін 2011 жылғы дерек парағы бар. 16550 – бұл UART-тың FIFO-сы бұзылған, сондықтан ол 16450 UART-тан жылдам жұмыс істей алмайды. 16550A және одан кейінгі нұсқалар бұл қатеге түзету жасайды. 16550A – бұл UART-та 16 байттық FIFO буферлері бар. Оның қабылдауды үзу триггер деңгейлерін 1, 4, 8 немесе 14 таңбаға орнатуға болады. Егер операциялық жүйеде 1 миллисекундтық үзіліс күту уақыты болса, оның ең жоғары стандартты сериялық порт жылдамдығы 128 кбит/с. Төменгі үзіліс күту уақыты бар немесе DMA контроллерлері бар жүйелер жоғары бауд жылдамдықтарын ұстай алады. Бұл чип DMA контроллеріне UART-ке және одан DMA-ны жүзеге асыруға мүмкіндік беретін сигналдарды бере алады, егер бұл UART енгізетін DMA режимі рұқсат етілсе. National Semiconductor ұсынды, оны Texas Instruments компаниясына сатты. National Semiconductor компаниясы бұл UART 1,5 Мбит/с жылдамдықпен жұмыс істей алатынын мәлімдеді. 16C552 16650 – бұл UART-ті қазір Exar корпорациясына тиесілі және Startech-ке қатысы жоқ Startech Semiconductor енгізді. com. Алғашқы нұсқаларда FIFO буфері бұзылған, сондықтан олар 16450 UART-тан жылдам жұмыс істей алмайды. Бұл UART-тің бұзылмаған нұсқаларында 32 таңбалы FIFO буферлері бар және егер операциялық жүйеде 1 миллисекундтық үзіліс күту уақыты болса, стандартты сериялық порт жылдамдығында 230,4 кбит/с дейін жұмыс істей алады. Exar компаниясының қазіргі нұсқалары 1,5 Мбит/с жылдамдықты қамтамасыз ете алады. Бұл UART автоматты RTS және автоматты CTS функциясын енгізеді, онда RTS # сигналы UART-пен басқарылады, UART буфері толған кезде немесе пайдаланушының белгілеген триггер нүктесінен асып кеткен кезде сыртқы құрылғыға хабар беруді тоқтату үшін және құрылғы CTS # сигналын жоғары (логикалық 0) қосқанда құрылғыға хабар беруді тоқтату үшін. 16750 – 64 байттық буферлер. Бұл UART ең жоғары стандартты сериялық порт жылдамдығын 460,8 кбит/с-қа жеткізе алады, егер ең жоғары үзіліс күту уақыты 1 миллисекунд болса. Бұл UART-ті Texas Instruments компаниясы ұсынды. TI-дің айтуынша, алғашқы модельдер 1 Мбит/с жылдамдықпен, ал осы сериядағы кейінгі модельдер 3 Мбит/с жылдамдықпен жұмыс істей алады. 16850 – 128 байт буферлері. Бұл UART ең жоғары стандартты сериялық порт жылдамдығын 921,6 кбит/с-қа жеткізе алады, егер ең жоғары үзіліс күту уақыты 1 миллисекунд болса. Бұл UART-ті Exar корпорациясы енгізді. Exar компаниясының айтуынша, ерте нұсқалары 2 Мбит/с жылдамдықпен, ал кейінгі нұсқалары 2,25 Мбит/с жылдамдықпен жұмыс істей алады. 16C850 16950 – 128 байт буферлері. Бұл UART ең жоғары стандартты сериялық порт жылдамдығын 921,6 кбит/с-қа жеткізе алады, егер ең жоғары үзіліс күту уақыты 1 миллисекунд болса. Бұл UART басқа UART қолданатын 5-8 биттік таңбаларға қосымша 9 биттік таңбаларды қолдайды. Бұл технологияны қазір PLX Technology компаниясына тиесілі Oxford Semiconductor компаниясы енгізді. Oxford/PLX бұл UART 15 Мбит/с жылдамдықпен жұмыс істей алатынын мәлімдейді. Oxford/PLX компаниясының PCI Express нұсқалары PCIe DMA контроллерін меңгерген бірінші тараптың шинасымен біріктірілген. Бұл DMA контроллері 16550 үшін анықталған UART-тің DMA режимін пайдаланады. DMA контроллері CPU-ға әрбір транзакцияны орнатуды және транзакция аяқталғанын анықтау үшін транзакция басталғаннан кейін күй туралы тіркеуді сұрауды талап етеді. Әрбір DMA транзакциясы жад буфері мен UART арасында 1 мен 128 байт арасында мәліметтерді тасымалдай алады. PCI Express нұсқалары сондай-ақ CPU-ға 8, 16 немесе 32 биттік тасымалдауды пайдалана отырып, өзі мен UART арасында мәліметтерді тасымалдауға мүмкіндік береді. 16C950 16954 – 16950/16C950 төрт порты бар нұсқасы. 128 байт буферлері. Бұл UART ең жоғары стандартты сериялық порт жылдамдығын 921,6 кбит/с-қа жеткізе алады, егер ең жоғары үзіліс күту уақыты 1 миллисекунд болса. Бұл UART басқа UART қолданатын 5-8 биттік таңбаларға қосымша 9 биттік таңбаларды қолдайды. Бұл технологияны қазір PLX Technology компаниясына тиесілі Oxford Semiconductor компаниясы енгізді. Oxford/PLX бұл UART 15 Мбит/с жылдамдықпен жұмыс істей алатынын мәлімдейді. Oxford/PLX компаниясының PCI Express нұсқалары PCIe DMA контроллерін меңгерген бірінші тараптың шинасымен біріктірілген. Бұл DMA контроллері 16550 үшін анықталған UART-тің DMA режимін басқарады. DMA контроллері CPU-ға әрбір транзакцияны орнатуды және транзакция аяқталғанын анықтау үшін транзакция басталғаннан кейін күй туралы тіркеуді сұрауды талап етеді. Әрбір DMA транзакциясы жад буфері мен UART арасында 1 мен 128 байт арасында мәліметтерді тасымалдай алады. PCI Express нұсқалары сондай-ақ CPU-ға 8, 16 немесе 32 биттік тасымалдауды пайдалана отырып, өзі мен UART арасында мәліметтерді тасымалдауға мүмкіндік береді. 16C1550/16C1551 – 16 байттық FIFO буферлері бар UART. 1,5 Мбит/с дейін. ST16C155X өнімділік стандартты 16550-мен үйлесімді емес және Microsoft Windows жүйесіндегі стандартты сериялық порт драйверімен жұмыс істемейді. 16C2450 – 1 байттық FIFO буферлері бар дуаль UART. 16C2550 – 16 байттық FIFO буферлері бар дуаль UART. 16C2450-ге толыққанды үйлесімді. INS8250 және NS16C550 бағдарламалық үйлесімді. SCC2691 – қазір NXP компаниясы өндіретін, 2691 – 2 порты бар. DMA-ны жүзеге асыру үшін үшінші тараптың DMA контроллеріне қажетті сигналдарды ұсынады. Әрбір арнаға 4 байттық жіберу буфері, 8 байттық қабылдау буфері. SDLC/HDLC режимдері. Синхронды режимде 5 Мбит/с. Hayes ESP – 1 КБ буферлер, 921,6 кбит/с, 8 порты. Exar XR17V352, XR17V354 және XR17V358 – 16550 үйлесімді тіркеу жиыны, 256 байттық TX және RX FIFO, бағдарламаланатын TX және RX триггер деңгейлері, TX/RX FIFO деңгей санағыштары, бөлшек бауд жылдамдығы генераторы, бағдарламаланатын гистерезиспен автоматты RTS/CTS немесе DTR/DSR аппараттық ағын бақылауы, автоматты Xon/Xoff бағдарламалық ағын бақылауы, RS 485 жартылай дуплекстік бағытты басқару шығысы, автоматты мекенжайды анықтаумен көп нүктелі, инфрақызыл (IrDA 1.1) дерек кодері/декодері бар дуаль, төрт және октальді PCI Express UART. Олар 25 Мбит/с дейін жұмыс істей алады. Дерек парақтары 2012 жылғы. Exar XR17D152, XR17D154 және XR17D158 – 16C550 үйлесімді 5G тіркеу жиыны, 64 байттық жіберу және қабылдау FIFO, жіберу және қабылдау FIFO деңгей санағыштары, бағдарламаланатын TX және RX FIFO триггер деңгейі, автоматты RTS/CTS немесе DTR/DSR ағын бақылауы, автоматты Xon/Xoff бағдарламалық ағын бақылауы, таңдамалы айналу кешігуімен RS485 HDX басқару шығысы, инфрақызыл (IrDA 1.0) дерек кодері/декодері, прескалермен бағдарламаланатын дерек жылдамдығы, 6,25 Мбит/с дейін сериялық дерек жылдамдығы бар дуаль, төрт және октальді PCI шиналық UART. Дерек парақтары 2004 және 2005 жылдарға қатысты. Exar XR17C152, XR17C154 және XR17C158 – 16C550 үйлесімді тіркеулер, 64 байттық жіберу...
Модемдегі UART
Негізгі платаның ұясына қосылатын жеке компьютерлерге арналған модемдер картада UART функциясын да қамтуы керек. IBM жеке компьютерімен бірге келген бастапқы 8250 UART чипінде қабылдағыш пен жіберуші үшін бір символдік буфер болды, бұл байланыс бағдарламалық жасақтамасының 9600 бит/с жылдамдықтан асып кеткенде нашар жұмыс істеуіне әкеп соқты, әсіресе көп тапсырмалы жүйеде жұмыс істегенде немесе дискілік контроллерлерден келетін үзілістерді өңдегенде. Жоғары жылдамдықты модемдер бастапқы чиппен үйлесімді UART-терді пайдаланды, бірақ қосымша FIFO буферлерін қамтыды, бұл бағдарламалық қамтамасыз етуге келіп жатқан деректерге жауап беру үшін қосымша уақыт берді. Жоғары биттік жылдамдықтардағы өнімділік талаптарын қарастырғанда, 16, 32, 64 немесе 128 байттық FIFO неге қажет екенін көруге болады. DOS жүйесі үшін Microsoft спецификациясы үзілістердің бір мезгілде 1 миллисекундтан артық тоқтатылмауын талап етеді. Кейбір қатты дискілер мен бейне контроллерлер бұл талапты бұзады. 9600 бит/с шамамен әр миллисекундада бір символді жібереді, сондықтан 1 байттық FIFO осы жылдамдықпен DOS жүйесінде жеткілікті болуы керек, егер ол максималды үзіліс тоқтату уақытына сәйкес келсе. Бұл жылдамдықтан жоғары жылдамдықтарда жаңа символ ескісі алынбастан түсіп қалуы мүмкін, нәтижесінде ескі символ жоғалып кетеді. Бұл «шамадан тыс» қатесі деп аталады және бір немесе бірнеше символдың жоғалуына әкеледі. 16 байттық FIFO компьютерге үзіліске қызмет көрсетуден бұрын 16 символға дейін қабылдауға мүмкіндік береді. Бұл компьютердің сенімді түрде өңдей алатын максималды биттік жылдамдықты 9600-ден 153 000 бит/с-қа дейін арттырады, егер оның үзіліс уақыты 1 миллисекунд болса. 32 байттық FIFO максималды жылдамдықты 300 000 бит/с-қа дейін арттырады. FIFO-ның тағы бір артықшылығы – компьютерге бар болғаны 8-12% үзілістерге қызмет көрсету қажет, бұл экранды жаңартуға немесе басқа да жұмыстарды орындауға көбірек CPU уақытын босатады. Осылайша компьютердің жауап беру жылдамдығы да жақсарады.
Эмуляция
UART байланыс протоколы қарапайым болғандықтан, оны қазіргі заманғы микроконтроллерлерде (мысалы, Arduino немесе Teensy) немесе бағдарламаланатын I/O күй машиналарында (мысалы, Raspberry Pi Pico-ның PIO немесе NXP-нің FlexIO) бағдарламалық тұрғыда GPIO тіректерін қолдану арқылы эмуляциялауға болады.