Что значит 8 битный микроконтроллер

от admin

Структура 8-битного микроконтроллера

Как и любой 8-битный микроконтроллер микроконтроллер семейства AVR состоит из процессора гарвардской или фон-неймановской архитектуры, памяти программ, памяти данных, портов ввода/вывода, периферийных устройств и интерфейсных схем.

В начале необходимо познакомиться с основными понятиями и сокращениями микропроцессорной техники:

∙SPM — функция самопрограммирования Flash ROM памяти микроконтроллера в системе без участия внешнего программатора;

∙JTAG — стандартный интерфейс для программирования МК; ∙I/O -линии ввода / вывода;

∙POR (Power-On Reset) — начальный сброс МК. Задача — удержать сигнал сброса в активном состоянии пока не стабилизируется питание и кварцевый резонатор;

∙BOD (BrownOut Detector) — отслеживает провалы питающего напряжения. В МК обычно с регулируемым порогом(2,7В, 4В);

∙WDT (Watch Dog Timer) — сторожевой таймер для предотвращения «зависания» программы микроконтроллера;

∙BDC — аппаратный программируемый блок защиты от сбоев при внезапном (в том числе и кратковременном) пропадании напряжения питания микроконтроллера;

∙UART — асинхронный последовательный приемопередатчик; ∙SPI — синхронный трехпроводной последовательный интерфейс; ∙I2C — двухпроводной последовательный интерфейс;

∙RTC — система реального времени;

∙PWM — широтно — импульсный модулятор.

Вычислительный блок

Вычислительный блок является, пожалуй, самым отличительным блоком в МК. Он определяет концепцию построения и принцип работы с памятью.

Рисунок 3 — Функциональная схема архитектуры AVR

Гарвардская архитектура AVR реализует полное логическое и физическое разделение не только адресных пространств, но и информационных шин для обращения к памяти программ и к памяти данных, причем способы адресации и доступа к этим массивам памяти также различны. Центральный процессор работает одновременно как с памятью программ, так и с памятью данных; разрядность шины памяти программ расширена до 16 бит.

Регистровый файл с быстрым доступом содержит 32 x 8-разр. рабочих регистров общего назначения с однотактовым циклом доступа. 6 регистров из них могут использоваться как три 16-разр. регистра косвенного адреса для эффективной адресации в пределах памяти данных(X-регистр, Y-регистр и Z-регистр).

Система команд AVR весьма развита и насчитывает до 133 различных инструкций. Почти все команды имеют фиксированную длину в одно слово (16 бит), что позволяет в большинстве случаев объединять в одной команде и код операции, и операнд(ы). Лишь немногие команды имеют

размер в 2 слова (32 бит) и относятся к группе команд вызова процедуры CALL, длинных переходов в пределах всего адресного пространства JMP, возврата из подпрограмм RET и команд работы с памятью программ LPM. Различают пять групп команд AVR: условного ветвления, безусловного ветвления, арифметические и логические операции, команды пересылки данных, команды работы с битами. В последних версиях кристаллов AVR семейства «mega» реализована функция аппаратного умножения, что придает новым микроконтроллерам еще больше привлекательности с точки зрения разработчика.

Память программ

В основном все современные микроконтроллеры имеют встроенную Flash-память программ, которая может быть загружена как с помощью обычного программатора, так и с помощью SPI-интерфейса, в том числе непосредственно на целевой плате. Число циклов перезаписи — не менее 100000.

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

Память данных

Оперативная память данных:

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

11 мифов о 8-битных микроконтроллерах

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

Инженеры, которые достаточно молоды, чтобы не застать Берлинской стены или Советского Союза, предпочитают отказываться от эффективной простоты 8-битных устройств в поисках обещанной бесконечной вычислительной мощности 32-битных приборов. Но в самом ли деле 32-битные микроконтроллеры являются наилучшим выбором для любого приложения? Давайте же рассмотрим наиболее распространенные мифы и заблуждения, касающиеся старейшины рынка встраиваемых систем.

1. 8-битные микроконтроллеры уходят прочь.

Хотите верьте, хотите нет – это самое распространенное заблуждение, с которым мы сталкиваемся в пространстве 8-битных встраиваемых устройств.

Думать так – сродни тому, что недорогие экономичные автомобили последуют за вымершей птицей дронтом после изобретения внедорожников. Конечно же, этого не произойдет, и, аналогичным образом, для недорогих экономичных 8-битных микроконтроллеров всегда найдется место в мире встраиваемых систем.

Давайте попробуем подкрепить наше обсуждение некоторыми конкретными данными. Согласно отчету исследовательской компании Gartner за 2015 год, объемы продаж 8- и 32-битных устройств в долларовом выражении были примерно равны и составляли $6 млрд. С учетом разницы средних цен, эти цифры говорят о том, что в 2015 году на один встраиваемый 32-битный микроконтроллер приходилось три 8-битных. Так что же, уходят прочь? Отнюдь не так скоро.

2. В 8-битных устройствах нет ничего нового. Никаких инноваций.

Легко предположить, что производители микроконтроллеров все бюджеты своих НИОКР тратят на новые линейки 32-битных продуктов, позволяя чахнуть своим стареющим 8-битным семействам или, в лучшем случае, уменьшая размеры их кристаллов, чтобы снизить издержки производства. Истина заключается в том, что все 8-битные микроконтроллеры эволюционировали на протяжении многих лет вслед за изменениями требований рынка встраиваемых устройств. Некоторые производители микроконтроллеров совершенствуют свои 8-битные устройства, используя технологии, разработанные для 32-битных приборов. Другие же, такие как Microchip, исходя из потребностей своих клиентов, привносят в 8-битную экосистему истинные нововведения.

11 мифов о 8-битных микроконтроллерах
Рисунок 1. 8-битные микроконтроллеры Microchip имеют независимую от
ядра конфигурируемую периферию (CIP), выполняющие системные
функции без участия процессора, и могут общаться друг с другом,
что помогает повысить эффективность и быстродействие
системы, снизив при этом потребляемую ею мощность.

Например, линейки 8-битных микроконтроллеров PIC и AVR компании Microchip имеют независимую от ядра периферию (core independent peripherals – CIP), работающую без участия центрального процессора и способную обмениваться друг с другом (Рисунок 1). Это помогает повысить эффективность и быстродействие системы при одновременном снижении энергопотребления. В сочетании с современными средствами ускорения разработки, такими как MPLAB Code Configurator и Atmel START, эти инновационные 8-битные приборы позволяют конструкторам пройти путь от прототипа до серийного производства за несколько месяцев.

3. 8-битные процессоры очень сложно программировать на Си и других языках высокого уровня.

Да, это правда, что 8-битные архитектуры появились задолго до того, как во встраиваемых устройствах стали широко использоваться языки высокого уровня. Множество инженеров старой школы на самом деле все еще отказывается устанавливать новомодные компиляторы Си в свою среду разработки. Видимо, это в порядке вещей – судить не нам, – но следует отметить, что для большинства продаваемых сейчас 8-битных микроконтроллеров разработать код на современном компиляторе Си довольно легко.

В микроконтроллерах современного семейства Microchip PIC16 “F1” есть несколько инструкций, полностью посвященных устранению любых проблем, связанных со страницами и банками их адресного пространства. Если этого недостаточно, то архитектуры PIC18 и AVR имеют большие пространства линейных адресов, специально созданные для компиляторов языков высокого уровня. Естественно, что современные интегрированные среды разработки все эти проблемы сделали несущественными.

4. 8-битные микроконтроллеры можно использовать только в простых приложениях.

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

С этой целью Microchip разработала свыше двадцати видов CIP для автономного управления наиболее распространенными задачами встраиваемых систем, в результате чего процессору осталось лишь выполнение надзорной роли. Использование CIP делает реакцию приложения более детерминированной, не говоря о том, что намного упрощает его реализацию, избавляя от раздражающей необходимости в написании и отладке процедур обработки прерываний. Это тот случай, когда простота приносит пользу.

5. Мощности 8-битных устройств недостаточно для устройств Интернета вещей.

В нашем представлении приложения Интернета вещей (IoT) – это умные часы, узел беспроводного аудио или какая-то другая столь же сложная встраиваемая система. Однако реальность заключается в том, что «вещи», содержащиеся в приложениях IoT, выполняют довольно простые задачи. Это сенсорные переключатели, датчики, беспроводные лампочки и сетевые устройства открывания гаражных дверей; это кнопка в вашей прачечной, автоматически подающая стиральный порошок, когда вы нажимаете на нее.

Эти системы выполняют измерения. Они посылают данные в Интернет через ваш домашний роутер. Они управляют простыми импульсными источниками питания. Они просыпаются, когда их «толкает в бок» сеть. Они выполняют свою работу, расходуя очень мало энергии. И все это – именно те задачи, под которые специально разрабатывались новейшие 8-битные микроконтроллеры. Поэтому, если в следующем вашем устройстве IoT не будет 8-битника, значит, вероятно, что вы упустили возможность оптимизировать свое приложение.

6. 8-битные процессоры слишком медленны, чтобы реагировать на критические системные события.

Помните об этом: время отклика на критические системные события связано с задержкой и детерминизмом.

Не секрет, что почти все 32-разрядные микроконтроллеры при работе на полной скорости превосходят 8-битные приборы на их максимальной тактовой частоте. Однако большинство приложений не располагает бюджетом мощности, достаточным для того, чтобы 100% времени поддерживать работу любого микроконтроллера на максимальной скорости. Поэтому общая практика проектирования заключается в том, чтобы использовать режим ожидания процессора для снижения энергопотребления, пока он не нужен, и разбудить его с помощью аппаратного прерывания, когда процессор понадобится вновь. Но такой подход порождает две самые большие проблемы, с которыми сталкиваются приложения во время работы: неопределенность времени запуска и задержки реакции на прерывание. Эти факторы должны обязательно приниматься во внимание при программировании приложения, так как в противном случае результаты могут быть катастрофическими.

Читать:
Atmel studio как отлаживать

Микроконтроллеры с CIP позволяют разработчикам заменить большинство чувствительных к задержкам элементов своих приложений малопотребляющими аппаратными блоками с фиксированными функциями. Этим обеспечивается быстрый и предсказуемый отклик на критические события при ничтожно малом потреблении энергии.

7. 32-битные микроконтроллеры более энергоэффективны, чем 8-битные.

Так же, как все знают, что 32-битные микроконтроллеры – самые быстрые во встраиваемых устройствах, так все понимают, что более быстрым 32-битникам требуется больше энергии. Не будем спорить, но некоторые инженеры считают, что могут использовать всю эту скорость, чтобы немного «обмануть систему». В основном, они исходят из того, что, ускоряя работу процессора, можно на большее время погружать его в спячку. Значит, 32-битные микроконтроллеры более энергоэффективны, чем 8-битные, правильно? Нет, не правильно.

Даже если на обеих архитектурах вы выполняете примерно эквивалентные подпрограммы, гораздо более низкое потребление энергии в активном режиме 8-битного микроконтроллера гарантирует больший срок службы крошечной батареи. Добавьте к этому тот факт, что большинство современных 8-битных микроконтроллеров имеют лучший баланс периферийных функций, чем 32-разрядные устройства сопоставимой стоимости. Это позволяет «менее мощным» микроконтроллерам выполнять больше задач на аппаратном уровне, оставляя центральному процессору больше времени для спящего режима. В некоторых распространенных приложениях, использующих новые 8-битные микроконтроллеры PIC и AVR, время активного состояния центрального процессора почти равно нулю.

8. 32-битные стоят столько же, но имеют удвоенную производительность.

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

8-битные микроконтроллеры Microchip оснащены интеллектуальными аналоговыми периферийными устройствами, способными без вмешательства центрального процессора автоматизировать задачи анализа сигналов, предоставлять корректирующую информацию широтно-импульсным модуляторам (ШИМ) и обеспечивать автоматическое отключение. Эти 8-битные устройства могут значить сократить количество внешних компонентов и сохранить массу денег. Лучший совет – посмотреть на реальные потребности всего приложения и выбрать микроконтроллер, который сможет решить задачу при минимальной стоимости системы. Тогда вы никогда не ошибетесь при выборе оптимальной конфигурации своей системы.

9. У 8-битных решений нет перспективы.

Выбор микроконтроллера с прицелом на непредсказуемые рыночные тенденции далекого будущего никогда не будет гарантированно успешным, но почти наверняка приведет к непредвиденным последствиям. Невозможно определить, что будет в будущем. Если рынок перейдет к совершенно другому набору функциональных требований, полное перепроектирование системы потребуется независимо от того, используете ли вы 8-, 16- или 32-битный микроконтроллер.

Выбор «самой подходящей» архитектуры для любого проекта основан на пожеланиях и требованиях, которые должны быть определены на начальном этапе проектирования. Такой подход позволит сократить стоимость разработки программ и аппаратуры до минимума. 8-битные микроконтроллеры PIC или AVR часто помогают снизить общую стоимость аппаратного оборудования, а встроенные в «железо» функции могут значительно снизить затраты на программирование в течение всего срока службы устройства.

10. 32-битные микроконтроллеры сокращают время разработки программ.

Написать программный код несложно. Намного сложнее написать работающий код. Люди, поддерживающие миф номер 10, обычно недооценивают количество времени и усилий, необходимых для тестирования, отладки и проверки их кода в рабочем приложении. Или же все они гении программирования. Один день кодирования может вылиться в месяцы проверки (Рисунок 2).

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

Приложения, использующие 32-разрядные микроконтроллеры, как правило, ориентированы на программное обеспечение. Это означает, что вся необходимая функциональность реализуется в подпрограммах, поэтому эффективного способа избежать цикла отладки не существует. Оба 8-битных микроконтроллера PIC и AVR предназначены для более эффективного использования своих периферийных устройств, чтобы сократить количество строк кода, необходимых для реализации общих функций. Это ускоряет процесс разработки, поскольку программирование становится простым, а функциональность аппаратуры проверена на заводе (Рисунок 3).

Рисунок 3. 8-битные микроконтроллеры PIC и AVR предназначены для более эффективного
использования своих периферийных устройств, чтобы сократить количество
строк кода, необходимых для реализации общих функций. Это ускоряет процесс
разработки, поскольку программирование становится простым, а функциональность
аппаратуры проверена на заводе.

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

11. Миграция с 8-битных микропроцессоров невозможна.

Возможность миграции зависит в большей степени от используемой вами среды разработки, чем от какого-либо конкретного микроконтроллера или части оборудования. Если миграция является ключевой проблемой, то лучше всего использовать микроконтроллеры производителя, предлагающего «полную линейку» 8-, 16- и 32-битных приборов, поддерживаемых совместимой экосистемой разработки. В наши дни именно среда разработки, а не оборудование, определяет легкость перехода от одного микроконтроллера к другому. Хорошо продуманная среда разработки, такая как MPLAB X или Atmel START от Microchip, позволяет пользователям реализовать свои идеи на любом микроконтроллере компании.

Если вы проектируете очередной Linux-суперкомпьютер, который будет носиться на запястье, то имеет смысл начинать и заканчивать поиск микроконтроллера среди новейших и лучших 32-битных устройств. Но если вы, как и все остальные, добавляете в обычные повседневные системы интеллект, управляемость и детерминизм, вы совершили бы большую ошибку, если бы не включили в свой список новые 8-битные микроконтроллеры. Вы получите наименьшую мощность потребления, невероятно полезные периферийные устройства и исключительную простоту разработки. Что вам в этом не нравится?

Разница между 8-битным микроконтроллером и 16-битным микроконтроллером

Прежде чем обсуждать 8- и 16-битные микроконтроллеры, жизненно необходимо понять, что такое микроконтроллер. Микроконтроллер — это одиночный и небольшой чип, имеющий встроенную схему, процессорное ядро ​​и встроенные программируемые периферийные устройства ввода / вывода. 1 бит до 512 бит — частый случай микроконтроллеров. Здесь мы поговорим о 8- и 16-битных микроконтроллерах и их разновидностях.

Что такое 8-битный микроконтроллер?

8-битный микроконтроллер — это тип микроконтроллера, обладающий всеми характеристиками микроконтроллера, а его информационные гаджеты в основном имеют размер 8 бит. 8-битный размер означает, что ваш ЦП может использовать 8-битную информационную шину или канал и может вводить аналогичную информацию о размерах с помощью одной машинной инструкции. Для каждого цикла команды его колебание составляет от нуля до 255. Для работы требуется ток 20 мА. Intel 8008 была первой моделью с 8-битным микроконтроллером.

Что такое 16-битный микроконтроллер?

16-битный микроконтроллер дополнительно превосходит 8-битный микроконтроллер. Это дополнительное право и точное выполнение математических и технических задач. В отличие от 8-битного микроконтроллера, он использует 16-битную информационную шину или конвейер для одной инструкции. Для каждого цикла инструкции его битовое колебание увеличивается с нуля до 65 535. Поскольку 16-битный контроллер в 2 раза лучше, чем 8-битный, он, вероятно, будет работать с двумя 16-битными числами. Чтобы продержаться, требуется ток 10 мА.

Микроконтроллер 8-разрядный это тоже самое что 8-битный микроконтроллер?

Подскажите пожалуйста, небольшой вопрос , касающийся терминологии . Микроконтроллер 8- разрядный это тоже самое что 8- битный микроконтроллер ? Или есть разница ?

Можно ли сказать что микроконтроллер и блок управления одно и тоже ?
В разных источниках не совсем ясно про это говорится

Какой это микроконтроллер ик-приемника?
Микроконтроллер ик-приемника светильника с маркировкой QIR-S8X 1908A. Кварца рядом нет.

Кофе это тоже самое что и Сигареты
Пить постоянно кофе тоже самое что и курить табак, если подумать эти вещи практически одно и то же.

Что за микроконтроллер?
есть микроконтроллер название затерто осталась пара букв все что знаю 100 ног USB 3 USART(.

Как глобально научить php, что ar->a это тоже самое что ar["a"]
Как глобально научить php, что ar->a это тоже самое что ar Смысл вообще разделять синтаксис на.

. хм, интересно. ну, я еще прочитал объяснение как разрядность — это "количество разрядов шины данных микроконтроллера." <c>.

Как мне кажется — "разрядность", как и "битность" МК — это количество бит самых близких регистров, которые обрабатываются АЛУ процессора в одно действие. В общем случае, тут ни шина, ни ширина ячейки памяти значения не имеют. Вот, немного, об однобитном процессоре.

Сообщение от liv

Сообщение от liv
Сообщение от liv

ну я думаю что 16ти-битный.

В принципе есть же и обратный пример — шина данных видеокарты — 128. 512 бит (не суть важны крайние величины). То есть и процессор видеокарты — тоже соответствует этому количеству бит данных?

Сообщение от Voland_

А разрядов сколько? С учетом выше сказанного?
Получается, 8-ми разрядная шина. Для видеокарт — 128. 512 разрядная. Так?

По мне, так одинаково, что биты, что разряды. Надо говорить отдельно о битах/разрядности контроллера/процессора
и о битах/разрядности шины. Т.к. бывают, что они совпадают, а бывают, что и нет

я думаю, слово "разряд" пришло из советской электроники, содраной со слова "бит". Отсюда и все разночтения. Вы можете перевести слово "разряд" на английский? гугел предлагает слово "bit" в этом случае.

А далее — вопрос интересный. Как по мне, когда шина — не соответствует регистру в контроллере, он должен группировать — либо такты на обработку, либо такты на чтение и запись. Более того, некоторые "составные" команды в этом случае возможны (то есть 16ти-битный или 32х-битный опкод на 8ми-битном процессоре). Но как правило они представляют собой сборку "команда+данные".

PS: для меня иногда вообще малопонятно — для чего отмечается "разрядность" платформы. Как правило, она может косвенно указать на минимальный размер опкода команды, но в общем случае явно ни на что больше не указывает. Ни эффективность кода, ни скорость обработки на это явно (однозначно) не указывает.

Похожие публикации