Barramentos
Transcrição
Barramentos
Arquitetura de Computadores - Barramentos e Estruturas de Interconexão por Helcio Wagner da Silva Barramentos • Para que servem: – Integrar os diferentes componentes da placa-mãe – Permitir instalação de placas de expansão • Evoluíram de forma expressiva nas últimas décadas – ISA, portas seriais, etc → PCI Express, USB 2.0, etc – Imagine uma placa de rede Gigabit Ethernet (1 Gbps ≈ 125 MB/s) conectada em um barramento ISA (5 MB/s) • Seriam usados apenas 4 % da capacidade nominal da placa 2 Algumas Estruturas de Conexão • • • • • • • • Portas serial Porta paralela Interfaces IDE Interfaces SATA Barramentos SCSI Barramentos ISA Barramentos MCA Barramentos EISA • • • • • Barramentos VLB Barramentos PCI Barramentos PCI-X Barramentos AGP Barramentos PCI Express • Barramentos USB 3 Porta Serial (COM) • • • • Conexão de mouse, p.ex. Transmite 1 bit por vez Mais antiga e comum Padrões – RS-232 (mais antigo) • Até 20 Kbps – RS-422 (mais atual) • Até 115 Kbps • Mais imune a ruídos • Infravermelho é uma porta serial – Até 4 Mbps Porta serial 4 Porta Paralela (LPT) • Conexão de impressoras • Transfere oito bits de uma só vez • Taxas de transmissão eram limitadas em 50 Kbps • Padrão IEEE 1284 (mais atual) – EPP (Enhanced Paralell Port) – ECP (Enhanced Capabilities Port) • Taxas de transmissão superiores a 8 Mbps • Padrão permite ainda a compatibilidade com o SPP (Standard Paralell Interface) Porta paralela 5 Interfaces IDE • Padrão no qual a controladora (módulo de E/S) é integrada ao disco – IDE significa Integrated Drive Eletronics • Em 1990, o padrão foi ratificado pelo ANSI, que o denominou ATA (AT-Attachment) – A denominação original seria PC-ATA, mas foi modificado haja vista critérios de marca registrada • Inicialmente, a IDE prestava-se apenas à conexão de HDs – Leitores de CD eram conectadas através de interfaces proprietárias • Isso mudou a partir da criação do protocolo ATAPI (AT Attachment Packet Interface) – Leitores de CD passaram a ser conectados na interface IDE 6 Interfaces IDE • Tipicamente, uma placa-mãe contém duas portas IDE, a primária e a secundária • Em cada uma delas podem ser conectados até dois dispositivos • A conexão se dá através de cabos flat • Para diferenciar dois dispositivos instalados na mesma porta, um dos dispositivos é configurado como mestre e o outro como escravo 7 Interfaces IDE • Apesar dos nomes, não há nenhuma relação de hierarquia entre os dispositivos definidos como mestres e os dispositivos escravos • Quando dois dispositivos compartilham uma mesma porta IDE, tem-se um barramento compartilhado – Obviamente, há uma degradação do desempenho • Havendo apenas um dispositivo por porta, ele deverá ser conectado ao conector da extremidade do cabo – A conexão do dispositivo no conector do meio do cabo fará com que o cabo fique sem terminação e os dados voltem sob a forma de interferência 8 Interfaces IDE • As interfaces antigas utilizavam a técnica de E/S Programada (PIO – Programmed I/O). • Mais especificamente: – PIO mode 0: 3.3 MB/s – PIO mode 1: 5.2 MB/s – PIO mode 2: 8.3 MB/s – PIO mode 3: 11.1 MB/s – PIO mode 4: 16.6 MB/s 9 Interfaces IDE • As interfaces atuais utilizam o DMA como técnica de E/S • Mais especificamente: – – – – ATA-4 (Ultra ATA/33, UDMA 33): 33 MB/s ATA-5 (Ultra ATA/66, UDMA 66): 66 MB/s ATA-6 (Ultra ATA/100, UDMA 100): 100 MB/s ATA-7 (Ultra ATA/133, UDMA 133): 133 MB/s • A partir do ATA/66, são utilizados cabos de 80 vias – Possuem o mesmo conector do cabo de 40 vias – Vias adicionais são fios terra para cancelamento de ruído 10 11 Interfaces SATA • Padrão criado para substituir as interfaces IDE • Utiliza transmissão serial (SATA = Serial ATA), enquanto IDE usa transmissão paralela • A taxa de transferência máxima do padrão original é de 150 MB/s – Contra os 133 MB/s de um disco IDE • A evolução para o padrão SATA II trouxe novos recursos: – tecnologia NCQ (Native Command Queuing) – taxa de transferência de 300 MB/s 12 13 Interfaces SATA • Cabo SATA é formado por dois pares de fios: um para transmissão e outro para recepção – No padrão IDE, há um único caminho de dados compartilhado entre a transmissão e a recepção • Utiliza a técnica da transmissão diferencial para cancelamento de ruídos • O conector SATA possui apenas sete pinos e o cabo possui apenas sete vias – O conector IDE possui 40 pinos e o cabo possui 40 ou 80 vias • O padrão SATA define também um novo conector de alimentação de 15 pinos, sendo usados cinco fios – O conector de alimentação IDE possui apenas 4 pinos, sendo usados 4 fios 14 Interfaces SATA • Sinal é transmitido de forma espelhada • Ruído é calculado como a diferença entre os componentes +TD e –TD, sendo reconhecido e descartado no receptor 15 Interfaces SATA • Pinagem do conector: Pino Função 1 Terra 2 A+ 3 A- 4 Terra 5 B- 6 B+ 7 Terra 16 Interfaces SATA Cabo SATA 17 Interfaces SATA Cabo SATA Cabo IDE De 80 vias 18 Interfaces SATA Portas SATA Portas IDE 19 Conector de alimentação SATA Pino Função 1 +3,3V 2 +3,3V 3 +3,3V 4 Terra 5 Terra 6 Terra 7 +5V 8 +5V 9 +5V 10 Terra 11 Reservado/Terra 12 Terra 13 -12V 14 +12V 15 +12V 20 Interfaces SATA 21 Interfaces SATA Conector de Dados SATA Conector de Alimentação SATA 22 Interfaces SATA • Uma porta SATA permite, à princípio, a instalação de apenas um dispositivo – Instalação mais fácil de um dispositivo – Problemas na instalação de vários dispositivos • Instalação de 16 HDs em um servidor (rack externo) requererá 16 portas SATA, por exemplo • Multiplicadores de Porta: – Permitem a instalação de até 15 dispositivos em uma mesma porta SATA – Capacidade de transferência é dividida entre os dispositivos 23 24 25 Barramentos SCSI • SCSI = Small Computer Systems Interface Interface para Sistemas Computacionais de Pequeno Porte • A SCSI original (SCSI-1) data do início da década de 80 – Possuía oito linhas de dados e operava a uma freqüência de clock de 5 MHz → taxa de transferência de 5 MB/s – Permitia a conexão de até sete dispositivos em uma cadeia circular (daisy chain) 26 27 Barramentos SCSI • Embora presente hoje também em discos IDE, a técnica RAID foi utilizada inicialmente em discos SCSI • RAID = Redundant Array of Independent Disks (Arranjo Redundante de Discos Independentes) • Anteriormente, RAID significava Redundant Array of Inexpensive Disks • Há vários tipos de RAID, cada qual com sua finalidade 28 RAID 0 • • • • Voltado para a melhoria do desempenho Dados escritos em seções seqüenciais dos discos Vários dispositivos acessados de uma só vez Não é voltado para tolerância à falhas 29 RAID 1 • • • • Dados são escritos em um ou mais discos Também chamado de espelhamento Redundância provê tolerância a falhas Desempenho ruim se comparado ao RAID 0 30 RAID 2 • Dados são escritos em seções seqüenciais dos discos, no nível de bit • Discos extras contêm Códigos de Hamming, no nível de bit, para detecção e correção de erros • São necessários vários discos de ECC 31 RAID 3 • Dados são escritos em seções seqüenciais dos discos, no nível de bit • Há apenas um disco extra, contendo um bit de paridade • Atendimento a solicitações simultâneas (leitura/escrita de duas ou mais palavras) é impossível Palavra de 32 bits 32 RAID 4 • Similar ao RAID 3, mas agora dos discos de dados são organizados no nível de bloco • Disco de paridade é um gargalo para atendimento a solicitações simultâneas Palavras de 32 bits Leitura/escrita 33 RAID 5 • Bits de paridade são distribuídos de maneira uniforme por todos os discos • Diminui a ocorrência de gargalos no atendimento a solicitações simultâneas Palavras de 32 bits Leitura/escrita 34 RAID 6 • Provê um bloco de paridade adicional • Usa Códigos Reed-Solomon para proteção contra erros em dois discos 35 RAID 10 • Combinação de RAID 0 e de RAID 1 • Permite um melhor desempenho que o RAID 5 – não é preciso fazer um escrita extra • Requer mais espaço em disco que o RAID 5 36 Barramentos SCSI • Em 1991, foi introduzido o SCSI-2 • Principais alterações: – Expansão das linhas de dados para 16 ou 32 bits (Wide SCSI) – Aumento da freqüência de clock para 10 MHz (Fast SCSI) → taxas de transferência de 20 MB/s ou 40 MB/s – Conexão de até 15 dispositivos – Uso da transmissão diferencial → Tamanho máximo do cabo estendido de 6 m para 25 m – Cabos flat IDE medem 45 cm 37 Barramentos SCSI • Principais alterações promovidas pelo SCSI-2 (cont.) – Enfileiramento de comandos • Permite um dispositivo aceitar vários comandos concorrentes, vindos de vários outros dispositivos – Novo conjunto de comandos • Extensão do conjunto antigo de comandos • Novos dispositivos (scanners, drives de CD, etc) foram então suportados • Conjunto antigo era focado no uso apenas de HDs 38 Barramentos SCSI • SCSI-3 é, na verdade, um conjunto de padrões • Os documentos SCSI-3 são classificados em três categorias: – Comandos • Grupos de comandos para todos os dispositivos e/ou dispositivos específicos – Protocolos • Regras para comunicação entre dispositivos – Conectores • Métodos de sinalização e modos de transferência 39 Tipo Largura Clock Taxa Disp. Tam. Tam. HVD Tam. LVD SCSI-1 8 5 MHz 5 MB/s 8 6m - 25 m Fast SCSI 8 10 MHz 10 MB/s 8 1.5-3 m - 25 m Fast Wide SCSI 16 10 MHz 20 MB/s 16 1.5-3 m - 25 m Ultra SCSI 8 20 MHz 20 MB/s 8 1.5-3 m - 25 m Ultra Wide SCSI 16 20 MHz 40 MB/s 16 1.5-3 m - 25 m Ultra2 SCSI 8 40 MHz 40 MB/s 8 - 12 m 25 m Ultra2 Wide SCSI 16 40 MHz 80 MB/s 16 - 12 m 25 m Ultra3 SCSI 16 40 MHz 160 MB/s 16 - 12 m - Ultra-320 SCSI 16 80 MHz 320 MB/s 16 - 12 m - Ultra-640 SCSI 16 160 MHz 640 MB/s 16 - 12 m 40 Barramentos ISA • O ISA (Industry Standard Architecture) foi o primeiro barramento de expansão usado em PCs • Existiam duas versões: – Slots de 8 bits, usados pelos primeiros PCs • O 8088, apesar de trabalhar internamente com 16 bits, comunicava-se com os periféricos a 8 bits • No IBM PC, μP e barramento operavam a 4,77 MHz; no PC XT, ambos operavam a 8,33 MHz – Slots de 16 bits, usados a partir dos PCs 286 41 Barramentos ISA Contatos usados em placas de 8 e 16 bits Contatos usados apenas em placas de 16 bits (preservação da compatibilidade) 42 Barramentos ISA • Os slots ISA possuem 98 contatos! – 16 são para troca de dados – 82 são para endereçamento, alimentação, sinal de clock, solicitação de interrupção, etc 43 Barramentos ISA • Eram muito lentos – São necessários tempos de espera entre uma transferência e outra – Na prática, o barramento funciona à metade da freqüência nominal • Em barramentos de 16 bits operando a 8,33 MHz, a taxa de transferência é de apenas 8,33 MB/s • Considerando alguns outros tipos de overhead, a taxa de transferência cai para 5 MB/s, aproximadamente 44 Barramentos ISA • Freqüente a presença de jumpers para definição de endereços de E/S, solicitação de interrupção (IRQ) e DMA usados pela placa • Era necessário extremo cuidado para se evitar conflitos de hardware – Por exemplo, dois ou mais periféricos usando o mesmo endereço de E/S • Desconforto eliminado pelo ISA plug and play – Configuração de endereços feita pelo BIOS durante a inicialização do computador – O BIOS verifica quais endereços estão ocupados e atribui outros endereços aos novos periféricos instalados 45 Barramentos MCA • Com o surgimento do 80386 (que trabalhava com 32 bits) e de periféricos mais rápidos, tornou-se necessário um novo barramento • A primeira resposta foi o barramento MCA (Micro Channel Architecture), criado pela IBM • Bastante avançado para a época: – Era um barramento de 32 bits, operando a 10 MHz → taxa de transferência (prática) ≈ 32 MB/s – Suportava DMA • Ser padrão proprietário inviabilizou a sua adoção 46 Barramentos EISA • Inicialmente, as máquinas 386 e 486 eram equipadas com barramentos ISA – o mesmo que equipava as máquinas 286 – Elas eram conhecidas como AT 386 e AT 486 – Percebia-se clara degradação de desempenho, sobretudo na edição de imagens e vídeo – É nessa época que a fama das máquinas MACHINTOSH foi construída • Não demorou muito para que a Compaq criasse o EISA (Extended ISA) e abrisse suas especificações • O EISA também operava a 8,33 MHz, só que transferindo 32 bits e sem tempos de espera – Taxa de transferência ≈ 32 MB/s 47 Barramentos EISA • As dimensões do EISA são as mesmas do ISA de 16 bits, porém o slot é mais alto e possui duas linhas de contato 48 Barramentos EISA • Contatos de uma placa EISA • Slot EISA 49 Barramentos VLB • O EISA acabou tendo vida curta, pois em 1993 surgiu o barramento VLB (VESA Local Bus) • O VLB é um padrão aberto para transferência de 32 bits numa freqüência de 33 MHz – Taxa de transferência ≈ 133 MB/s • Surgiu como um barramento próprio para conexão da placa de vídeo • Foi posteriormente utilizada por outros periféricos 50 Barramentos VLB • Busca pela compatibilidade com o ISA rendeulhe o apelido de Very Long Bus • Era um barramento local – seus contatos eram ligados diretamente aos pinos do μP – μP era muito solicitado – Uma máquina não podia ter mais que 3 slots VLB 51 Barramentos PCI • Em 1992, foi introduzido o barramento PCI (Peripheral Component Interface) • Principais características do padrão original: – Largura igual a 32 bits – Freqüência nominal nativa de 33 MHz • Taxa de transferência = 132 MB/s – Suporte nativo a plug and play e DMA – Pinagem totalmente diferente do ISA • Revisões no padrão dobraram a largura do barramento (32 bits → 64 bits) e a freqüência nominal nativa (33 MHz → 66 MHz) 52 Barramentos PCI Freqüência do sinal de clock Largura do barramento Bloco de dados transferidos / pulso de clock Taxa de Transferência 33 MHz 32 bits 1 133 MB/s 66 MHz 32 bits 1 266 MB/s 33 MHz 64 bits 1 266 MB/s 66 MHz 64 bits 1 533 MB/s Slots PCI 53 Barramentos PCI 54 Barramentos PCI-X • Projetados especificamente para utilização em servidores Versão Freqüência do sinal de clock Largura do barramento Bloco de dados Taxa transferidos / de pulso de clock Transferência PCI-X 64 66 MHz 64 bits 1 533 MB/s PCI-X 133 133 MHz 64 bits 1 1.066 MB/s PCI-X 266 133 MHz 64 bits 2 2.132 MB/s PCI-X 533 133 MHz 64 bits 4 4.266 MB/s 55 Barramentos AGP • AGP quer dizer Accelerated Graphical Port • Lançado em 1996, com as seguintes finalidades: Slots PCI Slot AGP – Acelerar o desempenho de placas de vídeo em máquinas equipadas com µP Pentium II – Desafogar o barramento PCI • É formado por um único slot • Tecnicamente, o AGP não é um barramento – é uma conexão ponto-a-ponto projetada para conexão da placa de vídeo 56 Barramentos AGP Modo Freqüência de do Operação sinal de clock Largura do barramento Bloco de dados Taxa transferidos / de pulso de clock Transferência AGP x1 66 MHz 32 bits 1 266 MB/s AGP x2 66 MHz 32 bits 2 533 MB/s AGP x4 66 MHz 32 bits 4 1.066 MB/s AGP x8 66 MHz 32 bits 8 2.133 MB/s Versão Lançamento Modos de operação Alimentação AGP 1.0 Julho de 1996 x1 e x2 3,3 V AGP 2.0 Maio de 1998 x1, x2 e x4 1,5 V AGP 3.0 Junho de 2000 x1, x2, x4 e x8 1,5 V 57 Barramentos AGP 58 Barramentos AGP Pro • Criados para conexão de placas de vídeo de maior potência Slot AGP Pro é maior que o slot PCI Slot AGP comum é maior que o slot PCI 59 Barramentos AGP 60 Barramentos AGP Placa de vídeo com alimentação para 1,5V/3,3V (universal) sendo instalada em um slot AGP de 1,5V Não é possível instalar uma placa de vídeo com alimentação para 3,3V em um slot AGP de 1,5V 61 Barramentos PCI Express • Com a insuficiência do PCI em suportar periféricos cada vez mais rápidos, foi lançado o barramento PCI Express (PCIe) • Originalmente conhecido como 3GIO, o PCIe também não é um barramento, estritamente falando – é uma conexão ponto-a-ponto • Além deste, outro ponto de ruptura do PCIe em relação aos barramentos anteriores é a utilização da transmissão serial, em detrimento da transmissão paralela 62 Transmissão Paralela x Transmissão Serial 63 Por que Serial? • Problemas enfrentados pela transmissão paralela em altas freqüências de clock: – Interferência eletromagnética • Campos eletromagnéticos gerados pela passagem de corrente em um fio geram ruído em fios adjacentes, corrompendo os sinais que eles estiverem transmitindo – Atrasos de propagação diferentes • Os diferentes fios em uma transmissão paralela não têm rigorosamente o mesmo tamanho. Isso faz com que os sinais transmitidos tenham atrasos de propagação diferentes 64 Por que Serial? - Interferência Eletromagnética 65 Por que Serial? - Atrasos de Propagação Diferentes 66 Barramentos PCI Express • Dados são transmitidos através de pares de fios denominados pistas • A transmissão é full duplex, cada pista permitindo obter até 250 MB/s em cada direção – Quase o dobro do que permite o PCI! • O PCIe permite combinar várias pistas, de forma a melhorar o desempenho – Pode-se encontrar barramentos PCI Express com 1, 2, 4, 8, 16 e 32 pistas 67 Barramentos PCI Express 68 Barramentos PCI Express Versão Taxa de Transferência PCI Express x1 250 MB/s PCI Express x2 500 MB/s PCI Express x4 1.000 MB/s PCI Express x8 2.000 MB/s PCI Express x16 4.000 MB/s PCI Express x32 8.000 MB/s • O PCI Express é hot plug • Pode-se instalar placas PCIe mesmo com a máquina ligada • Versão define o tamanho dos slots 69 Barramentos PCI Express 70 71 Barramentos PCI Express • Diferenças nos contatos de borda entre placas de vídeo PCI Express, AGP e PCI 72 Barramentos USB • O barramento USB (Universal Serial Bus) surgiu em 1995, a partir do USB Implementers Forum • A taxa de transferência do USB 1.1 ia de 1,5 Mbps (≈ 190 KB/s) a 12 Mbps (≈ 1,5 MB/s) – Para dispositivos tais como mouses e webcams, isso era o suficiente – Para HDs removíveis ou gravadores de DVD externos, a taxa era baixa • Premido ainda pelo Firewire da Apple (400 Mbps ≈ 50 MB/s), o USB Implementers Forum lançou a versão 2.0 do USB no final de 2000 73 Barramentos USB • O USB 2.0 permite uma taxa de transferência de 480 Mbps (60 MB/s) • O conector continuou a ser o mesmo utilizado na versão anterior +5V dados Terra 74 Barramentos USB • Permitem conectar até 127 dispositivos ao mesmo tempo • Para tal, faz uso de hubs – Os mais comuns são os de quatro e sete conectores – permitem estender a distância máxima do dispositivo ao computador de 5 m para 30 m – Requerem alimentação externa, para a conexão de vários dispositivos • O USB é hot pluggable – dispositivos podem ser conectados com a máquina ligada 75 Chipset • Chipset é o conjunto de chips usados na placa-mãe • Vários chips eram utilizados nos primeiros computadores • Com o passar do tempo, os fabricantes passaram a integrar vários chips dentro de chips maiores • Hoje em dia, as placas-mãe possuem apenas dois grandes chips • Esses chips são denominados de Ponte Norte e Ponte Sul 76 Placa Mãe de um PC XT 77 Chipset Placa Mãe de um 486 78 Chipset • A Ponte Norte também é chamada de MCH (Memory Controller Hub) • Desempenha as seguintes funções: – Controlador de Memória – Controlador do Barramento AGP (se disponível) – Controlador do Barramento PCI Express x16 (se disponível) – Interface para transferência de dados com a Ponte Sul • Alguns µP AMD possuem um controlador de memória embutido • Em alguns casos, Barramentos PCI Express x1 também são controlados pela Ponte Norte 79 80 Chipset • A Ponte Sul também é denominada ICH (I/O Controller Hub) • Basicamente, sua função é controlar dispositivos onboard e de E/S, tais como: – – – – – – – – – Discos rígidos Portas USB Som e rede on-board Barramento PCI Barramento PCI Express (se disponível) Barramento ISA (se disponível) Relógio de Tempo Real (RTC) Memória de Configuração (CMOS) Dispositivos antigos, como controladores de interrupção e de DMA 81 82 Chipset • Quando o conceito de pontes passou a ser usado, a comunicação entre a Ponte Norte e a Ponte Sul era feita através do barramento PCI • Quando placas de vídeo e HDs de alto desempenho foram lançados, criou-se um gargalo automaticamente – Um HD ATA-133 possui a mesma taxa de transferência máxima do barramento PCI • Para as placas de vídeo de alto desempenho, a solução foi a criação de um novo barramento conectado à Porte Norte – o barramento AGP 83 84 Chipset • A solução definitiva para o problema foi encontrada com um barramento dedicado à comunicação entre as Pontes Norte e Sul • Com ela, o barramento PCI ficou mais aliviado • Foi a partir dessa arquitetura que a Intel deu às Pontes Norte e Sul os nomes de MCH e ICH • A velocidade e o nome dados à este barramento variam de acordo com o fabricante do chipset 85 86 Chipset Fabricante Nome dado ao Barramento Intel DMI (Direct Media Interface) ou Intel Hub Architecture ULi/Ali HyperTransport VIA V-Link SiS MuTIOL ATI A-Link ou PCI Express nVidia HyperTransport • Alguns chipsets são formados por apenas um chip • Neste caso, esse chip assume as funções da Ponte Norte e da Ponte Sul 87 Para Saber Mais • Clube do Hardware – www.clubedohardware.com.br • Guia do Hardware – http://www.guiadohardware.net 88