Index: index.html =================================================================== --- index.html (revision 12332) +++ index.html (revision 12333) @@ -125,6 +125,7 @@ Pcb-rnd supports a small number of basic drawing objects, from which complex objects can be build. The following figure demonstrates all basic objects:

+ [Arc, Line, Polygon, Pin, Via]

Objects have flags that control their behavior. The following flags are common @@ -396,8 +397,101 @@ EDGE2 indicates that the second point is closer to the edge. For pins, indicates that the pin is closer to a horizontal edge and thus pinout text should be vertical. (Padr.Point2 is closer to outside edge also pinout text for pins is vertical) -

2.4.9. Rat line Objects

+

2.4.9. Subcircuits

+ +

2.4.10. Pad stacks

+A pad stack is a generic pin/pad/via object that may contain any combination +of: +

+

+Pad stacks are flexible enough to cover the majority of the simple pin/pad/via +cases. In a subcircuit, marked as a terminal, a pad stack is called a +light terminal. This concept exist in parallel to the heavy terminal +concept: a heavy terminal consists of multiple objects (e.g. polygons, lines, +arcs, pad stacks), all tagged to the same terminal. When the padstack model +is not capable to describe a complicated pin or pad, the user should chose the +heavy terminal model. A typical example is the center pad of a QFN footprint +with vias for heat transfer and a specific pattern of paste. The strength +of a pad stack is it's relative simplicity and that all objects on the vertical +stack are bundled together; the strength of the heavy model is its flexibility: +anything that can be drawn on board can be turned into a heavy terminal. +

+The optional hole of the padstack is useful if the padstack is to be used +as a mounting hole, via or pin. The span of the hole is described by two +itnegers: how far the hole starts and ends from the top or bottom copper +layer group, counted in copper layer groups. A simple all-way-thru hole's span +is 0;0, which means it starts at the top copper group and ends on the bottom +copper group. The plating of the hole is a boolean and is independent of any +other parameter. +

+For each layer group type, the user may specify zero or one pad shape. + +
Pad stack layer group types +
name remarks +
top silk   +
top paste   +
top mask the first negative layer is used +
top copper   +
intern copper the same pad will be used on all internal copper groups +
bottom copper   +
bottom mask the first negative layer is used +
bottom paste   +
bottom silk   +
+

+ +
Pad shapes +
name description +
fillcircle x;y offset of the center, diameter +
line round or square cap, from x1;y1 to x2;y2 with the specified thickness +
simple-polygon a simple polygon has a single outer contour and no holes +
+

+The pad stack has an origin, a 0;0 point where it is grabbed. If the pad stack +features a hole, the origin is the center point of the hole. Pad shapes are +all defined in a way that they do not have to be concentric with the hole or +the origin. This allows assymetric pads. +

+In case of blind/buried vias, the internal copper layer pads are applied +only on layers with hole span. However, this does not apply to top/bottom +shapes, those are always explicit. This means it is possible to use a pad stack +as a pad-pair of an board edge connector, having a copper pad on the top +layer and one on the bottom layer, even without having a (plated) hole in between. +The code will assume connection between the pads only if the padstack has a +plated hole. +

+ +
Typical pad stack examples +
name description +
rectangular smd pad no hole; square cap line or poly on top copper, top mask and top paste +
simple pin or via plated hole and the same filled circle on all copper layers; if pin, a slightly bigger circle on the mask layers +
octagon pin or via plated hole and the same simple polygon (octagon shaped) on all copper layers; if pin, a slightly bigger poly on the mask layers +
'oblong' pin plated hole, a short round cap line segment on the bottom copper and mask layers, filled circle on all other copper layers and on the top mask layer +
blind via plated hole and the same filled circle on internal and top copper layers - nothing on the bottom copper layer +
power jack with slot n/a - can not be done with pad stack as the plated slots for the pins can not be represented as plated round holes - use heavy terminals instead +
+

+Pad stacks prototypes are stored only once per pcb_data_t (only once per +board for vias or per each subcircuit for terminals). The actual pad stacks +placed on the board (or in subcircuit) are called pad stack references. +A pad stack reference has its own x;y coordinate (within the board or subcircuit) +and a reference to the prototype. However, the pad stack reference does not +encode transformations such as rotation or mirror. This means if a TQFP chip +has 48 pads along 4 sides, in the simplest setup there will be 2 pad stack +prototypes (a vertical and a horizontal) and 24+24 pad stack references using +them. Pcb-rnd keeps track of pad stacks prototypes which are created from +an existing prototype by rotation or mirroring; this lets the user modify +the pad stack prototype in a way that all other rotated/mirrored prototypes +are modified as well. + + +

2.4.11. Rat line Objects

+

A rat line represents a logical connection that is not yet realized in copper. It requires a loaded netlist for generation, and relies on calculations for any existing coppre layers that connect terminals on the pcb-rnd board. Rat @@ -404,7 +498,7 @@ connections are straight line connections between the terminals of any two drawing primitives that aren't yet connected -

2.4.10. Netlists

+

2.4.12. Netlists

A netlist is a list of named logical networks. Each network is a list of netlist terminals that should be connected. A netlist terminal is a pair