[an error occurred while processing this directive]
Это тоже работать не будет, вариант такой(+)
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Zizo 20 апреля 2005 г. 11:33
В ответ на: У Вас ошибка в адресации инструкции RPT. Потому что отправлено GM 19 апреля 2005 г. 20:16

Это замечание относится только к повторяемой инструкции, а не к самому repeat, в качестве Smem можно использовать абсолютную адресацию.
repeat(*(#ggg))
прекрасно работает.

Здесь дело в том, что repeat повторяет только инструкции исполняющиеся за один такт конвеера, буквально это не отражено в документации, но если повторяемая инструкция содержит *(lk), или *ARx(#L), это работать не будет, конвеер сбоит. Аналогичные проблемы возникают при попытке сохранения 32бит аккумулятора в repeat, типа dbl(*AR2+) = A, команда хотя и занимает одно слово но исполняется два такта.

Используйте другой вариант:

AR0 = #M
repeat(*AR4)
mar(*AR2+0)


Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru