Technika Mikroprocesorowa
|
|
- Urszula Pluta
- 7 lat temu
- Przeglądów:
Transkrypt
1 Technika Mikroprocesorowa Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel dmakow@dmcs.pl 1
2 Sprawy formalne 1. Zaliczenie 2. Projekt z Techniki Mikroprocesorowej 3. Materiały do wykładu 2
3 Literatura Literatura obowiązkowa: A. Clements, Microprocessor Systems Design: Hardware, Software and Interfacing, 3rd Edition, PWS 97 Literatura uzupełniająca: M. Barr, Programming Embedded Systems in C and C++, O'Reilly 1999 S. R. Ball, Embedded Microprocessor Systems Butterworth-Heinemann
4 Zakres przedmiotu 1. Wstęp do systemów mikroprocesorowych. 2. Współpraca procesora z pamięcią. Pamięci półprzewodnikowe. 3. Architektura systemów mikroprocesorowych. 4. Współpraca procesora z urządzeniami peryferyjnymi. 5. Przykładowy system mikroprocesorowy. 6. Architektura procesorów 32-bitowych na przykładzie układów Freescale 68k/ColdFire. 7. Architektura mikrokontrolerów 8-bitowych. 4
5 Historia mikroprocesorów (1) 1940 Russell Ohl demonstracja złącza półprzewodnikowego (dioda germanowa, bateria słoneczna) 1947 Shockley, Bardeen, Brattain prezentują pierwszy tranzystor Pierwszy tranzystor, Bell Laboratories Pierwszy układ scalony, TI 1958 Jack Kilby wynalazł pierwszy układ scalony 1967 Laboratorium Fairchild oferuje pierwszą pamięć nieulotną ROM (64 bity) 1969 Noyce i Moore opuszczają laboratorium Fairchild, powstaje niewielka firma INTEL. INTEL produkuje pamięci SRAM (64 bit). Japońska firma Busicom 5 zamawia 12 różnych układów realizujących funkcje kalkulatorów.
6 Historia mikroprocesorów (2) F14 CADC (Central Air Data Computer) mikroprocesor zaprojektowany przez Steve'a Gellera i Raya Holta na potrzeby armii amerykańskiej (myśliwiec F-14 Tomcat) Intel bitowy procesor realizujące funkcje programowalnego kalkulatora (powszechnie uznaje się za pierwszy na świecie mikroprocesor), 3200 tranzystorów. INTEL wznawia pracę nad procesorami, Faggin z Fairchild pomaga rozwiązać problemy. Zdjęcie 4-bitowego procesora INTEL bitowe procesory INTEL-a 1972 Faggin rozpoczyna prace nad 8-bitowym procesorem INTEL Rynek zaczyna się interesować układami programowalnymi - procesorami. 6
7 Kalkulator z procesorem Intel 4004 W skład każdego kalkulatora wchodziły cztery 4001 (czyli łącznie 1KB), dwa 4002, dwa 4003 i jeden kbitowy (czyli 256 bajtów) pamięć ROM z 4-bitowym portem wejścia/wyjścia (4-bit mask-programmable I/O port), bitowa pamięć RAM z 4-bitowym portem we/wy, bitowy rejestr przesuwny - układ rozszerzający możliwości wejścia/wyjścia (10-bit serial-in, parallel-out shift register), bitowy CPU (4-bit parallel central processing unit). 7
8 Historia mikroprocesorów (3) 1974 INTEL wprowadza na rynek ulepszona wersję 8008, procesor Intel Faggin opuszcza firmę intel i zakłada firmę o nazwie Zilog. Motorola oferuje 8-bitowy procesor 6800 (NMOS, 5 V) Zilog oferuję procesor Z80, INTEL pierwsza wersje procesora Pierwszy 16-bitowy procesor 8086 (ulepszony 8080) Motorola oferuje 16-bitowy procesor Motorola wprowadza nowy 32-bitowy procesor 68020, tranzystorów.... Motorola Intel 386, 486, Pentium I, II, III, IV, Centrino... Motorola 68030, 68040, 68060, PowerPC, ColdFire... Intel, Pentium 4 Northwood 8
9 Mikroprocesor Mikroprocesor to układ cyfrowy wykonany jako pojedynczy układ scalony o wielkim stopniu integracji zdolny do wykonywania operacji cyfrowych według dostarczonych mu instrukcji. Jednostka arytmetyczno-logiczna, realizuje podstawowe operacje matematyczne 8, 16, 32, 64-bit Rejestry procesora, komórki szybkiej pamięci statycznej, umieszczonej, wewnątrz procesora, 8, 16, 32, 64, 128-bit Mikroprocesor ALU Jednostka sterująca Przerwania Dekoder rozkazów Rejestry (PC, SP, D, A) RAM ROM Magistrale: adresowa, danych, sterująca. 9
10 Architektura procesora CISC? Cechy architektury CISC (Complex Instruction Set Computers): Duża liczba rozkazów (instrukcji), Niektóre rozkazy potrzebują dużej liczby cykli procesora do wykonania, Występowanie złożonych, specjalistycznych rozkazów, Duża liczba trybów adresowania, Do pamięci może się odwoływać bezpośrednio duża liczba rozkazów, Mniejsza od układów RISC częstotliwość taktowania procesora, Powolne działanie dekodera rozkazów, ze względu na dużą ich liczbę i skomplikowane adresowanie Przykłady rodzin procesorów o architekturze CISC to: x86 M68000 PDP-11 AMD 10
11 Architektura procesora RISC Cechy architektury RISC (Reduced Instruction Set Computer): Zredukowana liczba rozkazów. Upraszcza to znacznie dekoder rozkazów. Redukcja trybów adresowania, dzięki czemu kody rozkazów są prostsze, Ograniczenie komunikacji pomiędzy pamięcią, a procesorem. Do przesyłania danych pomiędzy pamięcią, a rejestrami służą dedykowane instrukcje (load, store). Zwiększenie liczby rejestrów (np. 32, 192, 256), Dzięki przetwarzaniu potokowemu (ang. pipelining) wszystkie rozkazy wykonują się w jednym cyklu maszynowym. Przykłady rodzin mikroprocesorów o architekturze RISC: IBM 801 PowerPC MIPS Alpha ARM Motorola ColdFire SPARC PA-RISC Atmel_AVR Obecnie produkowane procesory Intela z punktu widzenia programisty są widziane jako CISC, ale ich rdzeń jest zgodny z RISC. Rozkazy CISC są rozbijane na mikrorozkazy (ang. microops), które są następnie wykonywane przez szybki blok wykonawczy zgodny z architekturą RISC. 11
12 Podział komputerów Mikrokomputery: stacjonarny (desktop, Personal Computer) funkcjonalność urządzenia zależy głównie od posiadanego oprogramowania, wbudowane (embedded) komputer, maszyna, sterownik przeznaczony do realizacji określonego zadania, np. sterowanie pralką automatyczną. 12
13 Architektura systemu komputerowego Architektura polega na ścisłym podziale komputera na trzy podstawowe części: procesor, pamięć (zawierająca dane oraz program), urządzenia wejścia/wyjścia (I/O). PAMIĘĆ PODSTAWOWA URZĄDZENIA ZEWNĘTRZ. PROCESOR 13
14 Architektura von Neumanna Cechy architektury von Neumanna: rozkazy i dane przechowywane są w tej samej pamięci, nie da sie rozróżnić danych o rozkazów (instrukcji), dane nie maja przypisanego znaczenia, pamięć traktowana jest jako liniowa tablica komórek, które identyfikowane są przy pomocy dostarczanego przez procesor adresu, procesor ma dostęp do przestrzeni adresowej, dekodery adresowe zapewniają mapowanie pamięci na rzeczywiste układy. Magistrala adresowa Magistrala danych 14
15 Architektura harwardzka Prostsza (w stosunku do architektury Von Neumanna) budowa przekłada się na większą szybkość działania - dlatego ten typ architektury jest często wykorzystywany w procesorach sygnałowych oraz przy dostępie procesora do pamięci cache. Cechy architektury von Neumanna: rozkazy i dane przechowywane są w oddzielnych pamięciach, organizacja pamięci może być różna (inne długości słowa danych i rozkazów), możliwość pracy równoległej jednoczesny odczyt danych z pamięci programu oraz danych, stosowana w mikrokontrolerach jednoukładowych. Magistrala adresowa Magistrala danych Pamięć programu Magistrala adresowa Magistrala danych Pamięć danych 15
16 Zmodyfikowana architektura harwardzka Zmodyfikowana architektura harwardzka (architektura mieszana) - łączy w sobie cechy architektury harwardzkiej i architektury von Neumanna. Oddzielone zostały pamięci danych i rozkazów, lecz wykorzystują one wspólne magistrale danych i adresową. Architektura umożliwia łatwe przesyłanie danych pomiędzy rozdzielonymi pamięciami. Pamięć danych Pamięć programu Przykład mikrokontrolera z rodziny 8051 wraz z zewnętrznymi pamięciami 16
17 Przypomnienie Definicja procesora, Architektura procesora, Architektura systemu komputerowego. 17
18 Magistrale komputera Magistrala adresowa Magistrala danych Magistrala sterująca 1. Rodzaj magistrali 2. Szerokość magistrali 3. Częstotliwość zegara szybkość transmisji 18
19 Przykładowy komputer 8-bitowy 19
20 Komputer uniwersalny (1) ISA PCI PCIe AGP 20
21 Komputer uniwersalny (2) 21
22 Komputer wbudowany (embedded computer) Czujniki, np. czujnik temperatury, obrotów, itd Komunikacja z komputerem zewnętrznym Kamera Elementy wykonawcze, np. silniki, przekaźniki 22
23 Cykle pracy procesora Procesor pobiera rozkazy z pamięci i wykonuje je sekwencyjnie. Wykonanie pojedynczej instrukcji zajmuje min. 5 cykli procesora (dla procesora przedstawionego na rysunku). Pracę procesora można podzielić na kilka etapów: 1. Pobranie rozkazu z pamięci programu (Instruction Fetch, PC++), 2. Dekodowanie rozkazu, odczyt rejestrów (Instruction Decode), 3. Wykonanie rozkazu (Execute command - ALU), 4. Pobranie argumentów z pamięci danych (Memory Access), 5. Zapisanie wyniku operacji w pamięci (Write Back). Procesor zawsze wykonuje jedną z powyższych czynności. 23
24 Potokowe wykonanie programu (1) analogia do prania... Zadanie: Wykonanie prania, 4 wsady. Praca wykonana sekwencyjnie. Czas prania ~6 h. Praca wykonana równolegle. Czas prania ~3 h. 24
25 Potokowe wykonanie programu (2) Potokowość (ang. pipelining) - technika budowy procesorów polegająca na podziale logiki procesora odpowiedzialnej za proces wykonywania programu (instrukcji procesora) na specjalizowane grupy w taki sposób, aby każda z grup wykonywała część pracy związanej z wykonaniem rozkazu. Grupy połączone sekwencyjnie - potok (ang. pipe) i wykonują pracę równocześnie. W każdej z tych grup rozkaz jest na innym stadium wykonania. Można to porównać do taśmy produkcyjnej. W uproszczeniu, potok wykonania instrukcji procesora może wyglądać następująco: Co się stanie podczas wykonania instrukcji skoku? Jak programista odczuwa wykorzystanie techniki potokowego wykonania programu? 25
26 Potokowe wykonanie programu (3) <num
27 Potokowe wykonanie programu (4) 27
28 Format instrukcji asemblera Operand docelowy Operand źródłowy ADD.L operacja #1, #2 typ operandu: L podwójne słowo (32 bit) W pojedyncze słowo (16 bit) B bajt (8 bit) 16 bit 1-11 słów 18,33cm 16 bit 32 bit 48 bit 28
29 Cykle pracy procesora ADD.L <ea>y, Dx ADD.L D0, D1 Język maszynowy: D280 Pracę procesora można podzielić na kilka etapów: 1. Pobranie rozkazu z pamięci programu (Instruction Fetch), 2. Dekodowanie rozkazu (Instruction Decode), 3. Wykonanie rozkazu (Execute command), 4. Pobranie argumentów z pamięci danych (Memory Access), 5. Zapisanie wyniku operacji w pamięci (Write Back). <num
30 Wykonanie pojedynczej instrukcji (1) Etap 1 Instruction fetch cycle (IF): Etap 2 Instruction decode/register fetch cycle (ID): Etap 3 Execution/effective address cycle (EX): 1. Wysłanie zawartości licznika rozkazów na magistralę adresową, 2. Odczyt instrukcji z pamięci programu, 3. Zwiększenie zawartości licznika rozkazów (PC = PC+4). 1. Zdekodowanie odczytanego z pamięci rozkazu, 2. Odczytanie operandów z rejestrów (D0 - D7), ALU operuje na operandach przygotowanych w poprzednim cyklu. Przykładowe operacje: a) Obliczenie adresu efektywnego danej umieszczonej w pamięci. Rezultat umieszczony w rejestrze wyjściowym ALU. b) Wykonanie operacji matematyczno-logicznej na rejestrach procesora (rejestry D0-D7, akumulator), c) Wykonanie operacji z użyciem danej umieszczonej w rejestrach oraz podanej w postaci natychmiastowej, d) Wykonanie instrukcji skoku - obliczenie przez ALU nowego adresu, z którego zostanie odczytany rozkaz. <num
31 Wykonanie pojedynczej instrukcji (2) Etap 4 Memory access/branch completion cycle (MEM): Etap 5 Write-back cycle(wb): a). Odczytanie danej z pamięci danych, b). W przypadku realizacji instrukcji skoku, adres obliczony w poprzednim cyklu wpisywany jest do licznika programów. 1. Zapisanie rezultatu operacji w rejestrze lub pamięci. <num
32 Datapath PC+4 Odczytany rozkaz Dekoder instrukcji a) memory <ea> a) reg-reg, b) reg-reg reg-immed. c) reg-immed. c) Load d) branch <num
33 ADD operacja dodawania ADD.L D0,D1 => D280 Liczba Rejestr D0 D1 D2 D3 D4 D5 D6 D7 Tryby adresowania argumentu źródłowego <ea>y: Dy, Ay, (Ay), (Ay)+, -(Ay), (d16,ay), (d8,ay,xi), (xxx).w/l, #<data>, (d16,pc), (d8,pc,xi), + złożone tryby adresowania dla 68020, 68030, Tryby adresowania argumentu docelowego <ea>x: (Ax), (Ax)+, -(Ax), (d16,ax), (d8,ax,xi), (xxx).w/l, + złożone tryby adresowania dla 68020, 68030, <num
34 Format instrukcji procesora Motorola ColdFire 34
35 Przykład instrukcji asemblera ADD.L #$1000, (A0) Dodawanie Adresowanie natychmiastowe Adresowanie pośrednie rejestrowe Umieść liczbę 0x1000 pod adresem wskazywanym przez rejestr A0 Jakie operacje musi wykonać procesor? Pobranie kodu instrukcji z pamięci, Zdekodowanie pobranej instrukcji, Pobranie argumentu zapisanego pod adresem wskazywanym przez A0, Wykonanie operacji dodawania 0x1000+(A0), Zapisanie wyniku dodawania w komórce pamięci wskazywanej przez A0. 35
36 Architektura procesora 36
37 Jednostka arytmetyczno-logiczna Jednostka arytmetyczno-logiczna wykorzystywana jest do wykonywania: operacji logicznych AND, OR, NOT, XOR, dodawania, odejmowania, negacja liczby, dodawanie z przeniesieniem, zwiększanie/zmniejszanie o 1, przesunięcia bitowe o stałą liczbę bitów, mnożenia i/lub dzielenia (dzielenie modulo). 37
38 Dwu-bitowa jednostka ALU Realizowane operacje: OP = 000 XOR OP = 001 AND OP = 010 OR OP = 011 Addition Inne możliwe operacje: subtraction, multiplication, division, NOT A, NOT B 38
39 ALU 32-bit (1) 39
40 ALU 32-bit (2) 40
41 Funkcje realizowane przez ALU 41
42 ALU opisane w VHDL-u LC-2 ALU VHDL Code library IEEE; use IEEE.std_logic_1164.all; use IEEE.std_logic_unsigned.all; use IEEE.std_logic_arith.all; --LC-2 ALU entity LC2_ALU is port( A: in std_logic_vector (15 downto 0); B: in std_logic_vector (15 downto 0); S: in std_logic_vector (1 downto 0); O: out std_logic_vector (15 downto 0)); end LC2_ALU; architecture bhv of LC2_ALU is begin process(a, B, S) begin case S is when "00" => O <= A+B; when "01" => O <= A and B; when "10" => O <= A; when "11" => O <= not A; when others => null; end case; end process; end bhv; 42
43 Wykonywanie specjalizowanych obliczeń 1. Projekt skomplikowanej jednostki ALU, która potrafi obliczyć pierwiastek kwadratowy w cyklu zegarowym, 2. Projekt sekwencyjne jednostki ALU, która potrafi obliczyć pierwiastek kwadratowy w kilku cyklach zegarowych 3. Projekt prostej jednostki ALU, która współpracuje z drogim, skomplikowanym koprocesorem. 4. Programowa emulacja pomocniczej jednostki obliczeniowej (koprocesora). Oprogramowanie sprawdza, czy w systemie jest obecny koprocesor, jeżeli nie pierwiastek kwadratowy jest obliczany programowo. 5. Brak wyspecjalizowanej jednostki obliczeniowe zdolnej do wyliczenia pierwiastka. Obliczenia wykonywane są programowo wykorzystanie biblioteki. 43
44 Rejestry procesora Rejestry procesora stanowią komórki wewnętrznej pamięci procesora o niewielkich rozmiarach (najczęściej 4/8/16/32/64/128 bitów) służące do przechowywania tymczasowych wyników obliczeń, adresów danych w pamięci operacyjnej, konfiguracji, itd. Cechy rejestrów procesora: stanowią najwyższy szczebel w hierarchii pamięci (najszybszy rodzaj pamięci komputera), Realizowane w postaci przerzutników dwustanowych, Liczba rejestrów zależy od zastosowania procesora. Rejestry dzielimy na: rejestry danych - do przechowywania danych np. argumentów i wyników obliczeń, rejestry adresowe - do przechowywania adresów (wskaźnik stosu, wskaźnik programu, rejestry segmentowe), rejestry ogólnego zastosowania (ang. general purpose), przechowują zarówno dane, jak i adresy, rejestry zmiennoprzecinkowe - do przechowywania i wykonywania obliczeń na liczbach zmiennoprzecinkowych (koprocesor FPU), Rejestry procesora z rodziny Motorola 68k 44
45 Rejestr statusowy (Status Register) 45
46 Obsługa sytuacji wyjątkowych (Exception Processing) 46
47 Przerwania Przerwanie (ang. interrupt) sygnał powodujący zmianę przepływu sterowania. Pojawienie się przerwania powoduje wstrzymanie aktualnie wykonywanego programu i wykonanie przez procesor kodu procedury obsługi przerwania (ang. interrupt handler). Przerwania dzielą się na dwie grupy: 1. Sprzętowe: 1.1. Zewnętrzne sygnał przerwania pochodzi z zewnętrznego układu, 1.2. Wewnętrzne zgłaszane przez procesor w celu sygnalizacji sytuacji wyjątkowych, tzw. wyjątek (ang. exception), a) faults (niepowodzenie) sytuacje, w których aktualnie wykonywana instrukcja powoduje błąd, b) traps (pułapki) sytuacja, która nie jest błędem, jej wystąpienie ma na celu wykonanie określonego kodu, c) aborts błędy, których nie można naprawić, 1.3 Niemaskowalne przerwania, które nie da się wyłączyć, 2. Programowe z kodu programu wywoływana jest procedura obsługi przerwania. 47
48 Obsługa sytuacji wyjątkowych S=0 S=1 48
49 Obsługa sytuacji wyjątkowych Wykonanie niedozwolonej operacji przez procesor w danym stanie uprzywilejowania powoduje wygenerowanie wyjątku. Obsługa wyjątku obejmuje wszystkie operacje od momentu wykrycia błędu do pobrania pierwszej instrukcji obsługującej sytuację wyjątkową. 1. a) Wykonanie kopii SR, b) Przejście do trybu superużytkownika (S<=1; T<=0; M<=0), c) Ustawienie maski IRQ na poziomie zgłaszanego przerwania. 2. Określenie wektora obsługiwanego wyjątku (przerwania). 3. Odłożenie kopi obecnego kontekstu na wierzchołku stosu superużytkownika (ramka zdarzenia wyjątkowego). 4. Obliczenie adresu pierwszej instrukcji procedury obsługującej dany wyjątek (przerwanie). VBR(31..20) + 4 x numer_wektora Detekcja przerwań zostaje wstrzymana na jedną instrukcję przed wykonaniem procedury obsługującej dany wyjątek. Daje to możliwość wyłączenia przerwań i poprawnego obsłużenia danego wyjątku, np. wykonanie instrukcji STLDSR. 49
50 Tablica wektorów wyjątków i przerwań 50
51 Wyjątek dostępu do pamięci (1) Adres nie istniejącego urządzenia lub pamięci (adres nie jest przypisany do żadnego rejestru konfiguracyjnego CSCR0-CSCR6) Próba zapisu do pamięci zabezpieczonej przed zapisem lub tylko do odczytu Próba dostępu do pamięci superużytkownika z poziomu zwykłego użytkownika generują wyjątek Access Error \TS \CS Dane Dane ColdFire Adres Moduł Chip Select Adres \W/R \WR \TA \OE Pamięć 51
52 Dzielenie przez zero Dzielenie liczby ze znakiem podanej jako operand przeznaczenia przez liczbę podaną jako operand źródłowy. Wynik dzielenia umieszczony jest pod adresem wskazywanym przez operand przeznaczenia. Jeżeli operand źródłowy jest równy 0 generowany jest wyjątek Division by Zero. 52
53 Naruszenie uprawnień superużytkownika Próba wykonania instrukcji wymagających uprawnień superużytkownika przez użytkownika generuje wyjątek Privilege Violation 53
54 TRAP Wykonanie polecenia Trap powoduje wygenerowanie wyjątku o numerze podanym w postaci operandu. Adres wiersza w tablicy wyjątków obsługującego dany wyjątek można policzyć zgodnie z równaniem: 0x * #<vector> Moduł procesora 68k umożliwia obsłużenie do 16 zdefiniowanych zdarzeń 54
55 Obsługa nieznanego przerwania Jeżeli praca procesora zostanie przerwania (w wyniku zgłoszenia przerwania przez sterownik przerwań), jednak sterownik przerwań nie jest w stanie określić źródła przerwania o odpowiednio wysokiej masce następuje wygenerowanie wyjątku Spurious Interrupt. 55
56 Podwójny wyjątek Jeżeli podczas obsługi wyjątku zostanie wygenerowany kolejny wyjątek (fault-on-fault) procesor natychmiast przerywa pracę. Procesor pozostaje w stanie bezczynności, do momentu wygenerowania sygnału reset. 56
57 Tablica adresów wyjątków oraz przerwań Tablica musi zostać umieszczona na 1 MB granicy. VBR (reset) = 0x $000003FF 57
58 Przerwania Interrupt Polling loop IRQ TEST_LOOP LEA LEA BTST BNE MOVE.B KEY_STATUS, A0 KE_VALUE, A1 #0, (A0) TEST_LOOP (A1), D1 Sygnał asynchroniczny 58
59 Sterownik przerwań (2) Sterownik przerwań rozpoczyna cykl obsługi wyjątku jeżeli zgłoszone przerwanie ma poziom wyższy od poziomu ustawionego w rejestrze SR. Powyższa reguła nie dotyczy przerwań o poziomie równym 7. Przerwania o poziomie równym 7 obsługiwane są zawsze przerwania niemaskowalne. I > poziom IRQ IRQ=7 obsługiwane zawsze 59
60 Przerwania zewnętrzne 60
61 Współpraca sterownika przerwań z procesorem Przerwania wewnętrzne UART, PIT, GPT, DMA, I2C, CAN, Ethernet Dane mapowane na przestrzeń pamięci Skasowanie flagi IRQ Poziom przerwania ColdFire Nr wektora IRQ IACK 3 8 Sterownik przerwań IREQ Zadania sterownika przerwań: 1. Rozpoznanie przerwania 2. Wyznaczenie przerwania o najwyższej masce i priorytecie 3. Obliczenie numeru wektora przerwania Przerwania zewnętrzne EPF1-EPF7 poziom/zbocze 61
62 Obsługa przerwania 1. Przejście do trybu superużytkownika (S=1, T=0) 2. Odczytanie wektora aktywnego przerwania 3. Odłożenie na stos kopii rejestru SR, numeru przerwania oraz adresu powrotu 4. Obliczenie przesunięcia w tablicy przerwań oraz odczytanie adresu procedury obsługującej przerwanie 5. Obniżenie maski przerwań w rejestrze SR do poziomu obsługiwanego przerwania 6. Skok do procedury obsługującej przerwanie 62
63 Sterownik przerwań Rejestr stanu SR maska przerwań Priorytety przerwań 63
64 Źródła przerwań sterownika INTC0 (1) 64
65 Rodzaje instrukcji procesora Arytmetyczne Transferu danych Sterujące przepływem programu Logiczne oraz arytmetyczne przesunięcia Operacje na bitach Specjalne Diagnostyczne Sterujące pamięcią podręczną 65
66 Rodzaje instrukcji procesora Motorola 68k 66
67 Kod instrukcji (Opcode) 67
68 Instrukcje arytmetyczne 68
69 ADD Tryby adresowania argumentu źródłowego <ea>y: Dy, Ay, (Ay), (Ay)+, -(Ay), (d16,ay), (d8,ay,xi), (xxx).w/l, #<data>, (d16,pc), (d8,pc,xi) Tryby adresowania argumentu docelowego <ea>x: (Ax), (Ax)+, -(Ax), (d16,ax), (d8,ax,xi), (xxx).w/l 69
70 ADDA.L <ea>y, Ax Tryby adresowania argumentu źródłowego <ea>y: Dy, Ay, (Ay), (Ay)+, -(Ay), (d16,ay), (d8,ay,xi), (xxx).w/l, #<data>, (d16,pc), (d8,pc,xi) ADD.L D0, D1 ADD.L D0, D0 ADD.L D0, A0 ADD.L A0, D0 ADDA.L D0, A0 ADDA.L A0, A0 ADDA.L A0, D a 2 001e Error: operands mismatch -- statement `adda.l %A0,%D0' ignored D3F0 1CEC D3FC ADDA.L ADDA.L -20(A0, D1*4), A1 #$03, A1 70
71 ADDI.L #<data>, Dx 1 001a ADDI.L #$09, D ADDI.L #$03, D1 3???? ADDI.L #1, A0 Error: operands mismatch -- statement `addi.l #1,A0' ignored 71
72 ADDQ.L #<data>, <ea>x 1-8 Tryby adresowania argumentu docelowego <ea>x: Dx, Ax, (Ax), (Ax)+, -(Ax), (d16,ax), (d8,ax,xi), (xxx).w/l 1 001a FFFF FFFF 5682 ADDI.L #$01, D1 ADDI.L #$FFFFFFFF, D1 ADDQ.L #$3, D a 5 001a 6 001c D2B ADD.L ADD.L ADD.L #$3, D1 => ADDQ #9, D1 => ADDI 3, D1 => ADD ADDQ.L #9, D3 gp.asm:30: Error: operands mismatch -statement `addq.l #9,D3' ignored ADDQ.L #0, D2 gp.asm:31: Error: operands mismatch -statement `addq.l #0,D2' ignored 72
73 ADDX.L Dy, Dx D D983 ADDX.L ADDX.L D3, D4 D3, D4 Dodawanie 64-bitowych liczb całkowitych ADD.L ADDX.L D0, D2 D1, D3 [D2] <= [D2] + [D0] [D3] <= [D3] + [D1] + [Y] 73
74 Tryby adresowania Operand źródłowy Operand docelowy MOVE.L #1, #2 operacja typ operandu: L podwójne słowo (32 bit) W pojedyncze słowo (16 bit) B bajt (8 bit) MOVE.W $00A1.FFFF, D0 przesłanie zawartości komórki pamięci o adresie $00A1.FFFF do rejestru D0 MOVE.W (A0), (A7)+ przesłanie zawartości komórki pamięci o adresie zawartym w A0 do komórki o adresie A7, postinkrementacja adresu A7 74
75 Tryby adresowania dla instrukcji ADD Tryby adresowania argumentu źródłowego <ea>y: Dy, Ay, (Ay), (Ay)+, -(Ay), (d16,ay), (d8,ay,xi), (xxx).w/l, #<data>, (d16,pc), (d8,pc,xi) Tryby adresowania argumentu docelowego <ea>x: (Ax), (Ax)+, -(Ax), (d16,ax), (d8,ax,xi), (xxx).w/l 75
76 Podstawowe tryby adresowania procesora Motorola 68k move.l $1000,D0 move.l $1000,A0 move.l D0,(A1) move.l D1,(A2)+ move.l D2,-(A3) move.l D7,50(A7) move.l D7,50(A7,D6*2) move.l D7,50(PC) move.l D7,50(PC,D6*2) move.l $1234,D0 move.l $1234FFFF,D0 move.l #$1234,D0 76
77 Model programowy procesora Motorola 68k 77
78 Kolejność bajtów w pamięci (1) Bajt najmniejsza adresowalna jednostka pamięci komputerowej Endianess Big-endian middle-endian...pod najmłodszym adresem umieszczony jest najstarszy bajt podobnie jak w języku polskim, angielskim Motorola, SPARC, ARM Little-endian...pod najstarszym adresem umieszczony jest najstarszy bajt liczby zmiennoprzecinkowe podwójnej precyzji VAX and ARM podobnie jak w językach arabskich, hebrajski Intel x86, 6502 VAX Bi-Endian ARM, PowerPC (za wyjątkiem PPC970/G5), DEC Alpha, MIPS, PA-RISC oraz IA64 78
79 Kolejność bajtów w pamięci (2) Architektura 8-bitowa 7 0 0x Byte 1 0x Byte 2 0x Byte 3 0x Byte 4 0x Byte x x12 0x x34 0x x56 0x x78 0x x90 79
80 Kolejność bajtów w pamięci (3) Byte 4... Byte 1 MSB LSB Big-endian 0x Byte 4 Byte 3 Byte 2 Byte 1 0x Byte 8 0x Byte 12 Byte 7... Byte 6... Byte x C 0x Little-endian 0x Byte 1 Byte 2 Byte 3 Byte 4 0x Byte 5 0x Byte 9 Byte 6... Byte 7... Byte x C 0x
81 Kolejność bajtów w pamięci (4) Podwójne słowo (DW): 0x Big-endian 0x x12 0x34 0x56 0x78 0x Byte 5 0x Byte 9 32 Byte 6... Byte Byte x C 0x Little-endian x x78 0x56 0x34 0x12 0x Byte 8 0x Byte 12 Byte 7... Byte 6... Byte x C 0x
82 Kolejność bajtów w pamięci (5) Jak rozpoznać architekturę procesora oraz rozkład bajtów w pamięci? #define LITTLE_ENDIAN 0 #define BIG_ENDIAN 1 int machineendianness() { long int i = 1; const char *p = (const char *) &i; /* 32 bit = 0x */ /* wskaźnik do stałej typu char */ if (p[0] == 1) /* Lowest address contains the least significant byte */ return LITTLE_ENDIAN; else return BIG_ENDIAN; } 82
83 Oprogramowanie mikrokomputerów Aplikacje Aplikacje System Operacyjny System Operacyjny Firmware Firmware Aplikacje Firmware Hardware Hardware Hardware Komputer uniwersalny Złożony komputer wbudowany Prosty komputer wbudowany Komputery osobiste, uniwersalne: języki wysokiego poziomu (Asembler, C/C++, Pascal, Java, Basic...) Komputery wbudowane, sterowniki: język niskiego poziomu Asembler, języki wysokiego poziomu (C/C++, Basic, Ada). 83
84 System mikroprocesorowy Sygnały wejściowe Sygnały wyjściowe Sygnały wizyjny Sygnały z kamery cyfrowej Czujnik 1 Sygnał sterujący 1 Czujnik 2 Sygnał sterujący 2 Czujnik n System komputerowy Sygnał sterujący m 84
85 System sterujący Obiekt sterowany Sygnały wejściowe ADC Sygnały wyjściowe Procesor DAC System sterujący 85
86 System czasu rzeczywistego Systemem czasu rzeczywistego (ang. real-time system) nazywamy system, który musi wykonać określone zadania w ściśle określonym czasie. Poprawność pracy systemu czasu rzeczywistego zależy zarówno od wygenerowanych sygnałów wyjściowych jak i spełnionych zależności czasowych System, który nie spełnia jednego lub większej liczby wymagań określonych w specyfikacji nazywany jest systemem niesprawnym 86
87 System czasu rzeczywistego Odstęp czasowy pomiędzy odczytaniem sygnałów wejściowych, a wygenerowaniem stabilnych sygnałów wyjściowych określany jest szybkością odpowiedzi lub reakcji systemu. Szybkość odpowiedzi systemu jest zwykle ograniczona przez zjawiska zachodzące poza nim samym. Źródłem tych ograniczeń czasowych są zazwyczaj zjawiska fizyczne zachodzące w świecie rzeczywistym. Systemy czasu rzeczywistego najczęściej buduje się w oparciu o układy elektroniczne oraz komputery. 87
88 Podział systemów czasu rzeczywistego Systemy o ostrych ograniczeniach czasowych (ang. hard real-time) przekroczenie terminu powoduje katastrofalne skutki (zagrożenie życia lub zdrowia ludzi, uszkodzenie lub zniszczenie urządzenia). Nie jest istotna wielkość przekroczenia terminu, a jedynie sam fakt jego przekroczenia Systemy o miękkich lub łagodnych ograniczeniach czasowych (ang. soft real-time) - gdy przekroczenie terminu powoduje negatywne skutki. Skutki są tym poważniejsze, im bardziej termin został przekroczony Systemy o mocnych ograniczeniach czasowych (ang. firm real-time) - gdy fakt przekroczenia terminu powoduje całkowitą nieprzydatność wypracowanego przez system wyniku. Fakt niespełnienia wymagań czasowych nie stanowi jednak zagrożenia dla ludzi lub urządzenia (bazy danych czasu rzeczywistego) 88
89 Komputer wbudowany (embedded computer) Czujniki, np. czujnik temperatury, obrotów, itd Komunikacja z komputerem zewnętrznym Kamera Elementy wykonawcze, np. silniki, przekaźniki 89
90 Mikrokontroler MCF5282 Statyczny rdzeń procesora zgodny z rodziną ColdFire 2M Wydajność procesora: MHz Zasilanie 3,3V rdzeń oraz wyprowadzenia I/O (5V tolerant I/O) Procesor wykonany w technologii 0,25 µm TSMC Tryby pracy z obniżonym poborem mocy (4 tryby pracy) Do 142 programowalnych bitowych portów I/O Zintegrowany generator z pętlą synchronizacji fazowej PLL Programowalny watch-dog 90
91 Moduł COBRA wraz z analizatorem BDM 91
Technika Mikroprocesorowa
Technika Mikroprocesorowa Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel. 631 2648 dmakow@dmcs.pl http://neo.dmcs.p.lodz.pl/tm 1 Sprawy formalne 1. Zaliczenie 2. Projekt z Techniki
Technika Mikroprocesorowa
Technika Mikroprocesorowa Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel. 631 2648 dmakow@dmcs.pl http://neo.dmcs.p.lodz.pl/tm 1 Sprawy formalne 1. Zaliczenie 2. Projekt z Techniki
Systemy Mikroprocesorowe Czasu Rzeczywistego
Systemy Mikroprocesorowe Czasu Rzeczywistego Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel. 631 2648 dmakow@dmcs.pl http://neo.dmcs.p.lodz.pl/smcr 1 Definicje podstawowe Procesor
Architektura mikroprocesorów z rdzeniem ColdFire
Architektura mikroprocesorów z rdzeniem ColdFire 1 Rodzina procesorów z rdzeniem ColdFire Rdzeń ColdFire V1: uproszczona wersja rdzenia ColdFire V2. Tryby adresowania, rozkazy procesora oraz operacje MAC/EMAC/DIV
Architektura mikroprocesorów z rdzeniem ColdFire
Architektura mikroprocesorów z rdzeniem ColdFire 1 Obsługa sytuacji wyjątkowych (Exception Processing) 2 Wyjątki Wyjątek (ang. exception) mechanizm kontroli przepływu danych występujący w mikroprocesorach
Architektura mikroprocesorów TEO 2009/2010
Architektura mikroprocesorów TEO 2009/2010 Plan wykładów Wykład 1: - Wstęp. Klasyfikacje mikroprocesorów Wykład 2: - Mikrokontrolery 8-bit: AVR, PIC Wykład 3: - Mikrokontrolery 8-bit: 8051, ST7 Wykład
Budowa komputera Komputer computer computare
11. Budowa komputera Komputer (z ang. computer od łac. computare obliczać) urządzenie elektroniczne służące do przetwarzania wszelkich informacji, które da się zapisać w formie ciągu cyfr albo sygnału
Technika Mikroprocesorowa
Technika Mikroprocesorowa Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel. 631 2648 dmakow@dmcs.pl http://neo.dmcs.p.lodz.pl/tm 1 Sprawy formalne 1. Zaliczenie 2. Projekt z Techniki
Architektura komputerów
Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania
Organizacja typowego mikroprocesora
Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają
Budowa Mikrokomputera
Budowa Mikrokomputera Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Podstawowe elementy komputera Procesor Pamięć Magistrala (2/16) Płyta główna (ang. mainboard, motherboard) płyta drukowana komputera,
Budowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11
Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1 Spis treúci Przedmowa... 9 Wstęp... 11 1. Komputer PC od zewnątrz... 13 1.1. Elementy zestawu komputerowego... 13 1.2.
Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski
Układ sterowania, magistrale i organizacja pamięci Dariusz Chaberski Jednostka centralna szyna sygnałow sterowania sygnały sterujące układ sterowania sygnały stanu wewnętrzna szyna danych układ wykonawczy
Przestrzeń pamięci. Układy dekoderów adresowych
Zakres przedmiotu 1. Wstęp do systemów mikroprocesorowych. 2. Współpraca procesora z pamięcią. Pamięci półprzewodnikowe. 3. Architektura systemów mikroprocesorowych. 4. Współpraca procesora z urządzeniami
Budowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
ARCHITEKTURA PROCESORA,
ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy
Technika mikroprocesorowa
Technika mikroprocesorowa zajmuje się przetwarzaniem danych w oparciu o cyfrowe programowalne układy scalone. Systemy przetwarzające dane w oparciu o takie układy nazywane są systemami mikroprocesorowymi
Technika Mikroprocesorowa
Technika Mikroprocesorowa Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel. 631 2648 dmakow@dmcs.pl http://neo.dmcs.p.lodz.pl/tm 1 Sprawy formalne 1. Zaliczenie 2. Projekt z Techniki
Podstawy Techniki Mikroprocesorowej
Podstawy Techniki Mikroprocesorowej Architektury mikroprocesorów Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com.
Mikroprocesor Operacje wejścia / wyjścia
Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych
WPROWADZENIE Mikrosterownik mikrokontrolery
WPROWADZENIE Mikrosterownik (cyfrowy) jest to moduł elektroniczny zawierający wszystkie środki niezbędne do realizacji wymaganych procedur sterowania przy pomocy metod komputerowych. Platformy budowy mikrosterowników:
Technika Mikroprocesorowa
Technika Mikroprocesorowa Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel. 631 2648 dmakow@dmcs.pl http://neo.dmcs.p.lodz.pl/tm 1 System mikroprocesorowy? (1) Magistrala adresowa
MIKROKONTROLERY I MIKROPROCESORY
PLAN... work in progress 1. Mikrokontrolery i mikroprocesory - architektura systemów mikroprocesorów ( 8051, AVR, ARM) - pamięci - rejestry - tryby adresowania - repertuar instrukcji - urządzenia we/wy
Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska
Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Zygmunt Kubiak 2 Centralny falownik (ang. central inverter system) Zygmunt Kubiak 3 Micro-Inverter Mikro-przetwornice działają podobnie do systemów
Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386
Budowa procesora 80386 Struktura wewnętrzna logiczna procesora 80386 Pierwszy prawdziwy procesor 32-bitowy. Zawiera wewnętrzne 32-bitowe rejestry (omówione zostaną w modułach następnych), pozwalające przetwarzać
Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:
Zaliczenie Termin zaliczenia: 14.06.2007 Sala IE 415 Termin poprawkowy: >18.06.2007 (informacja na stronie: http://neo.dmcs.p.lodz.pl/tm/index.html) 1 Współpraca procesora z urządzeniami peryferyjnymi
Budowa i zasada działania komputera. dr Artur Bartoszewski
Budowa i zasada działania komputera 1 dr Artur Bartoszewski Jednostka arytmetyczno-logiczna 2 Pojęcie systemu mikroprocesorowego Układ cyfrowy: Układy cyfrowe służą do przetwarzania informacji. Do układu
Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
LEKCJA TEMAT: Zasada działania komputera.
LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem
Logiczny model komputera i działanie procesora. Część 1.
Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.
Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1
i sieci komputerowe Szymon Wilk Superkomputery 1 1. Superkomputery to komputery o bardzo dużej mocy obliczeniowej. Przeznaczone są do symulacji zjawisk fizycznych prowadzonych głównie w instytucjach badawczych:
LEKCJA TEMAT: Współczesne procesory.
LEKCJA TEMAT: Współczesne procesory. 1. Wymagania dla ucznia: zna pojęcia: procesor, CPU, ALU, potrafi podać typowe rozkazy; potrafi omówić uproszczony i rozszerzony schemat mikroprocesora; potraf omówić
Programowalne układy logiczne
Programowalne układy logiczne Mikroprocesor Szymon Acedański Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 6 grudnia 2014 Zbudujmy własny mikroprocesor Bardzo prosty: 16-bitowy, 16 rejestrów
Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne
Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...
Magistrala systemowa (System Bus)
Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki systemowa (System Bus) Pamięć operacyjna ROM, RAM Jednostka centralna Układy we/wy In/Out Wstęp do Informatyki
Projekt prostego procesora
Projekt prostego procesora Opracowany przez Rafała Walkowiaka dla zajęć z PTC 2012/2013 w oparciu o Laboratory Exercise 9 Altera Corporation Rysunek 1 przedstawia schemat układu cyfrowego stanowiącego
Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC
Architektura Systemów Komputerowych Rozwój architektury komputerów klasy PC 1 1978: Intel 8086 29tys. tranzystorów, 16-bitowy, współpracował z koprocesorem 8087, posiadał 16-bitową szynę danych (lub ośmiobitową
Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski
Układ wykonawczy, instrukcje i adresowanie Dariusz Chaberski System mikroprocesorowy mikroprocesor C A D A D pamięć programu C BIOS dekoder adresów A C 1 C 2 C 3 A D pamięć danych C pamięć operacyjna karta
Architektura komputerów. Układy wejścia-wyjścia komputera
Architektura komputerów Układy wejścia-wyjścia komputera Wspópraca komputera z urządzeniami zewnętrznymi Integracja urządzeń w systemach: sprzętowa - interfejs programowa - protokół sterujący Interfejs
Architektura komputerów
Architektura komputerów Wykład 12 Jan Kazimirski 1 Magistrale systemowe 2 Magistrale Magistrala medium łączące dwa lub więcej urządzeń Sygnał przesyłany magistralą może być odbierany przez wiele urządzeń
Architektura systemów komputerowych
Studia stacjonarne inżynierskie, kierunek INFORMATYKA Architektura systemów komputerowych Architektura systemów komputerowych dr Artur Bartoszewski Procesor część I 1. ALU 2. Cykl rozkazowy 3. Schemat
Technika mikroprocesorowa. Linia rozwojowa procesorów firmy Intel w latach
mikrokontrolery mikroprocesory Technika mikroprocesorowa Linia rozwojowa procesorów firmy Intel w latach 1970-2000 W krótkim pionierskim okresie firma Intel produkowała tylko mikroprocesory. W okresie
Komputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury
1976 r. Apple PC Personal Computer 1981 r. pierwszy IBM PC Komputer jest wart tyle, ile wart jest człowiek, który go wykorzystuje... Hardware sprzęt Software oprogramowanie Komputer IBM PC niezależnie
Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)
Wstęp doinformatyki Architektura co to jest? Architektura Model komputera Dr inż Ignacy Pardyka Slajd 1 Slajd 2 Od układów logicznych do CPU Automat skończony Slajd 3 Slajd 4 Ile jest automatów skończonych?
Architektura komputerów
Architektura komputerów Wykład 5 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) c.d. 2 Architektura CPU Jednostka arytmetyczno-logiczna (ALU) Rejestry Układ sterujący przebiegiem programu
Architektura komputera
Architektura komputera Architektura systemu komputerowego O tym w jaki sposób komputer wykonuje program i uzyskuje dostęp do pamięci i danych, decyduje architektura systemu komputerowego. Określa ona sposób
Przetwarzanie potokowe pipelining
Przetwarzanie potokowe pipelining (część A) Przypomnienie - implementacja jednocyklowa 4 Add Add PC Address memory ister # isters Address ister # ister # memory Wstęp W implementacjach prezentowanych tydzień
Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2
Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci,
Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:
Współpraca mikroprocesora z urządzeniami zewnętrznymi Urządzenia wejścia-wyjścia, urządzenia których zadaniem jest komunikacja komputera z otoczeniem (zwykle bezpośrednio z użytkownikiem). Do najczęściej
Struktura i działanie jednostki centralnej
Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala
Architektura systemów komputerowych. dr Artur Bartoszewski
Architektura systemów komputerowych 1 dr Artur Bartoszewski Procesor część I 1. ALU 2. Cykl rozkazowy 3. Schemat blokowy CPU 4. Architektura CISC i RISC 2 Jednostka arytmetyczno-logiczna 3 Schemat blokowy
PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka
PAMIĘCI Część 1 Przygotował: Ryszard Kijanka WSTĘP Pamięci półprzewodnikowe są jednym z kluczowych elementów systemów cyfrowych. Służą do przechowywania informacji w postaci cyfrowej. Liczba informacji,
Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin
Podstawy techniki cyfrowej Układy wejścia-wyjścia mgr inż. Bogdan Pietrzak ZSR CKP Świdwin 1 Układem wejścia-wyjścia nazywamy układ elektroniczny pośredniczący w wymianie informacji pomiędzy procesorem
Architektura komputerów. Komputer Procesor Mikroprocesor koncepcja Johna von Neumanna
Architektura komputerów. Literatura: 1. Piotr Metzger, Anatomia PC, wyd. IX, Helion 2004 2. Scott Mueller, Rozbudowa i naprawa PC, wyd. XVIII, Helion 2009 3. Tomasz Kowalski, Urządzenia techniki komputerowej,
MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW
MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje
Architektura komputerów
Architektura komputerów Tydzień 5 Jednostka Centralna Zadania realizowane przez procesor Pobieranie rozkazów Interpretowanie rozkazów Pobieranie danych Przetwarzanie danych Zapisanie danych Główne zespoły
Architektura systemu komputerowego
Zakres przedmiotu 1. Wstęp do systemów mikroprocesorowych. 2. Współpraca procesora z pamięcią. Pamięci półprzewodnikowe. 3. Architektura systemów mikroprocesorowych. 4. Współpraca procesora z urządzeniami
Maszyny liczace - rys historyczny
SWB - Mikroprocesory i mikrokontrolery - wykład 7 asz 1 Maszyny liczace - rys historyczny pierwszy kalendarz - Stonehenge (obecnie Salisbury, Anglia) skonstruowany ok. 2800 r. pne. abacus - pierwsze liczydła
Wykład Mikroprocesory i kontrolery
Wykład Mikroprocesory i kontrolery Cele wykładu: Poznanie podstaw budowy, zasad działania mikroprocesorów i układów z nimi współpracujących. Podstawowa wiedza potrzebna do dalszego kształcenia się w technice
Projektowanie. Projektowanie mikroprocesorów
WYKŁAD Projektowanie mikroprocesorów Projektowanie układ adów w cyfrowych - podsumowanie Algebra Boole a Bramki logiczne i przerzutniki Automat skończony System binarny i reprezentacja danych Synteza logiczna
Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
Przerwania, polling, timery - wykład 9
SWB - Przerwania, polling, timery - wykład 9 asz 1 Przerwania, polling, timery - wykład 9 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Przerwania, polling, timery - wykład 9 asz 2 Metody obsługi zdarzeń
Procesory rodziny x86. Dariusz Chaberski
Procesory rodziny x86 Dariusz Chaberski 8086 produkowany od 1978 magistrala adresowa - 20 bitów (1 MB) magistrala danych - 16 bitów wielkość instrukcji - od 1 do 6 bajtów częstotliwośc pracy od 5 MHz (IBM
Metody obsługi zdarzeń
SWB - Przerwania, polling, timery - wykład 10 asz 1 Metody obsługi zdarzeń Przerwanie (ang. Interrupt) - zmiana sterowania, niezależnie od aktualnie wykonywanego programu, spowodowana pojawieniem się sygnału
Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania
Architektura Systemów Komputerowych Jednostka ALU Przestrzeń adresowa Tryby adresowania 1 Jednostka arytmetyczno- logiczna ALU ALU ang: Arythmetic Logic Unit Argument A Argument B A B Ci Bit przeniesienia
System mikroprocesorowy i peryferia. Dariusz Chaberski
System mikroprocesorowy i peryferia Dariusz Chaberski System mikroprocesorowy mikroprocesor pamięć kontroler przerwań układy wejścia wyjścia kontroler DMA 2 Pamięć rodzaje (podział ze względu na sposób
Witold Komorowski: RISC. Witold Komorowski, dr inż.
Witold Komorowski, dr inż. Koncepcja RISC i przetwarzanie potokowe RISC koncepcja architektury i organizacji komputera Aspekty opisu komputera Architektura Jak się zachowuje? Organizacja Jak działa? Realizacja
Przykładowe pytania DSP 1
Przykładowe pytania SP Przykładowe pytania Systemy liczbowe. Przedstawić liczby; -, - w kodzie binarnym i hexadecymalnym uzupełnionym do dwóch (liczba 6 bitowa).. odać dwie liczby binarne w kodzie U +..
Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430
Wykład 4 Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430 Mikrokontrolery PIC Mikrokontrolery PIC24 Mikrokontrolery PIC24 Rodzina 16-bitowych kontrolerów RISC Podział na dwie podrodziny: PIC24F
Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]
Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową
System czasu rzeczywistego
System czasu rzeczywistego Definicje System czasu rzeczywistego (real-time system) jest to system komputerowy, w którym obliczenia prowadzone równolegle z przebiegiem zewnętrznego procesu mają na celu
Architektura komputerów. Asembler procesorów rodziny x86
Architektura komputerów Asembler procesorów rodziny x86 Architektura komputerów Asembler procesorów rodziny x86 Rozkazy mikroprocesora Rozkazy mikroprocesora 8086 można podzielić na siedem funkcjonalnych
Zarządzanie zasobami pamięci
Zarządzanie zasobami pamięci System operacyjny wykonuje programy umieszczone w pamięci operacyjnej. W pamięci operacyjnej przechowywany jest obecnie wykonywany program (proces) oraz niezbędne dane. Jeżeli
Kurs Zaawansowany S7. Spis treści. Dzień 1
Spis treści Dzień 1 I Konfiguracja sprzętowa i parametryzacja stacji SIMATIC S7 (wersja 1211) I-3 Dlaczego powinna zostać stworzona konfiguracja sprzętowa? I-4 Zadanie Konfiguracja sprzętowa I-5 Konfiguracja
Architektura typu Single-Cycle
Architektura typu Single-Cycle...czyli budujemy pierwszą maszynę parową Przepływ danych W układach sekwencyjnych przepływ danych synchronizowany jest sygnałem zegara Elementy procesora - założenia Pamięć
Technika mikroprocesorowa I Wykład 2
Technika mikroprocesorowa I Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci, -odczyt-zapis urządzenia we-wy,
Procesory. Schemat budowy procesora
Procesory Procesor jednostka centralna (CPU Central Processing Unit) to sekwencyjne urządzenie cyfrowe którego zadaniem jest wykonywanie rozkazów i sterowanie pracą wszystkich pozostałych bloków systemu
2. Architektura mikrokontrolerów PIC16F8x... 13
Spis treści 3 Spis treœci 1. Informacje wstępne... 9 2. Architektura mikrokontrolerów PIC16F8x... 13 2.1. Budowa wewnętrzna mikrokontrolerów PIC16F8x... 14 2.2. Napięcie zasilania... 17 2.3. Generator
Wykład 2. Mikrokontrolery z rdzeniami ARM
Wykład 2 Źródło problemu 2 Wstęp Architektura ARM (Advanced RISC Machine, pierwotnie Acorn RISC Machine) jest 32-bitową architekturą (modelem programowym) procesorów typu RISC. Różne wersje procesorów
Współpraca procesora ColdFire z pamięcią
Współpraca procesora ColdFire z pamięcią 1 Współpraca procesora z pamięcią zewnętrzną (1) ROM Magistrala adresowa Pamięć programu Magistrala danych Sygnały sterujące CS, OE Mikroprocesor FLASH, SRAM, DRAM
Jednostka centralna. dr hab. inż. Krzysztof Patan, prof. PWSZ
Jednostka centralna dr hab. inż. Krzysztof Patan, prof. PWSZ Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa w Głogowie k.patan@issi.uz.zgora.pl Architektura i organizacja komputerów Architektura
Specyfika projektowania Mariusz Rawski
CAD Specyfika projektowania Mariusz Rawski rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ System cyfrowy pierwsze skojarzenie Urządzenia wprowadzania danych: klawiatury czytniki urządzenia przetwarzania
Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel
Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel. 631 2720 dmakow@dmcs.pl http://neo.dmcs.p.lodz.pl/sw 1 Sprawy formalne Informacje wstępne Zaliczenie Laboratorium Materiały do wykładu
architektura komputerów w. 4 Realizacja sterowania
architektura komputerów w. 4 Realizacja sterowania Model komputera CPU Jednostka sterująca Program umieszczony wraz z danymi w pamięci jest wykonywany przez CPU program wykonywany jest sekwencyjnie, zmiana
UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.
Zadaniem centralnej jednostki przetwarzającej CPU (ang. Central Processing Unit), oprócz przetwarzania informacji jest sterowanie pracą pozostałych układów systemu. W skład CPU wchodzą mikroprocesor oraz
dr inż. Jarosław Forenc
Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 2012/2013 Wykład nr 6 (03.04.2013) Rok akademicki 2012/2013, Wykład
dr inż. Jarosław Forenc Dotyczy jednostek operacyjnych i ich połączeń stanowiących realizację specyfikacji typu architektury
Rok akademicki 2012/2013, Wykład nr 6 2/43 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 2012/2013
Podstawy techniki cyfrowej i mikroprocesorowej II. Urządzenia wejścia-wyjścia
Podstawy techniki cyfrowej i mikroprocesorowej II Urządzenia wejścia-wyjścia Tomasz Piasecki magistrala procesor pamięć wejście wyjście W systemie mikroprocesorowym CPU może współpracować za pośrednictwem
Szkolenia specjalistyczne
Szkolenia specjalistyczne AGENDA Programowanie mikrokontrolerów w języku C na przykładzie STM32F103ZE z rdzeniem Cortex-M3 GRYFTEC Embedded Systems ul. Niedziałkowskiego 24 71-410 Szczecin info@gryftec.com
Wykład 2. Mikrokontrolery z rdzeniami ARM
Źródło problemu 2 Wstęp Architektura ARM (Advanced RISC Machine, pierwotnie Acorn RISC Machine) jest 32-bitową architekturą (modelem programowym) procesorów typu RISC. Różne wersje procesorów ARM są szeroko
Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt
Architektura komputera Architektura von Neumanna: Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Zawartośd tej pamięci jest adresowana przez wskazanie miejsca, bez względu
Podstawy techniki cyfrowej Mikroprocesory. Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin
Podstawy techniki cyfrowej Mikroprocesory Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin 1 Mikroprocesor to układ cyfrowy wykonany jako pojedynczy układ scalony o wielkim stopniu integracji zdolny do wykonywania
CompactPCI. PCI Industrial Computers Manufacturers Group (PICMG)
PCI Industrial Computers Manufacturers Group (PICMG) nowy standard; nowa jakość komputerów realizujących krytyczne zadania w systemach pracujących w trudnych warunkach; Baza specyfikacji: format kaset
Mikroprocesory i Mikrosterowniki
Mikroprocesory i Mikrosterowniki Wykład 1 Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com. Konsultacje Pn,
Programowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 3: Architektura procesorów x86 Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Pojęcia ogólne Budowa mikrokomputera Cykl
Systemy na Chipie. Robert Czerwiński
Systemy na Chipie Robert Czerwiński Cel kursu Celem kursu jest zapoznanie słuchaczy ze współczesnymi metodami projektowania cyfrowych układów specjalizowanych, ze szczególnym uwzględnieniem układów logiki