How to Use Blind and Buried Vias in PCB Design
In PCB design, use
blind vias to connect outer layers to inner layers without passing through the entire board, and buried vias to connect only inner layers, hidden from outer layers. These vias help save space and improve signal integrity by reducing unnecessary layer crossings.Syntax
In PCB design software, defining blind and buried vias involves specifying the start and end layers of the via. The syntax or settings typically include:
- Start Layer: The layer where the via begins.
- End Layer: The layer where the via ends.
- Via Type: Choose between
Through,Blind, orBuried.
For example, a blind via might start at the top layer and end at an inner layer, while a buried via starts and ends on inner layers only.
javascript
const ViaType = { THROUGH: 'Through', BLIND: 'Blind', BURIED: 'Buried' }; function createVia(startLayer, endLayer) { if (startLayer === 'Top' && endLayer !== 'Bottom') { return { type: ViaType.BLIND, start: startLayer, end: endLayer }; } else if (startLayer !== 'Top' && endLayer !== 'Bottom') { return { type: ViaType.BURIED, start: startLayer, end: endLayer }; } else { return { type: ViaType.THROUGH, start: startLayer, end: endLayer }; } }
Example
This example shows how to define blind and buried vias in a PCB design script or software API. It demonstrates creating a blind via from the top layer to an inner layer, and a buried via between two inner layers.
javascript
const ViaType = { THROUGH: 'Through', BLIND: 'Blind', BURIED: 'Buried' }; function createVia(startLayer, endLayer) { if (startLayer === 'Top' && endLayer !== 'Bottom') { return { type: ViaType.BLIND, start: startLayer, end: endLayer }; } else if (startLayer !== 'Top' && endLayer !== 'Bottom') { return { type: ViaType.BURIED, start: startLayer, end: endLayer }; } else { return { type: ViaType.THROUGH, start: startLayer, end: endLayer }; } } const blindVia = createVia('Top', 'Inner2'); const buriedVia = createVia('Inner1', 'Inner3'); const throughVia = createVia('Top', 'Bottom'); console.log(blindVia); console.log(buriedVia); console.log(throughVia);
Output
{"type":"Blind","start":"Top","end":"Inner2"}
{"type":"Buried","start":"Inner1","end":"Inner3"}
{"type":"Through","start":"Top","end":"Bottom"}
Common Pitfalls
Common mistakes when using blind and buried vias include:
- Using blind vias that do not reach the intended inner layer, causing open circuits.
- Confusing buried vias with blind vias, leading to incorrect layer connections.
- Ignoring manufacturing constraints like minimum drill sizes and layer stackup compatibility.
- Overusing blind and buried vias, which can increase cost and complexity.
Always verify via definitions with your PCB manufacturer and use design rules to avoid errors.
javascript
/* Wrong: Blind via ending at bottom layer (should be through via) */ const wrongVia = createVia('Top', 'Bottom'); // Incorrect for blind via /* Correct: Through via for top to bottom */ const correctVia = createVia('Top', 'Bottom');
Quick Reference
| Via Type | Start Layer | End Layer | Description |
|---|---|---|---|
| Through Via | Top | Bottom | Passes through all layers of the PCB. |
| Blind Via | Outer Layer (Top or Bottom) | Inner Layer | Connects outer layer to one or more inner layers, not passing through entire board. |
| Buried Via | Inner Layer | Inner Layer | Connects only inner layers, hidden from outer layers. |
Key Takeaways
Use blind vias to connect outer layers to inner layers without drilling through the entire PCB.
Use buried vias to connect only inner layers, keeping connections hidden from outer layers.
Always check manufacturing capabilities and design rules before using blind or buried vias.
Avoid overusing these vias to reduce cost and complexity in PCB fabrication.
Clearly define start and end layers to ensure correct via type and function.