Микроконтроллеры

Автор работы: Пользователь скрыл имя, 24 Октября 2013 в 19:21, реферат

Краткое описание

Микроконтроллер (MCU) микросхема, предназначенная для управления электронными устройствами. Типичный микроконтроллер сочетает в себе функции процессора и периферийных устройств, может содержать ОЗУ и ПЗУ. По сути, это однокристальный компьютер, способный выполнять простые задачи. Использование одной микросхемы, вместо целого набора, как в случае обычных процессоров, применяемых в персональных компьютерах, значительно снижает размеры, энергопотребление и стоимость устройств, построенных на базе микроконтроллеров. Микроконтроллеры являются основой для построения встраиваемых систем, их можно встретить во многих современных приборах, таких, как телефоны, стиральные машины и т. п.

Содержание

Введение
1. Общая часть
1.1 Классификация и структура микроконтроллеров
1.2 Структура процессорного ядра микроконтроллеров
2. Специальная часть
2.1 CISC и RISC архитектура процессора
2.2 RISC- архитектура
2.3 Микроконтроллер с RISC архитектурой
Заключение
Список используемой литературы

Прикрепленные файлы: 1 файл

микроконтроллеры.docx

— 42.78 Кб (Скачать документ)

Одним из важных преимуществ RISC-архитектуры является высокая  скорость арифметических вычислений. RISC-процессоры первыми достигли планки наиболее распространенного стандарта IEEE 754, устанавливающего 32-разрядный  формат для представления чисел  с фиксированной точкой и 64-разрядный  формат "полной точности" для чисел  с плавающей точкой. Высокая скорость выполнения арифметических операций в  сочетании с высокой точностью  вычислений обеспечивает RISC-процессорам  безусловное лидерство по быстродействию в сравнении с CISC-процессорами.

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

Организация регистровой  структуры основное достоинство  и основная проблема RISC. Практически  любая реализация RISC-архитектуры  использует трехместные операции обработки, в которых результат и два  операнда имеют самостоятельную  адресацию R1 : = R2, R3. Это позволяет без существенных затрат времени выбрать операнды из адресуемых оперативных регистров и записать в регистр результат операции. Кроме того, трехместные операции дают компилятору большую гибкость по сравнению с типовыми двухместными операциями формата "регистр память" архитектуры CISC. В сочетании с быстродействующей арифметикой RISC-операции типа "регистр регистр" становятся очень мощным средством повышения производительности процессора.

Вместе с тем опора  на регистры является ахиллесовой пятой RISC-архитектуры. Проблема в том, что  в процессе выполнения задачи RISC-система  неоднократно вынуждена обновлять  содержимое регистров процессора, причем за минимальное время, чтобы не вызывать длительных простоев арифметического  устройства. Для CISC-систем подобной проблемы не существует, поскольку модификация  регистров может происходить  на фоне обработки команд формата "память память".

Существуют два подхода  к решению проблемы модификации  регистров в RISC-архитектуре: аппаратный, предложенный в проектах RISC-1 и RISC-2, и программный, разработанный специалистами  IВМ и Стэндфордского университета. Принципиальная разница между ними заключается в том, что аппаратное решение основано на стремлении уменьшить время вызова процедур за счет установки дополнительного оборудования процессора, тогда как программное решение базируется на возможностях компилятора и является более экономичным с точки зрения аппаратуры

 

2.2 RISC-архитектура 

 

В 70-е годы XX века ученые выдвинули  революционную по тем временам идею создания микропроцессора, "понимающего" только минимально возможное количество команд.

Замысел RISC- процессора (Reduced Instruction Set Computer, компьютер с сокращенным набором команд) родился в результате практических исследований частоты использования команд программистами, проведенных в 70-х годах в США и Англии. Их непосредственный итог - известное "правило 80/20": в 80% кода типичной прикладной программы используется лишь 20% простейших машинных команд из всего доступного набора.

Первый "настоящий" RISC-процессор  с 31 командой был создан под руководством Дэвида Паттерсона из Университета Беркли, затем последовал процессор с  набором из 39 команд. Они включали в себя 20-50 тыс. транзисторов. Плодами  трудов Паттерсона воспользовалась  компания Sun Microsystems, разработавшая архитектуру SPARC с 75 командами в конце 70-х годов. В 1981 г. в Станфордском университете стартовал проект MIPS по выпуску RISC-процессора с 39 командами. В итоге была основана корпорация Mips Computer в середине 80-х годов и сконструирован следующий процессор уже с 74 командами.

По данным независимой  компании IDC, в 1992 году архитектура SPARC занимала 56% рынка, далее следовали MIPS - 15% и PA-RISC - 12,2%

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

Основные особенности RISC-процессоров:

  1. Сокращенный набор команд (от 80 до 150 команд).
  2. Большинство команд выполняется за 1 такт.
  3. Большое количество регистров общего назначения.
  4. Наличие жестких многоступенчатых конвейеров.
  5. Все команды имеют простой формат, и используются немногие способы адресации.
  6. Наличие вместительной раздельной кэш-памяти.
  7. Применение оптимизирующих компиляторов, которые анализируют исходный код и частично меняют порядок следования команд.

RISC-процессоры 3-го поколения

Самыми крупными разработчиками RISC-процессоров считаются Sun Microsystems (архитектура SPARC - Ultra SPARC), IBM (многокристальные процессоры Power, однокристальные PowerPC - PowerPC 620), Digital Equipment (Alpha - Alpha 21164), Mips Technologies (семейство Rxx00 -- R 10000), а также Hewlett-Packard (архитектура PA-RISC - PA-8000).

Все RISC-процессоры третьего поколения:

  1. являются 64-х разрядными и суперскалярными (запускаются не менее 4-х команд за такт);
  2. имеют встроенные конвейерные блоки арифметики с плавающей точкой;
  3. имеют многоуровневую кэш-память. Большинство RISC-процессоров кэшируют предварительно дешифрованные команды;
  4. изготавливаются по КМОП-технологии с 4 слоями металлизации.

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

Повышение производительности RISC-процессоров достигается за счет повышения тактовой частоты и  усложнения схемы кристалла. Представителями  первого направления являются процессоры Alpha фирмы DEC, наиболее сложными остаются процессоры компании Hewlett-Packard.

Уменьшение набора машинных команд в RISC-архитектуре позволило  разместить на кристалле вычислительного  ядра большое количество регистров  общего назначения . Увеличение количества регистров общего назначения позволило минимизировать обращения к медленной оперативной памяти, оставив для работы с RAM только операции чтения данных из оперативной памяти в регистр и запись данных из регистра в оперативную память, все остальные машинные команды используют в качестве операндов регистры общего назначения.

Основными преимуществами RISC-архитектуры  является наличие следующих свойств:

  1. Большое число регистров общего назначения.
  2. Универсальный формат всех микроопераций.
  3. Равное время выполнения всех машинных команд.
  4. Практически все операции пересылки данных осуществляются по маршруту регистр регистр.

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

Аппаратные блоки в RISC-архитектуре:

Блок загрузки инструкций включает в себя следующие составные  части: блок выборки инструкций из памяти инструкций, регистр инструкций, куда помещается инструкция после ее выборки  и блок декодирования инструкций. Эта ступень называется ступенью выборки инструкций.

Регистры общего назначения совместно с блоками управления регистрами образуют вторую ступень  конвейера, отвечающую за чтение операндов  инструкций. Операнды могут храниться  в самой инструкции или в одном  из регистров общего назначения. Эта  ступень называется ступенью выборки  операндов.

Арифметико-логическое устройство и, если в данной архитектуре реализован, аккумулятор, вместе с логикой управления, которая, исходя из содержимого регистра инструкций, определяет тип выполняемой  микрооперации. Источником данных помимо регистра инструкций может быть счетчик  команд, при выполнении микроопераций  условного или безусловного перехода. Данная ступень называется исполнительной ступенью конвейера.

Набор состоящий из регис�

�ров общего назначения, логики записи и иногда из RAM образуют ступень сохранения данных. На этой ступени результат выполнения инструкций записываются в регистры общего назначения или в основную память.

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

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

Таким образом, ядра большинства  современных микропроцессоров, начиная  с Intel 486DX, выполнены по RISC-архитектуре с поддержкой внешнего Intel x86 интерфейса. Кроме того, подавляющее большинство микроконтроллеров, а так же некоторые микропроцессоры выпускаются по RISC-архитектуре.

В современном RISC-процессоре используется не менее 32 регистров, часто  более 100, в то время, как в классических ЦВМ обычно 8-16 регистров общего назначения. В результате процессор на 20%-30% реже обращается к оперативной памяти, что также повысило скорость обработки данных. Кроме того, наличие большого количества регистров упрощает работу компилятора по распределению регистров под переменные. Упростилась топология процессора, выполняемого в виде одной интегральной схемы, сократились сроки ее разработки, она стала дешевле.

После появления RISC-процессоров  традиционные процессоры получили обозначение  CISC то есть с полным набором команд (Complete Instruction Set Computer).

В настоящее время RISC-процессоры получили широкое распространение. Современные RISC-процессоры характеризуются следующим:

- упрощенным набором команд;

- используются команды  фиксированной длины и фиксированного  формата,

простые способы адресации, что позволяет упростить логику декодирования команд;

- большинство команд выполняются  за один цикл процессора;

- логика выполнения команд  с целью повышения производительности  ориентирована на аппаратную, а  не на микропрограммную реализацию, отсутствуют макрокоманды, усложняющие  структуру процессора и уменьшающие  скорость его работы;

- взаимодействие с оперативной  памятью ограничивается операциями

пересылки данных;

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

- создан конвейер команд, позволяющий обрабатывать несколько  из них одновременно;

- наличие большого количества  регистров;

- используется высокоскоростная  память.

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

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

Выполнение типичной команды  можно разделить на следующие  этапы:

  1. выборка команды IF - по адресу, заданному счетчиком команд, из памяти извлекается команда;
  2. 2) декодирование команды ID выяснение ее смысла, выборка операндов из регистров;
  3. 3) выполнение операции EX, при необходимости обращения к памяти - вычисление физического адреса;
  4. 4) обращение к памяти ME;
  5. 5)запоминание результата WB

В процессорах с RISC-архитектурой набор исполняемых команд сокращен до минимума. Для реализации более  сложных операций приходится комбинировать  команды. При этом все команды  имеют формат фиксированной длины (например, 12, 14 или 16 бит), выборка команды  из памяти и ее исполнение осуществляется за один цикл (такт) синхронизации. Система  команд RISC-процессора предполагает возможность  равноправного использования всех регистров процессора. Это обеспечивает дополнительную гибкость при выполнении ряда операций. К МК с RISC-процессором  относятся МК AVR фирмы Atmel, МК PIC16 и PIC17 фирмы Microchip и другие.

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

Информация о работе Микроконтроллеры