This website requires JavaScript.
Bons Plans Télécharger l’application
Expédier à
Blog

Simulation SPICE non convergente : résolution matricielle, erreurs de convergence et méthodes d'optimisation

Publié initialement Jul 28, 2026, mis à jour Jul 28, 2026

11 min

Table des matières
  • I. Algorithme fondamental derrière la netlist : l'analyse nodale modifiée (MNA)
  • II. Causes de la non-convergence des itérations non linéaires et méthodes d'ajustement
  • III. Erreurs courantes dans la simulation transitoire : singularités mathématiques causées par des composants idéaux
  • De la simulation SPICE à la validation sur carte réelle avec JLCPCB
  • Conclusion : Comprendre correctement la nature d'approximation mathématique de la simulation

Lors de la simulation de circuits dans le développement matériel, de nombreux ingénieurs rencontrent des situations où la simulation reste bloquée à 99,9 % de progression et génère une erreur. Les messages courants incluent Singular Matrix (matrice singulière), Convergence Failed (échec de convergence) et Time Step Too Small (pas de temps trop petit).

L'interface des logiciels EDA modernes est très intuitive : il suffit de glisser-déposer des composants et de connecter les fils pour effectuer une simulation de circuit. Cependant, cela peut facilement amener le concepteur à négliger la logique mathématique sous-jacente à la simulation. Quelle que soit la commodité de l'interface, le cœur du travail des outils de type SPICE est de résoudre des équations algébriques linéaires ou non linéaires. Le schéma est d'abord converti en une liste de connexions (netlist), puis le solveur utilise des modèles discrets pour approximer les variations physiques continues du circuit réel. Pour éliminer efficacement les problèmes de non-convergence, il est nécessaire de comprendre les mécanismes de base de la construction de matrices, de l'itération et de la discrétisation temporelle.

I. Algorithme fondamental derrière la netlist : l'analyse nodale modifiée (MNA)

Au début de la simulation, le logiciel ne calcule pas directement les courants et les tensions à partir du graphique. Il convertit d'abord la topologie du circuit et les paramètres des composants en une netlist numérique. Les solveurs SPICE grand public utilisent généralement l'analyse nodale modifiée (Modified Nodal Analysis, MNA), basée sur la loi des courants de Kirchhoff (KCL), pour établir des équations pour les nœuds indépendants et certains courants de branche.

Représentation matricielle des circuits linéaires

Pour un circuit composé d'éléments linéaires tels que des résistances, des sources de courant indépendantes et des sources de tension indépendantes, le solveur peut établir l'équation linéaire suivante :

nodal voltage matrix equation

  • A : Matrice des coefficients du système, contenant les admittances des composants, les contraintes des sources de tension et les relations de connexion du circuit.
  • X : Vecteur des inconnues à déterminer, contenant généralement les tensions de chaque nœud et les courants traversant les sources de tension indépendantes.
  • Z : Vecteur d'excitation, contenant les sources de courant indépendantes, les sources de tension et les termes d'historique équivalents.

D'un point de vue mathématique, lorsque A est inversible, la solution peut s'écrire :

matrix inverse solution equation

Cette expression aide à comprendre l'inversibilité de la matrice, mais les solveurs numériques pratiques ne calculent généralement pas explicitement A-1. Ils utilisent plutôt des méthodes comme la décomposition LU pour résoudre directement le système d'équations linéaires, améliorant ainsi la vitesse et la stabilité numérique. Ceci est particulièrement important pour les grandes matrices de circuits creuses. Pour une compréhension de base des équations linéaires et de l'analyse nodale, vous pouvez également consulter le solveur de circuits électroniques.

Lorsque le circuit inclut des éléments non linéaires tels que des diodes, des MOSFETs, des BJTs, etc., les coefficients de la matrice changent en fonction des tensions de nœud et du point de fonctionnement. Les équations deviennent un système implicite non linéaire, et le solveur doit passer à une linéarisation et une résolution itératives.

II. Causes de la non-convergence des itérations non linéaires et méthodes d'ajustement

Lorsqu'il traite des éléments non linéaires, le solveur utilise généralement l'itération de Newton-Raphson au point de fonctionnement continu (DC) et à chaque pas de temps transitoire. Prenons l'exemple d'une diode : le solveur suppose d'abord un ensemble de tensions de nœud, puis calcule la pente locale à ce point de fonctionnement, linéarise le modèle non linéaire en une admittance équivalente et une source de courant, puis obtient l'ensemble suivant de tensions de nœud, répétant le processus jusqu'à ce que le résidu et la mise à jour de la tension soient inférieurs au seuil de convergence. Lors de l'utilisation de LTspice pour simuler des circuits électroniques, le moteur sous-jacent est également confronté aux mêmes problèmes de point de fonctionnement et d'itération.

Deux scénarios courants de non-convergence

  • Pente excessive du modèle ou saut discontinu : La commutation dans les alimentations à découpage, la rétroaction à gain élevé ou les modèles segmentés idéalisés peuvent dégrader le conditionnement de la matrice jacobienne. Si l'estimation initiale est trop éloignée du point de fonctionnement réel, le pas de Newton peut osciller ou diverger.
  • Nœuds flottants ou isolés : Les enroulements de transformateur, les bornes de condensateur sans référence de masse continue, ou les nœuds isolés à haute impédance formés après l'ouverture d'un interrupteur de puissance peuvent priver la matrice d'une solution unique et la rendre singulière. Ces problèmes topologiques font également partie des erreurs courantes de conception de schémas.

Réglage des paramètres SPICE et ordre de dépannage

En cas d'erreur de non-convergence, vérifiez d'abord la netlist, la référence de masse, l'orientation des composants et les paramètres du modèle, puis ajustez les options de résolution en fonction de l'outil SPICE utilisé. Les noms de paramètres et les valeurs par défaut peuvent varier selon les logiciels ; il n'est pas conseillé d'utiliser une valeur unique comme solution universelle.

  • GMIN / GMIN Stepping : Fournit un chemin de conduction continue minimal pour les nœuds à haute impédance, ou permet au solveur de passer progressivement d'une admittance minimale plus grande à la valeur cible, réduisant ainsi le risque de matrice singulière.
  • Source Stepping : Obtient d'abord un point de fonctionnement stable avec une amplitude de source plus petite, puis augmente progressivement jusqu'à la valeur définie, aidant les circuits fortement non linéaires à entrer dans le domaine de solution correct.
  • RELTOL, VNTOL et ABSTOL : Un relâchement modéré des seuils d'erreur peut parfois aider à franchir des points numériquement sensibles, mais cela réduit la précision du calcul. Pour RELTOL par exemple, une valeur plus grande signifie généralement une exigence de tolérance relative plus large ; après modification, vérifiez si les formes d'onde critiques répondent toujours aux objectifs de conception.
  • Conditions initiales et ensembles de nœuds (Nodeset) : Fournir des valeurs initiales raisonnables pour les tensions des condensateurs, les courants des inductances ou les nœuds critiques peut raccourcir le chemin de recherche du point de fonctionnement, mais n'utilisez pas de valeurs ne correspondant pas à l'état réel du circuit pour forcer la convergence.

Diagramme schématique des trajectoires de convergence, d'osc

Figure 1 : Illustration des trajectoires de convergence, d'oscillation et de divergence de l'itération de Newton-Raphson.

III. Erreurs courantes dans la simulation transitoire : singularités mathématiques causées par des composants idéaux

Lors de l'exécution d'une analyse transitoire .TRAN, le solveur divise le temps continu en points temporels discrets et convertit les condensateurs et les inductances en modèles compagnons équivalents correspondant à la méthode d'intégration. Un nouveau système d'équations linéarisées doit être construit et résolu à chaque pas de temps.

Si le modèle est trop idéalisé, par exemple une source de tension idéale connectée directement à un condensateur idéal via un interrupteur à impédance nulle, la fermeture de l'interrupteur exige que la tension du condensateur change instantanément en un temps nul. D'après la relation du condensateur :

ideal capacitor inrush current equation

Lorsque Δt tend vers zéro et que ΔV n'est pas nul, le modèle idéal déduit un courant instantané tendant vers l'infini, formant mathématiquement un point de discontinuité. Pour capturer ce saut, le solveur peut réduire continuellement le pas de temps ; lorsque le pas de temps devient inférieur à la précision numérique disponible ou à la limite interne, l'erreur "Time Step Too Small" se produit.

Techniques de modélisation pour éliminer les singularités mathématiques

Lors de la modélisation, il ne faut pas utiliser inconditionnellement des composants idéaux. Ajoutez des paramètres parasites réalistes basés sur la fiche technique, le boîtier et la structure du routage pour donner au modèle un amortissement raisonnable et réduire les sauts discontinus :

  • Ajoutez aux condensateurs une ESR, une ESL et un chemin de fuite conformes aux spécifications du composant et à la plage de fréquences ; les caractéristiques physiques associées peuvent être consultées dans la réponse en fréquence des condensateurs de découplage.
  • Définissez pour les interrupteurs une résistance à l'état passant finie, une résistance à l'état bloqué et des temps de montée/descente raisonnables, évitant ainsi les fronts idéaux parfaitement verticaux.
  • Ajoutez des résistances et inductances parasites appropriées en fonction de la géométrie du boîtier, des vias et du routage, plutôt que d'ajouter des valeurs arbitraires juste pour faire passer la simulation.
  • Effectuez une vérification de sensibilité sur les nouveaux paramètres parasites ajoutés pour confirmer qu'ils améliorent la convergence sans masquer des problèmes de sonnerie, de surtension ou de stabilité.

De la simulation SPICE à la validation sur carte réelle avec JLCPCB

La convergence de la simulation signifie seulement que le modèle numérique a réussi à obtenir une solution, et ne garantit pas que le circuit réel est stable. Après avoir effectué les vérifications du point de fonctionnement, du transitoire, de la température et des tolérances des composants, convertissez le schéma en PCB et vérifiez les boucles d'alimentation, la masse, le découplage, les chemins de courant et les paramètres parasites critiques. Pour une évaluation plus approfondie du réseau d'alimentation, vous pouvez combiner avec l'analyse de l'intégrité de l'alimentation du PCB.

Après avoir confirmé les règles de conception, soumettez les fichiers Gerber, la nomenclature (BOM) et les coordonnées de placement à JLCPCB, et utilisez le service d'assemblage de PCB pour fabriquer des prototypes de validation. Comparez les résultats SPICE avec les mesures effectuées à l'aide d'oscilloscopes, de charges électroniques et de tests d'élévation de température.

Utilisez les services de fabrication et d'assemblage de JLCPCB pour transformer vos modèles SPICE en circuits physiques mesurables

Téléchargez vos fichiers Gerber et BOM pour obtenir un devis instantané, et validez le point de fonctionnement, la réponse transitoire et l'intégrité de l'alimentation par des tests sur carte réelle.

Conclusion : Comprendre correctement la nature d'approximation mathématique de la simulation

La simulation de circuits est un moyen technique d'approcher un circuit réel par un modèle mathématique. Il n'existe pas de résultat de simulation qui reproduise parfaitement le circuit physique. Les formes d'onde de tension et de courant affichées à l'écran sont des valeurs approximatives obtenues par le solveur après la construction de la matrice, la décomposition numérique, l'itération non linéaire et la discrétisation temporelle.

Que vous utilisiez un outil de simulation en ligne léger ou un logiciel SPICE de bureau professionnel, vous devez d'abord vérifier la topologie de la netlist, le domaine de validité du modèle et les paramètres du solveur. En comprenant la matrice MNA, l'itération non linéaire, les nœuds flottants et les singularités des composants idéaux, le concepteur peut ajuster le modèle et les paramètres en fonction de la cause profonde, plutôt que de relâcher aveuglément les seuils d'erreur.

En fin de compte, les hypothèses de la simulation doivent être validées par des mesures sur la carte réelle. Ce n'est qu'en combinant le modèle numérique, les effets parasites du PCB et les résultats expérimentaux que les données de simulation peuvent véritablement aider au développement matériel et réduire la difficulté de débogage.

Continuez à apprendre