Serviços de design

Netlists manuais ao nível de portas.

A Chipchain tem capacidade para conceber netlists manuais e pode adaptar este serviço ao seu projeto. Para caminhos de dados regulares com pipeline, mapeamos o RTL diretamente para células à medida sob a forma de uma netlist ao nível de portas, para otimizar a netlist, as células e o posicionamento como um todo.

Mais indicado para
Lógica de computação com pipeline e elevada atividade de comutação
Método
RTL mapeado para células à medida, com a netlist ao nível de portas gerada por script
Funciona com
Células à medida, caracterização de bibliotecas e posicionamento e encaminhamento manuais
Verificação
Equivalência formal com o RTL, simulação ao nível de portas e análise estática de timing

Porquê uma netlist manual

Netlist, células e posicionamento concebidos em conjunto.

  1. Mapeamento para células à medida

    O RTL é mapeado manualmente para registos, latches e células combinatórias à medida.

  2. Estrutura regular

    As etapas de pipeline partilham uma estrutura, e a netlist organiza-se em bit slices que correspondem ao posicionamento.

  3. Nomes coerentes

    Um esquema de nomes coerente facilita a utilização de scripts na netlist e o posicionamento manual.

  4. Otimização dos caminhos críticos

    O tipo de célula, o drive strength e o tipo de limiar são escolhidos para os caminhos críticos.

  5. Lógica sequencial

    Os registos multibit e as células dinâmicas reduzem o consumo do relógio e da lógica sequencial.

  6. Compatível com fluxos automatizados

    A lógica fora da parte à medida mantém-se no fluxo de síntese, e tudo fecha num único sign-off.

O fluxo da netlist

Seis passos, do RTL a uma netlist pronta para posicionamento.

  1. Revisão do RTL

    Hierarquia de módulos e fluxo de dados confirmados, e identificação da lógica adequada ao design à medida.

  2. Seleção de células

    Escolha dos tipos de células para registos, latches e lógica combinatória.

  3. Geração da netlist

    RTL mapeado para células à medida, com a netlist ao nível de portas gerada por script.

  4. Verificação de equivalência

    Verificação formal de que a netlist corresponde ao RTL.

  5. Simulação ao nível de portas e timing

    Simulação ao nível de portas e análise estática de timing.

  6. Passagem ao posicionamento

    A netlist e o seu esquema de nomes seguem para o posicionamento e encaminhamento manuais.

Perguntas sobre netlists manuais

Porquê usar uma netlist manual?

Mapeia o RTL em função das células à medida, e os seus nomes coerentes facilitam a utilização de scripts e o posicionamento manual. A netlist e o posicionamento funcionam então em estreita articulação.

Que lógica se adequa a uma netlist manual?

Adequa-se melhor a lógica de computação com pipeline e elevada atividade de comutação. A lógica de controlo tem caminhos complexos e mantém-se normalmente no fluxo de síntese.

Temos de escrever a netlist nós próprios?

Para lógica típica com pipeline, podemos produzi-la a partir do seu RTL. Para designs complexos, trabalhamos com a sua equipa, por projeto.

O que é que isto exige do RTL?

Uma hierarquia de módulos e um fluxo de dados claros, para que os scripts o possam processar até à netlist.

Como é verificada a netlist?

A equivalência formal confirma que corresponde ao RTL, seguindo-se a simulação ao nível de portas e a análise estática de timing.

Tem um bloco adequado a uma netlist manual?

Envie a estrutura do RTL, o processo-alvo e o objetivo de timing, e responderemos.