Почему у TI так много микроконтроллеров?

44

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

Я смотрел на микроконтроллеры TI и обнаружил, что их так много. У них есть:

  • Stellaris

  • Геркулес

  • Серия MSP430

  • И список просто продолжается ...

Мои вопросы:

  • Какой микроконтроллер используется и почему?

  • При каких условиях я должен использовать микроконтроллер X, а не Y?

  • Почему так много разных микроконтроллеров?

Andy_A̷n̷d̷y̷
источник
5
Поскольку вы принимаете решение о своих требованиях, то найдите и найдите тот, который соответствует 90%, вместо того, чтобы просто купить тот, который может сделать все, и на 150% больше за трехкратную цену.
PlasmaHH
4
@PlasmaHH 90% не очень хороший выбор :)
Евгений Ш.
39
Почему так много автомобилей на выбор, когда я просто хочу поехать на работу?
Воутер ван Ооиджен
9
Примерно супер-мега: 1) MSP430: приложения с низким энергопотреблением и батареями; 2) C2000: управление двигателем и силовая электроника; 3) Tiva (TM4C): ARM-процессоры общего назначения; 4) Ситара: гораздо более продвинутая (кортекс А8, А9 и т. Д.), Вы можете запустить на нем linux; 5) Геркулес: приложения безопасности. Также есть много DSP (C5000 и C6000). Эта ссылка может быть полезной. Также у TI есть множество ссылок на руководства по выбору, которые я лично не использовал, даже 10% из них, так что не могу сказать больше ...
GAttuso
9
Отчасти ответ заключается в том, что TI приобрела ряд успешных и полу-успешных производителей микроконтроллеров и продолжила разработку и производство этих линий.
DoxyLover

Ответы:

123

Я сотрудник TI, работающий в группе разработчиков MCU, но это не официальное заявление TI. В частности, это не официальное заявление о дорожных картах или приоритетах. Кроме того, я не занимаюсь маркетингом, поэтому, если я противоречу любому из наших маркетинговых материалов, они правы, а я неправ. :-)

MD ответ правильный, но я подумал, что некоторые подробности будут полезны. TI предназначен для разных приложений с разными требованиями. Когда вы конкурируете за гнездо MCU (а в этой отрасли существует большая конкуренция), важны как функции, так и цена. Разница в стоимости в десять центов может выиграть или потерять сокет. Одним из основных факторов, влияющих на стоимость, является размер кристалла - сколько всего материала на чипе. Таким образом, имеет смысл иметь разные товарные линии и разные семейства в пределах этих товарных линий. Продуктовые линейки отличаются в основном по типам периферийных устройств и архитектуре, в то время как семейства внутри линейных продуктов отличаются в основном по стоимости и набору функций.

Вот некоторые подробности о продуктовых линейках:

  • Hercules является продолжением линии TMS470 / TMS570. Он ориентирован на безопасность и производительность. Одной из ключевых особенностей Hercules является наличие двух процессоров, выполняющих один и тот же код параллельно («блокировка»). Это позволяет сразу обнаруживать неисправности в самом процессоре. Посмотрите эту таблицу для получения информации о производительности нового продукта. Процессор Cortex-R5F работает на частоте> 300 МГц, и имеется большое количество периферийных устройств с более высокими характеристиками - например, модули CAN имеют 64 почтовых ящика. Очевидно, что это не дешево. Но посмотрите на приложения - дефибрилляторы, вентиляторы, лифты, инсулиновые помпы ... это места, где клиенты готовы платить за безопасность. Hercules также входит в автомобильную продукцию, которая имеет более широкий температурный диапазон и более длительный срок эксплуатации.
  • C2000 фокусируется на поддержке алгоритмов управления. «CPU» C28x - это действительно DSP, и его набор команд был расширен для обработки таких вещей, как тригонометрия и комплексные числа. Существует также отдельный процессор на основе задач, называемый ускорителем закона управления (CLA), который может запускать алгоритмы управления независимо от процессора. АЦП и ШИМ также поддерживают множество параметров синхронизации. Производительность варьируется от среднего уровня ( Piccolo ) до высокого класса ( двухъядерный Delfino ). Основными применениями здесь являются преобразователи питания, связь по линиям электропередачи, промышленные приводы и управление двигателями.
  • MSP430 это все о низкой мощности. У них есть некоторые продукты, которые используют FRAM (сегнетоэлектрическую энергонезависимую память), которая потребляет меньше энергии, чем вспышка, и даже ту, которая работает от 0,9 В (одна батарея). У них есть некоторые менее распространенные периферийные устройства для поддержки таких вещей, как ЖК-дисплеи и емкостное сенсорное распознавание. Просмотрите их таблицы данных, и вы увидите такие приложения, как дистанционные датчики, дымовые извещатели и интеллектуальные счетчики.
  • Я не знаю много о группе Wireless MCU, но, очевидно, беспроводная связь имеет свои особые требования. Похоже, они имеют процессоры Cortex-M и MSP430 с приложениями для бытовой электроники и Интернета вещей. IoT уже давно стало модным словом, поэтому я думаю, что это одна из их главных целей. Их новейший (?) Продукт описывается как «решение Internet-on-a-chip ™». ОБНОВИТЬСотрудник Justinrjy прокомментировал более подробную информацию о микроконтроллерах Wireless / Connectivity: «Продукты« Wireless MCU »отличаются наличием процессорного ядра, которое запускает драйверы / стек беспроводного протокола. Например, CC26xx запускает весь стек BLE на Сам uC, что делает его действительно простым для разработки. То же самое с CC3200, за исключением того, что процессор работает с драйверами WiFi на Cortex-M4. Интегрированное ядро ​​и драйверы действительно делают их «беспроводным MCU», а не трансивером. «.

Как вы можете видеть, эти продуктовые линейки предназначены для самых разных приложений с очень разными требованиями. Установка микросхемы Hercules с тактовой частотой 300 МГц в устройство с батарейным питанием была бы катастрофой, но так же, как и установка MSP430 в подушку безопасности. Физический размер также может иметь значение. 337-контактный корпус BGA неудобен для установки в крошечный сенсор, но это не то, что нужно для промышленного оборудования.

В пределах производственных линий есть многократные семьи. Устройства C2000 Delfino работают быстрее, имеют больше периферийных устройств и имеют больше контактов на своих корпусах. Они также могут стоить (как минимум) вдвое дороже, чем устройство Piccolo. Какой тебе нужен? Это зависит от вашего приложения. MSP430 имеет некоторые продукты, которые балансируют энергопотребление и производительность, и другие, которые ориентированы исключительно на низкое энергопотребление. (Этот MCU с одной батареей максимально работает на частоте 4 МГц и 2 КБ ОЗУ.)

В каждой семье много продуктов, потому что новые продукты разрабатываются постоянно. Транзисторы становятся меньше / дешевле, поэтому на микросхему может уйти больше вещей. MCU среднего уровня сегодня был бы ультра-высокого класса десять лет назад. Каждый продукт, как правило, предназначен для нескольких конкретных приложений и, где это возможно, поддерживает другие.

Наконец, есть несколько вариантов каждого продукта (AKA - последняя цифра в номере детали). Обычно они имеют разное количество памяти и (возможно) небольшие различия в доступных периферийных устройствах. Опять же, это все о предоставлении ценового диапазона.

Короткая версия заключается в том, что каждый продукт обеспечивает свой баланс цены, производительности и функций. Это старая сегментация рынка. Наши клиенты являются производителями, которые заботятся гораздо больше о небольших различиях цен , чем конечные пользователи. Люди покупают каждый номер детали, который у нас есть, поэтому очевидно, что спрос там. :-)

ОБНОВЛЕНИЕ: Джереми спросил, как требования крупных клиентов влияют на процесс проектирования, и делаем ли мы индивидуальные микроконтроллеры. Я видел несколько микроконтроллеров TMS470 / 570, которые были сделаны для одного крупного покупателя автомобилей. В этой группе также было несколько микроконтроллеров, архитектура которых была разработана одним клиентом и для него. По крайней мере, в одном из них заказчик написал большую часть RTL. Они находятся под строгими ограничениями NDA, поэтому я не могу дать подробности.

Продукты общего рынка обычно имеют в виду по крайней мере одного крупного покупателя. Иногда крупные клиенты получают специальный номер детали. Иногда мы добавляем периферийное устройство, чтобы выиграть большой сокет. Но в целом, я думаю, что крупные клиенты больше пола, чем потолка, когда дело доходит до функций.

Крайним примером нестандартных деталей является наша группа высокой надежности. Я только слышал истории об этих парнях, но, видимо, они берут существующие продукты и переделывают их для работы в экстремальных условиях - высоких температурах, радиации, стреляющих в вас людей и т. Д. Я знаю человека, который покупает HiRel TMS470 для бурения в скважине где температура может достигать 200С. (Может быть, этот - в наличии у Arrow всего за 400 долларов / чип!) У них есть несколько стандартных продуктов, перечисленных на веб-сайте, но из того, что я слышал, они могут создавать на заказ даже в небольших количествах - вы Вы можете купить дюжину версий HiRel любого чипа, если захотите, потратив $ 50 000 за чип. :-)

Как правило, все в бизнесе является предметом переговоров, если вы тратите достаточно денег.

Адам Хаун
источник
3
Ух ты какой ответ! Фантастика! Благодарю вас, сэр, за то, что вы уделили немного вашего драгоценного времени и полностью ответили на мой вопрос. Я люблю TI, и я хотел бы когда-нибудь поработать на TI. Вы, ребята, делаете отличные вещи в TI.
Andy_A̷n̷d̷y̷
4
@ Джереми: За достаточно денег вы можете получить что угодно (эти деньги можно купить). Но имейте в виду, что ваша идея «большого объема» и идеи производителя может не совпадать. Я помню, что Фонду RaspberryPi было очень трудно вести дела с Broadcom, поскольку они (Broadcom) обычно не имеют дело с такими "низкими" цифрами ...
DevSolar
5
Десять центов? Я когда-то работал в месте, где для старшего инженера экономить 1/10 процента от себестоимости производства стоило больше, чем годовая зарплата. Конечно, в таком масштабе они не покупали отдельные микроконтроллеры: они лицензировали IP и использовали его в полностью настраиваемых схемах ASIC.
Соломон Медленный
4
Инженер TI Applications звонит сюда - возможно, я смогу немного восполнить пробел в информации, касающейся части подключения / беспроводного MCU! Продукты «Wireless MCU» отличаются наличием процессорного ядра, которое запускает драйверы / стек беспроводного протокола. Например, CC26xx запускает весь стек BLE на самом UC, что делает его действительно простым для разработки. То же самое с CC3200, за исключением того, что процессор работает с драйверами WiFi на Cortex-M4. Интегрированное ядро ​​и драйверы - вот что делает их «беспроводным микроконтроллером», а не трансивером.
Джастинрджи
2
@ Rev1.0, Жесткие диски для обычных ПК.
Соломон Медленный
27

MSP430 был / является разработанным ядром TI. Это 16-битное ядро, которое продается на рынке с крайне низким энергопотреблением. Поскольку рынок 16-битных микроконтроллеров быстро испаряется с распространением Arm Cortex-M0, появляются более новые MSP430, основанные на ядре Cortex. Старые MPS430 обычно конкурируют за 8-битные сокеты.

Stellaris, переименованный в Tiva, - это бывшие микроконтроллеры Luminary Micro. Эта компания была приобретена TI, возможно, 6 или 7 лет назад. Это были (есть?) Устройства на базе Cortex-M3 / M4. Более мощный / мощный, чем MSP430 в большинстве случаев.

C2000 (Piccolo / Delfino / etc.) Предназначены для управления в режиме реального времени (управление двигателем, преобразование / регулирование мощности и т. Д.). Это семейство также имеет более низкую функциональность DSP. Ориентирован больше на промышленный, и, возможно, какой-то автомобильный (один из немногих автомобильных микроконтроллеров TI).

Геркулес сосредоточен на безопасности. Избыточность, проверка ошибок во время выполнения, BIST, множество сторожевых функций. Критически важные приложения.

Есть несколько других частей, которые имеют некоторое сочетание функций и / или нишевых функциональных возможностей (например, встроенный беспроводной, двухъядерный, FRAM и т. Д.). Кроме того, предлагаются более мощные DSP и микропроцессоры.

Какова ваша заявка? Том? Сроки разработки? Какие периферийные устройства / ресурсы вам нужны? Сколько - и какого рода вычислительной мощности требуется? Можете ли вы обойтись с аналоговыми периферийными устройствами с более низкой производительностью MCU, или вы будете выполнять всю обработку тракта сигнала внешне / дискретно? Существует множество факторов при выборе процессора / контроллера для конкретной системы / приложения.

Мэриленд
источник
6
Ядра Cortex с низким энергопотреблением называются MSP432, чтобы (минимально) отличать их от MSP430. Стелларис стала Тивой. И серия Hercules сама поделена между автомобильными и промышленными / медицинскими сериями - в основном по температурному диапазону и поддержке CAN для автомобилей, я думаю.
Брайан Драммонд
1
В какой-то момент IIRC, Hercules были ядрами Cortex-Rx, в комплекте с двойным конвейером инструкций. Предназначен для использования в контроллерах тормозов, модулях подушек безопасности и т. Д.
Крунал Десаи
1
Очень хороший ответ Вы, кажется, много знаете о TI. Я не знал, что они приобрели Luminary Micro MCU. Спасибо за ваше время.
Andy_A̷n̷d̷y̷
18

Microchip - это еще одна компания, имеющая полную линейку микроконтроллеров - более 4000 из них хранятся на Digi-Key, включая все варианты комплектации. Как и TI, они охватывают диапазон от 8 бит до 32 бит:

~2700  8-bitters: from 384 bytes Flash and 16 bytes RAM to 128 KB Flash and 4 KB RAM 
~1000 16-bitters: from 4 KB Flash and 256 bytes RAM to 1 MB Flash and 96 KB RAM
 ~500 32-bitters: from 16 KB Flash and 4 KB bytes RAM to 2 MB Flash and 512 KB RAM

Обратите внимание, что наименьшее значение указывается в байтах, а не в килобайтах.

Они варьируются в цене от 35 ¢ до 13,36 долларов США в единичных количествах. Я полагаю, что самые низкие цены могут пойти на 20 ¢ в больших количествах. Может быть, даже 10 ¢ для непроверенных (где покупатель проводит приемочные испытания вместо производителя). Самый дешевый 32-битный ARM вдвое больше в отдельных количествах при 76 ¢. Для продукта большого объема это большая разница. PIC10F200 является самым дешевым мкКл из всех почти 15000 что Digi-Key акций.

Microchip также имеет отличную репутацию за поддержание запасов своих старых микроконтроллеров (перечисленных в списке продуктов ниже как «Зрелые»), что является еще одной вещью, которую следует учитывать.

Как понять все это? Используйте селектор продукта. Digi-Key, Mouser и другие дистрибьюторы имеют довольно хорошие показатели, но они не включают в себя все параметры (у селектора продуктов Digi-Key µC меньше 20, в таблице ниже - более 50). Микрочип (и я представляю других производителей) имеет более обширные, такие как приведенный ниже. Обратите внимание, что вы можете указать диапазоны почти для всех параметров:

введите описание изображения здесь

Теперь, когда Microchip приобрел Atmel, будет интересно посмотреть, что произойдет. Кажется, в некоторых строках есть несколько совпадений.

tcrosley
источник
15

Не вдаваясь в подробности, какие предложения TI имеет (на которые уже дан ответ), я хотел бы подчеркнуть, что вам нужны спецификации. Если у вас их нет, предположите, что ваша работа - идентифицировать их. Это может быть немного сложно, если вы новичок, но давайте назовем несколько спецификаций, которые могут возникнуть в проекте:

  • Что будет делать MCU? Это ограничено временем процессора? Собираетесь ли вы сделать некоторую «специальную обработку», например, с плавающей точкой? Это определит ядро ​​процессора и требуемую тактовую частоту.

  • Или это ограничено временем автономной работы? Если так; вам нужно исследовать режимы ожидания, которые может предложить микроконтроллер, задержку на пробуждение, источники пробуждения, шину напряжения для цифрового и аналогового (например, если вы питаете его напрямую от батареи) и т. д. Кроме того, обратите внимание на все входы / выходы в системе также. У вас может быть отличный микроконтроллер, который потребляет 50 нА во время сна - но это незначительно, если, например, LDO или EEPROM потребляют 10 мкА в состоянии покоя.

  • Какой пакет можно / нужно использовать? Сколько контактов и какая технология? Сколько места у вас есть, что можно собрать?

  • Сколько кода вы собираетесь написать для него? Вы хоть представляете, сколько RAM / FLASH вам нужно? Некоторый практический опыт на доске объявлений может помочь с этим.

  • Какие интерфейсы вам нужно использовать в дизайне вашей системы, и как вы хотите их использовать? Основные начальные точки:

1) Ограничения скорости (например, мне нужен USART, работающий на 3MBaud)

2) Ограничения количества портов (например, мне нужно 5 USART)

3) Ограничения пропускной способности (например, мне нужен DMA для передачи 2 Мбит / с данных в / из USART)

4) Наблюдайте за любыми «событиями», которые могут произойти в системе, и с какими задержками вы должны столкнуться. Например, вы можете опросить пин-код устройства или вам нужен внешний пин-код для него?

Это может быть сложным вопросом, независимо от того, разрабатываете ли вы «снизу вверх» или «сверху вниз». Если вы проектируете «сверху вниз», вы можете выяснить, что на данный момент нет микроконтроллера с 16 модулями USART, которые проект системы принял как должное.

OTOH, если вы разрабатываете «снизу вверх», вы можете выбрать микроконтроллер, который вы знаете и с которым знакомы, но обнаружите, что он не имеет нужного количества ввода / вывода и нуждается в «клеевых микросхемах» для работы.

Если что-то; ознакомьтесь с предложениями продавцов. Приятно знать, где находятся ограничения, когда вы вводите все свои пожелания в параметрический поиск и получаете 0 результатов.

  • Какие-то другие конкретные ограничения? Как уже упоминалось; Некоторые микроконтроллеры имеют очень специфические периферийные устройства для управления питанием (модули PWM высокого разрешения) или безопасности (избыточность, детерминированные циклы контроля и сброса и т. д.).

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

Hans
источник