Чому TI має стільки мікроконтролерів?


44

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

Я дивився на мікроконтролери TI і виявив, що їх так багато. Вони мають:

  • Stellaris

  • Геркулес

  • Серія MSP430

  • І список просто продовжується ..

Мої запитання:

  • Який мікроконтролер використовується один і чому?

  • За яких умов я повинен використовувати мікроконтролер X, а не Y?

  • Чому так багато різних мікроконтролерів?


5
Оскільки ви вирішили вирішити свої вимоги, то знайдіть і знайдіть той, який відповідає 90%, а не просто купувати той, який може зробити все і на 150% більше за тричі ціну.
ПлазмаHH

4
@PlasmaHH 90% - не вдалий вибір :)
Євген Ш.

39
Чому на вибір так багато машин, коли я просто хочу, щоб їхати на роботу?
Wouter van Ooijen

9
Супер-мега приблизно: 1) MSP430: додатки з низьким енергоспоживанням та акумулятором; 2) C2000: управління двигуном та силова електроніка; 3) Tiva (TM4C): процесори ARM загального призначення; 4) Sitara: набагато вдосконаленіші (cortex A8, A9 тощо), ви можете запустити на ньому Linux; 5) Геркулес: застосування безпеки. Також є багато DSP (C5000 і C6000). Це посилання може бути корисним. Також у TI є багато посилань із вибору посилань, я особисто не використовував їх навіть 10%, тому більше сказати не можу ...
GAttuso

9
Частина відповіді полягає в тому, що TI придбала низку успішних і напівуспішних виробників мікроконтролерів і продовжувала розробку та виробництво цих ліній.
DoxyLover

Відповіді:


123

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

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

Ось декілька деталей щодо лінійки продуктів:

  • Геркулес - це продовження лінії TMS470 / TMS570. Він орієнтований на безпеку та продуктивність. Однією з ключових особливостей Геркулеса є подвійні процесори, які паралельно працюють один і той же код ("замок-крок"). Це дозволяє негайно виявити несправності в самому процесорі. Ознайомтеся з цією таблицею, щоб дізнатись про ефективність нового продукту. Процесор Cortex-R5F працює на> 300 МГц, і є велика кількість периферійних пристроїв з вищими можливостями - наприклад, модулі CAN мають 64 поштові скриньки. Очевидно, що цей матеріал не є дешевим. Але подивіться на додатки - дефібрилятори, вентилятори, ліфти, інсулінові насоси ... це місця, де клієнти готові платити за безпеку. Геркулес також переходить до автомобільної продукції, яка має більш широкий температурний діапазон і довший термін експлуатації.
  • Основна увага в C2000 - підтримка алгоритмів управління. "Процесор" C28x насправді DSP, і його набір інструкцій було розширено для обробки таких речей, як тригонометрія та складні числа. Існує також окремий процесор на основі завдань під назвою Control Law Accelerator (CLA), який може запускати алгоритми управління незалежно від процесора. АЦП та ШІМ також підтримують безліч варіантів синхронізації. Продуктивність варіюється від середнього діапазону ( Piccolo ) до високого класу ( двоядерний Delfino ). Основними програмами тут є перетворювачі живлення, електромережа, промислові приводи та управління двигуном.
  • MSP430 - все про низьку потужність. У них є деякі продукти , які використання FRAM (сегнетоелектріка незалежна пам'ять), яка використовує менше енергії , ніж спалахи, і навіть один , який тікає від 0.9В (одна батарея). У них є кілька менш поширених периферійних пристроїв для підтримки таких речей, як РК-екрани та ємнісний сенсорний сенсор. Перегляньте їхні таблиці, і ви побачите додатки, такі як віддалені датчики, димові сигнали та розумні лічильники.
  • Я мало знаю про групу Wireless MCU, але, очевидно, бездротове підключення має свої особливі вимоги. Вони, здається, мають процесори Cortex-M та MSP430 з додатками в побутовій електроніці та Інтернеті речей. IoT вже давно є великим словом, тому я думаю, що це одна з головних цілей. Їх найновіший (?) Продукт описується як "рішення Internet-on-a-chip ™". ОНОВЛЕННЯ: Співробітник TIer justinrjy прокоментував додаткову інформацію про бездротові / комунікаційні MCU: "Продукти бездротового MCU" відрізняються тим, що має ядро ​​процесора, яке запускає драйвери / стеки бездротового протоколу. Наприклад, CC26xx запускає весь стек BLE на Сам uC, що робить його справді легким для розробки. Те саме, що і з CC3200, за винятком того, що процесор працює з драйверами WiFi на Cortex-M4. Вбудоване ядро ​​та драйвери - це справді те, що робить цей «бездротовий MCU» замість трансивера . "

Як бачите, ці продуктові лінії націлені на дуже різні програми з дуже різними вимогами. Введення мікросхеми Геркулеса 300 МГц в пристрій, що працює на акумуляторі, було б катастрофою, але так би ставити MSP430 в подушку безпеки. Фізичний розмір також може мати значення. 337-контактний пакет BGA незручно вміщується в крихітний датчик, але це нічого не стосується промислового обладнання.

У межах товарних ліній є кілька сімей. Пристрої C2000 Delfino швидші, мають більше периферійних пристроїв та мають більше штифтів на своїх пакетах. Вони також можуть коштувати (принаймні) вдвічі дорожче, ніж пристрій Piccolo. Який вам потрібен? Це залежить від вашої заявки. У MSP430 є деякі продукти, які врівноважують енергоспоживання та продуктивність, а інші - зосереджені виключно на низькій потужності. (Цей одно батарейний MCU максимум на 4 МГц та 2 кБ оперативної пам’яті.)

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

Нарешті, існує кілька варіантів кожного продукту (AKA остання цифра в номері деталі). Зазвичай вони мають різний об'єм пам'яті та (можливо) невеликі зміни в тому, які периферійні пристрої доступні. Знову ж таки, це стосується забезпечення цінового діапазону.

Коротка версія полягає в тому, що кожен продукт забезпечує різний баланс ціни, продуктивності та особливостей. Це звичайна стара сегментація ринку. Нашими клієнтами є виробники, які набагато більше дбають про невеликі різниці в ціні, ніж кінцеві споживачі. Люди купують кожен у нас номер деталі, тому очевидно, що попит там є. :-)

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

Продукти загального ринку зазвичай мають на увазі принаймні одного великого замовника. Іноді великі клієнти отримують спеціальний номер деталі. Іноді ми додамо периферійну мережу просто, щоб виграти велику розетку. Але загалом, я думаю, що великі клієнти більше стосуються підлоги, ніж стелі.

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

Як правило, все в бізнесі є оборотним, якщо ви витрачаєте достатньо грошей.


3
Вау, яка відповідь! Фантастичний! Дякую, сер, що ви взяли частину вашого дорогоцінного часу і відповідали на моє запитання ретельно. Я люблю TI, і я хотів би колись попрацювати для TI.
Andy_A̷n̷d̷y̷

4
@Jeremy: За достатньо грошей ви можете отримати що завгодно (ці гроші можна було купити). Але майте на увазі, що ваша ідея «великого обсягу» та ідея виробника може точно не збігатися. Я пам’ятаю, що Фонду RaspberryPi було дуже важко вести бізнес з Broadcom, оскільки вони (Broadcom) зазвичай не займаються такою «низькою» кількістю
DevSolar

5
Десять центів? Я колись працював у місці, де гоління на 1/10 відсотка від вартості виробництва коштувало більше, ніж за рік зарплата старшого інженера. Звичайно, у такому масштабі вони не купували окремі MCU: вони ліцензували IP та використовували його у повністю розроблених проектах ASIC.
Соломон повільно

4
Програми TI Application Engineer тут ввімкнули - я, можливо, зможу трохи заповнити прогалину щодо інформації щодо підключення / бездротової частини MCU! Продукти "Wireless MCU" відрізняються тим, що має ядро ​​процесора, яке управляє драйверами / стеком протоколу бездротового зв'язку. Наприклад, CC26xx запускає весь стек BLE на самому UC, що робить його дуже легко розробити. Те ж саме і з CC3200, за винятком того, що процесор працює на драйверах WiFi на Cortex-M4. Вбудоване ядро ​​та драйвери - це справді те, що робить їх «бездротовим MCU», а не приймачем.
justinrjy

2
@ Rev1.0, жорсткі диски для товарних ПК.
Соломон повільно

27

MSP430 був / є ядром, розробленим TI. Це 16-бітове ядро ​​і продається як надзвичайно низька потужність. Оскільки 16-розрядний ринок MCU швидко випаровується із поширенням Arm Cortex-M0, є новіші MSP430, які базуються на ядрі Cortex. Старіші MPS430 зараз зазвичай змагаються за 8-бітні сокети.

Stellaris, який отримав назву Tiva, - колишній Luminary Micro MCU. Ця компанія була придбана TI, можливо, 6 або 7 років тому. Це були (є?) Пристрої на основі Cortex-M3 / M4. Більш здатний / потужний, ніж MSP430 у більшості випадків.

C2000 (Piccolo / Delfino / тощо) орієнтовані на управління в режимі реального часу (управління двигуном, перетворення / регулювання потужності тощо). Ця сім'я також має функціональність DSP нижнього кінця. Більше націлених на промислові, а можливо, і на автомобільні (один з небагатьох автомобільних кваліфікованих TI MCU).

Геракл орієнтований на безпеку. Надмірність, перевірка помилок під час виконання, BIST, багато функціоналів сторожового собаки. Критичні для безпеки програми.

Є кілька інших частин, які мають певний поєднання функцій та / або функціональності ніші (тобто інтегрований бездротовий зв’язок, двоядерний, FRAM тощо). І тоді пропонуються ще більш спроможні DSP і мікропроцесори.

Яка ваша заявка? Обсяг? Графік розвитку? Які периферійні пристрої / ресурси вам потрібні? Скільки потрібно - і який вид потужності для обробки? Чи можете ви обійтись за допомогою аналогової периферійної пристрої низької продуктивності MCU, чи будете виконувати всю обробку тракту сигналу зовні / дискретно? Існує багато факторів при виборі процесора / контролера для певної системи / програми.


6
Сердечники Cortex з низькою потужністю називаються MSP432, щоб (мінімально) відрізняти їх від MSP430. Стелларіс став Тивою. І серія Hercules сама по собі розділена між автомобільною та промисловою / медичною серією - головним чином на температурному діапазоні та CAN-підтримці для автомобілів, я думаю.
Брайан Драммонд

1
В один момент IIRC, Геркулес був ядрами Cortex-Rx, укомплектованими подвійними інструкційними конвеєрами блокування. Призначений для використання в гальмівних контролерах, модулях подушок безпеки тощо
Krunal Desai

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 - найдешевший µC з усіх майже 15 000 акцій Digi-Key.

Microchip також має чудову репутацію для обслуговування запасів своїх старих µC (перелічених у селекторі продуктів нижче як "Зрілі"), що ще слід врахувати.

Як зрозуміти все це? Використовуйте селектор продуктів. Digi-Key, Mouser та інші дистриб'ютори мають досить непогані, але вони не містять усіх параметрів (у селекторі продуктів µC Digi-Key менше 20, у таблиці нижче - 50). У мікрочіпа (і, як я думаю, інших виробників) є більш обширні, такі, як нижче. Зауважте, що ви можете дати діапазони майже для всіх параметрів:

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

Тепер із придбанням Microchip Atmel буде цікаво подивитися, що відбувається. Здається, в деяких рядках є досить багато перекриттів.


15

Не вдаючись до детальної інформації про те, які пропозиції TI (про це вже відповіли тут), я хотів би підкреслити, що вам потрібні технічні характеристики. Якщо у вас їх немає, припустіть, що ви їх ідентифікуєте. Це може бути трохи непосильним, якщо ви новачок, але назвімо кілька специфікацій, які можуть виникнути в проекті:

  • Що робитиме MCU? Це обмежується часом процесора? Ви збираєтеся робити якусь "спеціальну обробку", наприклад, плаваючу точку? Це визначить необхідну частоту процесора та тактову частоту.

  • Або це обмежено часом автономної роботи? Якщо так; Вам потрібно вивчити режими очікування, які може запропонувати мікроконтролер, затримку на пробудження, джерела пробудження, напрямні напруги для цифрових та аналогових (наприклад, якщо ви живите його безпосередньо від акумулятора) тощо. Додатково врахуйте всі введення / виведення і в системі. Ви можете мати чудовий мікроконтролер, який споживає 50 нА під час сну, але це мізерно, якщо, наприклад, LDO або EEPROM споживають 10 мкг.

  • Який пакет можна / потрібно використовувати? Скільки штифтів і яка технологія? Скільки місця у вас є, що ви можете зібрати?

  • Скільки коду ви збираєтесь написати для цього? Чи маєте ви уявлення, скільки потрібно оперативної пам’яті / флешу? Деякий практичний досвід на розробці може допомогти у цьому.

  • Які інтерфейси потрібно використовувати в дизайні системи та як їх використовувати? Основні початкові точки:

1) Обмеження швидкості (наприклад, мені потрібен USART, який працює на 3MBaud)

2) обмеження кількості портів (наприклад, мені потрібно 5 USART)

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

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

Це може бути складним питанням, незалежно від того, розробляєте ви «знизу вгору» або «зверху вниз». Якщо ви проектуєте "зверху вниз", ви можете зрозуміти, що в цей момент немає мікроконтролера з 16 USART, які дизайн системи сприйняв як належне.

OTOH, якщо ви розробляєте "знизу вгору", ви можете вибрати мікроконтролер, який ви знаєте і знаєте, але виявите, що він не має потрібного обсягу вводу / виводу, а для роботи потрібні "клейові мікросхеми".

Якщо щось; ознайомтесь із пропозиціями постачальників. Приємно знати, де є такі обмеження, коли ти вкажеш усі свої побажання в параметричний пошук і отримаєш 0 результатів.

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

Завжди корисно визначити вузькі місця в дизайні та спробувати їх вирішити. Дошка розробки може бути хорошим досвідом для тестування вашого коду з точки зору часу процесора, вимог до пам'яті та "примх", які може мати мікроконтролер.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.