Systemy mikroprocesorowe

Systemy mikroprocesoroweZastosowanie układów mikroprocesorowych w niemal wszystkich urządzeniach elektrycznych jest najważniejszą cechą infrastruktury technicznej współczesnego społeczeństwa. Energetyka, przemysł, transport, systemy komunikacyjne są w dużym stopniu uzależnione od komputerowych systemów sterowania. Układy mikroprocesorowe są wbudowane w przyrządy pomiarowe, urządzenia elektryczne, instalacje oświetleniowe itp.

Wszystko to zobowiązuje inżyniera elektryka do znajomości przynajmniej podstaw technologii mikroprocesorowej.

Systemy mikroprocesorowe są przeznaczone do automatyzacji przetwarzania informacji i sterowania różnymi procesami.

Termin „system mikroprocesorowy” jest bardzo szeroki i obejmuje takie pojęcia, jak „elektroniczna maszyna obliczeniowa (ECM)”, „komputer sterujący”, „komputer” i inne.

System mikroprocesorowy obejmuje sprzęt lub w języku angielskim — sprzęt i oprogramowanie (Software) — oprogramowanie.

Informacje cyfrowe

System mikroprocesorowy pracuje z informacją cyfrową, która jest ciągiem kodów numerycznych.

Rdzeniem każdego systemu mikroprocesorowego jest mikroprocesor, który może akceptować tylko liczby binarne (składające się z zer i jedynek).Liczby binarne są zapisywane przy użyciu systemu liczb binarnych. Na przykład w życiu codziennym używamy dziesiętnego systemu liczbowego, który używa dziesięciu znaków lub cyfr do zapisywania liczb, 0,1,2,3,4,5,6,7,8,9. Odpowiednio, w systemie binarnym są tylko dwa takie symbole (lub cyfry) — 0 i 1.

Konieczne jest zrozumienie, że system liczbowy to tylko zasady pisania liczb, a wybór rodzaju systemu będzie zależał od łatwości użytkowania. Wybór systemu binarnego wynika z jego prostoty, co oznacza niezawodność urządzeń cyfrowych i łatwość ich technicznej realizacji.

Rozważ jednostki miary informacji cyfrowych:

Bit (z angielskiego «BInary digiT» — cyfra binarna) przyjmuje tylko dwie wartości: 0 lub 1. Można zakodować wartość logiczną «tak» lub «nie», stan «włączony» lub «wyłączony», stan « otwarte» «lub» zamknięte «itp.

Grupa ośmiu bitów nazywana jest bajtem, na przykład 10010111. Jeden bajt umożliwia zakodowanie 256 wartości: 00000000 — 0, 11111111 — 255.

Bit to najmniejsza jednostka informacji.

Bajt — najmniejsza jednostka przetwarzania informacji. Bajt – część słowa maszynowego, zwykle składająca się z 8 bitów i używana jako jednostka ilości informacji podczas jej przechowywania, przesyłania i przetwarzania na komputerze. Bajt służy do reprezentowania liter, sylab i znaków specjalnych (zwykle zajmujących wszystkie 8 bitów) lub cyfr dziesiętnych (każda po 2 cyfry w 1 bajcie).

Dwa sąsiadujące ze sobą bajty nazywane są słowem, 4 bajty słowem podwójnym, 8 bajtów słowem poczwórnym.

Niemal wszystkie otaczające nas informacje są analogowe. Dlatego zanim informacja trafi do procesora w celu przetworzenia, jest przetwarzana za pomocą przetwornika ADC (przetwornik analogowo-cyfrowy).Ponadto informacje są zakodowane w określonym formacie i mogą być cyfrowe, logiczne, tekstowe (symboliczne), graficzne, wideo itp.

Na przykład tabela kodów ASCII (od angielskiego amerykańskiego standardowego kodu wymiany informacji) jest używana do kodowania informacji tekstowych. Jeden znak jest zapisywany w jednym bajcie, który może przyjąć 256 wartości. Informacje graficzne są podzielone na kropki (piksele), a kolor i położenie każdej kropki są kodowane w poziomie iw pionie.

Oprócz systemu dwójkowego i dziesiętnego, MS wykorzystuje system szesnastkowy, w którym do zapisu liczb służą symbole 0...9 i A...F. Jego zastosowanie wynika z faktu, że jeden bajt jest opisany przez dwa -cyfrowa liczba szesnastkowa, która znacznie zmniejsza zapis kodu numerycznego i czyni go bardziej czytelnym (11111111 — FF).

Tabela 1 — Zapisywanie liczb w różnych systemach liczbowych

Zapisywanie liczb w różnych systemach liczbowych

Aby określić wartość liczby (na przykład wartość liczby 100 dla różnych systemów liczbowych może wynosić 42, 10010, 25616), na końcu liczby należy dodać literę łacińską oznaczającą system liczbowy: dla liczb binarnych literę b, dla liczb szesnastkowych — h, dla liczb dziesiętnych — d. Liczba bez dodatkowego oznaczenia jest uważana za dziesiętną.

Przeliczanie liczb z jednego systemu na inny oraz podstawowe operacje arytmetyczne i logiczne na liczbach pozwalają na wykonanie kalkulatora inżynierskiego (standardowa aplikacja systemu operacyjnego Windows).

Struktura systemu mikroprocesorowego

System mikroprocesorowy oparty jest na mikroprocesorze (procesorze), który realizuje funkcje przetwarzania informacji i sterowania. Pozostałe urządzenia tworzące system mikroprocesorowy służą procesorowi, pomagając mu w pracy.

Obowiązkowymi urządzeniami do tworzenia systemu mikroprocesorowego są porty wejścia / wyjścia i częściowo pamięć... Porty wejścia - wyjścia łączą procesor ze światem zewnętrznym, dostarczając informacji do przetwarzania i wyprowadzania wyników przetwarzania lub działań kontrolnych. Przyciski (klawiatura), różne czujniki są podłączone do portów wejściowych; do portów wyjściowych — urządzeń umożliwiających sterowanie elektryczne: wskaźników, wyświetlaczy, styczników, elektrozaworów, silników elektrycznych itp.

Pamięć jest potrzebna przede wszystkim do przechowywania programu (lub zestawu programów) niezbędnego do działania procesora. Program to sekwencja poleceń zrozumiałych dla procesora, napisana przez człowieka (zwykle programistę).

Strukturę systemu mikroprocesorowego przedstawiono na rysunku 1. W uproszczonej formie procesor składa się z jednostki arytmetyczno-logicznej (ALU) przetwarzającej informacje cyfrowe oraz jednostki sterującej (CU).

Pamięć zazwyczaj obejmuje pamięć tylko do odczytu (ROM), która jest nieulotna i przeznaczona do długoterminowego przechowywania informacji (np. programów) oraz pamięć o dostępie swobodnym (RAM), przeznaczona do tymczasowego przechowywania danych.

Struktura systemu mikroprocesorowego

Rysunek 1 — Struktura systemu mikroprocesorowego

Procesor, porty i pamięć komunikują się ze sobą za pośrednictwem magistrali. Magistrala to zestaw przewodów połączonych funkcjonalnie. Pojedynczy zestaw magistral systemowych nazywany jest magistralą wewnątrzsystemową, w której znajdują się:

  • magistrala danych DB (Data Bus), za pośrednictwem której wymieniane są dane pomiędzy procesorem, pamięcią i portami;

  • magistrala adresowa AB (Address Bus), używana do adresowania komórek pamięci i portów procesora;

  • magistrala sterująca CB (Control Bus), zestaw linii, które przesyłają różne sygnały sterujące z procesora do urządzeń zewnętrznych i odwrotnie.

mikroprocesory

Mikroprocesor — sterowane programowo urządzenie przeznaczone do przetwarzania informacji cyfrowych i sterowania procesem tego przetwarzania, wykonane w postaci jednego (lub kilku) układów scalonych o wysokim stopniu integracji elementów elektronicznych.

Mikroprocesor charakteryzuje się dużą liczbą parametrów, ponieważ jest zarówno złożonym urządzeniem sterowanym programowo, jak i urządzeniem elektronicznym (mikroukładem). Dlatego w przypadku mikroprocesora zarówno typ obudowy, jak i zestaw instrukcji dla procesora… Możliwości mikroprocesora określa koncepcja architektury mikroprocesora.

Przedrostek «micro» w nazwie procesora oznacza, że ​​jest on realizowany przy użyciu technologii mikronowej.

Wygląd mikroprocesora Intel Pentium 4

Rysunek 2 — Widok zewnętrzny mikroprocesora Intel Pentium 4

Podczas pracy mikroprocesor odczytuje polecenia programu z pamięci lub portu wejściowego i wykonuje je. Znaczenie każdego polecenia jest określone przez zestaw instrukcji procesora.Zestaw instrukcji jest wbudowany w architekturę mikroprocesora, a wykonanie kodu polecenia wyraża się w wykonaniu pewnych mikrooperacji przez wewnętrzne elementy procesora.

Architektura mikroprocesorowa — to jest jej logiczna organizacja; określa możliwości mikroprocesora w zakresie sprzętowej i programowej realizacji funkcji wymaganych do budowy systemu mikroprocesorowego.

Główne cechy mikroprocesorów:

1) Częstotliwość zegara (jednostka miary MHz lub GHz) — liczba impulsów zegara w ciągu 1 sekundy.Impulsy zegarowe są generowane przez generator zegarowy, który zwykle znajduje się wewnątrz procesora. Ponieważ wszystkie operacje (rozkazy) wykonywane są w cyklach zegara, to wydajność pracy (liczba operacji wykonywanych w jednostce czasu) zależy od częstotliwości zegara. Częstotliwość procesora może zmieniać się w pewnych granicach.

2) Procesor bitowy (8, 16, 32, 64 bity itd.) — określa liczbę bajtów danych przetwarzanych w jednym cyklu zegara. Szerokość bitowa procesora jest określona przez szerokość bitową jego rejestrów wewnętrznych. Procesor może być 8-bitowy, 16-bitowy, 32-bitowy, 64-bitowy itd., tj. dane są przetwarzane w porcjach 1, 2, 4, 8 bajtów. Oczywiste jest, że im większa głębia bitowa, tym wyższa wydajność pracy.

Architektura wewnętrzna mikroprocesora

Uproszczoną architekturę wewnętrzną typowego mikroprocesora 8-bitowego przedstawiono na rysunku 3. Strukturę mikroprocesora można podzielić na trzy główne części:

1) Rejestry do czasowego przechowywania komend, danych i adresów;

2) Jednostka arytmetyczno-logiczna (ALU) wykonująca operacje arytmetyczne i logiczne;

3) Układ sterowania i synchronizacji — zapewnia wybór poleceń, organizuje pracę jednostki ALU, zapewnia dostęp do wszystkich rejestrów mikroprocesora, odbiera i generuje zewnętrzne sygnały sterujące.

Uproszczona architektura wewnętrzna 8-bitowego mikroprocesora

Rysunek 3 — Uproszczona architektura wewnętrzna 8-bitowego mikroprocesora

Jak widać na schemacie, procesor oparty jest na rejestrach, które dzielą się na rejestry specjalne (o określonym przeznaczeniu) oraz rejestry ogólnego przeznaczenia.

Licznik programu (komputer) — rejestr zawierający adres następnego bajtu rozkazu. Procesor musi wiedzieć, które polecenie zostanie wykonane jako następne.

Bateria — rejestr używany w większości instrukcji do przetwarzania logicznego i arytmetycznego; jest zarówno źródłem jednego z bajtów danych potrzebnych do wykonania operacji ALU, jak i miejscem, w którym umieszczany jest wynik operacji ALU.

Rejestr funkcyjny (lub rejestr flagowy) zawiera informacje o stanie wewnętrznym mikroprocesora, a konkretnie o wyniku ostatniej operacji ALU. Rejestr flagowy nie jest rejestrem w zwykłym tego słowa znaczeniu, ale po prostu zestawem przerzutników (flaga w górę lub w dół. Zazwyczaj są flagi zerowe, przepełnienia, ujemne i przenoszenia).

Wskaźnik stosu (SP) — śledzi położenie stosu, czyli zawiera adres jego ostatnio używanej komórki. Stos — sposób organizowania przechowywania danych.

Rejestr poleceń zawiera bieżący bajt polecenia dekodowany przez dekoder poleceń.

Zewnętrzne linie magistrali są odizolowane od wewnętrznych linii magistrali buforami, a główne elementy wewnętrzne są połączone szybką wewnętrzną magistralą danych.

Aby poprawić wydajność systemu wieloprocesorowego, funkcje procesora centralnego można rozdzielić na kilka procesorów. Aby wspomóc procesor centralny, komputer często wprowadza koprocesory, nastawione na sprawne wykonywanie dowolnych określonych funkcji. Powszechne koprocesory matematyczne i graficzne, wejście i wyjście odciążające centralny procesor od prostych, ale licznych operacji interakcji z urządzeniami zewnętrznymi.

Na obecnym etapie głównym kierunkiem zwiększania produktywności jest rozwój procesorów wielordzeniowych, tj. łączenie dwóch lub więcej procesorów w jednej obudowie w celu wykonania kilku operacji równolegle (jednocześnie).

Intel i AMD to wiodące firmy w zakresie projektowania i produkcji procesorów.

Algorytm systemu mikroprocesorowego

Algorytm — precyzyjna recepta, która w unikalny sposób określa proces przekształcania informacji początkowej w sekwencję operacji, które umożliwiają rozwiązanie zestawu zadań określonej klasy i uzyskanie pożądanego wyniku.

Głównym elementem sterującym całego układu mikroprocesorowego jest procesor... Steruje on, poza kilkoma szczególnymi przypadkami, wszystkimi pozostałymi urządzeniami. Pozostałe urządzenia, takie jak RAM, ROM i porty I/O, są podrzędne.

Zaraz po włączeniu procesor zaczyna odczytywać kody cyfrowe z obszaru pamięci zarezerwowanego do przechowywania programów. Odczyt odbywa się sekwencyjnie komórka po komórce, zaczynając od pierwszej. Komórka zawiera dane, adresy i polecenia. Instrukcja jest jedną z podstawowych czynności, które może wykonać mikroprocesor. Cała praca mikroprocesora sprowadza się do sekwencyjnego odczytu i wykonywania poleceń.

Rozważ sekwencję działań mikroprocesora podczas wykonywania poleceń programu:

1) Przed wykonaniem kolejnej instrukcji mikroprocesor zapisuje swój adres w liczniku programu komputerowego.

2) MP uzyskuje dostęp do pamięci pod adresem zawartym w komputerze i odczytuje z pamięci pierwszy bajt następnego rozkazu w rejestrze rozkazów.

3) Dekoder poleceń dekoduje (odszyfrowuje) kod polecenia.

4) Zgodnie z otrzymaną z dekodera informacją jednostka sterująca generuje uporządkowaną w czasie sekwencję mikrooperacji realizujących instrukcje rozkazowe, w tym:

— pobiera operandy z rejestrów i pamięci;

— wykonuje na nich operacje arytmetyczne, logiczne lub inne zgodnie z kodem polecenia;

— w zależności od długości polecenia zmienia zawartość komputera;

— przekazuje sterowanie do następnego polecenia, którego adres ponownie znajduje się w liczniku programu komputerowego.

Zestaw instrukcji dla mikroprocesora można podzielić na trzy grupy:

1) Polecenia przenoszenia danych

Transfer odbywa się pomiędzy pamięcią, procesorem, portami I/O (każdy port ma swój adres), pomiędzy rejestrami procesora.

2) Polecenia transformacji danych

Wszystkie dane (tekst, obraz, wideo itp.) są liczbami i na liczbach można wykonywać tylko operacje arytmetyczne i logiczne. Dlatego polecenia tej grupy obejmują dodawanie, odejmowanie, porównywanie, operacje logiczne itp.

3) Przekazanie dowodzenia

Bardzo rzadko zdarza się, aby program składał się z pojedynczej instrukcji sekwencyjnej. Większość algorytmów wymaga rozgałęzienia programu. Aby program mógł zmienić algorytm swojej pracy, w zależności od dowolnego warunku, używane są polecenia przekazania sterowania. Polecenia te zapewniają przepływ wykonywania programu wzdłuż różnych ścieżek i organizują pętle.

Urządzenia zewnętrzne

Urządzenia zewnętrzne obejmują wszystkie urządzenia zewnętrzne w stosunku do procesora (z wyjątkiem pamięci RAM) i podłączone przez porty we/wy. Urządzenia zewnętrzne można podzielić na trzy grupy:

1) urządzenia do komunikacji człowiek-komputer (klawiatura, monitor, drukarka itp.);

2) urządzenia do komunikacji z obiektami sterującymi (czujniki, elementy wykonawcze, ADC i DAC);

3) zewnętrzne urządzenia pamięci masowej o dużej pojemności (dyski twarde, dyskietki).

Urządzenia zewnętrzne są podłączone do systemu mikroprocesorowego fizycznie — poprzez złącza oraz logicznie — poprzez porty (kontrolery).

System przerwań (mechanizm) służy do łączenia procesora z urządzeniami zewnętrznymi.

System przerwań

Jest to specjalny mechanizm, który pozwala w dowolnym momencie, poprzez sygnał zewnętrzny, wymusić na procesorze zatrzymanie wykonywania programu głównego, wykonanie operacji związanych ze zdarzeniem, które spowodowało przerwanie, a następnie powrót do wykonywania programu głównego .

Każdy mikroprocesor ma co najmniej jedno wejście żądania przerwania INT (od słowa Interrupt).

Rozważmy przykład interakcji procesora komputera osobistego z klawiaturą (rysunek 4).

Klawiatura — urządzenie do wprowadzania informacji symbolicznych i poleceń sterujących. Aby podłączyć klawiaturę, komputer ma specjalny port klawiatury (chip).

Jak procesor współpracuje z klawiaturą

Rysunek 4 — Obsługa procesora za pomocą klawiatury

Algorytm pracy:

1) Po naciśnięciu klawisza kontroler klawiatury generuje kod numeryczny. Ten sygnał trafia do układu portu klawiatury.

2) Port klawiatury wysyła sygnał przerwania do procesora. Każde urządzenie zewnętrzne ma swój własny numer przerwania, po którym procesor je rozpoznaje.

3) Po otrzymaniu przerwania z klawiatury procesor przerywa wykonywanie programu (na przykład edytora Microsoft Office Word) i ładuje program do przetwarzania kodów klawiatury z pamięci. Taki program nazywa się sterownikiem.

4) Ten program kieruje procesor do portu klawiatury i kod numeryczny jest ładowany do rejestru procesora.

5) Kod cyfrowy jest zapisywany w pamięci, a procesor kontynuuje wykonywanie innego zadania.

Ze względu na dużą szybkość działania procesor wykonuje jednocześnie dużą liczbę procesów.

Radzimy przeczytać:

Dlaczego prąd elektryczny jest niebezpieczny?