Компоненты и технологии, № 8'2004
Высокопроизводительные платформы DSTni
компании Lantronix
В настоящее время в связи с непрекращающимся увеличением объема передаваемых данных по цифровым сетям непрерывно растут требования к коммуникационным платформам. Существующее и разрабатываемое оборудование промышленной автоматики имеет различные интерфейсы связи и протоколы управления. Как правило, задача объединения всех устройств в одну сеть с управлением в режиме реального времени достаточно тяжело реализуема. Для этого нужен коммуникационный процессор, имеющий высокую производительность и большое число поддерживаемых интерфейсов связи, такой, например, как сетевые платформы DSTni компании Lantronix.
Александр Зайцев
Компания Lantronix, основанная в 1989 году, является мировым лидером в производстве программно-аппаратных комплексов дистанционного управления технологическим оборудованием. В большинстве случаев в основе оборудования Lantronix лежит высокопроизводительная коммуникационная платформа DSTni-LX или DSTni-EX.
Платформы DSTni включают все необходимые аппаратные и программные компоненты приложений типа Device Networking. Интегрированные контроллеры интерфейсов, такие, как Ethernet, USB, CAN, SCi, Profibus и др., позволяют применять DSTni как ведущее устройство системы, выполнен-
Таблица. Основные характеристики DSTni-LX и DSTni-EX
Платформа DSTni-LX DSTni-EX
Тип процессора 16-разрядный микропроцессор Turbo 186
Максимальная тактовая частота/производительность 48 МГц/12,5 MIPS 125 МГц/30 MIPS
Программируемая схема PLL Нет 1-115 МГц
Интегрированное статическое ОЗУ 256 кбайт
Максимальный объем внешней памяти 16 Мбайт (шина данных 16 бит, шина адреса 24 бит)
Интегрированное загрузочное ПЗУ 2 кбайт 16 кбайт
Двухпортовое ОЗУ с интерфейсом IDT 8 кбайт Нет
Контроллеры интерфейсов связи Один 10/100 Мбит Ethernet Два 1 Мбит CAN V.0B Два RS232/422/485 с RTS/CTS SPI Два 10/100 Мбит Ethernet Два 1 Мбит CAN V.0B Четыре RS232/422/485 с RTS/CTS USB 1.1, SPI, I2C
Контроллер Profibus Интегрированный контроллер Profibus Siemens ASPC 12 Мбит Нет
Каналов DMA 3 4
Интегрированная периферия 3 таймера, контроллер прерываний, 32 порта ввода-вывода, логика выборки внешней памяти, сторожевой таймер
Интерфейс JTAG Поддержка внутрисхемного эмулятора с точками останова и буфера трассировки
Напряжение питания Ядро - 2,5 В Периферия - 3,3 В Ядро -1,8 В Периферия - 2,5 В
Диапазон рабочих температур °С 5 0 +1 о д 0 -4 От От -40 до +85 °С
Корпус 160-выводный LQFP 180-выводный BGA 12x12 мм 184-выводный BGA 12x12 мм
ное на одном кристалле. Реализация платформы DSTni по принципу «все в одном» дает возможность значительно уменьшить размеры устройства, а также снизить энергопотребление и стоимость системы. Основные характеристики платформ DSTni представлены в таблице.
В состав программного пакета поддержки платформ DSTni входит операционная система реального времени (RTOS) для быстрого сбора и обработки данных с внешних устройств; стек протокола TCP/IP для работы по сети Ethernet и организации веб-сервера с графическим управлением системой через веб-браузер; проверенные C-библиотеки для работы со всеми периферийными контроллерами DSTni.
Рассмотрим более подробно некоторые основные узлы коммуникационных платформ DSTni.
Центральный процессор
В DSTni-LX и DSTni-EX интегрирован 16-разрядный высокопроизводительный процессор промышленного стандарта 80186, который полностью заново разработан с применением последних достижений в микроэлектронике, позволяющих значительно эффективнее использовать высокую тактовую частоту по сравнению со стандартными процессорами. Многократно проведены разнообразные тесты, подтверждающие полную программную совместимость нового процессора с семейством процессоров 8086, широко применяемых в системах промышленной автоматики.
Процессор Turbo 186 обеспечивает выигрыш в производительности примерно в 2,5 раза по сравнению с процессорами 80186 компаний Intel и AMD для той же тактовой частоты. Приложения, приоритетом в которых является пониженное энергопотребление, могут работать на тактовой частоте в два раза ниже обычного и сохранять требуемую производительность.
Компоненты и технологии, № 8'2004
LCS -ARDY -HOLD-HLDA^ WR 4
W <
WH В/U BE * WLB/LBE * BCLK * LBA * BM *
CPUCLK
25Mhz from PHY |
і 1
Xin
PLLBYP ► PLL и
та кт. генератор
WDT
RSTIN ► Схема сброса
RSTOUT — Упр. Регистры
I NT 5,3,1 NMI
TMROUTO TMROUT1 TMRINO ATMRIN1
±±±
DRQ1 DRQ3 DRQO DRQ2
Контроллер
прерываний
Упр. регистры
±±±
MCS 3:2,1:0
к PCS 7:4,3:0
J^S
p. TXD 3:2,1:0
____RXD 3:2,1:0
RTS 3:2,1:0 CTS 3:2,1:0
£
Таймер ЭМА контроллер
0 1 2 0 12 3 Параллельные Асинхронные
Макс.счет. В 1 Указатель приемника Выбор порты ввода/вывода последов. порты
Макс.счет. А Указатель источника
Счетчик 16 бит Счетчик 0 12 3
Упр. регистры Упр. регистры Упр. регистры Упр. регистры Упр. регистры
Упр. регистры
Интерфейс
системы
H
Е
Упр. регистры Упр. регистры Упр. регистры Упр. регистры Упр. регистры Внутренняя память ПЗУ 8Kxló ОЗУ 128КХІ6
USB 1.1 Host/Slave IO 9800-98FF INT3 SPI/I2C SPI B800-B8FF I2C D000-D0FF INT2 CAN BUS 2.0В IOA800-A8FF IO A900-A9FF INT6 Ethernet Mac Порт 1 IO 9100-9 IFF INTI Ethernet Mac Порт 0 Ю 9000-90FF INTO
Интерфейс МП
Генератор
CRC
Генератор случ. чисел
25 МГц PHY
Ю/100 Ethernet PHY
USBP
USBN
SCK, SLVSEL#, DIN, DOUT SCLK, SDTA
CANTX, CAN1TX, CANRX CAN1RX
Интерфейс Mil
Рисунок. Структурная схема DSTni-EX
Кварцевый резонатор 25 МГц
ТХ, RX 10/100 Ethernet
Применение передовых технологий в изготовлении процессора Turbo 186 позволило более чем в пять раз повысить его максимальную производительность, а стандартные элементы могут работать на частоте в два-три раза выше обычного. В результате процессор Turbo 186 имеет более подходящие характеристики для приложений, работающих в режиме реального времени, чем процессоры 386SX.
Процессор Turbo 186 содержит все периферийные модули процессоров семейства 186, обеспечивающие полную совместимость с процессорами Intel 80C186 и AMD Am186ES, которые являются промышленным стандартом.
Обмен с периферийными модулями, размещенными на кристалле, производится по высокоскоростной 16-разрядной шине.
Процессором Turbo 186 поддерживается два режима адресации:
• Совместимый режим — максимальный объем адресуемой памяти 1 Мбайт;
• Расширенный режим — максимальный объем адресуемой памяти 16 Мбайт.
Вся адресуемая память разделена на непрерывные сегменты размером до 64 К х 8 бит. Для обращения к любому участку памяти суммируются два 16-разрядных указателя, один из которых в совместимом режиме сдвигается влево на 4 бит, а расширенном режиме — на 8 бит. В обоих режимах адресации поддерживаются все восемь методов обращения к памяти, реализованных в 8086-совмес-тимых процессорах.
Прямой доступ к памяти (DMA)
Во многих приложениях требуется быстро передать объемные блоки данных между периферийными устройствами и памятью, например, чтение-запись блоков данных на карту памяти. Если процессор должен будет обра-
батывать каждый байт даже с использованием прерываний, это приведет к значительной потере системной производительности. Контроллер DMA предоставляет возможность передавать данные между периферийными устройствами и памятью без вмешательства процессора. В DSTni-LX реализовано три канала DMA, а в DSTni-EX — четыре.
Все каналы DMA идентичны и могут работать с асинхронными устройствами. Инициализировать прямой доступ к памяти могут:
• активный уровень сигнала на выводе запроса DMA;
• таймер 2;
• последовательный порт;
• команды процессора.
Для каждого из каналов DMA настраивается приоритетность работы, разрешающей конфликты доступа к памяти при одновременном запросе от нескольких каналов, а также источник и приемник данных.
Контроллер 10/100 Мбит Ethernet
Контроллер Ethernet является мостом между платформами DSTni и локальными сетями стандарта IEEE 802.3 Ethernet. Реализованный в DSTni контроллер Ethernet программно совместим с контроллерами AM79C960 PCnet-ISA и AM7990 LANCE компании AMD.
Контроллер Ethernet подключен к внутренней системной шине DSTni с высоким приоритетом доступа, обеспечивающим «нулевое» время ожидания. Контроллер Ethernet имеет один сигнал прерывания и собственный контроллер DMA, что позволяет значительно уменьшить размер буферов FIFO приемника и передатчика. Однако применение буферов FIFO малого размера требует применение дополнительных мер по предотвращению переполнения и исчерпания буфера.
Контроллер Ethernet имеет следующие характеристики:
• поддержка стандарта IEEE802.3-1998/ANSI 8802-3 Ethernet;
• поддержка скоростей обмена 10/100 Мбит в полу- и полнодуплексном режиме;
• индивидуальные буферы FIFO приемника и передатчика для поддержки дуплексного режима;
• автоматическая повторная передача;
• автоматическое дополнение коротких фреймов;
• автоматическое удаление фреймов с коллизиями;
• менеджер буфера DMA для минимизации загрузки процессора.
В платформы DSTni-LX и DSTni-EX интегрирован законченный Ethernet PHY приемопередатчик физического уровня с сигналами аналогового Ethernet-совместимого интерфейса MAC-уровня. Контроллер PHY поддерживает связь с MAC-уровнем или контроллером в соответствии со стандартом IEEE 802.3u Media Independent Interface (MII).
Контроллер PHY рассчитан для работы со следующими физическими средами передачи данных:
• 10Base-T — IEEE 802.3 спецификация физического уровня Ethernet 10 Мбит;
• 100Base-TX — IEEE спецификация физического уровня CSMA/CD 100 Мбит для кабеля UTP или STP;
• 100Base-TX — IEEE 802.3 спецификация физического уровня Ethernet 100 Мбит (Fast Ethernet) для оптоволоконного кабеля. Второй контроллер Ethernet в платформе
DSTni-EX не имеет контроллера PHY.
Контроллер CAN V2.0B
Платформы DSTni содержат по два независимых контроллера интерфейса CAN2.0B,
Компоненты и технологии, № 8'2004
предназначенного для гарантированной передачи данных в условиях сильных электромагнитных помех. Оба контроллера CAN2.0B обеспечивают высокоскоростной режим передачи данных до 1 Мбит/с (длина линии до 40 м) и низкоскоростной режим обмена до 5 кбит/с (длина линии до 10 км). Идеология шины CAN обеспечивает надежную схему разрешения конфликтов и обнаружения ошибок.
В состав каждого контроллера входит
3 группы регистров, обеспечивающих временное хранение сообщений, и схема «арбитр приоритетов», позволяющие реализовать:
• очередь отправки сообщений, что уменьшает нагрузку на процессор;
• отмену ждущего отправку сообщения с более низким приоритетом, которое уже находится в буфере отправки сообщений. Два независимых CAN-контроллера предоставляют уникальную возможность диагностировать шину CAN. Например, один из контроллеров настраивается для передачи сообщений по шине CAN, а другой — только для приема, чтобы анализировать все сообщения, передаваемые по шине.
Основные характеристики контроллеров CAN V2.0B:
• Интерфейс с процессором:
- 14 источников прерываний;
- 16-разрядный интерфейс с «нулевым» временем ожидания;
- режим петли для самодиагностики.
• 3 настраиваемых фильтра ACR (Acceptance Code Reg.) и AMR (Acceptance Mask Reg.).
• Передатчик:
- 3 группы регистров временного хранения данных;
- арбитр приоритета отправки сообщений;
- функция отмены передачи сообщений.
• Приемник:
- 4 буфера FIFO с индикаторами состояния буфера.
• Другие характеристики:
- режим «только прием»;
- поддержка стандартных и расширенных сообщений;
- проверка потери арбитража шины и счетчики ошибок.
Контроллер USB1.1 (только в DSTni-EX)
Высокоскоростная шина USB обеспечивает недорогой универсальный интерфейс связи Plug-and-Play с внешними периферийными устройствами. Одновременно к шине USB может быть подключено до 127 периферийных устройств. Максимальная скорость обмена по шине USB 1.1 — до 12 Мбит/с для высокоскоростных устройств и до 1,5 Мбит/с для низкоскоростных устройств.
Контроллер USB 1.1 платформы DSTni-EX поддерживает режимы работы как ведомого (Slave), так и ведущего (Host) устройства на шине. Функционально контроллер USB DSTni-EX можно разделить на три секции:
• Автомат последовательного интерфейса (SIE), который содержит:
- логику передатчика, выполняющую NRZI-кодирование, бит-наполнение, вычисление циклической контрольной суммы (CRC), добавление битов SYNC и EOF.
- логику приемника, выполняющую декодирование NZR потока данных USB, удаление бит-наполнения, проверка CRC, PID и другие проверки уровня протокола USB.
• Интерфейс процессора, обеспечивающий управление контроллером.
• Схема PLL с цифровым управлением, которая предназначена для генерации тактового сигнала 48 МГц, необходимого для выполнения транзакций по шине USB с максимальной скоростью 12 Мбит/с. Кроме того, схема PLL выполняет поиск полных одиночных нулей, строба конца пакета и декодирует NZRI-последовательность потока данных.
Необходимо отметить, что контроллер USB 1.1 — это объединение аппаратных средств и программного обеспечения. Когда SIE обрабатывает нижний уровень протокола USB, программным способом поддерживается верхний уровень протокола — управление буферизацией данных, поддержкой функций периферийного устройства и т. д.
В режиме Slave интерфейс процессора контроллера USB 1.1 содержит только блок регистров управления (CRB). В режиме Host в контроллере USB 1.1 включен контроллер DMA, опрашивающий таблицу дескрипторов (BDT) и поддерживающий транзакции данных между шиной USB и системной памятью. Применение таблицы дескрипторов позволяет эффективно управлять большим количеством устройств с минимальной загрузкой процессора.
Контроллер Profibus (только в DSTni-LX-002)
Контроллер Profibus полностью соответствует стандарту Siemens ASPC2 и поддерживает режимы ведомого и ведущего шины. Существует несколько стандартных сетей, поддерживаемых контроллером Profibus DSTni-LX:
• Profibus — магистральная система связи для небольших сетей с разнесенными устройствами, соответствующая европейскому стандарту EN50170 часть 2.
• Profibus-FMS (Layer 7) — сеть, предназначенная для управления системами автоматизации технологических процессов.
• Profibus-DP — стандарт, специально разработанный для быстрого циклического обмена данными между устройствами. Сети Profibus хорошо подходят для высокоскоростной передачи данных (до 12 Мбит/с) на большие расстояния по оптическим и проводным линиям связи.
В режиме ведущего (или активной станции) контроллер Profibus может отправлять сообщения без предварительного запроса при удержании прав доступа к шине. В режиме ведомого контроллер не может управлять передачей данных, он только принимает дан-
ные или отвечает на полученные запросы. Обычно ведомой является периферия, например, устройства ввода-вывода, измерительные преобразователи, клапаны и т. д.
Контроллер SCI (USART)
Платформы DSTni содержат несколько традиционных последовательных асинхронных портов, позволяющих легко реализовать подключение к таким интерфейсам, как К5485, К5422 и К5232. Каждый последовательный порт работает независимо. К основным достоинствам асинхронных портов можно отнести:
• отдельные буферы чтения записи для поддержки дуплексного обмена;
• программируемый генератор скорости передачи данных;
• 7-, 8- и 9-разрядный формат байтов;
• аппаратный контроль паритета;
• 1 или 2 стоповых бита;
• поддержка символов заголовка сообщения с генерацией прерываний;
• функция прямого доступа к памяти. Дополнительной особенностью контроллера SCI является аппаратная поддержка сигналов квитирования данных RTS/CTS, а также протокола DCE/DTE.
Контроллер ^ (только в DSTni-EX) и SPI
Интерфейсы 12С и SPI в основном применяются для внутрисхемного обмена данными между микросхемами, например, АЦП, ЦАП, датчиками температуры и т. д.
Шина 12С является 2-проводным интерфейсом с включением узлов по схеме монтажного «И». Контроллер 12С поддерживает режимы ведомого и ведущего шины с 7- и 10-разрядной адресацией, а также мультимастерный режим работы шины с контролем арбитража шины.
Контроллер SPI DSTni поддерживает все
4 режима синхронизации данных высокоскоростного интерфейса БРІ с возможностью программного выбора от 1 до 8 бит в байте. В режиме ведущего SPI может программно устанавливать частоту синхронизации интерфейса SPI, все транзакции данных выполняются по инициативе ведущего. В режиме ведомого данные принимаются и передаются синхронно с внешним тактовым сигналом.
Порты ввода-вывода
Каждый из 32 программируемых пользователем портов ввода-вывода может быть настроен для работы в режиме входа или выхода. Все 32 порта имеют встроенную подтяжку к напряжению питания или нулевому уровню в зависимости от выбранной функции.
Дополнительно в платформе DSTni-LX предусмотрено 8 кбайт 8-разрядной двухпортовой памяти, функционально совместимой с микросхемой IDT7005. Для работы двухпортовой памяти задействуется 27 из 32 портов ввода-вывода.
Компоненты и технологии, № 8'2004
Средства проектирования
Для разработки изделий на основе платформ DSTni-LX и DSTni-EX применяются инструментальные средства стандарта x86. Наиболее удобным инструментом является внутрисхемный эмулятор (ICE) VSA-8X/18X, подключаемый к DSTni по JTAG-интерфейсу IEEE 1149.1. Внутрисхемный эмулятор позволяет загружать исполняемый код, устанавливать точки останова и трассировки, просматривать содержимое памяти, регистров управления и многое другое.
Интегрированная среда проектирования (IDE) Paradigm C++ содержит все необходимые средства для разработки программного обеспечения (редактор исходного кода, компилятор C++, отладчик, контроль версий ПО и др.). IDE Paradigm C++ работает под управлением операционных систем Windows 9x, Windows NT 4.0, Windows 2000, Windows ME.
Разнообразные оценочные комплекты позволяют быстро начать разработку изделия, а также оценить возможности платформ DSTni. В состав оценочных комплектов могут входить:
• плата с установленной платформой DSTni и вспомогательными микросхемами;
• внутрисхемный эмулятор-отладчик;
• интегрированная среда проектирования Paradigm C++;
• операционная система реального времени (RTOS);
• документация и примеры программ.
К сожалению, объем данной статьи не позволяет детально рассмотреть все особенности платформы DSTni. Богатый набор поддерживаемых интерфейсов и гибкость их настройки позволяют эффективно строить высокоинтеллектуальные мосты между разнородными сетями управления и передачи данных.
В следующей статье будет представлено описание готовых решений компании Lantronix на основе платформ DSTni.