01 · Visionneuses
Ouvrez une netlist, voyez le schéma. Rien n’est écrit tant que vous n’enregistrez pas
Une visionneuse ouvre une netlist SPICE ou Spectre contenant des enregistrements RNL, ainsi que les fichiers qu’elle inclut, dessine chaque niveau du circuit et affiche à côté le texte de la netlist, les problèmes et la hiérarchie. Le texte d’une netlist copié dans le presse-papiers peut aussi être ouvert : Fichier › Charger depuis le presse-papiers affiche d’abord le texte, puis l’ouvre lorsque vous confirmez.
Dessine chaque niveau
Le niveau supérieur et chaque sous-circuit forment chacun leur propre dessin, affiché un à la fois ; faites glisser pour déplacer la vue, utilisez la molette pour zoomer. Double-cliquez sur une instance de sous-circuit pour ouvrir son dessin ; Backspace remonte au niveau parent.
Le texte de la netlist
La netlist et les fichiers qu’elle inclut, avec coloration syntaxique des enregistrements RNL et des instructions de la netlist ; les instructions qui ne prennent pas effet ont un fond atténué. Lorsqu’un sous-circuit est dessiné, le texte situé en dehors de sa définition est estompé, et entrer dans le sous-circuit fait défiler le texte jusqu’au début de sa définition.
Problèmes
Les erreurs, avertissements et indications sont listés sous le texte ; cliquez sur l’un d’eux pour voir sa ligne. Les numéros de ces lignes sont également colorés.
Hiérarchie
L’arbre des instances sous le niveau supérieur, et en dessous tous les sous-circuits par nom, groupés par initiale, avec un champ de recherche ; choisissez-en un pour ouvrir son schéma.
Schéma et texte liés
Cliquez sur une instance ou un fil dans le schéma, et le texte marque son instruction ainsi que chaque endroit qui le nomme ; cliquez dans le texte, et le schéma le sélectionne.
Objets non dessinés
Les objets sans position (ou sans symbole) ne sont pas dessinés ; la vue Non dessinés du panneau latéral en dresse la liste avec leurs symboles et les nets de leurs bornes, consultable par nom, et cliquer sur l’un d’eux met en évidence son instruction dans la netlist. La barre d’état indique combien d’objets ne sont pas dessinés, et cliquer sur ce message ouvre la vue.
Éditer, appliquer, enregistrer
Les deux visionneuses permettent de modifier le texte de la netlist. Une modification ne fait rien d’elle-même : elle est dessinée lorsque vous l’appliquez et écrite lorsque vous l’enregistrez, et aucune résolution ne se lance toute seule.
Éditer le texte
Édition › Éditer le texte (Ctrl+Q, la touche Control sur macOS également) transforme la vue de la netlist en une zone de texte modifiable avec numéros de lignes pour chaque fichier. Les modifications non enregistrées sont signalées par un point à côté du chemin du fichier, et la barre au-dessus du texte indique lorsque des modifications n’ont pas encore été appliquées. Édition › Abandonner les modifications écarte les modifications non appliquées et quitte l’édition.
Appliquer
Édition › Appliquer et quitter l’édition (Ctrl+Enter) reconstruit la netlist à partir du texte modifié, redessine le schéma, actualise la liste des problèmes et la hiérarchie tout en conservant le niveau, la vue et la sélection actuels, puis quitte l’édition. Si la construction échoue, vos modifications restent ouvertes et la visionneuse en indique la raison.
Enregistrer
Fichier › Enregistrer (Ctrl+S ; Fichier › Télécharger le fichier dans la visionneuse web) : la visionneuse de bureau réécrit uniquement les fichiers modifiés là où ils ont été lus, en préservant l’encodage et les fins de lignes de chaque fichier ; la visionneuse web ne pouvant pas écraser les fichiers locaux, Télécharger le fichier télécharge le fichier affiché. En présence de modifications non enregistrées, la visionneuse demande confirmation avant d’ouvrir un autre fichier, de recharger ou de fermer.
Les deux visionneuses dessinent exactement le même schéma : un unique cœur en Rust décide de l’emplacement de chaque trait et de chaque texte, nativement sur le bureau et en WebAssembly dans le navigateur, et met en page le texte avec les polices qu’il embarque.
02 · Visionneuse web
La visionneuse web : rien à installer
Dans l’onglet Bibliothèque de la barre latérale (le premier onglet), les fichiers ouverts sont ajoutés au groupe Fichiers sans doublons. Inclure un fichier et Inclure un dossier ajoutent des fichiers à la Bibliothèque sans les ouvrir, tandis qu’Exclure retire un fichier de la recherche sans fermer le document actuel. Inclure un paquet public ajoute des paquets hébergés tels que SKY130 depuis ce site sans utiliser l’API GitHub. Fichiers est initialement déplié et le groupe en lecture seule Intégrés (séries standards 0.3 et 0.2) est initialement replié ; l’état de repli dure le temps de la session, et les lignes des fichiers racines sont mises en évidence. Le texte collé depuis le presse-papiers apparaît sous la forme d’une unique ligne temporaire · exclu de la recherche en dehors de la recherche de fichiers — cliquez dessus pour revenir à son dernier texte appliqué, collez de nouveau pour le remplacer, ou fermez-le pour l’effacer. Comme les navigateurs ne peuvent pas parcourir des répertoires locaux PATH arbitraires, la visionneuse web résout les fichiers inclus et les paquets à partir de la Bibliothèque.
La visionneuse web est une page web statique dans laquelle s’exécute le cœur RNL compilé en WebAssembly. Elle ouvre des fichiers ou tout un dossier depuis votre ordinateur, ou une netlist sur le web ; vous pouvez aussi déposer des fichiers directement sur la page.
Essayez ces exemples
Ces exemples proviennent du corpus de conformité de RNL et sont publiés avec la visionneuse web. Cliquez sur l’un d’eux pour que la visionneuse l’ouvre.
- 04HiérarchieUn tampon à deux étages : un schéma pour chaque sous-circuit, dessiné comme un symbole de bloc au niveau supérieur, ainsi qu’un fichier inclus.
- 17Styles de traitChaque style de trait sur chaque sorte de forme : traits tiretés, pointillés, gras et doubles sur des rectangles, cercles, ellipses, arcs et courbes, ainsi que sur un fil.
Vos fichiers restent dans le navigateur
Les fichiers que vous ouvrez depuis votre ordinateur sont lus dans la page et ne sont téléversés nulle part : le site n’est composé que de fichiers statiques, sans aucun serveur pour les recevoir.
Ouvrir une URL
Fichier › Ouvrir une URL lit une netlist depuis un autre serveur web, ainsi que les fichiers qu’elle inclut depuis le même emplacement. Ce serveur doit autoriser les lectures inter-origines (CORS), comme le font les liens de fichiers bruts (raw) de GitHub.
Navigateurs
Chrome et Edge 109 ou ultérieur, Safari 16 ou ultérieur, et Firefox 114 ou ultérieur (les premières versions prenant en charge les Workers de type module).
La visionneuse web permet de modifier le texte et redessine le schéma lorsque les modifications sont appliquées, comme décrit ci-dessus. Comme une page de navigateur ne peut pas écraser les fichiers locaux, Fichier › Télécharger le fichier (Ctrl+S) télécharge le fichier affiché en UTF-8 avec ses fins de lignes d’origine. Seule la visionneuse de bureau résout le placement ; la visionneuse web n’a pas de menu Résoudre.
L’adresse de la visionneuse peut indiquer la netlist à ouvrir, ce qui permet de partager un lien : viewer/?url=https://raw.githubusercontent.com/…/04-hierarchy.sp ouvre une netlist hébergée sur GitHub avec le fichier qu’elle inclut.
Intégration dans une autre page
Utilisez viewer/?embed=1 dans une iframe pour obtenir une visionneuse interactive limitée au canevas. Changez de netlist, de niveau et d’arrière-plan via postMessage sans recharger la page. Consultez l’API d’intégration et son exemple, ou essayez la démonstration.
La visionneuse web proposée ici est construite à partir du dernier commit de la branche main ; Aide › À propos de RNL Viewer indique sa version et son commit, et Aide › Visionneuse de bureau ramène à cette page.
03 · Visionneuse de bureau
La visionneuse de bureau pour Windows, Linux et macOS
La visionneuse de bureau RNL Viewer lit et écrit les fichiers sur le disque par leur chemin : les fichiers inclus par une netlist sont trouvés où qu’ils soient, F5 relit un fichier modifié, le texte édité est réécrit là où il a été lu, et Fichier › Enregistrer sous enregistre la netlist sous un nouveau nom. Elle partage l’interface de la visionneuse web et y ajoute un menu Résoudre pour le placement automatique.
Sur le bureau, la Bibliothèque affiche des groupes PATH ordonnés entre Fichiers et Intégrés, initialement repliés, avec des contrôles pour les ajouter, les déplacer et les retirer. Dépliez un groupe pour voir les fichiers .rnl situés directement dans ce dossier ou un niveau plus bas dans un sous-dossier portant un numéro de version ; ouvrir une ligne l’ajoute aussi à Fichiers. Les répertoires sont réanalysés lorsque vous ouvrez la Bibliothèque et après toute modification du PATH. Tous les paramètres — y compris ceux du solveur, de l’affichage et du PATH — sont enregistrés dans settings.json dans le répertoire de configuration d’application de Tauri ; les paramètres existants de la vue web sont migrés au premier démarrage, et le chemin exact de settings.json est affiché en bas de la Bibliothèque. Les directives include essaient d’abord leur chemin relatif ; les noms de fichiers simples se rabattent sur la Bibliothèque puis sur le PATH, en émettant une indication qui nomme le fichier résolu. Les paquets sont cherchés dans la Bibliothèque, le PATH et les paquets intégrés, en prenant la première correspondance pour la version demandée. Chaque répertoire vérifie d’abord name.rnl et version/name.rnl, puis parcourt les autres fichiers .rnl pour inspecter leur en-tête PACKAGE, de sorte que les noms de fichiers n’ont pas besoin de correspondre aux noms des paquets. Le paquet rnl-std d’un utilisateur peut ainsi supplanter la copie intégrée.
-
Installateur
RNL-Viewer-0.5.3-windows-x64-setup.exeS’installe pour l’utilisateur courant ; le choix qui convient à la plupart des utilisateurs.
-
Paquet MSI
RNL-Viewer-0.5.3-windows-x64.msiUn paquet Windows Installer, destiné aux administrateurs qui le déploient.
-
Version portable
RNL-Viewer-0.5.3-windows-x64.exeUn fichier unique qui s’exécute tel quel, sans rien à installer.
-
Sommes de contrôle
SHA256SUMS.txtL’empreinte SHA-256 de chaque fichier ci-dessus ; à comparer avec ce que renvoie
Get-FileHash FILEdans PowerShell.
-
AppImage
RNL-Viewer-0.5.3-linux-x86_64.AppImagePour systèmes x86_64 sous Ubuntu 22.04 ou plus récent. Dans le répertoire de téléchargement, exécutez
chmod +x RNL-Viewer-0.5.3-linux-x86_64.AppImage, puis./RNL-Viewer-0.5.3-linux-x86_64.AppImage. Sans FUSE, utilisez./RNL-Viewer-0.5.3-linux-x86_64.AppImage --appimage-extract-and-run. -
Paquet Debian
RNL-Viewer-0.5.3-linux-x86_64.debUbuntu 22.04 ou plus récent ; les autres distributions fondées sur Debian nécessitent une glibc compatible et WebKitGTK 4.1. Dans le répertoire de téléchargement, exécutez
sudo apt install ./RNL-Viewer-0.5.3-linux-x86_64.deb, puis ouvrez RNL Viewer depuis le menu des applications ou lancezrnl-viewer. Désinstallez avecsudo apt remove rnl-viewer. -
Sommes de contrôle
SHA256SUMS.txtTéléchargez le fichier de sommes de contrôle et le paquet souhaité dans un même répertoire, puis exécutez
sha256sum --check --ignore-missing SHA256SUMS.txt.
Ouvrez le fichier DMG correspondant à votre processeur, faites glisser RNL Viewer dans Applications, puis éjectez l’image disque. L’application porte une signature ad hoc et n’est pas notariée par Apple. Si macOS la bloque, choisissez Ouvrir quand même dans Réglages Système → Confidentialité et sécurité, ou pour un téléchargement de confiance exécutez xattr -dr com.apple.quarantine "/Applications/RNL Viewer.app" dans Terminal puis rouvrez-la. Pour désinstaller, quittez l’application et placez-la dans la Corbeille.
Dans le Finder, utilisez Ouvrir avec → RNL Viewer ; Lire les informations permet de la définir par défaut pour ce type de fichier. Vous pouvez aussi déposer des fichiers directement sur la fenêtre. La plupart des raccourcis utilisent Cmd ; l’édition de texte conserve la touche physique Control+Q, et Cmd+Q quitte l’application. Les paramètres sont stockés dans ~/Library/Application Support/io.github.rich-netlist.viewer/settings.json ; vous pouvez supprimer ce répertoire après la désinstallation. Vérifiez les téléchargements avec le fichier SHA256SUMS.txt de la version et shasum -a 256.
-
Windows, portable
RNL-Viewer-0.5.3-with-packages-windows-x64.zipLe fichier Windows unique avec un dossier public-packages à côté, dans un zip : décompressez-le et lancez le fichier.
-
AppImage, avec les paquets
RNL-Viewer-0.5.3-with-packages-linux-x86_64.AppImageLa même AppImage que ci-dessus, avec les paquets publics à l’intérieur ; rendez-la exécutable et lancez-la de la même façon.
-
Paquet Debian des paquets publics
RNL-Viewer-0.5.3-linux-public-packages.debPour le paquet Debian du visualiseur ci-dessus, qui les cherche dans /usr/share/rnl-viewer. Dans le répertoire de téléchargement, exécutez
sudo apt install ./RNL-Viewer-0.5.3-linux-public-packages.deb. - Apple Silicon, avec les paquets
RNL-Viewer-0.5.3-with-packages-macos-arm64.dmg - Intel, avec les paquets
RNL-Viewer-0.5.3-with-packages-macos-x86_64.dmg
Les installateurs ci-dessus proposent les paquets publics à l’installation : l’installateur Windows sur une page à part, le MSI comme fonctionnalité. Voici les autres variantes, avec les paquets dans le même téléchargement. Ce sont les dernières versions des paquets de rnl-packages à la construction de la version ; le visualiseur ne les télécharge jamais lui-même, et Aide › Paquets publics dit lesquels cette version contient.
- Polices chinoises sous LinuxL’interface et la netlist utilisent en repli les polices web Noto Sans SC embarquées. Les menus natifs GTK, les infobulles natives et les boîtes de dialogue système de fichiers nécessitent des polices chinoises système : sous Debian/Ubuntu, exécutez
sudo apt install fonts-noto-cjkpuis relancez l’application. Cela vaut aussi pour l’AppImage. - WebView2La visionneuse de bureau nécessite l’environnement d’exécution Microsoft Edge WebView2, déjà présent sur Windows 10 et 11. S’il manque, il peut être téléchargé auprès de Microsoft.
- SmartScreenLes fichiers n’étant pas encore signés numériquement, Windows SmartScreen peut indiquer qu’il a protégé votre PC : cliquez sur Informations complémentaires, puis sur Exécuter quand même.
- Mises à jourAide › Vérifier les mises à jour recherche une version plus récente.
Résolution sous forme d’aperçu
Le menu Résoudre de la visionneuse de bureau place les objets dépourvus de position à l’aide du solveur de rnl solve. Le résultat s’affiche uniquement dans la fenêtre, et les fichiers restent inchangés.
Un aperçu de la résolution
Résoudre › Résoudre (F9) résout le texte appliqué de la netlist et des fichiers qu’elle inclut de la même manière que rnl solve. Le calcul s’exécute en arrière-plan pour que la fenêtre reste utilisable, tandis que la barre d’état affiche le niveau en cours de résolution et un bouton Annuler. Un bandeau au-dessus du dessin précise qu’il s’agit d’un aperçu et que les fichiers sur le disque sont inchangés, et la vue Résoudre du panneau latéral affiche le rapport du solveur — cliquez sur n’importe quelle entrée pour aller à sa ligne dans la netlist. Résoudre › Fermer l’aperçu revient au fichier tel qu’il est écrit.
Enregistrer une copie résolue
Résoudre › Enregistrer une copie résolue sous (Ctrl+Shift+S) enregistre le résultat à l’emplacement de votre choix : un seul fichier, proposé sous le nom NAME-solved.EXT, pour une netlist qui n’inclut aucun autre fichier ; sinon un dossier contenant les fichiers résolus et les autres fichiers lus, exactement comme les écrit rnl solve -o DIR. Tout emplacement qui écraserait l’un des fichiers lus est refusé.
Les paramètres du solveur
Résoudre › Paramètres configure les options du solveur : la limite de temps par niveau, la tolérance, la grille, la largeur de faisceau, l’effort de recherche et du routeur, ainsi que les objectifs qui classent les placements — quels objectifs sont activés, leur ordre de classement, et les poids des objectifs situés dans le même palier. La priorité d’une contrainte (low, normal, high) s’écrit dans la netlist et ne se règle pas ici. Restaurer les valeurs par défaut réinitialise toutes les options à leurs valeurs par défaut, et les paramètres sont conservés d’un lancement à l’autre.
04 · Ligne de commande
Téléchargez, décompressez, exécutez
Utilisez rnl pour vérifier des netlists, générer des SVG et résoudre des placements. Aucune installation de Rust n’est requise ; sous Windows, aucun environnement d’exécution VC++ séparé n’est nécessaire non plus. L’outil en ligne de commande et le paquet npm partagent la version du cœur, indépendamment de la visionneuse et de la norme du langage.
- Windows x64
.zip · MSVCDécompressez, puis exécutez
.\rnl.exe --version. - Linux x86_64
.tar.gz · muslLié statiquement. Décompressez, puis exécutez
./rnl --version. - macOS · Apple Silicon
.tar.gz · arm64Pour les Mac équipés d’Apple Silicon.
- macOS · Intel
.tar.gz · x86_64Pour les Mac équipés de processeurs Intel.
SHA256SUMS.txt : vérifiez l’empreinte SHA256 de l’archive avant de l’exécuter. rnl --version affiche la version du cœur et le commit de compilation ; utilisez rnl check my.sp pour vérifier une netlist et rnl render my.sp -o svg pour exporter les schémas.
Ces liens suivent toujours la dernière publication core-v*. Les fichiers ne sont pas signés : Windows peut afficher SmartScreen ; sous macOS, les téléchargements effectués via un navigateur peuvent nécessiter xattr -d com.apple.quarantine rnl. Linux arm64 nécessite actuellement une compilation depuis les sources. Consultez le guide CLI pour les commandes de téléchargement, d’extraction et de vérification d’empreinte.
05 · Exportation Virtuoso
Exportez des schémas Virtuoso vers RNL
rnl-virtuoso ajoute RNL → Export RNL... à l’éditeur de schémas de Virtuoso et File → Export → RNL... au CIW. Il exporte une cellule ou toute une bibliothèque en conservant la hiérarchie, les symboles de bloc personnalisés, le placement, l’orientation, les fils et les bus, et dessine à l’aide des paquets eda-symbol et eda-style.
- Linux x86-64
.tar.gzTéléchargez-le depuis la page des versions et décompressez-le sur la machine hôte de Virtuoso ; les exportateurs propres à Cadence et leurs licences y sont requis.
- Installation et utilisation
READMELes étapes, les menus et les options sont détaillés dans son README.
- RISCA reconfigurable ADC
galleryUn exemple en RNL réellement exporté depuis Virtuoso.
06 · Chaîne d’outils
La chaîne d’outils RNL : lire, résoudre, dessiner, éditer
La chaîne d’outils sépare « comprendre le RNL » et « transformer l’intention en coordonnées » dans des modules distincts : vous pouvez consulter un schéma sans solveur et ne résoudre qu’en cas de besoin. Ce qui existe aujourd’hui : l’environnement d’exécution, les adaptateurs hôtes, le moteur de rendu et l’outil en ligne de commande, les deux visionneuses ci-dessus, ainsi qu’une première version du solveur dans rnl solve et la visionneuse de bureau. Choisissez un parcours pour voir comment circulent les données ; cliquez sur un module pour voir son rôle.
07 · Licences
Open source, libre d’utilisation
Le code source des visionneuses et de toute la chaîne d’outils RNL est public sur GitHub.
MIT
Le code des visionneuses est publié sous licence MIT : utilisez-le, modifiez-le et partagez-le librement en conservant la mention de droit d’auteur.
OFL-1.1
Le texte des schémas est mis en page et dessiné avec la police Noto Sans SC, copyright 2014-2021 Adobe, sous licence SIL Open Font License 1.1. Le cœur embarque les métriques de la police, la visionneuse de bureau intègre les fichiers de police, et la visionneuse web charge uniquement ce dont un schéma a besoin (décision 0009).
Code source
Sur GitHub : la visionneuse web se trouve dans apps/web, la visionneuse de bureau dans apps/desktop, l’interface qu’elles partagent dans apps/viewer-ui et le cœur dans crates. Les changements de chaque version sont détaillés dans ses notes de version.