Arquitectura do Computador e Barramento

Tecnologia Informática - Tópicos


Introdução

Arquitectura e Barramento são portanto dois termos que identificam elementos distintos, mas que nos últimos tempos, com a chegada da informática a um cada vez maior número de leigos se foram deturpando e é hoje em dia vulgar ouvi-los como sendo a mesma coisa.

Existem dois problemas fundamentais associados a estes dois elementos:

arquitectura-at.gif (4151 bytes)

Figura 3.1 - Dispositivos externos comuns em computadores pessoais

Índice


Arquitectura do Computador

Introdução

Quando nos referimos aos termos chip set ou motherboard estamo-nos a referir especificamente à arquitectura do computador. No entanto:

1. Slot 1 for Pentium® II processor cartridge
2. ATX power connector
3. CPU fan headert
4. AGP slot Supports AGP 66MHz/133MHz (Sideband) 3.3V device
5. SB-LinkTM header
6. Super I/O chipset
7. Five PCI slots
8. System BIOS
9. Hardware monitoring
10. Two ISA slots
11. Two USB ports connectors
12. PS/2 mouse port connector
13. PS/2 keyboard port connector
14. Three 168-pin DIMM sockets support for SDRAM module
15. Floppy port connector
16. Primary IDE connector
17. Secondary IDE connector
18. Clock generator
19. Intel 440BXchipset (82443BX and 82371EB)
20. Front chassic fan header
21. Standard/EPP/ECP parallel port connector
22. 16550 fast UART compatible serial ports connector(COM2)
23. 16550 fast UART comlatible serial ports connector(COM1)

Figura 3.2 - Imagem duma motherboard e seus constituintes principais

A arquitectura de computador tem 3 objectivos fundamentais:

O princípio fundamental de coordenação dentro do sistema são os pedidos de interrupções (interrupt request-IRQ). Quando determinado dispositivo necessitava de participar no processamento emite um pedido ao CPU (IRQ). Este por sua vez, reconhecendo o pedido (cada dispositivo emite um IRQ único no sistema), pára por momentos as suas tarefas e inicia o processamento das tarefas requeridas pelo periférico.
Todos os dispositivos funcionam baseados neste princípio, pelo que se considera o CPU o coordenador geral entre os componentes do sistema. Como o CPU é o único coordenador das transacções no sistema não ocorrem conflitos.

As comunicações são realizadas através do barramento (em inglês, bus).
Além de coordenar as actividades dos dispositivos, o CPU é responsável pela cópia de dados da memória para o periférico e do periférico para a memória.

O computador deve ter possibilidade de evolução ao longo do tempo. Ou seja, o sistema deve prevêr o acrécimo de novos componentes. Estes devem interligar-se de forma simples e normalizada, para que as alterações no resto do sistema sejam nulas ou mínimas.
O funcionamento genérico duma arquitectura apresenta um conjunto de interfaces físicas (slots), que permite que outros dispositivos sejam acrescentados ao sistema.
Como esses novos componentes se interligam com o resto do sistema através dos mecanismos de interrupção, a sua implementação é muito simples e normalizada, o que provoca o aparecimento de dispositivos externos variados e para os mais diversos propósitos.

Arquitectura

Vectores evolutivos

No entanto, a tecnologia agora descrita é bastante limitada, pelo que ao longo dos anos foram surgindo evoluções. As evoluções verificadas surgiram fundamentalmente em três vectores:

Todos os dispositivos são tratados com a mesma importância, o que nem sempre é aconselhável ou desejável.
Com o evoluir da tecnologia, o desempenho que era suficiente, passou a ser verdadeiramente limitativo. Continuam a existir dispositivos que necessitam do mesmo desempenho, mas outros (e.g. interface de vídeo com o surgimento das interfaces gráficas) exigem novas capacidades.
Assim, não faz sentido que todos os dispositivos sejam tratados e tenham a mesma importância perante o sistema.
Esta característica tem sido expandida através da evolução no barramento.

Observe-se:

Torna-se portanto necessário que os dispositivos sejam responsáveis pelas suas próprias actividades no sistema, de forma a libertarem o CPU dessas tarefas.
Esta característica tem sido expandida através da evolução no barramento.

Cada dispositivo externo tem uma interface independente do resto do sistema, o qual obedece a regras de interligação já definidas. Com a evolução, determinados dispositivos externos passaram a ser comuns em muitos computadores (teclado, portas série/paralela, discos magnéticos, etc.)
É portanto razoável que o chip set permita e disponibilize de origem, interfaces e controladores para esses dispositivos. Esta metodologia, permite o balanceamento e optimização geral do sistema, o que seria dificíl de conseguir se os dispositivos fossem integrados a postriori.
Apesar de por vezes a integração ser sinónimo de limitações na expansão, neste caso não se verifica, pois praticamente todos os controladores podem ser "desligados" para que outros executem as suas tarefas.
Hoje em dia, os chip set disponibilizam variadíssimas funcionalidades como por exemplo:

Assim, cada chip set está preparado para trabalhar com um conjunto limitado desses componentes, pelo que determinado computador é evolutível dentro de determinados limites tecnológicos. Diz-se por exemplo que um chip set está preparado para suportar:

ArquitecturaÍndice


Barramento

Índice

Introdução

O Barramento é o componente da arquitectura do computador que interliga todos os componentes do computador. Trata-se dum conjunto de condutores eléctricos através dos quais passa três tipos de informação:

Embora nem sempre tenham existido sob estes termos, distinguem-se dois tipos de barramento dentro do computador:

BarramentoDuplo.gif (4569 bytes)

Figura 3.3 - Esquema de barramento local e de E/S [fonte]

No caso de ser um barramento E/S, pode ainda ser caracterizado em relação à sua aplicação:

BarramentoVarios.gif (4657 bytes)

Figura 3.4 - Esquema de barramento local, interno e externo

Barramento

Pedidos de Interrupção

Como se referiu em Coordenação, os pedidos de interrupção (IRQ) servem para o CPU coordenar as transacções entre os diversos componentes do sistema no acesso a memória e barramento. Este funcionamento é necessário pois apenas um dispositivo pode aceder ao barramento e memória num dado momento. Se mais do que um dispositivo aceder em simultâneo a comunicação é impossível.
Para isso, cada dispositivo tem associado um IRQ (numérico) único no sistema, que o identifica e lhe confere diferentes prioridades.

Por norma, um computador pessoal dispõe de vários IRQ’s, que são distribuídos pelos dispositivos no arranque. Cada dispositivo deverá requisitar um IRQ que ainda não tenha sido requisitado, o que a acontecer provocará conflitos de comunicação graves.

Barramento

Acesso Directo a Memória

Como se referiu em Comunicação, o CPU é responsável pela transacções entre periféricos e memória, o que quer dizer que o CPU está completamente dedicado à comunicação enquanto esta se realiza. Se está dedicado a tarefas de comunicação então não realiza o processamento das intruções propriamente ditas, o que faz diminuir o desempenho geral do sistema.

Para obviar este problema a solução encontrada foi implementar fora do CPU a capacidade de gerir o acesso à memória e barramento. Esta capacidade denomina-se Acesso Directo a Memória (Direct Memory Access - DMA) e está implementado exteriormente ao barramento e ao dispositivos, ou seja, é implementado como um novo componente da arquitectura.

Cada dispositivo dispõe dum canal de DMA que utiliza para informar o controlador de DMA do pedido de transferência de dados. O controlador por sua vez, realiza as tarefas de comunicação sem a participação do CPU que continuará a realizar as suas instruções. Por norma existe apenas um controlador de DMA em cada arquitectura, que disponibiliza quatro canais de DMA, o que permite ter quatro dispositivos interligados através de DMA, aumentando com isso o desempenho particular de cada dispositivo e por conseguinte do sistema em geral.

Barramento

Evolução histórica

Os primeiros computadores pessoais, basedos no Intel 8088 e 8086, funcionavam a velocidades de 4,77 e 6 MHz. A estas velocidades, o desempenho do barramento é suficiente para acompanhar o resto do sistema.
Esta implementação define por isso um único barramento para interligar CPU, RAM e todos os outros dispositivos (Figura 3.5). Este tipo de barramento surgiu com o IBM XT, é síncrono com o processador e tem uma largura de 8 bits. Posteriormente este barramento adoptou o nome de ISA XT ou ISA de 8 bits.
Nota: Quando dois dispositivos se baseiam no "sinal de velocidade" para coordenar a comunicação entre os dois, diz-se que são síncronos.

BarramentoUnico.gif (4161 bytes)

Figura 3.5 - Esquema de barramento único aplicado no IBM PC-XT (ISA-XT)

Em 1984 com o surgimento do processador Intel 80286 surgiu a norma ISA (Industry Standard Architecture), que é uma evolução do barramento anterior. O i80286 trabalha a velocidades entre 12-16MHz, o que é substancialmente superior à velocidade permitida pelo barramento anterior.
Optou-se então pela pela desincronização entre CPU e barramento. O barramento ISA trabalha sempre a 8 MHz, enquanto a velocidade do CPU varia. O barramento ISA (Figura 3.6), também denominado ISA AT para se distinguir do anterior, tem 16 bits de largura e a sua capacidade de transmissão atinge teoricamente os 6 MBps.

BarramentoISA.gif (4556 bytes)

Figura 3.6 -Esquema de barramento E/S e CPU assíncrono (ISA AT)

Posteriormente (1987), quando surgiu o processador Intel 80386 a 16-40MHz, o desempenho do barramento ISA passou a ser verdadeiramente limitativo do desempenho geral do sistema. Surgiram então duas normas muito semelhantes em conceitos mas incompatíveis em termos funcionais:

Em 1993 surgiu a norma VESA Local Bus (VLB), a qual se caracteriza fundamentalmente pelo sincronismo do barramento e CPU. Ou seja, tal como aconteceu com o primeiro barramento, o barramento está intimamente dependente do CPU e da sua velocidade (Figura 3.7). Esta norma surgiu simultaneamente com o processador i80486 e as suas principais implementações verificaram-se em arquitecturas baseadas nesse processador. Além disso, e porque a VESA é uma associação de empresas de equipamento de vídeo, as suas implementações foram quase exclusivamente nesse domínio. Quando surgiu o processador Intel Pentium, a norma não estava preparada para trabalhar com esse processador, pelo que foi ultrapassada pela concorrente PCI.

BarramentoVLB.gif (5024 bytes)

Figura 3.7 -Esquema de barramento integrado VLB (síncrono) e ISA(assíncrono)

Em simultaneo com a norma VLB, surgiu a norma PCI (Peripheral Component Interconnect), desenvolvida pela Intel mas sem patente, o que permitui a sua implementação por diferentes OEM’s sem pagamento de royalties e o consequente sucesso comercial.
A norma PCI (Figura 3.8) caracteriza-se por:

BarramentoPCI.gif (7244 bytes)

Figura 3.8 -Esquema de barramento E/S e CPU assíncrono (ISA AT)

Além do barramento de E/S, o barramento local funciona a determinada velocidade, que nem sempre é a mesma da do processador. Por isso, quando atrás se referiu que os barramento de E/S é síncrono ou assíncrono com o CPU. Isto acontece pois os processadores evoluiram no sentido de trabalharem a velocidades internas múltiplas da do barramento. Chama-se a isso multiplicação de velocidade. Além desta discrepância entre CPU e barramento local existe ainda a diferença entre barramento local e barramento E/S. É sobre esta diferença que se deveria referir os termos síncrono/assíncrono, pelo que o correcto seria dizer que determinado barramento "é síncrono ou assíncrono com o barramento local".

Antes de 1993, altura em que surgiu o processador Intel 80486DX2-50 (ver Processador-Velocidade de relógio), os barramento locais trabalhavam à mesma velocidade que o processador, portanto CPU e barramento local eram síncronos.
Quando surgiu a técnica da multiplicação de velocidade, o barramento local funcionava à velocidade de base, ou seja, se o processador tinha uma velocidade máxima de 50 MHz e duplicação (2x) de velocidade, então a velocidade do barramento local era de 25MHz.
Posteriormente, passou a haver fundamentalmente dois tipos de barramento caracterizados pela sua velocidade, 66 MHz e 100 MHz, sendo este último utilizado apenas em arquitecturas baseados no Pentium II.

A tabela seguinte apresenta um resumo das características dos barramentos de E/S apresentados:

Barramento

Ano

Largura
(bits)

Velocidade
(MHz)

Transmissão
(MBps)

Comentário

ISA (XT) 1980 8 Síncrono: 4.77, 6 4-6 Barramento e norma original
ISA (AT) 1984 16 Assíncrono: 8 8 Extensão do anterior. Lento mas ainda usado.
MCA 1987 32 Assíncrono: 10 40 Utilizado pela IBM. Abandonado.
EISA 1988 32 Assíncrono: 8 32 Utilizado em servidores. Abandonado
VLB 1993 32 Síncrono: 33, 40, 50 100-166 Utilizado em i486 e adaptadores de video.
PCI 1993 32 Assincrono: 33 132 Alto desempenho e independente de arquitectura.

Tabela 3.1 - Diversos tipos de barramentos de E/S e suas carcaterísticas [fonte]

BarramentoÍndice


Termos e Expressões

Índice

AGP

AGP (Advanced Graphics Port) é uma extensão da norma PCI e do seu barramento. Foi desenvolvido pela Intel com o obejctivo de dotar o sistema de video com desempenho superior ao resto dos dispositivos ao mesmo tempo que liberta ainda mais o resto do barramento e CPU para outras tarefas.
Para isso, a arquitectura deve incluir a norma AGP, o que implica a implementação de um novo protocolo e gestão de prioridades. Caracteriza-se por:

O conector é muito semelhante ao do PCI, mas colocado numa posição diferente (ver Slot/Conector). Praticamente todas as arquitecturas baseadas no processador Intel Pentium suportam esta norma.

Termos e Expressões

Bus Matering

É um conceito de acesso directo ao barramento e memória surgido em 1987 (MCA e EISA) que difere do conceito de DMA no sentido em que o capacidade de gestão dos acessos não depende de nenhum controlador independente mas sim de cada dispositivo (embora a arquitectura deva prever o facto). Assim, cada dispositivo que tenha capacidade de bus mastering sonda o barramento antes de qualquer acesso. Este conceito introduz o conceito de buferização de dados, o que possibilita que o dispositivo enquanto espera pelo acesso ao barramento/memória realize novas tarefas. Este conceito é também usado pela norma PCI.

Termos e Expressões

FireWire

Barramento de alto desempenho desenvolvido pela Apple, mediante a norma IEEE 1394. Pretende substituir grande parte das portas de grande capacidade de transgferência do computador hoje em dia existentes, tal como as portas paralelas e as SCSI.
A norma carcateriza-se por:

Termos e Expressões

Partilha de IRQ's

Num computador pessoal, existem 15 IRQ's. No entanto, vários estão previamente atribuídos e reservado, pelo que não é possível utilizá-los para dispositivos externos adicionais. Por norma um sistema tem disponíveis 9 ou 10 IRQ's, que têm de ser distribuídos por (se existirem) teclado, portas série e paralela, interface de video, discos e disquestes, interfaces de rede, etc. Depois de incluir todos estes dispositivos (apenas os mais típicos), poucos ou nenhum IRQ restará.
Surgiu então a necessidade de partilhar IRQ's. Este conceito surgiu inicialmente com as normas MCA e EISA e é actualmente usado pela norma PCI.
Basicamente o que acontece é que cada dispositivo tem um interface com o barramento de sistema, sendo esta interface responsável pela identificação de cada dispositivo e posterior encaminhamento dos dados até ao destino. A interface funciona portanto como um espécie de multiplexer (Figura 3.9).

BarramentoPartilha.gif (2706 bytes)

Figura 3.9 -Esquema de barramento com partilha de IRQ's

Termos e Expressões

Plug And Play

O conceito de Plug and Play (PnP) (Liga e Pronto) é uma norma de interligação de dispositivos adicionais que facilita a rápida e automática ligação destes ao resto do sistema.
Como se fez notar anteriormente, a configuração de IRQ’s, canais de DMA, endereços de E/S de cada dispositivo nem sempre é uma tarefa simples e rápida.
Por exemplo, a instalação dum modem num computador poderá ser uma tarefa complicada visto que o IRQ normalizado para a seu funcionamento coincide com o IRQ para uma porta série. Se o modem for compatível com a norma PnP tem capacidade de negociar com o barramento a utilização destes parâmetros dinamica e rapidamente sem necessidade da intervenção do utilizador.

Além disso é necessário que a arquitectura do computador e o sistema operativo sejam compatíveis PnP. Desde o surgimento do processador Pentium que todas as arquitectura são compatíveis PnP. Quanto a sistemas operativos apenas o MS-Windows 95/98 é compatível PnP.

Termos e Expressões

Porta Série/Paralela

Uma porta é por definição um local por onde se entra e sai. Em termos de tecnologia informática não é excepção.

Uma porta série (ver Figura 3.2-22 e 23) num computador pessoal da família Intel 80x86 baseia-se na norma RS-232. Esta é uma norma que define múltiplas características eléctricas sendo a mais importante o facto de definir a transmissão em série, que significa que existe apenas um canal por onde os sinais são transmitidos um a seguir ao outro. Além disso, é uma comunicação assíncrona, pois existem sinais de controlo adicionais para além da velocidade previamente negociada entre as portas intervenientes. Tem uma capacidade de transmissão variável entre 75bps e 115200bps, pelo que é utilizado em domínios em que as exigências não sejam muitas (rato, impressoras série, modems, etc.).

Uma porta paralela (ver Figura 3.2-21) num computador pessoal da família Intel 80x86 está conforme a norma Centronics. Ao contrário da porta série, em portas paralelas o sinal eléctrico é enviado em simultâneo e como tal tem um desempenho superior à porta série.No caso desta norma são enviados 8 bits de cada vez e o que faz com que a sua capacidade de transmissão atinja os 100KBps. Esta porta é vulgarmente utilizada para interface com impressoras, scanners.
A nova norma EPP/ECP (Enhanced Parallel Port/Enhanced Capability Port), mantendo a compatibilidade com a norma anterior, é capaz de elevar a capacidade de transmissão a mais de 1MBps o que a aconcelha para interface de discos removíveis (ZIP, CD-ROM, SCSI, etc.).

Termos e Expressões

SCSI

Esta norma, apesar de se poder considerar um barramento, dado a sua aplicação principal ser no domínio dos discos, será abordado nessa altura.

Termos e Expressões

Slot/Conector

Qualquer dispositivo externo deve ser interligado com o sistema através do barramento. Existem por norma vários dispositivos externos, como o teclado, as portas série e paralela, etc. Esses dispositivos são interligados com o sistema através de barramentos E/S internos.
Ao contrário destes, há dispositivos externos que não são comuns a todos os computadores e que se torna necessário acrescentar ao sistema ao longo do tempo. Estes dispositivos não podem ser interligados através do barramento interno, pelo que existem slots (Figura 3.10) de expansão normalizados que permite a conecção de novos adaptadores.
O adaptador por seu turno dispõe dum conector (Figura 3.11) normalizado que encaixa no slot respectivo.

BarramentoSlots.gif (179015 bytes)

Figura 3.10 -Esquema de slots para três normas de barramentos [fonte]

BarramentoConectores.gif (18949 bytes)

Figura 3.11 -Esquema de conectores para várias normas de barramentos [fonte]

Termos e Expressões

USB

USB significa Universal Serial Bus, e pretende ser o barramento norma para todos os dispositivos que necessitem de baixo desempenho, tal como: teclado, rato, modem, scanner, impressoras, etc.
Hoje em dia já grande parte das arquitecturas (chip sets) existentes, disponibilizam este tipo de barramento (ver Figura 3.2-11), e apenas uma certa inércia (ou estratégia comercial) da indústria ainda não permitiu que este barramento seja completamente utilizado.

Termos e ExpressõesÍndice


Sumário

O objectivo deste estudo é:

Índice


Última actualização: 02 Maio 2005

Tecnologia Informática - Tópicos