[Xcircuit-dev] xcircuit netlist -> pcb
Brought to you by:
rtedwards
From: Bryce D. <br...@tl...> - 2001-10-18 19:09:20
|
Between xcircuit and pcb, we are really close to having a schematic+layout flow for circuit boards. With some hacking, I've been able to make it work for a sample schematic. Pcb's netlist reader is very picky about pin numbers and node names. It refers to all pins by number, and ignores lowercase letters in some circumstances. All the transistor models in generic and analoglib2 have letter-named pins, such as B for base and E for emitter, so I had to rename these pins to 1,2,3 to make the netlist valid. You might want the pcb netlister to print a warning about letter-named pins, since pcb itself will choke when it tries to read them in. This is really a pcb limitation (I can't believe they can't handle pin names) but that's how it is at the moment. For reference, here's what the pcb manual says about the netlist format that it expects. "The netlist received by pcb must have this simple text form: netname NAME-PINNUM NAME2-PINNUM2 NAME3-PINNUM3 ... [\] where "netname" is the name of the net (currently its value is ignored but it must be present nonetheless), NAME is the layout-name given to an element, and PINNUM is the (usually numeric) pin number of the element that is part of the net (see section Elements for details on pin numbering). Spaces or tabs separate the fields. If the line ends with a "\" the net continues on the next line and the "\" is treated exactly as if it were a space. If the NAME ends with a lower-case letter, all lower-case letters are stripped from end of the NAME to determine the matching name-on-board name. For example: Data U1-3 U2abc-4 FLOP1a-7 Uabc3-A9 would specifiy that pin 3 of U1 be connected to pin 4 of U2, to pin 7 of FLOP1 and to pin A9 of Uabc3." Another issue that's minor but confusing is that it's possible to get two Vdd nodes in the netlist. Draw a Vdd symbol and also name a pin Vdd in the diagram. If you forget to connect them, the netlist writer prints one Vdd from the "Vdd module" and a different one for the pin called Vdd. Thanks, Bryce |