ЭУМК по дисциплине "Проектирование проблемно-ориентированных вычислительных средств" › Практика › Практическое занятие "Группа команд работы с аккумулятором"

# Электронный учебно-методический
комплекс по дисциплине
"Проектирование проблемно-ориентированных вычислительных средств"

для специальности

1-40 02 02 «Электронные вычислительные средства»

Оглавление | Программа | Теория | Практика | Контроль знаний | Об авторах

8. Специальные команды умножения и проблемно-ориентированные команды. Вычисление суммы произведений массивов чисел, организация задержки в цифровом фильтре.
1) Специальные команды умножения для программирования цифровых фильтров

Синтаксис | Выражение (операция) | С | Ц | Зависит | Влияет
MACP Smem, pmad, src {MACP (Smem, pmad, src)} | PAR=pmad, src=src+Smem*Pmem(PAR), T=Smem, PAR=PAR+1 | 2 | 3 | FRCT, OVM | OV↑
MACD Smem, pmad, src {MACD (Smem, pmad, src)} | PAR=pmad, src=src+Smem*Pmem(PAR), T=Smem, PAR=PAR+1, (Smem+1)=Smem | 2 | 3 | FRCT, OVM | OV↑

2) Подгруппа проблемно-ориентированных команд из группы арифметических операций

Синтаксис | Выражение (операция) | С | Ц | Зависит | Влияет
ABDST Xmem, Ymem {ABDST (Xmem, Ymem)} | B = B + |A(32-16)| A = (Xmem – Ymem) << 16 | 1 | 1 | SXM, FRCT, OVM | C, OVA↑, OVB↑
ABS src [, dst] | dst = |src| | 1 | 1 | OVM | C, OV↑
CMPL src [, dst] | dst = ~src | 1 | 1 |  |
DELAY Smem {delay(Smem)} | (Smem + 1) = Smem | 1 | 1 |  |
EXP src {T = exp(src)} | T = число незначащих битов в (src)–8 | 1 | 1 |  |
FIRS Xmem, Ymem, pmad {firs(Xmem, Ymem, pmad)} | PAR=pmad, B=B+A(32+16)*Pmem(PAR), A = (Xmem + Ymem) << 16, PAR=PAR+1 | 2 | 3 | SXM, FRCT, OVM | C, OVA↑, OVB↑
LMS Xmem, Ymem {lms(Xmem, Ymem)} | B = B + Xmem * Ymem A = A + Xmem << 16 + 2^15 | 1 | 1 | SXM, FRCT, OVM | C, OVA↑, OVB↑
MAX dst | dst = max(A, B) | 1 | 1 |  | C
MIN dst | dst = min(A, B) | 1 | 1 |  | C
NEG src [, dst] | dst = –src | 1 | 1 | SXM, OVM | C, OV↑
NORM src [, dst] | dst = src << TS {dst=norm(src,TS)} | 1 | 1 | SXM, OVM | C, OV↑
POLY Smem {poly(Smem)} | B = Smem << 16 A = rnd(A(32-16) * T + B) | 1 | 1 | SXM, FRCT, OVM | C, OVA↑
RND src [, dst] | dst = src + 2^15 {dst = rnd(src)} | 1 | 1 | OVM | C, OV↑
SAT src {saturate(src)} | Насыщение src до 32 бит [все защитные разряды = знаковому] | 1 | 1 | no SXM, no OVM | OV↑
SQDST Xmem, Ymem {sqdst(Xmem, Ymem)} | B = B + A(32-16) * A(32-16) A = (Xmem – Ymem) << 16 | 1 | 1 | SXM, FRCT, OVM | C, OVA↑, OVB↑

3) Вычисление суммы произведений массивов чисел

Для вычисления суммы произведений могут использоваться следующие команды:
MAC Xmem, Ymem, src [, dst]
MACR Xmem, Ymem, src [, dst]
MACP Smem, pmad, src

4) Организация задержки в цифровом фильтре

Для организации задержки в цифровом фильтре могут использоваться следующие команды:
MACD Smem, pmad, src
DELAY Smem
LTD Smem
MAC Xmem, Ymem, src [, dst]

5) Программа пересылки данных из последовательного порта в память данных

При пересылке данных из последовательного порта в память данных используются следующие команды:

    McDRR0	.set	21h		; Приемник   МБПП 0
    	ld	#0, DP		; Текущая страница 0(для MMR)		(1)
    	mvdm	CNT, BRC	; Длина массива данных(счетчик)		(2)
    	rptb	loop-1		; Повторить до loop пока BRC<>0		(2)
    	ldm	McDRR0, a	; Ввод из порта беззнаковых данных	(1)
    	ld	McDRR0, a	; Ввод знаковых данных (DP=0)		(1)
    loop:				; Окончание цикла для rptb
    CNT	.word	8-1		; Число элементов массива		(1)

Оглавление | Программа | Теория| Практика | Контроль знаний | Об авторах
© БГУИР , 2012