180 likes | 285 Views
Arquitetura da Microrede A arquitetura especifica a topologia de interconexão da rede e a organização física, enquanto o protocolo especifica como utilizar os recursos da rede durante a operação do sistema.
E N D
Arquitetura da Microrede A arquitetura especifica a topologia de interconexão da rede e a organização física, enquanto o protocolo especifica como utilizar os recursos da rede durante a operação do sistema. As redes intrachip estão intimamente relacionadas a redes de interconexão para computadores paralelos de alto-desempenho, em que cada processador é um chip. Como em redes de interconexão de multiprocessadores, os nós estão fisicamente próximos uns dos outros e tem elos altamente confiáveis. Largura de banda e latência são requisitos para suportar paralelismo.
Arquitetura da Microrede A maioria dos SoCs atualmente tem uma arquitetura de barramento compartilhado, que oferece estruturas de interconexão mais simples. Nesta arquitetura, todos os dispositivos compartilham o meio de transmissão. Somente um dispositivo pode controlar o barramento de cada vez. Arbitragem de barramento torna-se necessária quando vários processadores tentam usar o barramento simultaneamente. O árbitro de barramento realiza arbitragem centralizada. Um processador deve primeiro obter a permissão do árbitro para utilizar o barramento.
Arquitetura da Microrede Considerando transição de controle e perda de desempenho na comunicação, a arbitragem deve ser tão rápida e rara quanto possível. O tempo de resposta de dispositivos lentos pode causar sérias perdas de desempenho na comunicação, porque o barramento permanece ocioso enquanto o mestre espera pela resposta do escravo. O uso de protocolos de transação dividida (split transaction) para barramentos de alto desempenho tende a minimizar a limitação da largura do barramento. A rede libera o mestre do barramento assim que a requisição é completada e o escravo deve obter acesso ao barramento para responder, possivelmente, depois de vários ciclos de barramento. Assim o barramento pode suportar transações múltiplas.
Arquitetura da Microrede Para melhorar a utilização do barramento e minimizar a espera causada por requisições simultâneas, o barramento particiona grandes transações em pacotes menores. A organização baseada em barramento é interessante para SoCs que integram não mais do que cinco processadores e, raramente, não mais do que dez mestres de barramento. Uso ineficiente de energia é outra limitação crítica em redes com barramento compartilhado. Cada transferência de dados é transmitida para todos, acarretando perda de energia.
Arquitetura da Microrede Futuros sistemas integrados conterão dezenas a centenas de unidades gerando informação que deverá ser transferida. Nestes casos, redes baseadas em barramento se tornariam um gargalo no que diz respeito a desempenho e consumo de energia. A rede direta ou ponto-a-ponto supera os problemas de escalabilidade em redes de meio compartilhado. Cada nó se conecta diretamente a um número limitado de nós vizinhos. Esses nós contém um bloco de interface com a rede, normalmente chamado roteador, que manipula a comunicação e se conecta diretamente com roteadores de nós vizinhos.
Arquitetura da Microrede Redes de interconexão direta são utilizadas para construir sistemas de larga escala, pois a largura total da banda de comunicação também aumenta quando o número de nós no sistema aumenta. Redes indiretas ou baseadas em chave (switch)implementam a conexão entre nós através de um conjunto de chaves. As chaves não processam a informação, mas provêem uma conexão programada entre suas portas, estabelecendo um caminho que pode ser modificado com o tempo. A distinção entre rede direta e indireta é confusa, à medida que roteadores e chaves se tornam complexos e implementam as mesmas funcionalidades. Algumas FPGAs são exemplo de redes indiretas.
Arquitetura da Microrede Backplane múltiplo e barramentos hierarquizados são dois exemplos de arquiteturas de interconexão heterogêneas ou híbridas. Essas arquiteturas agrupam unidades de comunicação fortemente acopladas com grande largura de barramento de comunicação, ao mesmo tempo em que oferecem elos com pequena largura de barramento de comunicação entre clusters. As arquiteturas heterogêneas utilizam uma fração dos recursos de comunicação e energia, oferecendo um desempenho comparável com as arquiteturas homogêneas, com grande largura de barramento. A eficiência energética fortalece a tendência em se empregar este tipo de arquitetura.
Arquitetura da Microrede A utilização eficaz de arquiteturas de microrede depende dos protocolos, em que os algoritmos de controle da rede são freqüentemente distribuídos. O controle da rede gerencia dinamicamente os recursos da rede durante a operação do sistema, num esforço para fornecer qualidade do serviço requisitado. A camada física é uma camada digital não confiável, em que a probabilidade de perturbações não é nula. Protocolos de comunicação de dados aumentam a confiabilidade da comunicação.
Arquitetura da Microrede Numa rede baseada num meio compartilhado, contenção cria uma fonte adicional de erro. Em geral, sincronização pode eliminar não-determinismo, ao preço de alguma perda em desempenho. Por exemplo, arbitragem de barramento centralizada elimina erros induzidos por contenção em um barramento síncrono, mas o lento clock do barramento e os ciclos de requisição-liberação do barramento impõem uma penalidade substancial no desempenho.
Arquitetura da Microrede Manipular dados em pacotes lida eficazmente com erros de comunicação. Enviar dados em pacotes através de um canal não confiável torna a identificação de erros e recuperação mais fáceis, porque as fronteiras dos pacotes contêm o efeito dos erros e permitem a recuperação à base de pacote por pacote. Utilizar códigos de correção de erros, que adicionam redundância à informação transferida, pode obter correção de erro na camada de comunicação de dados. Detecção de erro e protocolos de recuperação de erro baseados em pacotes, que foram desenvolvidos para redes tradicionais, podem complementar correções de erro.
Arquitetura da Microrede Parâmetros, tais como tamanho do pacote e número de pacotes, podem ser ajustados para alcançar o desempenho máximo, a uma probabilidade de erro residual e dentro de limites de consumo de energia. A camada de rede implementa o controle de tráfego em arquiteturas de rede com muitos canais de comunicação. Na maioria das redes intrachip de hoje em dia, todos os elementos processadores se conectam a um mesmo canal: o barramento intrachip, deixando a camada de rede vazia. Quando um conjunto de elos conecta os elementos processadores, deve-se decidir como estabelecer conexões entre elos e rotear informação.
Arquitetura da Microrede Essas questões de chaveamento e roteamento são encontradas em redes de interconexão de multiprocessadores e redes de comunicação em geral. Algoritmos de chaveamento podem ser agrupados em três classes: circuito, pacote e cut-through. A baixa latência do chaveamento do tipo cut-through deverá torná-lo preferível para as microredes intrachip do ponto de vista de desempenho. No entanto, propagação agressiva de dados através das chaves pode aumentar o tráfego e a contenção, o que pode desperdiçar energia.
Arquitetura da Microrede • Algoritmos de roteamento estabelecem o caminho que uma mensagem segue através da rede para seu destino final. • A análise de esquemas de roteamento intrachip requer algumas considerações: • previsibilidade versus desempenho médio; • complexidade do roteador e velocidade versus utilização alcançável do canal; • robustez versus agressividade.
Arquitetura da Microrede Algoritmos de roteamento determinísticos sempre fornecem o mesmo caminho entre um dado par fonte-destino e oferecem a melhor escolha para tráfego uniforme e regular. Algoritmos de roteamento adaptativos utilizam informação sobre o tráfego da rede e as condições do canal para evitar regiões do canal congestionadas. Um algoritmo adaptativo é preferível quando tratando com tráfego irregular ou em redes com elos e nós inconfiáveis. Futuras microredes intrachip deverão enfatizar velocidade e descentralização das decisões de roteamento, além de robustez e tolerância a falhas.
Arquitetura da Microrede Esses fatores e o fato de que os padrões de tráfego para SoCs de propósito específico tendem a ser irregulares, favorecem o roteamento adaptativo. No entanto, quando a predicabilidade do tráfego é alta e não-determinismo é indesejável, roteamento determinístico pode ser a melhor escolha. Como exemplo, tem-se a Microrede SPIN. A camada de transporte decompõe as mensagens em pacotes na fonte. Da mesma forma, reseqüencia e remonta as mensagens no destino. A especificação dos pacotes é uma decisão crítica no projeto, porque a maioria dos algoritmos de controle de rede é altamente sensível ao tamanho do pacote.
Arquitetura da Microrede A maioria das redes de comunicação padroniza os pacotes para facilitar a interconexão, extensibilidade e compatibilidade do hardware de rede produzido por diferentes fabricantes. As limitações da padronização dos pacotes pode ser relaxada nas microredes dos SoCs, que podem ser personalizadas em tempo de projeto. Métodos determinísticos garantem que o tráfego atende às especificações e provêem limites rígidos sobre atrasos ou perdas de mensagens.
Arquitetura da Microrede Métodos determinísticos tem a desvantagem de serem baseados no pior caso e geralmente levam a subutilização dos recursos da rede. Métodos estatísticos oferecem utilização mais eficiente dos recursos, mas não podem oferecer garantias para o pior caso. A microrede Silicon Backplane consiste de um barramento compartilhado baseado na multiplexação em divisão de tempo. Quando um nó deseja se comunicar, ele deve fazer um pedido ao árbitro durante uma fatia de tempo. Se a arbitragem for favorável, ele pode receber autorização para ter acesso ao barramento na próxima fatia de tempo.
Arquitetura da Microrede Neste caso, a arbitragem introduz um tempo de espera não-determinístico na transmissão. Para reduzir o não-determinismo, o protocolo da microrede fornece uma forma de reserva de fatias do tempo: os nós podem reservar uma fração das fatias de tempo disponíveis, alocando o barramento deterministicamente. Arquiteturas de redes de comunicação e algoritmos de controle constituem a infraestrutura e provêem serviços de comunicação para os nós terminais, que são programáveis na maioria dos casos. As camadas de software para SoCs incluem programas do sistema e de aplicação.