# Electric (software)

O sistema de projetos Electric VLSI é um software de projeto de circuitos integrados escrito no início dos anos 1980 por Steven M. Rubin.. É utilizado para desenhar esquemas elétricos e para fazer o leiaute de circuitos integrados. Também pode gerenciar linguagens de descrição de hardware, como VHDL e Verilog.
O electric é atualmente parte do Projeto GNU e tem sido desenvolvido na linguagem Java e distribuído como software livre e de código aberto, sujeito aos requisitos da GNU General Public License (GPL), versão 2 ou posterior.

## Estilo de projeto

O Electric possui uma maneira própria de representar o leiaute de circuitos integrados.
O sistema considera circuitos integrados a serem compostos de nós e de arcos. Os nós são elementos do circuito, tais como transistores e contatos. Os arcos conectam os nós.
Esse estilo de projeto é bem diferente dos sistemas de leiaute de circuitos integrados típicos, tais como o Magic e o Cadence, que fazem o leiaute do circuito integrado ao manipular polígonos em camadas diferentes da pastilha.
Esse estilo de projeto torna possível para o projetista rodar Layout versus Esquemático (LVS) em leiautes que ainda não estão limpos pela regra de verificação. Isso pode ser útil durante o processo de desenho. Ele também torna possível para a ferramenta de projeto importar o comprimento dos fios de uma disposição para um esquemático mesmo se o leiaute ainda não está limpo pelo DRC. Finalmente, pelo fato de os leiautes serem armazenados internamente como um grafo (ao invés de uma "pintura"), a verificação LVS é rápida, frequentemente rodando em menos de um segundo em projetos de chip completos (tais como o chip Marina). A capacidade de rodar o LVS quase instantaneamente em projetos grandes tem um impacto na facilidade de projetar.
Em geral, pessoas sem experiência prévia no leiaute de circuitos integrados se sentem confortáveis com o estilo do Electric. Aqueles que têm experiência em leiautes de circuitos integrados em outros sistemas podem se sentir diferentemente.
Na visualização de nós e de arcos de um circuito é possível adicionar restrições de leiaute aos arcos. Existe apenas um pequeno conjunto dessas restrições, mas com atribuições cuidadosas, o circuito pode ser programado para permanecer corretamente conectado quando mudanças físicas são feitas.

## Ferramentas e tecnologias

O Electric incorpora muitas ferramentas de síntese e de análise:
* Design rule checking dois verificadores embutidos e duas interfaces para ferramentas industriais.
* Electrical Rule Checking um verificador de Bem/Substrato e um verificador de efeito antena.
* Simulação dois simuladores e interfaces embutidos para mais de uma dúzia de ferramentas industriais (Spice, Verilog, etc.)
* Roteamento cinco roteadores diferentes para vários propósitos especiais
* Geradores um gerador de matriz lógica programável generator, um gerador de célula, um gerador de quadro de blocos e um gerador de memória ROM.
* Esforço lógico uma ferramenta para analisar o esforço lógico de um circuito e redimensionar as portas.
* LVS uma ferramenta que compara duas representações quaisquer de um circuito.
* E/S a capacidade de ler e de escrever descrição de circuitos em muitos formatos, incluindo CIF, GDS, EDIF, DXF e VHDL. Ele também pode interagir com outros sistemas, tais como EAGLE, Pads, ECAD Inc. e Sue.
O Electric suporta diferentes tecnologias de projeto, como por exemplo:
* CMOS
* NMOS
* Bipolar
* Esquematismos
* Ilustrações

## História

O Electric foi escrito na linguagem C no início dos anos 1980 (o primeiro memorando interno mencionando o Electric é datado de 19 de Novembro de 1982). Por algum tempo depois, o programa foi distribuído sem custos para universidades e para institutos de pesquisa e encontrou utilização internacional.
Em meados dos anos 1980, o Electric foi vendido comercialmente pela Applicon, sob o nome "Bravo3VLSI".
Em 1988, a Electric Editor Incorporated foi fundada e vendeu o sistema comercialmente. A empresa liberou o código fonte através da Free Software Foundation em 1998.
Em 2000, a Static Free Software foi criada para gerenciar a distribuição do Electric.
Em Setembro de 2003, a versão em C do Electric foi abandonada e o sistema foi traduzido para a linguagem Java. O trabalho foi completado em Junho de 2005. Embora o código em C ainda esteja disponível, ele não é mais desenvolvido ou suportado. O novo e melhorado código em Java permanece livre para todos os usuários.