Unie Centrl e Proessmento Sistems Digitis CIn-UFPE Geris Como funion um omputor simples Uni. ontrole ALU MAR MBR Uni. proessmento Progrms + Dos E/S Buffers Instrution Register Progrm Counter MAR Memory Aress Register MBR Memory Bus Register Víeo Telo Como funion um omputor? Iníio Bus próxim Exeut Término Inrement Bus Deoifi Bus operno Exeut Armzen resulto Exemplo Delrções simples Muits vezes o proessmento e um informção exige um seqüêni e trnsferênité que tref sej termin. Exemplo 01: /* Progrm que função (+b-) e mostr o resulto (z = +b-) Sig: CLRLD /* Cler umulor, e rreg vlor e A em X /* 1o. vlor, gur resulto e lê novo vlor /* 2o.vlor, gur resulto e lê novo vlor SUB /*SUB 3o.vlor, gur resulto DISP Sig /*mostr resulto e repete álulo em Como onstruir um unie e ontrole que implemente este progrm? Esto Esto/sí Sig: /CLRLD / / /SUB /DISP A umulor sí = +b- A= =- =- =0 =0 CLRLD Sig: /CLRLD / / /SUB /DISP A=b =0 X= =0 =1 =2 A= = X=b =0 =1 =2 A = b - -+b +b- sí +b- - 0 - - 0+b- b - X +/- ontrole =+b X= =0 =1 =2 Tul =1 SUB X +/- ontrole =+b- =0 =0 Tx=0 =1 DISP =- = +b- Tul T [0] = + [0] = ler [1] = - [1] = lo [2] = hol T y, T x, T z T ul CLRLD = [ 0, 1, 0, x ] = [ 1, 1, 2, 0 ] SUB = [ 1, 1, 2, 1 ] DISP = [ 0, 0, 1, x ] 1
T y, T x, T z T ul CLRLD = [ 0, 1, 0, x] = [ 1, 1, 2, 0] SUB = [ 1, 1, 2, 1] DISP = [ 0, 0, 1, x] = +b- A Inst Contor o Progrm () : X +/- ontrole en() 00 [0,1,0,x] CLRLD en+0() 01 [1,1,2,0] en+1(b) 02 [1,1,2,0] en+2() 03 [1,1,2,1] SUB - 0 [0,0,1,x] DISP - 05 - ------- Contor e progrm pu sí Exeução e um progm Bus Deoifi pu Inrement Bus operno Exeut pu Armzen resulto = + b - X = -; =-; = -; X = ; =0; = 0; X = b; =; = 0; X = ; = +b; =0; X = -; = +b-; =0; X = -; = +b-; =+b-; Do 0 15 sinl mgnitue Instrução 0 3 15 Opoe Opoe Enereço 3 0 0 1 3 0 1 5 3 0 0 1 (enereço) (operno) (Instrução) 3 0 0 1 3 0 1 5 3 0 0 1 3 0 0 1 3 0 1 5 3 0 1 5 3 0 0 1 3 0 1 5 3 0 1 5 3 = 16+ 216 516 2
3 0 0 1 3 0 1 5 3 0 2 2 3 0 0 1 3 0 1 5 3 0 2 2 Arquitetur o omputor Arquitetur o omputor Proessor ALU Control Unit MAR MDR Aress Bus Dt Bus Memory = Progrm ounter = Instrution register = Aumulor MAR = Memory Aress Register MDR = Memory Dt Register ALU = Arithmeti & Logi Unit Dispositivo e e sí(e/s) Input/Ouput - progrm ounter ini próxim ser exeut. - Instrution register reebe ser eoifi pel CPU. Aumulor (registror uxilir). Gur temporrimente vlores seno lulos. MAR Registror que ini próxim posição e ser refereni. Coneto o brrmento e enereços. MDR Registror uso pr reeber ou trnsmitir. Coneto o brrmento e. ALU (ULA) Unie Lógi básis Conjunto e instruções básis Exemplo e um progrm no µp1: A = B+C A (umulor), B e C são enereços e Formto o omputor O p o e A r e s s 1 5 8 7 0 Assembly Lnguge MhineLnguge LOAD B 0211 C 0012 LOAD ress <= ontents of memory ress (02) B(11) ress <= + ontents of memory ress (00) C(12) 3
Fluxo e exeução e instruções Fluxo e exeução e instruções etlh Feth Next Instrution FETCH MAR= =MDR =+1 Re Memory Deoe Instrution Exeute Instrution EXECUTE =+MDR DECODE MAR= Re Memory Opoe= Opoe=LOAD Opoe=STORE =MDR MDR= Write Memory A = B+C A (umulor), B e C são enereços e Assembly Lnguge MhineLnguge LOAD B 0211 C 0012 02 00 12 11 00 03 00 0 Projetos 2 unie LOAD B 1. Opoe ress 02 11 00 00 07 00 07 0 00 0 C 2. 00 12 01 00 02 12 03 0 11 01 01 12 11 01 11 12 1. Lo B 2. C Lo ress 00 02 12 03 11 0 <- onteúo o enereço e Projeto 1:Máquin e vener bombons Projeto Implementr um máquin que vene bombons, om s seguintes funionlies: A máquin eit moes e 5 e 10 entvos O vlor e bombom é e 15 entvos A máquin não á troo, ms gur os 5 entvos so o liente eposite us moes e 10 Centvos O bombom é libero utomtimente ssim que o vlor tinge um vlor igul ou mior que 15C. Os vlores umulos são presentos no isply. Desenvolver too o projeto por esrito, no ppel Digrm e estos Tbels vere Esquemátio Mostr simulção n ferrment Qurtus+II Implementr n pl FPGA Entr reset Moes 5C 10C Controle Sí Deoer BCD 7-Segm. e Liberr bombom Dispositivo e I/O f g bf e g b
Projeto 2: CPU bits bits 0 1..n 0 1..n Brrmento e Brrmento e enereços Brrmento e CPU X ULA Tx Sttus Tul Controle Deoifior e instruções umulor Dispositivo e sí f e g b eoifior Projeto Implementr s seguintes funções n rquitetur omputionl projet 1. A = B+C-D 2. A = (B+C)/2 One: - A é o umulor - B, C e D são enereços e que rmzenm os (positivo ou negtivos) serem proessos - A, B, C e D possuem bits Defin s instruções neessáris pr exeução o progrm Sugir nomes e óigos pr s instruções 5