Concepts

ERC contre DRC : quelle différence en conception PCB ?

Découvrez comment le contrôle de règles électriques et le contrôle de règles de conception détectent des erreurs différentes sur le schéma et le PCB, comment lancer les deux dans KiCad, et ce qu'ils ne peuvent pas prouver.

Publié le Mis à jour le

L’ERC vérifie l’intention électrique dans le schéma

L’Electrical Rule Check (ERC) raisonne sur les symboles, les broches et les nets du schéma. Une broche de symbole possède un type électrique, entrée, sortie, bidirectionnelle, passive, entrée d’alimentation, sortie d’alimentation, collecteur ouvert, et ainsi de suite. L’ERC compare les types connectés sur un net et signale les combinaisons qui semblent impossibles ou incomplètes.

Les constats ERC typiques incluent :

  • une broche d’entrée d’alimentation sur un net sans source d’alimentation déclarée ;
  • deux sorties ordinaires connectées entre elles ;
  • une entrée ou une broche d’alimentation laissée non connectée ;
  • un marqueur de non-connexion posé sur une broche pourtant câblée ;
  • des labels de net ou des connexions hiérarchiques incohérents.

L’ERC ne sait pas si une résistance de pull-up I2C a la bonne valeur, si le brochage d’un connecteur correspond à sa fiche technique, ou si 3,3 V fournit assez de courant pour une salve radio. Il vérifie l’intention encodée dans les symboles. Un symbole personnalisé mal défini peut donc laisser passer un circuit erroné ou noyer un circuit correct sous de faux avertissements.

Dans KiCad, lancez Inspect → Electrical Rules Checker dans l’éditeur de schéma. Corrigez les causes racines plutôt que de poser des marqueurs No ERC jusqu’à faire taire le rapport. Si un connecteur d’alimentation passif alimente légitimement un rail, un PWR_FLAG indique à l’ERC que le net est piloté, il ne génère pas d’énergie et ne doit pas servir à masquer un rail réellement non alimenté.

Le DRC vérifie l’implémentation physique sur le PCB

Le Design Rule Check (DRC) raisonne sur le cuivre, les couches, les empreintes, les perçages, les bords de carte et les règles. Il évalue la géométrie et la connectivité de la carte par rapport à la configuration de la carte, aux classes de net et aux contraintes personnalisées.

Les constats DRC typiques incluent :

  • un dégagement de cuivre inférieur au minimum configuré ;
  • une piste plus étroite que ne l’exige sa classe de net ;
  • une connexion non routée ou une piste en cul-de-sac ;
  • des violations d’anneau annulaire, de via ou de perçage ;
  • de la sérigraphie sur des ouvertures de masque de soudure ;
  • des courtyards qui se chevauchent ;
  • du cuivre trop proche du bord de carte ;
  • une paire différentielle qui viole les règles de largeur, d’écartement ou de longueur non couplée.

Le DRC ne peut pas détecter qu’une empreinte USB-C est en miroir si ses pads suivent fidèlement la netlist du schéma. Il ne peut pas déterminer la capacité de courant réelle d’une piste sans un stack-up, du cuivre, une température et des règles d’entrée corrects. Un rapport vert signifie « la carte satisfait les règles encodées », pas « la carte est apte à la fabrication ». Le guide des violations DRC KiCad explique comment interpréter chaque type de rapport.

La parité schéma-PCB relie les deux vues

L’ERC peut passer sur un schéma mis à jour pendant que le DRC passe sur un ancien PCB. L’étape manquante est la parité : les symboles, empreintes, mappings de broches et nets utilisés par la carte sont-ils cohérents avec le schéma ?

Dans KiCad, utilisez Tools → Update PCB from Schematic après avoir accepté des changements de schéma. Lancez ensuite le DRC avec la parité de schéma activée. Cela détecte des classes de problèmes de conception obsolète, comme un net renommé uniquement dans le schéma ou une association d’empreinte modifiée après le placement. Consultez garder le schéma et le PCB synchronisés pour un flux de travail reproductible.

La parité ne prouve toujours pas que la broche 4 d’un symbole personnalisé représente la même fonction physique que le pad 4 de l’empreinte. Cela relève d’un audit de fiche technique.

Lancez les deux depuis la ligne de commande

KiCad 9 peut produire des rapports et faire échouer un job CI en cas de violations :

mkdir -p build/reports

kicad-cli sch erc \
  --exit-code-violations \
  --output build/reports/erc.rpt \
  hardware/controller.kicad_sch

kicad-cli pcb drc \
  --exit-code-violations \
  --schematic-parity \
  --output build/reports/drc.rpt \
  hardware/controller.kicad_pcb

Exécutez kicad-cli sch erc --help et kicad-cli pcb drc --help sur la version installée avant de copier des options dans la CI. Fixez cette version de KiCad pour que le moteur de règles et le format des rapports ne changent pas silencieusement. Le guide de l’ERC en ligne de commande détaille les codes de sortie et l’automatisation.

Conservez les rapports générés comme artefacts de build liés au commit du design. Un rapport sans sa révision exacte de schéma et de PCB est une preuve faible, car les fichiers ont pu changer immédiatement après.

Triez les violations sans vous entraîner à les ignorer

Utilisez la même séquence pour chaque constat :

  1. Localisez-le et inspectez le circuit ou la géométrie concernés.
  2. Décidez si c’est le design, les données de bibliothèque ou la règle qui est en cause.
  3. Corrigez la cause racine.
  4. S’il s’agit d’une exception intentionnelle, ajoutez l’exclusion la plus étroite possible avec une raison écrite.
  5. Relancez le contrôle complet.

N’assouplissez pas globalement un dégagement parce qu’un seul connecteur a des pads à pas fin. Utilisez une règle spécifique à l’empreinte ou à la zone, justifiée par la capacité du fabricant. Ne marquez pas des broches inutilisées avec No ERC juste pour réduire le compteur, utilisez des marqueurs de non-connexion explicites quand la broche est intentionnellement inutilisée.

Revoyez les exclusions à chaque livraison. Une ancienne exclusion peut masquer une nouvelle erreur après le déplacement d’une empreinte ou le changement d’un net. Le nombre d’erreurs, d’avertissements et d’exclusions doit apparaître dans le manifeste de livraison.

Sachez ce qu’aucun des deux contrôles ne détecte

L’ERC et le DRC ne peuvent pas vérifier entièrement :

  • la référence fabricant, la variante de boîtier ou le cycle de vie ;
  • l’orientation d’accouplement d’un connecteur et le brochage du câble ;
  • la stabilité analogique, l’adaptation RF ou la performance d’antenne ;
  • les transitoires du régulateur et les limites thermiques ;
  • les collisions avec le boîtier quand les modèles sont absents ou inexacts ;
  • les limites de process de l’assembleur non codées en règles ;
  • si le produit répond à ses exigences fonctionnelles.

Ajoutez une revue de schéma, un audit de broches par fiche technique, une validation de BOM, une revue 3D/mécanique, une inspection des fichiers de fabrication et un plan de mise en route. La checklist DFM avant commande prend le relais là où s’arrêtent les règles de conception automatisées.

La distinction est simple : l’ERC vérifie le modèle électrique logique, le DRC vérifie le modèle physique de la carte. Un PCB prêt à livrer a besoin des deux modèles, de leur parité, de règles précises et de preuves humaines pour les propriétés que ces modèles ne représentent pas.