- •Краткая характеристика ядра arm7tdmi
- •2. Архитектура ядра arm7tdmi
- •3. Структурная, функциональная схемы процессора и процессорного ядра
- •4. Краткое описание набора инструкций ядра arm7tdmi
- •1. Рабочие состояния процессора
- •2. Форматы памяти
- •3. Типы данных
- •4. Режимы работы
- •5. Регистры
- •6. Регистры статуса программы
- •7. Исключительные ситуации
- •8. Задержка прерываний
- •9. Сброс
- •Интерфейс памяти
- •Интерфейс сопроцессора
- •Отладочный интерфейс
- •Временные диаграммы циклов инструкций
- •7. Статические и динамические характеристики
- •Приложение a Описание сигналов
- •Приложение б Детальное описание отладки
Краткая характеристика ядра arm7tdmi
Ядро ARM7TDMI - представитель семейства ARM 32-разрядных микропроцессоров общего назначения. Семейство ARM характеризуется высокой производительностью при очень низком уровне потребления и малых размерах.
Архитектура ARM выполнена на основе принципов RISC (компьютер с сокращенным набором инструкций). Набор инструкций RISC и связанный с ним механизм дешифрации является более простым по сравнению CISC-архитектурой (компьютер со сложным набором инструкций). За счет этого достигается:
высокая производительность выполнения инструкций;
превосходные реально-временные характеристики реагирования на прерывания
малые размеры, эффективная стоимость процессорной макроячейки.
1.1. Конвейер инструкций
Для ускорения потока инструкций, поступающего к процессору, в ядре ARM7TDMI используется конвейер. Он позволяет выполнять несколько операций одновременно, а также обеспечивает постоянство работы системы памяти и обработки. Используется трехступенчатая конвейеризация, т.к. инструкции выполняются в три этапа:
Выборка
Дешифрация
Исполнение.
Конвейер инструкций показан на рисунке 1.1.
Рисунок 1.1. Конвейер инструкций
В процессе нормальной работы, когда выполняется одна инструкция, последующая инструкция декодируется, а третья - считывается из памяти.
Счетчик программы указывает на загружаемую из памяти инструкцию, а не на исполняемую инструкцию. Это важно знать, т.к. значение счетчика программы (PC), которое используется при выполнении инструкции, всегда на две инструкции опережает адрес.
1.2 Доступ к памяти
Ядро ARM7TDMI использует фон-неймановскую архитектуру доступа к памяти с одной 32-разрядной шиной данных, по которой передаются как инструкции, так и данные. Доступ к данным к памяти могут осуществлять только инструкции чтения, записи и обмена. В качестве данных могут выступать:
8 бит (байт);
16 бит (полуслово);
32 бит (слово).
Слова должны быть выровнены к 4-байтным границам, а полуслова - к 2-байтным.
1.3 Интерфейс памяти
При разработке интерфейса памяти процессора ARM7TDMI стояла задача максимально полностью использовать потенциал по быстродействию и при этом минимизировать использование памяти. Чтобы обеспечить возможность реализации функций системного управления на основе стандартной маломощной логики критичные к быстродействию сигналы управления были конвейеризованы. Данные сигналы управления упрощают использование быстродействующих пакетных режимов передачи, которые используются большинством встроенной и внешней технологий памяти.
Ядро ARM7TDMI поддерживает четыре основных цикла доступа к памяти:
холостой цикл
непоследовательный цикл
последовательный цикл
цикл передачи регистра сопроцессора.
1.4 Логика EmbeddedICE
Логика EmbeddedICE - вспомогательный аппаратный блок, который делает ARM-процессоры отлаживаемыми и существенно облегчает процесс отладки. Он позволяет с помощью программных инструментальных средств отлаживать программный код, который исполняется целевым процессором. Логика EmbeddedICE управляется через порт JTAG с использованием интерфейса EmbeddedICE. Более подробная информация по встроенной отладке приведена в разделе 5 "Интерфейс отладки" и приложении Б "Детальное описание отладки".