+ All Categories
Home > Documents > Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1....

Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1....

Date post: 20-Sep-2019
Category:
Upload: others
View: 28 times
Download: 0 times
Share this document with a friend
34
Sisteme cu microprocesoare Curs1 “Successful people never stop learning”- B.B.
Transcript
Page 1: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Sisteme cu microprocesoare

Curs1

“Successful people never stop learning”- B.B.

Page 2: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Calcul Nota CATALOG:NOTA CATALOG = 35% Lab + 65% Examen (Teorie+Probleme)

• Criteriu promovabilitate: Lab >=4.5-> intrati in Examen, fiecare nota Examen >=4.5

• Bonus CURS: max 1 punct + 0.5puncte (prezenta) + activitate Curs

• Exemplu: Pop Ion

• Eseu ft bun pt Curs (cu conditia sa aiba nota UP1>6) => 1p de Examen• Prezenta la aproape toate cursurile + raspunde la putine intrebari la curs => 0.5p• La Examen ia nota 3.5 ! si 8.5• La LAB are nota 10

• Calcul: (2 oficiu) 0.35*10+0.65*(4.5+9.5)/2+0.5=3.5+4.55+0.5= 8.05+0.5 = 9• Clasic: (1 oficiu) 0.35*10+0.65*(3.5+8.5)/2+0.5= 4

• Lab >= 4.5, max 2 absente nemotivate• Lab: 2 teste (1 test se va putea inlocui cu 1 miniproiect)

BONUSURI curs

Page 3: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Tematica• Microprocesor vs microcontroller

• (Sisteme cu) -> specific

Tematica Curs:• Prima parte

• Desktop PC -> de la 8086 la sisteme uzuale• Istoria microprocesoarelor -> caracteristicile CPU• Componentele unei PB (placi de baza) dintr-un desktop PC: CPU,

chipset, memorie (DRAM, SRAM, ROM), sloturi de expansiune, interfete, busuri (magistrale), porturi, conectori

• (principiile de baza + mod de lucru) Interfete: TIMER 8253/54, PIC 8259, DMAC 8237, PIO 8255, Controller de tastatura

• Port parallel, port serial, USB, I2C, SPI, …• Memorie: DRAM si SRAM – memoria principala (proiectare) +

memoria cache (scheme de mapare uzuale -> simulatorul camera)

• A doua parte: • Microcontrollerul PIC24 -> Placa Explorer 16 • Microcontrolere ATMega328 -> Arduino

• Scop principal curs: de a sustine tematica abordata la LAB

Lucrarile de Laborator

1. Circuite secvenţiale. Proiectarea circuitelor secvenţiale fol. limbajul de asamblare2. Identificarea şi analiza caracteristicilor CPU dintr-un SC3. Circuitul Timer şi aplicaţii specifice4. Sistemul de întreruperi5. Transferul serial6. Transferul de date prin DMA

7. Microcontrolerul PIC24 – Porturi de intrare/ieşire8. Microcontrolerul PIC24 – Pinii de intrare9. Microcontrolerul PIC24 – Convertorul analog-digital

10. Microcontrolerul PIC24 – Timere şi întreruperi

11. Microcontrolerul ATMega328. Platforma Arduino. Intrări/ieşiri12. Microcontrolerul ATMega328 - Convertorul analog-digital13. Microcontrolerul ATMega328 – Interfaţa serială I2C

14. Evaluarea activităţii de laborator şi recapitulare

Page 4: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şi x64). Instructiunea Cpuid

2. Procesorul 8086- min/ max. Circuitul timer. Decodificatoare.

3. Controlerul de întreruperi. Programare şi aplicaţii

4. Circuitul DMA. Programare şi aplicaţii

5. Comunicarea serială in PC. Aplicaţii

6. Portul paralel SPP; extensii ale portului paralel. Aplicaţii

7. Microcontrolere; principiile de bază ale proiectării unui sistem cu microcontroler.

8. Microcontrolere PIC24 – principii, mod de lucru

9. Aplicaţii pentru microcontrolere – exemplificări

10. Magistrale interne din PC

11. Magistrala I2C, Interfaţa USB şi protocolul de comunicare pe USB

12. Memoria în PC; organizarea memoriei; ierarhia de memorii

13. Memoria cache; scheme de mapare – analiza cpu-z

14. Recapitulare pentru examen.

Page 5: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Microprocesor (CPU) vs Microcontroller (MCU)

• Microprocesor = UCP de uz general• Fol. pentru aplicaţii de prelucrare de înaltă performanţă

• Procesare multimedia: Cati biti se pot prelucra in parallel azi cu un sistem pe 64 biti? (intr-o singura instructiune)

• Raspuns: 512 biti – setul de instructiuni specializate AVX512, FMA-3, …

• Unde il gasim? In gen. in calculatoare de uz general (sub forma multi-core)• PC-uri (Desktop/ laptop PC - Personal Computers), staţii de lucru, servere, mainframe

• Aspecte importante: compatibilitatea software+portabilitate, performanţa, generalitate şi flexibilitate.

• Microncontroler = UCP de uz specializat• Fol. pentru aplicaţii de control, performanta scăzută (precizie scazuta)• Unde il gasim? In tot felul de “aplicaţii de control” ((semi)automat)• Aspecte importante: dimensiune redusă a chip-ului, costuri minimizate, consum mic.

• La momentul apariţiei, aceste circuite au fost numite "microcalculatoare pe un chip", - includeau în aceeaşi capsulă de circuit integrat (CI)

toate componentele unui sistem de calcul: UCP, memorie şi interfete I/O.

Page 6: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

azi: Curs 1

• Primele 2 lucrari de Lab:

• Lab 1: Implementarea prin logica programata a circuitelor logice(combinationale si secventiale)

• Lab 2: Identificarea caracteristicilor procesoarelor din sistemele curente• Instructiunea cpuid si interpretarea rezultatelor furnizate de aceasta

Page 7: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Emularea unui circuit logic combinational folosind limbaj de asamblare x86

Sa se scrie o secventa de program care sa emuleze circuitul logic combinational din figura:

Solutie: Implementarea 1:

in AL, 80h

and AL, 55hjZ eti ; Z=1 cand? Cand AL=55h sau cand AL=0 ?

mov AL, 00000000b ; scot 0 pe port

jmp ies

eti: mov AL, 0000 0001b ; scot 1 pe port

ies: mov DX, 110hout DX, AL

55h = 0101 0101bD7 6 5 4 3 2 1 0

Indicatie: Daca citesc de pe portul de intrare:a) 0000 0000b -> La iesire va fi 0 sau 1 pe b0?

b) 0101 0101b c) 0111 0001b d) 1010 1010b ! A existat o singura combinatie: 0,0,0,0 -> 1

Page 8: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Sa nu distrugem iesirea !Implementarea 2: (De ce s-a modificat programul astfel?)

in AL, 80h

and AL, 55hjZ eti ; Z=1 cand? Cand AL=55h sau cand AL=0 ?mov DX, 110hin AL, DX

and AL, 11111110bjmp ies

eti: mov DX, 110hin AL, DX

or AL, 0000 0001b

ies: mov DX, 110hout DX, AL

Solutie: Implementarea 1:

in AL, 80h

and AL, 55hjZ eti

mov AL, 00000000b

jmp ies

eti: mov AL, 0000 0001b

ies: mov DX, 110hout DX, AL

Page 9: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Tema : 2 probleme propuse

! Pot exista multiple combinatii: -> 1/0

Page 10: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Unitatea de control (UC) a UCP

• = un automat secvenţial proiectat in special pt a recunoaşte un anumit set de instrucţiuni• - > va genera un set corespunzător (pre-fixat) de semnale de control

Proiectarea şi optimizarea circuitului de control este mai dificilă daca setul de instrucţiuni estemai complex,

- acest tip de control este fol. pt CPU care recunosc un set relativ redus de instrucţiuni (cu format de lungime fixă), in gen. RISC, nu CISC.

• UC trebuie să lanseze semnalele de comandă pentru aducerea instrucţiunilor din memoriaprincipală, să decodifice codul fiecărei instrucţiuni şi ca urmare să genereze toate semnalelede control către calea de date pentru execuţia completă a instrucţiunii.

• Cu cât UC a UCP recunoaşte un set mai mare şi mai eterogen (lungimi diferite, câmpuridiferite în funcţie de modurile de adresare etc.) de instrucţiuni, cu atât complexitateaunităţii de control creşte.

Page 11: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

11

Procesoare pe 4 biti, 8 biti, 16 biti

1971 Intel 4004 –

primul procesor, pe 4 biti

1972 microprocesorul Intel 8008 –

primul procesor pe 8 biti

1978 microprocesorul Intel 8086 –

primul procesor pe 16 biti

1981 IBM PC (XT –eXtended Tech.)

= baza calculatoarelor personale de azi

PC (personal computer).

1984 PC-AT (PC Advanced Tech.),

de 3 ori mai rapid ca PC-ul original

– avea chip Intel 286 si bus ISA

A N C A A P A T E A N - U T C N

3. Istoria microprocesoarelor din familia Intel x86

Primele microprocesoare

Page 12: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

PROCESOARE PE 4 BITI

1971 Intel 4004 – primul procesor, pe 4 biti

1972 microprocesorul Intel 8008 – primul procesor pe 8 biti

1978 microprocesorul Intel 8086 – primul procesor pe 16 biti

1981 IBM – IBM PC (XT) = baza calculatoarelor personale de azi PC (personal computer).

1984 IBM - PC-AT (PC Advanced Technology), de 3 ori mai rapid ca PC-ul original

– avea chip Intel 286 si bus ISA

p

A N C A A P A T E A N - U T C N12

A N C A A P A T E A N - U T C N

ISTORIA MICROPROCESOARELOR din familia Intel x86

Microprocesoare pe 4 biti

Page 13: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

PROCESOARE PE 8 BITI

1971 Intel 4004 – primul procesor Intel, pe 4 biti

1972 microprocesorul Intel 8008 – primul procesor pe 8 biti

1978 microprocesorul Intel 8086 – primul procesor pe 16 biti

1981 IBM – IBM PC (XT) = baza calculatoarelor personale de azi PC (personal computer).

1984 IBM - PC-AT (PC Advanced Technology), de 3 ori mai rapid ca PC-ul original

– avea chip Intel 286 si bus ISA

p

A N C A A P A T E A N - U T C N13

A N C A A P A T E A N - U T C N

ISTORIA MICROPROCESOARELOR din familia Intel x86

Microprocesoare pe 8 biti

Page 14: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

PROCESOARE PE 16 BITI – la baza familiei x86

1971 Intel 4004 – primul procesor, pe 4 biti

1972 microprocesorul Intel 8008 – primul procesor pe 8 biti

1978 microprocesorul Intel 8086 – primul procesor pe 16 biti

1981 IBM – IBM PC (XT) = baza calculatoarelor personale de azi PC (personal computer).

1984 IBM - PC-AT (PC Advanced Technology), de 3 ori mai rapid ca PC-ul original

– avea chip Intel 286 si bus ISA

p

14

A N C A A P A T E A N - U T C N

ISTORIA MICROPROCESOARELOR din familia Intel x86

Microprocesoare pe 16 biti

Page 15: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

15

De la procesor pe 16 biti la procesor pe 32 biti

A N C A A P A T E A N - U T C N

Istoria microprocesoarelor din familia Intel x86

Microprocesoare pe 32 biti

Cum s-au modificat registrii :

AX -> EAX

BX -> EBX

CX -> ECX

DX -> EDX

SP -> ESP

BP -> EBP

SI -> ESI

DI -> EDI

“E” = extended (extinsi la 32 biti)

+ FS, GS ca registri segment

Page 16: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

PROCESOARE PE 32 BITI

- dpdv cronologic, unele versiuni de 386 au aparut in paralel

cu unele versiuni 486

->se poate generaliza: Pentium si Celeron inca se produc

in paralel cu Core i

ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

MICROPROCESOARE PE 32 BITI

p

A N C A A P A T E A N - U T C N16

Page 17: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

PROCESOARE PE 64 BITI

- primele au aparut in 2001: Itanium- IA 64 (foloseste EPIC)

- iar in 2004: Xeon – Intel 64

- cele 2 sunt incompatibile ! Exista o mare diferenta intre ele !!!

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64BITI

p

A N C A A P A T E A N - U T C N17

Cum s-au modificat registrii :

EAX -> RAX

EBX -> RBX

ECX -> RCX

EDX -> RDX

ESP -> RSP

EBP -> RBP

ESI -> RSI

EDI -> RDI

Nu mai exista notiunea de segment !

Page 18: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

De fapt,

Pe langa registrii denumiti cu R,

Mai exista si:

- Registri de control (CR),

- Registri de depanare (DR) si

- inca 8 registri suplimentari (R8…15)

REGISTRII CPU PE 64 BITI

Page 19: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

In 2003 AMD (Advanced Micro Devices) a lansat primele procesoare pe 64 biti, compatibile x86:

Athlon 64 (K8) si Opteron 63.

In 2004 Intel a introdus (ca reactie la succesul avut de AMD la introducerea AMD64 cu un an inainte) extensia numita IA-32e,

ulterior redenumita EM64T, iar apoi Intel 64.

Primele procesoare care au implementat aceasta extensie au fost Xeon si Pentium 3.

In prezent, este implementata in procesoarele Celeron, Pentium D si EE, Xeon (aparute dupa 2004),

Core 2/i3/i5/i7 si unele Atom.

Totusi, primele procesoare pe 64 biti ale Intel au fost Itanium (2001) si Itanium 2 (2002),

dezvoltate pentru servere si statii de lucru -> pret pe cip de aprox 3000$

acestea foloseau o arhitectura total diferita (de tip EPIC (Explicitly Parallel Computer))

incompatibila cu x86 (dpdv al programelor rulate).

Termenul IA-64 se refera la arhitectura dezvoltata de Intel si HP (Hewlett Packard) impreuna, implementata in Itanium si Itanium 2

Termenul Intel 64 (numit si x64, IA-32e, EM64T, AMD64, x86-64) este o extensie a arhitecturii x86 fiind compatibila cu procesoarele

anterioare din familia x86 (poate rula vechile programe, dezv pt procesoare pe 32 biti de ex.)

-primul procesor compatibil x86 pe 64 biti: AMD- Athlon 64

IA-64 si Intel 64 sunt 2 tipuri de arhitecturi total diferite, incompatibile. !

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64BITI (2)

p

A N C A A P A T E A N - U T C N19

Page 20: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Termenul IA-64 se refera la arhitectura dezvoltata de Intel si HP (Hewlett Packard) impreuna, implementata in Itanium si Itanium 2

Termenul Intel 64 (x64, IA-32e, EM64T, AMD64, x86-64) e o extensie a arhitecturii x86 fiind compatibila cu procesoarele

anterioare din familia x86 (poate rula vechile programe, dezv pt procesoare pe 32 biti de ex.)

IA-64 si Intel 64 sunt 2 tipuri de arhitecturi total diferite, incompatibile. !

Arhitectura IA-32 -> sisteme bazate pe procesoare pe 32-biti , in gen. compatibile cu Intel Pentium II, Intel Pentium 4 , Intel

Xeon, ...), sau de la alti producatori, dar care suporta acelasi set de instructiuni x86, ruland pe un SO de 32 biti .

Arhitectura Intel 64 -> sisteme bazate pe procesoare cu arhitectura IA-32 care au extensia pe 64-biti, de exemplu, Intel Core2),

ruland un SO pe 64-biti (de ex Microsoft Windows XP Professional x64 Edition sau Microsoft Windows Vista x64)

Daca sistemul ruleaza pe o versiune de SO pe 32 biti , atunci se aplica arhitectura IA-32 .

Arhitectura IA-64 -> sisteme bazate pe procesoare Intel Itanium de ex, cu SO pe 64-biti

http://software.intel.com/en-us/articles/ia-32-intelr-64-ia-64-architecture-mean

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64BITI (2)

p

A N C A A P A T E A N - U T C N20

Page 21: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

- pt a implementa procesor dual-core, Intel a fol. 2 core de la Pentium4:

cele 2 core comunicau prin cipul MCH (North Bridge) de pe P.B. pt a asigura coerenta cache-ului

Pentium D:

- Viteza ceas: 2,6-3,6 GHz

- Bus procesor FSB la 533/800 MHz

- caracteristica EM64T

- dimens mem cache L2: 2MB/4MB (1MB/2MB pe fiec core)

- performanta a crescut cu aprox 60% fata de un Pentium 4 cu un singur core Prescott

Pentium Extreme Edition

- in plus, pe langa caracteristicile de la Pentium D, mai are tehnologie HT si permite realizarea de overclocking foarte usor

- Bus procesor FSB la 1066 MHz

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64 BITI (3)

p

A N C A A P A T E A N - U T C N21

Core executie

Cache L2 (1MB) Cache L2 (1MB)

Interfata cu

busurile

Interfata cu

busurile

Core executie

Memory Controller HUB (MCH)

Front Side BUS (FSB)

Modul de comunicare intre cele 2 core la

Pentium D si EE prin

cipul MCH (North Bridge)

Pentium D si Pentium Extreme Edition (2005)

Page 22: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

- rate ceas: 1,6-2,8 GHz

- familia de procesoare Core 2

– performante cu 40% mai bune si mai eficiente energetic decat Pentium D din generatia anterioarao prima generatie a fost Pentium D si EE

a doua generatie: Core Duo pt PC-uri mobile

a treia generatie: Core 2 Duo

- A nu se confunda Core 2 cu Core Solo si Core Duo de la Intel Mobile: intern sunt diferite si nu fac parte din aceeasi familie

- versiunea Dual Core – 290 mil tranzistoare,

iar versiunea Quad Core – 580-800 mil tranzistoare

- initial, ambele au fost fabricate in tehnologie 65 nm, dar au aparut apoi si la 45 nm

- FSB la 800/1066/1333

- vers la 65 nm: 64 KB cache L1 (32+32 KB 8-cai per core), FSB 800 MHz

- vers la 45 nm: 50% mai mult cache L2: 6 MB in loc de 4 MB (FSB 1333Mhz) sau

3 MB cu FSB la 1066 MHz

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64 BITI (4)

p

A N C A A P A T E A N - U T C N22

Intel Core 2 (2006) - P7

Page 23: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Intel Dual Core = primul CPU cu miez „dual”

2 miezuri intr-o capsula, sau 2 cipuri intr-un pachetIntel Core 2 Duo – bazat pe o a II-a generatie

(de aici 2-ul din „Core 2”) - fol o arhit. „Core”

- Microarhitectura Core - caracterizata de executie dinamica larga:- fiecare core poate executa pana la 4 instruct simultan, predictia salturilor imbunatatita,

acces la memorie inteligent–incarcare speculativa a datelor necesare instructiunilor

buffer de instructiuni mai mare, cache inteligent avansat

sistem de putere inteligent: porneste un subsistem procesor doar dc e nevoie de el

- toate procesoarele din familia Core 2 suporta:

EM64T extensie pe 64 biti,

SSSE3 (Supplemental SSE3 – adauga 32 instructiuni la SSE3),

EIST (Enhanced Intel Speedstep Technology),

suport management de la distanta iAMT (Intel Active Management Technology) si

suport pt hardware VT (Virtualization Technology)

Exemple: Core 2 Duo T7250 – 2.00 GHz (2 MB L2, 800 MHz FSB)

Core 2 Extreme QX6850 – 3 GHz (2×4 MB L2 Cache, 1333 MHz FSB)

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64 BITI (5)

p

A N C A A P A T E A N - U T C N23

Intel Core 2 (2006) - continuare

Page 24: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

- folosesc 2 microarhitecturi diferite: I generatie: microarhit Nehalem,

a II-a generatie: microarhit Sandy Bridge

Microarhitectura Nehalem (2008):- s-a integrat controlerul de memorie in procesor si chiar tot North Bridge cu procesorul grafic optional intr-un singur core, separat in

capsula procesorului

- primul procesor din seria Core i: Core i7 (‘08) – initial in tehnologie 45nm, dar mai tarziu in tehnol 32 nm => capsula mai mica, putere

consumata mai mica, performanta mai buna

- toate suporta memorie DDR3 si includ cache L3

- unele includ suport pt tehnologie HT

- 2 variante diferite: high-end (socket LGA 1366) si model mainstream (socket LGA 1156)- cu North Bridge integrat (impreuna cu controler de

mem si interf grafica) in procesor

- seria Core i 900 - controler de memorie tripple channel DDR3 si un FSB de performante mai ridicate

numit QPI (Quick Path Interconnect) ce se conecteaza la componenta North Bridge (I/O Hub sau IOH)

- Core i7 si Core i5 suporta TurboBoost – un mecanism care creste resursele la procesoarele incarcate si o scade la cele mai

putin incarcate

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64 BITI (6)

p

A N C A A P A T E A N - U T C N24

Intel Core i (2008) - P7

Page 25: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Exemple:

- Intel Pentium (2010) – tehnol 32nm, 2 core fizice, 3 MB L3 cache, DDR3 cu 2 canale, fara HT

- Intel Core i5 (2009) – tehnol 45 nm, 2 core, 4 threaduri sau 4 core, 32+32 Kb (per core) cache

L1, 256 Kb (per core) cache L2, 8 MB cache L3 partajata, DDR3 cu 2 canale, cu HT

- Intel Core i3 (2010) – foloseste tot o arhit Nehalem – 2 core, 4 threaduri, 64 Kb cache L1, 512

Kb L2 cache, 4 MB cache L3, DDR3 cu 2 canale

- Intel Core i7 (2010) proces tehnol la 45 nm, 2 core, 4 threaduri sau 4 core, 8 threaduri (seriile

XM si QM), chiar si 6 core fizice, 256 KB cache L2, 6/8/12 MB cache L3, FSB inlocuit de QPI

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64 BITI (7)

p

A N C A A P A T E A N - U T C N25

Intel Core i (2008) - continuare

Core

executie

Cache L3 partajat

Core

executie

Controler de memorie

Core

executie

Core

executie

Capsula unui procesor Core i7 din seria 900 cu

microarhitectura Nehalem

Page 26: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Microarhitectura Sandy Bridge (2011):

- Proces de fabricare 32 nm

- controler de memorie si functiile North Bridge integrate

- apare o noua extensie SSE: AVX 256b

- apare cache de instructiuni de nivel 0 pentru pastrarea a 1500 micro-operatii decodate

- unitatea de predictie a salturilor are acuratete mai ridicata

- foloseste registrii fizici pentru a stoca operanzi

- management al puterii mai bun

- Turbo Boost varianta 2.0

- video dedicat: multi-format codec MFX

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64 BITI (8)

p

A N C A A P A T E A N - U T C N26

Intel Core i (2008) - continuare

Page 27: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Ce este Intel ATOM ?

R: SoC (System on a Chip)

In tabel: diferente intre procesoare Intel Atom

- implementeaza setul de instructiuni x86.

- mai multe varietati pentru fiecare tip de platforma

(tablete, smartphoneuri, netbookuri, dispozitive mobile)

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64 BITI (8)

p

A N C A A P A T E A N - U T C N27

Page 28: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

TIPURI DE SISTEME UZUALE

28

Desktop

• Intel Core i7

• 4 miezuri, 2.66-3.33GHz

• 64 KB L1, 256 KB L2,

• 8 MB L3 (partajata)

• AMD Phenom II

• 2-4 miezuri, 2.4-3.2 GHz

• 128 KB L1, 512 KB L2,

• 4-6 MB L3 (partajata)

Server/Workstation

• Intel Xeon

• 2-4 miezuri, 1.66-3.2GHz

• 64 KB L1, 256 KB L2,

• 4-8 MB L3 (partajata)

• AMD Opteron

• 4-6 miezuri, 2.0-3.2GHz

• 128 KB L1, 512 KB L2,

• 6 MB L3 (partajata

Notebook

• Intel Core 2 Mobile

• 1, 2, 4 miezuri, 1-3GHz

• 64 KB L1, 1-12 MB L2 (partajata)

• AMD Turion X2 Mobile

• 2 miezuri, 2.0-2.5GHz

• 128 KB L1, 1-2 MB L2

Netbook

• Intel Atom

• 1–2 miezuri, 0.8-2.0GHz

• 56 KB L1, 512 KB L2

• AMD Athlon Neo

• 1 miez, 1.6MHz

• 128 KB L1, 512 KB L2

[Morley]

Page 29: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Exemple:

Celeron (2011) – proces 32 nm, 2 core/2 threaduri (seria 500) sau 1 core/1 thread (seria 400), 2 MB cache L3 (seriile 500) sau 1 MB (seriile

400), DDR3 cu 2 canale

Pentium (2011) - proces 32 nm, 2 core/2 threaduri, 3 MB cache L3, 624 mil tranzistoare, DDR3 cu 2 canale la 1066 sau 1333MHz

Core i3 (2011) – ↑ 3,4 GHz, proces 32nm, 2 core/4 threaduri, 32+32 Kb (per core) cache L1, 256 Kb (per core) cache L2, 3 MB cache L3,

624 mil tranzist, DDR3 cu 2 canale la 1333MHz

Core i5 (2011) - ↑ 3,4 GHz, proces 32nm, 4 core/4 threaduri, 32+32 Kb (per core) cache L1, 256 Kb (per core) cache L2, 6 MB cache L3,

995 mil tranzist, DDR3 cu 2 canale la 1333MHz

Core i7 (2011) - ↑ 3,5 GHz, proces 32nm, 4 core/8 threaduri, 32+32 Kb (per core) cache L1, 256 Kb (per core) cache L2, 8 MB cache L3,

995 mil tranzist, DDR3 cu 2 canale la 1333MHz

Core i7 (Noi2011) - ↑ 3,5 GHz, proces 32nm, 8 core/16 threaduri, 32+32 Kb (per core) cache L1, 256 Kb (per core) cache L2, 10/12/15

cache L3, 2270 mil tranzist, DDR3 cu 4 canale la 1600MHz

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64 BITI (9)

p

A N C A A P A T E A N - U T C N29

Intel Core i (2008) - continuare

Page 30: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Exemple mai recente (pret preluat pentru decembrie 2012):

Intel Celeron Dual-Core, Sandy Bridge, 2 nuclee(sau miezuri), 2400 MHz, 32 nm

cache L1 2x 32 KB, cache L2 2x 256 KB,

200 RON

AMD Vision A4 X2, 2 nuclee, 2500 MHz -> 3300, 32 nm

cache L2 1024 KB,

200 RON

AMD FX-8150 AM3+, 8 nuclee, 3600 MHz, 32 nm

cache L2 8x 1024 KB, cache L3 8192 KB

920 RON

Intel Core i7 generatia 2, Sandy Bridge, 4 nuclee, 3600 -> 3800 MHz, 32 nm

cache L1 4x 32 KB, cache L2 4x 256 KB, cache L3 10240 KB,

1 350 RON

Intel Core i7 generatia 2, Sandy Bridge, 6 nuclee, 3300 -> 3900 MHz, 32 nm

cache L1 6x 32 KB, cache L2 6x 256 KB, cache L3 15360 KB,

4 600 RON

3. ISTORIA SI CARACTERISTICILE PROCESOARELOR DIN FAMILIA INTEL X86

3.5. MICROPROCESOARE PE 64 BITI (10)

p

A N C A A P A T E A N - U T C N30

Page 31: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

CPU (sau UCP)

• Familia Core (Intel)• 8th Gen Intel® Core™ i7

Ex: Intel® Core™ i7-8700K Processor cu 12 MB Cache, 6 Cores, 12 Threads – 330$

• 8th Gen Intel® Core™ i5Ex: Intel® Core™ i5-8600K Processor cu 9 MB Cache, 6 Cores, 6 Threads – 235$

• 8th Gen Intel® Core™ i3Ex: Intel® Core™ i3-8350K Processor cu 8 MB Cache, 4 Cores, 4 Threads – 169$

• Intel® Core™ X-Series sau Core™ i9

• – “the ultimate tool for gaming and virtual reality experience”• Pana la 18 cores (nuclee) -> 36 threaduri (fire de executie)

Ex: Intel® Core™ i9-7960X cu 22 MB Cache, 16 Cores, 32 Threads –?????? 1.570$

Page 32: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Evolutia procesoarelor (de la aparitia primului sistem PC in 1981) a vizat urmatoarele:

• cresterea nr de tranzistoare si densitatea lor (nr de tranzistoare pe suprafata ocupata)

• cresterea vitezei/frecventei ciclurilor de ceas

• cresterea dimensiunii registrelor interne (nr de biti)

• cresterea numarului de miezuri pe chip

În cele 4 decenii de la aparitia 4004:

Tehnologia de fabricare (dimensiunea) a tranzistorului a scăzut de aproape 500 ori :

22nm vs 10microm => 10*10-6/22*10-9=454

numărul de tranzistoare pe un cip a crescut cu 6 ordine de marime:

cateva miliarde =1.2G vs 2.3K (K-> M->G)

iar frecvența de operare a crescut cu aproape 4 ordine de mărime:

4G vs 740k (740k -> 7,4M -> 74M -> 740M -> 7,4G)

Nici un alt domeniu al ingineriei nu a inregistrat progrese atat de uimitoare într-un timp atat de scurt !

ISTORIA MICROPROCESOARELOR DIN FAMILIA INTEL X86

CONCLUZII

p

A N C A A P A T E A N - U T C N32

Page 33: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

“cpu identification”

Documentatie:

[1] (Aug. 2017, Specification update)https://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/7th-gen-core-family-spec-update.pdf

[2] (2016) 3-190 Vol. 2A,

https://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-instruction-set-reference-manual-325383.pdf

[3] (Mai 2012)

https://www.scss.tcd.ie/~jones/CS4021/processor-identification-cpuid-

instruction-note.pdf

INSTRUCTIUNEA CPUID

Page 34: Sisteme cu microprocesoare - users.utcluj.rousers.utcluj.ro/~apateana/01_IntroCPU.pdf · Curs 1. Studiul arhitecturii procesoarelor actuale (x86 şix64). Instructiunea Cpuid 2. Procesorul

Cursul urmator :

Istoria + evolutia microprocesoarelor

• Caracteristicile principale

• Aspecte hardware

• Aspecte generale despre proiectarea cu microprocesoare

• Circuitul TIMER 8253 + 8254


Recommended