Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas...

30
Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução a Sistemas Digitais Introdução a Sistemas Digitais Circuitos Assincronos Referencias: www.ee.technion.ac.il/courses/048878 www.ee.technion.ac.il/courses/048878 de de Ran Ginosar

Transcript of Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas...

Page 1: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30

25

Introdução a Sistemas DigitaisIntrodução a Sistemas Digitais

Circuitos Assincronos

Referencias:www.ee.technion.ac.il/courses/048878www.ee.technion.ac.il/courses/048878 de de Ran Ginosar

Page 2: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 2 / 30

25MotivaçãoMotivação

54 Mbps802.11

1 MbpsBluetooth

100 MbpsEtherent

133 MHzCPU

12 MbpsUSB

384 Kbps3G

75 MHzDSP

20 MHzFlash Memory

50 MHzMemory

66 MHzPCI

1 MHzCF

System-on-a-Chip (SOC) podem ter mais que 12 dominios de relógio

Desafio do projeto de sistemas com multiplos relogios (alta complexidade)

Page 3: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 3 / 30

25Circuitos SíncronosCircuitos Síncronos

Todos os eventos são sincronizados com o relógio (clk) global.

Page 4: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 4 / 30

25Circuitos SíncronosCircuitos Síncronos

Vantagens:• Simples de implementar sequencia• Amplamente conhecido e compreendido• Componentes disponiveis para re-uso.

Desvantagens:• A distribuição do clock é dificil devido ao clock skew.• Sensivel a variações de processo, temperatura e tensão• Não é modular• Alto consumo de potencia.

Page 5: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 5 / 30

25Circuitos AssincronosCircuitos Assincronos

Sincronização é atingida sem o uso de relógio (clk) global.

Page 6: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 6 / 30

25Circuitos AssincronosCircuitos Assincronos

Vantagens:• Não há problemas de distribuição de relógio• Desempenho baseado na média e não no pior caso como nos

circuitos sincronos.• Adaptavel a variações de processo e do ambiente (tensão,

temperatura, etc).• Componente modularizáveis• Baixa dissipação de potênciaDesafios:• Falta de ferramentas de CAD para o desenvolvimento• Aumento consideravel de área para reduzir hazards e glitches• A media do atraso as vezes pode ser grande• Falta de projetistas com experiência em assincronos.

Page 7: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 7 / 30

25IlustraçãoIlustração

Page 8: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 8 / 30

25Historia Historia dos dos Circuitos AssincronosCircuitos Assincronos

• Qualquer metodo hoje em dia aplicado nodesenvolvimento de circuitos assincronos refere-sea duas raízes muito importantes:

• Huffman – circuitos de modo fundamental

• David E. Muller – circuitos independentes develocidade, atualmente professor na Universidadede Illinois.

UCSC computerscientist

Page 9: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 9 / 30

25Por que pensar em circuitos assíncronosPor que pensar em circuitos assíncronos

• Nós estamos acostumados com o projeto de circuitos sincronos.– Lógica e aspectos temporais são simples.

Argumentos comuns de pensar em circuitos Assincronos:– Tecnicas de baixa potencia funcionam– Conseguimos atingir alta frequencia– Baixa sensibilidade a variações do processo, tensão e

temperatura– Alta modularidade (SoC)– Não tem distribuição de relógio (clk) e problemas de

temporização.– Circuitos mais seguros

• Importante: mas não conseguimos todas as caracteristicas a cimaao mesmo tempo!!!

Page 10: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 10 / 30

25Por que não usamos mais circuitosPor que não usamos mais circuitosassincronosassincronos??

• Aumento em área

• Dificil de projetar– Não é facilmente decomposto em blocos lógicos menores– Converter sincrono para assincrono é dificil– Temos que aprender algo novo!

• Poucas ferramentas de CAD tratam circuitos assincronos

Page 11: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 11 / 30

25 Por que Por que se se importamos importamos com com assincronosassincronosentãoentão??

• Porque temos que.• Circuitos sincronos pode ser um bom modelo para complexidades

pequenas mas pode ser um grande desafio para complexidadesgrandes (metaestabilidade, clock skew).

• A realidade é que circuitos assincronos podem nos trazer muitasvantagens. Exemplo de processadores, SOC com circuitos eprotocolos de comunicação assincronos.

Page 12: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 12 / 30

25DefiniçãoDefinição

• Circuitos Assíncronos possuem:– elementos essenciais que compõem a sua estrutura (lógica de

controle, armazenamento e processamento das informações).• Célula M de N entradas• Célula Muller (ou C-element)• Registrador Assincrono

– Protocolos de comunicação entre os blocos que gera asincronização entre os blocos através de sinais de request eacknowledge.

• Handshake (2 ou 4 fases)• Codificação de dados na comunicação

Page 13: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 13 / 30

25

ProtocolosProtocolos de de ComunicaçãoComunicação

Page 14: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 14 / 30

25SubstituindoSubstituindo o clock o clock porpor Handshaking Handshaking

R1 R2 R3CL3 R4CL4

CLK

CLK

CLK GATING SIGNAL

R1 R2 R3CL3 R4CL4

Page 15: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 15 / 30

25

R1 R2 R3CL3

R4

CTL CTL CTL CTL

CL4

REQ

ACK

R1 R2 R3CL3 R4CL4

LINK / CHANNELTOKEN FLOWCL TRANSPARENT TO HANDSHAKING

REQACKDATA

EXAMPLE:

SubstituindoSubstituindo o clock o clock porpor Handshaking Handshaking

Page 16: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 16 / 30

25FluxoFluxo de dado de dado

• Tranferencia de um dado = um ciclo de handshake• Registrador k está FULL quando tem dado• Quando registrador k+1 recebe o dado de k,

– Registrador k+1 torna-se FULL– Registrador k agora tem BUBBLE (≡ dado já foi copiado)

• FULL registrador não pode receber dado.• Apenas BUBBLE registrador pode receber dado.

Page 17: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 17 / 30

25ClassificaçãoClassificação dos dos ProtocolosProtocolos

• Handshake /Sinalização: 2-phase or 4-phase

• Direção: Push or pull• Codificação: Bundled data (single rail), or

dual rail (1-of-2), or1-of-n (e.g. 1-of-4), orm-of-n, …

Page 18: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 18 / 30

25 ““PreservaçãoPreservação”” do dado do dado

• Dados não disaparecem• Dados não aparecem (de nenhum lugar)• Um dado não substitui o outro• Um bloco (registrador ou CL) com n entradas e m saídas:

– (quando está em BUBBLE) espera por n dados em suasentradas

– Gera m dados em suas saidas.

n m

Page 19: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 19 / 30

25NosNos canaiscanais, , háhá portasportas

• As portas conectadas nos canais de comunicação podem serpassivas e ativas

– Um canal possui uma porta ativa e uma passiva.

– As portas ativas iniciam a comunicação– As portas passivas pacientemente esperam.

Page 20: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 20 / 30

25ProtocolosProtocolos de Handshake de Handshake

• Bundled data (conhecido como “single rail”)

REQ

ACK

DATA

PUSH CHANNEL(DATA & REQ

SAME DIRECTION)

REQ

ACK

DATA

4 PHASE PROTOCOL:ALWAYS LIKE THIS

SOME VARIATIONS

n

(pacote)

Codificação Single Rail

Page 21: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 21 / 30

25ProtocolosProtocolos de Handshake de Handshake

• Bundled data (conhecido como “single rail”)

REQ

ACK

DATA

PUSH CHANNEL(DATA & REQ

SAME DIRECTION)

REQ

ACK

DATA

2 PHASE PROTOCOL

n

(pacote)

Codificação Single Rail

Page 22: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 22 / 30

25PressuposiçãoPressuposição Bundling Bundling

• Cada linha de dado é um unico fio– “Bundled data” é conhecido como “single rail”

• Um lado de emissor (sender), time(DATA) < time(REQ)

• A ordem dos dados e do request:

Valid(DATA) ° REQ [≡ data valid precedes REQ=1 ]

• Diferenças de atraso nas linhas devem ser analisadas:– Posicionamento e roteamento– Margem de segurança– Inserção de buffer

Page 23: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 23 / 30

254-phase 4-phase vsvs 2-phase 2-phase

• “retorna para zero” (RZ), assimgasta tempo e potencia

• “sinaliza por nível”

• “não retorna para zero” (NRZ),assim apresenta menosaumento de potencia

• “sinaliza por transição”• Implementação é mais

complexa

4-phase Protocol 2-phase Protocol

Page 24: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 24 / 30

25ProtocoloProtocolo 4-phase dual rail 4-phase dual rail

• Cada bit de dado é codificado por 2 fios

ACK

DATA

PUSH CHANNEL

ACK

DATA

2n

EMPTY 0 0VALUE d.t d.f

VALID “0” 0 1VALID “1” 1 0Not used 1 1

EMPTY EMPTY EMPTYVALID VALID VALID

E 10

Page 25: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 25 / 30

25ProtocoloProtocolo 4-phase dual rail 4-phase dual rail

• Insensivel ao atraso– Cada bit pode ser propagado em diferente velocidade.

• 4 phase:1. O emissor (sender) envia uma palavra valida (V)2. O receptor (receiver) seta o ACK↑3. Emissor envia palavra vazia (E) (retira do dado)4. Receptor (receiver) seta ACK↓

• Cada mudança é indicada por um acknowledged• Problemas: Glitches, hazards

Page 26: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 26 / 30

25Bundled DataBundled DataDual RailDual Rail

aa.t

a

a.f

bb.t

b

b.f

C REQ

req

Single Rail Dual Rail

Page 27: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 27 / 30

25CodificaçãoCodificação: 1-de-4 : 1-de-4 SinalizaçõesSinalizações

• 2-bits usam 4 fios:– 00 1000– 01 0100– 10 0010– 11 0001– Null 0000

• Ainda usa 2x fios

• Metade das transições necessárias (metade da potência)

• Menos sensibilidade a ruidos

Page 28: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 28 / 30

25Bundled DataBundled Data1-of-41-of-4

a

a

bb

C REQ

reqSingle Rail 1-of-4

Page 29: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 29 / 30

251-of-2 (1-of-2 (2-phase2-phase) ) SinalizaçãoSinalização (dual-rail) (dual-rail)

• Cada bit em dois fios• Um fio (xV) indica o valor (0, 1)• O outro fio (xP) ajuda com a fase• Para mudar de um valor para outro:

– Se valor diferente então inverter xV

– Se de mesmo valor então, inverter xP

• Cada bit alterna de valido/valido/…– Não tem valor nulo

• Potencialmente mais rápido que 4-phase dual-rail00 01

10 11

xV xP

Even Odd

Page 30: Introdução a Sistemas Digitais - Instituto de ...fglima/aula21.pdf · Aula Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 1 / 30 25 Introdução

Aula

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 30 / 30

25Acknowledgement / Acknowledgement / IndicaçãoIndicação

• A porta / circuito indica acknowledge da sua entrada se para cadamudança de entrada, existe uma mudança na saída.

• Examplo: fio• Examplo que não apresenta indicação: porta AND

– Indica Acknowledge para todos os 1s: {01,10}11– Porem não indica acknowledge para 00{01,10}