pytania ask


  1. W jakim celu jest wykorzystywany algorytm Boothe'a? Na wybranym przykładzie omów jego działanie.

  2. Kiedy operacja uzupełnienia do dwóch przeprowadzana na n-bitowej liczbie całkowitej prowadzi do uzyskania tej samej liczby całkowitej?

  3. Jaka jest struktura oraz założenia działania maszyny von Neumanna? Objaśnij prawo Moore'a.

Struktura maszyny von Neumanna polega na ścisłym podziale komputera na trzy podstawowe części:

Założenia:

System komputerowy zbudowany w oparciu o tą architekturę powinien:

Prawo Moore'a dobrze opisuje ewolucję mikroprocesora i mówi o wzroście wydajności na przestrzeni lat. Mówi ono, że złożoność układów scalonych (liczba tranzystorów), przy zachowaniu minimalnego kosztu składników, będzie się podwajać co 18 miesięcy. Stwierdzenie to zachowuje prawdziwość od czasu wczesnych lat 70. Dzięki tak ogromnemu wzrostowi liczby elementów w jednym układzie, możliwe stało się zbudowanie coraz szybszych i mniejszych komputerów.

  1. Jakie są zasadnicze różnice i podobieństwa pomiędzy architekturą mikroprocesora RISC a CISC.

CISC (ang. Complex Instruction Set Computers):

RISC (Reduced Instruction Set Computers):

  1. Jaką ogólną rolę pełnią rejestry procesora? Co to jest słowo stanu programu?

Rejestry procesora służą do przechowywania tymczasowych wyników obliczeń (rejestry danych), adresów lokacji w pamięci operacyjnej (rejestry adresowe). Na nich wykonywane są prawie wszystkie rozkazy procesora.

Słowo stanu programu - zwane również Rejestrem PSW (ang. Program Status Word) - zawiera kody warunkowe oraz inne informacje o stanie programu zawarte na polach:

13) Na czym polega optymalizacja przetwarzania potokowego w architekturze RISC.

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 cześć pracy związanej z wykonaniem rozkazu. Grupy te są połączone sekwencyjnie - potok (ang. pipe) - i wykonują pracę równocześnie, pobierając dane od poprzedniego elementu w sekwencji. W każdej z tych grup rozkaz jest na innym stadium wykonania.

W 5-stopniowym potoku przejście przez wszystkie stopnie potoku zabiera co najmniej 5 cykli zegarowych. Jednak ze względu na jednoczesną pracę wszystkich stopni potoku, jednocześnie wykonywanych jest 5 rozkazów procesora, każdy w innym stadium wykonania. Oznacza to, że taki procesor w każdym cyklu zegara rozpoczyna i kończy wykonanie jednej instrukcji i statystycznie wykonuje rozkaz w jednym cyklu zegara.

Przez optymalizację rozumie się zmiany dokonywane w kodzie źródłowym lub w trakcie tłumaczenia kodu źródłowego na język maszynowy mające na celu osiągnięcie pożądanych cech przez program wynikowy. Optymalizacji kodu dokonuje się zazwyczaj ze względu na jeden z dwóch czynników:

Umożliwienie sprawniejszego przetwarzania potokowego przez procesor może być uzyskane np. w efekcie usunięcia pojawiających się w programach zależności danych.

  1. Jaka jest różnica między językiem maszynowym a asemblerowym?

Język maszynowy (kod maszynowy) - język programowania , w którym zapis programu wymaga instrukcji bezpośrednio jako liczb, które są rozkazami i danymi bezpośrednio pobieranymi przez procesor wykonujący ten program. Kod maszynowy może być generowany w procesie kompilacji (w przypadku języków wysokiego poziomu) lub asemblacji (w przypadku asemblera). W trakcie procesu tworzenia kodu maszynowego tworzony jest często kod pośredni, który może być zapisywany w pliku o odpowiednim formacie. Kod pośredni poddawany jest linkowaniu, które wygeneruje ostateczny obraz programu w taki sposób, że system operacyjny będzie mógł go wczytać, z ewentualnym dostosowaniem argumentów będących adresami do adresów odpowiednich bloków programu w pamięci, i wykonać zawarte w nim instrukcje.

Języki asemblera (zwyczajowo asemblery) to rodzina języków programowania niskiego poziomu, których jedno polecenie odpowiada zasadniczo jednemu rozkazowi procesora. Języki te powstały na bazie języków maszynowych danego procesora poprzez zastąpienie kodów operacji ich mnemonikami (w językach assemblera jest to składający się z kilku liter kod-słowo, które oznacza konkretną czynność procesora. Przykładem mogą być: "add" (ang. dodaj) czy "sub" (ang. subtract - odejmij)). Dzięki stosowaniu kilkuliterowych skrótów poleceń zrozumiałych dla człowieka pozwala to z jednej strony na tworzenie oprogramowania, z drugiej strony bezpośrednia odpowiedniość mnemoników oraz kodu maszynowego umożliwia zachowanie wysokiego stopnia kontroli programisty nad działaniem procesora.

  1. Jaka jest różnica między przesunięciem arytmetycznym a logicznym?

Przesunięcie logiczne w prawo lub w lewo - przesunięcie bitów słowa w prawo lub w lewo; jednej strony bit jest tracony z drugiej wprowadzane jest zero; używane głównie do izolowania pola wewnątrz słowa.

Przesunięcie arytmetyczne w prawo - dane są traktowane jako liczby całkowite ze znakami przy czym bit znaku nie podlega przesunięciu; bit znaku jest replikowany w najbliższej pozycji bitowej na prawo; liczby w notacji U2 są dzielone przez dwa z odcięciem w przypadku liczb nieparzystych.

Przesunięcie arytmetyczne w lewo - z prawej strony jest wprowadzane zero; bit na prawo od bitu znaku jest tracony; realizacji mnożenia przez dwa pod warunkiem, że nie ma przepełnienia.

  1. Jakie ogólne kategorie funkcji są specyfikowane w rozkazach komputerów?

a) transfer danych:

* przeniesienie danych z jednego miejsca do drugiego

* określenie adresu pamięci, przekształcenie adresu wirtualnego na rzeczywisty, sprawdzenie pamięci podręcznej, zapis/odczyt pamięci

b) arytmetyczne:

- add, subtract, multiply, divide, absolute, negate, increment, decrement

- procesor:

* mogą obejmować transfer danych przed/po wykonaniu działania

* operacja jest wykonywana w ALU

* po wykonaniu następuje ustawienie kodu warunkowego i znacznika stanu

c) logiczne:

AND, OR, NOT, exclusive OR, EQUAL - na poziomie bitowym

AND - maska bitów, XOR - operacja uzupełniania jedynki

Test

Compare, set control variables, shift, rotate

Przesunięcie logiczne w prawo lub w lewo

Przesunięcie arytmetyczne w prawo

Przesunięcie arytmetyczne w lewo

Rotacja w prawo lub lewo - zachowuje wszystkie bity na których jest przeprowadzana; ostatni bit staje się pierwszym i na odwrót;

d) konwersji:

translate, convert

rozkazy zmieniające format lub operujące na formatach danych

e) wejścia-wyjścia:

input (read), output (write), start I/O, test I/O

Procesor:

* wydanie rozkazu modułowi wejścia-wyjścia

* określenie adresu odwzorowanego w pamięci

f) sterowania systemowego:

- rozkazy uprzywilejowane, zarezerwowane do wykorzystania przez system operacyjny

mogą czytać lub zmieniać zawartość rejestru sterowania

g) przekazywania sterowania:

umożliwiają zmianę kolejności wykonywania rozkazów

jump, jump conditional, jump to subordinate, return, execute, skip, skip conditional, halt, wait, no operation

Procesor:

* aktualizowanie licznika programu

* wywołania/powrót z podprogramu - zarządzanie przenoszeniem i powiązaniem parametrów

rozkazy rozgałęziania: bezwarunkowe albo warunkowe

rozkazy pominięcia

rozkazy wywołania procedury

  1. Jakie są wady i zalety posługiwania się formatem rozkazu o zmiennej długości?

Polecenia zdefiniowane dla współczesnych komputerów mogą być:

Dzięki tak ogromnemu wzrostowi liczby elementów w jednym układzie, możliwe stało się zbudowanie coraz szybszych i mniejszych komputerów.

Przy zmiennym formacie rozkazu, zarówno długość słowa rozkazu jak i sposób podziału na pola są różne dla różnych rozkazów.

Przy zmiennym formacie rozkazu, dekodowanie rozkazu następuje stopniowo, jedna faza dekodowania po drugiej.

W każdej fazie dekoduje się ustalone pola rozkazu. Wartości kodu w tych polach decydują o tym jakie pola dekodować w następnej fazie, a wiec na wejścia jakich dekoderów dopuścić bity kolejne dekodowane w następnej fazie.

Przy stwierdzeniu odpowiednich kodów w odpowiednich polach, dekodowanie bieżącego rozkazu ustaje i pobierany jest nowy rozkaz (poprzez odpowiednie sygnały z generatora sygnałów sterujących).

Strukturę dekodera stanowi drzewo dekoderów z bramkami dopuszczającymi odpowiednie bity do odpowiednich dekoderów.

  1. Omów czynniki wpływające na długość formatu rozkazu.

Format rozkazu określa rozkład bitów rozkazu w odniesieniu do jego części składowych. Musi zawierać kod operacji oraz adresy argumentów w jednej z przedstawionych wcześniej postaci.

Format rozkazu musi w sposób jawny lub domyślny określać tryb adresowania każdego argumentu.

Im krótszy rozkaz, tym zajmuje mniej pamięci i może być szybciej wczytany. Dłuższe rozkazy pozwalają na umieszczenie większej ilości informacji lub dłuższych adresów. Długość rozkazu powinna być wielokrotnością jednostki transferu (najczęściej słowa), choć możliwe są wyjątki

od tej reguły. Słowo powinno być wielokrotnością długości znaku, jeśli operacje na znakach są brane pod uwagę (w maszynach do obliczeń numerycznych to może nie mieć dużego.

Format rozkazu (angielskie instruction format), układ pól składających się na rozkaz maszynowy: część operacyjna, część adresowa, pole identyfikacji rejestru uniwersalnego, pole modyfikacji adresu itp.

  1. Wymień i zwięźle omów dwa podejścia do wielokrotnych przerwań.

  1. uniemożliwienie przerwań jeśli jakiekolwiek przerwanie jest przetwarzane

- procesor ignoruje żądanie przerwania

- rozwiązanie preferowane dla sekwencyjnych przerwań

- nie uwzględnia się ważności przerwań i zadań krytycznych zależnych od czasu

  1. określenie priorytetu obsługi przerwań

- przerwanie o wyższym priorytecie obsługi przerywa realizację przerwania o niższym priorytecie

  1. Omów sekwencję zdarzeń następujących po rozpoznaniu przez procesor sygnału przerwania.

Przerwanie (ang. interrupt) lub żądanie przerwania (IRQ - Interrupt ReQuest) - sygnał powodujący zmianę przepływu sterowania, niezależnie od aktualnie wykonywanego programu. Pojawienie się przerwania powoduje wstrzymanie aktualnie wykonywanego programu i wykonanie przez procesor kodu procedury obsługi przerwania (ang. interrupt handler).

Co się dzieje, gdy zostanie zgłoszone przerwanie?

  1. Sprawdzamy źródło przerwania, aby ustalić jego priorytet. (arbitraż programowy lub sprzętowy - równoległy, szeregowy bądź mieszany)

  2. Zapamiętujemy stan maszyny. Czyli - zapamiętujemy rejestry specjalne i ogólne w jakimś bezpiecznym miejscu (pewnie na stosie), wrzucamy na stos również obecną wartość PC1). Dzięki temu po zakończeniu obsługi przerwania będzie można wrócić do poprzednich zajęć.

  3. Wykonujemy kod znajdujący się w adresie, który jest przypisany dla danego źródła przerwania.

  1. Jakie są korzyści wynikające ze stosowania architektury z wieloma magistralami w porównaniu z architekturą opartą na jednej magistrali?

Główną korzyścią jest wzrost wydajności systemu poprzez osobną obsługę urządzeń wolniejszych i szybszych. W architekturze międzypiętrowej jest to wdrożone poprzez zastosowanie magistrali szybkiego przesyłania, a w magistrali PCI poprzez zastosowanie szybkich sterowników wejścia/wyjścia i brak zależności od procesora.

33) Wymień i omów grupy funkcjonalne linii sygnałowych magistrali PCI?

Magistrala PCI posiada zdefiniowanych 49 obowiązujących linii sygnałowych realizujących

funkcje:

a) wyprowadzenia funkcjonalne - wyprowadzenia zegara i przywracania (reset)

b) wyprowadzania adresu i danych - 32 linie multipleksowane adresów i danych oraz linie wykorzystywane do interpretowania i określania ważności linii sygnałowych przenoszących dane i adresy

c) wyprowadzania sterowania interfejsu - koordynowanie transakcji i wspołdziałania między jednostkami inicjującymi a docelowymi

d) wyprowadzania arbitrażowe - każda jednostka nadrzędna PCI ma własną parę linii arbitrażowych łączących ją z arbitrem magistrali PCI

e) wyprowadzania informujące o błędach - informowanie o błędach parzystości

Ponadto magistrala posiada 51 opcjonalnych linii sygnałowych podzielonych na następujące grupy:

a) wyprowadzenia przerwania - przewidziane dla każdego urządzenia muszącego generować zapotrzebowanie na usługę. Własna linia przerwań łącząca ze sterownikiem przerwań

b) wyprowadzenia obsługi pamięci podręcznej

c) wyprowadzenia rozszerzenia magistrali 64-bitowej - 32 linie multipleksowane adresów i danych

d) wyprowadzenia testowania granic JTAG

  1. Omów metody koordynacji czasowej zdarzeń zachodzących na magistrali

Przy koordynacji synchronicznej występowanie zdarzeń na magistrali jest wyznaczone przez zegar. Linia zegarowa magistrali transmituje regularną sekwencję kolejno zmieniających się zer i jedynek o takim samym czasie trwania. Pojedyncza transmisja 1-0 jest nazywana cyklem zegara lub cyklem magistrali. Wszystkie inne urządzenia dołączone do magistrali mogą odczytywać stan linii zegarowej a wszystkie zdarzenia rozpoczynają się równocześnie z cyklem zegara.

Przy koordynacji asynchronicznej zdarzenie na magistrali jest zależne od zdarzenia poprzedniego. Zapewnia to większą elastyczność, ale jest trudniejsze do wdrożenia.

Koordynacja synchroniczna:

Koordynacja asynchroniczna:

  1. Opisz zasadnicze funkcje realizowane przez mostki: północny i południowy chipsetów.

Mostek północny ma za zadanie komunikację z:

- pamięcią operacyjną poprzez magistralę pamięci,

- procesorem za pomocą magistrali FSB (Front Side Bus),

- magistralami AGP, PCI, ISA.

Może także zawierać kontroler grafiki. Musi być ściśle dopasowany do konkretnej platformy.

Innymi słowy mostek północny odpowiada za komunikację pomiędzy procesorem, grafiką i pamięcią.

Mostek południowy zawiera:

- kontrolery napędów ATA,

- kontrolery stacji dyskietek,

- kontrolery USB,

- kontrolery urządzeń wejścia/wyjścia.

Może także zawierać kontrolery dźwięku, dysków SATA, magistrali IEEE 1394 oraz kontrolery kart sieciowych. Może także być wykorzystywany w różnych platformach. Innymi słowy mostek południowy odpowiada za komunikację z urządzeniami zewnętrznymi (np. HDD, FDD, PCI, USB, itp.).

  1. Opisz zasadnicze elementy funkcjonalne i magistrale tworzące mostek północny.

  1. do komunikacji między mostkami, w przypadku nVidii, zastosowano licencjonowaną magistralę AMD, zwaną HyperTransport. Jest to niezwykle wyspecjalizowana szyna danych. Jej szerokość wynosi jedynie 8 bitów (osiem przewodów), co znacznie ułatwia montaż chipsetu na płycie (mniejsza liczba połączeń), lecz zapewnia odpowiedni transfer danych dzięki bardzo szybkiemu taktowaniu.

  2. Magistrala procesor-pamięć, czyli ważna szyna danych łącząca się z chipsetem. Rodzaj taktowania oraz tryb pracy zależy przede wszystkim od rodzaju stosowanej pamięci. Kiedyś były to układy SDRAM, obecnie używa się DDR SDRAM, które pozwalają na pracę w zakresie od 100 do 400 MHz, ale przesył danych jest dwukrotnie szybszy niż w zwykłych pamięciach SDRAM.

  3. Magistrala procesor-chipset odpowiada za komunikację procesora ze światem zewnętrznym i nie może powodować przestojów danych nawet podczas intensywnego wykorzystania centralnej jednostki obliczeniowej.

  4. Szyna AGP - kolejne połączenie z mostkiem północnym. Standard ten wprowadzony przez Intel jako następca złącza PCI był pierwszą magistralą pracującą z szybkością 66 MHz. Ponadto możliwy stał się przesył danych w bardziej efektywny sposób dzięki czemu podwojono transfer.

Ponadto mostek północny budują również:

1) kontrolery pamięci

2) kontroler magistrali systemowej

3) kontroler portu karty grafiki

4) zintegrowana karta graficzna

  1. Jaka jest różnica między pamięciami DRAM i SRAM pod względem budowy oraz zastosowań.

Pamięci RAM można podzielić na:

  1. Statyczne (SRAM):

- wartości binarne są przechowywane za pomocą przerzutnikowych konfiguracji bramek logicznych

- zachowują tak długo dane, jak długo są zasilane

- ulotne

- statyczne pamięci RAM są nieco szybsze niż dynamiczne

  1. Dynamiczne (DRAM):

- wykonane z komórek, które przechowują dane podobnie jak kondensatory przechowują ładunek elektryczny

- wymagają okresowego odświeżania (układów odświeżania)

- ulotne

- dynamiczna pamięć RAM jest gęściej upakowana (mniejsze komórki) i tańsza niż odpowiadająca jej statyczna pamięć RAM

  1. Czym różni się pamięć SDRAM od zwykłej pamięci DRAM?

Technologia synchronicznej pamięci DRAM bazuje na rozwiązaniach stosowanych w pamięciach dynamicznych, zastosowano tu jednak synchroniczne przesyłanie danych równocześnie z taktem zegara. Funkcjonalnie SDRAM przypomina typową DRAM, zawartość pamięci musi być odświeżana. Jednak znaczne udoskonalenia, takie jak wewnętrzny pipelining czy przeplot (interleaving) sprawiają, że ten rodzaj pamięci oferuje bardzo wysoką wydajność. Warto także wspomnieć o istnieniu programowalnego trybu burst, gdzie możliwa jest kontrola prędkości transferu danych oraz eliminacja cykli oczekiwania (wait states).

  1. Omów różnice pomiędzy dostępem do pamięci sekwencyjnym, bezpośrednim a swobodnym?

a) dostęp sekwencyjny -

- dostęp liniowy blok po bloku wprzód lub wtył

- czas dostępu zależy od pozycji bloku względem pozycji bieżącej

- np. taśmy

b) dostęp bezpośredni

- każdy blok ma unikalny adres

- czas dostępu realizowany przez kok do najbliższego otoczenia i sekwencyjne przeszukiwanie

- np. dysk magnetyczny

c) dostęp swobodny

- każdy adresowalna lokacja w pamięci ma unikalny, fizycznie wbudowany mechanizm

adresowania

- czas dostępu nie zależy od poprzednich operacji i jest stały

  1. Jakie są ogólne zależności pomiędzy czasem dostępu, kosztem pamięci a pojemnością?

W hierarchicznym układzie pamięci występują współzależności między szybkością, pojemnością a kosztem. Takie współzależności występują również kiedy rozpatrujemy organizację komórek pamięci i funkcjonalne układy logiczne zawarte w mikroukładzie. W przypadku pamięci półprzewodnikowych jednym z kluczowych problemów projektowych jest liczba bitów danych, które mogą być jednocześnie zapisywane lub odczytywane. W przypadku organizacji, w której fizyczne uporządkowanie komórek w układzie jest takie samo, jak uporządkowanie logiczne (postrzegane przez procesor) słów w pamięci, komórki są zorganizowane w postaci W słów B-bitowych. Natomiast w przypadku organizacji 1-bitowej w określonym czasie zapisuje się lub odczytuje tylko jeden bit.

  1. Jakie są różnice między odwzorowaniem bezpośrednim, skojarzeniowym i sekcyjno-skojarzeniowym?

Odwzorowanie obszarów (bloków) pamięci głównej w linie pamięci podręcznej:

  1. Jakie są różnice między pamięciami EPROM, EEPROM a pamięcią błyskawiczną (flash)?

EPROM - odczytywalna i zapisywalna elektrycznie; przed zapisem wszystkie komórki muszą być wymazane

Flash Memory - pamięć pośrednia pomiędzy EPROM i EEPROM

EEPROM - zapisywalna bez wymazywania poprzedniej zawartości

  1. Czym różni się pamięć ulotna od odświeżanej?

Pamięci ulotne przechowują dane tak długo, jak długo włączone jest ich zasilanie.

Czym jest odświeżanie? Jest to ponowne zapisywanie wcześniej zapisanej w pamięci informacji.

Dlaczego jest to potrzebne? Dlatego, że pamięć DRAM jest zbudowana na kondensatorach, a te z czasem się rozładowują. Czyli po jakimś czasie nasze informacje by zniknęły.

Problemu by nie było, gdybyśmy używali równomiernie całej pamięci, gdyż wtedy wszystkie dane byłyby na bieżąco nadpisywane. Ponieważ jednak tak się nie dzieje, i często jesteśmy w takiej sytuacji, że jakieś informacje czekają dłuższy czas na użycie, to trzeba odświeżać.

Odświeżanie musi się odbywać z dość dużą częstotliwością, tak, aby nie przekroczyć czasu krytycznego - czyli takiego, po którym nie możemy już być pewni, czy zapisana tam informacja jest tą, którą my tam zapisaliśmy.

Warto wziąć pod uwagę to, że odświeżanie może dość skutecznie zająć procesor, któremu zostanie niewiele czasu na zrobienie czegokolwiek innego.

  1. Co to jest bit parzystości? Omów jego wykorzystanie używając wykresu Venna.

Bitem parzystości nazywamy bit kontrolny, który przyjmuje wartość 1, gdy liczba jedynek w przesyłanej wiadomości jest nieparzysta lub 0, gdy odwrotnie. Innymi słowy - bit parzystości sprawia, że wiadomość ma zawsze parzystą liczbę jedynek.

0x08 graphic

a)przypisujemy 4 bity danych przedziałom wewnętrznym

b)pozostałe przedziały wypełniamy bitami parzystości. Bity parzystości wybieramy tak, że całkowita liczba 1 w każdym okręgu jest parzysta.

c)powstaje błąd

d)sprawdzamy bity parzystości. Jest sprzeczność w okręgach A i C. Dobrze w B. Znamy pozycję złego bitu możemy go poprawić

  1. Omów główne sposoby dostępu do jednostek danych zgromadzonych w pamięci komputera?

To samo co w pyt. 48?

  1. Omów miary wydajności pamięci?

a) czas dostępu:

- dostęp nieswobodny - czas potrzebny na umieszczenie mechanizmu odczytu-zapisu w pożądanym miejscu

b) czas cyklu pamięci:

c) szybkość transferu:

- szybkość z jaką dane mogą być wprowadzane do jednostki pamięci lub z niej wyprowadzane

  1. W przypadku pamięci podręcznej o odwzorowaniu bezpośrednim adres w pamięci głównej składa się z trzech pól. Wymień i zdefiniuj te pola.

Każdy adres pamięci głównej można widzieć jako składający się z trzech pól:

•najmniej znaczące bity określają położenie bajtu w bloku pamięci

•pozostałe s bitów określa jeden z 2S bloków pamięci głównej.

•układy logiczne pamięci podręcznej interpretują te s bitów jako: znacznik - s-r bitów pole linii - r bitów

•to ostatnie pole identyfikuje jeden z m = 2r wierszy pamięci podręcznej

  1. W przypadku pamięci podręcznej o odwzorowaniu skojarzeniowym adres w pamięci głównej składa się z dwóch pól. Wymień i zdefiniuj te pola.

Sterujące układy logiczne pamięci podręcznej interpretują adres pamięci jako znacznik i pole słowa. Pole znacznika jednoznacznie określa blok pamięci głównej. W celu stwierdzenia, czy blok znajduje się w pamięci podręcznej, sterujące układy logiczne pamięci podręcznej muszą jednocześnie zbadać zgodność znacznika każdego wiersza.

  1. W przypadku pamięci podręcznej o odwzorowaniu sekcyjno-skojarzeniowym adres w pamięci głównej składa się z trzech pól. Wymień i zdefiniuj te pola.

Adres przekazywany przez procesor jest rozkładany na trzy składniki:
- Słowo - oznacza miejsce, pozycję danej w linijce cache lub bloku RAM (analogicznie jak w innych sposobach odwzorowania)
- Sekcja - wyznacza jednoznacznie dwie linijki zgrupowane w jednej sekcji, w której dany blok może być odwzorowany.
- Znacznik - jest wykorzystywany do określenia, czy potrzebne procesorowi dane są aktualnie w cache i w której z linijek w sekcji są zapisane. W wypadku pamięci dwudrożnej w celu określenia trafienia należy dokonać dwóch porównań znaczników.

63) Opisz algorytm zastępowania LRU. Czy łatwo go zaimplementować?

Algorytm LRU (last recently used - najdawniej używany) - algorytm określa, że należy zastąpić ten blok w sekcji który pozostawał w pamięci podręcznej najdłużej bez odwoływania się do niego.

66) Podaj zasadę lokalności odniesień. Jak zasada lokalności odniesień wiąże się z użyciem wielu poziomów pamięci podręcznej?

Przydatność pamięci podręcznej zależy od stopnia lokalności odniesień do danych w programie:

- lokalność czasowa: dane raz użyte niedługo zostaną użyte ponownie (warto je zachować w szybszej pamięci)

- lokalność przestrzenna: jeśli w programie użyto jakichś danych to za chwilę zostaną użyte dane sąsiadujące w pamięci (warto pobierać do pamięci podręcznej całe bloki)

Miarą lokalności odniesień w trakcie wykonywania programu jest współczynnik trafień (hit ratio) czyli proporcja trafień do chybień.

- Zastosowanie pamięci podręcznej przynosi zazwyczaj wzrost zazwyczaj wydajności, gdyż wiele programów ma w sposób naturalny wysoki stopień lokalności odniesień (w praktyce stosunek trafień do chybień sięga nawet powyżej 90%)

- Chcąc zwiększać wydajność programów dzięki optymalnemu wykorzystaniu pamięci podręcznej należy maksymalizować stopień lokalności odniesień w kodzie (grupować odniesienia do tych samych i sąsiadujących danych w jedno miejsce)

69) Wymień i omów trzy ogólne klasyfikacje urządzeń zewnętrznych. Jakie są główne funkcje modułu wejścia-wyjścia? Jakie są przesłanki wskazujące na niezbędność modułu wejścia-wyjścia?

Kategorie urządzeń zewnętrznych:

- Przeznaczone do odczytywania przez człowieka - drukarki, terminale wizyjne

- Przeznaczone do odczytywania przez maszynę - dyski i taśmy magnetyczne, czujniki

- Komunikacyjne - odpowiednie do komunikowania się z odległymi urządzeniami

Rodzaje urządzeń zewnętrznych:

- wejściowe: klawiatura, mysz, dysk, skaner

- wyjściowe: monitor ekranowy, drukarka

- komunikacyjne: modem, karta sieciowa

Główne funkcje modułu wejścia-wyjścia:

* Sterowanie i taktowanie

- koordynowanie przepływu informacji między zasobami wewnętrznymi a urządzeniami zewnętrznymi

- w dowolnym przedziale czasu procesor może komunikować się z jednym lub wieloma urządzeniami zewnętrznymi wg nieprzewidywalnego schematu, zależnie od potrzeb programu w odniesieniu od wejścia lub wyjścia

- Zasoby wewnętrzne, takie jak pamięć główna i magistrala systemowa, mogą być wykorzystywane wspólnie przez różne operacje, w tym operacje we-wy danych. Jeśli system wykorzystuje magistralę, to każde z oddziaływań między procesorem a modułem we-wy wymaga jednego lub wielu arbitraży magistralowych

- Układ we-wy musi koordynować przepływ informacji między zasobami wewnętrznymi a urządzeniami zewnętrznymi

- Może być potrzebny oddzielny zegar taktujący przesyłanie danych do/z urządzenia zewnętrznego

- Sygnały sterujące sprawdzają i ustawiają odpowiedni stan urządzenia

* Komunikacja z procesorem

- Dekodowanie rozkazu, przesyłanie danych oraz informacji o stanie, rozpoznawanie adresu urządzeń peryferyjnych.

* Komunikacja z urządzeniem zewnętrznym

- Rozkazy, informacje o stanie, dane

* Buforowanie danych

- różne prędkości transferu danych do i z pamięci głównej lub procesora oraz urządzeń peryferyjnych.

* Wykrywanie błędów

- Defekty mechaniczne lub elektryczne

- Zmiana wzoru bitowego danych (kody korekcyjne, bit parzystości).

Na konieczność funkcjonowania modułu wskazują:

- znaczna różnorodność urządzeń peryferyjnych

- mniejsza szybkość transmisji danych do i z urządzeń peryferyjnych w porównaniu z procesorem lub w niektórych przypadkach odwrotnie (niedopasowanie szybkości)

- różnorodność formatów danych i długości słów wykorzystywana przez urządzenia peryferyjne.

71) Omów budowę i zasady działania klawiatury

Razem z monitorem najbardziej powszechny środek współpracy między komputerem a użytkownikiem. Podstawową wymienianą jednostką jest znak. Z każdym znakiem wiąże się kod, zwykle o długości 7 do 8 bitów. Najczęściej używanym kodem jest kod 7-bitowy nazywany ASCII. Każdy znak w tym kodzie reprezentowany jest przez unikalny 7-bitowy kod binarny. Możliwe jest więc reprezentowanie 128 różnych znaków. W kodzie tym występują 2 typy znaków:

- drukowalne - znaki alfabetu, cyfry i znaki specjalne, które mogą być drukowane na papierze lub wyświetlana na ekranie

- kontrolne - niektóre znaki kontrolne są używane przy drukowaniu lub wyświetlaniu znaków np. znak powrotu karetki; inne znaki kontrolne związane są z procedurami komunikacyjnymi.

W przypadku wejścia z klawiatury naciśnięcie klawisza powoduje:

    1. Wygenerowanie sygnału elektrycznego, który jest interpretowany przez przetwornik w klawiaturze i tłumaczony na wzór bitowy odpowiedniego kodu ASCII

    2. Wzór bitowy jest następnie transmitowany do modułu we-wy w komputerze. W samym komputerze tekst może być przechowywany w tym samym kodzie ASCII.

W przypadku wyjścia:

      1. Kody ASCII znaków są transmitowane z modułu we-wy do urządzenia zewnętrznego.

      2. Przetwornik w tym urządzeniu interpretuje kod i wysyła niezbędne sygnały elektryczne do urządzenia wyjściowego w celu albo wyświetlenia, albo wykonania wymaganej funkcji sterującej.

72) Wymień i opisz dokładnie trzy techniki realizowania operacji we-wy.

1. Programowane wejście-wyjście - (wszystkim steruje procesor) dane są wymieniane między procesorem a modułem we-wy. Procesor wykonuje program, który umożliwia mu bezpośrednie sterowanie operacją we-wy, włącznie z rozpoznawaniem stanu urządzenia, wysyłaniem rozkazu odczytu lub zapisu oraz transferem danych. Gdy procesor wydaje rozkaz modułowi we-wy, musi poczekać na zakończenie operacji we-wy. Jeśli procesor jest szybszy niż moduł we-wy, oznacza to stratę czasu procesora.

2. Wejście-Wyjście sterowane przerwaniami - (procesor zajmuje się obsługą urządzeń które zgłaszają stan przerwania) procesor wydaje rozkaz we-wy, po czym wykonuje inne rozkazy, co z kolei ulega przerwaniu przez moduł we-wy, gdy zakończył on swoją pracę.

3. Bezpośredni dostęp do pamięci - moduł we-wy i pamięć główna wymieniają dane bezpośrednio, bez angażowania procesora. Jest to rozwiązanie alternatywne w stosunku do dwóch pierwszych gdzie zarówno w przypadku programowego we-wy, jak i sterowanego przerwaniami procesor jest odpowiedzialny za pobieranie danych z pamięci głównej (wyjście) oraz zapisywanie ich w tej pamięci (wejście).

  1. Omów działanie modułu DMA. Gdy moduł ten przejmuje kontrole nad magistralą i ją zachowuje, co wówczas robi procesor?

Działanie DMA.

* rodzaj operacji: odczyt lub zapis

* adres urządzenia wejścia-wyjścia

* adres pamięci przeznaczonej dla operacji

* liczbę bajtów (słów) do odczytania/zapisania

  1. Omów strukturę i zasadę działania interfejsu równoległego SCSI.

Small Computer System Interface - równoległa magistrala danych przeznaczona do przesyłania danych między urządzeniami.

SCSI jest lokalną magistralą wejścia-wyjścia w systemach komputerowych wykorzystywaną do dołączania napędów dyskowych, stacji taśm magnetycznych, skanerów i innych podobnych urządzeń. W ramach przyjętego standardu zmiana rodzaju i konfiguracji urządzeń peryferyjnych jest możliwa bez wymiany podstawowego sprzętu i oprogramowania systemowego.

Do magistrali można dołączyć kilka jednostek inicjujących czyli urządzeń SCSI mogących zainicjować proces we-wy oraz kilka jednostek docelowych czyli urządzeń wybieranych do wykonania operacji. W systemach SCSI, przy ubieganiu się o dostęp do magistrali, stosowany jest mechanizm rozproszonego arbitrażu.

W ten sposób urządzeniom inicjującym umożliwiono współbieżne prowadzenie procesów wejścia-wyjścia. Od wszystkich urządzeń SCSI wymaga się zdolności do asynchronicznego przesyłania informacji. Dodatkowo - ale wyłącznie w fazie transmisji danych - może być stosowany tryb synchroniczny.

W zależności od sposobu realizacji połączeń magistralowych sygnały przesyłane są względem wspólnej masy lub różnicowo.

Struktura rozkazów podzielona jest na trzy kategorie: obowiązkowe, dodatkowe i specyfikowane przez producenta. Urządzenia SCSI powinny realizować wszystkie rozkazy obowiązkowe przewidziane dla danego typu urządzenia, a ponadto mogą reagować na inne polecenia potrzebne do ich obsługi.

W zdefiniowanym zestawie rozkazów znalazły się i takie, które umożliwiają systemom operacyjnym pobieranie - od dołączonych urządzeń SCSI informacji niezbędnych do automatycznego zainicjowania ich pracy. Sformalizowana sekwencja zgłoszeń identyfikuje typ urządzenia, jego charakterystyki oraz wszystkie ustawiane parametry. Kolejne zgłoszenia określają gotowość urządzenia do pracy, typ jego nośników informacji i inne związane z urządzeniem dane.

W znakomitej większości konfiguracji do magistrali poprzez kontroler podłączony jest jeden komputer oraz urządzenia pamięci masowej (dyski twarde oraz napędy taśmowe). Każde z urządzeń podłączonych do magistrali SCSI posiada unikalny w obrębie magistrali adres - identyfikator (ang. SCSI ID).

  1. Omów strukturę i zasadę działania interfejsu szeregowego FireWire.

FireWire to standard łącza szeregowego umożliwiającego szybką komunikację i synchroniczne usługi w czasie rzeczywistym. Jest zdefiniowany w dokumencie IEEE 1394. Choć w swojej filozofii jest podobny do USB to przeznaczony jest do zastosowań bardziej profesjonalnych, tzn. do takich gdzie transmisja na poziomie 12 Mbps jest niewystarczająca.

FireWire jest powszechnie używany do łączenia kamer wideo i urządzeń pamięci masowej. Stosuje się go zamiast popularniejszego USB z powodu większej szybkości transmisji oraz dlatego, że nie wymaga użycia komputera. Nie ma również konieczności wysyłania sygnałów potwierdzających aktywność urządzenia po drugiej stronie.

FireWire odmiennie niż USB zarządza magistralą - nie wymaga kontrolera magistrali czyli hosta. W standardzie USB magistralą zarządza kontroler (host), na jednej magistrali może pracować tylko jeden host i jest nim zawsze komputer. W FireWire urządzenia są równouprawnione, co pozwala na transmisję bezpośrednio pomiędzy urządzeniami dołączonymi do magistrali, bez pośrednictwa komputera. Dzięki temu możliwe jest z jednej strony łączenie przy pomocy magistrali FireWire kilku komputerów ze sobą, z drugiej strony możliwa jest bezpośrednia komunikacja między urządzeniami, na przykład przesyłanie danych pomiędzy skanerem i drukarką bez używania pamięci lub procesora komputera.

Zalety FireWire:

  1. Omów strukturę i zasadę działania interfejsu szeregowego USB.

(Universal Serial Bus - uniwersalna magistrala szeregowa).

USB to rodzaj sprzętowego portu komunikacyjnego komputerów, zastępującego stare porty szeregowe i porty równoległe. Jest uniwersalny w tym sensie, że można go wykorzystać do podłączenia do komputera wielu różnych urządzeń. Urządzenia podłączane w ten sposób mogą być automatycznie wykrywane i rozpoznawane przez system, przez co instalacja sterowników i konfiguracja odbywa się w dużym stopniu automatycznie. Możliwe jest także podłączanie i odłączanie urządzeń bez konieczności wyłączania czy ponownego uruchamiania komputera.

Zalety USB:

Komputer pełni funkcję tzw. hosta USB. Jako gospodarz pyta on regularnie wszystkie podłączone przez USB urządzenia, tak zwanych klientów, czy są nowe dane do transmisji. Goście sami z siebie nie mogą wysyłać żadnych danych. Ta procedura zwana jest pollingiem (ang. odpytywanie).

  1. Omów różnice pomiędzy monitorami LCD oraz CRT.

CRT (z ang. Cathode-Ray Tube) - oznaczenie kineskopu z działem elektronowym. W języku polskim pod tym słowem przyjęto potoczną nazwę skrótową, synonim dla wyrażenia: monitor CRT - czyli oznaczenie dla modeli monitorów komputerowych, których ekran oparty jest na kineskopie.

Właściwe określenie to monitory kineskopowe.

W monitorach tego rodzaju do wyświetlania obrazu używa się wiązki elektronów wystrzeliwanej z działa elektronowego (najczęściej katoda), która odchylana magnetycznie (przy pomocy cewek odchylania poziomego i pionowego) pada na luminofor, powodując jego wzbudzenie do świecenia.

Wyświetlacz ciekłokrystaliczny, LCD (ang. Liquid Crystal Display) - urządzenie wyświetlające obraz, którego zasada działania oparta jest na zmianie polaryzacji światła na skutek zmian orientacji cząsteczek ciekłego kryształu pod wpływem przyłożonego pola elektrycznego.

Wszystkie rodzaje wyświetlaczy ciekłokrystalicznych składają się z czterech podstawowych elementów:

Zasadę działania wyświetlacza najłatwiej jest prześledzić na przykładzie pasywnego wyświetlacza odbiciowego, z fazą nematyczną, skręconą. W wyświetlaczu tym światło wnikające do niego jest wstępnie polaryzowane pionowo przez filtr polaryzacyjny (1). Następnie światło przechodzi przez szklaną elektrodę (2) i warstwę ciekłego kryształu (3). Specjalne mikrorowki na elektrodach (2 i 4) wymuszają takie uporządkowanie cząsteczek tworzących warstwę ciekłokrystaliczną, aby przy wyłączonej elektrodzie nastąpiło obrócenie polaryzacji światła o 90°. Dzięki temu światło może przejść przez folię (5) pełniącą rolę analizatora światła, która przepuszcza tylko światło spolaryzowane poziomo, odbić się od lustra (6), przejść ponownie przez analizator (5), ulec ponownej zmianie polaryzacji o 90° na warstwie ciekłego kryształu i ostatecznie opuścić bez przeszkód wyświetlacz, przez górną folię polaryzacyjną. Po przyłożeniu napięcia do elektrod, generowane przez nie pole elektryczne wymusza taką zmianę uporządkowania cząsteczek w warstwie ciekłego kryształu, że nie obraca ona polaryzacji światła. Powoduje to, że światło nie przechodzi przez analizator, co daje efekt czerni.

Monitor CRT

Monitor LCD

Egzamin

9) Opisz strukturę i podstawowe funkcje karty graficznej.

Podstawowym zadaniem karty graficznej jest:

Budowa karty graficznej:

Większość kart graficznych (i wszystkie współczesne) składają się z następujących elementów:

Wiele z kart graficznych posiada także:

Najważniejsze funkcje:

- Technologia przetwarzania i oświetlenia (Transform and Lighting), T&L - W karcie graficznej jest odpowiedzialny za przyspieszanie obliczeń animacji. Jego brak obciąża procesor, przez co znacznie zmniejsza się płynność renderowania grafiki trójwymiarowej. Technologię T&L obecnie zastępuje cieniowanie (Shader)

- Shader (cieniowanie) - Program opisuje właściwości pikseli oraz wierzchołków. Cieniowanie pozwala na skomplikowane modelowanie oświetlenia i tekstur na. Jest jednak wymagające obliczeniowo i dlatego dopiero od kilku lat sprzętowa obsługa cieniowania jest obecna w kartach graficznych dla komputerów domowych. Biblioteki graficzne Direct3D i OpenGL używają trzech typów cieniowania:

Vertex Shader (Cieniowanie wierzchołkowe)
Geometry Shader (cieniowanie geometryczne)
Pixel Shader lub Fragment Shader (cieniowanie pikseli)

Obecnie, z uwagi na wymagania bibliotek DirectX w wersji 10, zniknął podział panujący dotychczas na Pixel i Vertex Shader. Obliczenia, jakimi te odrębne jednostki się zajmowały, są teraz wykonywane przez jednolite jednostki obliczeniowe, które są dynamicznie przydzielane do takiego typu obliczeń, jaki jest aktualnie potrzebny. Rozwiązanie takie zostało nazwane przez ATI Stream Processors a przez nVidię Unified Shaders.

- HDR rendering, rendering z użyciem szerokiego zakresu dynamicznego (High Dynamic Range Rendering) - Sposób generowania sceny trójwymiarowej przy użyciu większego niż normalnie zakresu jasności. Efektem tej technologii jest scena z realistycznym oświetleniem.

- Antyaliasing - Technologia wygładzanie krawędzi (łuków, okręgów oraz innych krzywych) poprzez nałożenie dodatkowych pikseli o mniejszym nasyceniu i jasności niż piksele obiektu oraz poprzez niewielką zmianę położenia pikseli w pobliżu krawędzi. Ze względu na coraz większe rozdzielczości monitorów (a tym samym mniejsze rozmiary plamek) antyaliasing nie jest już tak potrzebny. Szacuje się że za jakiś czas nie będzie już potrzebny.

- Efekty cząsteczkowe - Symulacje zjawisk (takich dym, pył, deszcz, ogień) budowanych z małych wirtualnych cząsteczek traktowanych jak obiekty punktowe które podlegają prawom fizyki oraz interakcji z otoczeniem.

- Mapowanie wypukłości (bump mapping) - Sposób teksturowanie obiektów symulujący wypukłości powierzchni, bez ingerencji w geometrię obiektu trójwymiarowego. Efektem może być gładka kula wyglądająca jak by była nierówna.

- Filtrowanie anizotropowe - Technika filtrowania tekstur poprawiająca ich jakość.

  1. Wymień podstawowe funkcje systemu BIOS.

  1. Na czym polega test POST wykonywany przez BIOS?

POST (ang. Power-On Self Test) - rodzaj testu poprawności działania podstawowych podzespołów komputera, routera czy drukarki wykonywanego przy każdym uruchomieniu lub restarcie.

Test POST jest przeprowadzany w kilku fazach. Faza pierwsza to sprawdzenie obecności i prawidłowości działania układów niezbędnych do działania komputera. Na tym etapie nie jest dostępna jeszcze żadna karta rozszerzenia i błędy są komunikowane przez miniaturowy głośnik (ang. PC speaker) umieszczony w obudowie jednostki systemowej. W pierwszej kolejności jest testowana poprawność pracy procesora, później pamięci RAM i następnie karty graficznej. Niepomyślny wynik POSTu skutkuje serią odgłosów wydanych przez głośnik. Odgłosy te, a dokładniej ich ilość i czas trwania są kodem błędu. Korzystając z instrukcji obsługi możemy ustalić, co jest przyczyną problemów. Nowoczesne płyty główne zamiast używania dość niewygodnego kodu dźwiękowego informują o rezultacie testu POST za pomocą kolorowych diod LED lub wyświetlacza siedmiosegmentowego umieszczonego na płycie głównej. Inne rozwiązanie to komunikaty głosowe (nagrane przez lektora i zapisane w specjalnym układzie scalonym na płycie głównej). Kolejny etap testu POST wykonywany już po zainicjowaniu większości podzespołów składa się z testu pamięci RAM oraz testu dysków twardych. Gdy test POST zostanie zakończony i nie zostaną znalezione żadne błędy komputer wyda pojedynczy pisk (ang. beep) (rzadziej dwa) i rozpocznie procedurę uruchamiania systemu operacyjnego.

  1. Zasadnicze kroki procedury uruchamiania komputera i ładowania systemu operacyjnego.

1) Rejestry CS i IP świeżo uruchomionego procesora zawierają wartości F000 i FFF0. W komputerach osobistych ten adres wskazuje na obszar zarezerwowany dla BIOSu; również później wykonywany kod nie wychodzi poza ten obszar. Procesor jako pierwszą wykonuje instrukcję spod adresu F000:FFF0, czyli szesnaście bajtów przed górnym krańcem pamięci w trybie rzeczywistym. W tym momencie rozpoczyna się tzw POST.

2) Aby upewnić się, że komputer jest sprawny, BIOS przeprowadza test wszystkich podzespołów i w razie błędu daje o tym znać użytkownikowi. Jeżeli błąd przy testowaniu nastąpi po przygotowaniu do pracy karty graficznej, na ekranie wypisywany jest odpowiedni komunikat. Błędy ze wcześniejszej fazy są przedstawiane przy pomocy systemowego głośnika.

3) Ładowanie systemu operacyjnego. Po zakończeniu testowania, BIOS wywołuje przerwanie 0x19. Kod, do którego przekazywane jest sterowanie, próbuje załadować pierwszy sektor z zerowej ścieżki aktualnego urządzenia uruchamiającego do pamięci. W razie powodzenia sytuacji jest on zamieszczony pod adresem 0000:7C00. Następnie BIOS skacze pod ten adres.

4) Jeżeli ładowanie systemu nie powiedzie się z powodu braku sektora startowego wywoływane jest przerwanie 0x18. Wyświetlany jest tekst: „No Boot device available” i nie można nic zrobić.

  1. Podaj definicje: grafika rastrowa i grafika wektorowa.

Grafika wektorowa - sposób opisu obrazu oparty na formułach matematycznych. W przeciwieństwie do tradycyjnej grafiki bitmapowej (opierającej się na zapamiętywaniu koloru i położenia pojedynczych pikseli), grafika wektorowa zachowuje informacje o tworzących kształty obiektów liniach oraz krzywych - włączając ich położenie oraz barwę.

Grafika rastrowa - obrazy tworzone są z położonych regularnie, obok siebie pikseli. Posiadają one różne kolory lub odcienie jasności. Tworzone w ten sposób obrazy zwykło się nazywać mapami bitowymi.



Wyszukiwarka

Podobne podstrony:
11 Pytanie z ASK
ASK-koło pierwsze pytania z mojej grupy, Edukacja, studia, Semestr IV, Architektura Systemów Kompute
opracowane pytania na ASK@, Edukacja, studia, Semestr IV, Architektura Systemów Komputerowych, Oprac
przykladowe pytania 1, Informatyka ns 2009-2013, Semestr II, ASK
ASK(pytania i odpowiedzi)
ask pytania III termin
Mechanika Semest I pytania egz
prelekcja ZUM z pytaniami
pytania przykladowe exam zaoczne(1)
pytania nowe komplet
Pytania egzaminacyjneIM
ASK w2 id 70602 Nieznany (2)
EGZAMIN PKM2 pytania2011
Podstawy Teorii Okretow Pytania nr 4 (20) id 368475
haran egzamin opracowane pytania

więcej podobnych podstron