Новое семейство 8-разрядных микроконтроллеров для автомобильной электроники компании Freescale Semiconductor

Новое семейство 8-разрядных микроконтроллеров

для автомобильной электроники компании Freescale Semiconductor

Статья посвящена описанию 8-разрядных микроконтроллеров семейства S08 для автомобильной электроники, выпускаемых компанией Freescale Semiconductor.

Анастасия СИТАЛО Хай Нинь НГУЭН

Компания Freescale Semiconductor является известным мировым производителем микроконтроллеров (МК) для автомобильной электроники. Продукция компании ориентирована на новейшие тенденции в развитии автомобильной промышленности. Объем продаж 8-разрядных МК компании для данного сегмента рынка за период с 2000 по 2006 год превысил 1 млрд экземпляров.

Freescale Semiconductor предлагает широкую гамму 8/16/32-разрядных МК с разнообразной периферией и в корпусах разных ти-

пов, с большим диапазоном объема ИазЬ-па-мяти и совместимостью по функциям и разводке выводов для МК различных семейств. 8-разрядные МК семейства 808 представляют собой СБС-процессоры, выполненные по технологии 0,25 мкм. Они характеризуются высоким быстродействием (частота процессора до 40 МГц, частота шины до 20 МГц), широким диапазоном рабочего питающего напряжения (от 2,7 до 5,5 В), наличием оптимальных энергосберегающих режимов (табл. 1), улучшенной, по сравнению с предыдущими семействами МК, электромагнитной совмес-

тимостью, наличием специализированных модулей автомобильных интерфейсов CAN и LIN, а также встроенной Flash-памятью объемом до 128 кбайт. Все эти качества являются в настоящее время необходимым условием для успешного применения МК в области автомобильной электроники. На рис. 1 представлена иерархическая структура семейства S08 в зависимости от степени интеграции периферийных модулей. Как видно из рисунка, все семейство состоит из трех серий:

• Серия D — высокоинтегрированные МК, обладающие наибольшим числом периферийных модулей и числом выводов, а также большим объемом внутренней Flash-памяти. Предназначены для применения в централизованных системах управления (Body Control), информационных шлюзах CAN — LIN, бортовых компьютерах и т. д.

• Серии E, A представляют собой МК со средней степенью интеграции периферийных модулей, однако следует отметить наличие специализированного модуля SLIC у МК серии EL, предназначенного для работы Slave-узла сети LIN (подробнее см. ниже). Область применения данных МК — это конечные мехатронные системы в распределенных сетях автомобиля: подсистемы дверного модуля, управление двигателями постоянного тока и т. д.

• Серия S — простейшие и самые дешевые представители семейства S08, обладающие минимальным набором периферийных модулей и памяти. Предназначены для применения в простейших системах управления: подрулевые переключатели, стеклоочистители и т. д.

Для обеспечения функций защиты от сбоев все МК данного семейства снабжены модулем слежения за понижением напряжения питания LVD, сторожевым таймером COP с независимым источником тактирования, а также функциями защиты содержимого памяти (Flash и ОЗУ) от несанкционированного доступа.

S08EN Family

20MHz, .25u MCG 32-48 pin

S08EL Family

20MHz, ,25u SLIC (LIN), EE, ICS 20-28 pin

S08SL Family

20MHz, .25u SLIC (LIN), EE, ICS 20-28 pin

S08SG Family

20MHz, .25u ICS

8-28 pin

Рис. 1. Иерархическая структура семейства S08

Таблица 1. Особенности работы МК в различных режимах пониженного энергопотребления на примере МК серии MC9S08AW

Режим Свойства Выход из режима Ток потребления

RUN (рабочий) Полное функционирование - 75G мкА* - 16,8 мА**

WAIT Источник тактирования внутренней шины остается активным. Центральный процессор не тактируется. Периферийные модули могут тактироваться опционально. Пониженный уровень помех во время преобразования АЦП. Регулятор напряжения остается активным, из-за этого энергопотребление существенно возрастает по сравнению с STOP2 и STOP3. По прерыванию от любого активного модуля, либо по сбросу МК 5GG мкА*

STOP3 Центральный процессор, периферийные модули в энергосберегающем режиме. Регулятор напряжения в энергосберегающем режиме. Содержимое ОЗУ и регистров сохраняется, повторная инициализация системы после выхода из режима не требуется. Состояние портов ввода/вывода фиксируется. Опционально работает АЦП, KBI, RTI, LVD. По прерыванию от любого активного модуля: НО, КВІ, ЮУ, НІ, АЦП либо по сбросу МК 825-122G нА***

STOP2 Центральный процессор, периферийные модули отключены. Регулятор напряжения в энергосберегающем режиме. Содержимое ОЗУ сохраняется. Текущее состояние портов ввода/вывода фиксируется. Состояние регистров периферийных модулей сбрасывается, после выхода из режима необходима их повторная инициализация. LVD не работает. Опционально работает RTI. По прерыванию от ІЮ, НІ, либо по сбросу МК 72G-1G2G нА***

STOP1**** - -

* — при частоте ядра 2 МГц, частоте шины 1 МГц, напряжении питания 5 В, температуре 25 °С, все модули, кроме АЦП, разрешены, но не работают

** — при частоте ядра 40 МГц, частоте шины 20 МГц, напряжении питания 5 В, температуре 25 °С, все модули, кроме АЦП, разрешены и работают

*** — в зависимости от того, какие модули работают

**** — данный режим для МК, специализированных для автомобильной электроники, отсутствует

Система тактирования МК семейства S08 предлагает использование различных источников: универсального тактового генератора с фазовой автоподстройкой частоты (ФАПЧ), автоматической подстройкой частоты (АПЧ), а также внутреннего генератора.

Все микроконтроллеры семейства S08 оснащены модулями внутрисхемного эмулятора (In-Circuit Emulation — ICE) и отладчика (Background Debug Module — BDM). Эмулятор позволяет проводить отладку прикладной программы в режиме реального времени на рабочей частоте МК, задействовав всю периферию. Для работы модуля BDM необходимо задействовать только один специально предназначенный вывод МК, что обеспечивает легкость при программировании и отладке системы.

В набор инструкций центрального процессора были внесены дополнительные команды для оптимизации программирования на Си за счет сокращения объема программного кода. Также была повышена эффективность работы с памятью благодаря новой возможности использования 16-разрядного указателя стека в режиме индексной адресации. При этом МК семейства S08 полностью совместимы по объектному коду с МК предыдущих семейств — HC05 и HC08.

При обзоре периферийных модулей хотелось бы отметить 10-разрядный АЦП со временем преобразования до 2,5 мкс, модуль таймера с аппаратным режимом широтно-импульсной модуляции, встроенный регулятор напряжения, позволяющий МК функционировать на полной рабочей частоте во всем рабочем диапазоне питающего напряжения, а также присутствующий почти во всех кристаллах модуль I2C. Все МК семейства S08, предназначенные для автомобильной электрони-

ки, имеют расширенный температурный диапазон от -40 до +125 °С и выпускаются в корпусах, сертифицированных для данного применения, а также отвечают всем требованиям по электромагнитной совместимости.

Более подробное описание архитектуры МК семейства S08 проведем на примере наиболее сложного микроконтроллера MC9S08DZ60 (рис. 2).

Основные свойства данного МК:

• 60 032 байта Flash-памяти;

• 4096 байт ОЗУ;

• 2048 байт EEPROM;

• 32 (LQFP), 48 (LQFP) или 64 (QFN или LQFP) вывода в зависимости от типа корпуса;

• 2 аналоговых компаратора (AMP1, AMP2) (доступно только в 64-выводном корпусе), каждый для сравнения двух аналоговых сигналов, либо сравнения одного аналогового сигнала на входе с опорным уровнем внутреннего источника напряжения. Выход компаратора выводится на один из портов МК. Аналоговый компаратор поддерживает работу с сигналами внутри всего диапазона напряжения питания (rail-to-rail operation);

• 10-разрядный АЦП (ADC) последовательного приближения с 24, 16 или 10 каналами в зависимости от типа корпуса;

• встроенный модуль отладки (On-Chip Debug System — DBG);

• модуль I2C (Inter-Integrated Circuit);

• модуль прерывания по внешнему событию (External Interrupt Request — IRQ);

• система тактирования на универсальном тактовом генераторе (Multi-Purpose Clock Generator — MCG) с различными опциями тактирования PLL, FLL (с частотой от 31,25 до 38,4 кГц или от 1 до 16 M^) или внутренний источник тактирования;

• контроллер CAN-интерфейса (MSCAN) с реализацией протокола обмена CAN2.0A/B, поддержкой стандартного и расширенного формата данных, наличием 5 приемных и 3 передающих буферов FIFO и настраиваемым форматом фильтрации при приеме идентификатора: 2x32 бит, 4x16 бит или 8x8 бит;

• модуль счетчика реального времени (RealTime Counter — RTC) программируется в качестве источника периодического прерывания. Может использоваться для выполнения определенных задач через заданные промежутки времени, либо для периодического вывода МК из режима пониженного энергопотребления;

• 2 модуля асинхронного последовательного интерфейса (Serial Communications Interface SCI1 и SCI2) — линии приема и передачи модуля SCI2 могут быть программно скоммутированы на выводы PTF1 и PTF0, либо на выводы PTE7 и PTF6;

• модуль синхронного последовательного интерфейса (Serial Peripheral Interface — SPI), поддерживающий двунаправленный обмен с различными внешними периферийными устройствами;

• два 16-разрядных модуля таймера с возможностью аппаратной широтно-импульсной модуляции (Timer Pulse-Width Modulator) TPM1 и TPM2, причем TPM1 может содержать до 6 каналов (в 64- и 48-выводных корпусах), а TPM2 содержит 2 канала (источники тактирования каждого модуля TPM программируются индивидуально, при этом может использоваться либо внешний источник, либо различные делители частоты от внутренних источников; каналы модулей TPM могут быть настроены для функционирования в режимах входного захвата по выбранному фронту, выходного сравнения или буферированной центрированной ШИМ);

• модуль сторожевого таймера (Computer Operating Properly — COP);

• модуль слежения за понижением напряжения питания (Low-Voltage Detection— LVD) с настраиваемым порогом срабатывания (4,3 или 2,56 В); при снижении напряжения питания до выбранного значения может быть сгенерировано прерывание или сброс МК.

Микроконтроллеры серий DZ, DV, DN

МК серий DZ, DV, DN представляют высокоинтегрированные МК семейства S08. К особенностям данной серии можно отнести большое количество выводов (от 32 до 100), большой объем Flash-памяти (16-128 кбайт), наличие универсального тактового генератора MCG, внутренний модуль таймера с суммарным числом выходных каналов до 12, а также два аналоговых компаратора. Отметим, что контроллеры представленных серий совместимы друг с другом по разводке (в со-

PTA7/PIA7/ADP7/IRQ

PTA6/PIA6/ADP6

PTA5/PIA5/ADP5

PTA4/PIA4/ADP4

PTA3/PIA3/ADP3/ACMP10

PT A2/PIA2/ADP2/ACMP1—

PTA1/PIA1/ADP1/ACMP1+

PTAO/PIAO/ADPO/MCLK

PTB7/PIB7/ADP15 PTB6/PIB6/ADP14 PTB5/PIB5/ADP13 PTB4/PIB4/ADP12 PTB3/PIB3/ADP11 PTB2/PIB2/ADP10 PTB1/PIB1/ADP9 PTB0/PIB0/ADP8

PTC7/ADP23

PTC6/ADP22

PTC5/ADP21

PTC4/ADP20

PTC3/ADP19

PTC2/ADP18

PTC1/ADP17

PTC0/ADP16

PTD7/PID7/TPM1CH5 PTD6/PID6 /ТРМ1CH4 PTD5/PID5/TPM1CH3 PTD4/PID4/TPM1CH2 PTD3/PID3/TPM1СН1 PTD2/PID2/TPM1CH0 PTD1/PID1/TPM2CH1 PTD0/PID0/TPM2CH0

PTE7/RxD2/RXCAN

PTE6/TxD2/TXCAN

PTE5/SDA/MISO

PTE4/SCL/MOSI

PTE3/SPSCK

PTE2/SS

PTE1/RxD1

PTE0/TxD1

PTF7

PTF6/ACMP20

PTF5/ACMP2—

PTF4/ACMP2+

PTF3/TPM2CLK/SDA

PTF2/TPM1CLK/SCL

PTF1/RxD2

PTF0/TxD2

PTG5

PTG4

PTG3

PTG2

PTG1/XTAL

PTGO/EXTAL

Рис. 2. Внутренняя архитектура МК MC9S08DZ

BKGD/MS

RESET .

HCS08 CORE

HCS08 SYSTEM CONTROL

RESETS AND INTERRUPTS MODES OF OPERATION POWER MANAGEMENT

Vrefh -

VrfFI -

USER FLASH MC9S08DZ60 = 60K MC9S08DZ48 = 48K MC9S08DZ32 = 32K MC9S08DZ16 = 16K

USER EEPROM MC9S08DZ60 = 2K

USER RAM MC9S08DZ60 = 4K

DEBUG MODULE

VOLTAGE

REGULATOR

СОР LVD

INT IRQ

REAL-TIME COUNTER

ANALOG COMPARATOR

24-CHANNEL,10-BIT ANALOG-TO-DIGITAL CONVERTER

6-CHANNEL TIMER/PWM MADULE

2-CHANNEL TIMER/PWM MADULE

CONTROLLER AREA NETWORK

SERIAL PERIPHERAL INTERFACE MODULE

ANALOG COMPARATOR

IIC MODULE

/

/

/

АСМР10 /

< АСМР1—

^ АСМР1+ /

SERIAL COMMUNICATIONS INTERFACE

SERIAL COMMUNICATIONS INTERFACE

MULTI-PURPOSE

CLOCK GENERATOR

XTAL >

OSCILLATOR (XOSC) € EXTAL

ответствующих корпусах). В таблице 2 приведены особенности семейства S08D.

Микроконтроллеры серий AW, EN, EL

МК серий EN, EL и AW представляют собой средний уровень интеграции периферийных модулей семейства S08. Число выводов у них может составлять от 20 до 64, объем Flash-памяти от 8 до 60 кбайт. Сравнитель-

ные характеристики МК данных серий приведены в таблице 3.

Устройства серии ЕЫ содержат модуль универсального тактового генератора и выпускаются в корпусах с числом выводов 32 и 48 (как и МК серий Б2, БУ, БЫ), при этом они полностью совместимы по выводам, что упрощает разработчикам переход к системам более высокого уровня.

Особенностью МК серии ЕЬ является наличие специализированного модуля 8Ь!С

(Slave LIN Interface Controller), необходимого для упрощения создания ПО для узла LIN-сети. Аппаратными средствами данного модуля осуществляется автоматическая синхронизация и настройка частоты обмена в диапазоне 1-120 кбит/с без использования центрального процессора. Число прерываний, требуемых для обслуживания обмена данными по LIN-сети, существенно уменьшается (с 12 в обычном UART до 2 в SLIC-модуле), при этом данные, полученные в ходе

Таблица 2. Сравнительные характеристики МК DZ, DV и DN

Семейство Flash RAM EEPROM CAN UART SPI I2C АЦП Таймер Тактирование Число выводов Рабочее напряжение Дополнительные функции

DZ 16-128 KB 1-8 KB 512 B - 2 KB 1 2xSCI 2 2 до 24 каналов 10 бит АЦП 2 компаратора до 6+4+2 каналов MCG (PLL, FLL, OSC) 1GG, 64, 48, 32 2,7-5,5 40 МГц CPU, Watchdog OSC/Timer, COP, LVI, ICE, BDM, POR, KBI, датчик температуры

DV 16-128 KB 1-6 KB - 1 2xSCI 2 2 до 24 каналов 10 бит АЦП 2 компаратора до 6+4+2 каналов MCG (PLL, FLL, OSC) 1GG, 64, 48, 32 2,7-5,5 40 МГц CPU, Watchdog OSC/Timer, COP, LVI, ICE, BDM, POR, KBI, датчик температуры

DN 16-6G KB 1-2 KB 512 B - 2 KB G 1xSCI 1 1 до 16 каналов 10 бит АЦП 2 компаратора до 6+2 каналов MCG (PLL, FLL, OSC) 64, 48, 32 2,7-5,5 40 МГц CPU, Watchdog OSC/Timer, COP, LVI, ICE, BDM, POR, KBI, датчик температуры

Таблица 3. Сравнительные характеристики МК серий EN, EL и AW

Семейство Flash RAM EEPROM UART SPI I2C SLIC АЦП Таймер Тактирование Число выводов Рабочее напряжение Дополнительные функции

EN 16-32 KB 512 B - 1 KB 1xSCI 1 до 12 каналов 10 бит АЦП, 1 компаратор 4 канала MCG (PLL, FLL, OSC) 48, 32 2,7-5,5 40 МГц CPU, Watchdog OSC/Timer, COP, LVI, ICE, BDM, POR, KBI, датчик температуры

EL 16-32 KB 1 KB 512 В 1xSCI 1 1 1 до 12 каналов 10 бит АЦП, 2 компаратора 4+2 канала ICS 2G, 28 2,7-5,5 40 МГц CPU, Watchdog OSC/Timer, COP, LVI, ICE, BDM, POR, KBI, датчик температуры

AW 8-6GKB 768 B - 2 KB 2xSCI 1 1 до 16 каналов 10 бит АЦП 6+2 канала ICS 64, 48, 44, 32 2,7-5,5 40 МГц CPU, Watchdog OSC/Timer, COP, LVI, ICE, BDM, POR, KBI, датчик температуры

Таблица 4. Сравнительные характеристики МК серий SL и SG

Семейство Flash RAM EEPROM UART SPI I2C SLIC АЦП Таймер Тактирование Число выводов Рабочее напряжение Дополнительные функции

SL 8-16 KB 512 B до 256 В 1xSCI 1 1 1 до 16 каналов 10 бит АЦП, 1 компаратор 2+2 канала ICS 28, 2G 2,7-5,5 LIN Auto-Baud/Synch, 40 МГц CPU, Watchdog OSC/Timer, COP, LVI, ICE, BDM, POR, KBI, датчик температуры

SG 4-32 KB 256 B - 1 KB - 1xSCI 1 1 - до 16 каналов 10 бит АЦП, 1 компаратор 2+2 канала ICS 28,2G,16,8 2,7-5,5 40 МГц CPU, Watchdog OSC/Timer, COP, LVI, ICE, BDM, POR, KBI, датчик температуры

синхронизации, могут быть использованы для подстройки внутреннего тактового генератора. Модуль обладает необходимым количеством буферов для работы с LIN-сообщениями, производит аппаратную проверку идентификаторов и контрольной суммы байта. Наличие модуля SLIC позволяет не только существенно сократить и упростить программный код, при этом сэкономив свободное место во Flash-памяти, но и использовать однажды созданное программное обеспечение для множества приложений, даже при условии изменения скорости обмена или частоты шины МК. Высокая скорость передачи делает допустимым программирование по LIN, что упрощает процесс производства и оставляет возможность для перепрограммирования в системе.

Кроме того, микроконтроллеры серии EL содержат до 5 кбайт встроенной EEPROM и модуль внутреннего тактирования (Internal Clock Source — ICS).

Серия МК AW отличается расширенным диапазоном объема Flash-памяти (от 8 до 60 кбайт). В качестве источника тактирования этих МК используется внутренний тактовый генератор (Internal Clock Generator — ICG), не нуждающийся в каких-либо внешних компонентах. С использованием модуля ICG тактирование может осуществляться также от внешнего кварцевого резонатора или генератора.

Микроконтроллеры серии SL, SG

МК серии SL, SG — простейшие представители семейства S08. Объем внутренней Flash-памяти для МК данных серий варьиру-

ется от 4 до 16 кбайт, число выводов корпуса — от 8 до 28. В качестве устройства тактирования используется внутренний модуль ICS. Микроконтроллеры серий SL, SG и EL совместимы по разводке (в соответствующих корпусах). Сравнение МК серий SL и SG представлено в таблице 4.

МК серии SL содержат специализированный модуль SLIC (см. выше), а также до 2,5 кбайт встроенной EEPROM.

Серия SG является наиболее простой и дешевой из всего семейства МК и представляет собой модели с наименьшим объемом памяти, количеством выводов и набором периферийных модулей.

Заключение

Описанное семейство S08 для автомобильной электроники фирмы Freescale Semiconductor

обладает богатым набором периферийных модулей, широким диапазоном внутренней Flash-памяти, большим набором энергосберегающих режимов работы МК, совместимостью по корпусам внутри всего семейства, специализированными контроллерами интерфейсов LIN и CAN, а также высокопроизводительным низкопотребляющим 8-разрядным центральным процессором. Все эти особенности позволяют семейству S08 претендовать на собственную нишу на рынке современных МК для автомобильных приложений.

Литература

1. www.freescale.com

2. Крейдл Х., Куприс Г., Ремизевич Т. В., Панфилов Д. И. Работа с микроконтроллерами HC(S)08 / под ред. Д. И. Панфилова. М: Издательство МЭИ. 2005.