Пр о ц е с с о р TMS 3 2 0C4 x
55
Режим повторений.
В процессоре TMS320C4x имеется возможность
многократно выполнять команду или группу команд (программный цикл). В
этом случае процессор работает в режиме повторений (установлен бит RM в ре-
гистре состояния ST). Для поддержки режима повторений используются специ-
альные аппаратные средства процессора - регистры RS (начальный адрес блока
повторений), RE (конечный адрес блока повторений) и RC (счетчик блока по-
вторений). В системе команд процессора имеется три команды для перевода
процессора в режим повторений: RPTB, RPTBD и RPTS.
Перед выполнением команд RPTB и RPTBD в счетчик повторений RC
должно быть загружено число повторений уменьшенное на единицу. Команда
RPTS сама загружает счетчик повторений. Максимальное число повторений
80000001h (загружается код 80000000h), минимальное – один (загружается код
00000000h). Запись 0 в счетчик повторений RC или в бит RM регистра состоя-
ния выводит процессор из режима повторения блока или команды. После оче-
редного выполнения блока или команды счетчик повторений уменьшается на
единицу. Выполнение блока прекращается, если счетчик становится отрица-
тельным.
Команды RPTB и RPTBD
.
Команды выполняют повтор блока команд за-
данное число раз. Команда RPTBD в отличие от RPTB перед началом повторе-
ния блока выполняет три следующие за ней инструкции. При выполнении этих
команд процессор:
загружает начальный адрес блока повторений в регистр RS:
для RPTB PC+1
RS,
для RPTBD
PC+4
RS;
загружает конечный адрес блока повторений в регистр RE:
при относительном режиме адресации:
а) для RPTB
disp+PC+1
RE,
б) для RPTBD
disp+PC+3
RE,
при регистровом режиме адресации src
RE;
устанавливает в 1 бит RM в регистре состояния.
Пример программы повторения блока команд
LDI 15,RC
; загрузка 15 в счетчик повторений
RPTB ENDLOOP
;
выполнение блока с адреса STLOOP
; до адреса ENDLOOP 16 раз
STLOOP
. . .
ENDLOOP
Команда RPTS
.
Выполняет повтор следующей за ней команды заданное
число раз. Команда блокирует все прерывания процессора, в том числе и не-
маскируемые. Процессор выполняет следующие действия:
PC+1
RS;
I...,45,46,47,48,49,50,51,52,53,54 56,57,58,59,60,61,62,63,64,65,...186