Architektura komputerów

Podobne dokumenty
Architektura komputerów Wykład 2

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

Tranzystor JFET i MOSFET zas. działania

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

dr inż. Małgorzata Langer Architektura komputerów

Wykład nr 1 Techniki Mikroprocesorowe. dr inż. Artur Cichowski

Wstęp do Techniki Cyfrowej... Algebra Boole a

Część 2. Funkcje logiczne układy kombinacyjne

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

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

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

Automatyka Treść wykładów: Literatura. Wstęp. Sygnał analogowy a cyfrowy. Bieżące wiadomości:

LEKCJA. TEMAT: Funktory logiczne.

Technika cyfrowa Synteza układów kombinacyjnych (I)

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

Elektronika cyfrowa i mikroprocesory. Dr inż. Aleksander Cianciara

Arytmetyka liczb binarnych

ARCHITEKTURA SYSTEMÓW MIKROPROCESOROWYCH. dr inż. Małgorzata Langer B9, pok. 310 Instytut Elektroniki

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Algebra Boole a. Ćwiczenie Sprawdź, czy algebra zbiorów jestrównież algebrą Boole a. Padaj wszystkie elementy takiej realizacji.

Technika cyfrowa Synteza układów kombinacyjnych

Logika binarna. Prawo łączności mówimy, że operator binarny * na zbiorze S jest łączny gdy (x * y) * z = x * (y * z) dla każdego x, y, z S.

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

Podstawy Informatyki Elementarne podzespoły komputera

Podstawy Automatyki. Wykład 12 - synteza i minimalizacja funkcji logicznych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Układy cyfrowe. Najczęściej układy cyfrowe służą do przetwarzania sygnałów o dwóch poziomach napięć:

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Automatyka Lab 1 Teoria mnogości i algebra logiki. Akademia Morska w Szczecinie - Wydział Inżynieryjno-Ekonomiczny Transportu

Układy Logiczne i Cyfrowe

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

Architektura komputerów ćwiczenia Bramki logiczne. Układy kombinacyjne. Kanoniczna postać dysjunkcyjna i koniunkcyjna.

Automatyzacja i robotyzacja procesów produkcyjnych

Wykład 2. Informatyka Stosowana. 8 października 2018, M. A-B. Informatyka Stosowana Wykład 2 8 października 2018, M. A-B 1 / 41

Układy kombinacyjne. cz.2

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Elementy cyfrowe i układy logiczne

Automatyzacja Ćwicz. 2 Teoria mnogości i algebra logiki Akademia Morska w Szczecinie - Wydział Inżynieryjno-Ekonomiczny Transportu

Wstęp do Techniki Cyfrowej i Mikroelektroniki

Krótkie przypomnienie

Zadania do wykładu 1, Zapisz liczby binarne w kodzie dziesiętnym: ( ) 2 =( ) 10, ( ) 2 =( ) 10, (101001, 10110) 2 =( ) 10

Architektura komputerów

Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń.

Rys. 2. Symbole dodatkowych bramek logicznych i ich tablice stanów.

Elementy cyfrowe i układy logiczne

Podstawy elektroniki cyfrowej dla Inżynierii Nanostruktur. Piotr Fita

Technika cyfrowa i mikroprocesorowa. Zaliczenie na ocenę. Zaliczenie na ocenę

Architektura systemów komputerowych Laboratorium 13 Symulator SMS32 Operacje na bitach

Układy logiczne układy cyfrowe

WSTĘP DO ELEKTRONIKI

Podstawy techniki cyfrowej

Architektura komputerów

Elementy logiki. Algebra Boole a. Analiza i synteza układów logicznych

Podstawy Automatyki. Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

Wstęp do Techniki Cyfrowej... Układy kombinacyjne

Cyfrowe układy scalone c.d. funkcje

Państwowa Wyższa Szkoła Zawodowa

ćwiczenie 202 Temat: Układy kombinacyjne 1. Cel ćwiczenia

Laboratorium podstaw elektroniki

Algebra Boole a i jej zastosowania

Układy cyfrowe i operacje logiczne

PODSTAWY TEORII UKŁADÓW CYFROWYCH

Ćw. 1: Systemy zapisu liczb, minimalizacja funkcji logicznych, konwertery kodów, wyświetlacze.

Krótkie przypomnienie

Podstawy techniki cyfrowej i mikroprocesorowej - opis przedmiotu

CYFROWE UKŁADY SCALONE STOSOWANE W AUTOMATYCE

Układy reprogramowalne i SoC Implementacja w układach FPGA

Układy logiczne układy cyfrowe

Układy kombinacyjne 1

Dr inż. Jan Chudzikiewicz Pokój 117/65 Tel Materiały:

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

Stan wysoki (H) i stan niski (L)

Podstawowe układy cyfrowe

Architektura komputerów Reprezentacja liczb. Kodowanie rozkazów.

Operatory AND, OR, NOT, XOR Opracował: Andrzej Nowak Bibliografia:

Wydział Fizyki UW CC=5V 4A 4B 4Y 3A 3B 3Y

AKADEMIA MORSKA KATEDRA NAWIGACJI TECHNICZEJ

Ćwiczenie 25 Temat: Interfejs między bramkami logicznymi i kombinacyjne układy logiczne. Układ z bramkami NOR. Cel ćwiczenia

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

WSTĘP. Budowa bramki NAND TTL, ch-ka przełączania, schemat wewnętrzny, działanie 2

AHDL - Język opisu projektu. Podstawowe struktury języka. Komentarz rozpoczyna znak i kończy znak %. SUBDESIGN

Przykładowe pytania DSP 1

2019/09/16 07:46 1/2 Laboratorium AITUC

Kombinacyjne bloki funkcjonalne

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

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

Układy sekwencyjne. Wstęp doinformatyki. Zegary. Układy sekwencyjne. Automaty sekwencyjne. Element pamięciowy. Układy logiczne komputerów

SWB - Wprowadzenie, funkcje boolowskie i bramki logiczne - wykład 1 asz 1. Plan wykładu

INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ ZAKŁAD SZTUCZNEJ INTELIGENCJI I AUTOMATÓW

KARTA PRZEDMIOTU. Podstawy elektroniki cyfrowej B6. Fundamentals of digital electronic

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.

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

Architektura komputerów Wprowadzenie do algorytmów

PRZERZUTNIKI: 1. Należą do grupy bloków sekwencyjnych, 2. podstawowe układy pamiętające

Funkcja Boolowska a kombinacyjny blok funkcjonalny

Podstawy techniki cyfrowej cz.2 zima Rafał Walkowiak

dr inż. Małgorzata Langer Architektura komputerów

Operatory w C++ Operatory arytmetyczne. Operatory relacyjne (porównania) Operatory logiczne. + dodawanie - odejmowanie * mnożenie / dzielenie % modulo

Laboratorium podstaw elektroniki

Tab. 1 Tab. 2 t t+1 Q 2 Q 1 Q 0 Q 2 Q 1 Q 0

Transkrypt:

Wykład jest przygotowany dla IV semestru kierunku Elektronika i Telekomunikacja. Studia I stopnia Dr inż. Małgorzata Langer Architektura komputerów Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie Innowacyjna dydaktyka bez ograniczeń zintegrowany rozwój Politechniki Łódzkiej zarządzanie Uczelnią, nowoczesna oferta edukacyjna i wzmacniania zdolności do zatrudniania osób niepełnosprawnych Zadanie nr 30 Dostosowanie kierunku Elektronika i Telekomunikacja do potrzeb rynku pracy i gospodarki opartej na wiedzy 90-924 Łódź, ul. Żeromskiego 116, tel. 042 631 28 83 www.kapitalludzki.p.lodz.pl

Kombinatoryka Podstawy techniki cyfrowej Dodawanie: 0 plus 0 = 0 0 plus 1 = 1 1 plus 0 = 1 1 plus 1 =? 10 tzn. SUMA jest 0 a bit przeniesienia (CARRY) 1 Jeżeli wykonujemy operację A plus B, to bit przeniesienia = 1 TYLKO WTEDY, gdy i A, i B są = 1 SUMA = 1 gdy jeden z bitów = 1 a drugi =0 Jeżeli zaprzeczenie A (not A) oznaczymy jako A oraz analogicznie (not B) jako B używając funkcji logicznych (nie arytmetycznych) można zapisać: SUMA = (A. B) + (A. B ) oraz CARRY = A. B 2

SUMA = (A. B) + (A. B ) oraz CARRY = A. B + oznacza operację OR (lub) nie dodawanie arytmetyczne. oznacza operację AND (i) oznacza NOT (operację uzupełnienia, zaprzeczenia) Do zapisu operacji NOT służy również postać: Ā Wartości podstawowych operacji A B A B 0 0 0 AND 0 1 0 1 0 0 1 1 1 "0" gdy przynajmniej albo A, albo B jest "0" "1" gdy zarówno A, jak i B są "1" 3

A B A+ B 0 0 0 OR 0 1 1 1 0 1 1 1 1 "1" gdy przynajmniej albo A, albo B jest "1" "0" gdy zarówno A, jak i B są "0" A A' NOT 0 1 A' jest uzupełnieniem A 1 0 4

Rozwiązywanie wyrażeń logicznych Wpierw rozwiąż wyrażenia w nawiasach Potem operacje NOT Potem operacje AND Na końcu operacje OR Przy obliczeniach staramy się doprowadzić wyrażenie do postaci POS (iloczyn sum) lub SOP (suma iloczynów) Rozwiąż funkcję Z = A B C + (A B) (B + C ) dla: A=0, B=1, C=1 5

Tablice przejść (prawdy) Truth Tables Przy rozwiązywaniu zagadnień logicznych, nawet przed przekształceniami, możemy rozpatrywać wszystkie kombinacje wartości zmiennych (zawsze 2 n kombinacji dla n zmiennych) w tabeli Przykład: Z = A B + A C + A B C mamy 3 zmienne; 2 3 kombinacji (czyli 8) 6

Z = A B + A C + A B C A B C A' B' AB' AC' A'B'C Z 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 1 1 1 0 1 0 1 0 0 0 0 0 0 1 1 1 0 0 1 0 1 1 0 0 0 1 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 7

Przekształcenie odwrotne Mając tablicę prawdy dla każdego rzędu, czyli każdej wartości funkcji, możemy zapisać równanie w postaci sumy lub iloczynu a następnie podać POS lub SOP dla całego układu, normalizując (minimalizując) jego postać przy SOP opuszczamy powtarzające się składniki, przy POS powtarzające się czynniki Postać kanoniczna W postaci kanonicznej SOP każda zmienna pojawia się w każdym składniku albo w postaci prostej, albo jako zaprzeczenie (ang. nazwa: maxterm) np. P(A,B,C)=A B C +AB C +AB C jest postacią kanoniczną; Q(A,B,C)=A B +AB C+A C nie (w niektórych składnikach w iloczynach nie występują wszystkie 3 zmienne), Analogiczna definicja dla POS (ang. nazwa: minterm) 8

Zapis skrócony maxterm ( m) i minterm ( M) Składniki w SOP lub czynniki w POS zapisujemy w formie liczb dziesiętnych Zapis Q(A,B,C,D)= m(0,1,7,11) oznacza: Q(A,B,C,D) = A B C D + A B C D + A BCD + AB CD P(A,B,C)= M(1,5,7) = (A +B +C). (A+B +C). (A+B+B) 9

Algebra BOOLE a George Boole wprowadził notację logiczną (prawda fałsz) w 1854 roku Definicja: Algebra Boole a jest zamkniętym systemem algebraicznym, zawierającym zbiór dwóch lub więcej elementów i dwa operatory logiczne ( + OR, alternatywa, suma logiczna, dysjunkcja) i (. AND, iloczyn logiczny, koniunkcja), zaprzeczenie (negacja) oraz spełniającym następujące postulaty: X + 0 = X oraz X. 1 = X (istnienie wartości 0 i 1) X + Y = Y + X oraz X. Y = Y. X (przemienność) X + (Y + Z) = (X + Y) + Z oraz X. (Y. Z) = (X. Y). Z (łączność) X+(Y. Z) = (X+Y). (X+Z) oraz X. (Y+Z)=X. Y+X. Z (rozdzielność) X+X = 1 oraz X. X = 0 (komplementarność) 10

Twierdzenia, z których wygodnie korzystać przy przekształceniach X + X = X X. X = X X + 1 = 1 X. 0 = 0 X + (XY) = X X. (X+Y) = X X + X Y = X + Y X. (X + Y) = X. Y (X+Y) = X. Y (X. Y) = X + Y Prawa De Morgana Zaprzeczenie sumy jest równe iloczynowi zaprzeczeń wszystkich składników tej sumy Zaprzeczenie iloczynu jest równe sumie zaprzeczeń wszystkich czynników tego iloczynu Zaprzeczenie sumy NOR; iloczynu - NAND 11

Systemy funkcjonalnie pełne Każdą funkcję logiczną można przedstawić za pomocą argumentów i 3 operacji logicznych: suma, iloczyn, negacja (jest to podstawowy system funkcjonalnie pełny) ale technicznie dużo łatwiej stosować tylko jedną operację, która umożliwia przedstawienie dowolnej z 3 funkcji logicznych. Systemem funkcjonalnie pełnym jest funkcja NOR Systemem funkcjonalnie pełnym jest funkcja NAND 12

Oznaczenia elementów logicznych 13

Układy kombinacyjne i sekwencyjne Układ kombinacyjny jest zestawem wzajemnie połączonych bramek, którego stan wyjść w dowolnej chwili jest WYŁĄCZNIE funkcją stanu wejść W TEJ SAMEJ CHWILI Układ sekwencyjny jest zestawem wzajemnie połączonych bramek, którego stan wyjść w dowolnej chwili jest funkcją stanu wejść w tej chwili ORAZ STANU POPRZEDNIEGO czyli jest to układ z pamięcią 14

Minimalizacja wyrażeń Boole a Działania algebraiczne Tablice prawdy Wykresy Venn a, np.: A AB AB A B B Mapy (tablice) Karnaugha (poćwiczymy na zajęciach praktycznych) 15

Podstawowe bloki funkcjonalne Powtarzające się, złożone funkcje logiczne nie są implementowane na schematach od podstaw czyli z bramek podstawowych, tylko zaznaczane jako typowe bloki funkcjonalne Sumator (jeżeli zaimplementowana jest operacja dodawania, to znaczy, że korzystając z tej samej sprzętowej aplikacji wykonać pozostałe działania odejmowanie, mnożenie i dzielenie) Koder i dekoder Konwerter kodu Multiplekser urządzenie przełączające wiele wejść jedno wyjście Demultiplekser - jedno wejście wiele wyjść 16

Logika dodatnia i ujemna W aplikacjach elektronicznych logiczne 0 i 1 są odwzorowywane dwoma rozróżnianymi wartościami napięcia (wynikającymi ze stanu nasycenia i odcięcia tranzystorów); wysokim (H) i niskim (L) Logika dodatnia Logika ujemna Logiczne 1 H L Logiczne 0 L H Ponieważ przypisanie logicznego znaczenia dwóm wartościom jest kwestią umowy, producenci IC opisują funkcje bramek i bloków poprzez H i L 17

Obciążenie i przebiegi czasowe Obciążalność maksymalny prąd, który może wpłynąć (lub wypłynąć) d/z wyjścia układu, który nie zmieni jej stanu logicznego W praktyce: obciążalność bramki jest to liczba bramek, których wejście można połączyć z wyjściem bramki W przebiegach czasowych uwzględniamy opóźnienie propagacji: X 1 0 X 1 0 czas spadku (od 90% do 10% wartości opóźnienie propagacji czas czas wzrostu (od 10% do 90% wartości) 18

Przykład Schemat - bramki z opóźnieniami Zakładamy: T 3 > (T 1 + T 2 ) Wykres czasowy Hazard nie znamy odpowiedzi 19

Układy sekwencyjne Układy synchroniczne zachowanie układu synchronicznego zależy od wartości sygnału w dyskretnych chwilach czasu sygnał sterujący, taktujący, określający te chwile zegar Analiza synchronicznego układu sekwencyjnego polega na określeniu zależności funkcyjnych, które istnieją pomiędzy jego wyjściami, wejściami i stanami wewnętrznymi (jeżeli np. układ zawiera n przerzutników może być w 2 n stanów). Znając stan w chwili t, powinniśmy móc określić stan w t+1 Układy asynchroniczne brak sygnału taktującego 20

Rejestry Rejestr jest urządzeniem przechowującym dane zapisane w postaci binarnej; jest to zbiór przerzutników z oddzielnym torem dla każdego bitu. Najczęściej przeprowadzaną operacją na danych zapisanych w rejestrze jest SHIFT, polegająca na przesuwaniu ich (w zależności od kierunku przesyłania odpowiada to mnożeniu lub dzieleniu przez 2) W zależności od przeznaczenia rejestry mogą mieć wejścia szeregowe lub równoległe oraz wyjścia szeregowe lub równoległe Przeniesienie n-bitowej danej z jednego rejestru do drugiego zabierze n impulsów shift przy trybie szeregowym a 1 w trybie równoległym Regułą jest, że połączenie szeregowe jest mniej kosztowne sprzętowo ale zabiera więcej czasu 21

Połączenia point-to-point lub poprzez magistralę Jeżeli w jakiejś procedurze należy dokonać wymiany danych między kilkoma rejestrami, stosowany jest jeden z dwóch systemów połączeń: POINT-TO-POINT jedna ścieżka łącząca każde dwa rejestry, które biorą udział w danej procedurze możliwe są działania równoległe; znacznie zwiększa się ilość sprzętu; każdy nowy rejestr musi zostac połączony ze wszystkimi już istniejącymi MAGISTRALA (BUS) jedna wspólna ścieżka dzielona w czasie pomiędzy poszczególnych użytkowników w danej chwili tylko jeden rejestr może użytkować magistralę; każdy nowy rejestr musi być połączony tylko do magistrali, bez zmiany innych rejestrów. 22

Język HDL (Hardware Description Language) Przenoszenie danych w i pomiędzy rejestrami to podstawowa operacja w komputerze. Notacje HDL opisują strukturę hardware oraz zachowanie systemów cyfrowych na poziomie rejestrów Najbardziej znanymi językami HDL są VHDL oraz Verilog Ogólny format transferu rejestru: Przeznaczenie Źródło np. Y X zawartość rejestru x przeniesiona do rejestru Y Inne operacje: dodawanie (+), odejmowanie (-), przesuwanie w prawo o jeden bit (SHR) i w lewo (SHL), logiczne and (v), or (^ ), negacja ( ), łączenie konkatenacja ( ) W językach HDL łańcuchy dużych liter oznaczają nazwy rejestrów, indeksy dolne numer lub zakres numerów bitów w rejestrze, w nawiasie nazywa się część zawartości w rejestrze, dwukropek ogranicza łańcuch wskazujący na funkcję, np. ADD: przecinek wskazuje na operacje równoległe a kropka kończy procedurę. Istnieje polecenie warunkowe if condition THEN. ELSE 23

Programowalne matryce logiczne PLA (Programmable Logic Arrays) układy w małej skali integracji (LSI) z wieloma bramkami, poprzez odpowiednie połączenia można uzyskać realizację żądanej funkcji logicznej Istnieje wiele realizacji sprzętowych umożliwiających programowanie prostych funkcji oraz programowanie wspomagające projektowanie GA (Gate Arrays) układy z bramkami z przygotowanymi kanałami połączeń Nie ma potrzeby projektować tylko przy pomocy bramek, można posługiwać się dodatkowymi blokami (tzw makro-komórkami). Ten rodzaj układów nazywa się FPGA (Field Programmable GAs). Na rynku istnieją układy np. Xilinx (oparte o SRAM) 24

KONIEC CZĘŚCI TRZECIEJ Dr inż. Małgorzata Langer Architektura komputerów Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie Innowacyjna dydaktyka bez ograniczeń zintegrowany rozwój Politechniki Łódzkiej zarządzanie Uczelnią, nowoczesna oferta edukacyjna i wzmacniania zdolności do zatrudniania osób niepełnosprawnych Zadanie nr 30 Dostosowanie kierunku Elektronika i Telekomunikacja do potrzeb rynku pracy i gospodarki opartej na wiedzy 90-924 Łódź, ul. Żeromskiego 116, tel. 042 631 28 83 www.kapitalludzki.p.lodz.pl