пятница, 23 января 2009 г.

Архитектура и принцип функционирования микроконтроллеров PIC

Что касается архитектуры и структуры команд, то базовая концепция микроконтроллеров PIC особо не изменились.

Память данных и память программ разделены. Особенностью микроконтроллеров PIC является то, что память программ и память данных разделены (Гарвардская архитектура). Эта архитектура - основа большинство других особенностей принципа функционирования.

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

Каждая команда имеет разрядность слова (за исключением PIC18). Гарвардская архитектура допускает, чтобы разрядность ячеек в памяти программ не зависела от разрядности ячеек в памяти данных. Вследствие этого возможно выбрать ячейки памяти программ такого размера, чтобы для каждой команды требовалось только одно обращение к шине адреса. В одном слове команды содержится совокупная информация о коде команды и аргументах.

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

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

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

Разрядность команд: 12,14 н 16 бит. Разрядность памяти программ в первом поколении микроконтроллеров PIC составляет 12 бит. Эти устройства, называемые компанией Microchip "базовой серией" (Base-line), - быстрые, хотя, с современной точки зрения, довольно "спартанские". Впрочем они с успехом используются и по сей день.

В последнее время на рынке появились новые интересные представители базовой серии. Само собой разумеется, они поддерживают технологию Flash (например, крошечные PIC10F2xx с шестью или большие PIC16F59 с 40 выводами).

Среднее подсемейство (Mid-range) с разрядностью памяти программ 14 бит предоставляет уже заметно больше комфорта. Удлинение слова команды используется преимущественно в пользу расширения диапазона адресов, поэтому сам набор команд в сравнении с базовой серией микроконтроллеров PIC не изменился. Большой объем адресуемой памяти данных — основа для модулей аппаратного обеспечения среднего подсемейства PIC.

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

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

Хотелось бы упомянуть об еще одной ветке старшего подсемейства PIC — "High-Еnd", которое обозначается как "Р1С17". Эти микроконтроллеры уже присутствовали некоторое время на рынке перед Enhanced PIC. Хотя PIC17 и отличаются в некоторых аспектах от других семейств, с ними нетрудно разобраться с помощью технических описаний.

Комментариев нет:

Отправить комментарий