Serviços de design

Posicionamento e encaminhamento manuais.

Para blocos de computação com estrutura repetitiva, posicionamos por script e manualmente, concebemos árvores de relógio à medida, encostamos os sub-blocos e integramos o resultado num fluxo digital de back-end padrão.

Abrange
Posicionamento manual, encaminhamento crítico, árvores de relógio à medida e encosto de blocos
Mais indicado para
Caminhos de dados com pipeline e blocos de computação com estrutura repetitiva
Integração
Consolidado como bloco, ou células à medida fixadas por um script de posicionamento
O nosso trabalho
Um núcleo de computação posicionado manualmente em FinFET de 16 nm, com sub-blocos encostados e 95% de utilização de posicionamento no tape-out

O que fazem o posicionamento e o encaminhamento manuais

O layout mais regular, onde mais importa.

  1. Posicionamento manual

    As células posicionadas pela ordem do fluxo de dados encurtam as ligações e equilibram os caminhos de setup e de hold, e um layout repetitivo torna a variação do processo mais uniforme em todo o bloco.

  2. Alturas de célula à medida

    Células à medida de diferentes alturas nos caminhos críticos, para uma otimização profunda do timing e do consumo.

  3. Encosto de blocos

    Sub-blocos encostados sem células de fronteira, o que aumenta a utilização de posicionamento e reduz a área.

  4. Árvores de relógio à medida

    Distribuição de relógio concebida para a estrutura do pipeline, que controla o skew e o consumo.

  5. Distribuição de alimentação e queda IR

    A rede de alimentação é concebida com o posicionamento, com análise estática e dinâmica da queda IR.

  6. Integração com fluxos automatizados

    A parte à medida é consolidada como bloco, ou as suas células são fixadas por um script de posicionamento, enquanto a restante lógica segue o fluxo automatizado.

O fluxo de posicionamento e encaminhamento

Seis passos, do floorplan ao sign-off.

  1. Floorplan

    Hierarquia, dimensões dos blocos, encosto e estrutura de alimentação.

  2. Posicionamento manual

    Células posicionadas por script, bit slice a bit slice, com iteração nos caminhos críticos.

  3. Árvore de relógio

    Distribuição de relógio concebida para equilibrar o skew e o consumo.

  4. Encaminhamento

    Sinais críticos encaminhados segundo regras, com o resto concluído por ferramentas.

  5. Extração e timing

    Extração de parasitas, simulação pós-layout e análise estática de timing.

  6. Sign-off

    Timing em vários cantos, queda IR e regras físicas.

Perguntas sobre posicionamento e encaminhamento manuais

Em que difere do posicionamento e encaminhamento automatizados?

No posicionamento e encaminhamento automatizados, as ferramentas decidem as posições das células e as ligações, o que se adequa à lógica de controlo e às interfaces. No posicionamento e encaminhamento manuais, os engenheiros decidem o posicionamento dos blocos-chave por script, o que se adequa a caminhos de dados regulares e repetitivos.

Pode funcionar com um fluxo automatizado?

Sim. A parte à medida pode ser consolidada como um bloco que fornece ao nível superior os seus modelos de timing e físicos, ou um script de posicionamento pode fixar as células à medida de uma forma totalmente compatível com o fluxo automatizado.

Como são tratadas as questões de timing, consumo, IR ou ECO?

Da mesma forma que num fluxo automatizado. A chave do design full-custom é tratar a arquitetura, a netlist, as células e o posicionamento como um todo.

Que blocos se adequam ao posicionamento e encaminhamento manuais?

Os blocos com pipeline, com largura de bits regular e elevada atividade de comutação. Quanto maior e mais repetitivo for o bloco, maior o ganho.

Tem um bloco que justifica o posicionamento manual?

Envie a sua estrutura, o processo-alvo e onde se gastam a energia e a área, e responderemos.