14
Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney Calazans Fabiano Hessel Fernando Moraes Introdução a Organização de Computadores 1 - Introdução Última alteração: 02/08/2005 http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br Acesso ao material e contatos Material da disciplina http://www.inf.pucrs.br/~calazans/org_comp.html http://www.inf.pucrs.br/~moraes/org/ http://www.inf.pucrs.br/~calazans/orgcomp_mat.html Contato com o professores: mailto:[email protected] mailto:[email protected] Org_Comp http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br Uma visão das disciplinas de Arq/Org Computadores ) . . ( . ) . . ( D C D C B A B A F + + = 1. Álgebra Booleana http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br F ) . . ( . ) . . ( D C D C B A B A F + + = 1. Álgebra Booleana 2. Circuitos Digitais Uma visão das disciplinas de Arq/Org Computadores

Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

Embed Size (px)

Citation preview

Page 1: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

Pontifícia Universidade Católica do Rio Grande do SulFaculdade de Informática (FACIN-PUCRS)

Ney CalazansFabiano Hessel

Fernando Moraes

Introdução a Organização de Computadores

1 - Introdução

Última alteração: 02/08/2005

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Acesso ao material e contatos

� Material da disciplina� http://www.inf.pucrs.br/~calazans/org_comp.html

� http://www.inf.pucrs.br/~moraes/org/

� http://www.inf.pucrs.br/~calazans/orgcomp_mat.html

� Contato com o professores:�mailto:[email protected]

�mailto:[email protected]

Org_Comp

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Uma visão das disciplinas de Arq/Org Computadores

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

Uma visão das disciplinas de Arq/Org Computadores

Page 2: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

Uma visão das disciplinas de Arq/Org Computadores

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Dados

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de ControleModelo Von Neumann

ORGANIZAÇÃODE

COMPUTADORES

Uma visão das disciplinas de Arq/Org Computadores

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Dados

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Controle

Modelo Von Neumann

5. Arquitetura

Arquitetura = visão do programador

Uma visão das disciplinas de Arq/Org Computadores

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Dados

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Controle

Modelo Von Neumann

5. Arquitetura

6. BUS

6. BUS

Comentar: importância de memórias cache e back plane

Uma visão das disciplinas de Arq/Org Computadores

Page 3: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Dados

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Controle

Modelo Von Neumann

5. Arquitetura

6. BUS

6. BUS

7. MEMÓRIA

Uma visão das disciplinas de Arq/Org Computadores

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Dados

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Controle

Modelo Von Neumann

5. Arquitetura

6. BUS

6. BUS

8. ENTRADA/SAÍDA

7. MEMÓRIA

Uma visão das disciplinas de Arq/Org Computadores

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Dados

F

)..(.)..( DCDCBABAF ++=

1. Álgebra Booleana

2. Circuitos Digitais

3. Comb / Seqüenciais

4. Bloco de Controle

Modelo Von Neumann

5. Arquitetura

6. BUS

6. BUS

8. ENTRADA/SAÍDA

7. MEMÓRIA

9. Paralelismo (multi-processamento)

Uma visão das disciplinas de Arq/Org Computadores

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Sumário

1 - Sistemas Digitais

2 - Projeto e Fabricação de SDs

3 - SDs Combinacionais e Seqüenciais

4 - Taxonomia de SDs

5 - O Processo de Projeto de SDs

6 - Projeto de SDs Auxiliado por Computador

7 - Organização x Arquitetura

Org_Comp

Page 4: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

1 - Sistemas Digitais - definição estrutural

�������������� ���������������� ���

������� �����

��� ���� ������

��� � ∈ ��� �

��� �

�� !� �

�� �

�� !� �

��� � �� " � �∈

��� �

��# �

��$�

��$!� �

��� �

�� !� �

�� !� �

�� �

�� " � �

�� " # �

�� " $!� �

�� " $�

Sistema Digital - Aparato dotado de conjuntos finitos deentradas e saídas e capaz de processar informaçãorepresentada sob forma numérica.

Em francês, systèmes numériques!

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Sumário

1 - Sistemas Digitais

2 - Projeto e Fabricação de SDs

3 - SDs Combinacionais e Seqüenciais

4 - Taxonomia de SDs

5 - O Processo de Projeto de SDs

6 - Projeto de SDs Auxiliado por Computador

7 - Organização x Arquitetura

Org_Comp

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

2 - Projeto e Fabricação de Sistemas Digitais

� Três ramos do conhecimento científico envolvidos:� Ciência da Computação, Física de Semicondutores e

Matemática Aplicada

� �%����������&������

'������������������� ��

(����������'�) ������*�+�������&� ����&�����

(����������(����������� ��������'������

(����������� �,���*�+�������&� ����&�����

����-� ��������������������

. $��

��������. $��

(����/����*&������

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

2 - Projeto e Fabricação de SDs VLSI

� Projeto de SDs - método p/ desenvolver plano de um SD � manufatura automática

� Estilo de Projeto - conjunto de métodos

� Base da tecnologia atual - processos planares de fabricação

� CI VLSI moderno - pastilha de 1cm2 de lado, espessura < 1mm, >108 dispositivos

� Parâmetro de base - “min-feature-size”: em 96 - 0,25µm/ em 98 - 0,18µm e 0,12µm; hoje 0,09µm ou 90nm!!

Page 5: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

chipchip

circuitoscircuitosde de testeteste

Processos planares de fabricação

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

As zonas em azul escuro representam o roteamento em metal1

HP CPU 1987HP CPU 198780000 transistores80000 transistores

Um exemplo de circuito integrado

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Um microprocessador - antigo Pentium

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Projeto e Fabricação de SDs - Lei de Moore

� “A densidade de Circuitos Integrados dobra a intervalos regulares de 18 meses”.� Gordon E. Moore, (1965)

Page 6: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Sumário

1 - Sistemas Digitais

2 - Projeto e Fabricação de SDs

3 - SDs Combinacionais e Seqüenciais

4 - Taxonomia de SDs

5 - O Processo de Projeto de SDs

6 - Projeto de SDs Auxiliado por Computador

7 - Organização x Arquitetura

Org_Comp

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

3 - SDs Combinacionais e Seqüenciais

� SD Combinacional - comportamento de cada saída descrito como função exclusivamente dos valores instântaneos das entradas.

A

0

0

1

1

B

0

1

0

1

A

B

A^B0

0

0

1

A^B

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

3 - SDs Combinacionais e Seqüenciais

→ SD Seqüencial -qualquer SD que não possa, em geral atender à definição de SD combinacional.

X Xi-10

1

Xi1

0

Oscilador em Anel

A

XA

0

1

Xi0

Xi-1

Captura de Zeros

E

D

E

0

0

1

1

D

0

1

0

1

XiXi-1Xi-1

0

1

X

1 bit de RAM

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

3 - Armazenamento de Informação e Estado

� Em geral, laço de realimentação implica armazenar informação, e conceito de estado;

B

A X

A

0

0

1

1

B

0

1

0

1

X

0

0

0

1

Contra-exemplo: circuito com realimentação, contudo combinacional

Estado - excluindo realimentações redundantes, cada configuração distinta de valores destas.

Page 7: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

3 - SDs Combinacionais e Seqüenciais

� Definição de tipos de SDs baseada em estados:

� Todo SD é um SD seqüencial;

� SD combinacional - possui apenas 1 estado;

� SD estritamente seqüencial - sob mesmas condições, possui mais de um estado.

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Sumário

1 - Sistemas Digitais

2 - Projeto e Fabricação de SDs

3 - SDs Combinacionais e Seqüenciais

4 - Taxonomia de SDs

5 - O Processo de Projeto de SDs

6 - Projeto de SDs Auxiliado por Computador

7 - Organização x Arquitetura

Org_Comp

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

4 - Taxonomia de SDs

� Fundamental - escolha de critérios de classificação adequados

� Ortogonalidade - meta da escolha de critérios

� Critérios - podem depender de diversas características físicas, de uso, de construção, de custo, etc.

� Critérios: personalizabilidade, programabilidade, retenção da personalização, complexidade, forma de produção, relação entradas/saídas, pressupostos de sincronismo, etc.

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

NÃO PROGRAMÁVEIS OU RÍGIDOSEX: FAMÍLIA TTL 74XX

PROGRAMÁVEISEX: FAMÍLIA INTEL MCS'86

NÃO PERSONALIZÁVEISOU FIXOS

CIRCUITOSINTEGRADOS

PERSONALIZÁVEIS

PÓS-FABRICAÇÃO

POR FABRICAÇÃO

RETENÇÃO EM FUNCIONAMENTOEX: FPGA BASEADO EM RAM

RETENÇÃO ETERNA, EXCETO PORPROCEDIMENTOS ESPECIAIS EX:

EPROM, EEPROM, FPGABASEADO EM EPROM

RETENÇÃO ETERNA, APÓS PRIMEIRAPERSONALIZAÇÃO EX: PROM, FPGA

BASEADO EM ANTIFUSÍVEIS

PARCIALMENTE PERSONALIZÁVEIS,OU SEMI-DEDICADOS, OU PRÉ-

CARACTERIZADOS (SEMI-CUSTOM)

TOTALMENTE PERSONALIZÁVEIS,OU DEDICADOS (FULL-CUSTOM)

PRÉ-DIFUNDIDOSEX: GATE ARRAY

PÓS-DIFUNDIDOSEX: STANDARD-CELL

Uma Classificaçãode CIs baseada emquatro critérios

flexibilidade

Page 8: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Bloco K Bloco K Bloco KBloco K

Bloco K Bloco K Bloco KBloco K

Bloco K Bloco K Bloco KBloco K

Bloco K Bloco K Bloco KBloco K

m colunas canal de roteamento caixa de conexão

n linhas

Blocos comfunção lógicaprogramável

Canal

Linhas de conexão

Circuitos FPGA

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Sumário

1 - Sistemas Digitais

2 - Projeto e Fabricação de SDs

3 - SDs Combinacionais e Seqüenciais

4 - Taxonomia de SDs

5 - O Processo de Projeto de SDs

6 - Projeto de SDs Auxiliado por Computador

7 - Organização x Arquitetura

Org_Comp

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

5 - O Processo de Projeto de SDs

� Processo de Projeto - descrição inicial (especificação) � descrição final (projeto final ou detalhado);

� Diferença entre especificação e projeto final -quantidade de informação;

� Informação no projeto final permite fabricar automaticamente (ou quase) o SD;

� Problema - controlar a complexidade de projeto VLSI!

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Níveis de Abstração de Projetos

Page 9: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

5 - O Processo de Projeto de SDs

� Problema derivado - complexidade impede passagem direta especificação �projeto final;

� Solução - decomposição hierárquica do processo de projeto, continuum de descrições;

� Complexidade requer organização da hierarquia de descrições - modelos para representar o processo de projeto.

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

5 - Modelo de Suzim

� Critério: nível de abstração;

0

. ��������

�������

�������

�������

��1������*)�� ������" �

��1������*)�� ������

�+� ����

�+� ����

�+� ����

2 ����3����

. �������� 2 ����3����

000000

Transformação entre níveis (aresta) = ferramenta de projeto;Nível de abstração (vértices) = conjunto de descrições.

� Suzim propõe modelo unidimensional;

� Nível de abstração = quantidade de informação;

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

5 - Modelo de Gajski-Kuhn ou Diagrama Y

� Modelo bidimensional;� Critérios: nível de abstração e

domínio de descrição;� Domínio de descrição = tipo

de informação;

Elétrico

Lógico

Arquitetural

SistêmicoDomínio Estrutural Domínio Comportamental

Domínio Físico

Processadores, Memórias, Barramentos

Registradores, ULAs, Muxs, Decods

Portas Lógicas, Biestáveis

Transistores, Lineares Funções de Transferência, Equações Diferenciais

Expressões Booleanas, Tabelas de Transição

HDLs, Transferência entre Registradores

Processos Comunicantes, Algoritmos

Placas, Módulos Multi-chip

Planta Baixa de Blocos de CIs

Planta Baixa de Células Lógicas

"Layout" de Transistores e Lineares

Círculo = nível de abstração, eixo = domínio de descrição;Intersecção círculo-eixo (vértices) = descrição;Transformação entre níveis (aresta no grafo) = ferramenta.

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Mais abstra

ção

Eixo ComportamentalSistêmico

Algorítmico

Micro arquitetural

Lógico

Elétrico

Eixo Estrutural

Eixo Geométrico

Circuito Real(fabricado)

idéia

Page 10: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Eixo ComportamentalSistêmico

Algorítmico

Micro arquitetural

Lógico

Elétrico

Eixo Estrutural

Eixo Geométrico

processadores, memórias, barramentos

módulos de hardware

registradores, multiplexadores, operadores

Portas lógicas, flip-flops

Transistores, resistores, capacitores, indutores

processadores, memórias, barramentos

módulos de hardware

registradores, multiplexadores, operadores

Portas lógicas, flip-flops

Transistores, resistores, capacitores, indutores

Leiaute das máscaras, retângulos, polígonos

Células de biblioteca, modelos de posição de pinos

Macro-células, planta baixa de blocos

Módulos, clusters, cores, planos de clock/alimentação

Partições físicas, componentes, placas

Leiaute das máscaras, retângulos, polígonos

Células de biblioteca, modelos de posição de pinos

Macro-células, planta baixa de blocos

Módulos, clusters, cores, planos de clock/alimentação

Partições físicas, componentes, placas

Funções de transferência, equações diferenciais

Equações booleanas, tabelas verdade, BDDs

Máquinas de estado finitas, operações

Algoritmos

Especificações funcionais

Funções de transferência, equações diferenciais

Equações booleanas, tabelas verdade, BDDs

Máquinas de estado finitas, operações

Algoritmos

Especificações funcionais

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

EDIF

LEF / DEF

Spice

VHDL

C, C++, Hardware C

Java

Spice

CIF, GDS2

Eixo ComportamentalSistêmico

Algorítmico

Micro arquitetural

Lógico

Elétrico

Eixo Estrutural

Eixo Geométrico

processadores, memórias, barramentos

módulos de hardware

registradores, multiplexadores, operadores

Portas lógicas, flip-flops

Transistores, resistores, capacitores, indutores

Leiaute das máscaras, retângulos, polígonos

Células de biblioteca, modelos de posição de pinos

Macro-células, planta baixa de blocos

Módulos, clusters, cores, planos de clock/alimentação

Partições físicas, componentes, placas

Funções de transferência, equações diferenciais

Equações booleanas, tabelas verdade, BDDs

Máquinas de estado finitas, operações

Algoritmos

Especificações funcionais

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Eixo ComportamentalSistêmico

Algorítmico

Micro arquitetural

Lógico

Elétrico

Eixo Estrutural

Eixo Geométrico

processadores, memórias, barramentos

módulos de hardware

registradores, multiplexadores, operadores

Portas lógicas, flip-flops

Transistores, resistores, capacitores, indutores

Leiaute das máscaras, retângulos, polígonos

Células de biblioteca, modelos de posição de pinos

Macro-células, planta baixa de blocos

Módulos, clusters, cores, planos de clock/alimentação

Partições físicas, componentes, placas

Funções de transferência, equações diferenciais

Equações booleanas, tabelas verdade, BDDs

Máquinas de estado finitas, operações

Algoritmos

Especificações funcionais

1- “síntese”

2- simulação

3- mapeamento

4- place&route

5- fabricação

Processo Clássico de Sistemas Digitais (projeto RTL, do inglês, RegisterTransfer Level)

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Sumário

1 - Sistemas Digitais

2 - Projeto e Fabricação de SDs

3 - SDs Combinacionais e Seqüenciais

4 - Taxonomia de SDs

5 - O Processo de Projeto de SDs

6 - Projeto de SDs Auxiliado por Computador

7 - Organização x Arquitetura

Org_Comp

Page 11: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

6 - Projeto de SDs auxiliado por Computador

� Estrutura Geral de CAD:� Interface Gráfico-textual;� Arcabouço de Projeto

(framework);

* ��)������� �,���

� � ����

4�)��������

��� ��5��

���� ����6 /����!7�+����

� Descrições de projeto;� Ferramentas de projeto;� Bibliotecas.

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

6 - Exemplo de Sistema de Projeto

Xilinx ISE

Componentesdo projeto:arquivos,

dispositivos,bibliotecas

Ferramentasde projeto,relatórios

Janela demensagens Janela de edição

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

6 - Exemplo de Sistema de Projeto - cont.

Janela de Simulação:sinais, formas de onda,

medidas, etc.

Janela deRecursos: módulos,arquivos de teste,bibliotecas, scripts

SimuladorActive-HDL, da ALDEC

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

6 - Exemplo de Sistema de Projeto - cont.

RepresentaçãoFísica

Pinos do chip

Blocos lógicos:portas, flip-

flops,etc

Fios e outros recursos de

comunicação (muxes, switch

boxes)

Page 12: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Sumário

1 - Sistemas Digitais

2 - Projeto e Fabricação de SDs

3 - SDs Combinacionais e Seqüenciais

4 - Taxonomia de SDs

5 - O Processo de Projeto de SDs

6 - Projeto de SDs Auxiliado por Computador

7 - Organização x Arquitetura

Org_Comp

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

7 - Organização x Arquitetura

� Organização de Computadores – A visão abstrata do engenheiro (elétrico, de computação) de um computador:� Transistores, portas lógicas, registradores, unidades lógico-aritméticas,

fios, multiplexadores, etc.

� Arquitetura de Computadores – A visão abstrata do programador de baixo nível (linguagem de montagem, em inglês, assembly language):� Instruções, registradores para armazenar dados, a linguagem de

programação de montagem, modos de endereçamento, formato das instruções, etc.

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

7 - Organização x Arquitetura

� Afinal, o que é um computador? Uma definição:� Máquina com capacidade de acesso a meios de armazenamento

onde estão estocadas informações a serem processadas e as informações que dizem como processar as primeiras. CPU (Central Processing Unit)� Informações a serem processadas – dados� Informações de como processar – programas

� Programas – seqüência de instruções retiradas de um conjunto fixo de instruções reconhecidas como tal pela máquina

� Funcionamento: repetir, infinitamente, seqüência de 3 ações: buscar instrução, identificar instrução buscada, executar instrução buscada.

� Execução de instruções pode incorrer em acesso a dispositivos de entrada e saída.

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Modelo Geral de um computador

Bloco de Controle

MEMÓRIA DE DADOS

INPUT/OUTPUT

Bloco de Dados

MEMÓRIA DE PROGRAMA

���

Comentar: FPU, MMU, CACHES, predição de salto (CPU hoje é chamada de core)

Page 13: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

7 - Organização x Arquitetura

� Existem modelos gerais que estabelecem as formas de implementação da máquina computador

� Classificação de organizações de computadores:� Modelo von Neumann – dados e programas compartilham um

meio de armazenamento único� Mais simples, menos restritivo, menos eficiente – dados e

programas misturados permitem ao programador intercambiar a semântica de dados e programas ao longo do tempo

� Modelo Harvard – dados e programas estocados em meios de armazenamento distintos� Mais propenso a fomentar paralelismo, mais caro, mais complexo –

dados e programas separados permitem que ambos sejam facilmente tratados em paralelo

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Interface CPU-memória no modelo von Neuman

MemóriaCPU

PC

address

data

IRADD r5,r1,r3200

200

ADD r5,r1,r3

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Interface CPU-memória no modelo Harvard

CPU

PCdata memory

program memory

address

data

address

data

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

von Neumann vs. Harvard

� Harvard permite duas leituras de memóriasimultâneas (dado e instrução).

� A maioria dos processadores DSP (celulares, telecom, câmeras digitais,…) usamorganização Harvard:� Maior largura de banda de memória;� Tempo de acesso a dados mais previsível.

Page 14: Introd Org Comp - inf.pucrs.brcalazans/undergrad/orgcomp/Introd_Org_Comp.pdf · Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática (FACIN-PUCRS) Ney

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Ciclo de Busca - Von Neumann

t0: MAR ← PC /* 3 ciclos para busca */

PC ← PC + 1

t1: MDR ← PMEM(MAR)

t2: IR ← MDR

CONTROLADOR

IR

REGISTERMEM ADDRESS

REGISTERMEM DATA

MEMÓRIADE DADOS

E PROGRAMA

STATUSREGISTER

DATAPATHSTATUS

ALU

INTERRUPÇÕES

SINAIS DECONTROLE

PC

http:/ /www.inf.pucrs.br/~calazans/org_comp.html {calazans,moraes}@inf.pucrs.br

Ciclo de Busca - Harvard

t0: IR ← PMEM(PC) /* 1 ciclo para busca */PC ← PC + 1

CONTROLADOR

IRMEMÓRIA DEPROGRAMA

REGISTERMEM ADDRESS

REGISTERMEM DATA

MEMÓRIADE DADOS

STATUSREGISTER

DATAPATH

PMEM

DMEM

STATUS

ALU

INTERRUPÇÕES

SINAIS DECONTROLE

PC