08 Хардвер

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 53

ФАКУЛТЕТ ЗА ЕЛЕКТРОТЕХНИКА И ИНФОРМАЦИСКИ ТЕХНОЛОГИИ

ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Хардвер

Структура на компјутер
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Што е компјутер

 Компјутер е машина што обработува


податоци која работи автоматски под
контрола на листа од инструкции
(наречена програма) сместена во
неговата главна меморија.

 Компјутерскиот систем е составен од


компјутер и неговите периферни уреди
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Што е компјутер
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Што е компјутер
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Што е компјутер
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Транзистори
 Транзистор
 Важен дел за градба на компјутерските системи
 Чип
 Многу мало парче силициум
 Чипот може да содржи милијарди
транзистори
 Пр. Чипови за CPU, меморија и сл.
 Нема подвижни делови
 Силициум vs силикон
 анг. Silicon vs Silicone
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Чип

https://en.wikipedia.org/wiki/File:Intel_8742_153056995.jpg
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Кои се главните делови?

CPU
(„мозокот“ на компјутерот)

RAM DISK
(привремена меморија) (трајна меморија)
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

CPU
 Central Processing Unit
 Централна обработувачка единицa
 Најчесто се нарекува процесор

 Изведува едноставни операции


 Пр. Собирање на два броја
 Пр. кога ќе се рече дека некој компјутер може
да изврши 2 милијарди операции во секунда
 Тоа е процесорот
 Кога извршуваме некоја програма на
компјутерот, таа се извршува со помош на
процесорот
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

RAM
 RAM меморја
 Random Access Memory
 Привремено складирање на бајти
 Пр.int a = 10;
 Оваа променлива се креира и складира во RAM
меморијата
 Складираните податоци во RAM меморијата
се губат кога ќе се исклучи компјутерот (анг.
volatile)
 Сите програми кои се стартуваат мора да се
вчитаат во RAM меморијата, а ако нема
доволно простор и во т.н. swap датотека
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Трајна меморија (1)


 Трајната меморија (анг. persistent, non-
volatile) ги чува податоците и после
исклучување на струја
 Тврд диск (анг. hard drive)
 Се состои од алуминиумски плочи
(дискови) обложени со магнетно
чувствителен материјал и глава за
читање/запишување
 Бајтите се складираат како магнетни
записи на плочите
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Трајна меморија (2)


 Flash дискови
 Бајтите се складираат како електрони на
чип
 „Solid state“ - Нема подвижни делови
 Порано беа многу поскапи и затоа
повеќето компјутери користеа тврди
дискови
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Малку вистински хардвер


 На наредните слики е прикажан Shuttle
компјутер 1.8GHz CPU, 512MB RAM и
160GB тврд диск.
 Во 2008 година имал цена од околу
200$
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Малку вистински хардвер


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Малку вистински хардвер


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Малку вистински хардвер


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Малку вистински хардвер


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Малку вистински хардвер


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Малку вистински хардвер


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Малку вистински хардвер


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Малку вистински хардвер


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Малку вистински хардвер


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Микроконтролер
(микроуправувач)

 Микроконтролер е (генерално) евтин


компјутерски чип
 Комплетен компјутер на чип
 Мал CPU, RAM и меморија
 Може да чини и помалку од $1
 Се вградува во уреди за автомаска
контрола:
 автомобили, медицински уреди,
енергетски уреди, играчки и сл.
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

 На сликата е прикажан микроконтролер


Arduino со цена од околу 20$
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

File систем
 File систем – ги организира бајтите во
постојаната меморија
 "File" – име (контрола) на блок од бајти
 Пример: "flowers.jpg" укажува на 48KB
од податоци на слика
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

File систем
 File системот му дава на корисникот име
(дополнително и икона) за блок од податочни
бајти, и му дозволува на корисникот да
извршува операции на тие податоци, како
преместување, копирање отворање со
конкретна програма.
 File системот бележи информации за самите
податоци: нивниот број, времето кога тие
биле креирани и последниот пат кога тие
биле променети.
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

File систем
 Microsoft го користи NTFS file системот,
а Mac OS X го користи Apple
комерцијалниот HFS.
 Многу уреди (камери, MP3 плеери) го
користат Microsoft FAT32 file систем на
нивните system flash картици. FAT32 е
стар примитивен file систем, но е добар
поради големата поддршка ширум
светот
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Повеќе за архитектурата...
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Von Neumann Архитектура


 Модел за дизајнирање и градење на
компјутер, базиран на следните три
карактеристики:
1) Компоненти на компјутерскиот систем:
 Меморија
 Аритметичко логичка единица
 Контролна единица
 Влезно/Излезни уреди (I/O)
2) Програмата се чува во главната меморија при
нејзиното извршување
3) Програмските инструкции се извршуваат
последователно (секвенцијално)
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Von Neumann Архитектура


Магистрала

Процесор (CPU)

Меморија Влез/Излез
Контролна единица

АЛЕ
Комуникација со
Сместување во меморија
надворешниот свет
на податоците и програмата
• Монитор
која треба да се изврши
• Тастатура
Извршување на програмата • Мемориски уреди
• ...
Извршување на аритметичко -
логичките операции на барање
на програмата
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Мемориски систем
 RAM меморија
 Се состои од мемориски клетки (единици за чување) со фиксна
големина
Секоја клетка има адреса поврзана со неа: 0, 1, …
 Сите пристапи на меморијата се до конкретна адреса
Клетката е минимална единица за пристап (манипулацијата со
податоци е на ниво на мемориска клетка).
 Времето на читање и запишување за сите клетка е исто
(различно за читање и запишување).
 Кога компјутерот работи,
 програмите
 податоците (променливите)
се наоѓаат во меморијата
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

RAM
 Потребно е да се разликува N
 Адресата на мемориската 0000000000000001
клетка и содржината на 1 bit
мемориската клетка
0
 Ширина на меморија (W):
 Колку битови се сместуваат во 1
една клетка, вообичаено еден 2
бајт (byte) (1B = 8 bits)
 Ширина на адреса (N): 2N
 Колку битови се користат за
репрезентација на една ...
мемориска адреса, се
одредува преку големината на
адресниот простор
2N-1
 Ако ширината на адресите е N-
битови, тогаш адресниот
простор е 2N (0,1,...,2N-1) W
32
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Мемориска големина / Брзина


 Типична меморија на персонален компјутер
(PC):
 4GB – 16GB
 Време за пристап до меморија (читање и
запишување во меморија)
 50-75 nanoseconds (1 nsec. = 0.000000001 sec.)
 RAM е
 непостојан (ги чува податоците само додека е под
напон)
 Релативно скап
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Операции на меморија
 Fetch (address):
 Зема копија од содржината на мемориската клетка на
конкретната локација (адреса)
 Не ја уништува, само ја копира вредноста на мемориската
клетка
 Store (address, value):
 Зачувува конкретна вредност во мемориска клетка
специфицирана со адресата
 Ја пребришува постоечката вредност во мемориската клетка
 На меморискиот систем се пристапува преку:
 Регистар на мемориски адреси (MAR)
 Регистар на податоци во меморија (MDR)
 Fetch/Store сигнал
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Структура на меморискиот систем


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Структура на меморискиот систем


 Fetch(address)
 Адресата се сместува во MAR
 Адресата се декодира во MAR
 Се копира содржината на мемориската клетка со
специфицираната адреса во MDR
 Store(address, value)
 Адресата се сместува во MAR
 Вредноста се сместува во МDR
 Адресата се декодира во MAR
 Се копира содржината на МDR во мемориската
клетка со специфицираната адреса
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Системот Влез/Излез
 Управување со уредите кои му овозможуваат
на компјутерскиот систем:
 Комуникација и интеракција со надворешниот свет
 Монитор, тастатура, печатач, ...

 Чување на информации (надворешна меморија)


 Тврди дискови, CD, касети, USB…

 Методи за пристап кај надворешните


мемории:
 Директен пристап (Direct Access Storage Devices -
DASDs)
 Тврди дискови, CD-ROMs, ...
 Секвенцијален пристап (Sequential Access Storage
Devices - SASDs)
 Касети
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Влез/Излез контролери
 Брзината на Влезно/Излезните уреди е
помала во споредба со RAM-от
 RAM ~ 50 nsec.
 Hard-Drive ~ 10msec. = (10,000,000 nsec)
 Решение:
 I/O контролер, процесор со специјална намена:
 Има мал мемориски бафер и контролна логика за
управување со влезно/излезните уреди (пример:
придвижување на главата на дискот).
 Праќа сигнал (прекин / interupt) до процесорот кога е
завршено читањето/ запишувањето
 Податочен трансфер меѓу RAM-от и неговиот
мемориски бафер
 Процесорот е слободен додека I/O контролерот
чита/запишува податоци од уредот во I/O баферот
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Структура на I/O системот


Интерапт сигнал (до процесорот)
Податоци од/во меморија

I/O контролер

I/O бафер

Контролна
логика

I/O уред
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Аритметичко-логичка единица
 Аритметичко-логичката единица извршува
 Математички операции (+, -, x, /, …)
 Логички операции (=, <, >, и, или, не, ...)

 Во денешните компјутери најчесто интегрирана


со централната процесорска единица
 Се состои од:
 Логички кола за извршување на аритметичко-
логичките операции
 Регистри (брзи мемориски единици) за зачувување на
меѓурезултатите
 Магистрала која ги поврзува претходните две
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Структура на аритметичко
логичката единица
 Регистри:
 Многу брзи локални мемориски R0
клетки кои ги чуваат операндите
и меѓу резултатите R1
 CCR (condition code register), R2
регистер со специјална намена
за чување на резултатите од
операциите <, = и >
 Логички кола на АЛЕ (ALU):
Rn
 Содржи низа од поврзани
логички кола за изведување на
математичките/логичките
операции Логички кола на
 Магистрала (Bus): ALU
 Податочниот пат кој ги поврзува
регистрите со логичките кола на
АЛЕ (ALU) GT EQ LT
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Контролна единица
 Програмата се зачувува во меморија
 Во машински јазик во вид на инструкции
 Задачата на контролната единица да ги
извршува програмите:
 Земање (Fetch) на следната инструкција од
меморија за истата да се изврши
 Декодирање (Decode) на истата, со цел да се
одреди што треба да биде направено
 Извршување (Execute) на истата, преку задавање
на соодветни сигнали (задачи) на ALU,
меморијата и I/O системот
 Извршување на инструкциите од програмите сè
додека не дојде HALT инструкцијата
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Инструкции во машински јазик


 Инструкцијата во машински јазик се состои од
 Операциски код, кој покажува која операција треба да
биде извршена
 Адресни полиња, полиња со мемориски адреси на
вредностите врз кои треба да биде извршена операција
 Пример: ADD X, Y (Собери ги вредностите од
мемориските локации X и Y, и зачувај го
резултатот на мемориската локација Y).
 Да претпоставиме: операцискиот код за ADD е 9 и
адресите X=99 и Y=100

Операциски код (8 bits) Адреса 1 (16 bits) Адреса 2 (16 bits)

00001001 0000000001100011 0000000001100100


ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Дизајн на инструкциското
множество
 Два различни пристапи:
 Компјутери со редуцирано инструкциско
множество (RISC)
 Инструкциско множество колку што е можно
помало
 Минимизирање на бројот на логички кола -->
побрзи компјутери
 Компјутери со комплексно инструкциско
множество (CISC)
 Повеќе инструкции, повеќе покомплексни
 Секоја инструкција може да изврши повеќе
работа, потребни се повеќе логички кола
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Типични машински инструкции


 Нотација:
 Ги користиме X, Y, Z за да означиме клетки од RAM-
от
 Да претпоставиме постоење на еден регистар R
(заради поедноставување)
 Користиме англиски опис (треба да биде бинарен)

 Инструкции за податочен трансфер


 LOAD X Поставување на содржината на X во R
 STORE X Сместување на содржината на R во
мемориската локација X
 MOVE X, Y Копирање на содржината на
мемориската локација X во Y
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Машински инструкции
 Аритметички
 ADD X, Y, Z CON(Z) = CON(X) + CON(Y)
 ADD X, Y CON(Y) = CON(X) + CON(Y)
 ADD X R = CON(X) + R
 Слични инструкции за другите операции: SUBTR,OR, ...
 Споредба
 COMPARE X, Y
Споредување на содржините на мемориските
клетки X и Y и поставување на условниот код
(condition codes - CCR) соодветно.
 Пример: Ако CON(X) = R тогаш постави EQ=1,
GT=0, LT=0
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Машински инструкции
 Разгранување
 JUMP X Земање на следната инструкција од
мемориска локација X
 JUMPGT X Земање на следна инструкција од
мемориска локација X само ако GT во
CCR е поставен, во спротивно се зема
следната инструкција како и при
вообичаено извршување
 JUMPEQ, JUMPLT, JUMPGE, JUMPLE,JUMPNEQ
 Контрола
 HALT Стопирање на извршување на
програмата
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Пример
 Псевдо-код: Set A to B + C
 Да претпоставиме дека:
Aсе однесува на мемориската клетка
100, B се однесува на мемориската
клетка 150, C на мемориската клетка 151
 Машински јазик (во бинарен формат)
 LOAD 150
 ADD 151
 STORE 100
 или
 (ADD 150, 151, 100)
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Структура на контролната единица


 PC (програмски бројач - Program Counter) или уште познат
како инструкциски покажувач:
 Покажува на следната инструкција која треба да биде
извршена
 IR (Инструкциски регистар -Instruction Register):
 Ја чува инструкцијата земена од меморија
 Инструкциски декодер - Instruction Decoder:
 Ги декодира инструкциите и активира потребните логички
кола

PC IR

+1
Инструкциски декодер
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Von Neumann
архитектура
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Како функционира сè заедно?

 Извршување на програма:
 PC се пополнува со адресата на првата
инструкција на програмата која е
зачувана во меморија
 Повторувај сè додека не дојде HALT
инструкција или не се случи грешка
Fetch инструкција
Decode инструкција
Execute инструкција
Крај на циклусот
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Извршување на програмата

 Fetch фаза
 PC --> MAR (стави ја адресата од PC во
MAR)
 Fetch сигнал (мемориски сигнал за да
се земе вредноста во MDR)
 MDR --> IR (преместување на вредноста
во инструкцискиот регистар)
 PC + 1 --> PC (Поместување на следната
адреса на инструкцискиот
покажувач)
ФАКУЛТЕТ ЗА ИНФОРМАТИЧКИ НАУКИ
И КОМПЈУТЕРСКО ИНЖЕНЕРСТВО

Извршување на програмата
 Decode фаза (фаза на декодирање)
 IR -> Инструкциски декодер (декодирање
на
инструкцијата во IR)
 Инструкцискиот декодер го генерира
сигналот за активирање на колата за
справување со инструкцијата
 Фаза на извршување
 Се разликува од една до друга
инструкција

You might also like