Existe um formato comum de netlist?

21

Existe um formato netlist comum que seja portátil entre diferentes ferramentas esquemáticas / pcb / EDA / CAD e, em caso afirmativo, onde está o formato ou a referência para que eu possa implementá-lo?

Caso contrário, cada pacote o implementa de maneira diferente ou existem alguns padrões que, se implementados, podem oferecer maior compatibilidade com uma ampla gama de ferramentas?

Adam Davis
fonte
5
Enquanto esta discussão é interrompida, mencionarei o gnetlist como um utilitário de linha de comando para traduzir entre cerca de 30 formatos diferentes de netlist.
9138 Kevin Vermeer

Respostas:

11

O EDIF - Electronic Design Interchange Format - é um formato neutro de fornecedor no qual armazenar listas de redes e esquemas eletrônicos. Foi uma das primeiras tentativas de estabelecer um formato neutro de troca de dados para o setor de automação de design eletrônico (EDA).

Veja http://en.wikipedia.org/wiki/EDIF para mais informações e links.


fonte
11
Essa é provavelmente a melhor resposta de longe à pergunta original: um formato netlist neutro do fornecedor. Infelizmente, porém, é pouco suportado.
21710 Kevin Vermeer
4
E, claro, ninguém usa. Bem-vindo ao mundo dos pacotes EDA de alto preço ...
Connor Wolf
É apoiado pelo uso Pulsonix software I, bem como OrCAD, almofadas, CADSTAR, etc.
Leon Heller
6

Eu não vi nenhum padrão. Cada pacote implementa seu próprio formato. Felizmente, o formato é muito simples, facilitando a conversão entre pacotes.

Por exemplo, a netlist do gEDA consiste em registros no seguinte formato -

NETNAME REFDES-PIN REFDES-PIN ...

aqui está uma amostra de um dos meus quadros -

unnamed_net39 J28-3 U11-12

unnamed_net38 J28-1 J16-2 J27-1

GND J16-3 C16-2 J15-3 C15-2

Você pode facilmente ler esse arquivo netlist em uma estrutura de dados e traduzi-lo para um formato diferente.

jluciani
fonte
4

Se eles são salvos no formato ASCII, é muito fácil convertê-los, eu posso importar a maioria dos formatos no software Pulsonix PCB que eu uso. O único estranho é a águia; Os esquemas Eagle, PCBs e bibliotecas precisam ser convertidos por um ULP especialmente escrito.

Leon Heller
fonte
4

Também não vi um formato padrão em nenhum lugar. No entanto, como outros já mencionaram, os formatos netlist são muito simples e geralmente baseados em texto e, portanto, triviais para traduzir entre várias formas.

Uma netlist é simplesmente uma lista de redes (fios), com uma lista de portas (pinos de componentes) que são anexadas a cada fio. Embora os detalhes sejam diferentes, é tudo uma variação do mesmo tema. No passado, escrevi vários scripts em Perl e Python que manipulam facilmente netlists. De fato, os arquivos netlist são um ótimo exercício no processamento de texto no nível iniciante.

Eli Bendersky
fonte
2

Honestamente, se você realmente deseja um formato netlist que, na prática, funcione com praticamente qualquer ferramenta, você tem apenas duas opções sérias:

  • VHDL
  • Verilog

Sim, essas são linguagens de descrição de hardware completas e usá-las como um formato netlist pode ser considerado um exagero. No entanto, é muito fácil e, se uma ferramenta exibir VHDL ou Verilog estrutural simples, você pode ter certeza de que poderá puxar o design de volta para praticamente qualquer outra ferramenta EDA.

Como um benefício colateral, a maioria dos outros formatos de netlist (por exemplo, EDIF) precisa ter um conjunto de primitivas definidas externamente - algo específico do fornecedor ou algo como o LPM. Com VHDL e Verilog, as folhas de nível mais baixo (primitivas) podem ser exatamente o que você deseja (por exemplo, código RTL sintetizável, modelos de simulação, caixas pretas, etc.).

No entanto, se você precisar absolutamente de um formato netlist real, eu recomendo a sugestão de usar o formato gnetlist, que pode ser convertido para muitos outros formatos.

wjl
fonte