Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
375
Добавлен:
21.05.2015
Размер:
7.55 Mб
Скачать
    1. Память ввода-вывода

Регистры статуса и конфигурации всех УВВ и модулей, в т.ч. ЦПУ, адресуются через ячейки памяти ввода-вывода в пространстве памяти данных. Все ячейки ввода-вывода доступны с помощью инструкций чтения (LD/LDS/LDD) и записи (ST/STS/STD), которые передают данные между 32 регистрами общего назначения регистрового файла и памятью ввода-вывода. К ячейкам с адресами 0x00…0x3F можно адресоваться напрямую с помощью инструкций IN и OUT. По адресам 0x00…0x1F можно применить специальные инструкции проверки бит и битовых функций. Определения памяти ввода-вывода МК XMEGA представлены в разделе "Register Summary" (краткий обзор регистров) документации на МК.

      1. Регистры ввода-вывода общего назначения

Первые 16 адресов памяти ввода-вывода зарезервированы для 16 регистров ввода-вывода общего назначения. Данные регистры можно использовать для хранения информации, а также особенно полезны для хранения глобальных переменных и флагов, т.к. к ним предусмотрен побитный доступ с использованием инструкций SBI, CBI, SBIS и SBIC.

    1. Внешняя память

МК XMEGA имеют до 4 портов для связи с внешней памятью, в т.ч. внешние SRAM, SDRAM и подключаемая по типу параллельной памяти периферия, например, ЖКИ и ИС с параллельным интерфейсом. Более детально об этом см. в описании интерфейса внешней шины (EBI). Адресное пространство внешней памяти всегда начинается с адреса, следующего за последним адресом внутреннего SRAM.

    1. Память данных и арбитраж шины

Поскольку память данных образована из четырех разных типов запоминающих устройств, то разные шинные мастера (ЦПУ, канал чтения DMA-контроллера и канал записи DMA-контроллера) могут осуществлять доступ к разным запоминающим устройствам в одно и тоже время. Как показано на рис. 4.3, ЦПУ может выполнять доступ к внешней памяти, а DMA-контроллер одновременно с этим - передавать данные из внутреннего SRAM в память ввода-вывода.

Рис. 4.3. Доступ к шине

      1. Шинный приоритет

Если несколько мастеров запрашивают доступ к одной шине, то доступ будет предоставляться с учетом шинного приоритета в следующем порядке (от старшего приоритета к младшему)

  1. Шинный мастер, который осуществляет доступ в данный момент

  2. Шинный мастер, который в данный момент передает пакет

  3. Чередующееся чтение и запись DMA-контроллером в одной и той же области памяти данных

  4. Шинный мастер, запрашивающий пакетный доступ

  • Приоритет имеет ЦПУ

  1. Шинный мастер, запрашивающий доступ к шине

  • Приоритет имеет ЦПУ

    1. Временные характеристики доступа к памяти

Чтение и запись памяти ввода-вывода выполняется за один цикл синхронизации ЦПУ. Запись в SRAM требует один цикл, а чтение из SRAM - 2 цикла. При пакетном чтении (DMA), новые данные появляются каждый цикл. Чтение (запись) страницы EEPROM длится один цикл, а чтение - три цикла. При пакетном чтении, новые данные появляются каждый второй цикл. Внешняя память использует многоцикловые чтение и запись. Количество циклов зависит от типа памяти и настроек интерфейса внешней шины. Более детальная информация по инструкциям и временным характеристикам их выполнения приведена в описании набора инструкций.

    1. Идентификация микроконтроллера

У каждого МК имеется трехбайтный идентификационный код, с помощью которого можно удостовериться, что производителем является Atmel, и определить тип МК. Идентификационный код хранится в специальных регистрах. В одном из таких регистров можно узнать номер версии МК.

    1. Отключение порта JTAG

У МК предусмотрена возможность отключения порта JTAG из программы. Этим можно предотвратить какие-либо попытки доступа к памяти со стороны внешнего порта JTAG. Такая блокировка будет действовать до следующего сброса МК или до возобновления работы порта JTAG программой. После отключения порта JTAG, все его линии можно использовать как обычные линии ввода-вывода.

    1. Защита памяти ввода-вывода

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

    1. Описание регистров контроллераNVMэнергонезависимой памяти

Этот регистр содержит расширенный байт адреса, при обращении к прикладному и загрузочному разделу. Байт регистра 2 адреса NVM.

Этот регистр содержит старший байт адреса, при обращении к любой ячейки памяти.

Этот регистр содержит младший байт адреса, при обращении к любой ячейки памяти.

Регистры ADDR2, ADDR1 и ADDR0 образуют 24-битное значение ADDR.

    1. Описание регистров - Fuse- и Lock-биты

      1. FUSEBYTE0 - конфигурационный байт 0 энергонезависимой памяти - JTAG-идентификатор пользователя

• бит 7 - JTAGUID[7:0]: JTAG -идентификатор пользователя

Этот конфигурационный байт может использоваться, чтобы установить заданный по умолчанию JTAG -идентификатор пользователя для устройства. Во время сброса биты конфигурационного байта JTAGUIDбудут загружены в основной блок управления регистр идентификатор пользователяJTAG.

    1. Описание регистров - сигнатурный код производителя

      1. RCOSC2M - регистр калибровочного значения внутреннего генератора частоты 2 МГц

    2. Описание регистров - память ввода-вывода общего назначения

      1. GPIORn - регистр ввода-вывода n общего назначения

    3. Описание регистров внешней памяти

См. раздел 24 "Внешний шинный интерфейс EBI".

    1. Описание регистров управления МК

      1. DEVID0 - регистр 0 идентификатора МК

В регистрах DEVID0, DEVID1 и DEVID2 хранится трехбайтный идентификационный код, позволяющий программно определить тип МК. Точное значение идентификационного кода уточните в документации на МК.

Соседние файлы в папке Архитектура ЭВМ