logo
Материалы по интерфейсам периферий / Для Скрипко / Для пособия ПУ (Восстановлен) (2)

Микросхема uart

Основой любого последовательного порта является микросхема UART (Universal Asynchronous Receiver/Transmitter— универсальный асинхронный приемник/передатчик). С ее помощью осуществляется управление преобразованием данных из принятого от компьютера параллельного формата в последовательный и наоборот.

В настоящее время фирмы-производители предлагают несколько видов микросхем UART. В первых компьютерах PC и XT применялась микросхема UART 8250, которая до сих пор устанавливается на многих дешевых платах последовательных портов. В компьютерах PC/AT (и в других компьютерах на базе процессора 286 и последующих) используется микросхема UART 16450. Единственное различие между этими двумя микросхемами связано с обеспечением высокоскоростного обмена данными: микросхема 16450 лучше приспособлена для этих целей.

Микросхема UART 16550 была первой схемой последовательного порта, которая использовалась в компьютерах PS/2. Она могла работать так же, как и микросхемы 8250 и 16450, но содержала еще и 16-байтовый буфер, позволяющий передавать данные с более высокой скоростью. Буфер использовался по принципу FIFO (First In/First Out, т.е. первым пришел — первым ушел). К сожалению, эта схема имела существенные недостатки, связанные именно с работой буфера. Они были устранены в микросхеме UART 16550A. В настоящее время фирма National Semiconductor выпускает микросхему UART 16550D.

Совет

Микросхема UART 16550A совместима по контактам с UART 16450. Если у вас установлена микросхема UART 16450, то, заменив ее UART 16550, вы сможете повысить производительность последовательного интерфейса.

Лучше использовать последовательный порт, в котором установлена быстродействующая и надежная микросхема 16550А. Впрочем, в большинстве современных системных плат последовательные порты вместе с микросхемой UART встроены в микросхему Super I/O. Если же вы не знаете, какая именно микросхема установлена в вашем компьютере, выясните это с помощью диагностической программы, поставляемой с операционной системой.

Замечание

Если у вас установлена Windows 95 или 98, то для получения информации о микросхеме UART щелкните на кнопке Пуск (Start), затем выберите команду Настройка => Панель управления (Settings=>Confrol Panel), щелкните на пиктограмме Модемы (Modems), появится диалоговое окно Свойства: Модемы (Modem:Properties). В нем выберите вкладкуДиагностика (Diagnostics) и щелкните на кнопке Дополнительно (More). Появится одноименное диалоговое окно, в котором будут указаны параметры порта, включая и тип микросхемы UART. Если к порту подключен модем, то вы увидите также информацию о модеме.

Основным разработчиком этих микросхем является компания National Semiconductor (NS). Однако, даже если ваша микросхема UART выпущена другой компанией, она совместима с одной из микросхем данного вида, выпускаемых NS (вероятнее всего, с 16550). Следует убедиться лишь в том, что ваша микросхема имеет 16-байтовый буфер FIFO, поскольку именно этот буфер содержится в микросхемах NS 16550.

Далее в этой главе приведен список стандартных микросхем UART, используемых в персональных компьютерах.

8250

Первая микросхема, использовавшаяся в последовательном порту PC. Она имеет несколько недостатков, но не очень серьезных. BIOS компьютеров PC и XT разрабатывались с учетом, как минимум, одного из них. Позже эта микросхема была заменена 8250В.

8250А

Никогда не используйте эту вторую модификацию 8250. В ней исправлены некоторые недостатки 8250, в частности в регистре разрешения прерываний, но поскольку BIOS компьютеров PC и XT строились с учетом этого недостатка, микросхема 8250А в таких компьютерах устойчиво не работает. Она должна устанавливаться в компьютерах AT, не рассчитанных на упомянутый недостаток. Эта микросхема не обеспечивает передачи данных со скоростью 9 600 бит/с.

8250В

Последняя модификация 8250, в которой исправлены недостатки двух предшествующих. Присущая микросхеме 8250 особенность выдавать ошибочные прерывания, в расчете на которую строились процедуры BIOS компьютеров PC и XT, в этой микросхеме восстановлена, что делает ее наиболее подходящей для последовательных портов, устанавливаемых в компьютерах PC и XT. Микросхема 8250В может также работать в системах AT под управлением DOS, однако скорость обмена 9 600 бит/с ей недоступна.

16450

Разработана для компьютеров AT IBM как наиболее быстродействующая модификация микросхемы 8250. Поскольку в микросхеме 16450 был исправлен недостаток в регистре разрешения прерываний, ее нельзя устанавливать в компьютерах PC и XT, рассчитанных на этот дефект. Для нормального функционирования последовательных портов в OS/2 необходима, как минимум, микросхема 16450, иначе последовательный порт не будет работать корректно. В микросхему добавлен высокоскоростной регистр в качестве старшего регистра. Микросхема 16450 используется в основном в компьютерах AT, так как обеспечивает более высокую скорость передачи данных, чем 8250В.

16550

Улучшенный вариант микросхемы 16450. Из-за просчетов разработки ее нельзя использовать в режиме с буфером FIFO, но программисты могут воспользоваться несколькими каналами прямого доступа к памяти, что повышает пропускную способность AT и более мощных систем. Настоятельно советую вам заменить UART 16550 микросхемой 16550А.

16550А

Быстродействующий вариант 16450 со встроенным (и работоспособным) 16-байтовым буфером FIFO, работающим в режиме как приема, так и передачи. Также может работать с несколькими каналами DMA. Эту микросхему устанавливают на платах последовательных портов, предназначенных для высокоскоростного обмена данными (более 9 600 бит/с). Если в вашей коммуникационной программе используется FIFO (что наиболее вероятно), то применение микросхемы 16550А позволит существенно повысить скорость обмена (до 115 Кбит/с) и избежать при этом потери символов.

16650

Несколько компаний выпускают микросхемы 16650 и 16750, совместимые с 16550, с увеличенным объемом буфера — 32 и 64 байта соответственно. Увеличенный объем буфера позволяет повысить скорость обмена до 230 и 460 Кбит/с. Эти микросхемы используются в более высокоскоростных устройствах, например адаптерах ISDN.