12.04.2013 Views

pdf (90) - Faculdade de Informática - pucrs

pdf (90) - Faculdade de Informática - pucrs

pdf (90) - Faculdade de Informática - pucrs

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2.6 Interfaces para conexão entre cores<br />

Com o aumento da <strong>de</strong>nsida<strong>de</strong> ocasionado pelos avanços na tecnologia <strong>de</strong> semicondutores, tornou-<br />

se possível a integração <strong>de</strong> numerosas funções em um único circuito integrado. Com isto, alguns<br />

periféricos que antes comunicavam-se com o processador através <strong>de</strong> barramentos externos, agora são<br />

integrados na mesma pastilha. Conseqüentemente, os projetistas passaram a ter que se preocupar com<br />

problemas tais como ter <strong>de</strong>senvolver barramentos intra-dispositivo que provejam comunicação entre<br />

os cores embutidos, e <strong>de</strong> cada core com o mundo externo.<br />

Em vista <strong>de</strong>ssa necessida<strong>de</strong> várias iniciativas surgiram. A maioria é voltada para ASICs, muito<br />

embora seus princípios possam ser aproveitados para o <strong>de</strong>senvolvimento <strong>de</strong> barramentos <strong>de</strong> comuni-<br />

cação para SoCs ou mesmo para FPGAs convencionais. A seguir, serão mostradas as principais idéias<br />

<strong>de</strong> dois <strong>de</strong>sses barramentos, que inspiram a proposta apresentada na Seção 5.6.<br />

2.6.1 CoreConnect<br />

CoreConnect é uma iniciativa da IBM para prover integração e reutilização <strong>de</strong> processadores e<br />

cores <strong>de</strong> aplicações específicas em um só dispositivo (SoC) [IBM99]. A arquitetura do barramento<br />

CoreConnect permite aos projetistas <strong>de</strong> hardware montar projetos <strong>de</strong> SoCs facilmente, <strong>de</strong>s<strong>de</strong> que o<br />

façam utilizando cores projetados com as especificações do barramento. Isto faz com que o tempo <strong>de</strong><br />

projeto e, conseqüentemente o time-to-market, do produto sejam bastante reduzidos.<br />

Conforme po<strong>de</strong> ser visto na Figura 2.15, essa arquitetura é composta por um barramento <strong>de</strong> pro-<br />

cessador local (PLB - Processor Local Bus), barramento periférico interno ao circuito integrado (OPB<br />

- On-chip Peripheral Bus), um circuito que une esses dois barramentos (bus bridge), e um barramento<br />

<strong>de</strong> controle <strong>de</strong> dispositivo (DCR - Device Control Register). Periféricos po<strong>de</strong>m ser conectados ao PLB<br />

com uma gran<strong>de</strong> largura <strong>de</strong> banda e baixa latência. Cores com freqüência mais baixa são conectados<br />

ao OPB, reduzindo o tráfego no PLB, o que aumenta o <strong>de</strong>sempenho geral do sistema. O princípio<br />

<strong>de</strong> funcionamento baseia-se em um árbitro, que <strong>de</strong>ci<strong>de</strong> qual core <strong>de</strong> sistema (System core) vai fazer<br />

acesso o barramento <strong>de</strong> cada vez.<br />

O PLB soluciona questões <strong>de</strong> alto <strong>de</strong>sempenho e baixa latência para cores integrados ao SoC.<br />

Ele é totalmente síncrono, e suporta a conexão <strong>de</strong> até 8 cores atuando como mestres e múltiplos<br />

cores escravos, cujo número vaira <strong>de</strong> acordo com a implementação do árbitro. Existem 3 diferentes<br />

versões <strong>de</strong> arquitetura, com 32, 64 ou 128 bits. Possui ainda barramentos <strong>de</strong> dados diferentes para<br />

leitura e escrita, o que torna possível transferências sobrepostas, a altas taxas. A especificação do<br />

PLB <strong>de</strong>screve uma arquitetura <strong>de</strong> sistema com <strong>de</strong>talhamento <strong>de</strong> sinais e transações.<br />

O OPB é um barramento <strong>de</strong> entrada e saída, criado para aliviar gargalos <strong>de</strong> <strong>de</strong>sempenho entre<br />

43

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!