Professional Documents
Culture Documents
2
1
0
t t
0 1 2 3
ESPECIFICAO, IMPLEMENTAO,
ANLISE E PROJETO
ESPECIFICAO
Refere-se descrio das funes do sistema e de
outras caractersticas, tais como velocidade,
tecnologia e consumo de potncia.
Especificao diz o que o sistema faz, sem
referncia a como ele executa suas operaes
IMPLEMENTAO
Diz respeito a como o sistema construdo e como
executa suas funes
constitudo de mdulos interligados, cada qual
executando uma funo definida no sistema.
ZILCIO SALES POLI-UPE
ESPECIFICAO, IMPLEMENTAO,
ANLISE E PROJETO
ANLISE
Tem como objetivo a determinao de suas
especificaes a partir de sua implementao.
PROJETO
Consiste em se obter uma implementao que satisfaa a
especificao do sistema
ZILCIO SALES POLI-UPE
COMPORTAMENTAL
ESTRUTURAL
FSICO
ZILCIO SALES POLI-UPE
Xi1 Xo
SISTEMA
1
SIMPLES Xo
Xi2
2
ESTRUTURAL
Descrito atravs de um conjunto de blocos ou mdulos
interligados, cada qual possuindo uma estrutura
conhecida e executando uma funo definida, de modo
que o sistema, como um todo, se comporte como
especificado atravs da descrio comportamental
FSICO
Descrito atravs de layouts da implementao no silcio
de transistores, portas lgicas e mdulos, de modo a
satisfazer as especificaes de projeto contidas na
descrio estrutural
ZILCIO SALES POLI-UPE
SISTEMA
ALGORTMO
RT
LGICO
CIRCUITO
ZILCIO SALES POLI-UPE
Standard-Cell
Macro-Cell
Blocos-Chip
Chip- Placas
DOMNIO FSICO
ZILCIO SALES POLI-UPE
DOMNIOS DE UM SISTEMA
FSICO
MUX1 DBUF
SP PC
UNIDADE Barra de MEM mux1 DBUF
DE endereo Barra de
PC
endereo
SP
CONTROLE 1
MUX2
MEM
+/-
mux2
Barra de dados
ADD/SUB
If R(3) = 0 then
PC :=PC + 1;
ESTRUTURAL else
Barra de
DBUF :=MEM(PC);
dados
MEM(SP) :=PC +1;
SP :=SP -1;
PC :=DBUF; COMPORTAMENTAL
end if ;
ZILCIO SALES POLI-UPE
D Q
DOMNIO ESTRUTURAL E FLIP-FLOP
CP QN
NVEL LGICO
SEUS NVEIS
NVEL RTL OU DE MDULO
PORTAS
ENTRADA
CLOCK
REGISTRADORES RX RY VDD
SOMADOR ADD
Y
A
NVEL DE B
SADA CIRCUITO
ZILCIO SALES POLI-UPE
VANTAGENS
MAIS FLEXVEL E PERMITE OTIMIZAO DE
CARACTERSTICAS PARTICULARES
DESVANTAGENS
O PROJETO DE CHIPS COMPLETOS LEVA MUITO
TEMPO E REQUER UM COMPLETO
CONHECIMENTO DA OPERAO DOS
COMPONENTES A NVEL DE CIRCUITO
ZILCIO SALES POLI-UPE
SNTESE
DEFINIO
SNTESE A CONVERSO DE UMA DESCRIO
COMPORTAMENTAL EM UMA DESCRIO ESTRUTURAL
TIPOS DE SNTESE
SNTESE DE SISTEMA
A TRANSIO DE UMA ESPECIFICAO A NVEL DE SISTEMA
EM UMA OU MAIS DESCRIES DE SUBSISTEMAS NO NVEL
ALGORTMO
SNTESE DE ALTO NVEL
CONVERTE UMA DESCRIO COMPORTAMENTAL DE
ENTRADA EM UMA DESCRIO DE SADA COMPOSTA DE UM
DATA-PATH E UMA UNIDADE DE CONTROLE
ZILCIO SALES POLI-UPE
SNTESE
A) DATA-PATH - CONSTITUDA DE ELEMENTOS RT
( UNIDADES FUNCIONAIS E ELEMENTOS DE
ARMAZENAGEM )
B) UNIDADE DE CONTROLE - DESCRIO DOS SINAIS
DE CONTROLE NECESSRIOS PARA EXECUTAR
TRANSFERNCIAS ENTRE REGISTROS E CONTROLAR O
SEQUENCIAMENTO DOS ESTADOS CONTIDOS NAS
DESCRIES RT
AS UNIDADES FUNCIONAIS (SOMADORES,
MULTIPLICADORES, ALUS, COMPARADORES) ALTERAM O
VALOR DOS DADOS E OS ELEMENTOS DE ARMAZENAGEM
(REGISTRADORES, CONTADORES, RAM, ROMS)
PRESERVAM O VALOR DOS DADOS
ZILCIO SALES POLI-UPE
SNTESE
SNTESE RT
OTIMIZAO DO DATAPATH E CONVERSO DA
DESCRIO COMPORTAMENTAL DA UNIDADE DE
CONTROLE, GERADA PELA SNTESE DE ALTO NVEL,
EM UMA DESCRIO ESTRUTURAL
SNTESE LGICA
GERA, A PARTIR DE EQUAES BOOLEANAS, UMA
LISTA DE LIGAES DE COMPONENTES (NETLIST),
DE UMA DADA BIBLIOTECA DE PORTAS LGICAS
TAIS COMO NAND, NOR, EXOR, NAND - OR - INVERT
ZILCIO SALES POLI-UPE
SNTESE
MAPEAMENTO TECNOLGICO
IMPLEMENTA NO SILCIO AS PORTAS LGICAS
ABSTRATAS PRODUZIDAS PELA SNTESE LGICA, A
PARTIR DE UMA BIBLIOTECA DE CLULAS FSICAS DE
UMA DADA TECNOLOGIA
ZILCIO SALES POLI-UPE
SCHEDULING
PARTICIONA A ATRIBUIO DE VARIVEIS E
OPERADORES DE UMA DESCRIO
COMPORTAMENTAL NO TEMPO
ZILCIO SALES POLI-UPE
ALLOCATION
UM PARTICIONAMENTO EM RELAO AO
HARDWARE. DETERMINADO O TIPO DE
UNIDADES FUNCIONAIS UTILIZADAS NO PROJETO
BIDING
DETERMINA-SE QUE OPERAO OU OPERAES
CADA UNIDADE FUNCIONAL VAI REALIZAR, ENTRE
AS OPERAES CONTIDAS NA DESCRIO
ESTRUTURAL
ZILCIO SALES POLI-UPE
MODELOS E ARQUITETURAS
MODELOS E ARQUITETURAS
EXEMPLO DE UM MODELO
1. DESCRIO TEXTUAL
MODELOS E ARQUITETURAS
EXEMPLO DE UM MODELO
2. DESCRIO POR ALGORITMO
LOOP
IF (DES_ANDAR = ATUAL_ANDAR) THEN
DIREO := PARADO;
ELSIF(DES_ANDAR < ATUAL_ANDAR) THEN;
DIREO := SOBE;
ELSIF(DES_ANDAR > ATUAL_ANDAR) THEN;
DIREO := DESCE
END IF;
END LOOP;
ZILCIO SALES POLI-UPE
MODELOS E ARQUITETURAS
EXEMPLO DE UM MODELO
3. DESCRIO POR MQUINA DE ESTADO
ORIENTADOS A ESTADOS
ORIENTADOS A ATIVIDADE
ORIENTADOS A ESTRUTURA
ORIENTADOS A DADOS
HETEROGNEOS
ZILCIO SALES POLI-UPE
S3 DIREO E
ANDAR DESEJADO a3/p NMERO
DE ANDARES
MODELOS ORIENTADOS A ESTADO
CIRCUITO DE MQUINA DE ESTADOS FINITOS (BASEADA EM
TRANSIO)
ZILCIO SALES POLI-UPE
a1
a1 a3
S13 /d2 S23 /d1 S33 /p
a2
a2 a1
a1 a2 a3
a2
S12 /d1
a1 S22 /p S32 /s1
a3
a1 a3
a1 a2 a3 a2
a3
a2 a1
S11 /p S21 /s1 S31 /s2
a3 a3
MODELOS ORIENTADOS A ESTADO
CIRCUITO DE MQUINA DE ESTADOS FINITOS (BASEADA EM
ESTADO)
ZILCIO SALES POLI-UPE
p1 t1 p5 t4 p4
t2
t3
TRANSIO
p3
ZILCIO SALES POLI-UPE
FORMALMENTE:
< P, T, I, O, u>
ONDE P UM CONJUNTO DE LUGARES, T UM
CONJUNTO DE TRANSIES, I UMA FUNO DE
ENTRADA QUE DEFINE TODOS OS LUGARES QUE
GERAM ENTRADAS PARA TRANSIES E O UMA
FUNO DE SADA QUE DEFINE TODOS OS LUGARES
DE SADA PARA CADA TRANSIO
A FUNO DE MARCA u DEFINE O NMERO DE
FICHAS EM CADA LUGAR
ZILCIO SALES POLI-UPE
I : I(t1) = {p1}
p1 t1 p5 t2 t4 p4 I : I(t2) = {p2,p3,p5}
I : I(t3) = {p3}
t3 I : I(t4) = {p4}
u: u(p1) =
1 p3
O : O(t1) = {p5}
u: u(p2) =
O : O(t2) =
1
{p3,p5}
u: u(p3) = 2
O : O(t3) = {p4}
u: u(p4) = 0
O : O(t4) =
u: u(p5) =1 {p2,p3}
ZILCIO SALES POLI-UPE
t1
t1
t2
t2
t1
t3
t1
t2
t1
t2
t4
CONCORRNCIA CONTENO
ZILCIO SALES POLI-UPE
Y
A D
u
B E
A(P)/c r s F
b
C G a
ZILCIO SALES POLI-UPE
Y Z
A2.1 A2.2
V W
A2.3
ENTRADA
Z
A1 A2 SADA
V
V W
ARQUIVO SADA
ZILCIO SALES POLI-UPE
start
J=1
MAX=0
J=J +1
No
No
Sim
J>N MEM(J)>MAX MAX=MEM(J)
)
Sim
end
ZILCIO SALES POLI-UPE
Memria de Memria de
Barramento
programa dados
do
Processador sistema
Hardware de
Coprocessador aplicao
de I/O
especfica
ZILCIO SALES POLI-UPE
MODELOS HETEROGNEOS
GRFICO DE FLUXO DE CONTROLE E DADOS
MODELOS HETEROGNEOS
GRFICO DE FLUXO DE CONTROLE E DADOS
C
LEIA X LEIA
1 2 E
W
+
X:=X+2
X:=X+3 A:=X+W ESCREVA A
A:=X+5
CONST 3 LEIA X
LEIA X CONST 2
+
+ CONST 5
ESCREVA A
+
LEIA X ESCREVA A
ZILCIO SALES POLI-UPE
MODELOS HETEROGNEOS
LINGUAGENS DE PROGRAMAO
IMPERATIVA
LINGUAGEM DECLARATIVA
A ORDEM DE EXECUO NO EXPLCITA.
A COMPUTAO REALIZADA ATRAVS DE UM
CONJUNTO DE FUNES OU REGRAS LOGICAS
INCLUI LINGUAGENS COMO LISP OU PROLOG
ZILCIO SALES POLI-UPE
MODELOS HETEROGNEOS
LINGUAGENS DE PROGRAMAO
LINGUAGEM IMPERATIVA
AS DECLARAES SO EXECUTADAS NA ORDEM
EM QUE APARECEM NO PROGRAMA
INCLUI TIPOS DE DADOS BSICOS COMO INTEIROS
E REAIS E TIPOS COMPOSTOS COMO MATRIZES E
REGISTROS
MODELAM PEQUENAS ATIVIDADES POR MEIO DE
DECLARAO E GRANDES ATIVIDADES POR MEIO DE
FUNES OU PROCEDIMENTOS
MODELAM FLUXO DE CONTROLE POR MEIO DE
CONSTRUTORES QUE ESPECIFICAM A ORDEM NA
QUAL AS ATIVIDADES SO REALIZADAS
ZILCIO SALES POLI-UPE
MODELOS HETEROGNEOS
LINGUAGENS DE PROGRAMAO
LINGUAGEM IMPERATIVA
TRABALHAM COM INSTRUES CONDICIONAIS (IF,
CASE), LOOP ( WHILE, FOR, REPEAT ) E CHAMADAS DE
SUBROTINAS (CALL)
USADAS EM PROBLEMAS RESOLVIDOS ATRAVS DE
ALGORTMOS
INCLUI LINGUAGENS COMO C E PASCAL
ZILCIO SALES POLI-UPE
MODELOS HETEROGNEOS
LINGUAGENS DE PROGRAMAO
MODELOS HETEROGNEOS
MQUINA DE ESTADOS PROGRAMA
INTEGRA UM MODELO DE MQUINA DE ESTADOS
FINITO COM HIERARQUIA CONCORRENTE COM
PARADIGMAS DE LINGUAGEM DE PROGRAMAO.
CONSISTE DE UMA HIERARQUIA DE ESTADOS-
PROGRAMA, CADA QUAL REPRESENTANDO UM MODO
DISTINTO DE COMPUTAO.
PARA UM DADO TEMPO APENAS UM SUBCONJUNTO
DE ESTADOS- PROGRAMA ESTAR ATIVO.
O MODELO PODE CONSISTIR DE ESTADOS-
PROGRAMAS SIMPLES E COMPOSTOS.
ZILCIO SALES POLI-UPE
MODELOS HETEROGNEOS
MQUINA DE ESTADOS PROGRAMA
ESTADO-PROGRAMA COMPOSTO PODE SER
DECOMPOSTO EM SUBESTADOS-PROGRAMA
SEQUENCIAIS OU CONCORRENTES
SUBESTADOS CONCORRENTES ESTARO ATIVOS
SEMPRE QUE O ESTADO PAI ESTIVER ATIVO
SUBESTADOS SEQUENCIAIS ESTARO ATIVOS APENAS
DURANTE PARTE DO TEMPO EM QUE O ESTADO PAI
ESTIVER ATIVO
A DECOMPOSIO SEQUENCIAL DE UM ESTADO-
PROGRAMA IR CONTER UM CONJUNTO DE ARCOS DE
TRANSIO, QUE REPRESENTAM O
SEQUENCIAMENTO ENTRE OS SUBESTADOS-
PROGRAMA
ZILCIO SALES POLI-UPE
MODELOS HETEROGNEOS
MQUINA DE ESTADOS PROGRAMA
TIPOS DE TRANSIO:
1. ARCO DE TRANSIO NA CONCLUSO
OCORRER APENAS QUANDO O ESTADO-PROGRAMA
FONTE TENHA COMPLETADO SUAS COMPUTAES E
A CONDIO NECESSRIA PARA A TRANSIO TENHA
SIDO SATISFEITA.
2. ARCO IMEDIATO OCORRER IMEDIATAMENTE
SEMPRE QUE A CONDIO PARA A TRANSIO TENHA
SIDO SATISFEITA, INDEPENDENTE QUE O SUBESTADO
FONTE TENHA COMPLETADO SUAS COMPUTAES.
ZILCIO SALES POLI-UPE
MODELOS HETEROGNEOS
MQUINA DE ESTADOS PROGRAMA
TIPOS DE TRANSIO:
1. ARCO DE TRANSIO NA CONCLUSO
OCORRER APENAS QUANDO O ESTADO-PROGRAMA
FONTE TENHA COMPLETADO SUAS COMPUTAES E
A CONDIO NECESSRIA PARA A TRANSIO TENHA
SIDO SATISFEITA.
2. ARCO IMEDIATO OCORRER IMEDIATAMENTE
SEMPRE QUE A CONDIO PARA A TRANSIO TENHA
SIDO SATISFEITA, INDEPENDENTE DO SUBESTADO
FONTE TER COMPLETADO SUAS COMPUTAES.
ZILCIO SALES POLI-UPE
MODELOS HETEROGNEOS
MQUINA DE ESTADOS PROGRAMA
REPRESENTAO GRFICA:
1. SISTEMA REPRESENTADO POR RETNGULOS
2. ESTADOS-PROGRAMA REPRESENTADOS POR
RETNGULOS COM OS CANTOS ARREDONDADOS
COM LINHAS PONTILHADAS SEPARANDO OS
SUBESTADOS CONCORRENTES.
3. TRANSIES REPRESENTADAS POR SETAS
4. ESTADO INICIAL REPRESENTADO POR
TRINGULO
5. CONCLUSO DO ESTADO REPRESENTADO POR
UM PEQUENO QUADRADO.
ZILCIO SALES POLI-UPE
MODELOS HETEROGNEOS
MQUINA DE ESTADOS PROGRAMA REPRESENTAO GRFICA
e3
REGISTRADOR DE
ESTADO
FUNO DE SADAS
PRXIMO FUNO
ESTADO DE SADA
ENTRADAS
S
ARQUITETURAS DE APLICAO ESPECFICA
CIRCUITO DE UM CONTROLADOR (NVEL LGICO)
ZILCIO SALES POLI-UPE
MUX1 DBUF
SP PC
Barra de MEM
endereo
1
MUX2
+/-
Barra de dados
ARQUITETURAS DE APLICAO ESPECFICA
CIRCUITO DE VIA DE DADOS(NVEL RTL)
ZILCIO SALES POLI-UPE
ENTRADAS
REGISTRADOR DE
ESTADO
VIA DE DADOS
FUNO DE
PRXIMO FUNO
ESTADO DE SADA SINAIS DE
CONTROLE
SADAS
STATUS
UNIDADE DE CONTROLE
ARQUITETURAS DE APLICAO ESPECFICA
ARQUITETURA MQUINA DE ESTADOS COM VIA DE DADOS
ZILCIO SALES POLI-UPE
SE CARACTERIZA POR:
UM NMERO REDUZIDO DE INSTRUES NO CDIGO
COMPILADO
MENOR NMERO DE ACESSOS MEMRIA NO CICLO
DE BUSCA DE INSTRUES
COMPILADOR DE CONSTRUO MAIS SIMPLES
ZILCIO SALES POLI-UPE
CONTROLE
MEMRIA DE VIA DE
MICROPROGRAMA DADOS
CONTADOR DE PC
MICROPROGRAMA
+1
LGICA DE
STATUS
SELEO
DE
ENDEREO MEMRIA
REGISTRADOR DE
INSTRUO
UNIDADE DE CONTROLE
ZILCIO SALES POLI-UPE
SE CARACTERIZA POR:
CDIGOS DE INSTRUO MAIS SIMPLES
COMPILADORES MAIS SOFISTICADOS
PEQUENOS CICLOS DE CLOCK
PEQUENOS NMEROS DE CICLOS POR INSTRUO
EFICIENTE PIPELINING DE FLUXO DE INSTRUES
DESEMPENHO SUPERIOR AOS PROCESSADORES CISC
ZILCIO SALES POLI-UPE
HARDWIRED DATAPATH
OUTPUT AND CONTROL
REGISTER
NEXT-STATE
FILE
LOGIC
STATE
REGISTER ALU
STATUS
DATA
INSTRUCTION INSTR.
CACHE
REG. CACHE
+/-
ZILCIO SALES POLI-UPE
1. CONCORRNCIA:
CONCORRNCIA E O NVEL DE ABSTRAO:
1. NVEL DE TRABALHO: EXECUO PARALELA DE DIVERSOS
PROCESSOS POR MEIO DE MECANISMOS COMO
MULTIPROCESSAMENTO, MULTIPROGRAMAO E
COMPARTILHAMENTO DE TEMPO.
2. NVEL DE TAREFA: REALIZAO CONCORRENTE DE DIVERSAS
TAREFAS QUE COMPOEM UM PROCESSO OU TRABALHO
3. NVEL DE DECLARAO: REALIZAO PARALELA DE
DECLARAES QUE COMPOEM UMA TAREFA
4. NVEL DE OPERAO: EXECUO CONCORRENTE DE
DIVERSAS OPERAES COMO ADIO E MULTIPLICAO
5. NVEL DE BIT: MANIPULAO DE BITS DENTRO DE UMA ALU
ZILCIO SALES POLI-UPE
CLASSIFICAO DE CONCORRNCIA:
CONCORRNCIA DIRIGIDA A DADOS: A ORDEM DE EXECUO DE
UMA DECLARAO OU OPERAO DETERMINADA PELA
DEPENDNCIA ENTRE OS DADOS, OU SEJA, PELA
DISPONIBILIDADE DO DADO DE ENTRADA, CASO SEJA O DADO A
SADA DE OUTRA OPERAO OU DECLARAO.
FLUXOS DE DADOS (DATAFLOW) SO CARACTERIZADOS POR
DECLARAES DE ATRIBUIO DE SINAIS.
b c d x
a
soma Subtrao 1:q = a+b
2: y = x+p
Multiplica adio
q o 3:p = (c-d)*q
p
y
ZILCIO SALES POLI-UPE
CLASSIFICAO DE CONCORRNCIA:
CONCORRNCIA DIRIGIDA A CONTROLE: EXECUO
CONCORRENTE DE MLTIPLAS LINHAS DE CONTROLE, SENDO
CADA LINHA UM CONJUNTO DE OPERAES QUE DEVEM SER
EXECUTADAS SEQUENCIALMENTE.
CARACTERIZA-SE PELO USO DE CONSTRUES QUE ESPECIFICAM
MLTIPLAS LINHAS DE CONTROLE EXECUTADAS EM PARALELO.
CONSTRUO FORK-JOIN: A DECLARAO FORK CRIA UM
CONJUNTO DE LINHAS DE CONTROLE CONCORRENTES A PARTIR
DE UMA NICA LINHA DE CONTROLE E A DECLARAO JOIN
ESPERA QUE ESTAS LINHAS SEJAM PROCESSADAS PARA QUE A
LINHA DE CONTROLE SUBSEQUENTE SEJA PROCESSADA.
2. CONSTRUO DE PROCESSO: CRIA UM CONJUNTO DE LINHAS
DE CONTROLE OU PROCESSOS OPERANDO DE MODO
CONCORRENTE.
ZILCIO SALES POLI-UPE
2. HIERARQUIA:
H DOIS TIPOS DE HIERARQUIA:
1. HIERARQUIA ESTRUTURAL: A ESPECIFICAO DE
UM SISTEMA REPRESENTADA COMO UM CONJUNTO
DE COMPONENTES INTERCONECTADOS. CADA UM
DESSES COMPONENTES PODE TER SUA ESTRUTURA
INTERNA ESPECIFICADA COMO UM CONJUNTO DE
COMPONENTES DE MENOR NVEL
INTERCONECTADOS.
A HIERARQUIA ESTRUTURAL PODE SER ESPECIFICADA
PARA DIVERSOS NVEIS DE ABSTRAO.
ZILCIO SALES POLI-UPE
Processador
Datapath
Data bus
memria
Control
lines
PASSAGEM DE MENSAGEM: A
Memria compartilhada
M TRANSFERNCIA DE DADOS ENTRE OS
PROCESSOS REALIZADA ATRAVS DE
Processo P Processo Q
UM MEIO ABSTRATO CHAMADO DE
begin begin CANAL.
------ ------
O CANAL UMA ENTIDADE VIRTUAL
M:=x; Y:=M;
SEM DETALHES DE IMPLEMENTAO.
------- -------
end; end; NA FASE DE IMPLEMENTAO, O
CANAL PODE SER IMPLEMENTADO NA
FORMA DE UM BARRAMENTO
CONSISTINDO DE UM CONJUNTO DE
Processo P Processo Q
FIOS E DE UM PROTOCOLO PARA
Send(x) receive(x)
SEQUENCIAR A TRANSFERNCIA DE
DADOS ENTRE OS FIOS.
ZILCIO SALES POLI-UPE
Comportamento X Q
O PROCESSO R S
Begin
Q();
EXECUTADO DEPOIS
Fork A(); B(); C(); join A B C QUE OS TRS SUB
R(); PROCESSOS
End comportamento X; A, B, C SO
FINALIZADOS
R PONTO DE
AB SINCRONIZAO
A B O EVENTO e2 CAUSA A INICIALIZAO
A1 B1 DO SISTEMA LEVANDO OS ESTADOS
CONCORRENTES A E B SUA
CONDIO INICIAL. O EVENTO e1, QUE
A2 B2 CAUSA A TRANSIO DO ESTADO A DE
e1 SEU SUBESTADO A1 PARA O SEU
SUBESTADO A2, INICIALIZA O ESTADO B
e2 PARA O SEU SUBSESTADO B1
ZILCIO SALES POLI-UPE
A B
6.2.1.1 A1 B
AB
e 1
A2 entrou 6.2.1.13
A2 B
2
ZILCIO SALES POLI-UPE