Вход |  Регистрация
 
 
Время электроники Вторник, 11 декабря
 
 

Это интересно!

Ранее

Интеллектуальное управление в СнК на базе DSP и процессора общего назначения

Как распределить задачи по обработке ввода/вывода между процессором общего назначения и цифровым сигнальным процессором при создании встраиваемого приложения на базе системы на кристалле (СнК)? В статье на примере СнК на базе ARM- и DSP-ядер рассмотрены способы оптимизации управления вводом/выводом, а также особенности применения ОС Linux для распределения задач обработки сигнала в режиме реального времени. Статья представляет собой перевод [1].

Почему MIPS — всего лишь цифра

Показатель MIPS (миллион операций в секунду) не всегда отражает реальную вычислительную способность устройства. В этой статье объясняется, почему так происходит. Статья представляет собой сокращенный перевод [1].

16-разрядный RISC-микроконтроллер 1887ВЕ3Т на базе ядра C166SV1.2

В статье рассмотрены технические характеристики и эксплуатационные возможности 16-разрядного RISC-микроконтроллера 1887ВЕ3Т, разработанного во ФГУП «НИИЭТ» (г. Воронеж). Микроконтроллер (МК) спроектирован на базе лицензированного ядра C166SV1.2 Infineon Technologies и обеспечивает поддержку DSP-функций благодаря вычислительному модулю на кристалле (математическому сопроцессору) MAC. Высокая производительность, наличие встроенной энергонезависимой памяти и мощной периферии, включающей сетевой интерфейс CAN и внутреннюю систему отладки OCDS с JTAG-интерфейсом, позволяют использовать МК 1887ВЕ3Т в автомобильной, авиационной и судовой электронике, встроенных цифровых системах управления и связи, робототехнических комплексах, электромеханических устройствах и системах управления электродвигателями.

Реклама

По вопросам размещения рекламы обращайтесь в отдел рекламы

Реклама наших партнеров

 

26 июля

Руководство по выбору микроконтроллера

В существующем многообразии микроконтроллеров (МК) легко потеряться. В статье описана комплексная методика выбора подходящей модели. Приведены практические примеры и таблицы с основными характеристиками МК.



С

егодня на рынке представлено огромное множество МК, отвечающих практически любым требованиям — недорогие и производительные, 8-, 16- и 32-разрядные, заказные и стандартные. Приступая к проектированию устройства, разработчик непременно сталкивается с проблемой выбора. Самое рациональное решение — это собрать все характеристики воедино, чтобы выявить противоречивые требования и найти компромисс между ними как можно раньше.
Для начала следует ответить на общие вопросы, касающиеся проектируемого устройства:
1. Какие задачи выполняет устройство?
2. Каковы входные и выходные параметры?
3. Какой объем памяти необходим для хранения данных?
4. Насколько быстро система должна выполнять задачи и реагировать на события?
Далее следует переходить к более детальным требованиям:
1. Из какого материала будет изготовлено устройство и какова его ценовая категория?
2. Какова мощность потребления?
3. Есть ли ограничения по физическим размерам устройства?
4. Для каких условий эксплуатации оно предназначено?
Для наглядности в таблице 1 приведены примерные характеристики термостата. В зависимости от проекта список вопросов может быть другим.

 

Таблица 1. Характеристики бытового термостата

Перечень функций

1. Управление нагревательным элементом

2. Управление по переменному току

3. Последовательный вывод данных на ПК

4. Последовательный прием данных с ПК

5. Драйвер дисплея.

6. Сенсорный экран.

7. Контроль за температурой

8. Дешифратор команд

9. Работа в режиме реального времени

Хранение данных

32 байта – последовательный передающий буфер;

32 байта – последовательный принимающий буфер;

20 байт – анализатор команд;

10 байт – тактовый генератор реального времени;

20 байт – буфер ЖКИ;

6 байт – звуковой генератор;

45 байт – промежуточные переменные

Всего 165 байт

Входные и выходные сигналы

1. Последовательный вход RS-232

2. 4 датчика прикосновения для ЖКИ

3. Переключатель нагрев-охлаждение

4. Датчик температуры

5. Выходной сигнал нагревателя или охладителя

6. Выход RS-232

7. Сегментный ЖК-индикатор

8. Индикатор с пьезоэлементом

9. Заряд батареи

Скорость

2 кГц – скорость сканирования прикосновений;

60 кГц – скорость обновления ЖКИ;

4 кГц – звуковой сигнал;

5 Гц – управление нагревом или охлаждением;

1 Гц – проверка заряда батареи;

1 кГц – скорость последовательного порта (6900 бод)

Другие параметры

Допустимая стоимость: материалы — менее 4 долл., механические устройства — менее 2 долл., затраты на сборку — менее 10 долл.

Мощность: резервная батарея — менее 20 мкА, питание линии — менее 5 мА.

Габариты: 3×4×1 дюйма.

Условия эксплуатации:

– температура 0...30°C (работа); 20...75°C (хранение)

– синфазный шум до 3В, ESD до 1 кВ


Когда общие требования к системе определены, можно приступать к составлению списка ресурсов:
– память данных ОЗУ. В нашем примере для термостата требуется 165 байт;
– флэш-память для программного кода — 2300 слов;
– периферийные устройства. МК обязательно должен иметь встроенный АЦП и выводы для подключения ЖКИ и USART. Желательно, чтобы была функция сенсорного управления и модуль работы в режиме реального времени;
– внешние элементы. На плате должны быть установлены температурный датчик, сторожевой таймер, механизмы нагрева и охлаждения, регулятор напряжения;
– производительность процессора. Для термостата достаточно, чтобы МК выполнял 0,5–1 млн операций в секунду (MIPS).
 Заметим, что приведенные критерии не нужно задавать точно. На первом этапе достаточно приблизительной оценки.

Hardware или Software

Периферийные устройства могут быть реализованы как программно, так и аппаратно. При программной реализации увеличивается мощность потребления процессора, а при аппаратной — сложность схемы. От выбора способа реализации зависит производительность процессора, объем памяти программ, стоимость системы, размер платы и потребляемый ток.
Выбор между программной и аппаратной реализацией не всегда очевиден. Например, модуль USART удобнее сделать программно, поскольку функции приема и передачи можно моделировать. В то же время при выполнении процедуры приема данных постоянно производится проверка конца стартового бита, чтобы сохранить синхронизацию с принимаемым потоком. Эта операция может потребовать слишком много ресурсов процессора. Если произойдет прерывание, то задержка на его обработку может повлиять на процесс синхронизации. Таким образом, разработчику придется хорошо взвесить свое решение, прежде чем сделать окончательный выбор.

Многозадачность

Для реализации многозадачности необходимо сделать выбор между операционной системой реального времени (ОСРВ) и системой связанных автоматов. Оба подхода имеют достоинства. Так, ОСРВ осуществляет управление всеми переключениями, что упрощает программный код. С другой стороны, в системе автоматов требуется меньший объем памяти. От выбора того или иного пути зависит объем памяти программ и данных и зачастую мощность потребления устройства.
При выборе ОСРВ следует помнить, что они делятся на две категории: с вытеснением и без него. И в тех, и в других есть функция переключения между задачами, однако она реализована по-разному. Соответственно, не совпадают требования по объему памяти и периферийным ресурсам. Это необходимо учитывать при составлении характеристик проектируемого устройства.

Энергосбережение

Для снижения энергопотребления процессора следует применять переход в режим ожидания, либо динамическое управление мощностью, когда отключаются только неиспользуемые в данный момент блоки. В первом случае система имеет либо полный расход энергии, либо нулевой, не считая токов утечки. Во втором есть градация — блоки включаются и выключаются выборочно.
Оба метода имеют преимущества, и выбор между ними в большой степени зависит от решений, принятых ранее, на стадии разделения системы на программную и аппаратную части. Обычно предпочтение отдается режиму ожидания, если в системе нет блоков, которые должны оставаться включенными постоянно. Пока процессор находится в режиме ожидания, с помощью автоматических схем устройство может выполнять простые функции без обращения к процессору.  

Надежность

Вопрос надежности тесно связан с мощностью потребления и принципом реализации функций (программно или аппаратно). Для иллюстрации рассмотрим функцию преобразования мощности. Можно выбрать преимущественно программную реализацию с программной функцией управления в контуре обратной связи (ОС). Альтернативный путь — использовать в цепи ОС фильтр на операционных усилителях и аналоговый ШИМ.
Оба варианта используются. Разница заключается в том, что при программной реализации МК должен находиться в активном режиме, пока преобразователь работает. При этом рабочий ток становится больше. Во-вторых, если программный счетчик МК сломается, то при восстановлении МК аппаратные блоки не будут затронуты. Надежность системы с преимущественно аппаратной реализацией выше. Это особенно важно при работе в условиях высокой зашумленности.

Аналоговый сигнал или вычисление (DSP)

Следующий вопрос — принцип формирования сигналов. Для выбора МК имеет большое значение, с какими сигналами идет работа — аналоговыми или цифровыми. Достаточно сказать, что для пропорционально-интегрально-дифференциального (ПИД-) регулирования или создания цифрового фильтра МК должен иметь некоторые дополнительные ресурсы на кристалле: аппаратный умножитель, соответствующий требованиям системы, быстродействующий АЦП с высоким разрешением. Простые функции управления с ОС можно реализовать без этих устройств. Однако при этом будет задействовано больше ресурсов процессора, а скорость выполнения операций будет ниже.
В этих случаях более удачное решение — формировать аналоговые сигналы, а МК использовать только для управления. Недостаток данного подхода заключается в том, что некоторые функции требуют более высокого быстродействия и не могут быть реализованы (или это сложно) в аналоговой форме. В качестве примера можно привести нелинейный фильтр в ОС или фильтр с бесконечной импульсной характеристикой. Для таких функций лучшее или единственное решение — использовать программный подход и при необходимости — аналоговые схемы обнаружения ошибок.

Интерфейс пользователя

Последний вопрос — это назначение устройства. Оно может представлять собой как небольшую автоматическую систему контроля с простым интерфейсом пользователя, так и модуль для сложных сетевых систем с продвинутым интерфейсом. Конечно, нет смысла использовать сенсорные или QVGA-дисплеи для дешевого домашнего термостата. Однако такой интерфейс может потребоваться в сетевых устройствах в системах регулирования условий внутри здания.
При проектировании устройства необходимо оценить, какая потребуется полоса пропускания для интерфейса пользователя, и нужны ли функции передачи данных. В самых современных устройствах могут быть использованы продвинутые принципы взаимодействия пользователя с устройством, например, основанные на жестах или движении глаз.

Заключение

Итак, когда все требования обозначены, можно приступать к выбору МК. Для этого следует воспользоваться каталогами производителей (см. табл. 2). К сожалению, найти МК, подходящий по всем параметрам, удается редко. Чаще всего приходится выбирать  компромиссный вариант, исходя из требуемых характеристик. Лучшее решение — выбрать средние МК в семействе, чтобы были старшие и младшие модели. Это позволит добавлять какие-либо функции, совершенствуя устройство, либо отказываться от чего-то, снижая его стоимость.

 

Таблица 2. Характеристики микроконтроллеров Microchip

Семейство

Разрядность

Стоимость, $

Флэш -память, кБ

EEPROM, Б

ОЗУ, кБ

Производительность (МГц, MIPS

Энергосберегающий режим

Компараторы

Каналы АЦП

Разрядность АЦП

UART

SPI

I2C

USB

Ethernet

LIN

CAN

Таймеры

Захват входного сигнала

Каналов ШИМ

Параллельный порт

Сегментов ЖКИ

Напряжение питания, В

PIC24FJ64GB0

16

3,07

64

0

8,00

[32, 16]

XLP

3

13

10

2

2

2

Devi

 

да

 

5

5

5

РМР

0

2…3,6

PIC24FJ64GA0

16

3,07

64

0

8,00

[32, 16]

Да

2

16

10

2

2

2

 

 

да

 

5

5

5

РМР

0

2…3,6

dsPIC33FJ32G

16

3,07

32

0

4,00

[120, 40]

Да

 

16

10

2

2

2

 

 

да

 

5

4

4

GPIC

0

3…3,6

PIC18F2331

8

3,08

8

256

0,75

[40, 10]

Да

 

5

10

1

1

1

 

 

да

 

4

2

2

 

0

2…5,5

PIC18F67K90

8

3,08

128

1024

3,70

[64, 16]

XLP

3

16

12

2

2

2

 

 

 

 

11

10

10

 

132

1,8...5,5

PIC18F87J50

8

3,09

128

0

3,80

[48, 12]

Да

2

12

10

2

2

2

Devi

 

да

 

5

5

5

РМР

0

2…3,6

PIC32MX320F0

32

3,09

32

0

8,00

[40, 40]

 

2

16

10

2

2

2

 

 

да

 

6

5

5

РМР

0

2,3…3,6

PIC16F84A

8

3,11

1,75

64

0,06

[20, 5]

 

 

0

 

 

0

0

 

 

 

 

1

0

0

 

0

2, 6

PIC18F86K90

8

3,11

64

1024

3,70

[64, 16]

XLP

3

24

12

2

2

2

 

 

 

 

11

10

10

 

192

1,8…5,5

PIC18F87J93

8

3,12

128

0

3,80

[48, 12]

Да

2

12

12

2

1

1

 

 

 

 

4

2

2

 

192

2..3,6

dsPIC33FJ64G

16

3,12

64

0

8,00

[80, 40]

Да

2

10

12

2

2

1

 

 

 

 

7

4

4

РМР

0

3..3,6

dsPIC33FJ32M

16

3,12

32

0

4,00

[80, 40]

Да

2

9

10

2

2

1

 

 

 

 

7

4

4

РМР

0

3..3,6

PIC24HJ64GP2

16

3,12

64

0

4,00

[80, 40]

Да

2

10

12

2

2

1

 

 

 

 

7

4

4

РМР

0

3..3,6

PIC16F737

8

3,13

7

0

0,36

[20, 5]

Да

2

11

10

1

1

1

 

 

 

 

3

3

3

 

0

2..5,5

PIC18F8390

8

3,15

8

0

0,75

[40, 10]

Да

2

12

10

2

1

1

 

 

да

 

4

2

2

 

192

2…5,5

PIC18F4510

8

3,18

32

0

1,50

[40, 10]

Да

2

13

10

1

1

1

 

 

да

 

4

2

2

РSР

0

2..5,5

PIC18F2520

8

3,18

32

256

1,50

[40, 10]

Да

2

10

10

1

1

1

 

 

да

 

4

2

2

 

0

2…5,5

PIC24FJ96GA0

16

3,19

96

0

8,00

[32, 16]

Да

2

16

10

2

2

2

 

 

да

 

5

5

5

РМР

0

2..3,6

PIC18F66J65

8

3,19

96

0

3,70

[42, 10]

Да

2

11

10

1

1

1

 

10 В

да

 

5

5

5

 

0

2..3,6

PIC24FJ64GA1

16

3,20

64

0

16,0

[32, 16]

Да

3

16

10

4

3

3

 

 

да

 

5

18

9

РМР

0

2..3,6

PIC18F87K22

8

3,21

128

1024

3,80

[64, 16]

XLP

3

24

12

2

2

2

 

 

 

 

11

10

10

РSP

0

1,6..5,5


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

Литература

1. Keith Curtis. Right Sizing the Micro: Honing in on the Right MCU for the Job//RTC magazine, апрель 2011.



Вы можете скачать эту статью в формате pdf здесь.
Оцените материал:

Автор: Кит Кёртис (Keith Curtis), Microchip Technology



Комментарии

0 / 0
0 / 0

Прокомментировать





 

 
 




Rambler's Top100
Руководителям  |  Разработчикам  |  Производителям  |  Снабженцам
© 2007 - 2018 Издательский дом Электроника
Использование любых бесплатных материалов разрешено, при условии наличия ссылки на сайт «Время электроники».
Создание сайтаFractalla Design | Сделано на CMS DJEM ®
Контакты