jsl/landpatterns/BGA/planner¶
Package name: jsl/landpatterns/BGA/planner
Summary¶
Data Types¶
BGA-PadPlanner¶
Default BGA Pad Planner
Constructors¶
Function | Description |
---|---|
BGA-PadPlanner | Constructor for defstruct BGA-PadPlanner |
EquilateralTriangle-Matrix-Planner¶
Equilateral Triangle Matrix - Similar to Staggered but all pads are equidistant.
Constructors¶
Function | Description |
---|---|
EquilateralTriangle-Matrix-Planner (+ 1) | Constructor for defstruct EquilateralTriangle-Matrix-Planner |
Full-Matrix-Planner¶
Full Matrix - All Pads in the grid are active
Constructors¶
Function | Description |
---|---|
Full-Matrix-Planner (+ 1) | Constructor for defstruct Full-Matrix-Planner |
Perimeter-Matrix-Planner¶
Perimeter Matrix - Full matrix with an island of pads in-active.
Constructors¶
Function | Description |
---|---|
Perimeter-Matrix-Planner (+ 1) | Constructor for defstruct Perimeter-Matrix-Planner |
Staggered-Matrix-Planner¶
Staggered Matrix - Every other pad is in-active.
Constructors¶
Function | Description |
---|---|
Staggered-Matrix-Planner (+ 1) | Constructor for defstruct Staggered-Matrix-Planner |
Corner-Cut-Matrix-Planner¶
Corner Cut Matrix - A triangle of pads in each corner are inactive
Constructors¶
Function | Description |
---|---|
Corner-Cut-Matrix-Planner (+ 1) | Constructor for defstruct Corner-Cut-Matrix-Planner |
ThermallyEnhanced-Matrix-Planner¶
Thermally Enhanced Matrix
Constructors¶
Function | Description |
---|---|
ThermallyEnhanced-Matrix-Planner (+ 1) | Constructor for defstruct ThermallyEnhanced-Matrix-Planner |
General Definitions¶
Function | Description |
---|---|
BGA-Pad-Shaper | Default Pad Shaper for BGA packages. |
Definitions¶
BGA-PadPlanner¶
Default BGA Pad Planner
public defstruct BGA-PadPlanner <: PadPlanner & GridPlanner :
pad-config: PadConfig
pad-config: PadConfig
- Defines the features of each individual BGA pad. This defines the shape and parameters for the copper, soldermask opening, paste application, etc.
This pad planner will create circular pads for each BGA
ball location. The user can use the pad-config
to
modify the construction of each pad including the soldermask
and pastemask openings.
This type is derived from two parent implementations: 1. PadPlanner which manages selection of which pads to populate and how they should be constructed 2. GridPlanner which manages the placement of the created pads at particular grid locations.
Constructors¶
BGA-PadPlanner¶
Constructor for defstruct BGA-PadPlanner
public defn BGA-PadPlanner (pad-config:PadConfig = ?, pose:Pose = ?)
EquilateralTriangle-Matrix-Planner¶
Equilateral Triangle Matrix - Similar to Staggered but all pads are equidistant.
public defstruct EquilateralTriangle-Matrix-Planner <: Staggered-Matrix-Planner :
tri-pitch: Double
tri-pitch: Double
- Equilateral Distance between triangle points All pads in this planner are equidistant apart and this parameter sets that distance.
TODO - Diagram
Constructors¶
EquilateralTriangle-Matrix-Planner¶
Constructor for defstruct EquilateralTriangle-Matrix-Planner
public defn EquilateralTriangle-Matrix-Planner (phase:StaggerPhase, pad-config:PadConfig = ?, rows:Int, columns:Int, pose:Pose = ?, tri-pitch:Double)
EquilateralTriangle-Matrix-Planner¶
Constructor for defstruct EquilateralTriangle-Matrix-Planner
public defn EquilateralTriangle-Matrix-Planner ( -- phase:StaggerPhase = ?, pad-config:PadConfig = ?, rows:Int, columns:Int, pose:Pose = ?, tri-pitch:Double)
Full-Matrix-Planner¶
Full Matrix - All Pads in the grid are active
public defstruct Full-Matrix-Planner <: BGA-PadPlanner :
Constructors¶
Full-Matrix-Planner¶
Constructor for defstruct Full-Matrix-Planner
public defn Full-Matrix-Planner (pad-config:PadConfig, rows:Int, columns:Int, pitch:Double|Dims, pose:Pose = ?)
Full-Matrix-Planner¶
Constructor for defstruct Full-Matrix-Planner
public defn Full-Matrix-Planner ( -- pad-config:PadConfig = ?, rows:Int, columns:Int, pitch:Double|Dims, pose:Pose = ?)
Perimeter-Matrix-Planner¶
Perimeter Matrix - Full matrix with an island of pads in-active.
public defstruct Perimeter-Matrix-Planner <: BGA-PadPlanner :
inactive: PadIsland|Tuple<PadIsland>
inactive: PadIsland|Tuple<PadIsland>
- Island of Pads that will be marked inactive. Typically, this will be an interior region near the center of the device. This argument can be either a singlePadIsland
or aTuple<PadIsland>
. In theTuple
case, the union of allPadIsland
s in the tuple forms the inactive region.
TODO - Diagram
Constructors¶
Perimeter-Matrix-Planner¶
Constructor for defstruct Perimeter-Matrix-Planner
public defn Perimeter-Matrix-Planner (inactive:PadIsland|Tuple<PadIsland>, pad-config:PadConfig, rows:Int, columns:Int, pitch:Double|Dims, pose:Pose = ?)
Perimeter-Matrix-Planner¶
Constructor for defstruct Perimeter-Matrix-Planner
public defn Perimeter-Matrix-Planner ( -- inactive:PadIsland|Tuple<PadIsland>, pad-config:PadConfig = ?, rows:Int, columns:Int, pitch:Double|Dims, pose:Pose = ?)
Staggered-Matrix-Planner¶
Staggered Matrix - Every other pad is in-active.
public defstruct Staggered-Matrix-Planner <: BGA-PadPlanner :
phase: StaggerPhase
phase: StaggerPhase
- Phase indicates whether the first row pad 0 is empty or populated. By default this function usesEven-Phase
TODO - Diagram here
This pad planner assumes that the grid is structured as
Constructors¶
Staggered-Matrix-Planner¶
Constructor for defstruct Staggered-Matrix-Planner
public defn Staggered-Matrix-Planner (phase:StaggerPhase, pad-config:PadConfig = ?, rows:Int, columns:Int, pitch:Double|Dims, pose:Pose = ?)
Staggered-Matrix-Planner¶
Constructor for defstruct Staggered-Matrix-Planner
public defn Staggered-Matrix-Planner ( -- phase:StaggerPhase = ?, pad-config:PadConfig = ?, rows:Int, columns:Int, pitch:Double|Dims, pose:Pose = ?)
Corner-Cut-Matrix-Planner¶
Corner Cut Matrix - A triangle of pads in each corner are inactive
public defstruct Corner-Cut-Matrix-Planner <: BGA-PadPlanner :
corner-cut: Int
corner-cut: Int
- Width of the triangular region in each corner that will be inactive
Example: corner-cut = 2
X | X | O ... O | X | X
X | O | O ... O | O | X
O | O | O ... O | O | O
... ... ...
O | O | O ... O | O | O
X | O | O ... O | O | X
X | X | O ... O | X | X
Constructors¶
Corner-Cut-Matrix-Planner¶
Constructor for defstruct Corner-Cut-Matrix-Planner
public defn Corner-Cut-Matrix-Planner (corner-cut:Int, pad-config:PadConfig, rows:Int, columns:Int, pitch:Double|Dims, pose:Pose = ?)
Corner-Cut-Matrix-Planner¶
Constructor for defstruct Corner-Cut-Matrix-Planner
public defn Corner-Cut-Matrix-Planner ( -- corner-cut:Int, pad-config:PadConfig = ?, rows:Int, columns:Int, pitch:Double|Dims, pose:Pose = ?)
ThermallyEnhanced-Matrix-Planner¶
Thermally Enhanced Matrix
public defstruct ThermallyEnhanced-Matrix-Planner <: Perimeter-Matrix-Planner :
active: PadIsland|Tuple<PadIsland>
-
active: PadIsland|Tuple<PadIsland>
- Island of Pads that will be marked active. This island will override theinactive
island. This region is typically an interior region near the center of the device and enclosed by theinactive
island.This argument can be either a single
PadIsland
or aTuple<PadIsland>
. In theTuple
case, the union of allPadIsland
s in the tuple forms the active center region.
TODO - Diagram
Constructors¶
ThermallyEnhanced-Matrix-Planner¶
Constructor for defstruct ThermallyEnhanced-Matrix-Planner
public defn ThermallyEnhanced-Matrix-Planner (inactive:PadIsland|Tuple<PadIsland>, active:PadIsland|Tuple<PadIsland>, pad-config:PadConfig, rows:Int, columns:Int, pitch:Double|Dims, pose:Pose = ?)
ThermallyEnhanced-Matrix-Planner¶
Constructor for defstruct ThermallyEnhanced-Matrix-Planner
public defn ThermallyEnhanced-Matrix-Planner ( -- inactive:PadIsland|Tuple<PadIsland>, active:PadIsland|Tuple<PadIsland>, pad-config:PadConfig = ?, rows:Int, columns:Int, pitch:Double|Dims, pose:Pose = ?)
General Definitions¶
BGA-Pad-Shaper¶
Default Pad Shaper for BGA packages.
public defn BGA-Pad-Shaper (s:Dims) -> Shape
- Returns
Shape
This accepts a Dims
object and will convert
it to a Circle
using the x
dimension of the Dims
.
Related Packages¶
Forwarded by packages: jsl/landpatterns/BGA, jsl/landpatterns/generators, jsl/landpatterns