Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałSeweryn Waleczek Został zmieniony 11 lat temu
1
Projektowanie cyfrowych systemów w oparciu o układy PLD (i VLSI)
Ernest Jamro Dodawanie
2
Literatura Omondi A.R Computer Arithmetic Systems. Algorithms Architecture and Implementations, Prentice Hall 1994. Pirsch P., Architectures for Digital Signal Processing, Chichester UK, Wiley 1998. U.Mayer-Baese Digital Signal Processing with Field Programmable Gate Arrays, Springer, Berlin 2001 Keshab K. Parhi VLSI Digital Signal Processing Systems, J.Wiley & sons, 1999 Kazimierz Wiatr Akceleracja Obliczeń w systemach wizyjnych, WNT, W-wa 2003 E. Jamro, K. Wiatr, Układy mnożące przez stały współczynnik implementowane w układach programowalnych FPGA,
3
Układ dodający ze skrośną propagacją przeniesienia (Ripple Carry Adder)
ai + bi+ci-1 = si + 2·ci si = ai bi ci-1 ci= ai bi + ai ci-1 + bi ci-1= ai bi + ci-1 (ai bi) si ci-1\ai,bi 00 01 11 10 1 ci ci-1\ai,bi 00 01 11 10 1
4
Odejmowanie (a-b) Odejmowanie bezpośrednie Kod uzupełnień do dwóch U2
ai - bi-ci-1 = si - 2·ci si = ai bi ci-1 Dodanie 1 na najmłodszej pozycji bit znaku negacja każdego bitu si Zamiast odejmowania należy dokonać konwersji do kodu U2 liczby b oraz przeprowadzić zwykłą operację dodawania a+b’ ci-1\ai,bi 00 01 11 10 1 ci ci-1\ai,bi 00 01 11 10 1 na czerwono różnica pomiędzy dodawaniem
5
Manchester Adder
6
Ripple Carry Adders in FPGAs
si= ai bi ci-1 Fragment of Virtex Configurable Logic Block (CLB)
7
Carry Skip Adder (CSA) (sumator z przeskokiem przeniesień)
Tn= An + Bn lub też Tn= An xor Bn
8
Carry Skip Adder Szybkość (czas propagacji - T)
Koszt (powierzchnia – A) AT= 1/Wydajność m- wielkość bitowa pojedynczego bloku
9
Superblock of carry-skip adder
10
Superblock of carry-skip adder Czas propagacji
11
Carry Lookahead Adder Si = Ai Bi Ci-1
Ci= Ai Bi + Ai Ci-1 + Bi Ci-1= Ai Bi + Ci-1 (Ai Bi) Gi= Ai Bi – Generate - Propagate Pi= AiBi - Propagate bo: - Generate Si= Pi Ci-1 Ci= Gi + Pi Ci-1 S0= P0 C-1 C0= G0 + P0 C-1 S1= P1 C0 C1= G1 + P1 C0= G1 + P1(G0 + P0 C-1)= G1 + P1G0 + P1P0C-1 S2 = P2 C1 C2= G2 + P2 C1= G2 + P2G1 + P2P1G0 + P2P1P0C-1
12
Carry-lookahead adder Sumator z antycypacją przeniesień
13
Ripple Carry-Lookahead Adder
14
RCLA koszt i szybkość Koszt A Czas prop. T AT= 1/Wydajność
15
Carry Select Adder
16
Altera Carry Select Adder układy Apex, Cyclon
17
Porównanie układów dodających o szerokości 16 bitów
Opóźnienie Koszt (AT)[104] tylko Carry Look Ahead 4 7392 2.94 Ripple CLA (m=4) 10 336 0.34 carry select (m=4) 6 992 0.6 carry skip 15 240 0.36 2-level carry skip 12 300 Ripple Carry 31 224 0.69 64 bity Układ Opóźnienie Koszt (AT) [104] tylko Carry Look Ahead 4 50624 20.25 Ripple CLA (m=4) 34 1334 4.57 carry select (m=4) 6 2688 1.61 carry skip 29 960 2.50 2-level carry skip 28 1140 3.19 Ripple Carry 127 896 11.38
18
Dodawanie 3-wejściowe z propagacją przeniesienia Carry Propagate Adder (CPA)
S= A + B + C CPA – układ dodający np. ze skrośną propagacją przeniesienia (Ripple Carry), Carry Look Ahead, Carry Select Adder Przykład dla Ripple Carry Adder
19
Dodawanie 3-wejściowe Zachowywanie przeniesienia
Dodawanie 3-wejściowe Zachowywanie przeniesienia. Carry Save Adder (CSA) A+B+C= S + 2 ·T Bitowo ai + bi+ci = si + 2·ti+1 si = ai bi ci ti+1= ai bi + ai ci + bi ci= ai bi + ci (ai bi) Nie ma propagacji przeniesienia Bardzo szybki układ dodający przy powierzchni podobnej jak Ripple-Carry Adder
20
CSA -Dodawanie wielowejściowe
3-wejścia 4-wejścia 6- wejść Uwaga: T ma wagę 2 i dla bitów najmłodszych i najstarszych powyższa struktura jest zakłócona Niestety w układach FPGA ze względu na dedykowane układy dodające stosowanie CSA nie jest zalecana
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.