Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Wykład 6: Stałoprzecinkowe mikroprocesory sygnałowe: architektura podstawowe operacje.

Podobne prezentacje


Prezentacja na temat: "Wykład 6: Stałoprzecinkowe mikroprocesory sygnałowe: architektura podstawowe operacje."— Zapis prezentacji:

1 Wykład 6: Stałoprzecinkowe mikroprocesory sygnałowe: architektura podstawowe operacje

2 Rodziny procesorów sygnałowych -stałoprzecinkowe (16-bitowe): ADSP21xx -zmiennoprzecinkowe (32-bitowe): ADSP21xxx -dedykowane (stałoprzecinkowe, 16- bitowe): ADMCx01, ADMC2199x Na przykładzie DSP firmy Analog Devices

3 Rozwój serii 21xx

4 Architektura jednego z modeli serii ADSP21xx - elementy składowe: ALU - operacje arytmetyczno-logiczne MAC - jednostka mnóż i dodawaj SHIFTER - przesuwanie bitów (skalowanie -zmiana zakresu liczb) DAG#1/2 - adresowanie pamięci danych i pamięci programu PROGRAM i DATA MEMORY - pamięci 24 i 16 bitowe (arch. Harvard) elementy I/O (wejścia wyjścia) i peryferia : porty szeregowe, flagi I/O, timer,...

5 Jednostka ALU (21xx) - Jednostka ALU jes 16-bitowa z dwoma wejściami X i Y i jednym wyjściem R -Rejestry wejściowe X (AX0, AX1), Y(AY0, AY1) oraz wyjściowe R (AR)- mają swoje rejestry cienie -W operacjach ALU uwzględniona zostaje wejście CI (AC) - z rejestru ASTAT - możliwość operacji wielokrotnej precyzji -W wyniku działania odpowiednio ustawiane są bity w rejestrrze statusowym (ASTAT): zero (AZ), negacja (AN), przeniesienie/pożyczka (AC), przepełnienie (AV), znak wejścia X (AS) i (AQ) status ilorazu -Wynik operacji ALU jest zapamiętywany w rejestrach AR (result) lub AF (feedback) -Rejestr AF jest rejestrem wewnętrznym umozliwiającym użycie wyniku bezpośrednio jako jedno z wejść (wejście Y) -Rejestr AR może zostać przesłany na magistralę R-BUS lub magistralę DMD-BUS oraz załadowany z magistrali DMD-BUS

6 Jednostka ALU (21xx) Interpretacja flag AV i AC Zakres liczb w stosowanym zapisie 1.15 Możliwe źródła dla wejść X i Y oraz podłączenie wyjscia XYR AX0, AX1 AY0, AY1 AR AR AF AF MR0, MR1, MR2 SR0, SR1

7 Jednostka ALU (21xx) - dozwolone operacje R = X + Y Add X and Y operands R = X + Y + CI Add X and Y operands and carry-in bit R = X – Y Subtract Y from X operand R = X – Y + CI - 1 Subtract Y from X operand with borrow R = Y – X Subtract X from Y operand R = Y – X + CI - 1 Subtract X from Y operand with borrow R = – X Negate X operand (twos-complement) R = – Y Negate Y operand (twos-complement) R = Y + 1 Increment Y operand R = Y – 1 Decrement Y operand R = PASS X Pass X operand to result unchanged R = PASS Y Pass Y operand to result unchanged R = 0 (PASS 0) Clear result to zero R = ABS X Absolute value of X operand R = X AND Y Logical AND of X and Y operands R = X OR Y Logical OR of X and Y operands R = X XOR Y Logical Exclusive OR of X and Y operands R = NOT X Logical NOT of X operand (ones- complement) R = NOT Y Logical NOT of Y operand (ones- complement)

8 Jednostka MAC (21xx) - Dwa 16-bitowe wejścia X,Y - Wynik mnożenia w postaci 32-bitowej R - Wynik podawany jest na wejście 40-bitowej jednostki dodająco/odejmującej. Gdy wynik wykracza poza zakres 32-bitowy - ustawiany jest bit MV (rejestr ASTAT). -Rejestry wejściowe X (AX0, AX1), Y(AY0, AY1) oraz wyjściowe MF, MR oba zestawy mają swoje rejestry cienie - Wynik przechowywany jest w rejestrze 40- bitowym MR== MR2 (8-bitów), MR1(16bitów), MR0(16bitów) - Wynik może być podany na wejście Y (poprzez 16-bitowy rejestr MF) - Wszystkie rejestry mogę być odczytywane lub zapisywane w tym samym czasie (podobnie w ALU)

9 Jednostka MAC (21xx) Żródła dla wejść i wyjść XYR MX0, MX1 MY0, MY1 MR (MR2, MR1, MR0) AR MF MF MR0, MR1, MR2 SR0, SR1 MAC - przepełnienie i nasycanie się wyniku Zaokrąglanie wyniku (część ułamkowa - bity zostaje zaokrąglona w górę lub w dół. Różne traktowanie punktu MIDPOINT Różne traktowanie tzw. punktu MIDPOINT

10 Jednostka MAC (21xx) - dozwolone operacje MR=X*Y Multiply X and Y operands. MR=MR+X*Y Multiply X and Y operands and add result to MR register. MR=MR–X*Y Multiply X and Y operands and subtract result from MR register. MR=0 Clear result (MR) to zero.

11 Jednostka SHIFTER (21xx) Arithmetic Shift (ASHIFT) Logical Shift (LSHIFT) Normalize (NORM) Derive Exponent (EXP) Block Exponent Adjust (EXPADJ)

12 Operation Codes (OPCODES) - przykłady DM(I0,M0)=0x1234 DM(0x5678)=0x1234

13 Operation Codes (OPCODES) - przykłady DM(0x1234)=X0 Adres = 0x x3FFF X0=0x1234 dana = 0x xFFFF

14 Operation Codes (OPCODES) MR = MR - MX0*MY0 (RND), MX0=MY1

15 Instrukcje warunkowe IF GE MR = MR - MX0*MY0 (RND)

16 Operation Codes (OPCODES)

17 Jednostka ALU - podstawowe operacje y,a,b - liczby całkowite (stałoprzecinkowe) y = a + b - procesor 80x86 MOV AL, [0x1000] ADD AL, [0x1001] MOV [0x1002],AL -jednostka ALU (21xx) AX0 = DM(0x1000) AY0 = DM(0x1001) AR = AX0 + AY0 DM(0x1002)=AR -jednostka ALU (21xx) I0 = 0x1000 M0 = 0x0001 AX0 = DM(I0,M0) AY0 = DM(I0,M0) AR = AX0 + AY0 DM(I0,M0) = AR

18 Warunkowe operacje ALU/ MAC/ Shifter -Instrukcje wykonywane warunkowo: IF warunek instrukcja -Jednoczesnie wykonywane operacje: ALU, MAC, Shifter, pobranie danej z pamięci programu, pobranie danej z pamięci danych

19 Przykład procedury: filtr FIR

20 Przykład procedury: sinus

21 Architektura procesorów sygnałowych -Rozwój serii 21xxx

22 Architektura procesorów sygnałowych -Architektura jednego z modeli serii 210xx (Sharc)

23 Architektura procesorów sygnałowych -Architektura modelu serii 211xx (Sharc)

24 Jednostka obliczeniowa procesora Tiger Sharc

25 Podstawowe Operacje ALU: 0 - flaga zostanie skasowana; * - skasowana lub ustawiona(w zależności od wyniku); ** - może zostać tylko ustawiona lecz nie skasowana - - bez zmian

26 Operacje ALU - c.d.

27 Operacje FPU jednostki Tiger Sharc

28 Operacje FPU jednostki Tiger Sharc - c.d.


Pobierz ppt "Wykład 6: Stałoprzecinkowe mikroprocesory sygnałowe: architektura podstawowe operacje."

Podobne prezentacje


Reklamy Google