Критерії порівняння типів мікроконтролерів різних фірм

Критерії порівняння типів мікроконтролерів різних фірм

Це здатність виконати за один прийом операцію над числом завдовжки. Насправді, розрядність МК збігається з розрядністю його арифметично-логічного устрою (АЛУ). Якщо, наприклад, АЛУ має розрядність, то над двома числами такої довжини будь-яка допустима операція буде проведена однією командою, найімовірніше, за один машинний цикл. А над 16-розрядними числами в такому МК доведеться робити вже цілий ланцюжок операцій, включаючи пересилання, збереження проміжного результату тощо. Таким чином, продуктивність 16-розрядного МК перевищує продуктивність 8-розрядного не в два, а значно більше разів за інших рівних умов.

З остаточним переходом на КМОП технологію, питання зменшення споживаної потужності пов'язане лише зі зменшенням тактової частоти та напруги живлення. Однак, зменшення тактової частоти спричиняє зниження продуктивності МК. Найбільш розумно виглядає рішення про випуск різних версій МК для різноманітних застосувань. Так, у AVR серії фірми ATMEL випускаються і стандартні (90S) і мало споживаючі (90LS) версії зі зниженими тактовими частотами. У фірми Microchip це 16C та 16LC версії, наприклад. Крім цього, практично всі МК мають можливість програмного керування режимами енергоспоживання. Їх може бути більш ніж одна. У 8051 це Idle та Power Down, наприклад. Залежно від змісту програми, що виконується, МК може перебувати в стані 90 і більше відсотків часу (автомобільний брелок). У таких випадках відповідними командами МК переводиться в один із режимів, коли його споживання зменшується в десятки разів. Існують серії МК спочатку орієнтованіна надмале споживання та батарейне живлення, наприклад, MSP430 фірми Texas Instruments.

Безпосередньо і прямо пропорційно впливає швидкість роботи МК. Однак, це ще не остання інстанція, тому що в залежності від архітектурних особливостей різні МК можуть забезпечувати різну продуктивність при однаковій тактовій частоті. Об'єктивнішим є показникMIPS- кількість мільйонів інструкцій, що виконуються в секунду. Справа в тому, що в різних МК одна і та ж інструкція може виконуватися за один, два, чотири та більше тактів тактової частоти. Наприклад, у 8051 їх потрібно цілих дванадцять! Тільки першому випадку кожен мегагерц тактової частоти дає рівно один MIPS. Для 8051 одному MIPS відповідає 12 МГц.

Набір пристроїв вводу/виводу, які може містити МК, постійно розширюється і якщо раніше деякі з них, наприклад АЦП, були дуже рідкісні, то практично стають стандартом в комплектації. Насамперед, необхідно розмежувати між собою пристрої - ті, які призначені для забезпечення продуктивної та надійної роботи самого МК, та власне УВВ, які призначені для зв'язку із зовнішнім світом у сенсі введення вихідної та видачі обробленої інформації. До перших відносяться як відомі типу вбудованого апаратного помножувача, так і такі порівняно нові пристрої, такі як схема сторожового (Watchdog) таймера і схема виявлення провалів в живленні. Вони випускаються й у зовнішньому виконанні, але сучасний МК, зазвичай, повинен утримувати їх у кристалі. Принцип роботи вартового таймера досить простий. Будь-які програми, що виконуються МК, за визначенням циклічні. Нічого страшного не буде, якщо періодично примусово повертатися до певної (стартової) точки програми. Зате у разі їїзбою чи зависання, період неадекватної роботи МК не перевищить періоду, заданого сторожовим таймером. Контроль напруги живлення, власне, звичайний супервізор живлення, побудований на компараторах. При виході напруги за встановлені межі здійснюється генерація сигналу, щоб уникнути непередбачуваних наслідків. До цієї групи можна віднести і схеми обробки переривань, які, як відомо, можуть бути внутрішніми і зовнішніми. Як правило, обумовлюється кількість внутрішніх переривань, а кількість зовнішніх дорівнює кількості відповідних висновків МК. Власне УВВ відомі ще з часів вищезазначеної 580 серії. Це паралельні та послідовні порти, таймери-лічильники подій, пристрої доступу до пам'яті. Замість паралельних портів як таких зовнішні лінії МК зараз програмуються індивідуально. Будь-який з них може працювати як на введення, так і видачу сигналів. Різниця лише у кількості таких універсальних ліній, що, своєю чергою, визначається розмірами і типом корпусу. Багато МК усередині одного сімейства відрізняються лише цим. Універсального послідовного порту USART, як правило, досить одного, зате додатково МК можуть бути обладнані інтерфейсами типу I2C, Microwire, SPI. Таймери завдяки універсальності їх застосування становлять невід'ємну частину будь-якого МК. Вони можуть бути 8 або 16-розрядними в кількості від одного до шести і більше штук. Що стосується доступу до пам'яті, то в даному випадку йдеться про так зване внутрішньосхемне програмування (ISP). Це дозволяє вносити текст програми у внутрішню пам'ять МК після установки на плату. Також часто допускається перепрограмування Flash пам'яті МК без його демонтажу, більше того, за дводільним послідовним інтерфейсом. Далі, МК оснащуються АЦП та ЦАПами різноюрозрядності. АЦП, як правило, мають кілька входів, що перемикаються за допомогою мультиплексора. Нерідко зустрічаються вбудовані модулі ШІМ (PWM) регулювання, що корисно для керування потужними навантаженнями. Спеціалізовані МК можуть містити на кристалі взагалі все, що завгодно від драйверів LCD індикатора до інструментальних підсилювачів, компараторів, джерел опорної напруги і т.д.

Найважливішим і важливим відмінністю МК є їх приналежність до CISC чи RISC архітектурі. Перша - класична, Прінстонська архітектура передбачає потужний набір одно, двох і трьох байтових команд, які передаються, поряд з іншими даними, загальною шиною даних. Виконання однієї команди, таким чином, розтягується на кілька машинних циклів, зате ми отримуємо досить помітний результат. Ідеологія RISC (абревіатура від ), заснована на ідеї різкого зменшення числа команд для того, щоб кожна з них могла виконуватися за мінімальне число тактів. У базового сімейства МК Microchip, наприклад, їх всього 33. Одна складна команда замінюється послідовністю декількох простих, але виконуються швидко. Однак головний виграш полягає у використанні Гарвардської архітектури з окремою шиною даних пам'яті програм. По-перше, з'являється можливість одночасно зчитувати наступну команду з пам'яті своєї шині і виконувати попередню, займаючи, якщо необхідно, загальну шину даних. По-друге, розрядність шини даних програм може бути будь-якої: 10, 12, 14, 16 або більше біт, незалежно від розрядності основної шини даних, яка зазвичай відповідає розрядності самого МК. Таким чином, при довжині кодового слова 12 і більше, ми отримуємо не такий скорочений набір команд, але зчитуються і виконуються вони, проте, за один машинний цикл, який можескладатися лише з одного такту. У МК Atmel AVR до базового набору входить 192 команди. З інших архітектурних особливостей можна назвати наявність/відсутність у МК конвеєрного виконання команд. Однак найчастіше це залишається для користувача, тобто він про це може не знати. Достатньо мати дані про кінцеву продуктивність даного МК.

На закінчення, можна назвати, що всі сучасні МК ставляться до класу RISC пристроїв. Виняток становлять, мабуть, лише МК сімейства MSC-51, які досі випускаються різними фірмами у десятках модифікацій. Їхнє право на життя завойовано багатьма роками застосування та величезним накопиченим програмним забезпеченням. Найчастіше простіше та дешевше скористатися готовими бібліотеками програм, ніж прагнути до досягнення максимально можливої ​​продуктивності, тим більше, що це далеко не завжди є необхідним.