Projektowanie cyfrowych systemów w oparciu o układy PLD (i VLSI)

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

REALIZACJA REGULATORA PID W UKŁADZIE FPGA
Inżynieria Systemów Programowalnych Część I
Podstawy układów logicznych
A.Skorupski „Podstawy budowy i działania komputerów” (Warszawa 2000)
UKŁADY ARYTMETYCZNE.
Wykład 6: Stałoprzecinkowe mikroprocesory sygnałowe: architektura
Operacje zmiennoprzecinkowe
Mikroprocesory i procesory sygnałowe
Metody numeryczne Wykład no 1.
Skalowalny algorytm estymacji ruchu dla systemów rozproszonych
Wykład 5: Mikroprocesory sygnałowe -wstęp: zastosowania i rodziny
Projektowanie cyfrowych systemów w oparciu o układy (VLSI i) PLD
Ernest Jamro Kat. Elektroniki AGH, Kraków Dep. Of Electronics, AGH
Najczęściej popełniane błędy w VHDL’u
Hardware Implementation of Algorithms Adders
Sprzętowa Implementacja Algorytmów
Inżynieria Oprogramowania dla Fizyków
ARCHITEKTURA WEWNĘTRZNA KOMPUTERA
Wstęp do FPGA Krzysztof Pisaniec
Mnożenie dwóch liczb 64-bitowych przy zastosowaniu automatu synchronicznego Orkiszewski Marcin.
SORTOWANIE (przykład zastosowania DMA)
Życiorys mgr inż. Michał Lech Katedra Systemów Multimedialnych WETI PG
Życiorys mgr inż. Jacek Siciarek Katedra Inteligentnych Systemów Interaktywnych, WETI PG Urodzony: r. Wykształcenie, praca zawodowa: od 2010 studia.
Architektura komputerów
Zapis informacji Dr Anna Kwiatkowska.
Ochrona danych wykład 3.
Elektronika cyfrowa i mikroprocesory
T.Bartkowiak, M.Januszewski, P.Kryszkiewicz, P.Wójt
Kod Graya.
Technika Mikroprocesorowa 1
Technika Mikroprocesorowa 1
Układy kombinacyjne cz.2
Bramki logiczne w standardzie TTL
Architektura komputerów
Podstawy adresowania hostów w sieciach komputerowych
Mikroprocesory.
Mikroprocesory mgr inż. Sylwia Glińska.
Podsystem graficzny i audio
Liczby całkowite dodatnie BCN
Systemy Liczbowe (technika cyfrowa)
  Prof.. dr hab.. Janusz A. Dobrowolski Instytut Systemów Elektronicznych, Politechnika Warszawska.
Matematyka i system dwójkowy
EcoCondens Kompakt BBK 7-22 E.
Prezentacja Multimedialna
Reprezentacja liczb w systemie binarnym ułamki i liczby ujemne
Złożone układy kombinacyjne
WYKŁAD 3 Temat: Arytmetyka binarna 1. Arytmetyka binarna 1.1. Nadmiar
Dwójkowy system liczbowy
Działania w systemie binarnym
Podstawy Techniki Cyfrowej
Elementy geometryczne i relacje
Projekt i Wykonanie Pojemnościowego Tomografu Procesowego
Zasady arytmetyki dwójkowej
CIRCUITS and SYSTEMS – part II Prof. dr hab. Stanisław Osowski Electrical Engineering (B.Sc.) Projekt współfinansowany przez Unię Europejską w ramach Europejskiego.
Programowalne układy cyfrowe, czyli fabryka na Twoim biurku
1 Tadeusz Łuba Mariusz Rawski Paweł Tomaszewicz Politechnika Warszawska Instytut Telekomunikacji Układy programowalne – nowe oblicze techniki cyfrowej.
Układy FPGA w systemach obliczeniowych
1 Tadeusz Łuba Politechnika Warszawska Instytut Telekomunikacji Układy programowalne – nowe spojrzenie na technikę cyfrową Komitet Elektroniki i Telekomunikacji.
Układy logiczne – układy cyfrowe
Sumator i półsumator.
1 Dr Galina Cariowa. 2 Legenda Iteracyjne układy kombinacyjne Sumatory binarne Sumatory - substraktory binarne Funkcje i układy arytmetyczne Układy mnożące.
Elementy cyfrowe i układy logiczne
1 Systemy Dedykowane w Układach Programowalnych Ernest Jamro Dodawanie.
Układy logiczne – układy cyfrowe
Rejestry przesuwne, sumatory
Synteza logiczna w projektowaniu układów cyfrowych
Wstęp do Informatyki - Wykład 6
KORELACJA WIELOKROTNA I CZĄSTKOWA
SHA1 – Secure Hash Algorithm
Zapis prezentacji:

Projektowanie cyfrowych systemów w oparciu o układy PLD (i VLSI) Ernest Jamro Dodawanie

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

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

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

Manchester Adder

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 też Tn= An xor Bn

Carry Skip Adder Szybkość (czas propagacji - T) Koszt (powierzchnia – A) AT= 1/Wydajność m- wielkość bitowa pojedynczego bloku

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ść

Carry Select Adder

Altera Carry Select Adder układy Apex, Cyclon

Porównanie układów dodających o szerokości 16 bitów Opóźnienie Koszt (AT)[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 (AT) [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

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

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

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