Menu English Ukrainian Russo INÍCIO

Biblioteca técnica gratuita para amadores e profissionais Biblioteca técnica gratuita


ENCICLOPÉDIA DE RÁDIO ELETRÔNICA E ENGENHARIA ELÉTRICA
Biblioteca gratuita / Esquemas de dispositivos radioeletrônicos e elétricos

Barramento USB e FireWire. Enciclopédia de rádio eletrônica e engenharia elétrica

Biblioteca técnica gratuita

Enciclopédia de eletrônica de rádio e engenharia elétrica / informática

Comentários do artigo Comentários do artigo

USB (Universal Serial Bus) é um padrão da indústria para expansão da arquitetura de PC, focado na integração com dispositivos de telefonia e eletrônicos de consumo. A versão 1.0 foi publicada em janeiro de 1996.

A arquitetura USB é determinada pelos seguintes critérios:

  • Expansão facilmente implementada de periféricos de PC
  • Solução de baixo custo que suporta taxas de transferência de até 12 Mbps
  • Suporte completo para transmissão de áudio e vídeo (compactado) em tempo real
  • Flexibilidade do protocolo para transmissão mista de dados isócronos e mensagens assíncronas
  • Integração com dispositivos fabricados. Disponível em PC de todas as configurações e tamanhos
  • Fornecendo uma interface padrão capaz de conquistar rapidamente o mercado
  • Criação de novas classes de dispositivos que estendem o PC

Do ponto de vista do usuário final, os seguintes recursos do USB são atraentes:

  • Facilidade de cabeamento e conexões
  • Ocultando detalhes da conexão elétrica do usuário final
  • Unidades de controle autoidentificadas, conexão automática de dispositivos com drivers e configuração
  • Possibilidade de conexão dinâmica e configuração de unidades de controle

Desde meados de 1996, os PCs foram produzidos com um controlador USB integrado implementado pelo chipset. Espera-se que apareçam modems, teclados, scanners, alto-falantes e outros dispositivos de entrada/saída com suporte USB, além de monitores com adaptadores USB; eles desempenharão o papel de hubs para conexão de outros dispositivos.

1.1. estrutura USB

USB permite a troca simultânea de dados entre computador host e muitos dispositivos periféricos (PU). A distribuição da largura de banda do barramento entre PUs é planejada pelo host e implementada por ele por meio do envio de tokens. O barramento permite que dispositivos sejam conectados, configurados, usados ​​e desconectados enquanto o host e os próprios dispositivos estão em execução.

Abaixo está a versão do autor da tradução dos termos da especificação "Universal Serial Bus Specification. Revision IOJanuary 15, 1996", publicada pela Compaq, DEC, IBM, Intel, Microsoft, NEC e Northern Telecom. Informações mais detalhadas e atualizadas podem ser encontradas em: usb.org.

Dispositivos Os USBs podem ser hubs, funções ou uma combinação de ambos. Eixo (Hub) fornece pontos adicionais para conectar dispositivos ao barramento. Função USB fornece recursos adicionais ao sistema, como conectividade ISDN, joystick digital, alto-falantes digitais, etc. O dispositivo USB deve ter uma interface USB que suporte totalmente o protocolo USB, execute operações padrão (configuração e redefinição) e forneça informações descrevendo o dispositivo . Muitos dispositivos conectados ao USB possuem um hub e funções. USB controla todo o sistema controlador de host (controlador de host), sendo um subsistema de software e hardware do computador host.

Conexão física dispositivos é realizado de acordo com a topologia de um multi-camada as estrelas. O centro de cada estrela é eixo, Cada segmento de cabo conecta dois pontos de hub a outro hub ou função. O sistema tem um (e apenas um) controlador de host, localizado no topo da pirâmide de dispositivos e hubs. O controlador host integra-se com hub raiz (Hub raiz), fornecendo um ou mais pontos de conexão portas. O controlador USB incluído nos chipsets geralmente possui um hub de duas portas integrado. Logicamente, um dispositivo conectado a qualquer hub USB e configurado (veja abaixo) pode ser considerado conectado diretamente ao controlador host.

funções são dispositivos capazes de transmitir ou receber dados ou controlar informações através de um barramento. Normalmente as funções são unidades de controle separadas com um cabo conectado à porta do hub. Fisicamente, um gabinete pode conter várias funções com um hub integrado que garante sua conexão a uma porta. Esses dispositivos host combinados são hubs com dispositivos funcionais permanentemente conectados.

Cada função fornece informações de configuração que descrevem as capacidades e requisitos de recursos do CP. Antes do uso, a função deve ser configurada pelo host, deve ser alocada largura de banda do canal e as opções de configuração devem ser selecionadas.

Exemplos de funções são:

Ponteiros: mouse, tablet, caneta óptica. Dispositivos de entrada: teclado ou scanner.

Impressora do dispositivo de saída, alto-falantes (digitais).

Adaptador de telefone ISDN

Eixo elemento-chave do sistema PnP na arquitetura USB. O hub é um concentrador de cabos. Os pontos de conexão são chamados portos eixo. Cada hub converte um ponto de conexão em vários. A arquitetura permite a conexão de vários hubs.

Cada hub tem um porta upstream}, projetado para se conectar a um host ou hub de nível superior. As portas restantes são downstream (portas downstream), projetado para conectar funções ou hubs de nível inferior. O hub pode reconhecer se os dispositivos estão conectados ou desconectados das portas e controlar o fornecimento de energia para seus segmentos. Cada porta pode ser habilitada ou desabilitada e configurada para taxa de transmissão total ou limitada. O hub fornece isolamento de segmentos de baixa velocidade dos de alta velocidade.

Os hubs podem controlar o fornecimento de energia para portas downstream; prevê-se a fixação de um limite para a corrente consumida por cada porto.

Barramento USB e FireWire

sistema USB é dividido em três níveis com certas regras de interação. Um dispositivo USB contém uma parte de interface, uma parte de dispositivo e uma parte funcional. O host também é dividido em três partes: interface, sistema e software do dispositivo. Cada parte é responsável apenas por uma certa gama de tarefas; a interação lógica e real entre elas é ilustrada na Fig. 7.1.

A estrutura em consideração inclui os seguintes elementos:

Dispositivo físico USB um dispositivo no barramento que executa funções de interesse do usuário final.

SW do cliente Software específico do dispositivo em execução no computador host. Pode fazer parte do sistema operacional ou de um produto especial.

SW do sistema USB Suporte ao sistema USB independente de dispositivos específicos e software cliente.

USB Host Controller hardware e software para conectar dispositivos USB ao computador host.

Interface física

O padrão USB define as especificações elétricas e mecânicas do barramento.

Sinais de informação e uma tensão de alimentação de 5 V são transmitidos através de um cabo de quatro fios. É usado um método diferencial de transmissão de sinais D+ e D através de dois fios. Os níveis de sinal do transmissor no modo estático devem estar abaixo de 0,3 V (nível baixo) ou acima de 2,8 V (nível alto). Os receptores podem suportar tensões de entrada entre 0,5...+3,8 V. Os transmissores devem ser capazes de mudar para um estado de alta impedância para transmissão half-duplex bidirecional em um par de fios.

A transmissão de dois fios em USB não se limita a sinais diferenciais. Além do receptor diferencial, cada dispositivo possui receptores lineares para sinais D+ e D-, e os transmissores destas linhas são controlados individualmente. Isto torna possível distinguir entre mais de dois estados de linha usados ​​para estabelecer uma interface de hardware. Estados DifO и Dif1 são determinados pela diferença de potencial nas linhas D+ e D superior a 200 mV, desde que em uma delas o potencial seja superior ao limite de resposta do VSE. Uma condição na qual ambas as entradas D+ e D são baixas é chamada zero linear (SEO Single-Ended Zero). A interface define os seguintes estados:

Estado DataJ и Dados para Estado estado do bit transmitido (ou simplesmente J и PARA), são definidos através de estados DifO и Dif1.

Estado inativo pausa de ônibus.

Estado Resumido sinal de "despertar" para despertar o dispositivo do modo de suspensão.

Início do Pacote (SOP) início do pacote (transição de Estado ocioso em K).

Fim do Pacote (EOP) final do pacote.

Disconnect o dispositivo está desconectado da porta.

CONTATE-NOS o dispositivo está conectado à porta.

Limpar reinicialização do dispositivo.

Os estados são determinados por combinações de sinais diferenciais e lineares; para velocidades de estado total e baixa DifO и Dif1 têm o propósito oposto. Na decodificação de estado Desconecte, conecte и Limpar O tempo que as linhas ficam em determinados estados (mais de 2,5 ms) é levado em consideração.

O ônibus possui dois modos de transmissão. velocidade máxima A transmissão do sinal USB é de 12 Mbit/s, baixo 1,5 Mbit/s. Para velocidade total, utiliza-se cabo de par trançado blindado com impedância de 90 Ohms e comprimento de segmento de até 5 m, para baixa velocidade, utiliza-se cabo de par trançado não blindado de até 3 m. Cabos e dispositivos de baixa velocidade são mais baratos que de alta -velocidade. O mesmo sistema pode utilizar ambos os modos simultaneamente;

a troca de dispositivos é realizada de forma transparente. A baixa velocidade destina-se a trabalhar com um pequeno número de PUs que não requerem alta velocidade.

A velocidade utilizada por um dispositivo conectado a uma porta específica é determinada pelo hub com base nos níveis de sinal nas linhas D+ e D-, polarizados pelos resistores de carga R2 dos transceptores (ver Figuras 7.2 e 7.3).

Os sinais de sincronização são codificados junto com os dados usando o método NRZI (Sem Retorno ao Zero Invertido), seu trabalho é ilustrado na Fig. 7.4. Cada pacote é precedido por um campo de sincronização SINCRONIZAR, permitindo que o receptor sintonize a frequência do transmissor.

O cabo também possui linhas VBus e GND para transmitir a tensão de alimentação de 5V aos dispositivos. A seção transversal dos condutores é selecionada de acordo com o comprimento do segmento para garantir um nível de sinal e tensão de alimentação garantidos.

Barramento USB e FireWire
Arroz. 7.4. Codificação de dados usando o método NRZI

A norma define dois tipos de conectores (ver Tabela 7.1 e Fig. 7.5).
contato Corrente contato Corrente
1 Barramento V 3 D+
2 D- 4 GND

Conectores tipo "A" usado para conectar a hubs (Conector a montante). Os plugues são instalados em cabos que não são removíveis de dispositivos (por exemplo, teclado, mouse, etc.). Jacks são instalados em portas downstream (Porta a jusante) hubs.

Conectores Tipo B (Conector Downstream) instalado em dispositivos dos quais o cabo de conexão pode ser desconectado (impressoras e scanners). A peça correspondente (plugue) é instalada no cabo de conexão, cuja extremidade oposta possui um plugue tipo “A”.

Os conectores dos tipos “A” e “B” diferem mecanicamente (Fig. 7.5), o que elimina conexões de loop inaceitáveis ​​das portas do hub. Os conectores de quatro pinos são chaveados para evitar conexões incorretas. O design dos conectores garante conexão tardia e desconexão antecipada dos circuitos de sinal em comparação com os circuitos de alimentação. Para reconhecer o conector USB, uma designação simbólica padrão é colocada no corpo do dispositivo.

Barramento USB e FireWire
Arroz. 7.5. Soquetes USB: Um tipo, б tipo "B", em designação simbólica

Energia do dispositivo USB possível do cabo (dispositivos alimentados por barramento) ou da sua própria fonte de alimentação (Dispositivos Autoalimentados). O host fornece energia às unidades de controle diretamente conectadas a ele. Cada hub, por sua vez, fornece energia aos dispositivos conectados às suas portas downstream. Sob algumas restrições de topologia, é permitido o uso de hubs alimentados por barramento. Na Fig. A Figura 7.6 mostra um exemplo de diagrama de conexão de dispositivo USB. Aqui o teclado, a caneta e o mouse podem ser alimentados pelo barramento.

Barramento USB e FireWire

Modelo de transferência de dados

Cada dispositivo USB é uma coleção de dispositivos independentes endpoints (Endpoint), s com o qual o controlador host troca informações. Os endpoints são descritos pelos seguintes parâmetros:

frequência necessária de acesso ao ônibus e atrasos de serviço aceitáveis;

largura de banda de canal necessária;

número do ponto;

requisitos de tratamento de erros;

tamanhos máximos de pacotes transmitidos e recebidos;

tipo de troca;

direção da troca (para trocas contínuas e isócronas).

Cada dispositivo deve ter um endpoint numerado 0, que é usado para inicialização, gerenciamento geral e pesquisa de seu status. Este ponto é sempre configurado quando a alimentação é ligada e o dispositivo está conectado ao barramento. Suporta transferências do tipo "controle" (veja abaixo).

Além do ponto zero, os dispositivos funcionais podem ter pontos adicionais que implementam a troca útil de dados. Dispositivos de baixa velocidade podem ter até dois pontos adicionais, dispositivos de velocidade total podem ter até 16 pontos de entrada e 16 pontos de saída (limite do protocolo). Os pontos não podem ser utilizados até que sejam configurados (o canal associado a eles seja estabelecido).

Canal {pipe) USB refere-se ao modelo de transferência de dados entre o controlador host e o terminal (Ponto final) dispositivos. Existem dois tipos de canais: streams (Fluxo) e mensagens (mensagem). Fluxo entrega dados de uma ponta a outra do canal, é sempre unidirecional. O mesmo número de terminal pode ser usado para dois canais de fluxo de entrada e saída. Um thread pode implementar os seguintes tipos de comunicação: contínua, isócrona e interrupções. A entrega é sempre do tipo primeiro a entrar, primeiro a sair (FIFO); Do ponto de vista USB, os dados do fluxo não são estruturados. mensagens têm um formato definido pela especificação USB. O host envia uma solicitação ao terminal, após a qual um pacote de mensagem é enviado (recebido), seguido por um pacote contendo as informações de status do terminal. A próxima mensagem normalmente não pode ser enviada antes da anterior ser processada, mas ao tratar erros, é possível redefinir mensagens não tratadas. As mensagens bidirecionais são endereçadas ao mesmo endpoint. Somente trocas de tipo de controle são usadas para entregar mensagens.

Os canais possuem características associadas ao endpoint (largura de banda, tipo de serviço, tamanho do buffer, etc.). Os canais são criados durante a configuração de dispositivos USB. Existe um canal de mensagens para cada dispositivo habilitado (Tubo de Controle 0), que carrega informações de configuração, controle e status.

Tipos de transferência de dados

USB suporta modos de comunicação unidirecional e bidirecional. A transferência de dados ocorre entre o software host e o terminal do dispositivo. Um dispositivo pode ter vários endpoints, e a comunicação com cada um deles (canal) é estabelecida de forma independente.

A arquitetura USB permite quatro tipos básicos de transferência de dados:

Transferências de controle, usado para configuração durante a conexão e durante a operação para gerenciamento de dispositivos. O protocolo fornece entrega garantida de dados. O comprimento do campo de dados da mensagem de controle não excede 64 bytes em velocidade máxima e 8 bytes em velocidade baixa.

Transferências de dados em massa pacotes relativamente grandes sem requisitos rígidos de prazo de entrega. As transmissões ocupam toda a largura de banda disponível do barramento. Os pacotes possuem um campo de dados de 8, 16, 32 ou 64 bytes. Essas marchas têm prioridade mais baixa e podem ser suspensas quando o ônibus estiver muito carregado. Permitido apenas em velocidade total de transmissão.

Interrupções transferências curtas (até 64 bytes em velocidade máxima, até 8 bytes em velocidade baixa), como caracteres de entrada ou coordenadas. As interrupções são de natureza espontânea e não devem ser atendidas mais lentamente do que o exigido pelo dispositivo. O limite de tempo de serviço é definido na faixa de 1 a 255 ms para velocidade máxima e de 10 a 255 ms para velocidade baixa.

Transferências isócronas transmissões contínuas em tempo real que ocupam uma porção pré-negociada da largura de banda do barramento e têm um atraso de entrega especificado. Se um erro for detectado, os dados isócronos serão transmitidos sem repetição; os pacotes inválidos serão ignorados. Um exemplo é a transmissão digital de voz. A largura de banda é determinada pelos requisitos de qualidade de transmissão e o atraso na entrega pode ser crítico, por exemplo, ao implementar teleconferências.

A largura de banda do barramento é dividida entre todos os canais instalados. A largura de banda alocada é atribuída a um canal, e se o estabelecimento de um novo canal exigir uma largura de banda que não se enquadre na alocação existente, a solicitação de alocação de canal é rejeitada.

A arquitetura USB B fornece buffer interno para todos os dispositivos e, quanto mais largura de banda um dispositivo exigir, maior deverá ser seu buffer. O USB deve fornecer transferência de dados a uma velocidade tal que o atraso de dados no dispositivo causado pelo buffer não exceda alguns milissegundos.

As transferências isócronas são classificadas pela forma como os terminais das fontes de dados ou destinatários sincronizam com o sistema: existem classes de dispositivos assíncronos, síncronos e adaptativos, cada um com seu próprio tipo de canal USB.

Protocolo

Todas as trocas (transações) via USB consistem em três pacotes. Cada transação planejado e iniciado pelo controlador, que envia token de pacote {pacote de token). Ele descreve o tipo e a direção da transferência, o endereço do dispositivo USB e o número do terminal. Em cada transação, a troca só é possível entre o dispositivo endereçado (seu endpoint) e o host. O dispositivo endereçado pelo marcador reconhece seu endereço e se prepara para a troca. A fonte de dados (identificada pelo token) transmite um pacote de dados (ou uma notificação de que não há dados para transmitir). Depois de receber o pacote com sucesso, o receptor de dados envia pacote de confirmação (Handshake Packet).

O agendamento de transações fornece controle sobre os canais de fluxo. No nível de hardware, usando o abandono de transação (NAck) em caso de intensidade de transmissão inaceitável, protege os buffers contra transbordamento na parte superior e inferior. Os tokens de transações rejeitadas são retransmitidos quando o barramento está livre. O gerenciamento de fluxo permite agendar com flexibilidade o serviço de fluxos de dados heterogêneos simultâneos.

Tolerância a erros forneça as seguintes propriedades USB:

Alta qualidade de sinal obtida através de receptores/transmissores diferenciais e cabos blindados.

Proteção de campos de controle e dados com códigos CRC.

Detecta a conexão e desconexão de dispositivos e configura recursos no nível do sistema.

Protocolo de autocorreção com tempo limite quando os pacotes são perdidos.

Controle de fluxo para isocronia e gerenciamento de buffer de hardware.

Independência das funções de trocas malsucedidas com outras funções.

Para detectar erros de transmissão, cada pacote possui campos de verificação CRC para detectar todos os erros de bit único e duplo. O hardware detecta erros de transmissão e o controlador tenta automaticamente a transmissão três vezes. Se as tentativas não forem bem-sucedidas, uma mensagem de erro será relatada ao software cliente.

Formatos de pacote

Os bytes são transferidos sequencialmente pelo barramento, começando pelo bit menos significativo. Todas as encomendas são organizadas em pacotes. Cada pacote começa com um campo Sync, que é representado por uma sequência de estados KJKJKJKK (codificado NRZI) seguindo o estado Ocioso. Últimos dois bits (CQ) são o marcador de início do pacote SOP usado para identificar o primeiro bit do identificador do pacote PID. ID do pacote é um campo de 4 bits PID[3:0], identificação do tipo de pacote (Tabela 7.2), seguido dos mesmos 4 bits, porém invertidos, como bits de controle.
Tipo de PID Nome do PID PID[3:0] Conteúdo e Propósito
Token OUT 0001 Endereço de função e número de terminal, token de transação de função
Token IN 1001 Endereço da função e token de transação do host do número do terminal
Token SOF 0101 Iniciar marcador de quadro
Token CONFIGURAÇÃO 1101 Endereço de função e token de transação de número de terminal com ponto de controle
Data DadosO Datal 0011 1011 Pacotes de dados PID pares e ímpares são intercalados para identificar com precisão as confirmações
Aperto de mão Confirmar 0010 Confirmação de recepção de pacotes sem erros
Aperto de mão NAK 1010 O receptor não conseguiu receber ou o transmissor não conseguiu transmitir dados. Pode ser usado para controle de fluxo de dados (não pronto). Nas transações de interrupção, é uma indicação de que não há interrupções não atendidas
Aperto de mão BLOQUEIO 1110 Endpoint requer intervenção do host
Destaque ARTE 1100 Preâmbulo de transmissão de baixa velocidade

Em sacos de marcadores EM, CONFIGURAÇÃO и OUT são os seguintes campos de endereço: Endereço de função de 7 bits e endereço de terminal de 4 bits. Eles permitem endereçar até 127 funções USB (o endereço zero é usado para configuração) e 16 endpoints por função.

O pacote SOF possui 11 bits Campo de número do quadro, aumentado sequencialmente (ciclicamente) para o próximo quadro.

Campo de dados pode ter de 0 a 1023 bytes inteiros de tamanho. O tamanho do campo depende do tipo de transmissão e é negociado no momento do estabelecimento do canal.

Campo sks-cola presente em todos os tokens e pacotes de dados, protege todos os campos do pacote, exceto PID. Os CRCs para tokens (5 bits) e dados (11 bits) são calculados usando fórmulas diferentes.

Cada transação é iniciada pelo controlador host enviando um token e termina com um pacote de handshake. A sequência de pacotes nas transações é ilustrada na Fig. 7.7.

O controlador host organiza trocas com dispositivos de acordo com seu plano de alocação de recursos. O controlador gera ciclicamente (com um período de 1 ms) quadros (quadros), no qual todas as transações programadas se enquadram. Cada quadro começa enviando um token SOF (Início do quadro), que é um sinal de sincronização para todos os dispositivos, incluindo hubs. Ao final de cada quadro é alocado um intervalo de tempo EOF (Fim do quadro), durante o qual os hubs proíbem a transmissão para o controlador. Cada quadro tem seu próprio número. O controlador host opera um contador de 32 bits, mas transmite apenas os 11 bits inferiores no token SOF. O número do quadro aumenta (ciclicamente) durante o EOF. O host agenda o carregamento dos frames para que sempre haja espaço para controle e interrupção das transações. O tempo de quadro livre pode ser preenchido com transmissões contínuas (Transferências em massa).

Barramento USB e FireWire


Arroz. 7.8. Fluxo de quadros USB

Para transmissão isócrona A sincronização de dispositivos e controlador é importante. Existem três opções:

sincronização do gerador interno do dispositivo com marcadores SOF;

ajustar a taxa de quadros à frequência do dispositivo;

combinar a velocidade de transmissão (recepção) do dispositivo com a taxa de quadros.

O ajuste da taxa de quadros do controlador é, obviamente, possível para corresponder à frequência de sincronização interna de apenas um dispositivo. O ajuste é realizado através de um mecanismo de feedback, que permite alterar o período do quadro em um intervalo de ±1 bit.

1.2. Configuração do sistema

USB suporta conexão e desconexão dinâmica de dispositivos. A numeração de dispositivos de barramento é um processo contínuo que rastreia alterações na topologia física.

Todos os dispositivos estão conectados através de portas de hub. Os hubs detectam a conexão e desconexão de dispositivos às suas portas e relatam o status das portas quando solicitado pelo controlador. O host habilita a porta e endereça o dispositivo através do canal de controle usando endereço zero Endereço padrão USB. Durante a conexão inicial ou após uma reinicialização, todos os dispositivos são endereçados dessa maneira.

O host determina se o dispositivo recém-conectado é um hub ou uma função e o atribui endereço exclusivo USB. O host cria um canal de controle (Tubo de Controle) com este dispositivo usando o endereço atribuído e o número de destino zero.

Se o novo dispositivo for um hub, o host determina os dispositivos conectados a ele, atribuindo-lhes endereços e configurações.

derrama canais. Caso o novo dispositivo seja um recurso, a notificação de conexão é enviada pelo gerenciador USB ao software interessado.

Quando um dispositivo é desconectado, o hub desabilita automaticamente a porta correspondente e reporta a desconexão ao controlador, que remove informações sobre este dispositivo de todas as estruturas de dados. Se um hub ficar offline, o processo de remoção será realizado para todos os dispositivos conectados a ele. Se um recurso estiver desativado, uma notificação será enviada ao software em questão.

numeração do dispositivo, conectado ao ônibus (Enumeração de ônibus), ocorre dinamicamente à medida que são conectados (ou ligados) sem qualquer intervenção do usuário ou do software cliente. O procedimento de numeração é realizado da seguinte forma:

1. O hub ao qual o dispositivo está conectado informa o host sobre a mudança no estado de sua porta respondendo a uma pesquisa de status. A partir deste momento o dispositivo entra no estado Anexado (conectado) e a porta à qual ele está conectado está no estado Desativado.

2. O host verifica o status da porta.

3. Tendo reconhecido a porta à qual o novo dispositivo está conectado, o host dá o comando para redefinir e habilitar a porta.

4. O hub gera um sinal de Reset para esta porta (10 ms) e o alterna para o Ativado. O dispositivo conectado pode consumir até 100 mA de corrente de alimentação do barramento. O dispositivo entra no estado Alimentado (a alimentação é aplicada), todos os seus registradores são redefinidos ao seu estado original e ele responde ao acesso ao endereço zero.

5. Até que o dispositivo receba um endereço exclusivo, ele estará acessível através do canal de espera, através do qual o controlador host determina o tamanho máximo permitido do campo de dados em pacote.

6. O host informa ao dispositivo seu endereço exclusivo e ele é colocado no estado Endereçado (endereçado a).

7. O host lê a configuração do dispositivo, incluindo o consumo de corrente declarado do barramento. A leitura pode levar vários quadros.

8. Com base nas informações recebidas, o host configura todos os endpoints disponíveis deste dispositivo, que são transferidos para o estado Configurado (configurado). O hub agora permite que o dispositivo consuma toda a corrente especificada na configuração do barramento. O dispositivo está pronto.

Quando um dispositivo é desconectado do barramento, o hub notifica o host e a porta é desabilitada e o host atualiza suas informações de topologia atuais.

1.3. Recursos e hubs de dispositivos USB

Os recursos do barramento USB permitem que ele seja usado para conectar uma variedade de dispositivos. Sem tocar nas propriedades “úteis” da unidade de controle, nos deteremos em sua parte de interface, conectada ao barramento USB. Todos os dispositivos devem suportar o conjunto de operações comuns listadas abaixo.

Conexão e desconexão dinâmica. Esses eventos são monitorados pelo hub, que os reporta ao controlador host e reinicia o dispositivo conectado. O dispositivo deve responder ao endereço zero após um sinal de reset e não está configurado ou suspenso. Após atribuir um endereço pelo qual o controlador host é responsável, o dispositivo deve responder apenas ao seu endereço exclusivo.

Configuração dispositivos executados pelo host são necessários para seu uso. A configuração geralmente utiliza informações lidas do próprio dispositivo. Um dispositivo pode ter múltiplas interfaces, cada uma com seu próprio terminal representando a função do dispositivo para o host. Uma interface em uma configuração pode ter conjuntos alternativos de características; a mudança de conjuntos é suportada pelo protocolo. Para oferecer suporte a drivers adaptativos, os descritores de dispositivos e interfaces possuem campos de classe, subclasse e protocolo.

Transferência de dados possível através de um dos quatro tipos de transmissões (veja acima). Para endpoints que permitem diferentes tipos de transferências, apenas um deles fica disponível após a configuração.

Gerenciamento de energia é uma função USB muito avançada. Para dispositivos alimentados por barramento, a potência é limitada. Quando conectado, nenhum dispositivo deve consumir corrente superior a 100 mA do barramento. A corrente operacional (não superior a 500 mA) é declarada na configuração e, se o hub não puder fornecer ao dispositivo a corrente declarada, ele não será configurado e, portanto, não poderá ser usado.

O dispositivo USB deve suportar suspensão (modo suspenso), em que seu consumo de corrente não exceda 500 μA. O dispositivo deverá suspender automaticamente quando a atividade do barramento cessar.

Oportunidade Ativação remota Permite que um dispositivo suspenso sinalize o computador host, que também pode estar em estado suspenso. O recurso de ativação remota está descrito na configuração do dispositivo. Esta função pode ser desabilitada durante a configuração.

Eixo no USB, ele alterna sinais e fornece tensão de alimentação, além de monitorar o status dos dispositivos conectados a ele, notificando o host sobre alterações. O hub consiste em duas partes do controlador (Controlador de hub) e repetidor (Repetidor de Hub). Repetidor é uma chave gerenciada que conecta a porta de saída à porta de entrada. Possui suporte para reinicialização e pausa de sinalização. Controlador contém registros para interação com o host. Os registros são acessados ​​por meio de comandos específicos para acesso ao hub. Os comandos permitem configurar o hub, gerenciar portas downstream e monitorar seu status.

Portas a jusante os hubs podem estar nos seguintes estados:

Alimentado (^(desligado) nenhuma energia é fornecida à porta (possível apenas para comutação de hubs

nutrição). Os buffers de saída são colocados em estado de alta impedância e os sinais de entrada são ignorados.

Desconectado (desconectada) a porta não transmite sinais em nenhuma direção, mas é capaz de detectar a conexão de um dispositivo (por nenhum estado SEO dentro de 2,5 µs). Então o porto entra em estado Desativado, e por níveis de sinal de entrada {DifO ou Dif1 em condição parado) determina a velocidade do dispositivo conectado.

sDesativado (desativado) a porta transmite apenas um sinal de reset (a um comando do controlador), os sinais da porta (exceto para detecção de desligamento) não são percebidos. Após a detecção de disparo (estado de 2,5 µs SEO) o porto entra em estado Desconectar, e se um desligamento for detectado pelo hub “adormecido”, um sinal será enviado ao controlador Currículo.

w Ativado (habilitado) a porta transmite sinais em ambas as direções. Sob comando do controlador ou quando um erro de quadro é detectado, a porta entra no estado Desativado, e após a detecção de uma viagem ao estado Desconectar.

Suspenso A porta (suspensa) envia um sinal para colocá-la em um estado parado (modo de suspensão). Se o hub estiver no estado ativo, os sinais não passarão pela porta em nenhuma direção. No entanto, o hub “adormecido” percebe sinais de mudanças no estado de portas não proibidas, enviando sinais de “despertar” do dispositivo ativado mesmo através de uma cadeia de hubs “adormecidos”.

O status de cada porta é identificado pelo controlador do hub usando registros separados. Existe um registro geral, cujos bits refletem o fato de que o estado de cada porta mudou (fixado durante EOF). Isso permite que o controlador host descubra rapidamente o estado do hub e, se alterações forem detectadas por transações especiais, esclareça o estado.

1.4. Controlador de host

O computador host se comunica com os dispositivos através do controlador. O anfitrião tem as seguintes responsabilidades:

Detecção de conexão e desconexão de dispositivos USB;

manipulação do fluxo de controle entre dispositivos e o host;

gerenciamento de fluxo de dados;

recolha de estatísticas;

garantindo economia de energia por unidades de controle conectadas.

O software do sistema controlador gerencia a interação entre os dispositivos e seu software em execução no computador host para coordenar:

numeração e configuração de dispositivos;

transferências isócronas de dados;

transferências assíncronas de dados;

gerenciamento de energia;

informações sobre gerenciamento de dispositivos e barramentos.

Sempre que possível, o software USB utiliza o software do sistema do computador host existente, como o Advanced Power Management, para gerenciar o consumo de energia.

2. IEEE 1394-FireWire

O padrão High Performance Serial Bus, oficialmente denominado IEEE 1394, foi adotado em 1995. O objetivo era criar um barramento que não fosse inferior aos barramentos paralelos padrão modernos, ao mesmo tempo que reduzisse significativamente o custo e aumentasse a facilidade de conexão (devido à transição para uma interface serial). Padrão baseado em ônibus fio de fogo, usado pela Apple Computer como uma alternativa de baixo custo ao SCSI em computadores Macintosh e PowerMac. O nome FireWire agora se aplica às implementações IEEE 1394 e coexiste com a abreviatura 1394.

Benefícios do FireWire antes de outros barramentos seriais:

é? Multifuncionalidade: o barramento permite comunicação digital para até 63 dispositivos sem a utilização de equipamentos adicionais (hubs). Filmadoras digitais, scanners, impressoras, câmeras de videoconferência e unidades de disco podem trocar dados não apenas com um PC, mas também entre si. FireWire, por iniciativa da VESA, também está posicionado para “redes domésticas”.

Altas taxas de câmbio e transmissões isócronas permitem, mesmo no nível de entrada (100 Mbit/s), transmitir simultaneamente dois canais de vídeo (30 quadros por segundo) com qualidade de transmissão e um sinal de áudio estéreo com qualidade de CD.

s§ Baixo custo de componentes e cabos.

si Fácil de instalar e usar. FireWire estende o sistema pnp. Os dispositivos são automaticamente reconhecidos e configurados quando ativados/desativados. A alimentação do barramento (corrente de até 1,5 A) permite que a unidade de controle se comunique com o sistema mesmo quando a alimentação está desligada. Não apenas um PC, mas também outros dispositivos “inteligentes”, como um videocassete, podem controlar o barramento e outros dispositivos.

2.1. Estrutura e interação de dispositivos de barramento

O padrão 1394 define duas categorias de barramentos: barramentos a cabo e barramentos cruzados. (plano traseiro). Em pneus cruzados Normalmente refere-se a interfaces paralelas que conectam os subsistemas internos de um dispositivo conectado a um cabo 1394.

Ao contrário do USB, que é controlado por um único controlador host, o padrão 1394 permite que dispositivos ponto a ponto sejam conectados a uma rede. Uma rede pode consistir em vários barramentos conectados por pontes. Dentro do mesmo barramento, os dispositivos são conectados por meio de cabos sem o uso de dispositivos adicionais. Pontes são dispositivos inteligentes especiais. A placa de interface de barramento FireWire para PC é uma ponte PCI 1394. As pontes também incluem conexões do barramento de cabo 1394 para barramentos cruzados de dispositivos, sendo permitido endereçamento de nó de rede de 16 bits.

Até 63 dispositivos em cada barramento, endereçados por um campo de ID de nó de 6 bits. O campo identificador de barramento de 10 bits permite até 1023 pontes no sistema, conectando barramentos de diferentes tipos.

barramento de cabo é uma rede que consiste em nós e pontes de cabos. A topologia flexível permite construir redes que combinam arquiteturas em árvore e em cadeia (Fig. 7.9). Cada nó normalmente possui três conectores iguais. São permitidas múltiplas opções de conexão de dispositivos, com as seguintes restrições:

ssi entre qualquer par de nós não pode haver mais de 16 segmentos de cabo;

o comprimento de um segmento de cabo padrão não deve exceder 4,5 m;

O 2º comprimento total do cabo não deve exceder 72 m (o uso de cabo de maior qualidade permite que esta limitação seja relaxada).

Alguns dispositivos podem ter apenas um conector, limitando as possíveis opções de posicionamento. O padrão permite até 27 conectores em um único dispositivo.

Barramento USB e FireWire
Arroz. 7.9. Conectando dispositivos no barramento FireWire

Barramento USB e FireWire
Arroz. 7.10. Conector FireWire

A norma prevê a conexão de nós por meio de um cabo de 6 fios envolto em uma blindagem comum. Dois pares trançados são usados ​​​​para transmitir sinais (separados para receptor e transmissor), dois fios são usados ​​​​para alimentar os dispositivos (8-40 V, até 1,5 A). Para isolamento galvânico da interface, são utilizados transformadores (tensão de isolamento de até 500 V) ou capacitores (em dispositivos baratos com tensão de isolamento de até 60 V em relação ao fio comum). Uma ideia dos conectores é dada na Fig. 7.10. Alguns dispositivos (filmadoras Sony DCRVX700 e DCR-VX1000, bem como DHR-1000 DVCR) possuem apenas um conector menor de 4 pinos, que implementa apenas circuitos de sinal. Esses dispositivos são conectados ao barramento através de um cabo adaptador especial apenas como dispositivos finais (embora seja possível usar divisores de adaptadores especiais).

O padrão 1394 define três frequências possíveis para transmissão por cabo: 98,304, 196,608 e 393,216 Mbps, que são arredondadas para 100, 200 e 400 Mbps. As frequências no padrão são designadas como S100, S200 и S400 respectivamente. Os dispositivos de consumo geralmente suportam S100, a maioria dos adaptadores permite S200. Dispositivos projetados para velocidades diferentes podem ser conectados ao mesmo barramento. A troca ocorrerá na velocidade mínima para todos os nós ativos. No entanto, se o controlador host implementar uma topologia e um mapa de velocidade (Topologia_Mar и mapa de velocidade), É possível utilizar diversas frequências em um barramento, de acordo com as capacidades de um determinado par participante da troca.

O sistema permite a conexão e desconexão dinâmica (quente) de dispositivos. Identificadores conectáveis

os dispositivos são atribuídos automaticamente, sem intervenção do usuário. Mudanças na topologia (composição dos dispositivos conectados) são monitoradas automaticamente pelo barramento e transmitidas ao software de controle.

protocolo IEEE 1394

O protocolo 1394 é implementado em três níveis (Fig. 7.11).

Camada de Transação converte pacotes em dados fornecidos aos aplicativos e vice-versa. Ele implementa um protocolo de solicitação-resposta em conformidade com ISO/IEC 13213:1994 (ANSI/IEEE 1212, edições de 1994), arquiteturas CSR (Control and Status Register) para barramentos de microcomputadores (leitura, gravação, bloqueio). Isso facilita a comunicação do barramento 1394 com barramentos paralelos padrão.

Camada de Link forma pacotes a partir de dados da camada física e realiza transformações reversas. Garante que os nós troquem datagramas com confirmações. A camada é responsável por transmitir pacotes e gerenciar transferências isócronas.

Camada física gera e recebe sinais de barramento. Ele fornece inicialização e arbitragem, assumindo que apenas um transmissor esteja operando por vez. A camada passa fluxos de dados e níveis de sinal de barramento serial para a camada superior. O isolamento galvânico é possível entre esses níveis, nos quais os chips da camada física são alimentados pelo barramento. O isolamento galvânico é necessário para evitar circuitos comuns parasitas que podem aparecer através dos fios terra de proteção das fontes de alimentação.

O hardware FireWire normalmente consiste em dois chips transceptores de camada física dedicados Transceptor PHY e ponte de ligação de ônibus Chip de ligação. A comunicação entre eles é possível, por exemplo, através da interface IBM-Apple LINK-PHY. Os microcircuitos de nível de comunicação executam todas as funções do seu nível e algumas das funções do nível

transações, o restante da camada de transação é executado em software.

Barramento USB e FireWire

Conectores

Fig. 7.11. Estrutura de três camadas do FireWire

Gerenciamento de ônibus

O protocolo 1394 possui um mecanismo flexível para gerenciar a comunicação entre diferentes dispositivos. Isto não requer a presença de um PC ou outro controlador de barramento no barramento. A gestão inclui três serviços:

mestre de ciclo, enviar pacotes de transmissão de início de quadro (necessários para trocas isócronas).

Gerenciador de recursos isócronos, se algum nó suportar troca isócrona (para vídeo e áudio digital).

Controlador de barramento opcional (Bus Master) pode ser um PC ou um DVCR de edição.

Após a reinicialização, a estrutura do barramento é determinada, endereços físicos são atribuídos a cada nó e o loop mestre, o gerenciador de recursos isócronos e o controlador do barramento são arbitrados. Um segundo após a redefinição, todos os recursos ficam disponíveis para uso posterior.

A vantagem fundamental do barramento é que não há necessidade de controlador. Qualquer dispositivo transmissor pode receber uma faixa de tráfego isócrono e começar a transmitir um sinal de um controle autônomo ou remoto, o receptor “ouvirá” essa informação. Caso exista um controlador (PC), o software correspondente pode controlar o funcionamento dos dispositivos, implementando, por exemplo, um estúdio de edição de vídeo digital não linear.

Transporte de dados isócrono

O transporte isócrono do barramento 1394 fornece rendimento garantido e latência limitada para transmissão em alta velocidade em múltiplos canais. O gerenciador de recursos isócrono contém um registro LARGURA DE BANDA^DISPONÍVEL, que determina a disponibilidade da largura de banda restante para nós com transmissão isócrona. Após a reinicialização, o nó recém-surgido com transmissão isócrona solicita alocação de largura de banda. O vídeo digital, por exemplo, requer largura de banda de 30 Mbit/s (25 Mbit/s para dados de vídeo e 3-4 Mbit/s para áudio, sincronização e cabeçalhos de pacotes). A largura de banda é medida em unidades de alocação especiais, cujo número é 125 em um ciclo de 6144 ms. Uma unidade leva cerca de 20 ns, o que corresponde ao tempo necessário para transmitir uma quadrigêmeo (Quadlet) a 1600 Mbps. Quadlet (palavra de 32 bits) é a unidade de transferência de dados no barramento. 25 ms do ciclo são reservados para tráfego assíncrono, portanto o valor inicial do registro após o reset é de 4915 unidades. EM S100 dispositivos de vídeo digital solicitam cerca de 1800 unidades, em S200 cerca de 900. Se a banda correspondente não estiver disponível, o dispositivo que a solicita repetirá periodicamente a solicitação.

O gerenciador de recursos isócronos atribui a cada nó isócrono um número de canal (0-63) dentre os disponíveis (registro

CANAIS_DISPONÍVEIS). É o identificador de pacote isócrono. Quando uma troca isócrona se torna desnecessária para um nó, ele deve liberar sua largura de banda e número de canal. As informações de controle são trocadas através de um canal assíncrono.

2.2. Sinônimos e acréscimos ao padrão IEEE 1394

O barramento IEEE 1394 possui muitos aliases:

Padrão IEEE 1394-1995 para barramento serial de alto desempenho é o nome completo do documento que descreve o padrão atualmente em vigor.

FireWire é uma marca registrada da implementação da IEEE-1394 pela Apple Computer, Inc..

P1394 é o nome da versão preliminar do IEEE-1394 (antes da adoção em dezembro de 1995).

DigitalLink é uma marca registrada da Sony Corporation usada em conexão com a implementação do IEEE-1394 em câmeras digitais.

MultiMedia Connection é o nome usado no logotipo 1394 High Performance Serial Bus Trade Association (1394TA).

Como a Apple vem desenvolvendo o conceito FireWire desde 1986, o nome FireWire é o sinônimo mais comum de IEEE 1394.

Além do padrão principal IEEE 1394-1995, existem várias modificações:

1394a é visto como um documento de limpeza, preenchendo algumas lacunas do padrão original e apresentando pequenas alterações (como operação de reinicialização mais rápida no barramento). Os produtos 1394a são compatíveis com dispositivos lançados antes da adoção do padrão principal. A versão foi introduzida para aumentar a velocidade para 800 Mbit/s e superior; versões de alta velocidade também estão incluídas no 1394b.

1394.1 define o conector de 4 fios e define o padrão para pontes de barramento.

1394.2 pretende ser um padrão para conectar um cluster de estações com uma taxa de câmbio de 1 Gbit/s e superior, incompatível com 1394. Este padrão deriva do IEEE 1596 SCI (Scalable Coherent Interface) para supercomputação e às vezes é chamado Expresso em Série ou SCILite. A interface de sinalização 1394.2 é semelhante ao FCAL e permite topologia de anel, proibido pelo padrão 1394.

2.3. Comparação de FireWire e USB

As interfaces seriais FireWire e USB, embora tenham recursos comuns, são tecnologias significativamente diferentes. Ambos os barramentos proporcionam fácil conexão de um grande número de unidades de controle (127 para USB e 63 para FireWire), permitindo ligar e desligar dispositivos enquanto o sistema está funcionando. A topologia de ambos os barramentos é bastante próxima. Os hubs USB fazem parte do centro de controle; sua presença é invisível para o usuário. Ambos os barramentos possuem linhas de energia do dispositivo, mas a capacidade de energia do FireWire é significativamente maior. Ambos os barramentos suportam o sistema PnP (configuração automática on/off) e eliminam o problema de falta de endereços, canais DMA e interrupções. A largura de banda e o gerenciamento de barramento são diferentes.

USB focado em unidades de controle conectadas a um PC. Suas transmissões isócronas permitem a transmissão apenas de sinais de áudio digital. Todas as transmissões são controladas centralmente e o PC é o nó de controle necessário localizado na raiz da estrutura em árvore do barramento. Este barramento não suporta a conexão de vários PCs.

FireWire está focado na troca intensiva entre quaisquer dispositivos conectados a ele. O tráfego isócrono permite transmitir vídeo “ao vivo”. O barramento não requer controle centralizado do PC. É possível usar o barramento para conectar vários PCs e unidades de controle em uma rede local.

Novos dispositivos digitais de vídeo e áudio possuem adaptadores integrados 1394. Conectando dispositivos analógicos e digitais tradicionais (players, câmeras,

monitores) é possível através de adaptadores-conversores de interfaces e sinais. Cabos e conectores FireWire padrão e uniformes substituem as muitas conexões diferentes entre dispositivos eletrônicos de consumo e PCs. Diferentes tipos de sinais digitais são multiplexados em um barramento. Ao contrário das redes Ethernet, a transmissão de fluxos de dados em alta velocidade e em tempo real através de FireWire não requer protocolos adicionais. Além disso, existem meios de arbitragem que garantem o acesso ao ônibus em um determinado prazo. O uso de pontes em redes FireWire permite isolar o tráfego de grupos de nós entre si.

7.3. Interface ACCESS.Bus e PC

barramento serial ACESSO.Ônibus (Accessory Bus), desenvolvido pela DEC, é um barramento para interação entre um computador e seus acessórios, como monitor (canal VESA DDC), fontes de alimentação inteligentes (Smart Battery), etc. 12 V, 500 mA) podem conectar até 14 dispositivos de entrada/saída, o comprimento do barramento pode chegar a 8 m. A base do hardware é a interface PC, caracterizada pela facilidade de implementação, mas, mesmo comparada ao USB, baixo desempenho. Acima do protocolo de hardware do PC para o ACCESS.Bus existe um protocolo de software subjacente com o qual interagem os protocolos dos dispositivos conectados específicos. Os protocolos fornecem conexão/desconexão de dispositivos sem reiniciar o sistema operacional. A atribuição dos sinais do conector ACCESS.Bus, proposta pela VESA, é apresentada na tabela. 7.3.
contato Nomeação
1 GND
2 Ключ
3 SDA
4 +5 V (alimentação do dispositivo)
5 SCL

Interface. PARA, Desenvolvido pela Philips, apareceu recentemente em PCs e é utilizado como barramento auxiliar interno da placa-mãe para comunicação com memória não volátil para identificação de componentes instalados (módulos de memória DIMM). O barramento se diferencia pela extrema simplicidade de implementação, duas linhas de sinalização que são operadas por software. Para a finalidade pretendida, este barramento é atualmente usado apenas pelo BIOS ao determinar o hardware, mas o uso de memória de configuração regravável abre novas oportunidades para vincular software a um sistema específico (mais precisamente, um módulo instalado) e... para vírus . A forma de acesso do software ao barramento ainda não foi padronizada, mas se desejar, pode ser “calculada” estudando a documentação do chipset.

Barramento USB e FireWire
Arroz. 7.12. Protocolo de comunicação do PC

Interface serial CSS fornece transferência bidirecional de dados entre um par de dispositivos usando dois sinais: dados SDA (dados seriais) e sincronização SCL (relógio serial). Dois dispositivos estão envolvidos na troca líder (Mestre) и escravo. Cada um deles pode atuar como transmissor, colocar bits de informação na linha SDA, ou receptor. O protocolo de troca é ilustrado na Fig. 7.12. A sincronização é definida pelo controlador do dispositivo mestre. A linha de dados é bidirecional com saída tipo coletor aberto e é controlada por ambos os dispositivos alternadamente. A frequência de troca (não necessariamente constante) é limitada acima de 100 kHz para o modo padrão e 400 kHz para o modo de alta velocidade, o que permite organizar uma implementação controlada por software do controlador de interface.

Início de qualquer condição de operação Início acionado pelo sinal SDA indo de alto para baixo quando o SCL está alto. A operação é concluída transferindo o sinal SDA de baixo para alto quando a condição SCL é alta Parar. Ao transmitir dados, o estado da linha SDA só pode mudar quando o nível SCL é baixo, os bits de dados são bloqueados pela borda positiva do SCL. Cada mensagem consiste em 8 bits de dados gerados pelo transmissor (MSB é transmitido primeiro), após o qual o transmissor libera a linha de dados por um ciclo de clock para receber uma confirmação. Durante o nono ciclo, o receptor gera um zero Bit de confirmação de confirmação. Depois de transmitir o bit de confirmação, o receptor pode atrasar a próxima transmissão mantendo a linha SCL baixa. O receptor também pode desacelerar a transmissão do barramento em um nível de recepção por bit, mantendo o SCL baixo após sua queda gerada pelo transmissor.

Cada dispositivo escravo possui seu próprio endereço, cuja largura padrão é de 7 bits. Endereço A[6:0] transmitido pelo dispositivo mestre em bits [7:1] do primeiro byte, o bit 0 contém o sinal da operação R1U (R1/U = 1 leitura, RW=Q -registro). Um endereço de 7 bits contém duas partes: os 4 bits mais significativos A[6:3] carregam informações sobre o tipo de dispositivo (por exemplo, para EEPROM 1010) e os 3 bits inferiores A[0:2] determine o número do dispositivo deste tipo. Muitos microcircuitos com interface de PC possuem três entradas de endereço, ao comutar o endereço necessário é definido para os níveis lógicos 1 e 0. Alguns valores de endereço completo são reservados (Tabela 7.4).

Uma chamada geral permite que um dispositivo ligado se anuncie em modo de transmissão. Byte Início projetado para atrair a atenção do processador para a interface se ela estiver organizada de forma software (não hardware) no dispositivo. Antes de receber este byte, o microcontrolador do dispositivo não pesquisa o estado e não monitora os sinais da interface. Ao usar endereçamento de 10 bits, os bits [2:1] contêm a parte mais significativa do endereço, e os 8 bits inferiores serão transmitidos no próximo byte se o RW = 0.

O endereço do dispositivo escravo e o tipo de acesso são definidos pelo controlador ao iniciar a troca. A troca com memória é ilustrada na Fig. 7.13. Aqui endereço do dispositivo SA[0:2], endereço de dados DA[0:7], dados D[0:7], sinal de gravação W (0), sinal de leitura R (1).
Bits [7:1] BKTO(RW) Nomeação
0000 000 0 endereço de chamada geral endereço de chamada geral
0000 000 1 Começar. início da troca ativa
0000 001 X Endereço do dispositivo CBUS (para compatibilidade)
0000 010 X Endereço para dispositivos em outros barramentos
0000 011 X Reservado
0000 1XX X Reservado
1111 1XX X Reservado
1111 oh X Sinal de endereçamento de 10 bits

Barramento USB e FireWire
Arroz. 7.13. Troca com memória via interface de PC: a escrita, b leitura do endereço atual, в lendo de um endereço arbitrário

Tendo cumprido a condição Começar, o controlador envia um byte contendo o endereço do dispositivo e a indicação da operação rw, e aguarda confirmação. No operações de gravação a próxima mensagem do controlador será o endereço de 8 bits da célula que está sendo escrita, seguido de um byte de dados (para microcircuitos com capacidade de memória superior a 256 bytes, o endereço da célula é enviado em dois bytes). Tendo recebido as confirmações, o controlador encerra o loop com a condição Pare, e o dispositivo endereçado pode iniciar o seu ciclo de escrita interno, durante o qual não responde aos sinais da interface. O controlador verifica a prontidão do dispositivo enviando um comando de gravação (byte de endereço do dispositivo)

e analisando o bit de confirmação, gerando então a condição Parar. Se o dispositivo responder com um bit de confirmação, significa que completou o loop interno e está pronto para a próxima operação.

Operação de leitura iniciado da mesma forma que um registro, mas com o sinal RW=\. É possível ler em um determinado endereço, no endereço atual ou sequencialmente. O endereço atual é armazenado no contador interno do dispositivo escravo, contém o endereço da célula que participou da última operação, aumentado de um.

Ao receber um comando de leitura, o dispositivo emite um bit de confirmação e envia um byte de dados correspondente ao endereço atual. O controlador pode responder com uma confirmação e então o dispositivo enviará o próximo byte (leitura sequencial). Se o controlador responder a um byte de dados recebido com uma condição Pare, A operação de leitura é concluída (caso de leitura no endereço atual). O controlador define o endereço inicial para leitura com uma operação de gravação fictícia, na qual o byte do endereço do dispositivo e o byte do endereço da célula são transmitidos, e após a confirmação do recebimento do byte do endereço, a condição é gerada novamente Início e o endereço do dispositivo é transmitido, mas com indicação da operação de leitura. É assim que a leitura de uma célula arbitrária (ou sequência de células) é realizada.

A interface permite ao controlador, por meio de um par de sinais, acessar qualquer um dos 8 dispositivos semelhantes conectados a este barramento e possuindo um endereço único (Fig. 7.14). Se precisar aumentar o número de dispositivos, você pode conectar grupos. Neste caso, é permitido usar um sinal SCL comum e sinais SDA separados (bidirecionais), ou um sinal SDA comum e sinais SCL unidirecionais separados. Para acessar um dos diversos microcircuitos (ou dispositivos) que não possuem pinos para configuração de endereço próprio, também é utilizada a separação de linha SCL (ou SDA).

O protocolo PC permite que vários controladores compartilhem o mesmo barramento, detectando colisões e realizando arbitragem. Essas funções são implementadas de forma bastante simples: se dois transmissores tentarem definir diferentes níveis de sinal lógico na linha SDA, aquele que definir o nível baixo “ganhará”. O transmissor monitora os níveis dos sinais que controla e se for detectada uma discrepância (ele transmite um nível alto, mas “vê” um nível baixo) recusa a transmissão adicional. O dispositivo pode iniciar a troca somente quando os sinais estão em estado passivo. Uma colisão só pode ocorrer se houver uma tentativa simultânea de iniciar uma troca; assim que for detectado um conflito, o transmissor “perdedor” será desligado e o transmissor “vencedor” continuará funcionando.

Barramento USB e FireWire
Arroz. 7.14. Conectando dispositivos ao controlador

Apêndice A. Engenharia de sistemas de computadores compatíveis com IBM PC

Aqui consideramos a interação de programas com adaptadores de interface. São fornecidas breves informações sobre a arquitetura do PC. A organização da memória e dos espaços de E/S, o sistema de interrupção e o acesso direto à memória são descritos. Informações mais detalhadas podem ser encontradas no livro "IBM PC Hardware. Encyclopedia" ("Peter", 1998).

A.1. espaço de memória

A estrutura lógica da memória do PC é determinada pelo sistema de endereçamento dos processadores da família x86. Os processadores 8086/88 usados ​​nos primeiros modelos IBM PC tinham um espaço de endereço de 1 MB (20 bits do barramento de endereço). A partir do processador 80286, o barramento de endereços foi expandido para 24 bits, depois (386DX, 486, Pentium) para 32 e finalmente para 36 bits (Pentium Pro, Pentium II). No modo de processador real, usado em DOS, apenas 1 MB de memória está formalmente disponível. No entanto, devido a um bug na emulação de modo real do processador 8086, os processadores 80286 e superiores têm um endereço máximo disponível de lOFFEFh, que é (64K-16) bytes a mais. A área lOOOOOh-lOFFEFh é chamada Área de alta memória (HMA). Ele contém parte do sistema operacional em modo real e pequenos programas residentes. Para total compatibilidade com o processador 8086/88, existe uma porta na linha A20 do barramento de endereços Portão A20, que passa o sinal do processador ou redefine à força a linha A20 do barramento de endereços do sistema.

Publicação: cxem.net

Veja outros artigos seção informática.

Leia e escreva útil comentários sobre este artigo.

<< Voltar

Últimas notícias de ciência e tecnologia, nova eletrônica:

Máquina para desbastar flores em jardins 02.05.2024

Na agricultura moderna, o progresso tecnológico está se desenvolvendo com o objetivo de aumentar a eficiência dos processos de cuidado das plantas. A inovadora máquina de desbaste de flores Florix foi apresentada na Itália, projetada para otimizar a etapa de colheita. Esta ferramenta está equipada com braços móveis, permitindo uma fácil adaptação às necessidades do jardim. O operador pode ajustar a velocidade dos fios finos controlando-os a partir da cabine do trator por meio de um joystick. Esta abordagem aumenta significativamente a eficiência do processo de desbaste das flores, proporcionando a possibilidade de adaptação individual às condições específicas do jardim, bem como à variedade e tipo de fruto nele cultivado. Depois de testar a máquina Florix durante dois anos em vários tipos de frutas, os resultados foram muito encorajadores. Agricultores como Filiberto Montanari, que utiliza uma máquina Florix há vários anos, relataram uma redução significativa no tempo e no trabalho necessários para desbastar flores. ... >>

Microscópio infravermelho avançado 02.05.2024

Os microscópios desempenham um papel importante na pesquisa científica, permitindo aos cientistas mergulhar em estruturas e processos invisíveis aos olhos. Porém, vários métodos de microscopia têm suas limitações, e entre elas estava a limitação de resolução ao utilizar a faixa infravermelha. Mas as últimas conquistas dos pesquisadores japoneses da Universidade de Tóquio abrem novas perspectivas para o estudo do micromundo. Cientistas da Universidade de Tóquio revelaram um novo microscópio que irá revolucionar as capacidades da microscopia infravermelha. Este instrumento avançado permite ver as estruturas internas das bactérias vivas com incrível clareza em escala nanométrica. Normalmente, os microscópios de infravermelho médio são limitados pela baixa resolução, mas o desenvolvimento mais recente dos pesquisadores japoneses supera essas limitações. Segundo os cientistas, o microscópio desenvolvido permite criar imagens com resolução de até 120 nanômetros, 30 vezes maior que a resolução dos microscópios tradicionais. ... >>

Armadilha de ar para insetos 01.05.2024

A agricultura é um dos sectores-chave da economia e o controlo de pragas é parte integrante deste processo. Uma equipe de cientistas do Conselho Indiano de Pesquisa Agrícola-Instituto Central de Pesquisa da Batata (ICAR-CPRI), em Shimla, apresentou uma solução inovadora para esse problema: uma armadilha de ar para insetos movida pelo vento. Este dispositivo aborda as deficiências dos métodos tradicionais de controle de pragas, fornecendo dados sobre a população de insetos em tempo real. A armadilha é alimentada inteiramente por energia eólica, o que a torna uma solução ecologicamente correta que não requer energia. Seu design exclusivo permite o monitoramento de insetos nocivos e benéficos, proporcionando uma visão completa da população em qualquer área agrícola. “Ao avaliar as pragas-alvo no momento certo, podemos tomar as medidas necessárias para controlar tanto as pragas como as doenças”, diz Kapil ... >>

Notícias aleatórias do Arquivo

Olhos grandes acordam mais cedo 04.07.2002

Todos sabem que numerosos pássaros saúdam o amanhecer com seu canto. Menos conhecido é que o coro de pássaros não entra ao mesmo tempo.

O intervalo entre o primeiro e o último cantores é de até cem minutos. Em nossa área, os tordos costumam ser os primeiros a acordar (não sem razão, seu nome do meio é tordos), os últimos a se juntarem são os tentilhões e os chapins azuis.

Recentemente, ornitólogos britânicos da Universidade de Bristol fizeram observações em sete florestas da Europa. O início do canto de 57 espécies de aves e a claridade da luz do dia em cada momento foram registrados. Em seguida, os dados obtidos foram comparados com informações sobre o tamanho dos olhos de cada “corista”. Descobriu-se que as espécies de pássaros em que os olhos são maiores em relação ao tamanho do corpo começam a cantar mais cedo.

Os cientistas explicam esse fato pelo fato de a visão dos pássaros de olhos grandes ser mais nítida. Tanto ao amanhecer quanto durante o resto do dia, os pássaros cantam para atrair um parceiro e reivindicar seu território. Mas na semiescuridão, cantar pode ser perigoso: alertará predadores noturnos e um cantor entusiasmado não notará o inimigo. Portanto, aquelas aves com olhos maiores, o que significa melhor visão, correm o risco de começar a cantar mais cedo.

Outras notícias interessantes:

▪ Genética e história

▪ Câmeras e sensores da série Philips Hue Secure

▪ Mechnikov estava errado

▪ Nanofios com três átomos de diâmetro

▪ Nanopartículas de ouro foram sintetizadas usando mimioza

Feed de notícias de ciência e tecnologia, nova eletrônica

 

Materiais interessantes da Biblioteca Técnica Gratuita:

▪ seção do site Radiocomunicações civis. Seleção de artigos

▪ artigo A fornalha bombeia água. Dicas para o dono da casa

▪ artigo Como os elefantes vivem em seu rebanho? Resposta detalhada

▪ artigo Trabalhando em máquinas de laminação de filme. Instrução padrão sobre proteção do trabalho

▪ artigo Detector de radar. Enciclopédia de rádio eletrônica e engenharia elétrica

▪ artigo Estabilizador de tensão de relé eletrônico, 145-275 / 187-242 volts. Enciclopédia de rádio eletrônica e engenharia elétrica

Deixe seu comentário neste artigo:

Имя:


E-mail opcional):


Comentário:





Todos os idiomas desta página

Página principal | Biblioteca | Artigos | Mapa do Site | Revisões do site

www.diagrama.com.ua

www.diagrama.com.ua
2000-2024