Definindo caminhos de sinais de alta velocidade com xSignals

 

O Desafio

Com velocidades de comutação dos dispositivos cada vez mais elevadas, surge o desafio de manter a integridade do sinal e de cumprir os requisitos de temporização do sinal. A integridade do sinal pode ser gerida através do encaminhamento de impedância controlada, o que é conseguido através do desenho cuidadoso quer do empilhamento da PCB quer das larguras de encaminhamento a utilizar em cada camada.

Os requisitos de temporização são cumpridos igualando os comprimentos encaminhados dos percursos de sinal. Para um conjunto de percursos de sinal de 2 pinos, cada um a correr de um pino de saída para um único pino de entrada, calcular e comparar os comprimentos é um processo simples. No entanto, este não é o caso em muitas soluções de desenho típicas em que pode existir um componente de terminação em série no percurso do sinal, ou em que existem mais de dois pinos no sinal, que pode então ser encaminhado usando uma topologia de encaminhamento Balanced T ou Fly-By, como mostrado na imagem abaixo.

Quatro chips de RAM DDR2 encaminhados usando uma topologia Balanced T. ##
Quatro chips de RAM DDR2 encaminhados usando uma topologia Balanced T. ##

A Solução

A tarefa do projetista é traduzir os requisitos do seu desenho, como o comprimento máximo de encaminhamento permitido para cumprir o orçamento de temporização, num conjunto de regras de desenho, como uma regra de Comprimento para garantir que a temporização é cumprida, e uma regra de Comprimento Correspondente para detetar potenciais desencontros de temporização.

Agora o projetista vê os sinais em função da sua função (por exemplo, "Este sinal de endereço tem de ser encaminhado deste conector para cada dispositivo de memória. Para o conseguir, vou encaminhá-lo usando uma topologia fly-by com uma resistência de terminação na extremidade. Posso também precisar de uma terminação em série na origem"). Embora o endereço A0 passe através de uma resistência de terminação, para o projetista esse sinal continua a ser A0 do outro lado dessa resistência.

Mas o editor de PCB vê cada sinal simplesmente como um conjunto de pinos ligados entre si (normalmente designado por net) — a Net A0 vai deste pino do conector para este pino do componente de memória, depois para este pino do componente de memória, e assim sucessivamente. Assim que é adicionada uma resistência de terminação em série, essa linha de endereço passa a ser duas nets distintas. Isto dificulta ao projetista a especificação de requisitos de desenho essenciais, como as regras de desenho Comprimento e Comprimento Correspondente.

Isto pode ser gerido por uma funcionalidade chamada xSignals  (ou exxtended Signal). Esta funcionalidade permite o tratamento correto de um percurso de sinal de alta velocidade exatamente como isso - um percurso para um sinal viajar entre uma origem e um destino, através de componentes de terminação bem como de ramificações.

Um xSignal é essencialmente um percurso de sinal definido pelo projetista entre dois nós. Estes podem ser dois nós dentro da mesma net, ou podem ser dois nós em nets associadas separadas por um componente. O xSignal pode depois ser usado para delimitar regras de desenho relevantes, como Comprimento e Comprimento Correspondente, que serão então respeitadas durante tarefas de desenho, como o ajuste interativo de comprimento.

Criar um Novo xSignal

Um xSignal é um percurso de sinal definido pelo projetista entre dois nós; podem ser dois nós dentro da mesma net ou podem ser dois nós em nets diferentes.

Os xSignals são definidos usando os seguintes métodos:

  1. Use o xSignals Multi-Chip Wizard. Esta será a abordagem mais comum para criar xSignals e é descrita abaixo.

Em alternativa, os métodos seguintes são usados selecionando primeiro os objetos de interesse e depois escolhendo o comando apropriado:

  1. Criar um único xSignal com base em pads selecionados. Selecione o pad inicial e o pad final necessários (estes pads podem estar em nets diferentes se existir um componente de terminação em série). Os pads podem ser selecionados diretamente no espaço de desenho, ou pode ser usado o painel PCB em modo Nets para localizar e selecionar os pads (como mostrado na imagem abaixo). Depois de os pads estarem selecionados, clique com o botão direito num pad selecionado no espaço de desenho e depois execute o comando xSignals » Create xSignal from Selected Pins, ou clique com o botão direito num dos pads selecionados no painel PCB e execute o comando Create xSignal. O novo xSignal será listado no modo xSignals do painel PCB.

    Quando estiver a definir um xSignal com base em pinos selecionados (pads do footprint), selecione apenas o pad inicial e o pad final antes de executar o comando Create.

    O nome do novo xSignal será uma combinação dos dois nomes de net, separados por um hífen. O nome do xSignal pode ser editado no modo xSignals do painel PCB.

    O novo xSignal pode ser adicionado a uma classe de xSignal; clique com o botão direito na região xSignal Classes do painel para criar uma nova classe e adicionar-lhe membros.

  2. Selecione o componente de origem e depois clique com o botão direito no componente selecionado e escolha o comando xSignal » Create xSignals between Components no menu de contexto. A caixa de diálogo Create xSignals Between Components será aberta, com o componente de origem escolhido selecionado. A caixa de diálogo é descrita abaixo.
  3. Selecione um ou mais componentes em série no espaço de desenho e depois clique com o botão direito num dos componentes selecionados e escolha o comando xSignal » Create xSignals from Connected Nets no menu de contexto. A caixa de diálogo Create xSignals From Connected Nets será aberta. O componente de origem escolhido, e as nets ligadas a esse componente, serão selecionados. A caixa de diálogo é descrita abaixo.
  4. Também pode haver situações em que pretenda criar um xSignal dentro de um xSignal existente; nesta situação, pode ser usado o modo xSignal do painel PCB. Certifique-se de que a opção Select está ativada no topo do painel, localize o xSignal atual, selecione os pads necessários na secção xSignal Primitives do painel e depois clique com o botão direito num dos pads selecionados no espaço de desenho e use o método descrito no passo 2 desta lista para concluir o processo.

Selecione os dois pads no modo Nets do painel, clique com o botão direito num dos pads selecionados e depois escolha Create xSignal. Note que os pads estão em nets diferentes.
Selecione os dois pads no modo Nets do painel, clique com o botão direito num dos pads selecionados e depois escolha Create xSignal. Note que os pads estão em nets diferentes.

Se os pads inicial e final estiverem na mesma net, um xSignal terá um nome no formato <NetName>_PPn, em que n é o próximo número inteiro disponível usado para distinguir vários xSignals definidos para essa net. Se os pads inicial e final estiverem em nets diferentes, um xSignal terá um nome no formato <StartNet>_<EndNet>_PPn, em que n é o próximo número inteiro disponível usado para distinguir vários xSignals definidos para essa combinação de nets.

Assistente Multi-Chip de xSignals

O xSignals Multi-Chip Wizard é usado para criar xSignals entre um único componente de origem e múltiplos componentes de destino. O Wizard usa uma abordagem orientada para componentes para identificar potenciais xSignals – seleciona um único componente de origem, as nets de interesse e os componentes de destino e o Wizard analisa então todos os percursos potenciais desde o componente de origem até aos componentes designados, passando por componentes passivos em série e ao longo de quaisquer ramificações. Como projetista, pode então escolher os xSignals que pretende gerar e também pode criar regras de desenho de Comprimento Correspondente, se necessário. O Wizard também pode ser usado para criar automaticamente xSignals e classes de xSignal para vários circuitos comuns de interface e memória.

 Neste Wizard, um pino de saída é referido como Source, e o pino de entrada de destino é referido como Destination.

O Assistente é também uma ferramenta de múltiplas execuções – a partir do grupo mestre global de xSignals que cria inicialmente na página xSignal Routes, pode selecionar um subconjunto destes, definir classes e regras, depois regressar ao grupo mestre, escolher outro subconjunto, definir classes e regras para esse subconjunto, e assim sucessivamente.

Um dos grandes pontos fortes do Wizard é a facilidade de trabalhar entre o Wizard e o editor de PCB. Clique num xSignal em qualquer página do Assistente e os pads e qualquer encaminhamento serão realçados visualmente na PCB.

Nesta fase, o Assistente não suporta a adição automática de identificadores de junção em T, frequentemente referidos como tie-points ou branch-points. Se o seu desenho incluir encaminhamento ramificado, sugere-se que:

  1. Ajuste o comprimento desde o componente de origem até ao componente passivo (como uma resistência de terminação em série), se existirem.
  2. Ajuste o comprimento em cada ramificação, desde a junção em T até ao componente de destino.
  3. Se necessário, ajuste o comprimento restante entre o componente passivo (ou a partir da origem, se não existirem passivos) e a junção em T.
Se precisar de ajustar apenas os comprimentos das ramificações, crie um ponto de ramificação definido pelo utilizador colocando um componente de camada única e pad único dentro do encaminhamento na junção em T. Consulte a secção Defining the Branch Point in a Balanced T Pattern abaixo para mais informações.

Para aceder ao xSignals Multi-Chip Wizard, selecione o comando Design » xSignals » Run xSignals Wizard nos menus principais ou clique com o botão direito no layout da PCB e selecione depois xSignals » Run xSignals Wizard. Será mostrada a página de abertura do Assistente.

A página de abertura do xSignals Multi-Chip Wizard
A página de abertura do xSignals Multi-Chip Wizard

Modos do Assistente Multi-Chip de xSignals

Na segunda página do Wizard, ser-lhe-á pedido que selecione Custom Multi-Component Interconnect, On-Board DDR3 / DDR4 ou USB 3.0. O modo Custom Multi-Component Interconnect é usado para definir múltiplos xSignals entre um componente de origem escolhido e múltiplos componentes de destino, enquanto o modo On-Board DDR3 / DDR4 é usado para criar xSignals para a sua memória DDR3 ou DDR4. O modo USB 3.0 cria os xSignals, Classes de xSignal e regras de Comprimento Correspondente para cada canal USB 3.0. Selecione o modo adequado às suas necessidades.

Caixa de Diálogo Criar xSignals Entre Componentes

Se tiver um grande número de xSignals para definir, é mais eficiente utilizar a caixa de diálogo Create xSignals Between Components. Acedida através do comando Design » xSignals » Create xSignals, a caixa de diálogo apresenta os componentes de Origem e Destino, e permite criar um ou vários xSignals numa única operação.

Utilize a caixa de diálogo para identificar e criar rapidamente vários xSignals e adicioná-los à classe de xSignal necessária.
Utilize a caixa de diálogo para identificar e criar rapidamente vários xSignals e adicioná-los à classe de xSignal necessária.

A abordagem é:

  1. Selecionar uma única Source Component.
  2. Selecionar um ou mais Destination Components necessários.
  3. Selecionar a Source Net(s) de interesse. Serão listadas todas as nets atualmente ligadas ao componente de origem escolhido. Para nets associadas a uma classe específica, escolha essa classe na lista pendente Net Class.
  4. Clique no botão Analyze. O software tenta identificar potenciais xSignals que existam entre os componentes de origem e de destino escolhidos para as nets selecionadas. Todos os xSignals possíveis que incluam as nets escolhidas e que se estendam entre os componentes de origem e de destino escolhidos serão listados no campo xSignals . Tenha em atenção que o algoritmo de análise segue a topologia atual das nets escolhidas e isto influenciará os xSignals propostos.
O software também pode procurar através de componentes em série, se necessário, selecionando a opção adequada na lista pendente AnalyzeSearch for direct connections, Through 1 series component, Through 2 series components ou Multipath coupled nets.
  1. Após a análise ser executada, os potenciais xSignals serão listados na região inferior da caixa de diálogo, e todos estarão ativados para criação. Verifique cuidadosamente a lista de xSignals propostos e ative apenas os que forem necessários. Utilize os comandos disponíveis no menu de contexto ao clicar com o botão direito para alternar várias entradas.
  2. Selecione a class pretendida na parte inferior da caixa de diálogo, ou introduza um nome para criar uma nova classe. Se não for escolhida nenhuma classe, os xSignals serão ainda assim criados e poderá adicioná-los a qualquer classe de xSignal na caixa de diálogo Object Class Explorer (Design » Classes). A utilização de classes pode simplificar bastante a criação e configuração de regras de desenho.
  3. Clique em OK para criar os xSignals.

A caixa de diálogo será fechada e regressará ao espaço de desenho. Os novos xSignals serão listados no modo xSignals do painel PCB.

Utilize os filtros acima de cada lista para localizar rapidamente os componentes ou nets de interesse; os carateres universais são suportados.

Caixa de diálogo Create xSignals From Connected Nets

Se estiver a criar xSignals que incluam componentes de terminação em série, uma boa abordagem é utilizar o comando Create xSignals from connected nets. O comando está disponível sempre que um componente está selecionado, quer através do submenu Design » xSignals nos menus principais, quer através do submenu xSignals ao clicar com o botão direito.

Este comando foi concebido para construir xSignals para fora de um componente de terminação em série selecionado, como uma resistência ou um condensador. Suporta tanto um ou mais componentes discretos, como um ou mais componentes pack-style de múltiplas instâncias, como redes de resistências. Após executar este comando, a caixa de diálogo Create xSignals From Connected Nets será aberta.

Utilize a caixa de diálogo para criar xSignals que se estendem através de um componente em série selecionado. Neste exemplo, foram propostos dois xSignals possíveis, mas apenas um será criado.
Utilize a caixa de diálogo para criar xSignals que se estendem através de um componente em série selecionado. Neste exemplo, foram propostos dois xSignals possíveis, mas apenas um será criado.

A abordagem é a seguinte:

  1. Selecione uma única Source Component.
  2. Selecione as Source Net(s) de interesse. Todas as nets que estão atualmente ligadas ao componente de origem escolhido serão listadas. Para nets associadas a uma classe específica, escolha essa classe na lista pendente Net Class.
  3. Clique no botão Analyze. O software tenta identificar potenciais xSignals existentes para os componentes de origem escolhidos e para as respetivas nets selecionadas. Todos os xSignals possíveis serão listados no campo xSignals.
  4. Após a análise ser executada, os potenciais xSignals serão listados na região inferior da caixa de diálogo, e todos estarão ativados para criação. Verifique cuidadosamente a lista de xSignals propostos e ative apenas os que forem necessários. Utilize os comandos disponíveis no menu de contexto ao clicar com o botão direito para alternar várias entradas.
  5. Selecione a class pretendida na parte inferior da caixa de diálogo, ou introduza um nome para criar uma nova classe. Se não for escolhida nenhuma classe, os xSignals serão ainda assim criados e poderá adicioná-los a qualquer classe de xSignal na caixa de diálogo Object Class Explorer (Design » Classes). A utilização de classes pode simplificar bastante a criação e configuração de regras de desenho.
  6. Clique em OK para criar os xSignals.

A caixa de diálogo será fechada e regressará ao espaço de desenho. Os novos xSignals serão listados no modo xSignals do painel PCB.

Utilize os filtros acima de cada lista para localizar rapidamente os componentes ou nets de interesse; os carateres universais são suportados.

O Papel da Topologia da Net

Quando define um xSignal, este fica entre dois nós ou pads. No entanto, quando seleciona esse xSignal no modo xSignals do painel PCB, ele seguirá efetivamente o trajeto das linhas de ligação entre esses dois pads, indicando que este é o caminho que o software assume que o xSignal irá seguir no roteamento. A razão para isto é que está a respeitar a topologia definida para essa net. A topologia da net é definida pela regra de desenho Routing Topology aplicável; a topologia predefinida é Shortest.

A animação simples mostra um CPU ligado a quatro chips de memória DDR3, que serão roteados usando uma estratégia de roteamento fly-by. A classe de xSignals DRAM_A2 contém quatro xSignals. Primeiro, a classe é selecionada, depois cada xSignal é selecionado por sua vez. Pode ver-se como o percurso do xSignal segue a topologia da net, que está atualmente definida com o valor predefinido - Shortest.

Como a topologia da net está atualmente definida como Shortest, os xSignals não estão a seguir o percurso necessário do processador para os chips de memória.
Como a topologia da net está atualmente definida como Shortest, os xSignals não estão a seguir o percurso necessário do processador para os chips de memória.

Se pretender utilizar a caixa de diálogo Create xSignals Between Components, terá de configurar a topologia da(s) net(s) para garantir que o algoritmo de análise de xSignals compreende o percurso pretendido do xSignal roteado.

Comandos de Criação de xSignals

Além do comando Design » xSignals » Create xSignals, existem outros comandos de criação de xSignals no submenu xSignals quando determinadas condições são cumpridas.

Abaixo encontra-se um resumo dos comandos e quando estão disponíveis:

Comando Descrição
Create xSignal from selected pins

Cria imediatamente um único xSignal. Este comando está disponível quando existem dois ou mais pads selecionados no espaço de desenho e é o mesmo comando apresentado quando clica com o botão direito num dos pads selecionados.

Create xSignals between components

Este comando está disponível quando existem componentes selecionados no espaço de desenho. Quando é executado, abre-se a caixa de diálogo Create xSignals Between Components com o(s) componente(s) pré-selecionado(s). Certifique-se de que os componentes Source e Designation corretos estão selecionados e, em seguida, conclua o processo de análise/criação.

Após iniciar o comando, a caixa de diálogo Create xSignals Between Components dialog será aberta. Utilize a caixa de diálogo para criar os seus xSignals da seguinte forma:

  1. O componente de origem escolhido aparecerá selecionado na região Source Component.
  2. Quaisquer outros componentes selecionados na área de trabalho aparecerão selecionados na região Destination Components. Se não aparecerem, faça agora a(s) sua(s) escolha(s).
  3. Por predefinição, todas as nets associadas aos pads do componente de origem estarão selecionadas (na região Source Component Nets). Ajuste esta seleção conforme necessário.
  4. Clique no botão Analyze - o software tenta identificar potenciais xSignals existentes entre os componentes de origem e de destino escolhidos, para as nets selecionadas.

    Tenha em atenção que o algoritmo de análise segue a topologia atual das nets escolhidas.
    O software também pode procurar através de componentes em série, se necessário, selecionando o modo adequado na lista pendente associada ao botão. Os modos disponíveis são: Search for direct connections, Through 1 series component, Through 2 series components e Multipath coupled nets.
  5. Todos os xSignals identificados são listados na região xSignals da caixa de diálogo. Por predefinição, todos são selecionados para criação - ajuste conforme necessário.
  6. Opcionalmente, pode associar os xSignals criados a uma classe de xSignal. Escolha uma classe de xSignal existente ou introduza um nome para uma nova classe. Se desejar, pode deixar o campo em branco; os xSignals podem sempre ser adicionados como membros à classe pretendida numa fase posterior.
  7. Clique em OK para criar os xSignals. A caixa de diálogo será fechada e regressará ao espaço de desenho, que apresentará uma vista filtrada com os xSignals recém-criados. Se tiver sido especificada uma classe de xSignal, esta será criada (caso ainda não exista) e os xSignals serão associados a ela.
Create xSignals from connected nets

Utilize este comando quando existir um ou mais componentes de terminação em série para os quais pretenda criar xSignals. Selecione o(s) componente(s) de terminação e, em seguida, execute o comando para abrir a caixa de diálogo Create xSignals from Connected Nets, pronta para concluir o processo de criação de um conjunto de xSignals. Utilize a caixa de diálogo para criar os seus xSignals da seguinte forma:

  1. O(s) componente(s) de origem escolhido(s) aparecerá(ão) selecionado(s) na região Source Component.
  2. Por predefinição, todas as nets associadas aos pads do(s) componente(s) de origem estarão selecionadas (na região Source Component Nets). Ajuste esta seleção conforme necessário.
  3. Clique no botão Analyze - o software tenta identificar potenciais xSignals existentes para as nets selecionadas que partem do(s) componente(s) escolhido(s).

    Tenha em atenção que o algoritmo de análise segue a topologia atual das nets escolhidas.
  4. Todos os xSignals identificados são listados na região xSignals da caixa de diálogo. Por predefinição, todos são selecionados para criação - ajuste conforme necessário.
  5. Opcionalmente, pode associar os xSignals criados a uma classe de xSignal. Escolha uma classe de xSignal existente ou introduza um nome para uma nova classe. Se desejar, pode deixar o campo em branco; os xSignals podem sempre ser adicionados como membros à classe pretendida numa fase posterior.
  6. Clique em OK para criar os xSignals. A caixa de diálogo será fechada e regressará ao espaço de desenho, que apresentará uma vista filtrada com os xSignals recém-criados. Se tiver sido especificada uma classe de xSignal, esta será criada (caso ainda não exista) e os xSignals serão associados a ela.
Create xSignals

Abre a caixa de diálogo Create xSignals Between Components. Este comando está sempre disponível. Utilize a caixa de diálogo para criar os seus xSignals da seguinte forma:

  1. Escolha um componente de origem na região Source Component.
  2. Escolha um ou mais componentes de destino na região Destination Components.
  3. Todas as nets associadas aos pads do componente de origem serão listadas na região Source Component Nets. Selecione as nets de interesse.
  4. Clique no botão Analyze - o software tenta identificar potenciais xSignals existentes entre os componentes de origem e destino escolhidos para as nets selecionadas.

    Tenha em atenção que o algoritmo de análise segue a topologia atual das nets escolhidas.
    O software também pode procurar através de componentes em série, se necessário, selecionando o modo apropriado no menu pendente associado ao botão. Os modos disponíveis são: Search for direct connections, Through 1 series component, Through 2 series components e Multipath coupled nets.
  5. Todos os xSignals identificados são listados na região xSignals da caixa de diálogo. Por predefinição, todos estão selecionados para criação — ajuste conforme necessário.
  6. Opcionalmente, pode associar os xSignals criados a uma classe de xSignal. Escolha uma classe de xSignal existente ou introduza um nome para uma nova classe. Se desejar, pode deixar o campo em branco; os xSignals podem sempre ser adicionados posteriormente como membros da classe pretendida.
  7. Clique em OK para criar os xSignals. A caixa de diálogo será fechada e regressará ao espaço de desenho, que apresentará uma vista filtrada mostrando os xSignals recentemente criados. Se tiver sido especificada uma classe de xSignal, esta será criada (caso ainda não exista) e os xSignals serão associados à mesma.

Definir o Ponto de Ramificação num Padrão T Equilibrado

Um dos desafios de uma estratégia de encaminhamento Balanced T é como igualar o comprimento dos troncos e das ramificações para além dos pontos em T. Os nós disponíveis na net existem apenas nas pads, pelo que não é possível definir xSignals separados para o tronco e desde o ponto de ramificação até ao fim de cada ramificação. Os pontos de ramificação são indicados pelos pontos vermelhos na imagem abaixo.

Uma forma de resolver este problema é adicionar à net um componente de pino único. Crie um componente com uma única pad que tenha o tamanho das vias utilizadas no desenho. Se a pad do componente do ponto de ramificação for de camada única, também pode ser utilizada em combinação com uma via blind ou buried, colocando-a na camada inicial ou final da via, proporcionando total flexibilidade quanto à forma como o encaminhamento é criado. Se apenas pretender incluir o componente do ponto de ramificação na PCB, defina o Type do componente do ponto de ramificação como Mechanical para o excluir da BOM e evitar quaisquer problemas de sincronização com o esquemático. Se tencionar incluir o componente do ponto de ramificação no esquemático, o Type do componente pode ser definido como Standard (no BOM).

O encaminhamento Balanced T pode exigir comprimentos casados entre pontos de ramificação intermédios.
O encaminhamento Balanced T pode exigir comprimentos casados entre pontos de ramificação intermédios.

Como o ponto de ramificação é um nó na net, pode agora definir xSignals apenas para o tronco, para cada ramificação principal e para cada ramificação secundária, se necessário. Estes podem depois ser utilizados para definir o âmbito das regras de desenho de comprimento casado, dando ao projetista controlo total sobre o nível de detalhe com que a correspondência de comprimentos deve ser executada. 

Gerir xSignals

No modo do painel PCB xSignals, as suas três regiões principais mudam para refletir a hierarquia de xSignals do desenho PCB atual (por ordem a partir do topo):

  • xSignal Classes
  • xSignals xSignals individuais dentro de uma classe
  • xSignals xSignal Primitives individuais que constituem um xSignal (pads, tracks e vias)

Região de Classes de xSignal

A região xSignal Classes lista quaisquer coleções de classes de xSignal que tenham sido definidas ou todas as classes disponíveis (<All xSignals>).

Selecione uma classe para ver a respetiva lista de xSignals na região central (xSignals) e para os mostrar no espaço de desenho da PCB.

Para criar uma nova classe de xSignal a partir da coleção de xSignals existente, clique com o botão direito na região e selecione Add Class no menu de contexto para abrir a caixa de diálogo Edit xSignal Class dialog. A caixa de diálogo lista os xSignals disponíveis que podem ser adicionados ou removidos como membros da nova classe utilizando os botões de gestão. Utilize o campo Name para definir um nome adequado para a nova classe de xSignal.

Crie ou adicione a uma classe de xSignal adicionando/removendo membros xSignal através da caixa de diálogo Edit xSignal Class.
Crie ou adicione a uma classe de xSignal adicionando/removendo membros xSignal através da caixa de diálogo Edit xSignal Class.

O menu de contexto, obtido com clique direito na região do painel, também oferece a possibilidade de remover (Delete) ou alterar a sua representação visual no espaço de desenho da PCB (por exemplo, Change xSignal Color).

Para saber mais sobre como trabalhar com classes, consulte a página Working with Classes on a Schematic & PCB

Região de xSignals

A região central do painel apresenta os xSignals das classes de xSignal selecionadas na região acima.

Por predefinição, a seguinte informação é listada com cada xSignal:

  • – esta funcionalidade tem duas funções:
    • fundo de cor – a cor atribuída ao xSignal (a linha fina que representa o xSignal no espaço de desenho). Clique com o botão direito para Change xSignal Color para todos os xSignals atualmente selecionados.
    • caixa de verificação de visibilidade – utilize-a para mostrar sempre o xSignal, independentemente de estar atualmente selecionado ou não.
  • Name – nome do xSignal.
  • Node Count – o número total de pads neste xSignal.
  • Routed Length – a soma dos comprimentos dos segmentos de track e arco colocados que formam o encaminhamento, mais a distância vertical percorrida através de vias (ver nota abaixo). A calculadora de comprimento encaminhado não tenta resolver segmentos de track sobrepostos nem serpentinas de encaminhamento dentro de pads.
  • Signal Length – cálculo exato da distância total de nó a nó. Aplicam-se as seguintes notas aos cálculos de Signal Length:
    • Resolve sobreposições e serpentinas dentro de pads.
    • Trata percursos de encaminhamento criados com objetos diferentes de tracks e arcos (por exemplo, uma região ou um fill).
    • Inclui distâncias verticais através de vias (ver nota abaixo).
    • Inclui o Total Pin/Package Length para este xSignal.
    • Inclui o Un-Routed (Manhattan) Length para este xSignal.
    • O incumprimento das regras de desenho aplicáveis de Length/Matched Length é assinalado através da apresentação do comprimento do sinal sobre um fundo colorido: comprimentos de sinal demasiado curtos a amarelo, comprimentos de sinal demasiado longos a vermelho.

      Consulte Length Tuning para saber mais sobre como as regras de desenho Length e Matched Length são aplicadas.
  • Total Pin/Package Length – a soma de todos os valores de Pin Package Length em todas as pads desse xSignal. Este valor é definido como uma propriedade da pad da PCB e também pode ser especificado no pino do esquemático.
  • Unrouted (Manhattan) Length – a distância vertical mais horizontal (X+Y) de todas as secções não encaminhadas.
  • Margin – a diferença entre o comprimento real do sinal e o comprimento-alvo do sinal definido pelas regras de desenho aplicáveis de Length/Matched Length.

Clique com o botão direito na região e use o submenu Columns para adicionar a seguinte coluna:

  • Delay – o tempo que um sinal demora a propagar-se ao longo desse percurso.
Utilize o submenu Columns para mostrar/ocultar colunas.
Vertical distance through a via – a distância vertical que um sinal percorre através de uma via é a soma de todas as espessuras das camadas (cobre e dielétrico) entre as camadas de cobre inicial e final, mais metade da espessura da camada inicial e metade da espessura da camada final. As espessuras das camadas são definidas no Layer Stack.

Região de Primitivas de xSignal

A terceira região do painel PCB, xSignal Primitives, lista todos os elementos constituintes (primitivas) do xSignal atualmente selecionado.

Selecione a caixa de verificação Show nodes only da região para restringir a listagem de primitivas às pads que são os nós de ponto inicial/final do xSignal. Neste modo, o xSignal selecionado será mostrado no espaço de desenho da PCB como pads de nó unidas por um traço fino (em vez de tracks) que representa o percurso do xSignal.

A região inferior xSignal Primitives lista todos os elementos do xSignal selecionado, como pads, vias e tracks, bem como o respetivo atraso.
A região inferior xSignal Primitives lista todos os elementos do xSignal selecionado, como pads, vias e tracks, bem como o respetivo atraso.

Mostrar xSignals no Espaço de Desenho

Os xSignals são mostrados no espaço de desenho como uma linha fina. A linha indica o percurso seguido pelo xSignal. O comprimento total da linha é a contribuição X / Y para o comprimento do sinal desse xSignal. A contribuição Z, ou vertical, para o comprimento total do sinal é descrita acima.

Na imagem abaixo, são mostrados os xSignals de um par diferencial. O xSignal do membro não selecionado do par permanece visível porque a caixa de verificação desse xSignal está ativada no painel.

Os xSignals são representados no espaço de desenho por uma linha fina. Ambos os xSignals deste par diferencial permanecem visíveis, embora apenas um esteja selecionado no painel, porque a caixa de verificação de visibilidade está ativada.
Os xSignals são representados no espaço de desenho por uma linha fina. Ambos os xSignals deste par diferencial permanecem visíveis, embora apenas um esteja selecionado no painel, porque a caixa de verificação de visibilidade está ativada.

Eliminar um xSignal

Selecione o xSignal no painel e, em seguida, clique no botão Delete por baixo da lista de xSignals. Em alternativa, clique com o botão direito e selecione Delete no menu de contexto, ou prima Delete no teclado.

Palavras-chave de Consulta de xSignal

O editor de PCB inclui um filtering engine poderoso e sofisticado. Este motor é utilizado para identificar objetos ao procurar objetos no espaço de desenho, aplicar regras durante tarefas de desenho interativas e automáticas, e verificar a conformidade com regras. O projetista indica ao motor de filtragem os objetos em que está interessado escrevendo uma consulta, utilizando palavras‑chave de consulta reconhecidas pelo motor de filtragem.

Foram adicionadas as seguintes palavras‑chave de consulta do tipo xSignal para utilização em regras de desenho e filtros do espaço de desenho:

Palavras‑chave do Tipo Verificação de Associação

  • InxSignal - O objeto está no xSignal especificado, por exemplo, InxSignal('DRAM_A0_PP1')
  • InxSignalClass - O objeto está na classe de xSignal especificada, por exemplo, InxSignalClass('PCIE')
  • IsxSignal - O objeto é um xSignal com o nome especificado, por exemplo, IsxSignal('DRAM_A0_PP1')

Palavras‑chave do Tipo Verificação de Atributo

  • InAnyxSignal - O objeto está em qualquer xSignal, por exemplo, InAnyxSignal

Suporte de Regras de Desenho para xSignals

As regras de desenho são a forma de traduzir os seus requisitos para um conjunto de instruções que o editor de PCB consegue compreender e obedecer. As regras podem ser verificadas durante a colocação de objetos, designado por Online DRC, ou como um pós-processo, designado por Batch DRC. Os xSignals podem ser utilizados para definir os objetos aos quais uma regra de desenho deve ser aplicada.

Saiba mais sobre Design Rules

Saiba mais sobre Length Tuning

Regra de Matched Length

A regra de desenho Matched Length é utilizada para garantir que o comprimento das nets especificadas se encontra dentro do intervalo definido. Esta regra é essencial em projetos de alta velocidade, onde o desafio não é apenas o tempo que os sinais demoram a chegar (determinado pelo seu comprimento total), mas também a importância de que os sinais especificados cheguem ao mesmo tempo. Dependendo das velocidades de comutação dos sinais, da função do sinal e dos materiais utilizados na placa, a diferença permitida pode ser de até 500 mils, ou de apenas 1 mil.

A imagem abaixo mostra um exemplo da regra de desenho Matched Length configurada para abranger os xSignals na classe de xSignals PCIE, e testar uma diferença de comprimentos dentro de cada par diferencial nessa classe de xSignals. Cada par na classe deve ter comprimentos encaminhados que resultem num Delay Tolerance de não mais de 2ps de atraso entre as duas nets desse par.

Tenha em atenção que, nas restrições da regra de desenho Matched Length, é necessário escolher entre corresponder o comprimento de todas as nets abrangidas (Group Matched Lengths) ou corresponder as duas nets dentro de cada par diferencial nas nets abrangidas.
Tenha em atenção que, nas restrições da regra de desenho Matched Length, é necessário escolher entre corresponder o comprimento de todas as nets abrangidas (Group Matched Lengths) ou corresponder as duas nets dentro de cada par diferencial nas nets abrangidas.

A imagem abaixo mostra a classe de xSignals PCIE_TX selecionada no painel, e esses xSignals selecionados na área de desenho.

Para além da classe PCIE, existem também classes definidas para os pares TX e RX. Tenha em atenção que um dos xSignals TX falha a regra de matched length aplicável. ##
Para além da classe PCIE, existem também classes definidas para os pares TX e RX. Tenha em atenção que um dos xSignals TX falha a regra de matched length aplicável. ##

Se pretender afinar o comprimento de xSignals que incluem nets simples e pares diferenciais, crie as seguintes regras:

  • Uma regra de matched length que define os requisitos de correspondência de comprimento between nets and differential pairs in xSignals. Para configurar a regra de modo a testar o comprimento de uma net/par face ao comprimento de outra net/par, ative a opção Group Matched Lengths .
  • Uma segunda regra de matched length, de prioridade mais elevada, que define os requisitos de correspondência de comprimento within-pair. Para configurar a regra de modo a testar o comprimento de um membro do par face ao outro membro do par, ative a opção Within Differential Pair Length .

Uma boa abordagem para afinar os comprimentos desses xSignals é:

  1. Encaminhar as nets e os pares diferenciais do xSignal.
  2. Afinar o comprimento das nets simples utilizando o comando Interactive Length Tuning.
  3. Afinar o comprimento between dos pares utilizando o comando Interactive Differential Pair Length Tuning. O ajuste de comprimento usa o comprimento do sinal mais longo no par mais longo como Target Length e ajusta a net mais longa do par para esse comprimento.
  4. Afinar o comprimento da net mais curta within de cada par em relação à outra net do par utilizando o comando Interactive Length Tuning.
  5. Agora pode utilizar o painel PCB Rules and Violations para verificar a(s) regra(s) de within-pair Matched Net Length. Para o fazer, selecione Matched Net Lengths na secção Rule Classes do painel, depois clique com o botão direito do rato na regra Matched Length pretendida e selecione o comando Run DRC Rule <RuleName> no menu de contexto. Ajuste os acordeões de afinação das nets simples, se necessário.
  6. Em seguida, utilize o painel PCB Rules and Violations para verificar a(s) regra(s) de between-pair Matched Net Length, usando o processo agora descrito. Ajuste os acordeões de afinação dos pares diferenciais, se necessário.

Regra de Comprimento

A regra de desenho Length é utilizada para garantir que o comprimento total encaminhado se encontra dentro do intervalo especificado. Esta regra é normalmente usada para garantir que as nets alvo não excedem o comprimento especificado, por exemplo, para assegurar que os requisitos de temporização do circuito serão cumpridos. A regra de comprimento respeita as consultas de tipo xSignal listadas acima.

Regra de Caminho de Retorno

A regra de desenho Return Path verifica a existência de um caminho contínuo de retorno do sinal na camada de referência designada acima ou abaixo dos sinais abrangidos pela regra. O caminho de retorno pode ser criado a partir de fills, regions e polygon pours colocados numa camada de sinal, ou pode ser uma camada de plano.

As camadas do caminho de retorno são as camadas de referência definidas no Impedance Profile selecionado. Adicione uma nova regra de desenho Return Path na categoria de regras High Speed.

A imagem abaixo mostra uma violação da regra Return Path, em que o polígono do caminho de retorno do xSignal tem um orifício para permitir a passagem de uma via.

Utilização do painel PCB Rules and Violations para localizar uma violação da regra Return Path. ##Utilização do painel PCB Rules and Violations para localizar uma violação da regra Return Path. ##

Cálculos de Comprimento Precisos

Um requisito fundamental na definição de regras de desenho de alta velocidade é o cálculo preciso dos comprimentos de encaminhamento. A abordagem tradicional para calcular o comprimento do sinal consiste em somar o comprimento da linha central de todos os segmentos utilizados num encaminhamento, bem como a distância vertical devida à altura das vias, originalmente determinada pela espessura da placa.

Esta abordagem não é adequada para um projeto de alta velocidade por várias razões, incluindo:

  • Objetos empilhados e sobrepostos - um algoritmo que simplesmente soma o comprimento da linha central de todos os objetos numa net não contempla objetos empilhados ou sobrepostos.
  • Percurso de encaminhamento errante dentro de um objeto - existem frequentemente objetos de encaminhamento completamente dentro de um pad ou via, o que pode acrescentar falsamente comprimento, como mostrado na primeira imagem abaixo. A segunda imagem mostra a forma correta de calcular o comprimento quando um objeto fill faz parte do encaminhamento.
  • Comprimento da via - vias cegas e enterradas não atravessam todas as camadas da placa, pelo que a espessura da placa não é suficientemente precisa para determinar o comprimento vertical. Deve ser utilizada a altura real da via, tendo em consideração as espessuras de cobre e de isolamento que a via atravessa.

A calculadora de comprimentos do editor PCB devolve o comprimento de encaminhamento mais preciso possível.

O cálculo do comprimento é efetuado com precisão ao longo da linha central do percurso mais curto, como mostrado nestas duas imagens.
O cálculo do comprimento é efetuado com precisão ao longo da linha central do percurso mais curto, como mostrado nestas duas imagens.

São calculados comprimentos precisos para as vias, com base nas camadas atravessadas e nas dimensões do stackup. Imagem do painel PCB no modo Nets.
São calculados comprimentos precisos para as vias, com base nas camadas atravessadas e nas dimensões do stackup. Imagem do painel PCB no modo Nets.

Atraso Pin Package

Em qualquer projeto de alta velocidade acima de 500 MHz, o meio de ligação, ou bond wire para o die, introduz um atraso no sinal. Este atraso interno do dispositivo é referido como atraso pin-package. Mesmo que dois dispositivos sejam totalmente compatíveis ao nível do desenho e da PCB, os tempos de propagação do encapsulamento serão diferentes entre dispositivos diferentes, pelo que terão de ser considerados. As informações de tempo de propagação podem ser encontradas no documento IBIS 6 do dispositivo. A informação relativa aos Package Pins deve ser considerada durante a fase de planeamento de I/O, ou após a síntese no caso de um FPGA. Todos os fabricantes de dispositivos deverão ser capazes de fornecer os atrasos do encapsulamento, que serão especificados quer como atraso em picossegundos quer como comprimento.

O atraso pode ser incluído no seu desenho quer como um Pin Package Length quer como um Propagation Delay, utilizando os campos respetivos para o pin no editor esquemático ou para o pad/via no editor PCB. Os valores introduzidos são tratados da seguinte forma:

Pin Package Length - todos os comprimentos pin package dentro de cada net são somados no editor PCB para dar o Total Pin/Package Length, que é incluído no Signal Length global dessa net. Consulte o modo Nets do painel PCB para saber mais sobre o Signal Length.

Propagation Delay - todos os valores de atraso definidos pelo utilizador para pins/pads e vias em cada net são adicionados ao atraso de encaminhamento dessa net no editor PCB. O atraso de encaminhamento é calculado automaticamente pelo resolvedor de campo Simbeor® integrado no Layer Stack Manager. Os atrasos de pad e via não são calculados automaticamente, mas podem ser definidos pelo utilizador.

As regras de desenho Length e Matched Length podem ser configuradas com base em Length ou Delay.

  • O Signal Length, o Total Pin/Package Length e o Delay podem ser apresentados em vários modos do painel PCB, incluindo o modo Nets, o modo Differential Pairs Editor e o modo xSignals. Clique com o botão direito do rato no cabeçalho de uma coluna no painel PCB para ativar/desativar colunas.
  • O Simbeor SFS (quasi-static field solver) da Simberian® é utilizado para calcular o atraso de encaminhamento, com base nas propriedades físicas definidas no Layer Stack Manager.
  • O Pin Package Length definido pelo utilizador e os valores de Propagation Delay são independentes entre si; são adicionados aos valores de Signal Length e Delay conforme descrito acima. Como não interagem entre si, ambos os valores podem ser especificados, se necessário.
  • Incluir o Delay no Esquemático

    Os comprimentos pin package podem ser definidos como um atributo do pin do componente esquemático no painel Properties em modo Pin. O software usará por defeito as unidades do documento subjacente; introduza as unidades juntamente com o valor, se necessário.

    Introduza o comprimento pin-package com as unidades pretendidas.
    Introduza o comprimento pin-package com as unidades pretendidas.

    • As propriedades do pin do componente também podem ser editadas no editor de bibliotecas ou na folha esquemática no separador Pins do painel Properties em modo Component. Clique em  nesse separador do painel para abrir o Component Pin Editor, onde podem ser editadas todas as propriedades de todos os pins desse componente. Os valores podem ser editados diretamente na grelha (selecione uma célula e introduza um novo valor), e as teclas de cursor podem ser usadas para se deslocar para as células adjacentes. As unidades predefinidas serão automaticamente adicionadas se não forem introduzidas manualmente.
    • Em alternativa, utilize o painel Lista SCH para copiar/colar vários valores Pin/Pkg Lengths ou Propagation Delay de uma folha de dados para um conjunto de pinos de componentes selecionados no editor de bibliotecas esquemáticas (mostrar imagem). Para além de colar diretamente o conteúdo da área de transferência nas células selecionadas, também pode clicar com o botão direito no painel para aceder à caixa de diálogo Colagem Inteligente em Grelha, proporcionando maior controlo sobre o processo de introdução de dados adicionais nos pinos.

    Definir o atraso no Editor PCB

    Os valores de Comprimento do Encapsulamento do Pino e Atraso de Propagação são transferidos para o layout PCB, como pode ser visto no modo Pad do painel Properties.

    Os valores de Comprimento do Encapsulamento do Pino e Atraso de Propagação são transferidos do esquemático para o PCB, ou também podem ser definidos diretamente no PCB.
    Os valores de Comprimento do Encapsulamento do Pino e Atraso de Propagação são transferidos do esquemático para o PCB, ou também podem ser definidos diretamente no PCB.

    Examinar o Comprimento do Pino/Encapsulamento e o Atraso de Propagação no painel PCB

    O Pin/Pkg Length é automaticamente incluído nos cálculos de Signal Length, que são apresentados em vários modos do painel PCB. Defina o painel para o modo Nets para examinar (ou editar) o valor do Pin/Pkg Length para os pinos na net escolhida. Repare como a coluna Routed Length reflete o comprimento do encaminhamento, e a coluna Signal Length reflete o comprimento do encaminhamento mais quaisquer Comprimentos de Pino/Encapsulamento nessa net.

    O Pin/Pkg Length e o seu impacto no Signal Length são apresentados no modo Nets do painel PCB.
    O Pin/Pkg Length e o seu impacto no Signal Length são apresentados no modo Nets do painel PCB.

    Na imagem abaixo, a coluna de Delay de propagação mostra que existem dois pares de xSignals que falham uma regra de projeto de Comprimento Correspondente. Como o realce está na coluna Atraso, isso indica que a regra está configurada para usar Unidades de Atraso em vez de Unidades de Comprimento.

    A coluna Atraso mostra que existem dois pares de xSignals que falham uma regra de projeto de Comprimento Correspondente. A coluna Atraso mostra que existem dois pares de xSignals que falham uma regra de projeto de Comprimento Correspondente. 

    O Comprimento do Sinal, o Comprimento Total do Pino/Encapsulamento e o Atraso podem ser apresentados em vários modos do painel PCB, incluindo o modo Nets, o modo Differential Pairs Editor e o modo xSignals. Clique com o botão direito num cabeçalho de coluna no painel PCB para ativar/desativar colunas.

    Como o Comprimento é incluído em xSignals

    O Pin/Pkg Length é automaticamente incluído no comprimento global do xSignal quando:

    • Esse sinal faz parte de uma definição de xSignal
    • Esse pad não está ligado num padrão de encaminhamento fly-by (existe apenas uma pista ligada a esse pad)

    Os pads que estão ligados num padrão de encaminhamento fly-by (com um ponto de entrada e um ponto de saída) são excluídos do cálculo do comprimento.

    Terminologia relacionada com nets

    No editor PCB, é utilizada a seguinte terminologia:

    • Net – uma coleção de pinos de componentes (nós) que estão ligados entre si. A forma como esses nós se ligam uns aos outros é designada por topologia; a topologia predefinida é a mais curta.
    • From-To – conceptualmente, um From-To decorre entre dois nós numa net. Os From-Tos podem ser criados para seguir a topologia ou disposição dos nós nessa net. Por exemplo, a topologia da net pode ser de R1-1 para U1-5 para U3-2 para R5-2. Esta net pode ter três From-Tos: R1-1 para U1-5; U1-5 para U3-2; e U3-2 para R5-2. Se a topologia for alterada, os possíveis From-Tos também o serão. Os From-Tos são criados no modo From-To do painel PCB clicando no botão Generate para os criar com base numa topologia, ou selecionando dois pads numa net e clicando depois no botão Add From To.
    • xSignal – um conjunto de nós definido pelo utilizador, tipicamente um subconjunto de uma net (deste nó para aquele nó), ou uma combinação de duas nets que incluem um componente em série, como uma resistência de terminação.

    ## Agradecimentos a Robert Feranec da FEDEVEL Academy (www.fedevel.com) pela utilização da placa de desenvolvimento iMX6 Rex nas imagens desta página (http://www.imx6rex.com/).

    AI-LocalizedAI-localized
    If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
    Feature Availability

    The features available to you depend on which Altium solution you have – Altium Develop, an edition of Altium Agile (Agile Teams or Agile Enterprise), or Altium Designer (on active term).

    If you don’t see a discussed feature in your software, contact Altium Sales to find out more.

    Legacy Documentation

    Altium Designer documentation is no longer versioned. If you need to access documentation for older versions of Altium Designer, visit the Legacy Documentation section of the Other Installers page.

    Conteúdo