Главная
Новости рынка
Рубрикатор



Архив новостей -->



 



   

А. Владимиров

Применение микроконтроллеров SX фирмы Ubicom

Высокопроизводительные микроконтроллеры SX фирмы Ubicom поддерживаются доступными и эффективными инструментальными средствами и используются в коммуникационных приложениях, видеообработке, подключении к Ethernet и реализации TCP/IP-технологий.

Микроконтроллеры Ubicom SX [1] имеют производительность до 100 MIPS, флэш-память программы, обеспечивают внутрисхемную отладку и программирование, совместимы с популярными микроконтроллерами PIC16C5X, поддерживаются эффективными и доступными инструментальными средствами и широкой библиотекой примеров применения [2].
Параметры основных серийно выпускаемых микроконтроллеров SX приведены в таблице.

Микроконтроллер Выводы Порты Тактовая частота, МГц Память программы ОЗУ Типы корпусов
SX18AC 18 12 50, 75 2048x12 136x8 DIP, SOIC
SX20AC 20 12 50, 75 2048x12 136x8 SSOP
SX28AC 28 20 50, 75 2048x12 136x8 DIP, SOIC, SSOP
SX48BD 48 36 50 4096x12 262x8 TQFP
SX52BD 52 40 50,100 4096x12 262x8 PQFP

Программные средства

Небольшие программы для микроконтроллеров SX эффективнее всего писать на ассемблере. Фирма Ubicom поддерживает бесплатный SASM [3] — полноценный макроассемблер, имеющий все необходимые функции. Все примеры применения Ubicom [2] также скомпилированы им. Ассемблер SASM поддерживается большинством внутрисхемных эмуляторов и программаторов для SX.
Более сложные программы можно писать на C. Для микроконтроллеров Ubicom SX существует компилятор SXC фирмы Byte Craft [4] и компилятор С2С [5], однако наиболее компактный и эффективный код получается при использовании компилятора Hitech C, бесплатная версия которого входит в комплект внутрисхемного эмулятора SX-DEV [6].
Программные симуляторы для микроконтроллеров SX не пользуются особой популярностью из-за того, что аппаратные внутрисхемные эмуляторы для них дешевы и удобны в использовании. Можно отметить бесплатный программный симулятор SxSim [7] и популярный универсальный симулятор UMPS [8], также поддерживающий микроконтроллеры SX.


Аппаратные средства

Для программирования микроконтроллеров SX можно использовать различные решения. Программатор можно собрать самостоятельно, воспользовавшись одной из опубликованных схем, например, программатор Fluffy. В практической работе обычно удобнее использовать внутрисхемный программатор, питающийся от отлаживаемого устройства, например, SX-TIPS фирмы SV TEHS (рис. 1).

SX-TIPS позволяет измерять и подстраивать частоту внутреннего RC-генератора SX и осуществлять сброс процессора.
Микроконтроллеры SX имеют встроенную поддержку функций внутрисхемной отладки, поэтому для них существуют недорогие и удобные в использовании внутрисхемные эмуляторы.

Внутрисхемный эмулятор SX-KEY фирмы Parallax (рис. 2) был первым средством отладки для SX. Это маленькая плата, питающаяся от отлаживаемого устройства. На плате имеется встроенный синтезатор частоты, позволяющий с определённой дискретностью задать тактовую частоту отлаживаемого микроконтроллера, при этом подключение внешнего источника тактовой частоты невозможно. Следует отметить, что программное обеспечение SX-KEY несовместимо с фирменным ассемблером SASM, эмулятор не поддерживает низковольтный режим работы и потребляет от отлаживаемого устройства ток порядка 100 мА. Эмулятор подключается к компьютеру через последовательный порт.
Внутрисхемный эмулятор SX-ISD фирмы Advanced Transdata (рис. 3)

отличается наличием внешнего входа останова, регулируемого внешнего источника питания, наличием встроенного синтезатора и возможностью подключения внешнего источника тактовой частоты, достаточно удобным программным обеспечением, а также довольно высокой ценой. Эмулятор подключается к компьютеру через параллельный порт.

Внутрисхемный эмулятор SX-DEV фирмы SV TEHS [6] (рис. 4) использует 6-контактный разъём с ключом от неправильной установки, совместимый с SX-KEY и SX-ISD. Эмулятор состоит из двух частей: собственно программатора/эмулятора и модуля реального времени, содержащего генератор необходимой пользователю тактовой частоты. В модуль реального времени может быть установлен кварц, керамический резонатор или 4-выводный генератор частоты, используемой в отлаживаемом устройстве. Эмулятор поддерживает работу в полном диапазоне напряжения питания и тактовой частоты для SX и потребляет от отлаживаемого устройства ток менее 5 мА. Программное обеспечение эмулятора позволяет эффективно отлаживать программу на уровне исходного текста, в том числе и на уровне исходного текста Hitech C, полностью поддерживается ассемблер SASM. Поддерживается эмуляция регистров таймеров, банка памяти 0 и регистра Options для SX48/52, имеется возможность изменения регистров в процессе эмуляции в реальном времени. Эмулятор подключается к компьютеру через последовательный порт.


Примеры применения

Фирма Ubicom опубликовала обширную библиотеку примеров применения микроконтроллеров SX для различных приложений [2]. Благодаря фиксированному времени входа в прерывание (3 такта для внутренних прерываний) и аппаратному сохранению контекста при входе в прерывание, микроконтроллеры SX позволяют программно обрабатывать многие функции, ранее выполнявшиеся в виде аппаратных модулей. Такие отлаженные программные модули собраны в библиотеку виртуальных периферийных устройств. Уже опубликовано большое число модулей: 2400...230,4K асинхронный последовательный интерфейс; 8-канальный 19,2-K асинхронный последовательный интерфейс; 8-разрядный ШИМ; несколько ШИМ выходов; 8-разрядный АЦП; 16-разрядный таймер; I2C ведущий и ведомый; SPI/mWire ведущий и ведомый; управление шаговым двигателем; сканирование клавиатуры 4x4; формирование FSK; формирование DTMF; формирование синусоидального сигнала; часы реального времени; 8- и 4-разрядные интерфейсы ЖКИ на HD44780; BELL-202 FSK модем на 1200 бод; ввод/вывод DTMF; детектирование Caller ID; детектор вызова; детектор поднятой трубки; ввод/вывод линейных сигналов; импульсный набор номера и другие. Несколько других интересных приложений рассмотрим подробнее.


Вывод видео

В январе 2001 года в рамках списка рассылки PICLIST проходил конкурс на лучший пример применения SX в видеоустройствах. Проект SERVID представляет собой простейший ASCII видеотерминал на 4 строки по 20 символов, реализуемый на недорогом SX18. Терминал позволяет выводить данные на скорости 1200 бод, поддерживает управляющие команды VT52 и автоматический скроллинг, полностью формирует композитный видеосигнал амплитудой 1 В на нагрузке 75 Ом (рис. 5).

Выбор чересстрочной или прогрессивной развёртки, числа строк и кадров для системы PAL/SECAM и NTSC осуществляется условной компиляцией. Исходные тексты проекта доступны под GPL-лицензией.


Обработка видео

Устройство выделения логотипа LOGO позволяет детектировать наличие определённого логотипа на телевизионном канале и при его появлении или исчезновении вырабатывать сигнал. Устройство имеет библиотеку идентификаторов логотипов, содержащуюся в электрически перепрограммируемой памяти, а также имеет режим пополнения данной библиотеки на основе анализа видеоизображения. При включении устройство работает в режиме поиска логотипа. Если в видеосигнале найден какой-либо логотип из библиотеки, устройство переходит в режим отслеживания: при пропадании логотипа устройство плавно (за 300...500 мс) выключает звуковой канал, при появлении логотипа — так же плавно его включает. При пропадании синхронизации (переключении каналов) устройство возвращается в режим поиска логотипа и включает звук, независимо от предыстории. Такой алгоритм работы позволяет использовать это устройство в качестве блокиратора телевизионной рекламы — на время коммерческой рекламы телевизионные каналы снимают логотип канала, а устройство детектирует этот факт, выключает звук и формирует логический сигнал, который может быть использован для управления каким-либо внешним устройством, например, паузы видеомагнитофона, переключения ТВ-канала, включения CD-ROM и так далее.
Для настройки, задания логотипов и просмотра библиотеки устройство имеет клавиатуру и режим отображения на экране, аналогичный предыдущему примеру, только с другими размерами символов. ВидеоАЦП с разрешением 150 нс по времени и 4 бита по уровню реализован на встроенном компараторе SX. На входе компаратора формируется ШИМ-сигнал. На выходе ШИМ формируется прямоугольный сигнал с периодом 64 мкс. При включении и переключении канала происходит подстройка уровня чёрного — так, чтобы сигнал на входе компаратора имел нулевой уровень в момент измерения сигнала на чёрных строках (до начала основного кадра). Период нарастания ШИМ напряжения на входе компаратора составляет 16 полукадров или 320 мс. Измерение осуществляется следующим образом: в каждом полукадре для каждой из 64 обрабатываемых точек логотипа запускается компаратор и определяется номер полукадра, в котором уровень ШИМ-сигнала превысит уровень видеосигнала. Номер этого полукадра (4 бита) запоминается в ОЗУ. Так формируется матрица 32 байта (64 отсчёта). Всё устройство реализовано на микроконтроллере SX28, FRAM 24C16 и ключе CD4053, для привязки к видеосигналу используется внешний синхросепаратор LM1881.


Встраиваемый Web-сервер на Ethernet

Фирма Ubicom опубликовала достаточную полную реализацию TCP/IP-стека для встраиваемых приложений, работающих на 10BASE-T Ethernet. Модуль SX-Ethernet построен на микроконтроллере SX52 и микросхеме интерфейса RTL8019AS, имеет интерфейсы 10BASE-T и RS232. Двухслойная плата имеет размеры 71x68x16 мм и два 20-контактных разъёма расширения. Для подключения внешней периферии остаются свободными 16 портов ввода/вывода SX52 и порт RS-232. Модуль имеет встроенное ЭППЗУ объёмом 256 Кбит для хранения содержимого web-сервера. Максимальная пропускная способность такого решения при работе по TCP/IP составляет около 1 Мбит без модификации стека и до 5 Мбит при оптимизации под конкретную задачу. Всё программное обеспечение для SX-Ethernet, схемы и чертежи платы свободно доступны.


Новый интернет процессор IP2022

В мае 2001 года фирма Ubicom начинает серийный выпуск нового коммуникационного процессора IP2022. Процессор имеет тактовую частоту 100 МГц, встроенный умножитель частоты, позволяющий использовать внешние кварцы от 2 МГц и менять тактовую частоту в процессе работы, 16-разрядные команды, выполняющиеся за 1 такт, аппаратный умножитель 8x8, 64 Кбайт (32Kx16) флэш-память программы, 16 Кбайт (8Kx16) ОЗУ программы и 4 Кбайт ОЗУ данных. Обеспечивается гарантированное время реакции на прерывание в три такта с полным аппаратным сохранением контекста. Имеется встроенный 8-канальный 10-разрядный АЦП с частотой выборки 48 кГц, дополнительный тактовый генератор 32 кГц для поддержки реального времени, 8/16-разрядный параллельный интерфейс. Для поддержки внешних интерфейсов имеются два модуля последовательно-параллельного преобразования, каждый из которых может быть использован в режимах 10BASE-T Ethernet, USB, SPI, UART, IrDA, i2C и других. Процессор имеет встроенные средства программирования и внутрисхемной эмуляции, сильно облегчающие и ускоряющие отладку. Программное обеспечение Red Hat GNU Tools включает в себя компилятор C, ассемблер, компоновщик, отладчик, симулятор и оболочку. Для конфигурации используемых программных модулей предназначена отдельная утилита. Для нового процессора уже разработан полноформатный TCP/IP-стек и ряд программных модулей.


Литература

1. А. Владимиров. Виртуальная периферия становится реальностью // Инженерная микроэлектроника. 1998. № 4. С. 24–25.
2. Ubicom Application Notes.
3. Ubicom SASM Assembler.
4. Byte Craft SXC compiler.
5. C2C compiler.
6. Внутрисхемный эмулятор SX-DEV.
7. SxSim simulator.
8. UMPS simulator.







Реклама на сайте
тел.: +7 (495) 514 4110. e-mail:admin@eust.ru
1998-2014 ООО Рынок микроэлектроники