Autoroute
A Tools | AutoRoute região inclui comandos relacionados com o autorouting e fanouts.

Autoroutex
O autorouter do CircuitMaker é topológico, utilizando um método diferente de mapeamento do espaço de encaminhamento, ou seja, um método que não está geometricamente condicionado. Em vez de utilizar a informação de coordenadas do espaço de desenho como referência (dividindo-o numa grelha), um autorouter topológico constrói um mapa usando apenas as posições relativas dos obstáculos no espaço, sem referência às respetivas coordenadas. Para isso, triangula o espaço entre obstáculos adjacentes. Este mapa triangulado é depois utilizado pelos algoritmos de encaminhamento para "tecer" entre os pares de obstáculos desde o ponto inicial da rota até ao ponto final. As maiores vantagens desta abordagem são o facto de o mapa ser moldado de forma independente (os obstáculos e os percursos de encaminhamento podem ter qualquer forma) e de o espaço poder ser percorrido em qualquer ângulo. Os algoritmos de encaminhamento não estão limitados a percursos puramente verticais ou horizontais, como acontece com os routers de expansão retangulares.
Comandos do submenu Autoroute
Os comandos do submenu Autoroute permitem encaminhar toda a placa, encaminhar dentro de áreas especificadas, ou encaminhar ligações de objetos específicos, como nets e classes de componentes.

A tabela seguinte descreve os comandos do submenu.
| Command | Behavior |
|---|---|
| Setup | Este comando abre a caixa de diálogo Situs Routing Strategies, que lhe permite aceder a um relatório de configuração pré-encaminhamento e configurar estratégias de encaminhamento e outras opções em relação ao Situs Autorouter. |
| All | Este comando abre a caixa de diálogo Situs Routing Strategies, que é utilizada para configurar as estratégias, selecionar a estratégia pretendida e executar o autorouter. |
| Net | Este comando é utilizado para encaminhar todas as ligações numa net especificada. |
| Net Class | Este comando é utilizado para encaminhar todas as ligações na(s) classe(s) de nets especificada(s). |
| Connection | Utilizando a estratégia de encaminhamento Main, tenta fazer o autorouting da ligação escolhida. |
| Area | Utilizando a estratégia de encaminhamento Main, tenta fazer o autorouting de todas as ligações que começam dentro da área escolhida. |
| Component | Utilizando a estratégia de encaminhamento Main, tenta fazer o autorouting de todas as ligações que começam no componente escolhido. |
| Component Class | Este comando é utilizado para encaminhar todas as ligações que partem dos pads dos componentes na(s) classe(s) de componentes especificada(s). |
| Connections On Selected Components | Utilizando a estratégia de encaminhamento Main, tenta fazer o autorouting de todas as ligações que começam nos componentes selecionados. |
| Connections Between Selected Components | Utilizando a estratégia de encaminhamento Main, tenta fazer o autorouting de todas as ligações que passam entre os componentes selecionados. |
Caixa de diálogo Situs Routing Strategies
A caixa de diálogo é acedida escolhendo Setup ou All no submenu Autoroute .
As opções principais são descritas abaixo.
- Report Window - esta área apresenta um relatório baseado na análise pré-encaminhamento do desenho, reunindo informação que inclui as regras de desenho atualmente definidas para o desenho que serão respeitadas pelo Autorouter (e o número de objetos de desenho - nets, componentes, pads - afetados por cada regra), direções de encaminhamento definidas para todas as camadas de encaminhamento de sinal e definições de pares de camadas de furação. O relatório lista potenciais problemas que podem afetar o desempenho do router. Estes avisos podem incluir camadas de encaminhamento cuja direção de encaminhamento esteja definida para Any. Sempre que possível, são fornecidas sugestões para ajudar a preparar melhor o desenho para autorouting. Quaisquer erros/avisos/sugestões listados devem ser analisados cuidadosamente e, se necessário, as regras de encaminhamento correspondentes devem ser ajustadas antes de prosseguir com o encaminhamento do desenho.
- Edit Layer Directions - clique para abrir a caixa de diálogo Layer Directions na qual pode modificar as direções de encaminhamento das camadas de sinal conforme necessário.

- Edit Rules - clique para abrir a caixa de diálogo PCB Rules and Constraints Editor . Em alternativa, se pretender modificar diretamente uma regra de encaminhamento existente, clique na hiperligação da regra na região superior.
- Save Report As - clique para guardar o relatório como um documento HTML. Utilize a caixa de diálogo Save As que se abre para alterar o nome e a localização conforme necessário.
- Available Routing Strategies - lista todas as estratégias de encaminhamento atualmente disponíveis que podem ser utilizadas pelo Autorouter para encaminhar o desenho. Cada estratégia é apresentada em termos do seu nome e descrição. Em geral, as estratégias de encaminhamento predefinidas para placas de duas camadas e multicamada são adequadas para a maioria das situações de encaminhamento. No entanto, é importante garantir que quaisquer regras de desenho de encaminhamento relevantes estejam configuradas antes de executar o Autorouter. As estratégias de encaminhamento predefinidas não podem ser removidas.
- Add/Edit/Duplicate - clique para abrir a caixa de diálogo Situs Strategy Editor para adicionar uma nova estratégia de encaminhamento definida pelo utilizador à lista, fazer alterações à estratégia selecionada ou criar um duplicado da estratégia de encaminhamento atualmente selecionada.
- Lock All Pre-routes - ative para impedir que quaisquer nets pré-encaminhadas sejam eliminadas ("ripped up") e reencaminhadas pelo Autorouter. Muitas vezes, determinadas nets são encaminhadas manualmente e o restante é depois encaminhado automaticamente.
- Rip-up Violations After Routing - ative para que quaisquer rotas que violem regras de desenho definidas (e aplicáveis) sejam removidas após o Autorouter concluir a sua sessão de encaminhamento.
Caixa de diálogo Situs Strategy Editor
A caixa de diálogo é acedida clicando em Add, Edit, ou Duplicate na caixa de diálogo Situs Routing Strategies.
Esta caixa de diálogo permite-lhe definir completamente uma estratégia de encaminhamento para o Situs Autorouter, incluindo as suas passagens de encaminhamento constituintes (algoritmos). A inclusão de várias passagens de encaminhamento e a ordem pela qual são utilizadas constituem a "inteligência" do Autorouter. Estas passagens são utilizadas para transformar os percursos de encaminhamento virtuais identificados no mapa topológico em rotas de elevada qualidade na placa.
As opções principais são descritas abaixo.
- More/Less Vias - utilize a barra deslizante para definir a utilização permitida de vias pelo Autorouter. Trata-se de um compromisso entre maior velocidade de encaminhamento e a utilização de menos vias. Mover a barra para a direita irá restringir o Autorouter a colocar menos vias; no entanto, o tempo necessário para encaminhar a placa será maior. Mover a barra para a esquerda permite tempos de conclusão de encaminhamento mais rápidos, mas à custa de vias adicionais colocadas pelo Autorouter na PCB.
- Orthogonal - ative esta opção para restringir o Autorouter a encaminhar apenas percursos ortogonais (90°). Desativar esta opção permite ao Autorouter encaminhar ortogonalmente ou não ortogonalmente (45°), conforme considerar adequado.
- Available Routing Passes - lista as passagens de encaminhamento disponíveis (algoritmos) que podem ser utilizadas numa estratégia de encaminhamento. Estão disponíveis as seguintes passagens:
- Adjacent Memory - esta é uma passagem de encaminhamento ao nível da ligação. É utilizada para encaminhar pinos adjacentes da mesma net que requerem fan-out com um padrão simples em U.
- Clean Pad Entries - esta é uma passagem de encaminhamento ao nível da ligação. Reencaminha a partir do centro de cada pad ao longo do eixo mais longo do pad.
- Completion - esta é uma passagem de encaminhamento ao nível da ligação. É essencialmente igual à passagem Main , mas é avaliada de forma diferente para resolver conflitos e completar ligações difíceis.
- Fan out Signal - esta é uma passagem ao nível do componente baseada nas definições de fanout definidas pelo Fanout Control. Verifica padrões nos pads, considera afastamento, largura de encaminhamento e estilo de via, e depois seleciona uma disposição de fanout adequada (fila em linha, desencontrada, etc.) para satisfazer os requisitos definidos na regra de desenho. O fanout é apenas para camadas de sinal.
- Fan out to Plane - esta é uma passagem ao nível do componente, baseada nas definições de fanout definidas pelo Fanout Control. Verifica padrões nos pads, considera afastamento, largura de encaminhamento e estilo de via, e depois seleciona uma disposição de fanout adequada (fila em linha, desencontrada, etc.) para satisfazer os requisitos definidos na regra de desenho. O fanout é apenas para uma camada de plano interno.
- Globally Optimised Main - esta é uma passagem de encaminhamento ao nível da ligação. Fornece encaminhamento ótimo e ignora contenções/violações na sua primeira iteração. Depois, reencaminha as ligações com custos de conflito aumentados até não restarem violações. Esta passagem, utilizada em conjunto com a opção Orthogonal ativada, pode produzir padrões de encaminhamento bem conseguidos. Adicione uma passagem Recorner à estratégia para fornecer cantos em chanfro.
- Hug - esta é uma passagem de encaminhamento ao nível da ligação que reencaminha cada ligação seguindo o encaminhamento existente com o afastamento mínimo possível. A passagem hug é utilizada para maximizar o espaço livre de encaminhamento. Note que esta passagem é muito lenta.
- Layer Patterns - esta é uma passagem de encaminhamento ao nível da ligação. Encaminha apenas ligações que correspondam a uma direção de camada (dentro de uma tolerância). É avaliada para se manter próxima ou seguir o encaminhamento existente, de modo a maximizar o espaço livre.
- Main - esta é uma passagem de encaminhamento ao nível da ligação. Utiliza o mapa topológico para encontrar um percurso de encaminhamento e depois utiliza o router push and shove para converter o percurso proposto em encaminhamento real.
- Memory - esta é uma passagem de encaminhamento ao nível da ligação. Verifica a existência de dois pinos em componentes diferentes na mesma camada que partilham coordenadas X ou Y.
- Multilayer Main - esta é uma passagem de encaminhamento ao nível da ligação. É semelhante à Main passagem mas com custos otimizados para placas multicamada.
- Recorner - esta é uma passagem de encaminhamento ao nível da ligação usada para criar chanfros nos cantos do encaminhamento. Esta passagem é usada quando a opção Orthogonal está ativada para a estratégia, substituindo-a essencialmente e criando chanfros nos cantos de cada rota. Se a opção Orthogonal estiver desativada para a estratégia utilizada, não é necessário incluir uma passagem Recorner, uma vez que o autorouter criará chanfros nos cantos por predefinição.
- Spread - esta é uma passagem de encaminhamento ao nível da ligação que volta a encaminhar cada ligação, tentando distribuir o encaminhamento para utilizar o espaço livre e espaçar uniformemente o encaminhamento quando este passa entre objetos fixos (como pads de componentes). Tenha em atenção que esta passagem é muito lenta.
- Straighten - esta é uma passagem de encaminhamento ao nível da ligação que tenta reduzir o número de cantos. Faz isto percorrendo a rota até um canto e, a partir desse canto, executa uma sondagem (horizontal/vertical/45up/45down) à procura de outro ponto encaminhado na net. Se encontrar um, verifica então se este novo caminho reduz o comprimento encaminhado.
- Passes in this Routing Strategy - lista as passagens de encaminhamento (algoritmos) efetivamente incluídas na estratégia. Pode adicionar as passagens que pretender a partir da lista de passagens disponíveis e podem ser adicionadas várias instâncias da mesma passagem ao longo da estratégia global para obter resultados específicos. As passagens serão executadas por ordem, de cima para baixo. Esta ordem pode ser modificada utilizando os botões Move Up e Move Down.
Comandos adicionais de Autoroute

Parar
Utilize para parar o autorouter no final da passagem de encaminhamento atual.
Repor
Utilize para repor o autorouter.
Pausa
Utilize para colocar o autorouter em pausa. Pode ser reiniciado, se necessário.
Fanout
O CircuitMaker inclui ferramentas de fanout para componentes de montagem à superfície. O motor de escape routing tentará encaminhar cada pad até um ponto imediatamente além da extremidade do dispositivo, tornando muito mais fáceis as ligações de encaminhamento até eles.
Comandos do submenu Fanout
Os comandos do submenu Fanout permitem-lhe fazer o fanout de objetos de acordo com as regras de desenho Fanout Control e as definições na caixa de diálogo Fanout Options dialog.

A tabela seguinte descreve os comandos do submenu.
| Command | Behavior |
|---|
| All | Faz o fanout de todos os componentes de montagem à superfície de acordo com a(s) regra(s) de desenho de encaminhamento Fanout Control ativada(s) e as definições na caixa de diálogo Fanout Options dialog. |
| Power Plane Nets | Faz o fanout de cada net ligada a um plano de alimentação de acordo com a(s) regra(s) de desenho de encaminhamento Fanout Control ativada(s) e as definições na caixa de diálogo Fanout Options dialog. |
| Signal Nets | Faz o fanout de cada net que não esteja ligada a um plano de alimentação de acordo com a(s) regra(s) de desenho de encaminhamento Fanout Control ativada(s) e as definições na caixa de diálogo Fanout Options dialog. |
| Net | Faz o fanout da net escolhida de acordo com a(s) regra(s) de desenho de encaminhamento Fanout Control ativada(s) e as definições na caixa de diálogo Fanout Options dialog. |
| Connection | Faz o fanout da ligação escolhida de acordo com a(s) regra(s) de desenho de encaminhamento Fanout Control ativada(s) e as definições na caixa de diálogo Fanout Options dialog. |
| Component | Faz o fanout do componente escolhido de acordo com a(s) regra(s) de desenho de encaminhamento Fanout Control ativada(s) e as definições na caixa de diálogo Fanout Options dialog. |
| Selected Components | Faz o fanout do(s) componente(s) selecionado(s) de acordo com a(s) regra(s) de desenho de encaminhamento Fanout Control ativada(s) e as definições na caixa de diálogo Fanout Options dialog. |
| Pad | Faz o fanout do pad escolhido de acordo com a(s) regra(s) de desenho de encaminhamento Fanout Control ativada(s) e as definições na caixa de diálogo Fanout Options dialog. |
Caixa de diálogo Fanout Options
A caixa de diálogo é acedida clicando em qualquer um dos comandos do submenu Fanout .
Esta caixa de diálogo permite-lhe especificar opções de fanout e de escape routing. O comportamento típico de fanout consiste em primeiro fazer o fanout dos pads internos utilizados com o tradicional dog-bone (uma rota curta com uma via na extremidade) para aceder a outra camada e, depois, a partir da via, fazer o escape routing até um ponto imediatamente além da extremidade do dispositivo, trabalhando através das camadas de encaminhamento disponíveis até que todos os pads tenham sido encaminhados por escape. Em última análise, isto torna muito mais fáceis as ligações de encaminhamento até eles.

- Fanout Pads Without Nets - ative para fazer o fanout dos pads do componente mesmo que não tenham nets atribuídas. Quando esta opção está desativada, apenas será feito o fanout dos pads com nets atribuídas.
- Fanout Outer 2 Rows of Pads - ative esta opção para fazer o fanout dos pads do componente, incluindo as duas filas exteriores (que normalmente são facilmente encaminhadas).
- Include escape routes after fanout completion - ative para adicionar escape routing a cada fanout. O escape routing coloca pistas nas vias de fanout e nos pads do componente, levando-as até às extremidades do componente para facilitar as ligações de encaminhamento até eles.
- Update fanout using Blind Vias (BGA escape routing only) - ative para colocar vias cegas entre camadas de pares de furação configuradas na pilha de camadas. Quando esta opção está desativada, apenas serão colocadas vias passantes, independentemente das definições das camadas de pares de furação.
- Escape differential pair pads first if possible (same layer, same side) - ative para fazer o fanout e o escape routing de quaisquer nets de pares diferenciais atribuídas em conjunto antes de executar outras operações de fanout, mantendo efetivamente as suas rotas juntas. O fanout colocará pistas de escape routing na mesma camada e tão adjacentes quanto possível.

