МИКРОПРОЦЕССОРЫ


В 30-х годах правительство США поручило Гарвардскому и Принстонскому университетам разработать архитектуру компьютера для военно-морской артиллерии. Победила разработка Принстонского университета (более известная как архитектура фон Неймана, названная так по имени разработчика, первым предоставившего отчет об архитектуре), так как она была проще в реализации. Гарвардская архитектура не использовалась вплоть до конца 70-х годов, когда развитие микропроцессорной техники позволило использовать ее преимущества.

Типичные операции (сложение и умножение) требуют от любого вычислительного устройства нескольких действий: выборку двух операндов, выбор инструкции и её выполнение, и, наконец, сохранение результата. Идея, реализованная Эйкеном, заключалась в физическом разделении линий передачи команд и данных. В первом компьютере Эйкена «Марк I» для хранения инструкций использовалась перфорированная лента, а для работы с данными — электромеханические регистры. Это позволяло одновременно пересылать и обрабатывать команды и данные, благодаря чему значительно повышалось общее быстродействие.

Гарвардская архитектура используется в микроконтроллерах, таких, как Intel 4004, Intel 8051, Atmel AVR и других. Разработки фирмы Intel 80-х годов выдвинули некую общую модель MKS 51, которая по существу и определила класс последующих более совершенных микропроцессоров. Среди них долгое время лидировали микроконтроллеры семейства PIC (Peripheral Interface Controller) компании Microchip на основе RISC-процессора. Reduced Instruction Set Computer (RISC) – вычисления с сокращённым набором команд. Характеризуется наличием команд фиксированной длины, большого количества регистров, операций типа регистр-регистр, а также отсутствием косвенной адресации. Концепция RISC разработана Джоном Коком (John Cocke) из IBM Research, название придумано Дэвидом Паттерсоном (David Patterson).

В настоящее время в связи с доступностью программных средств и инструментальных плат разработки большое число публикаций связано с семейством восьмибитных микроконтроллеров AVR фирмы Atmel. Грань между RISC и CISC (complex – сложными) микропроцессорами стирается. Например, AVR имеют 133 команды, что соответствует CISC, но большинство из них выполняется за один такт, что является признаком RISC. Поэтому основным признаком RISC стало принято считать выполнение команд за один такт.

Микропроцессоры AVR фирмы Atmel



Регистры общего назначения РОН (General Purpose Registers - GPR), их всего 32, имеют байтовый формат. РОН находятся в начале адресного пространства оперативной памяти, хотя физически не являются ее частью. Поэтому к ним можно обращаться двумя способами: как к регистрам и как к памяти. Такое решение является особенностью AVR и повышает эффективность работы и производительность микроконтроллера.

В оперативную память можно лишь записывать данные из регистров, тогда как для работы с регистрам есть арифметические, логические и битовые операции. Система команд в разных модификациях насчитывает от 90 до 133 различных инструкций и построена на гарвардской архитектуре, программа (Flash-память – аналог жесткого диска, хранит коды, загружаемые в оперативную память SRAM) и данные (EEPROM-память) находятся в разных адресных пространствах, однако имеется возможность читать данные из памяти программы, используя специальные команды.

Все типы памяти интегрированны на одном чипе, что снимает необходимость во внешней памяти для большинства приложений. Коды в энергонезависимые хранилища Flash (hex), EEPROM заносятся через последовательный периферийный интерфейс SPI. Соответственно, его можно использовать для подключения программатора, цифровых потенциометров, ЦАП/АЦП, FLASH-ПЗУ и др. микроконтроллеров. Управление периферийными устройствами осуществляется через адресное пространство данных.

Микроконтроллеры AVR поддерживают тактовую частоту 0-20МГц, но некоторые устройства достигают 32МГц. Каноническая вполне работоспособная электрическая схема микропроцессора вполне проста и обходится, как видно на рисунке 2, немногими деталями, к которым относятся внешний кварц и конденсаторы в цепи питания. Контрольным светодиодом можно проверить состояние ножки выхода.



Минимальная схема включения микропроцессора AVR


Колодка ISP-программатора (загружающего hex-коды программы) подпаяна к соответствующим ножка микропроцессора.



Схема подключения программатора


Четырехпроводной интерфейс JTAG, разработанный группой Joint Test Action Group, был зарегистрирован в качестве промышленного стандарта IEEE Std 1149.1-1990 для тестирования печатных плат, внутрисхемной отладки и программирования микроконтроллеров. Им оснащены все микроконтроллеры Mega с флэш-памятью емкостью 16 кбайт и более.

Для взаимодействия с компьютером через com-порт согласно популярному протоколу RS232 имеется универсальный асинхронный или универсальный синхронно/асинхронный приемопередатчик (Universal Synchronous/Asynchronous Receiver and Transmitter – UART или USART), который включается через буферную микросхему MAX232, согласовывающую разницу напряжений на информационных линиях связи



Согласовывающая микросхема MAX232


Канал способен работать в дуплексном режиме (одновременная передача и прием данных). Помимо того, имеется двухпроводной последовательный интерфейс TWI (Two-wire Serial Interface), который позволяет объединить вместе до 128 различных устройств с помощью двунаправленной шины, состоящей из линии тактового сигнала (SCL) и линии данных (SDA). Это аналог интерфейса I2C (двухпроводная двунаправленная шина), предложенного фирмой Philips.

Организовать работу системы во времени по прерываниям помогают несколько таймеров с разрядностью 8 или 16 бит. Они могут работать и как счетчики внешних событий. В режиме ШИМ (PWM) таймер может представлять собой широтно-импульсный модулятор и используется для генерирования сигнала с программируемыми частотой и скважностью. Сторожевой таймер (WDT – WatchDog Timer) имеет свой собственный RC-генератор, работающий на частоте 1 МГц. Он предназначен для того, чтобы сбрасываться программой, что позволяет обнаружить зависание, ведущему к перезапуску пpоцессоpа с инициализацией pегистpов для приведения системы в рабочее состояние.

Микроконтроллер AVR использует питание от 1,8 до 6,0 Вольт. Ток потребления составляет менее 1 мА для 500 кГц, 5–6 мА для 5 МГц и 8–9 мА для частоты 12 МГц. Программным путем AVR переводится в один из трех режимов пониженного энергопотребления. В режиме холостого хода процессора (IDLE) функционирует внутренний генератор синхросигналов, таймеры, система прерываний и сторожевой таймер. Ток потребления не превышает 2,5 мА на частоте 12 МГц. В стоповом режиме (POWER DOWN) все функции выключены до поступления сигнала внешнего прерывания или аппаратного сброса. При включенном сторожевом таймере ток потребления в этом режиме составляет около 80 мкА, а при выключенном – менее 1 мкА для напряжения питания 5 В. Существует еще экономичный режим (POWER SAVE), в котором работает только генератор таймера, что обеспечивает сохранность временной базы.

Схема BOD (Brown-Out Detection) при снижении питания ниже некоторого значения она переводит микроконтроллер в состояние сброса. Когда напряжение питания вновь увеличится до порогового значения, запускается таймер задержки сброса. После формирования задержки внутренний сигнал сброса снимается и происходит запуск микроконтроллера. Помимо аналого-цифровых преобразователей, переключаемых регистром опрашиваемого входа, имеются аналоговые компораторы, используемые в системе прерываний.

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

Rambler's Top100