Układ cyfrowy. Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące.

Podobne dokumenty
Układy logiczne układy cyfrowe

Układy logiczne układy cyfrowe

Bloki funkcjonalne. stanowią wyposażenie bibliotek komputerowych systemów projektowania. Każdy układ cyfrowy składamy z bloków funkcjonalnych ZPT

System cyfrowy. Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące.

System cyfrowy. Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące.

Funkcja Boolowska a kombinacyjny blok funkcjonalny

Układy cyfrowe. ...konstruowane są w różnych technologiach i na różnych poziomach opisu. D Clk. clock

Kombinacyjne bloki funkcjonalne - wykład 3

Automatyka. Treść wykładów: Multiplekser. Układ kombinacyjny. Demultiplekser. Koder

Funkcje logiczne X = A B AND. K.M.Gawrylczyk /55

Układy kombinacyjne. cz.2

4. UKŁADY FUNKCJONALNE TECHNIKI CYFROWEJ

Układy arytmetyczne. Joanna Ledzińska III rok EiT AGH 2011

LEKCJA. TEMAT: Funktory logiczne.

Architektura komputerów Wykład 2

Elementy struktur cyfrowych. Magistrale, układy iterowane w przestrzeni i w czasie, wprowadzanie i wyprowadzanie danych.

Kombinacyjne bloki funkcjonalne

UKŁAD SCALONY. Cyfrowe układy można podzielić ze względu na różne kryteria, na przykład sposób przetwarzania informacji, technologię wykonania.

Technika cyfrowa Układy arytmetyczne

Bramki logiczne Podstawowe składniki wszystkich układów logicznych

Elementy struktur cyfrowych. Magistrale, układy iterowane w przestrzeni i w czasie, wprowadzanie i wyprowadzanie danych.

Podział sumatorów. Równoległe: Szeregowe (układy sekwencyjne) Z przeniesieniem szeregowym Z przeniesieniem równoległym. Zwykłe Akumulujące

Synteza logiczna w projektowaniu

Specyfika projektowania Mariusz Rawski

Cyfrowe układy scalone c.d. funkcje

Projektowanie Urządzeń Cyfrowych

PODSTAWY TEORII UKŁADÓW CYFROWYCH

Ćwiczenie Digital Works 003 Układy sekwencyjne i kombinacyjne

LABORATORIUM TECHNIKA CYFROWA LICZNIKI I REJESTRY. Rev.1.1

Podstawy techniki cyfrowej cz.2 zima Rafał Walkowiak

Podstawy techniki cyfrowej cz.2 wykład 3 i 5

Wstęp do Techniki Cyfrowej... Synchroniczne układy sekwencyjne

Podstawy działania układów cyfrowych...2 Systemy liczbowe...2 Kodowanie informacji...3 Informacja cyfrowa...4 Bramki logiczne...

Część 3. Układy sekwencyjne. Układy sekwencyjne i układy iteracyjne - grafy stanów TCiM Wydział EAIiIB Katedra EiASPE 1

Język HDL - VERILOG. (Syntetyzowalna warstwa języka) Hardware Description Language Krzysztof Jasiński PRUS PRUS

Elementy struktur cyfrowych. Magistrale, układy iterowane w przestrzeni i w czasie, wprowadzanie i wyprowadzanie danych.

Pracownia elektryczna i elektroniczna. Elektronika cyfrowa. Ćwiczenie nr 5.

Architektura komputerów, Informatyka, sem.iii. Sumatory

Podstawy Informatyki Elementarne podzespoły komputera

Programowany układ czasowy APSC

Temat 5. Podstawowe bloki funkcjonalne

Sumatory H D L. dr inŝ. Paweł Tomaszewicz Instytut Telekomunikacji Politechnika Warszawska

f we DZIELNIKI I PODZIELNIKI CZĘSTOTLIWOŚCI Dzielnik częstotliwości: układ dający impuls na wyjściu co P impulsów na wejściu

Programowany układ czasowy

Ćw. 7: Układy sekwencyjne

Altera Quartus II. Opis niektórych komponentów dostarczanych razem ze środowiskiem. Opracował: mgr inż. Leszek Ciopiński

Sekwencyjne bloki funkcjonalne

Krótkie przypomnienie

Podstawowe elementy układów cyfrowych układy sekwencyjne Rafał Walkowiak Wersja

Podstawy elektroniki cz. 2 Wykład 2

Układy reprogramowalne i SoC Język VHDL (część 4)

Blok funkcjonalny to specjalizowany układ cyfrowy przystosowany do wykonania jednej lub kilku okrelonych operacji przetwarzania sygnałów binarnych.

WSTĘP DO ELEKTRONIKI

Przykładowe pytania DSP 1

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania).

Język HDL - VERILOG. (Syntetyzowalna warstwa języka) Hardware Description Language Krzysztof Jasiński PRUS PRUS

Układy Logiczne i Cyfrowe

Układy kombinacyjne Y X 4 X 5. Rys. 1 Kombinacyjna funkcja logiczna.

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014

Plan wykładu. Architektura systemów komputerowych. Cezary Bolek

CYFROWE BLOKI FUNKCJONALNE

LABORATORIUM ELEKTRONIKI I TEORII OBWODÓW

Układy cyfrowe i operacje logiczne

Język VERILOG w praktyce

Podstawowe elementy układów cyfrowych układy sekwencyjne. Rafał Walkowiak

Sterowniki Programowalne (SP)

Ćwiczenie 01 - Strona nr 1 ĆWICZENIE 01

Architektura systemów komputerowych. Poziom układów logicznych. Układy mnoŝące i dzielące

Elektronika i techniki mikroprocesorowe

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

KARTA PRZEDMIOTU. Nr Opis efektu kształcenia Metoda sprawdzenia efektu kształcenia. Forma prowadzenia zajęć

Sposoby projektowania systemów w cyfrowych

Cyfrowe układy sekwencyjne. 5 grudnia 2013 Wojciech Kucewicz 2

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: PROGRAMOWALNE STRUKTURY LOGICZNE

Struktura i działanie jednostki centralnej

Układy mikroprogramowane

Ćwiczenie 31 Temat: Analogowe układy multiplekserów i demultiplekserów. Układ jednostki arytmetyczno-logicznej (ALU).

Układy czasowo-licznikowe w systemach mikroprocesorowych

Rys Schemat montażowy (moduł KL blok e) Tablica C B A F

Ćwiczenie 27 Temat: Układy komparatorów oraz układy sumujące i odejmujące i układy sumatorów połówkowych i pełnych. Cel ćwiczenia

PAMIĘĆ RAM. Rysunek 1. Blokowy schemat pamięci

Automatyzacja i robotyzacja procesów produkcyjnych

Programowalne scalone układy cyfrowe PLD, CPLD oraz FPGA

Plan wykładu. Architektura systemów komputerowych. MnoŜenie realizacja sprzętowa (wersja 1) Układy mnoŝące liczby całkowite.

LICZNIKI Liczniki scalone serii 749x

1. Poznanie właściwości i zasady działania rejestrów przesuwnych. 2. Poznanie właściwości i zasady działania liczników pierścieniowych.

Elektryczna implementacja systemu binarnego.

Architektura typu Single-Cycle

Politechnika Wrocławska, Wydział PPT Laboratorium z Elektroniki i Elektrotechniki

4. Karta modułu Slave

Język AHDL. Synteza strukturalna. dr inŝ. Paweł Tomaszewicz Instytut Telekomunikacji Politechnika Warszawska H D L

Układy logiczne. Wstęp doinformatyki. Funkcje boolowskie (1854) Funkcje boolowskie. Operacje logiczne. Funkcja boolowska (przykład)

Projekt z przedmiotu Systemy akwizycji i przesyłania informacji. Temat pracy: Licznik binarny zliczający do 10.

Podstawy układów mikroelektronicznych

Technika Cyfrowa 1. Wykład 7 Cyfrowe bloki funkcjonalne IV CYFROWE BLOKI FUNKCJONALNE

UKŁADY MIKROPROGRAMOWALNE

UKŁADY SEKWENCYJNE Opracował: Andrzej Nowak

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.

Symulacja układów cyfrowych programem MultimediaLogic

Układy cyfrowe w Verilog HDL. Elementy języka z przykładami. wersja: cz.3

Transkrypt:

Układ cyfrowy Sygnały sterujące Dane wejściowe Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące Stan części operacyjnej Dane wyjściowe Z

Synteza strukturalna układów cyfrowych Licznik Mux Rejestr B l o k i F u n k c j o n a l n e Składamy układ z bloków funkcjonalnych Z 2

3 Z Edytor graficzny N CLK CK N LB[7..] SO] OU CLOK L[3..] OU OU LOAD SAR LOAD LOAD LOAD CLK DA[3..] LOAD SO DB[3..] RB[7..] LD[7..] CK SO CK CK DB[3..] DA[3..] r3_v Us_v r2_v r_v r4_v Lk_v LB[7..] CK CLK SAR CLOK SO LD[7..] NU NU NU NU OUU OUU OUU

Bloki funkcjonalne X X, (Y) wejścia (wyjścia) sygnałów reprezentujących dane wejściowe i wyjściowe S BF S wejścia sterujące, wyjścia predykatowe, clk wejście zegarowe clk Y Bloki funkcjonalne stanowią wyposażenie bibliotek komputerowych systemów projektowania Z 4

System MAX+LUS jest wyposażony w dwie biblioteki komponentów: a) bibliotekę tzw. makrofunkcji b) bibliotekę megafunkcji (moduły LM) Library of arameterized Modules (LM) Z 5

Macrofunctions: Makrofunkcje Adders Latches Arithmetic Logic Units Buffers Multiplexers Comparators Converters Counters Registers Shift Registers Multipliers Były kiedyś produkowane jako bloki funkcjonalne serii 74xx Z 6

Macrofunctions Multiplexers 2mux 6mux 2X8mux 2-Line-to--Line Multiplexer 6-Line-to--Line Multiplexer 2-Line-to--Line Multiplexer for 8-Bit Buses 745b 8-Line-to--Line Multiplexer 7453 Dual 4-Line-to--Line Multiplexer 7457 uad 2-Line-to--Line Multiplexer 74258 uad 2-Line-to--Line Multiplexers with nverting ri-state Outputs 74352 Dual 4-Line-to--Line Data Selector/Multiplexer with nverting Outputs 74354 8-Line-to--Line Data Selector/Multiplexer/Register with ri-state Outputs Z 7

Registers Macrofunctions 749 Serial-n Serial-Out Shift Register 7494 4-Bit Shift Register with Asynchronous reset and Clear 7495 4-Bit arallel-access Shift Register 7496 5-Bit Shift Register 7499 4-Bit Shift Register with /JK Serial nputs and arallel Outputs 7464 Serial-n arallel-out Shift Register 7494 4-Bit Bidirectional Shift Register with arallel Load 74295 4-Bit Right-Shift Left-Shift Register with ri-state Outputs 74299 8-Bit Universal Shift/Storage Register 74674 6-Bit Shift Register Z 8

Macrofunctions Counters 749 Decade or Binary Counter with Clear and Set-to-9 7492 Divide-by-2 Counter 7493 4-Bit Binary Counter 746 4-Bit Decade Counter with Synchronous Load and Asynchronous Clear 746 4-Bit Binary Up Counter with Synchronous Load and Asynchronous Clear 7462 4-Bit Decade Up Counter with Synchronous Load and Synchronous Clear 7463 4-Bit Binary Up Counter with Synchronous Load and Synchronous Clear 749 4-Bit Decade Up/Down Counter with Asynchronous Load 7492 4-Bit Decade Up/Down Counter with Asynchronous Clear 7493 4-Bit Binary Up/Down Counter with Asynchronous Clear 74294 rogrammable Frequency Divider/Digital imer Z 9

Konsekwencje wprowadzenia makrofunkcji Struktury makrofunkcji nie są odpowiednie do technologii układów programowalnych a ich odwzorowanie technologiczne na komórki aktualnie produkowanych układów FGA nie prowadzi do optymalnego wykorzystania zasobów sprzętowych Z

Megafunkcje System MAX + plus jest wyposażony w moduły LM (Library of arameterized Modules) Moduły LM są parametryzowane: użytkownik może ustalić np. wielkość MUX, liczbę bitów argumentów sumatora lub niektóre mikrooperacje. Z

Megafunctions/LM Z Gates lpm_and lpm_inv lpm_bustri lpm_clshift lpm_constant lpm_decode lpm_mux lpm_or lpm_xor MUX:745 7453 7457 Arithmetic Components lpm_compare lpm_counter lpm_add_sub lpm_mult Storage Components lpm_latch lpm_shiftreg lpm_ram_dp lpm_ram_io pm_ff lpm_rom lpm_fifo 2

Konfiguracja modułu LM Konfiguracja i wyposażenie jest definiowana parametrami Moduł sumator/układ odejmujący: lpm_add_sub a) LM_DH b) LM_CONFGURAON a) określa liczbę bitów sumatora b) określa operację: liczby ze znakiem (signed) lub liczby bez znaku (unsigned) Z 3

Sumator w strukturze LM Z 4

Najważniejsze bloki funkcjonalne B. kombinacyjne B. sekwencyjne Układy Komutacyjne MUX DMUX DEC Układy arytmetyczne Sumator Układ odejmujący Komparator Rejestry Równoległe rzesuwające Liczniki Zliczające górę dół Z 5

Multipleksery, demultipleksery e e d y d y d y d N- N = 2 n y N- MUX DMUX a n- a a n- a y = e N k= k (A)d k k = L(A), k pełny iloczyn y k = e (A)d k Z 6

Multipleksery Z y = e N k= k(a)d k gdzie k (A) oznacza pełny iloczyn zmiennych a n,...,a, prostych lub zanegowanych, zgodnie z reprezentacją binarną liczby k. y = a a a d + a 2 + a a a d + 2 Dla n = (MUX 2 : ): y = ad + ad y = a a d + 4 dla n = 2 (MUX 4 : ): 2 + a a d + a a d a a d 2 3 dla n = 3 (MUX 8 : ): a a d a a a 2 + d 5 a a a d 2 + a a a 2 2 + a d + 6 2 a a d a a a 2 3 + d 7 7

Multiplekser e= y = a + ad + aa d + aa d2 aa d3 2 3 Z 8

9 Z Demultiplekser e= 2 3 d a a y d a a y d a a y d a a y 3 2 = = = =

Dekoder DMUX e DEKODER d y y a a y y y N- a n- y N- a n- a N = 2 n Z 2

Multipleksery, demultipleksery Multiplekser y = a + ad + aa d + aa d2 aa d3 Demultiplekser y = a a d y = a a d a e a y 2 = a a d e y 3 = a a d d y a a d y d 2 y y 2 d 3 d y 3 Z 2

Multipleksery kaskadowe Z 22

Multipleksery grupowe A A B Y=A Y=B B Z 23

Bloki komutacyjne b b X Y X j Y X Y j X N- Y N- Z S Multiplekser służy do wybierania jednego z wielu słów wejściowych i przesyłania go na wyjście. Na wyjściu Y pojawia się słowo wejściowe wskazane adresem A (wg naturalnego kodu binarnego). n S n Demultiplekser służy do przesyłania słowa X wejściowego na jedno z wielu wyjść; numer tego wyjścia jest równy aktualnej wartości adresu. 24

25 Z Bloki komutacyjne a a 2 3 a a 2 3

Magistrala (realizacja z multiplekserami) Bus L L 2 L k Clock Dane wejściowe R R 2 R k a a m Multipleksery s s s n- S Z 26

Magistrale (szyny) Budowane z elementów trójstanowych e = e x f x f x e = f e x f Z Z Z 27

Magistrala (realizacja z buforami) Dane we E Bus Clock R R 2 Rk R in R out R 2 in R 2 out Rk in Rk out Z sterowanie 28

Sumatory A B Sumator podstawowy BF powszechnie stosowany w technice DS c n n Σ n c nne układy arytmetyczne: układy odejmowania układy mnożące układy dzielenia...są budowane z sumatorów Y n Z 29

Ripple carry adder Sumator kaskadowy x n- y n- x i y i x y c n- c c i+ n FA FA c i c FA c s n- s i s c i s i = = x x i y c y i ( x c i y + i i i i i ) Z 3

Sumator (Full adder) c i s i x i y i c i+ c i s i = = x x i y c y i ( x c i y + i i i i i ) Z 3

Jaka Ripple-carry jest ścieżka adder - wady krytyczna tego układu? n- n- n n- Bardzo długa - liniowo zależna od wielkości sumatora Dla większości zastosowań sumator kaskadowy jest zbyt wolny Z 32

Sumator z antycypacją przeniesień Znacznie lepszy jest sumator z antycypacją przeniesień, w którym 8 89 57 3 8 3,8 9,7,3 /34. 3 3, 54/89, - 9 8:24,3. 8,/3 Z 33

Sumator z antycypacją przeniesień tedy: c i+ = x i y i c i (x i y i ) g i = x i y i p i = x i y i c i+ = g i p i c i s i = c i (p i g i ) s i = x i y i c i Z 34

Sumator z antycypacją przeniesień c i+ = g i p i c i c c = g p c c = g p c c 2 = g p c = g p (g p c ) c 2 = g p g p p c (funkcja 5 arg.) c 3 = g 2 p 2 g p 2 p g p 2 p p c c 4 = g 3 p 3 g 2 p 3 p 2 g p 3 p 2 p g p 3 p 2 p p c Z 35

Sumator z antycypacją przeniesień c 2 = g p g p p c 8 89 57 3 8 3,8 9,7,3 /34. 3 3, 54/89, - 9 8:24,3. 8,/3! x y p g x y p g c C C c 2 F s c F s Z 36

Sumatory z antycypacją przeniesień można łączyć szeregowo x 3-24 y 3-24 x 5-8 y 5-8 x 7- y 7- c 24 c 6 c 32 Blok 3 Blok Blok c 8 c S 3-24 S 5-8 S 7- Z 37

Hierarchiczny sumator z antycypacją przeniesień x 3 24 y 3 24 x 5 8 y 5 8 x 7 y 7 Block 3 c 24 Block Block c G 3 H 3 G H G H s 3 24 s 5 8 s 7 c 32 c 6 c 8 Drugi poziom Z 38

Sumator/układ odejmujący A U2 = (a n,..., a j,..., a ) Kod U2 A B n ( ) n U2 = an 2 + j= AD = L A aj2 n 2 j n XOR n cn c Σ n Y + Z 39

Sumator/układ odejmujący a 3 b 3 a 2 b 2 a b a b A CO B + C A CO B + C A CO B + C A CO B + C Dodawanie/ odejmowanie S S S S S 3 S 2 S S Overflow Z 4

Komparator A B n n K z 3 A < B A = B A > B Z 4

Komparator a 3 b 3 i 3 A = a 3 a 2 a a B = b 3 b 2 b b i k = a k b k a 2 b 2 i 2 a b i A eq B = i 3 i 2 i i a b i A < B = A eq B+ A gt B A > B = a 3 + i b 3 3 i 2 + i a 3 b a 2 b 2 + i 3 i + 2 i a b Z a k b k A < B, gdy a k =, b k = A > B, gdy a k =, b k = 42

Komparator a 3 b 3 a 2 b 2 a b a b i 3 i 2 i i A = a 3 a 2 a a B = b 3 b 2 b b A = B A < B A > B Z 43

Sekwencyjne bloki funkcjonalne Y := X Y := Y LOAD HOLD Rejestry Liczniki Y := <...> RESE (CLEAR) x p X x l X s s 2 clock R () s s 2 clock L () Y Y := SHR(x p, Y) Y := SHL(Y, x l ) Y Y := Y + = NC(Y) Y := Y = DEC(Y) Z 44

rosty rejestr Rejestr zbudowany z przerzutników ładowanie (load) i pamiętanie CLK D D 2 2 D 3 3 D 4 4 2 3 4 LOAD Z 45

Rejestr przesuwający SHR wejście szeregowe clk 2 3 4 D D 2 D 3 D 4 E 2 3 4 Z 46

Rejestr przesuwający 2 3 4 wejście szeregowe D D 2 D 3 D 4 CLK D D Clock D Sel Z 47

Rejestr przesuwający z wpisem równoległym yjścia równoległe 3 2 D D D D ejście szeregowe Shift/Load ejścia równoległe Clock Z 48

Rejestr przesuwający z wpisem równoległym yjścia równoległe 3 2 D D D D ejście szeregowe Shift/Load ejścia równoległe Clock Z 49

Mikrooperacje licznika LOAD HOLD COUN LOAD HOLD COUN clock Licznik LOAD Zliczanie Z 5

rzykład licznika z wejściem Enable 2 3 E clock = E = E = E = = E Licznik 2 = 2 2 A E A A A A A A 2 A 2 A 2 A 3 A 3 A 3 A 4 A 4 A A 4 A 4 A 5 A 5 A 5 A 5 A Z 5

Licznik w górę Enable Clock Rst D clk Z 52

Licznik z przerzutnikami D Enable D D D 2 Z Clock D 3 Output carry 53

Licznik z wpisywaniem równoległym Enable D D D D D 2 D 2 Z D 3 Load Clock D 3 Output carry 54

amięci typu ROM p X A X i ROM m n X m- n ROM uniwersalny układ kombinacyjny Y Z 55

amięci typu ROM Adres 2 3 4 5 6 7 ROM 8 4 Z 56

amięci typu ROM D C B A MARYCA OR (ROGRAMOALNA) (struktura) Z MARYCA AND (SALA) y 3 y 2 y y 57