PRZEDWSTĘPNY PROJEKT MASZYNY UMC-100

Podobne dokumenty
Logiczny model komputera i działanie procesora. Część 1.

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

Arytmetyka binarna - wykład 6

Organizacja typowego mikroprocesora

Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne

Architektura komputerów

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Magistrala systemowa (System Bus)

Struktura i działanie jednostki centralnej

Arytmetyka liczb binarnych

Przedmiot: Urządzenia techniki komputerowej Nauczyciel: Mirosław Ruciński

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

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]

Technologie Informacyjne

UKŁADY MIKROPROGRAMOWALNE

Stan wysoki (H) i stan niski (L)

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

LEKCJA TEMAT: Współczesne procesory.

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 5 Liczby w komputerze

Systemy zapisu liczb.

Architektura systemów komputerowych. Arytmetyka maszyn cyfrowych

Operacje arytmetyczne

Wielkości liczbowe. Wykład z Podstaw Informatyki dla I roku BO. Piotr Mika

Metoda znak-moduł (ZM)

Architektura komputerów

dr inż. Jarosław Forenc

Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych.

Adam Korzeniewski p Katedra Systemów Multimedialnych

Adam Korzeniewski p Katedra Systemów Multimedialnych

Naturalny kod binarny (NKB)

Wielkości liczbowe. Wykład z Podstaw Informatyki. Piotr Mika

Przykładowe pytania DSP 1

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

Moduł 2 Zastosowanie systemów liczbowych w informacji cyfrowej

Mikrooperacje. Mikrooperacje arytmetyczne

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI

Przetworniki cyfrowo analogowe oraz analogowo - cyfrowe

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

Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)

System liczbowy jest zbiorem reguł określających jednolity sposób zapisu i nazewnictwa liczb.

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

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

ZADANIE 1. Rozwiązanie:

Technologie Informacyjne Wykład 3

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Technologie Informacyjne Wykład 4

Dane, informacja, programy. Kodowanie danych, kompresja stratna i bezstratna

1.1. Pozycyjne systemy liczbowe

1. Cel ćwiczenia. 2. Podłączenia urządzeń zewnętrznych w sterowniku VersaMax Micro

Szybkie układy mnożące

Procesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer Wojciech Myszka 16 pa«zdziernika 2008

Szybkie układy mnożące

Wykład z Technologii Informacyjnych. Piotr Mika

Podstawy Informatyki

RODZAJE INFORMACJI. Informacje analogowe. Informacje cyfrowe. U(t) U(t) Umax. Umax. R=(0,Umax) nieskończony zbiór możliwych wartości. Umax.

Architektura komputerów. Asembler procesorów rodziny x86

...o. 2. ZARYS ORGANIZACJI MASZYNY TYPOWEJ

Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów

Teoria przetwarzania A/C i C/A.

ARCHITEKTURA PROCESORA,

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

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

Kodowanie informacji. Kody liczbowe

Arytmetyka stałopozycyjna

Architektura komputerów

ARCHITEKTURA KOMPUTERÓW Liczby zmiennoprzecinkowe

INFORMATYKA. Zajęcia organizacyjne. Arytmetyka komputerowa.

Kurs Zaawansowany S7. Spis treści. Dzień 1

Arytmetyka stało i zmiennoprzecinkowa

MIKROKONTROLERY I MIKROPROCESORY

Techniki multimedialne

LICZBY ZMIENNOPRZECINKOWE

Architektura komputerów wer. 7

KOŁO MATEMATYCZNE LUB INFORMATYCZNE - klasa III gimnazjum, I LO

Układy kombinacyjne. cz.2

Pracownia Komputerowa wykład VI

Liczby rzeczywiste są reprezentowane w komputerze przez liczby zmiennopozycyjne. Liczbę k można przedstawid w postaci:

1. Operacje logiczne A B A OR B

Wstęp do informatyki- wykład 2

organizacja procesora 8086

Podstawy Informatyki

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

Temat: Pamięci. Programowalne struktury logiczne.

Liczniki, rejestry lab. 09 Mikrokontrolery 8051 cz. 1

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.

Projekt zespołowy. Część1: Projekt potokowej jednostki przetwarzającej przeznaczonej do realizacji algorytmu FFT. Rok akademicki 2008/2009

Architektura komputerów wer. 3

Zwykle liczby rzeczywiste przedstawia się w notacji naukowej :

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Energoelektroniki i Maszyn Elektrycznych REJESTRY

Transkrypt:

KATEDRA BUDOWY MASZYN MATEMATYCZNYCH POLITECHNIKA WARSZAWSKA PRZEDWSTĘPNY PROJEKT MASZYNY UMC- Opracowali: dr inż. J.Bańkowski dr inż. K*Fiałkowski mgr inż. W.Lutosławska mgr inż. J.Mieścieki mgr inż. M. Muszyński Warszawa, listopad 9 6 4 r

Spis treści I. Dane ogólne str. u. Zapis informacji str. m. Schemat organizacji wewnętrznej str. 3 7. Ważniejsze elementy jednostki centralnej str. 3 7. Urządzenia zewnętrzne str. 4 7. Cykl pracy UMC- str. 5 7 H. Język wewnętrzny UMC- str. 6 7. Programowanie str.

I. DANE OGOLNE. UM- jest maszyną równoległą średniej wielkości* Głównym jej zastosowaniem są obliczenia typu naukowo-technicznego. System zapisu informacji oraz budowa i sposób kodowania rozkazów umożliwiają jednak korzystanie z maszyny przy rozwiązywaniu szerokiej klasy problemów takich, jak np. symulacja układów logicznych, obliczenia statystyczne itp* Szybkość wykonywania operacji przesyłania i dodawania w stałym przecinku jest rzędu 35 ^ / sek. Maszyna jest zrealizowana w technice dynamicznej tranzystorowej. Częstotliwość podstawowa 2 khz, co odpowiada podstawowemu taktowi pracy 5yus. H. ZAPIS INFORMACJI. Podstawową jednostką informacji w UMC- jest 48-bitowe słowo. Może ono zawierać: - liczbę stałoprzeeinkową - liczbę zmiennoprzecinkową - rozkaz - ciąg 4? zmiennych bulowskich - 8 znaków alfanumerycznych. Liczby są przedstawione za pomocą systemu dwujedynkowego. Słowo zawierające liczbę stałoprzeeinkową ma budowę następującą: a47 a o Liczba A przedstawiona za pomocą bitów a^ ma wartość:

i mieści się w przedziale: -247 < A < 247 - Słowo zawierające liczbę zmiennoprzecinkową: E J47 b8 b7 Bity bq r ky stanowią wykładnik E w zapisie ze stałą ^ Może więc on przyjmować wartość: -28 < E < 27 Bity bg - b ^ stanowią manty sę M w zapisie dwujedynkowym 47 = I ( 2 bi - ) 2 8 i-48 Mantysa jest liczbą z przedziału obustronnie otwartego; - < M < Zero przedstawia się jako liczbę o wykładniku E = -28 i dowolnej manty sie M«Słowo zawierające rozkaz: Część operacyjna Adres Adres 2 47 r24 r23 rl2 r Budowa i przeznaczenie poszczególnych elementów części operacyjnej zostanie szczegółowo omówiona w rozdziale VII.

- 3 - HI. SCHEMAT ORGANIZACJI WEWNĘTRZNEJ UMC-. Podany scłiemat obejmuje jedynie te elementy maszyny, które są dostępne dla programisty. Oznaczenia: Z X P A B D L R M - sumator - pamięć operacyjna /ferrytowa/ - pamięć pomocnicza /bębnowa/ - rejestr akumulatora - rejestr modyfikacji - rejestr zewnętrzny rejestr licznika rozkazów - rejestr rozkazów - rejestr mnożnika IV. WAŻNIEJSZE ELEMENTY JEDNOSTKI CENTRALNEJ. Pamięć. UMC- dysponuje dwoma rodzajami pamięci: - pamięć ferrytowa /operacyjna/ o pojemności 496 słów i cyklu odczyt-zapis ^us

4 n. x n - f 8 - pamięć bębnowa /pomocniczy/ o po j emnoścł\ 32768 słów. \ Między pamięcią operacyjną a pomocniczą informacja jest przesyłana w postaci bloków słów. Rejestry. Dostępne programowo rejestry, uwidocznione na schemacie organizacyjnym maszyny dzielą się na: - rejestry, których zawartość wprowadzana jest na lewą stronę sumatora: D, L i R - rejestry, których zawartość wprowadzana jest na prawą stronę sumatora: A i B. Oprócz wymienionych rejestrów na schemacie pokazany jest także rejestr mnożnika M. M e jest on zapisywany ani odczytywany tak jak pozostałe* Programista może doń wprowadzić określoną zawartość jedynie z akumulatora przez przesunięcie łącznej zawartości rejestrów A i M w prawo, a odczytać jego zawartość tylko do A oraz przez analogiczne przesunięcie w lewo. Rejestry A, M, R i D mają długość 48 bitów Rejestr B ma długość 24- bity Rejestr L ma długość 2 bitów. Sumator* Sumator maszyny UMC- jest równoległy, wykonujący działania na liczbach przedstawionych za pomocą systemu dwujedynkowego. Jest on zrealizowany jako sumator sum warunkowych. Dodawanie dwóch liczb pełnej długości trwa 4 takty, liczb 2-bitowych 3 takty* Możliwe jest podawanie argumentów na wejście sumatora takt po takcie, nie czekając na zakończenie poprzedniej operacji* V. URZĄDZENIA ZEWNETRZRE. W skład typowego zestawu urządzeń zewnętrznych UMC- wchodzą:

- 5 - - dalekopis - szybki czytnik taśmy perforowanej - szybka dziurkarka Wszystkie te urządzenia są przystosowane do taśmy pięciokanałowej. Istnieje możliwość dołączenia czytnika i perforatora kart dziurkowanych. Ostatnie dwa urządzenia pozwolą na zastosowanie maszyny do obliczeń statystycznych, a także do rozwiązywania problemów logicznych i symulacji. Maszyna wyposażona jest w rejestr zewnętrzny o długości słowa, tak, że komletowanie słowa po wprowadzeniu i rozkładzie go na znaki przy wyprowadzaniu, zachodzi autonomicznie i wymaga korzystania z jednostki centralnej tylko raz na jedno wprowadzane lub wyprowadzane słowo. VI. CYKL PRACY UMC-. Cykl pracy UMC- przy wykonywaniu typowych rozkazów, takich, jak: (A) + (i) A, Z (A)~X SKOK ZWYKŁY - (fi) L SKOK POŚREDNI - (x)- L WYKONAJ ROZKAZ - (x) -*-R przedstawiony jest na załączonym schemacie.

- 6 - VII. JEŻYK WEWNĘTRZNY UMC- Słowo rozkazowe UMC- o długości 48 bitów składa się w zasadzie z: - 24~bitowej części operacyjnej - dwóch 2-bitowych części adresowyoh. Częśó operacyjna rozkazu składa się z grup kodowych. Kombinacja bitów wewnątrz grupy opisuje pewną elementarną czynność, jaką maszyna ma wykonać w ramach danego rozkazu. Dość duża swoboda w zestawianiu rozkazów z grup kodowych (ograniczona jednak pewnymi regułami), prowadzi do znacznego rozszerzenia zestawu operacji UMC- w porównaniu z maszynami o stałej liście rozkazów. Długość grup kodowyoh nie przekracza 4 bitów. Sprawia to, że przedstawiony w języku wewnętrznym rozkaz ma przejrzystą budowę, a jego analiza, zarówno przez programistę jak przez układy sterowania maszyny jest stosunkowo nieskomplikowana. Budowa części operacyjnej jest następująca: GrupaJ - - l*'-.... ' Bit >47 >46 >44 >43 >42 >4 >39 >38 >37 >36 >35 >34 >33 >32 >3 >3 >29 >28 >27 >26 >25 >24 Adres i. r^y = oznacza operację należącą do grupy stałoprzecinkowych r^rj - oznacza operację należącą do grupy zmiennoprzecinkowych.

- 7-2. Rodzaj operacji. r 46 r 45 r 44 Grupa stałoprzecinkowa Grupa zmiennoprzecinkowa O O O O O o Operacja -go stopnia3^ normalizacja mnożenie przesunięcie zawartości A w lewo cyklicznie Badanie nadmiaru przy operacji -go stopnia Operacja następnika przy operacji -go stopnia Przesunięcie zawartości A w prawo Operacja -go stopnia*^ normalizacja mnożenie dzielenie Zamiany liczby na postać stałoprzećinkową i odrzucenie cz. ułamkowej Operacja bębnowa Sumowanie logiczne przesunięte j*^w prawo zawartości A z argumentem z lewej strony sumatora Przesunięcie zawartości A w lewo z badaniem nadmiaru Sumowanie logiczne przesuniętej ^ " w lewo zawartości A z argumentem z lewej strony sumatora oraz badanie nadmiaru. «/ tzn. operacja opisywana przez pozostałe grupy kodowe cz?ści operacyjnej rozkazu aai/ przesuwanie długie /w tym wypadku/. 3* Odczyty argumentów z lewej strony sumatora. r4-3 r 42 Czynność O O odczytaj X odczytaj R O odczytaj L odczytaj D

4. Zapisy. r4 r4 r39 Czynność Nie zapisuj nigdzie Zapisz do R Zapisz do L Zapisz do X Zapisz do A Zapisz do B Zapisz do D Zapisz do A i X 5* Wskaźnik odczytów. r38 r37 Czynność Nie odczytuj Odczytaj /wprowadź/ lewy argument do sumatora Odczytaj /wprowadź/ prawy argument do sumatora Odczytaj argumenty z obu stron sumatora 6. Zmiana znaku. r 36 r35 Czynność Nie wykonuj zmiany znaku Zmień znak liczby wchodzącej jako lewy argument do sumatora Zmień znak liczby wchodzącej jako prawy argument do sumatora Jeżeli operacja stałoprzećinkowa /tzn.r^ =/ wykonaj iloczyn logiczny. Gdy r^(p zmień znaki obydwu argumentów 7* Odczyty argumentów prawej strony sumatora *54.= Odczytaj rejestr A r34 = Odczytaj rejestr B

- 9-8. Operacie na częściach, adresowych T33 r 32 Czynność Wykonaj operację na słowach pełnej długości flfrkonaj operację na -szych częściach adresowych /bity 2-23/ Wykonaj -operację na 2-gich częściach adresowych /bity - / Skonaj operację na obu częściach adresowych /bity -23/ 9. Operacj e warunkowe r3 r3 Czynność O o 4 * ł Jeżeli wynik operacji da zero, ustaw rejestr warunku W^= Jeżeli wynik operacji da zero, ustaw rejestr warunku W2= Jeżeli wynik operacji jest mniejszy od zera wykonaj skok do adresu Jeżeli wynik operacji jest większy od zera wykonaj skok do adresu 2 Jeżeli wynik operacji jest równy zeru, wykonaj następny rozkaz */ używane tylko w rozkazach skoków r29 r28 Czynność O wykonaj rozkaz bezwarunkowo Wykonaj rozkaz gdy W^= Skonaj rozkaz gdy wi= Wykonaj rozkaz gdy lub W2 = O. Modyfikacje i adresy względne r27 r26 O Czynność Wykonaj modyfikację -go adresu Wykonaj modyfikację 2-go adresu Wykonaj modyfikację -go i 2-go adresu

r25 r24 Czynność Adres -szy jest adresem względnym Adres 2-gi jest adresem względnym Oba adresy są adresami względnymi V U I. PROGRAMOWANIE. Programista - użytkownik posługuje się w zasadzie wyłącznie językiem zewnętrznym. Język ten charakteryzuje się następującymi cechami ogólnymi. * Posiada strukturę zdaniową i jest językiem typu Compiler. 2* Przystsowany jest do obliczeń naukowo-technicznych. 3«Translator umieszczony jest na stałe w pamięci pomocniczej maszyny wraz z podprogramami najczęściej występujących funkcji. 4* Użytkownik ma możliwość rozbudowania zapisanej w pamięci na stałe biblioteki podprogramów zależnie od swoich potrzeb. Opisana w poprzednim rozdziale budowa rozkazu UMC- i związana z nią metoda kodowania operacji jest dogodna dla translatora* Przejrzysty podział części operacyjnej na krótkie grupy kodowe ułatwia proces zestawiania rozkazów w języku - wewnętrznym. W skład translatora wchodzi także macierz operacji dozwolonych w języku wewnętrznym maszyny. Wprowadzenie języka zewnętrznego typu Compiler ogranicza zawsze możliwości maszyny, mimo, że sam język jest dla użytkownika instrumentem niezwykle wygodnym. Dlatego też, w maszynie UMC- umożliwiono programowanie w zewnętrznym języku maszyny /typu "jeden na jeden"/, tzn. komunikowanie się z maszyną za pomocą prostego programu wprowadzającego. Posługując się językiem bezpośrednim doświadczony programista

- możae w pełni wykorzystać możliwości maszyny, budując programy bardziej optymalne /pod względem czasu wykonywania lub zajmowania miejsca w pamięci/ niż translator w czasie zestawiania programu wynikowego*

\ t Cykl pracy maszyny wykonującej następujące rozkazy:. (A) + (x) A,X 2. (A) X 3. Skok zwykły (r)-*~l A* Skok pośredni (x )- L 5* Wykonaj rozkaz (x) R Za podstawową jednostkę czasu przyjęto takt = 5/Usek XQ - bramki odczytu pamięci ferrytowej Xz - bramki zapisu pamięci ferrytowej Z we z z 2 \ > 24 / zespół bramek wejściowych sumatora bity -47 bity - bity 2-23 bity 24-33 - bramka odczytu licznika rozkazów - bramka zapisu licznika rozkazów ^pf h o h z A. Z wy - bramki rejestru adresów pamięci ferrytowej - bramki odczytu rejestrów modyfikacji - bramki odczytu rejestru pomocniczego - bramki zapisu rejestru pomocniczego - bramki odczytu akumulatora - bramki zapisu akumulatora zespół bramek wyjściowych sumatora; bity -47 Z wyo bity - z Z wy 2 wy 24 > bity 2-23 bity 24-35

Cykl pracy