Коммуникационный процессор CMX850 с встроенным микроконтроллером производства компании CML
Некоторое время назад компания CML micro предложила заказчикам микросхему, совмещающую в себе микроконтроллер на основе ядра С51 и низкоскоростной модем V.22bis. После получения первых отзывов о работе этого модема компания CML micro внесла ряд усовершенствований, которые позволили упростить разработку устройств с применением этой микросхемы, сделать их более компактными и дешевыми.
СМХ850 объединяет в себе микроконтроллер 8051 с расширенными функциями и поддержкой стандартной системы команд, а также модем, работающий по протоколу V.22bis (2400 бит/с), последовательный интерфейс и часы реального времени, что позволяет позиционировать эту платформу как гибкий телекоммуникационный процессор.
Коммуникационный контроллер (далее МС) содержит совместимый с 8051 микроконтроллер с 256×8 битами внутренней памяти и 8Кх8 битами дополнительной памяти. Предусмотрена адресация внешней Flash-памяти объемом до 4 Мбайт. МС содержит интерфейсы для внешней памяти, ЖК-дисплея и клавиатуры. В микросхему встроен модем, поддерживающий протоколы V.22bis, V.22, V.23 и BELL. Микросхема выполняет функции генератора и детектора DTMF. Для работы с телефонной линией и телефонной трубкой в микросхеме содержатся необходимые усилители. Для работы в экономичном режиме в микросхеме предусмотрены две тактовые частоты. В активном режиме микросхеме необходим 12-мегагерцевый кварцевый резонатор (11,592-12,288 МГц), а в энергосберегающем режиме может быть использован делитель тактовой частоты (4-1024). Кроме того, в режиме энергосбережения можно использовать встроенный RC-генера-тор на 5 МГц. Для таймера реального времени необходим второй кварц на 32 кГц. Правда, как и у других производителей, которые предлагают реализацию часов реального времени на основе часового кварца и микроконтроллера, точность таких часов не гарантируется, так как точность в большей степени зависит от точности и температурной стабильности кварца, а также от программной реализации данной функции.
В таблице приведены различия стандартного микроконтроллера 8051 и микроконтроллера, входящего в состав СМХ850.
В тоже время, несмотря на отличия от стандартного МК на основе ядра 8051, основой этого коммуникационного контроллера является именно 51-е ядро со всеми его достоинствами — широчайшей популярностью, доступностью отладочных средств и т. д.
Структура памяти СМХ850 идентична стандартному микроконтроллеру 8051. СМХ850 имеет внутреннюю память данных, переменных, векторов и подпрограмм, в то время как внешняя память используется для кода программы и дополнительных данных. Пространство внутренней памяти между $7F и $FF содержит два 128-байтовых параллельно расположенных адресных блока (оперативная память IDATA и регистр специальных функций SFR).
Как уже упоминалось ранее, общий объем ОЗУ составляет 256 байтов. К младшим 128 байтам можно обратиться непосредственно или косвенно, как ив обычном 8051. Этот раздел оперативной памяти включает четыре банка памяти (восемь регистров в каждом банке, начиная с адреса $00 и до адреса $ 1F), который может использоваться как пространство регистров для обеспечения быстрого обмена данными при обслуживании прерываний. Это может быть полезно при написании многозадачных систем, где необходим быстрый переход к данным.
Адресное пространство с $20 до $2F — побито адресуемое пространство, использование которого возможно в качестве области хранения битовых флагов-установок и т. д. Верхние 128 байт внутренней оперативной памяти могут использоваться только при косвенном способе адресации. Это ограничение наложено из-за необходимости адресации к регистрам специальных функций SFR. Адресация к регистрам SFR, находящимся в том же адресном пространстве, происходит только непосредственно.
Использование регистров специальных функций в микроконтроллере 8051 позволяет расширять функциональность микроконтроллера, а также управлять режимами работы всех периферийных модулей, не прибегая к каким-либо сложным программным решениям. Регистры специальных функций расположены в верхних 128 байтах встроенного ОЗУ ($80…$FF).
МС имеет всего 6 портов ввода-вывода общего назначения, 5 из которых предназначены для работы с внешними компонентами. Практически все выводы имеют несколько функций, задание режима работы и режима энергопотребления происходит через регистры специальных функций. Порты 0, 1 и 3 являются стандартными портами и используются так же, как и в обычном микроконтроллере на основе ядра 8051. Порт 2 реализован не полностью, но доступен для команды MOVX A,@Rn и для доступа к расширенным областям памяти, реализованной на внешних элементах. Также в МС присутствуют два дополнительных порта — 4 и 5.
Для работы с внешней памятью микросхема должна содержать в своей памяти хотя бы загрузочный фрагмент, инициализирующий процесс обмена. Если этот код содержится во внешней Flash-памяти, то перед установкой на плату микросхема внешней памяти должна быть запрограммирована. Компания CML добавила небольшую загрузочную память, своего рода BIOS, которая позволяет через последовательный порт загрузить код и выполнить его. Таким образом, нет необходимости загружать эту утилиту сразу во Flash-память, до проработки печатной платы.
Наличие загрузочной памяти также позволяет производить внутрисхемное перепрограммирование ПЗУ. Происходит это следующим образом: код-программа, находящаяся в загрузочной памяти, производит конфигурирование последовательного интерфейса и производит загрузку новой программы в ПЗУ. Благодаря наличию встроенного декодера кода вызывающего абонента, о котором будет рассказано ниже, перепрограммирование ПЗУ может быть инициализировано входящим звонком с определенного телефона.
В микросхеме предусмотрены функции декодера абонентской сигнализации. Микросхема формирует и детектирует сигналы окончания сеанса связи. Детектор входящего вызова определяет все виды этого типа сигнализации: звонок (25 Гц, 100 В), смена полярности линии, а также сигнал освобождения линии.
В микросхему добавлен отдельный декодер кода вызывающего абонента, который остается активным, в то время как остальная часть микросхемы может находиться в энергосберегающем режиме. Блок идентификации абонента переводится из спящего режима в активный детектором входящего вызова, а остальная часть микросхемы все еще продолжает оставаться в спящем режиме. И только когда идентификационный номер абонента совпадает с одним из списка допустимых, тогда и остальная часть микросхемы переводится в активный режим. Эта опция позволяет существенно уменьшить энергопотребление, особенно в случае приема текстовых сообщений.
Внешние навесные компоненты должны обеспечивать равномерную частотную характеристику для того, чтобы без искажений передать DTMF-сигнал. Можно использовать в согласующей цепи наиболее дешевый трансформатор, но с учетом дополнительных корректирующих элементов стоимость заметно снизить не удастся. В качестве усовершенствования в СМХ850 добавлен программируемый эквалайзер, который позволяет установить амплитуды тональных частот индивидуально с учетом неравномерности частотной характеристики цепи согласования. Это дополнение позволяет использовать наиболее дешевые внешние элементы и упростить конструкцию.
К сожалению, во всем мире еще встречаются случаи пиратского копирования выполненной разработки другими компаниями. Защитить схемотехническую часть от копирования очень трудно, однако предотвратить копирование программного кода возможно. В СМХ850 предусмотрено скремблирование программного кода путем кодирования адресов регистров и данных. Таким образом, программный код, загруженный в каждую микросхему, может быть уникальным и не будет исполняться в другой микросхеме. Это позволяет защитить изделие от прямого клонирования. Такая защита наиболее актуальна в изделиях, предназначенных для передачи корпоративных данных.
С учетом внесенных дополнений микросхема стала более привлекательной, поэтому рассмотрим ее более подробно.
Функции ввода-вывода предусматривают поддержку клавиатуры 8 строк 16 столбцов, два выхода таймера-счетчика, ШИМ-преоб-разователь, 3 внешних прерывания, одно — с наибольшим приоритетом. Контроллер содержит последовательный порт с универсальным приемником-передатчиком со скоростью до 64 кбод.
Модем выполняет следующие функции: модуляцию в соответствии с V.22, V.22bis, V.23, V.21, Bell 202, Bell 212А, генерацию и детектирование DTMF, генерацию и детектирование одиночных тонов, детектор звонка и поднятия трубки, выделение абонентской сигнализации, сигнал освобождения линии. В модеме также предусмотрен эквалайзер и скремблер.
Встроенные АЦП содержат 10-битные регистры, схему выборки и хранения, компараторы с двумя уровнями сравнения.
Сторожевые таймеры имеют коэффициенты деления 1, 8, 64 и 256. Функция сброса предусматривает режим, при котором сохраняются текущие данные.
Такой набор функций делает микросхему привлекательной для использования в терминалах текстовых сообщений, телеметрических устройствах, охранной сигнализации с дополнительными возможностями, телефонах с добавленными функциями, приложениях электронной почты и Интернет.
• Уровни сигналов модема:
- в режиме приема: -45…-9 дБм;
- в режиме передачи: -3,2..-1,2 дБм;
- отношение «сигнал — шум» на входе: 20 дБ;
- однотоновый сигнал: -3,2…-1,2 дБм;
- двухтоновый сигнал DTMF: -1,2…+0,8 дБм;
- DTMF на входе: -30 дБм.
- Полоса детектора абонентской сигнализации по 3 дБ: 275-665 Гц. Несмотря на возможность использования стандартных отладочных средств, производитель предлагает собственную оценочную плату EV8500 (рис. 4).
В состав оценочной платы входит микросхема СМХ850, а также компоненты, на которых реализован интерфейс линии и разъем для последовательного подключения платы к головному компьютеру. Встроенное в плату программное обеспечение обеспечивает связь между платой и компьютером на основе стандартного набора АТ-команд. Программа, предназначенная для головного компьютера, обеспечивает связь с платой по последовательному интерфейсу и загрузку программы в память МС.
Плата питается от источника постоянного напряжения 3-3,6 В. Все важные сигналы могут быть измерены через тестовые точки.
Оценочная плата имеет двухпроводной интерфейс линии с гальванической развязкой, реализованной на трансформаторе.
Заключение
Применение СМХ850 позволяет сократить энергопотребление за счет перехода в спящее состояние и активизации при совпадении идентификационного номера вызывающего абонента из одного из допустимых. Встроенная ОЗУ может быть использована для загрузочного кода. Скремблирование программного кода позволяет защитить программное обеспечение.