LOGICAL DESIGN OF DIGITAL COMPUTERS

Documente similare
Arhitectura calculatoarelor. Indrumator de laborator

Slide 1

Adresarea memoriei Modurile de adresare constituie un instrument principal pentru reprezentarea în memorie a imaginii datelor, aşa cum este ace

De la BIT la procesor

Microsoft Word - intro_msp430.doc

Microsoft Word - 4-Interfete paralele.doc

Slide 1

Proiectarea unui procesor didactic

PROCESOARE NUMERICE DE SEMNAL

Implementarea calculatorului didactic DLX (Cursul 3)

Microsoft Word - CP4-13.DOC

Microsoft Word - O problema cu bits.doc

Cartelele telefonice

NPC

D.Rusu, Teoria măsurii şi integrala Lebesgue 12 SPAŢII L P Cursul 11 Proprietăţi de densitate în spaţiile L p Proprietăţile de densitate ne permit să

Laborator - Configurarea Rutelor IPv4 Statice și Implicite Topologie Tabela de Adresare Echipame nt Interfață Adresă IP Masca de subreţea Default Gate

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A

PROCESOARE NUMERICE DE SEMNAL

FIŞA DISCIPLINEI ANEXA nr. 3 la metodologie 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Politehnica din Bucureşti 1.2 F

FACULTATEA DE INGINERIE ELECTRICA ŞI ŞTIINŢA CALCULATOARELOR Contribuții privind implementarea în hardware a unui SOTR -rezumat- Coordonator științifi

1. ARHITECTURA MICROPROCESOARELOR 1.1. Microprocesorul. Noțiuni generale Progresele tehnologice și electronice, înregistrate în ultimele decenii, au d

Microsoft Word - Lucrarea_10_t.doc

Minicurs CCS C / Aplicatia1 1.Programul CCS C Compiler. Instalare.Creare proiect. Descarcati ultima versiune a programului de

Microsoft Word - Laboratorul 3.doc

Lab6LCD

2

EXCEL FĂRĂ SECRETE Grafice şi diagrame

ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja f

Lucrarea 10

Slide 1

Managementul Resurselor Umane

Microsoft Word - Notiuni de arhitectura calculatoarelor.doc

PowerPoint Presentation

Redresoare comandate.doc

-

PowerPoint Presentation

Unitatea: Școala Gimnazială Disciplina: Informatică și TIC Programa școlară aprobată cu OMEN nr.3393 din Profesor: prof. Clasa: a V-a A, B

Gestionarea I/E

SSC-Impartire

Operatorii in C Expresii Operatori aritmetici Operatori de asignare Operatori de incrementare si decrementare Operatori relationali Operatori logici O

LABORATOR I

Mnemonica

Tema 5

PowerPoint Presentation

VI. Achiziția datelor în LabVIEW

Interfețe și Protocoale de Comunicații Arduino-Port Paralel Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de

Paradigme de programare

Proiect didactic

COLEGIUL TEHNIC „VICTOR UNGUREANU” CAMPIA TURZII

Fâciu N. Maria-Ema CASA CORPULUI DIDACTIC BRĂILA PROGRAM DE FORMARE INFORMATICĂ ȘI TIC PENTRU GIMNAZIU CLASA A V-A SERIA 1 GRUPA 2 CURSANT: Fâciu N. M

PowerPoint-Präsentation

Caraivan George-Alexandru Grupa 431A Interfața driver-kernel la Linux Introducere Deși pentru unii dintre noi acest lucru poate fi o supriză, cei mai

PowerPoint-Präsentation

LABORATOR 2

Laborator - Folosirea Wireshark-ului pentru Examinarea Frameurilor Ethernet Topologie Obiective Partea 1: Examinați Câmpurile Header-ului dintr-un Fra

Kein Folientitel

INFORMATICĂ ŞI MARKETING

SCD-Procesoare-1

PowerPoint-Präsentation

E_d_Informatica_sp_SN_2014_bar_10_LRO

Laborator Depanarea Rutării Inter-VLAN Topologie 2013 Cisco and/or its affiliates. All rights reserved. This document is Cisco Public. Page 1 of 8

Circuite Integrate Analogice Celule fundamentale Surse de curent integrate Facultatea de Electronică Telecomunicații și Tehnologia Informației Doris C

Carrier Pidgeon Protocol

1

PowerPoint Presentation

Microsoft Word - cap2.2.UNIX-NOS.doc

REDRESOARE – simulare PSPICE

Carrier Pidgeon Protocol

PowerPoint Presentation

Microsoft PowerPoint - E-learning_USO-22.ppt [Compatibility Mode]

Înregistrator de temperatură şi umiditate AX-DT100 Instrucţiuni de utilizare

L4. TEOREMELE ALGEBREI BINARE. FUNCȚII LOGICE ELEMENTARE. OPERAȚII LOGICE PE BIT. SINTEZA FUNCȚIILOR LOGICE DIN TABELE DE ADEVĂR 1. Obiective Prin par

1. a. Să se scrie un algoritm care să afişeze toate numerele de patru cifre care au cifra sutelor egală cu o valoare dată k, şi cifra zecilor cu 2 mai

PowerPoint Presentation

Controlerul LCD

MergedFile

PPSD

Object Oriented Programming

Microsoft PowerPoint - TDRC_II-03-Ethernet.ppt

Packet Tracer - Configurarea ACL-urilor extinse - Scenariul 1 Topologie Tabela de Adresare R1 Echipament Interfață Adresă IP Masca de subreţea Default

Lucrarea nr. 2 Aplicaţii de tip client Mihai IVANOVICI 6 martie 2006 Scopul acestei lucrări este de a vă familiariza cu modulul Python socket şi cu mo

Microsoft Word - CV Opriţoiu Flavius.doc

Sisteme de calcul în timp real

Microsoft Word - Prelegere 1 - Bratu C. - Microcontrolerul.doc

Example Title with Registration Microsoft® and Trademark SQL ServerTM

Laborator 7: PROIECTAREA BAZELOR DE DATE SUBPROGRAME in PL/SQL (partea I - proceduri) Un subprogram este un bloc PL/SQL cu nume (spre deosebire de blo

Utilizare Internet

Programarea şi utilizarea calculatoarelor

Addendum Syllabus 6 Microsoft Word 2016 REF Syllabus 6.0 Crearea unui document nou pe baza unor șabloane disponibile local sau online Microsoft

Ch

Microsoft Word - Case de marcat si Imprimante fiscale cu jurnal electronic.docx

III. Tablouri (Arrays) și Clustere

MINISTERUL EDUCAŢIEI NAȚIONALE UNIVERSITATEA TRANSILVANIA DIN BRAŞOV BRAŞOV, EROILOR NR. 29, , TEL , FAX Univers

Microsoft Word - Programarea Portului Paralel - IBM-PC. .doc

Microsoft PowerPoint - ImplementareLimbaj [Read-Only] [Compatibility Mode]

Guardian2012_RO3

Microsoft Word - 2 ES RO.doc

Manual de utilizare Set volan și pedale MG7402

Transcriere:

Strctra și Organizarea Calclatoarelor Titlar: BĂRBULESCU Lcian-Florentin

Capitoll 6 STRUCTURA SIMPLIFICATĂ A UNUI PROCESOTR MIPS

CONȚINUT Procesor MIPS c eecția pe n cicl Little-endian și Big-endian Registrele Mltipleor Vectorial Unitatea Aritmetică și Logică ALU Unitatea de control Analiza eecției ni instrcțini aritmetice Analiza eecției instrcținii LW Analiza eecției instrcținii SW Analiza eecției instrcținii BEQ 5/8/28 SOC_6 27-28 3

Procesor MIPS c eecția pe n cicl Pentr fiecare instrcține primii doi pași snt identici:. Trimite către nitatea de memorie valoarea din PC și etrage de la acea adresă instrcținea ce trebie eectată. 2. Citește nl sa doă registre, în fncție de anmite câmpri din instrcține. Dpă acești doi pași restl acținilor depind de tipl instrcținii. Snt trei tipri de instrcțini: - acces la memorie - aritmetică și logică - salt. 5/8/28 SOC_6 27-28 4

Procesor MIPS c eecția pe n cicl Branch M 4 Add Add M PC address Intstrctions Memory Instrction Registers data data Register # Register # data 2 Register # M A L U Zero Data Memory address data RegWrite data control ALUSrc MemtoReg ALU operation MemRead MemWrite Branch 5/8/28 SOC_6 27-28 5

Procesor MIPS c eecția pe n cicl Valoarea scrisă în PC provine de la nl din cele doă smatoare, iar datele scrise in registre provin fie de la ALU, fie de la Memorie. Aceste linii de date n pot fi legate direct între ele; trebie adăgat n element care permite alegerea nei srse din mai mlte disponibile si conectarea acesteia la destinație. Această selecție se realizează c n dispozitiv nmit mltipleor, deși mlt mai corect ar trebi denmit selector de date. Mltipleorl alege din mai mlte intrări pe baza liniilor sale de selecție. Valorile acestor linii se bazează pe informații etrase din instrcține. Și alte nități trebie controlate în fncție de instrcține. De eempl accesl la memorie trebie sa fie de tip citire pentr LW și scriere pentr SW. Sa ALU trebie să eecte diferite operații. Ca și mltipleoarele, aceste operații snt decise pe baza nor linii de control ce vor fi modificate în fncție de diferite câmpri din instrcține. 5/8/28 SOC_6 27-28 6

Procesor MIPS c eecția pe n cicl Figra anterioara prezintă fll de date împrenă c mltipleoarele și liniile de control pentr principalele nități fncționale. O Unitate de Control primește instrcținea ca intrare și determină valorile liniilor de control pentr nitățile fncționale și pentr doă din mltipleoare. Al treilea mltipleor, cel care determină dacă PC + 4 sa adresa de salt este scrisă in PC este controlat și de ieșirea Zero din ALU, folosită la instrcținea BEQ Deoarece instrcținile MIPS snt simple si rmează n format rigros, decodificarea instrcținilor este n proces simpl iar valorile liniilor de control pot fi foarte șor setate. 5/8/28 SOC_6 27-28 7

Procesor MIPS c eecția pe n cicl Eecția oricărei instrcțini începe prin tilizarea PC pentr a obține adresa de memorie a instrcținii. Dpă etragerea din memorie (FETCH), registrele operand snt identificate în fncție de câmprile din instrcține Dpă ce operanzii snt etrași ei snt folosiți pentr a calcla o adresă de memorie (pentr citire sa scriere în memorie), pentr a calcla n rezltat aritmetic (pentr instrcțini aritmetice și logice) sa o comparație (pentr instrcțini de salt) Daca instrcținea este de tip aritmetic sa logic atnci rezltatl ALU este salvat într-n registr. Dacă instrcținea este de tip acces de memorie atnci rezltatl ALU reprezintă adresa de memorie nde sa de nde trebie scrisă sa citită valoarea dintr-n registr. Instrcținile de salt pot folosi ALU pentr a calcla dacă conțintl a doa registre este identic (folosit de instrcținea BEQ) 5/8/28 SOC_6 27-28 8

CONȚINUT Procesor MIPS c eecția pe n cicl Little-endian și Big-endian Registre Mltipleor Vectorial Unitatea Aritmetică și Logică ALU Unitatea de control Analiza eecției ni instrcțini aritmetice Analiza eecției instrcținii LW Analiza eecției instrcținii SW Analiza eecției instrcținii BEQ 5/8/28 CSO_6 26-27 9

5/8/28 SOC_6 27-28 LITTLE-ENDIAN AND BIG-ENDIAN 7 8 5 6 23 24 3 5 4 3 2 9 8 7 6 5 4 3 2 Big-endian order 7 8 5 6 23 24 3 2 3 4 5 8 9 4 5 6 7 2 3 Little-endian order sperior address inferior address 2 4 8 address sperior address inferior address 2 4 8 address

CONTENT Procesor MIPS c eecția pe n cicl Little-endian și Big-endian Registre Mltipleor Vectorial Unitatea Aritmetică și Logică ALU Unitatea de control Analiza eecției ni instrcțini aritmetice Analiza eecției instrcținii LW Analiza eecției instrcținii SW Analiza eecției instrcținii BEQ 5/8/28 SOC_6 27-28

REGISTRE 32 from PC Read address Instr[3:26] to Unit Control Instr[25:2] Instr[2:6] 5 5 Read register Read register 2 Read data 32 To ALU Instr[3:] Instrction memory Instr[5:] RegDst MUX 5 32 Write register Write data Registers Read data 2 32 To ALU or Data memory Instr[5:] 6 Signetend from Data Memory/ALU to ALU RegWrite Instr[5:] to control ALU 5/8/28 SOC_6 27-28 2

REGISTRE Read register 5 32 Write register 5 DEC r r r2 r3 r4 MUX 32 Read data... MUX 2 32 Read data 2 Write Data 32 r3 RegWrite 5 Read register 2 5/8/28 CSO_6 26-27 3

CONȚINUT Procesor MIPS c eecția pe n cicl Little-endian și Big-endian Registre Mltipleor Vectorial Unitatea Aritmetică și Logică ALU Unitatea de control Analiza eecției ni instrcțini aritmetice Analiza eecției instrcținii LW Analiza eecției instrcținii SW Analiza eecției instrcținii BEQ 5/8/28 SOC_6 27-28 4

MULTIPLEXOR VECTORIAL SEL 2 A[7..] B[7..] 8 MUX 48 C[7..] D[7..] 5/8/28 SOC_6 27-28 5

MULTIPLEXOR VECTORIAL A B C D A B C D A2 B2 C2 D2 A3 B3 C3 D3 A4 B4 C4 D4 A5 B5 C5 D5 A6 B6 C6 D6 A7 B7 C7 D7 S MUX 4 MUX 4 MUX 4 MUX 4 MUX 4 MUX 4 MUX 4 MUX 4 S Y Y Y 2 Y 3 Y 4 Y 5 Y 6 Y 7 5/8/28 SOC_6 27-28 6

CONȚINUT Procesor MIPS c eecția pe n cicl Little-endian și Big-endian Registre Mltipleor Vectorial Unitatea Aritmetică și Logică - ALU Unitatea de control Analiza eecției ni instrcțini aritmetice Analiza eecției instrcținii LW Analiza eecției instrcținii SW Analiza eecției instrcținii BEQ 5/8/28 SOC_6 27-28 7

ALU Cellă ALU pe n bit Ainv Binv Cin operation 2 a reslt b + 2 Cot 5/8/28 SOC_6 27-28 8

ALU Cellă ALU pe n bit pentr MIPS Ainv Binv Cin operation 2 a reslt b + 2 Less 3 Cot 5/8/28 SOC_6 27-28 9

ALU Cellă ALU pe n bit pentr MIPS (MSB) Ainv Binv Cin Operation 2 [Op Op] a Reslt b + 2 Less 3 Set Overflow detection Overflow 5/8/28 SOC_6 27-28 2

Cin ALU Less Cot Cin ALU Less Cot Cin ALU2 Less Cot Cin ALU3 Less Reslt Reslt Reslt2 Reslt3 Overflow ALU ALU pentr MIPS Set Ainvert Binvert b3 a3 b2 a2 b a b a... Carryin Operation Zero 5/8/28 SOC_6 27-28 2

ALU Comenzi ALU Ainv Binv op op Fnction AND OR add sb Set on less than NOR 5/8/28 SOC_6 27-28 22

ALU Legătra între instrcțini și comenzi ALU Load/ store J type R type Opcode ALUop Instrction operation Instr[5:] ALU operation ALU command LW load word add SW store word add BEQ branch eqal sb ADD add add SUB sbtract sb AND AND AND OR OR OR SLT Set on less than Set on less than 5/8/28 SOC_6 27-28 23

ALU Tabela de adevăr pentr comenzi ALU ALUOp ALUop ALUop Instr [5:] F5 F4 F3 F2 F F ALU Commands Ainv Binv op op 5/8/28 SOC_6 27-28 24

Instr[5:] ALU Format etension 6 Sign-etended bs bs bs bs bs bs bs bs bs bs bs bs bs bs bs bs bs 4 3 2 9 8 7 6 5 4 3 2 bs bs bs bs bs bs bs bs bs bs bs bs bs bs bs 4 3 2 9 8 7 6 5 4 3 2 Shift left 2 5/8/28 SOC_6 27-28 25

CONȚINUT Procesor MIPS c eecția pe n cicl Little-endian și Big-endian Registre Mltipleor Vectorial Unitatea Aritmetică și Logică ALU Unitatea de control Fll de date pentr o instrcține aritmetică Fll de date pentr o instrcținea LW Fll de date pentr o instrcținea SW Fll de date pentr o instrcținea BEQ 5/8/28 SOC_6 27-28 26

DATAFLOW AND CONTROL UNIT 4 Add Shift left 2 Add M Branch Instr[3:26] RegDst control MemtoReg MemRead MemWrite ALUop ALUSrc RegWrite 2 PC Instrction memory Instrction address Instr[25:2] Instr[2:6] Instr[5:] M Registers Read register Read register 2 Write register Read data 2 Write data Read data M A L U Zero 4 Data memory Address Write data Read data M Instr[5:] Signetend ALU control Instr[5:] 5/8/28 SOC_6 27-28 27

UNITATEA DE CONTROL Semnale de control Signal name RegDst RegWrite ALUSrc Branch MemRead MemWrite MemtoReg Effect when deasserted (deactivated) The destination address register comes from instr[2:6] None The second ALU operand comes from the second register otpt Read data 2 The PC vale is compted in fetch phase (PC+4) None None At Write Data inpt is transmitted the ALU otpt Effect when asserted (activated) The destination address register comes from instr[5:] The vale from Data inpt is written in selected register The second ALU operand is Sign-etended The PC vale is replaced with compted vale for jmp Is read the selected location in Data memory Is written the information from Write data inpt in selected location in Data memory At Write Data inpt is transmitted the otpt from Data memory block 5/8/28 SOC_6 27-28 28

CONȚINUT Procesor MIPS c eecția pe n cicl Little-endian și Big-endian Registre Mltipleor Vectorial Unitatea Aritmetică și Logică ALU Unitatea de control Analiza eecției ni instrcțini aritmetice Analiza eecției instrcținii LW Analiza eecției instrcținii SW Analiza eecției instrcținii BEQ 5/8/28 SOC_6 27-28 29

Analiza eecției ni instrcțini aritmetice 4 Add M Branch Instr[3:26] control MemtoReg RegDst ALUop ALUSrc RegWrite 2 PC Instrction memory Instrction address Instr[25:2] Instr[2:6] Instr[5:] M Write data Registers Read register Read data Read register 2 Write register Read data 2 M A L U Zero 4 M Instr[5:] ALU control Instr[5:] 5/8/28 SOC_6 27-28 3

CONȚINUT Procesor MIPS c eecția pe n cicl Little-endian și Big-endian Registre Mltipleor Vectorial Unitatea Aritmetică și Logică ALU Unitatea de control Analiza eecției ni instrcțini aritmetice Analiza eecției instrcținii LW Analiza eecției instrcținii SW Analiza eecției instrcținii BEQ 5/8/28 SOC_6 27-28 3

Analiza eecției instrcținii LW 4 Add M Branch Instr[3:26] RegDst control MemtoReg MemRead MemWrite ALUop ALUSrc RegWrite 2 PC Instrction memory Instrction address Instr[25:2] Instr[2:6] M Write data Registers Read register Read data Read register 2 Write register Read data 2 M A L U Zero 4 Data memory Address Write data Read data M Instr[5:] Signetend ALU control 5/8/28 SOC_6 27-28 32

CONȚINUT Procesor MIPS c eecția pe n cicl Little-endian și Big-endian Registre Mltipleor Vectorial Unitatea Aritmetică și Logică ALU Unitatea de control Analiza eecției ni instrcțini aritmetice Analiza eecției instrcținii LW Analiza eecției instrcținii SW Analiza eecției instrcținii BEQ 5/8/28 CSO_6 26-27 33

Analiza eecției instrcținii SW 4 Add Shift left 2 Add M Branch Instr[3:26] RegDst control MemtoReg MemRead MemWrite ALUop ALUSrc RegWrite 2 PC Instrction memory Instrction address Instr[25:2] Instr[2:6] Instr[5:] M Write data Registers Read register Read data Read register 2 Write register Read data 2 M A L U Zero 4 Data memory Address Write data Read data Instr[5:] Signetend ALU control Instr[5:] 5/8/28 SOC_6 27-28 34

CONTENT Procesor MIPS c eecția pe n cicl Little-endian și Big-endian Registre Mltipleor Vectorial Unitatea Aritmetică și Logică ALU Unitatea de control Analiza eecției ni instrcțini aritmetice Analiza eecției instrcținii LW Analiza eecției instrcținii SW Analiza eecției instrcținii BEQ 5/8/28 SOC_6 27-28 35

Analiza eecției instrcținii BEQ 4 Add Shift left 2 Add M Branch Instr[3:26] control ALUop ALUSrc RegWrite 2 PC Instrction memory Instrction address Instr[25:2] Instr[2:6] Registers Read register Read data Read register 2 Read data 2 M A L U Zero 4 Instr[5:] Signetend ALU control 5/8/28 SOC_6 27-28 36

Referințe (Trebie Citit) Patterson David, Hennessy John- Compter Organization and Design The Hardware/Software Interface (4 th Edition), Morgan Kafmann Pblishers, 28, Capitoll 4, pag. 298-449 sa Patterson David, Hennessy John- Compter Organization and Design The Hardware/Software Interface (3 rd Edition), Morgan Kafmann Pblishers, 24, Capitoll 5, pag. 282-367 5/8/28 SOC_6 27-28 37

ÎNTREBĂRI? 5/8/28 SOC_6 27-28 38