Você está na página 1de 25

ORGANIZAO E ARQUITETURA DE

COMPUTADORES I

Aula Inicial

prof. Dr. Csar Augusto M. Marcon


prof. Dr. Edson Ifarraguirre Moreno

2 / 25

Apresentao
Disciplina:
Organizao e Arquitetura de Computadores I
Carga horria:
>60 horas
Turma 128:

Professor: Edson Ifarraguirre Moreno


Horrios: 2LM e 4LM
Email: edson.moreno@pucrs.br
Pgina Web: www.inf.pucrs.br/~emoreno

Turma 138:

Professor: Csar Augusto Missio Marcon


Horrios: 2JK e 4JK
Email: cesar.marcon@pucrs.br
Pgina Web: www.inf.pucrs.br/~marcon

3 / 25

Contedo (Linguagens de Descrio de Hardware)


Nveis de abstrao e domnios de descrio
Viso geral de uma HDL
Estrutura de uma descrio HDL
Bibliotecas
Interfaces de mdulos
Implementao de mdulos

Tipos
Primitivos
Para sntese de hardware

Fundamentos bsicos para modelagem de circuitos

Portas, sinais e variveis


Atribuies
Comandos seqenciais
Processos
Paralelismo

Prototipao em FPGA (Field Program Gate Array)

4 / 25

Contedo (Circuitos Combinacionais)


Definio e Modelo
Circuitos Bsicos
Decodificadores, codificadores e codificadores com prioridade
Multiplexadores e Demultiplexadores
Tri-states

Circuitos para aritmtica inteira e circuitos lgicos


Somadores / Subtratores
ULA - Unidade lgico aritmtica

Comparadores
Atrasos de propagao
Variaes esprias em circuitos reais (hazards)

5 / 25

Contedo (Circuitos Seqenciais)


Definio e Modelo
Sinais de controle
Relgio
Set / Reset

Flip-Flops e Registradores
Memrias
Somente de leitura (ROM)
De leitura e escrita (RAM)

Contadores
Deslocadores
Mquinas de estado finitas
Mealy
Moore

Circuitos exemplo

6 / 25

Contedo (Modelos Arquiteturais)


Modelos bsicos de computador de programa
armazenado
Modelo de von Neumann
Modelo de Harvard

Tipos de arquiteturas
Baseada em acumulador
Baseada em banco de registradores (load-store)

Comparao estrutural de mquinas RISC e CISC

7 / 25

Contedo (Arquitetura von Neumann)


Modelo bloco de dados e bloco de controle
Um estudo de caso (Clepatra)
Especificao de arquiteturas de processadores

Registradores acessveis ao programador em linguagem de montagem


Conjunto de instrues
Formatos de instruo
Modos de endereamento
Linguagem de montagem

Programao em linguagem de montagem


Particionamento e implementao da especificao
Componentes do bloco de dados - operadores, memrias e conexes
Componentes do bloco de controle - mquina de estados
Otimizao de desempenho do processador

8 / 25

Relao com o Restante do Curso

9 / 25

Relao com o Restante do Curso

10 / 25

Bibliografia Bsica e Software de Apoio


BSICA
Circuitos combinacionais e seqenciais, tabelas de estado, diagramas de
tempo e diagramas de blocos
Hill, Frederick, J. Computer aided logical design with emphasis on VLSI. John
Wiley, 1993

Linguagem de montagem
Hennessy, John L. Organizao e projeto de computadores: a interface
hardware/software. Elsevier, 2005

SOFTWARE DE APOIO
Cleosoft ou CleoSim-Reiner (Simuladores para arquitetura usada como estudo
de caso)
XILINX - ISE (Simulador funcional para HDL e Ferramenta de sntese de
circuitos digitais)

11 / 25

Bibliografia Complementar

Circuitos combinacionais e seqenciais, tabelas de estado, diagramas de tempo e


diagramas de blocos

Circuitos combinacionais e seqenciais, tabelas de estado, diagramas de tempo e de


blocos, e HDLs

Vahid, Frank. Sistemas digitais: projeto, otimizao e HDLs. Bookman, 2008

Circuitos combinacionais e seqenciais, tabelas de estado, diagramas de tempo e de


blocos, e assembly

Hayes, John Patrick. Introduction to digital logic design. Addison-Wesley, 1994


Katz, Randy H. Contemporary logic design. Benjamin/Cummings, 1994

Mano, M. Morris. Computer system architecture. Prentice-Hall, 1981

HDLs

Smith, Douglas J. HDL chip design: a practical guide for designing, synthesizing and simulating
ASICs and FPGAs using VHDL or Verilog. Doone, 1996
Mazor, Stanley. A guide to VHDL. Kluwer Academic, 1996
Brown, Stephen D. Fundamentals of digital logic with VHDL design. McGraw-Hill, 2000
Chang, K. C. Digital design and modeling with VHDL and synthesis. IEEE Computer Society Press,
1997

12 / 25

Avaliaes
Provas:

P1:
P2:
PS:
G2:

17/04
17/06
24/06 (somente para alunos que no compareceram na P1 ou P2)
08/07

Trabalhos (entrega e apresentao):

T1:
22/04
T2:
29/05
T3:
01/07
OBS.: Entrega de trabalhos via Moodle

Composio das notas:


G1 = P1 * 0,35 + P2 * 0,35 + ((T1 + T2 + T3) * 0,3)

Aprovao
Presena >= 75%
G1 >= 7
G2 >= 5 (com G1 >= 4)

13 / 25

Converso entre Sistemas Analgico e Digital


Discretizao
Processo que transforma um sinal contnuo em sinal modelado por eventos
discretos
Processo obtido por quantificao e amostragem, que permite representar
numericamente um instante de um sinal

Processamento, Armazenamento e Transporte


Estados bsicos de um sistema digital. Uma vez digitalizado, o sinal est em
um destes trs estados

Linearizao
Processo que transforma um sinal modelado por eventos discretos em um
sinal contnuo
Processo obtido matematicamente com a interpolao de eventos discretos
ou fisicamente atravs de mecanismos que integram os sinais

14 / 25

Converso entre Sistema Analgico e Digital


(Sinal Analgico)

15 / 25

Converso entre Sistema Analgico e Digital


(Discretizao 1)

Valor
255

191

127

63

10

15

20

25

30

35

40

45

50 Tempo

16 / 25

Converso entre Sistema Analgico e Digital


(Discretizao 2)

Valor
255

191

127

63

10

15

20

25

30

35

40

45

50 Tempo

17 / 25

Converso entre Sistema Analgico e Digital


(Discretizao 3)

Valor
255

191

127

63

10

15

20

25

30

35

40

45

50 Tempo

18 / 25

Converso entre Sistema Analgico e Digital


(Discretizao 4)

Valor
255

(187, 9)
(186, 10)

191

(180, 11)

127

(65, 19)
63

(2, 42)
0

10

15

20

25

30

35

40

45

50 Tempo

19 / 25

Converso entre Sistema Analgico e Digital


(Processamento, Armazenamento, Transporte)

Sinais discretos (amostrado em unidades de tempo)


...

187

186

180

...

65

...

...

0xB4

...

0x41

...

0x02

...

...

0100 0001

...

0000 0010

...

Sinal digital decimal

0xBB
0xBA
Sinal digital hexadecimal

...

1011 1011 1011 1010 1011 0100


Sinal digital binrio

...

Quando comparado com sistemas analgicos


Facilidade para armazenar
Menor susceptibilidade a interferncias
Processamento simplificado

20 / 25

Converso entre Sistema Analgico e Digital


(Linearizao 1)

Valor
255

191

127

63

10

15

20

25

30

35

40

45

50 Tempo

21 / 25

Converso entre Sistema Analgico e Digital


(Linearizao 2)

Valor
255

191

127

63

10

15

20

25

30

35

40

45

50 Tempo

22 / 25

Converso entre Sistema Analgico e Digital


(Sinal Analgico)

Valor
255

191

127

63

10

15

20

25

30

35

40

45

50 Tempo

23 / 25

Exerccios de Converso entre Sistema Analgico e Digital


Pensar e responder:
1. Um sinal digital consegue transportar toda a informao de um sinal analgico? Se
consegue, como faz isto? Se no consegue, qual a limitao?
2. Como posso aumentar o espectro de freqncias a ser capturada pelo mundo
digital? E com relao amplitude? Quais as conseqncias (memria, tempo,
energia, ...)?
3. Um sinal digital mais imune a rudos que um sinal analgico? Porqu?
4. Posso fazer em software todas as atividades que fao em hardware? Porqu?
(QUESTO 53 - ENADE 2008-EC) Um concerto de um famoso pianista, com durao de
1 hora, foi digitalizado e armazenado em um site de msicas clssicas. A faixa de udio
considerada para digitalizao foi de 0 a 10 kHz, utilizando como taxa de amostragem 5
vezes a freqncia de Nyquist e amplitude quantizada em 512 nveis. Para realizar
transferncias de dados deste site, o computador utilizado consegue manter uma taxa
constante de 4 Mbits/s. Com base nas informaes acima, o tempo estimado, em
segundos, para a completa transferncia do arquivo para esse computador
(A) 1.000
(B) 810
(C) 720
(D) 405
(E) 90

24 / 25

Soluo de Exerccios de Converso entre Sistema


Analgico e Digital

(QUESTO 53 - ENADE 2008-EC) Um concerto de um famoso pianista, com


durao de 1 hora, foi digitalizado e armazenado em um site de msicas
clssicas. A faixa de udio considerada para digitalizao foi de 0 a 10 kHz,
utilizando como taxa de amostragem 5 vezes a freqncia de Nyquist e
amplitude quantizada em 512 nveis. Para realizar transferncias de dados
deste site, o computador utilizado consegue manter uma taxa constante de 4
Mbits/s. Com base nas informaes acima, o tempo estimado, em segundos,
para a completa transferncia do arquivo para esse computador
(A) 1.000
(B) 810
Nyquist 2 vezes a freqncia mxima = 2 * 10KHz = 20 KHz
(C) 720
(D) 405
5 vezes a freqncia de Nyquist = 100 KHz (100K amostras / seg)
(E) 90
512 nveis em codificao binria = 9 bits
Cada amostra = 900Kbits / seg ou 900kbps
1 hora de amostragem = 900Kbps * 3600 seg = 3.240Mb
Tempo de transferncia = 3.240Mb / 4 Mbps = 810 seg

25 / 25

Organizao x Arquitetura x Implementao

Arquitetura externa ou apenas Arquitetura A viso do programador de baixo nvel:

Arquitetura interna ou Organizao A viso do engenheiro eletro/eletrnico ou de


computao:

Instrues, registradores para armazenar dados, a linguagem de programao de montagem,


modos de endereamento, formato das instrues, pinagem, mecanismos de entrada e sada de
dados e endereos, etc.

Transistores, portas lgicas, registradores, unidades lgico-aritmticas, fios, multiplexadores, etc.

Implementao A viso do projetista de microeletrnica ou fsico

Caractersticas e restries fsicas: temperatura mxima, mxima rea, limite de potncia


consumida, ...

Casos para analisar:


1. Implementao de uma instruo de multiplicao com somas sucessivas ou
unidade multiplicativa. Onde entra a arquitetura, a organizao e a implementao?
2. Como analisar processadores x86 implementados por diversos fabricantes? uma
questo de arquitetura, organizao ou implementao?