01a
Transkrypt
01a
Wst¦p 3 marca 2008 1 Zasady prowadzenia zaj¦¢ 1.1 Literatura 1. David Patterson, John Hennessy's, Computer Organization and Design, 3rd edition, Elsevier 2006. 2. William Stallings, Organizacja i architektura systemu komputerowego. Projektowanie systemu a jego wydajno±¢, WNT 2004. 3. Linda Null, Julia Lobur, Struktura organizacyjna i architektura systemów komputerowych, Helion 2004 4. B. S. Chalk, Organizacja i architektura komputerów, WNT 1998; 5. M. Morris Mano, Architektura komputerów, WNT 1988. 1.2 wiczenia Zasady prowadzenia i zaliczania ¢wicze« b¦d¡ podane w innym pliku. 2 Czego b¦dziemy si¦ uczy¢? Omawia¢ b¦dziemy ogólne zasady budowy i dziaªania komputerów. Nie b¦dziemy uczyli si¦ architektury konkretnych maszyn - szczegóªowe poznanie architektury procesorów Pentium przekracza zdecydowanie ramy tego wykªadu, który ma by¢ tylko wykªadem wprowadzaj¡cym. Poza tym na ±wiecie istnieje mnóstwo bardzo ró»nych maszyn nazywanych koputerami - od maªych komputerów osobistych do pot¦»nych superkomputerów - omówienie nawet wszystkich typów komputerów byªoby niemo»liwe. Skoncentrujemy si¦ na cechach pojawiaj¡cych si¦ we wszystkich systemach i omawia¢ b¦dziemy raczej architektrury modelowe, cho¢ oczywi±cie odwoªania do konkretnych rzeczywistych rozwi¡za« b¦d¡ si¦ pojawiaªy. Co to jest komputer? Sama nazwa pochodzi od angielskiego sªowa compute, które oznacza oblicza¢. Sugeruje to, »e komputery s¡ urz¡dzeniami przeznaczonymi do oblicze«. Tak oczywi±cie byªo na pocz¡tku. Teraz powiemy raczej, »e komputer to urz¡dzenie, którego zadaniami s¡: • przetwarzanie danych (obliczenia na danych liczbowych, kompresja tekstów, szyfrowanie, ...) • przechowywanie danych (pami¦ci zewn¦trzne, ale nie tylko: nawet podczas przetwarzania danych potrzebna jest funkcja przechowywania, chocia»by chwilowego w rejestrach procesora) 1 • przenoszenie danych (klawiatura-komputer, komputer-monitor, transmisja na dalsze odlegªo±ci) • sterowanie tymi trzema funkcjami (w najprostszych przypadkach przez osoby z zewn¡trz, zazwyczaj przez jednostk¦ steruj¡c¡ zasobami komputera) Komputer zbudowany jest z • jednostki centralnej (CPU) - sterowanie, przetwarzanie danych • pami¦ci gªównej - przechowywanie danych • systemu wej±cia wyj±cia - przenoszenie danych mi¦dzy komputerem a otoczeniem • poª¡czenia systemu (magistrale) Na budow¦ komputera b¦dziemy spogl¡da¢ hierarchicznie. Ju» w tej chwili mo»emy rzuci¢ okiem jak wygl¡da modelowa jednostka centralna (procesor). Skªada si¦ ona znowu z kilku cz¦±ci: • jednostka steruj¡ca (procesor w procesorze) • jednostka arytmetyczno-logicza (ALU) • rejestry • poª¡czenia wewn¦trzne Mo»emy schodzi¢ jeszcze ni»ej. W jednostce steruj¡cej realizowanej metod¡ mikroprogramowania wyró»ni¢ mo»emy: ukªady logiczne szeregowania, rejestry i dekodery jednostki steruj¡cej, pami¦¢ steruj¡c¡. 2.1 Model von Neumanna Wspóªczesne maszyny s¡ budowane zazwyczaj zgodnie z tzw. modelem von Neumanna. Koncepcja ta nale»y do twórców komputera ENIAC (Mauchly, Eckert, von Neumann byª konsultantem). Podobne pomysªy miaª w tym samym czasie (45-46) Alan Turing. przechowywany jest w pami¦ci razem z danymi. Podstawowa cecha: • koncepcja programu (rozkazy wykonywane s¡ szeregowo, z wyj¡tkiem skoków) • program i dane w pami¦ci gªównej, adresowanie • ALU operuje na danych binarnych • cykl pobieranie-dekodowanie-wykonywanie rozkazów • I/O nadworowane jest przez CPU. program Oczywi±cie pojawiªo si¦ wiele dodatkowych rozszerze« (pami¦¢ wirtualna, dane zmiennoprzecinkowe, przerwania, potokowo±¢, wieloprocesorowo±¢...), ale, z grubsza rzecz bior¡c, model obowi¡zuje do dzi±. 3 Szkic programu wykªadu Nasz cel: zobaczy¢ jak zbudowa¢ komputer realizuj¡cy prosty zestaw rozkazów (konkretnie pewnien podzbiór zbioru rozkazów procesora MIPS) z bramek logicznych. W naszej modelowej maszynie powinni±my umie¢ zrealizowa¢ m.in. przetwarzanie potokowe oraz pami¦¢ cache. Przy okazji poznamy zagadnienia zwi¡zane z poni»szymi tematami: 2 • Ukªady kombinacyjne • Ukªady sekwencyjne • Reprezentacja danych • CPU. Architektury zbioru rozkazów • Elementy programowania niskopoziomowego • Systemy pami¦ci • Ukªady wej±cia-wyj±cia • ... 3