Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭиСХ_ADSP21xx_1-2ред.doc
Скачиваний:
13
Добавлен:
13.11.2019
Размер:
916 Кб
Скачать
☆
    1. Программно-логическая модель

Для программирования процессора следует представлять его программно-логическую модель. Ядро процессоров семейства ADSP-21xx, с точки зрения программиста, состоит из трех вычислительных устройств, двух генераторов адреса и программного автомата (рис. 3). На рисунке возле регистров указана их разрядность. Обращение к регистрам этих устройств из программы производится по их логическим именам.

У каждого из регистров вычислителя есть теневой регистр-двойник. Переключение между основными и теневыми регистрами производится программно с помощью команд ENA SEG_REG (выбрать вторичный набор регистров, т.е. установить в 1 соответствующий бит в регистре статуса MSTAT) и DIS SEG_REG (сбросить этот бит).

Регистры ASTAT, SSTAT, MSTAT содержат информацию о состоянии процессора. Регистр ASTAT содержит флаги арифметических условий. Значения этих флагов приведены в табл. 1.

Таблица 1

Флаги регистра ASTAT

Номер бита

Флаг

Назначение

0

AZ

Нулевой результат АЛУ

1

AN

Отрицательный результат АЛУ

2

AV

Переполнение АЛУ

3

AC

Перенос АЛУ

4

AS

Знак входа Х АЛУ

5

AQ

Признак частного от деления

6

MV

Переполнение умножителя

7

SS

Знак сдвига данных

Рис. 3. Регистры процессоров ADSP-218x, доступные для программирования

Регистр SSTAT служит для хранения состояний 4 внутренних стеков программного автомата (табл. 2).

Таблица 2

Назначение битов регистра SSTAT

Номер бита

Назначение

0

Стек счетчика команд пуст

1

Стек счетчика команд переполнен

2

Стек счетчика пуст

3

Стек счетчика переполнен

4

Стек состояний пуст

5

Стек состояний переполнен

6

Стек циклов пуст

7

Стек циклов переполнен

Регистр MSTAT (табл. 3) содержит информацию о модификации режима работы процессора.

Таблица 3

Назначение битов регистра MSTAT

Номер бита

Назначение

0

Выбор ряда регистров данных: 0 – главный, 1 − теневой

1

Разрешение бит-реверсной адресации (генератор адреса данных 1)

2

Разрешение режима фиксации состояния переполнения в АЛУ

3

Разрешение режима насыщения регистра AR

4

Представление результата умножителя: 0 – режим умножения дробных чисел, 1 – режим умножения целых чисел

5

Разблокирование таймера

6

Разрешение режима GO

Для выбора конфигурации прерываний в процессоре задействованы регистры IMASK, ICNTL, IFC. Регистр IMASK (табл. 4) предназначен для маскирования или разрешения каждого отдельного вида прерывания процессора.

Таблица 4

Назначение битов регистра IMASK

Номер бита

Назначение

0

Разрешение прерываний от таймера: 1 − разрешено, 0 − запрещено

1

Прием SPORT1 или IRQ0

2

Передача SPORT1 или IRQ1

3

Прерывание BDMA

4

IRQE

5

Прием SPORT0

6

Передача SPORT0

7

IRQL0

8

IRQL1

9

IRQ2

Регистр ICNTL (табл. 5) конфигурирует внешние прерывания по фронту либо по уровню сигнала. Кроме того, определяется возможность использования вложенных прерываний.

Таблица 5

Назначение битов регистра ICNTL

Номер бита

Назначение

0

Прерывания IRQ0: 1 – по фронту, 0 – по уровню

1

Прерывания IRQ1: 1 – по фронту, 0 – по уровню

2

Прерывания IRQ2: 1 – по фронту, 0 – по уровню

4

Вложенные прерывания: 1 − разрешены, 0 − запрещены

Регистр IFC (табл. 6) осуществляет принудительное прерывание или сброс задержанного чувствительного по фронту прерывания. В этот регистр может осуществляться только запись числа.

Таблица 6

Назначение битов регистра IFC

Номер бита

Назначение

0

Сброс прерываний от таймера

1

Сброс прерываний прием SPORT1 или IRQ0

2

Сброс прерываний передача SPORT1 или IRQ1

3

Сброс прерываний BDMA

4

Сброс прерываний IRQE

5

Сброс прерываний прием SPORT0

6

Сброс прерываний передача SPORT0

7

Сброс прерываний IRQ2

8

Принудительная установка прерываний от таймера

9

Принудительная установка прерываний прием SPORT1 или IRQ0

10

Принудительная установка прерываний передача SPORT1 или IRQ1

11

Принудительная установка прерываний BDMA

12

Принудительная установка прерываний IRQE

13

Принудительная установка прерываний прием SPORT0

14

Принудительная установка прерываний передача SPORT0

15

Принудительная установка прерываний IRQ2

Самостоятельный 8-разрядный регистр РХ служит для буферизации данных при обмене между 16-разрядными регистрами процессора и 24-разряд-ной шиной данных памяти программ.

Кроме указаний регистров, некоторые процессоры семейства ADSP-21хх содержат регистры управления внутреннего таймера и интерфейсные регистры для организации ввода/вывода данных.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]