pcb-rnd knowledge pool
param_qf by Tibor 'Igor2' Palinkas on 2015-08-20
Tags: insight, parametric, footprint, qf, qfn, qfp, tqfp, lqfp
Abstract: Design decisions behind the parametric footprint qf() that is able to generate are qfn(), tqfp(), lqfp().
The generic set of rules for these footprints is:
- there is a virtual rectangle that forms rows of pads
- pads are evenly spaced among the edges of that rectangle
- pin numbering is counter-clockwise
- the body of the part may be inside of the rectangle or may extend over the pads
low level flexibility vs. high level comfort
qf() currently has 14 arguments. It is flexible enough to generate qfn, tqfp, lqfp, and anything similar I've seen in the package datasheet of a major vendor. However, it is not straight forward to convert datasheet tables into qf() parameters.
On the other hand, in practice we need qfn() and tqfp(), which are special cases of qf(). To nail the common use cases, qfn() and tqfp() narrows down the number of parameters to 3..4. Even better, these parameters are exactly those that are in the name of a typical QFN or TQFP footprint or in the first few lines of the dimensions table. I call these scripts frontends to qf().
This makes the common footprints very easy to produce using frontends while leaves a (bit more complicated) plan B, qf(), for special cases.