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

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

Отправлено GM 29 сентября 2005 г. 20:13
В ответ на: Ну вот пока у меня была идея такая. Если в XAR6 записать (+) отправлено <font color=gray>dmalx</font> 29 сентября 2005 г. 19:17

Вот одна из возможных реализаций КИХ фильтра


; Calculate FIR filter (X[N]=data array, C[N]=coefficientv array)
MOVW DP,#Xindex ;Load DP with page address of Xindex
MOVL XAR6,#X ;Load XAR6 with start address of X array
MOV @AH,#N ;Load AH with size of array X(N)
MOV AL,@Xindex ;Load AL with current circular index
MOVL XAR1,@ACC ;Load parameters into XAR1
MOVL XAR7,#C ;Load XAR7 with start address of C array
SPM -4 ;Set product shift mode to 4 times right
ZAPA ;Zero ACC,P,OVC
RPT #N-1 ;Repeat next instruction N times
||QMACL P,*+XAR6[AR1%++],*XAR7++ ;ACC=ACC+P>>4,
;P=(*AR6%++ * *XAR7++)>>32
ADDL ACC,P< MOV @Xindex,AR1 ;Store AR1 into current X index
MOVL @Sum,ACC ;Store result into sum
И что потом нужно сделать?

Если не трудно поискать ассемблер и симулятор, поищите, пожалуйста. Одна мысль у меня свербит, спокойно спать не даёт(:-).

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

Ответы


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

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

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

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

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


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

E-mail: info@telesys.ru