Hardware Implementation of Algorithms Adders

Slides:



Advertisements
Podobne prezentacje
VHDL Today, Verilog HDL is an accepted IEEE standard. In 1995, the original standard IEEE was approved. IEEE is the latest Verilog.
Advertisements

I część 1.
REALIZACJA REGULATORA PID W UKŁADZIE FPGA
Inżynieria Systemów Programowalnych Część I
Sumatory + Półsumator A B S C A B S (suma) C (przeniesienie)
Równoległe kwerendy danych
Podstawy układów logicznych
Życiorys mgr inż. Robert Piotrowski Katedra Systemów Mikroelektronicznych WETI PG Urodzony: r. Wykształcenie: studia doktoranckie na.
UKŁADY ARYTMETYCZNE.
Wykład 6: Stałoprzecinkowe mikroprocesory sygnałowe: architektura
Inżynieria Oprogramowania 10. Szacowanie kosztu oprogramowania cz. 2
Projektowanie cyfrowych systemów w oparciu o układy PLD (i VLSI)
Operacje zmiennoprzecinkowe
Mikroprocesory i procesory sygnałowe
Ludwik Antal - Numeryczna analiza pól elektromagnetycznych –W10
Wykład 5: Mikroprocesory sygnałowe -wstęp: zastosowania i rodziny
KONKURS WIEDZY O SZTUCE
Podstawowe składniki funkcjonalne procesora i ich rola.
Projektowanie cyfrowych systemów w oparciu o układy (VLSI i) PLD
by Ernest Jamro Katedra Elektroniki, AGH Kraków
Programowalne Układy Cyfrowe Ernest Jamro, Paweł Russek C3 p
Ernest Jamro Kat. Elektroniki AGH, Kraków Dep. Of Electronics, AGH
Najczęściej popełniane błędy w VHDL’u
Sprzętowa Implementacja Algorytmów
Ministerstwo Gospodarki Poland'sexperience Waldemar Pawlak Deputy Prime Minister, Minister of Economy March 2010.
WYZWALACZE (TRIGGERY) Wyzwalacz jest specjalnym rodzajem procedury składowanej, która może być wykonana w odpowiedzi na jedną z trzech sytuacji: UPDATE.
Inżynieria Oprogramowania dla Fizyków
ARCHITEKTURA WEWNĘTRZNA KOMPUTERA
Wstęp do FPGA Krzysztof Pisaniec
Zapytania SQL: wydajność i optymalizacja
SORTOWANIE (przykład zastosowania DMA)
KOMPONENTY TYPU SLAVE Orkiszewski Marcin
Architektura komputerów
UKŁADY SZEREGOWO-RÓWNOLEGŁE
Elektronika cyfrowa i mikroprocesory
WYNIKI SPRAWDZIANU SZÓSTOKLASISTY 2010 DLA SZKOŁY.
Technika Mikroprocesorowa 1
Technika Mikroprocesorowa 1
CUDA & CUDA.NET – czyli istne CUDA Piotr Ablewski
Wyrażenia algebraiczne
Bramki logiczne w standardzie TTL
Ćwiczenie: Dla fali o długości 500nm w próżni policzyć częstość (częstotliwość) drgań wektora E (B). GENERACJA I DETEKCJA FAL EM Fale radiowe Fale EM widzialne.
  Prof.. dr hab.. Janusz A. Dobrowolski Instytut Systemów Elektronicznych, Politechnika Warszawska.
EcoCondens Kompakt BBK 7-22 E.
Prezentacja Multimedialna
Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne
Testogranie TESTOGRANIE Bogdana Berezy.
Złożone układy kombinacyjne
WYKŁAD 3 Temat: Arytmetyka binarna 1. Arytmetyka binarna 1.1. Nadmiar
Działania w systemie binarnym
Elementy geometryczne i relacje
Zasady arytmetyki dwójkowej
Which of the following two restaurants do you prefer? Któr ą z tych dwóch restauracji ty by ś wybrał ?
1 Tadeusz Łuba Mariusz Rawski Paweł Tomaszewicz Politechnika Warszawska Instytut Telekomunikacji Układy programowalne – nowe oblicze techniki cyfrowej.
Układy FPGA w systemach obliczeniowych
JOB SEARCH IS A JOB Career planning is building bridges from one’s current job/career.
Od Feynmana do Google’a Rafał Demkowicz-Dobrzański,, Wydział Fizyki UW.
1 Tadeusz Łuba Politechnika Warszawska Instytut Telekomunikacji Układy programowalne – nowe spojrzenie na technikę cyfrową Komitet Elektroniki i Telekomunikacji.
Sumator i półsumator.
Pakiety numeryczne Operatory, instrukcje sterujące, operacje bitowe Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania.
The UK and London. The United Kingdom of Great Britain and Northern Ireland, known as the United Kingdom (UK) or Britain is a big country in Europe.
Elementy cyfrowe i układy logiczne
VHDL Ernest Jamro, Paweł Russek C3 p. 504
7 Międzynarodowa Konferencja INŻYNIERIA PRODUKCJI – r. Wrocław Piotr Garbacz INTEGRATED VISION SYSTEMS VERSUS CUSTOM SOLUTIONS FOR.
1 Systemy Dedykowane w Układach Programowalnych Ernest Jamro Dodawanie.
Opracowanie: Katarzyna Gagan, Anna Krawczuk
Rejestry przesuwne, sumatory
Wstęp do Informatyki - Wykład 6
zl
1) What is Linux 2) Founder and mascot of linux 3) Why Torvalds created linux ? 4) System advantages and disadvantages 5) Linux distributions 6) Basic.
Zapis prezentacji:

Hardware Implementation of Algorithms Adders Ernest Jamro, Dep. Of Electronics, AGH, Poland

References 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, http://home.agh.edu.pl/~jamro/2001KCM_pl.pdf www.xilinx.com www.altera.com

Układ dodający ze szeregową 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

Odejmowanie / Subtraction (A-B) Odejmowanie bezpośrednie Direct Subtruction Kod uzupełnień do dwóch U2 Two’s Complement ai - bi-ci-1 = si - 2·ci si = ai  bi  ci-1 Add 1 to LSB negacja każdego bitu Invert each bit bit znaku sign bit si ci-1\ai,bi 00 01 11 10 1 Zamiast odejmowania należy dokonać konwersji do kodu U2 liczby b oraz przeprowadzić zwykłą operację dodawania a+b’ Instead of performing a direct subtraction; a standard adder can be employed but B must be converted to 2’s complement code ci ci-1\ai,bi 00 01 11 10 1 na czerwono różnica pomiędzy dodawaniem Red – difference between addition and subtruction

Ripple Carry Adders in FPGAs si= ai  bi  ci-1 Fragment of Virtex Configurable Logic Block (CLB)

Carry Skip Adder (CSA) (sumator z przeskokiem przeniesień) Tn= An + Bn (lub / or) Tn= An xor Bn

Carry Skip Adder Szybkość (propagation time - T) Koszt (Area – A) AT= 1/Wydajność (efficiency) m- wielkość bitowa pojedynczego bloku (width of a block)

Carry Select Adder

Altera Carry Select Adder Apex, Cyclon

Porównanie układów dodających o szerokości Comparison of Different Adders Architectures 16 bit Układ / Architecture Opóźnienie Propagation delay Koszt Area (AT)[104] 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 /Architecture Opóźnienie Koszt (AT) [104] 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

Dodawanie 3-wejściowe z propagacją przeniesienia 3+ input 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 Example of Ripple Carry Adder

Dodawanie 3-wejściowe / Addition 3 Inputs Zachowywanie przeniesienia Dodawanie 3-wejściowe / Addition 3 Inputs Zachowywanie przeniesienia. Carry Save Adder (CSA) A+B+C= 2 ·T + S ai + bi+ci = 2·ti+1 + si 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

CSA – 3+ inputs 3-inputs 4-inputs 6-inputs In FPGA dedicated carry logic is available therefore CSA is not so popular as in ASIC technology

Materiały dodatkowe

Manchester Adder

Superblock of carry-skip adder

Superblock of carry-skip adder Czas propagacji

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= AiBi - 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

Carry-lookahead adder Sumator z antycypacją przeniesień

Ripple Carry-Lookahead Adder

RCLA koszt i szybkość Koszt A Czas prop. T AT= 1/Wydajność