Share library/extracted for schematic and PCB review.
PCB AI skips a second PDF exam (pintable cache, pdf_path=None) and the report gains a PCB exam section plus power-trace, thermal, via, Kelvin, and GND-stitch checks grounded in board geometry and extracted specs.
This commit is contained in:
@@ -8,6 +8,13 @@ from collections import Counter
|
||||
from backend.periscopex.derating import build_derating_table
|
||||
from backend.periscopex.models import DesignGraph, Finding, LayoutGraph
|
||||
from backend.periscopex.pcb_net_match import check_pcb_net_match
|
||||
from backend.periscopex.pcb_power_thermal import (
|
||||
check_pcb_gnd_stitch,
|
||||
check_pcb_kelvin,
|
||||
check_pcb_power_traces,
|
||||
check_pcb_thermal_copper,
|
||||
check_pcb_via_current,
|
||||
)
|
||||
from backend.periscopex.placement_check import check_placement
|
||||
from backend.periscopex.si_check import check_si
|
||||
|
||||
@@ -86,6 +93,10 @@ def merge_schema_pcb_reports(
|
||||
if st in summary:
|
||||
summary[st] = summary.get(st, 0) + 1
|
||||
out["summary"] = summary
|
||||
schema_nr = list((schema or {}).get("not_reviewed") or [])
|
||||
pcb_nr = list((pcb or {}).get("not_reviewed") or [])
|
||||
if schema_nr or pcb_nr:
|
||||
out["not_reviewed"] = schema_nr + pcb_nr
|
||||
return out
|
||||
|
||||
|
||||
@@ -101,6 +112,11 @@ def run_pcb_checks(
|
||||
("placement_check", lambda: check_placement(graph, constraints_map, layout)),
|
||||
("si_check", lambda: check_si(graph, constraints_map, layout)),
|
||||
("pcb_derating", lambda: check_pcb_derating(graph)),
|
||||
("pcb_power_traces", lambda: check_pcb_power_traces(graph, constraints_map, layout)),
|
||||
("pcb_via_current", lambda: check_pcb_via_current(graph, constraints_map, layout)),
|
||||
("pcb_thermal_copper", lambda: check_pcb_thermal_copper(graph, constraints_map, layout)),
|
||||
("pcb_kelvin", lambda: check_pcb_kelvin(graph, constraints_map)),
|
||||
("pcb_gnd_stitch", lambda: check_pcb_gnd_stitch(graph, layout)),
|
||||
):
|
||||
try:
|
||||
out.extend(fn())
|
||||
|
||||
Reference in New Issue
Block a user