GoGPT Best VPN GoSearch

Icône de favori OnWorks

irsim - En ligne dans le Cloud

Exécutez irsim dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande irsim qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


irsim - Un simulateur de niveau logique événementiel pour les circuits MOS

SYNOPSIS


irsim [-s] fichier_prm fichier_sim ... [+fichier_histo] [-fichier_cmd ...]

DESCRIPTION


IRSIM est un simulateur de niveau logique piloté par événement pour les circuits à transistors MOS (à la fois N et P).
Deux modèles de simulation sont disponibles :

interrupteur Chaque transistor est modélisé comme un commutateur commandé en tension. Utile pour l'initialisation
ou déterminer la fonctionnalité du réseau.

linéaire Chaque transistor est modélisé comme une résistance en série avec une tension contrôlée
changer; chaque nœud a une capacité. Les valeurs des nœuds et les temps de transition sont calculés
du réseau RC résultant, en utilisant le modèle de Chorng-Yeoung Chu. celui de Chris Terman
le modèle d'origine n'est plus pris en charge.

Si la -s commutateur est spécifié, 2 transistors ou plus du même type connectés en série,
sans autre connexion à leur source/drain commun sera empilé dans un composé
transistor à plusieurs portes.

Le fichier_prm est le fichier des paramètres électriques qui configurent les appareils à simuler.
Il définit la capacité des différentes couches, les résistances des transistors, le seuil
tensions, etc... (voir présim(1)).
If fichier_prm ne spécifie pas de chemin absolu, l'IRSIM recherchera le fichier_prm as
suit (dans cet ordre) :

1) ./ (dans le répertoire courant).
2) ${CAD_ROOT}/irsim/
3) ${CAD_ROOT}/irsim/.prm

Le répertoire de recherche par défaut (nominalement / Usr / local / lib) peut être annulé en définissant le
variable d'environnement CAD_ROOT dans le répertoire approprié avant d'exécuter IRSIM (c'est-à-dire
setenv CAD_ROOT /cad/lib).

IRSIM traite d'abord les fichiers nommés sur la ligne de commande, puis (en supposant que la commande exit
n'a pas été traité) accepte les commandes de l'utilisateur, en exécutant chaque commande avant
lecture du suivant.

Les noms de fichiers NE commençant PAS par un '-' sont supposés être des fichiers sim (voir oui(5)), notez que
cette version ne nécessite pas d'exécuter les fichiers sim via presim. Ces fichiers sont lus
et ajouté à la base de données du réseau. Il n'y a qu'un seul espace de nom pour les nœuds, donc
les références au nœud « A » dans différents fichiers réseau font toutes référence au même nœud. Alors que ce
fonction permet de modulariser un grand circuit en plusieurs fichiers réseau, il faut faire attention
prises pour s'assurer qu'aucune fusion de nœuds indésirable ne se produise en raison d'un conflit malheureux dans les noms.

Les noms de fichiers précédés d'un '-' sont supposés être des fichiers de commandes : des fichiers texte qui contiennent
lignes de commande à traiter normalement. Ces fichiers sont traités ligne par
ligne; lorsqu'une fin de fichier est rencontrée, le traitement se poursuit avec le fichier suivant. Après
tous les fichiers de commandes ont été traités, et si une commande "exit" n'a pas terminé le
l'exécution de la simulation, l'IRSIM acceptera d'autres commandes de l'utilisateur, en invitant chacune d'elles
ainsi:

irsim>

Le fichier_histo est le nom d'un fichier créé avec le connard commande (voir ci-dessous). Si c'est
présent, l'IRSIM initialise le réseau à l'état enregistré dans ce fichier. Ce fichier est
différent de ceux créés avec la commande ">" car il enregistre l'état de chaque
nœud à tout moment, y compris les événements en attente.

Cette version prend en charge les modifications apportées au réseau via le Mise à jour commander. Également
la capacité de re-simuler progressivement le réseau jusqu'à l'heure actuelle est fournie par
le nom commander.

COMMAND EN RÉSUMÉ


@ nom de fichier prendre les commandes du fichier de commandes
? noeud... imprimer des informations sur les connexions source/drain du nœud
! noeud... imprimer des informations sur les connexions de porte du nœud
< nom de fichier restaurer l'état du réseau à partir d'un fichier
> nom de fichier écrire l'état actuel du réseau dans un fichier
<< nom de fichier Identique à "<" mais restaure aussi les entrées
| commentaire ... ligne de commentaire
activité à partir de [à] activité du circuit graphique dans l'intervalle de temps
ana noeud... afficher les nœuds dans la fenêtre de l'analyseur
analyseur noeud... afficher les nœuds dans la fenêtre de l'analyseur
affirmer nœud [M] vague affirmer que nœud équivaut à valeur
affirmerQuand nœudT valT nœud vague
affirmer quand une condition est remplie
RETOUR [temps] revenir à Paisible
c [n] simuler pour n cycles d'horloge (par défaut : 1)
change à partir de [à] imprimer les nœuds qui ont changé dans l'intervalle de temps
horloge [nœud [val]] définir la séquence de valeurs pour le nœud d'horloge
clair effacer la fenêtre de l'analyseur (supprimer les signaux)
d [nœud]... imprimer la liste d'affichage ou le(s) nœud(s) spécifié(s)
déboguer [niveau_debug...]
définir le niveau de débogage (par défaut : désactivé)
décadence [n] régler le temps de décroissance de la charge (0 => pas de décroissance)
l’affichage [argument]... contrôler ce qui est affiché quand
connard nom de fichier... écrire l'historique du réseau dans un fichier
hist [activé|désactivé] activer ou désactiver l'historique
sortie [statut] retour au système
affleurer [temps] débusquer l'histoire jusqu'à Paisible (par défaut : maintenant)
h noeud... rendre le nœud logique haut (1) entrée
a_coords imprimer OUI si les coordonnées du transistor sont disponibles
entrées imprimer la liste actuelle des nœuds d'entrée
ires [n] définir la résolution incrémentielle sur n ns
nom [nom de fichier] formulaire de resimulation incrémentielle des modifications nom de fichier
l noeud... rendre le nœud logique bas (0) entrée
fichier journal [nom de fichier] démarrer/arrêter le fichier journal
modèle [Nom] définir le modèle de simulation sur nom
p pas d'horloge un pas de simulation (phase)
chemin noeud... afficher le chemin critique pour la dernière transition d'un nœud
fichier powlog [nom de fichier] démarrer/arrêter le fichier journal d'alimentation
tracer -[nœud]... démarrer/arrêter le traçage de l'alimentation de nœud(s)/vecteur(s) spécifié(s)
pas de force basculer l'affichage de l'estimation de puissance pour chaque pas de temps
impression commentaire ... imprimer le texte spécifié
imprimer imprimer une liste de tous les événements en attente
imprimerx imprimer tous les nœuds non définis (X)
q terminer l'entrée du flux actuel
R [n] simuler pour n cycles (par défaut : séquence la plus longue)
lire nom de fichier lire l'histoire de nom de fichier
rapport[niveau] définir/réinitialiser les rapports d'événements de décroissance
s [n] simuler pour n ns. (par défaut : pas)
taille de pas [n] définir la taille du pas de simulation sur n ns.
set vecteur valeur assigner valeur à vecteur
journal de configuration[fichier|off] enregistrer les modifications nettes dans le fichier (de rabais -> pas de journal)
chemin défini [chemin...] définir le chemin de recherche des fichiers cmd
stats imprimer les statistiques d'événements
sommecap imprimer la somme de la capacité de tous les nœuds
t [-]nœud... démarrer/arrêter le traçage des nœuds spécifiés
tcap imprimer la liste des transistors en court-circuit
Paisible [commander] imprimer le résumé de l'utilisation des ressources
jusqu'au nœud [masque] valeur compter
assertion retardée basée sur le nombre d'horloges.
u noeud... rendre le nœud indéfini (X) entrée
délai unitaire [n] forcer les transitions à effectuer n ns. (0 désactive)
Mise à jour nom de fichier lire les modifications nettes du fichier
V [nœud [valeur...]] définir une séquence d'entrées pour un nœud
vecteur étiquette nœud... définir le vecteur de bits
approvisionnement Tension régler la tension d'alimentation pour le calcul de la puissance (par défaut 5V)
w [-]nœud... ajouter/supprimer des nœuds de la liste d'affichage
bientôt [nom de fichier] écrire le réseau dans un fichier
x noeud... supprimer le nœud des listes d'entrée
Affichage X [hôte : n] set/show X display (pour analyseur)

DESCRIPTION DES COMMANDES

Les commandes ont la syntaxe simple suivante :

cmd argument1 argument2 ... argn

cmd spécifie la commande à exécuter et le léger sont des arguments à cela
commander. Les arguments sont séparés par des espaces (ou tabulations) et la commande se termine par
a .

If cmd n'est pas l'une des commandes intégrées documentées ci-dessous, IRSIM ajoute ".cmd" au
nom de la commande et essaie d'ouvrir ce fichier en tant que fichier de commandes (voir "@" commande). Ainsi le
la commande "foo" a le même effet que "@ foo.cmd".

Notation:

... indique zéro ou plusieurs répétitions

[ ] les arguments inclus sont facultatifs

nœud nom du nœud ou du vecteur dans le réseau

nœud nom du nœud ou du vecteur dans le réseau, peut inclure '*' caractère générique qui correspond à n'importe quel
séquence de zéro ou plusieurs caractères. La paire de personnages '{' et '}' dénoter
itération sur les limites qu'elle délimite, par exemple : nom{1:10} va s'étendre dans
nom1, name2 ... nom10. Un 3e argument facultatif définit la foulée, par exemple :
nom{1:10:2} va s'étendre dans nom1, nom3, ... nom7, nom9.

| commentaire ...
Les lignes commençant par une barre verticale sont traitées comme des commentaires et ignorées -- utile pour
commentaires ou désactiver temporairement certaines commandes dans un fichier de commandes.

La plupart des commandes prennent un ou plusieurs noms de nœuds comme arguments. Chaque fois qu'un nom de nœud est
acceptable dans une ligne de commande, on peut aussi utiliser le nom d'un vecteur de bits. Dans ce cas,
la commande sera appliquée à chaque nœud du vecteur (le "t" et "d" traiter les vecteurs
spécialement, voir ci-dessous).

vecteur étiquette nœud...
Définissez un vecteur de bits nommé "label" qui inclut les nœuds spécifiés. Si tu
redéfinir un vecteur de bits, tous les attributs spéciaux de l'ancien vecteur (par exemple, être sur le
l'affichage ou la liste de trace) sont perdus. Les caractères génériques ne sont pas acceptés dans la liste des nœuds
noms puisque vous n'auriez aucun contrôle sur l'ordre dans lequel les nœuds correspondants seraient
apparaissent dans le vecteur.

Le simulateur exécute la plupart des commandes en silence. Pour savoir ce qui s'est passé, vous pouvez utiliser
l'une des commandes suivantes pour examiner l'état du réseau et/ou du simulateur.

set vecteur valeur
Attribuer valeur à vecteur. Par exemple, la séquence de commandes suivante :

vecteur BUS bit.1 bit.2 bit.3
set AUTOBUS 01x

La première commande définira AUTOBUS être un vecteur composé de nœuds bit.1, bit.2,
et bit.3. La deuxième commande affectera les valeurs suivantes :

bit.1 = 0
bit.2 = 1
bit.3 = X

La valeur peut être n'importe quelle séquence de [0,1,h,H,l,L,x,X], et doit être de la même longueur que
le vecteur de bits lui-même.

d [nœud]...
Affichage. Sans arguments affiche les valeurs de tous les nœuds et vecteurs de bits actuellement
sur la liste d'affichage (voir w commander). Avec des arguments, n'affiche que les nœuds ou
vecteurs de bits spécifiés. Voir aussi la commande " display " si vous souhaitez avoir le
liste d'affichage imprimée automatiquement à la fin de certaines commandes de simulation.

w [-]nœud...
Regarder/annuler la surveillance d'un ou plusieurs nœuds. Chaque fois qu'un "d" commande est donnée, chacun regardé
le nœud s'affichera comme ceci :

nœud1=0 nœud2=X ...

Pour supprimer un nœud de la liste surveillée, faites précéder son nom d'un « - ». Si nœud is
le nom d'un vecteur de bits, les valeurs des nœuds qui composent le vecteur seront
affiché comme suit :

étiquette=010100

où le premier 0 est la valeur du premier nœud de la liste, le premier 1 la valeur de
le deuxième nœud, etc.

affirmer nœud [masque] valeur
Affirmer que la valeur booléenne du nœud ou du vecteur nœud is valeur. Si l'
la comparaison échoue, un message d'erreur s'affiche. Si masque n'est alors donné que ceux
bits correspondant à zéro bits dans masque participer à la comparaison, n'importe quel personnage
autre que 0 sautera ce bit. Le format du message d'erreur est le suivant :

(tty, 3) : échec de l'assertion sur 'nom' 10X10 (1010X)

nom est le nom du vecteur, suivi de la valeur réelle et de la valeur attendue
valeur entre parenthèses. Si un masque est spécifié, alors les bits qui n'étaient pas
comparés sont imprimés comme '-'.

jusqu'au nœud [masque] valeur compter
Agit comme la commande assert sauf qu'elle nécessite un argument supplémentaire
qui est le nombre maximum de cycles d'horloge à exécuter. Au lieu de simplement tester le courant
état, comme assert, jusqu'à ce que les tests soient vrais et si faux, il exécute des cycles d'horloge jusqu'à ce que
la condition devient vraie ou le nombre s'épuise.

ana noeud...
Ceci est un raccourci pour le analyseur commande (décrite ci-dessous).

analyseur noeud...
Ajoutez le(s) nœud(s)/vecteur(s) spécifié(s) à la liste d'affichage de l'analyseur (voir irsim-
analyseur(3) pour une explication détaillée). Si la fenêtre de l'analyseur n'existe pas, elle
sera créé. Si aucun argument n'est fourni et que la fenêtre de l'analyseur existe déjà,
Rien ne se passe.

Affichage X [hôte:affichage]
Vous devez pouvoir vous connecter à un serveur X pour démarrer l'analyseur. Si vous n'avez pas
mettre en place le DISPLAY variable d'environnement correctement, la commande de l'analyseur peut échouer. Si
c'est le cas, vous pouvez utiliser le Affichage X commande pour le définir à partir du
simulateur. Sans arguments, le nom du serveur X actuel sera affiché.

clair Supprime tous les nœuds et vecteurs de la fenêtre de l'analyseur. Cette commande est la plus
utile dans les scripts de commande pour basculer entre les différents signaux affichés
sur l'analyseur.

"?" et "!" permettent à l'utilisateur d'aller à la fois en arrière et en avant dans le réseau. C'est
une aide au débogage utile.

? noeud...
Imprime un synopsis des nœuds nommés, y compris leurs valeurs actuelles et l'état
de tous les transistors qui affectent la valeur de ces nœuds. C'est le plus courant
façon d'errer dans le réseau à la recherche de ce qui n'allait pas.
La sortie de la commande ? ande vraiment

out=0 (vl=0.3 vh=0.8) (0.100 pf) est calculé à partir de :
canal n phi2=0 sortie=0 entrée=0 [1.0e+04, 1.3e+04, 8.7e+03]
tiré vers le bas par (a=1 b=1) [1.0e+04, 1.3e+04, 8.8e+03]
tiré vers le haut [4.0e+04, 7.4e+04, 4.0e+04]

La première ligne donne le nom et la valeur actuelle du nœud, sa logique basse et haute
seuils, délais de propagation bas-à-haut et haut-bas spécifiés par l'utilisateur si
présente, et sa capacité si non nulle. Les lignes suivantes listent le transistor
dont les sources ou drains se connectent à ce nœud : le type de transistor ("pulled down" est
un transistor à canal n connecté à gnd, "tiré vers le haut" est un pullup d'épuisement ou p-
transistor à canal connecté à vdd), les valeurs de la grille, de la source et du drain
nœuds, et les résistances de modélisation. Chaînes simples de transistors avec le même
type d'implant sont effondrés par le -s option en un seul transistor avec un
porte « composé » ; les portes composées apparaissent sous la forme d'une liste de nœuds entre parenthèses (par exemple, le
déroulant illustré ci-dessus). Les trois valeurs de résistance - statique, dynamique élevée,
dynamique bas -- sont donnés en kilo-ohms.

Enfin, tous les événements en attente pour un nœud sont répertoriés après les informations électriques.

! noeud...
Pour chaque nœud de la liste d'arguments, imprimez une liste de transistors contrôlés par ce
nœud.

tcap
Imprime une liste de tous les transistors avec leur source/drain en court-circuit ou dont
source/drain sont connectés aux alimentations. Ces transistors n'auront pas
effet sur la simulation autre que leur charge de capacité de grille. Même si
les transistors connectés aux alimentations sont de véritables erreurs de conception, le
simulateur ne se plaint pas d'eux.

N'importe quel nœud peut devenir une entrée -- le simulateur ne changera pas la valeur d'un nœud d'entrée jusqu'à ce que
il est libéré. Habituellement, sur des nœuds spécifiques - les entrées du circuit - sont manipulées
en utilisant les commandes ci-dessous, mais vous pouvez tromper avec un sous-circuit en forçant des valeurs sur interne
nœuds tout aussi facilement.

h noeud...
Forcer chaque nœud de la liste d'arguments à être une entrée élevée (1). Remplace le précédent
saisir des commandes si nécessaire.

l noeud...
Comme "h" sauf force les nœuds à être une entrée basse (0).

u noeud...
Comme "h" sauf force les nœuds à être une entrée non définie (X).

x noeud...
Supprime les nœuds de la liste d'entrée sur laquelle ils se trouvent. La prochaine simulation
L'étape déterminera la valeur de nœud correcte à partir du circuit environnant. C'est
l'état par défaut de la plupart des nœuds. Notez que cela ne force pas les nœuds à avoir un
Valeur "X" -- cela les supprime simplement des listes d'entrée.

entrées imprime les listes d'entrée haute, basse et indéfinie.

Il est possible de définir une séquence de valeurs pour un nœud, puis de cycler le circuit comme
autant de fois que nécessaire pour saisir chaque valeur et simuler le réseau. Un mécanisme similaire
est utilisé pour définir la séquence de valeurs que chaque nœud d'horloge traverse au cours d'une seule
cycle.

Chaque valeur est une liste de caractères (sans espace intermédiaire) choisis parmi les suivants :

1, h, H logique haut (1)
0, l, L logique bas (0)
u, U non défini (X)
x, X supprimer le nœud des listes d'entrée

Vraisemblablement, la longueur de la liste de caractères est la même que la taille du nœud/vecteur à
auquel il sera attribué. Les blancs (espaces et tabulations) sont utilisés pour séparer les valeurs dans un
séquence. La séquence est utilisée une valeur à la fois, de gauche à droite. Si plus de valeurs sont
nécessaire que fourni par la séquence, l'IRSIM relance simplement la séquence.

V [nœud [valeur...]]
Définissez un vecteur d'entrées pour un nœud. Après chaque cycle d'une commande "R", le nœud
est défini sur la valeur suivante spécifiée dans la séquence.

Sans arguments, efface toutes les séquences d'entrée (n'affecte pas les séquences d'horloge
toutefois). Avec un argument, "node", efface toutes les séquences d'entrée pour cela
nœud/vecteur.

horloge [nœud [valeur...]]
Définir une phase de l'horloge. Chaque cycle, chaque nœud spécifié par une commande d'horloge
doit parcourir ses valeurs respectives. Par exemple,

horloge phi1 1 0 0 0
horloge phi2 0 0 1 0

définit une horloge simple à 4 phases utilisant des nœuds phi1 et phi2. Alternativement, on pourrait
ont émis les commandes suivantes :

vecteur clk phi1 phi2
horloge horloge 10 00 01 00

Sans arguments, efface toutes les séquences d'horloge. Avec un argument, "node", efface
toutes les séquences d'horloge pour ce nœud/vecteur.

Une fois que les valeurs d'entrée ont été établies, leur effet peut être propagé à travers le
réseau avec les commandes suivantes. L'unité de temps simulée de base est 0.1 ns ; tout événement
les temps sont quantifiés en unités de temps de base. Une étape de simulation se poursuit jusqu'à taille de pas ns.
se sont écoulés et tous les événements programmés pour cet intervalle sont traités. Il est possible de
construire des circuits qui oscillent -- si la période d'oscillation est nulle, la simulation
la commande ne reviendra pas. Si cela semble être le cas, vous pouvez appuyer sur pour revenir à
l'interpréteur de commandes. Notez que si vous faites cela pendant que l'entrée est extraite d'un fichier,
le simulateur vous amènera à l'interpréteur de niveau supérieur, annulant toutes les entrées en attente de
tous les fichiers de commandes.

Lors de l'utilisation du modèle linéaire (voir le "modèle" commande) les temps de transition sont estimés en utilisant
une constante de temps RC calculée à partir du circuit environnant. Lorsque vous utilisez le modèle de commutateur,
les transitions sont programmées avec un délai unitaire. Ces calculs peuvent être annulés pour un
nœud en définissant ses paramètres tplh et tphl qui seront ensuite utilisés pour déterminer le temps
pour une transition.

s [n] Étape de simulation. Propage de nouvelles valeurs pour les entrées via le réseau, renvoie
quand n (défaut: taille de pas) ns. ont réussi. Si n est spécifié, il sera temporairement
remplacer le taille de pas valeur. Contrairement aux versions précédentes, cette valeur n'est PAS
mémorisée comme valeur par défaut pour le taille de pas paramètre. Si le mode d'affichage est
"automatique", la liste d'affichage actuelle est imprimée à la fin de cette
commande (voir commande " display ").

c [n] Cycle n fois (par défaut : 1) à travers l'horloge, tel que défini par le "horloge"commande.
Chaque phase de l'horloge dure taille de pas ns. Si le mode d'affichage est "automatique", la
la liste d'affichage actuelle est imprimée à la fin de cette commande (voir
"l’affichage" commande).

p Faites passer l'horloge à travers une phase (ou une étape de simulation). Par exemple, si l'horloge
est défini comme ci-dessus

horloge phi1 1 0 0 0
horloge phi2 0 0 1 0

alors "p" mettra phi1 à 1 et phi2 à 0, puis propagera les effets pour un
étape de simulation. La prochaine fois "p" est émis, phi1 et phi2 seront tous deux mis à 0,
et les effets propagés, et ainsi de suite. Si la "c" la commande est émise après "p" a
été utilisé, l'effet sera de franchir les 4 phases suivantes à partir desquelles le "p"
commande laissée de côté.

R [n] Exécutez le simulateur à travers n cycles (voir le "c" commande). Si n n'est pas présent
la course aussi longue que la séquence la plus longue. Si le mode d'affichage est automatique (voir
"l’affichage" commande) l'affichage est imprimé à la fin de chaque cycle. Chaque "R"
commande recommence au début de la séquence définie pour chaque nœud.

RETOUR Paisible
Revenir à l'heure spécifiée. Cette commande restaure l'état du circuit à partir du Paisible,
annulant efficacement tous les changements entre les deux. Notez que vous ne pouvez pas passer
historique précédemment vidé (voir affleurer commande ci-dessous) comme mécanisme d'historique
est utilisé pour restaurer l'état du réseau. Cette commande peut être utile pour annuler une erreur
dans les vecteurs d'entrée ou pour re-simuler le circuit avec un niveau de débogage différent.

chemin noeud...
afficher le(s) chemin(s) critique(s) pour la dernière transition du ou des nœuds spécifiés. Les
les transitions de chemin critique sont signalées en utilisant le format suivant :

nœud -> valeur @ Paisible (delta)

nœud est le nom du nœud, valeur est la valeur à laquelle le nœud
transitionné, Paisible est l'heure à laquelle la transition s'est produite, et delta est le
retard à travers le nœud depuis la dernière transition. Par exemple:

chemin critique pour la dernière transition de Hit_v1 :
phi1-> 1 @ 2900.0ns , le nœud était une entrée
PC_driver-> 0 @ 2900.4ns (0.4ns)
PC_b_q1-> 1 @ 2904.0 ns (3.6 ns)
tagDone_b_v1-> 0 @ 2912.8ns (8.8ns)
tagDone1_v1-> 1 @ 2915.3ns (2.5ns)
tagDone1_b_v1-> 0 @ 2916.0ns (0.7ns)
tagDone_v1-> 1 @ 2918.4ns (2.4ns)
tagCmp_b_v1-> 0 @ 2922.1ns (3.7ns)
tagCmp_v1-> 1 @ 2923.0ns (0.9ns)
Vbit_b_v1-> 0 @ 2923.2ns (0.2ns)
Hit_v1-> 1 @ 2923.5 ns (0.3 ns)

activité de temps [à_heure]
histogramme d'impression montrant la quantité d'activité du circuit dans l'intervalle de temps spécifié.
En fait, n'affiche que le nombre de nœuds qui ont eu leur transition la plus récente dans le
intervalle.

change de temps [à_heure]
imprimer la liste des nœuds qui ont changé de valeur pour la dernière fois dans l'intervalle de temps spécifié.

imprimer imprimer la liste de tous les événements en attente triés dans le temps. Le nœud associé à chaque
événement et l'heure programmée est imprimée.

imprimerx imprime une liste de tous les nœuds avec des valeurs non définies (X).

En utilisant la commande trace, il est possible d'obtenir plus de détails sur ce qui arrive à un
nœud particulier. Une grande partie de ce qui est dit ci-dessous est décrit beaucoup plus en détail dans "Logic-
level Simulation for VLSI Circuits" par Chris Terman, disponible auprès de Kluwer Academic Press.
Lorsqu'un nœud est tracé, le simulateur signale chaque changement de la valeur du nœud :

[événement #100] node out.1 : 0 -> 1 @ 407.6ns

L'index d'événement est incrémenté pour chaque événement traité. La transition est
signalé comme

et les sites anciens valeur -> nouvelle valeur @ rapport Paisible

Notez que puisque l'heure de traitement de l'événement peut différer de l'heure du rapport de l'événement,
le temps de rapport pour les événements successifs peut ne pas augmenter strictement.

Selon le niveau de débogage (voir le "déboguer" commande) chaque calcul d'un nœud tracé
la valeur est rapportée :

[événement #99] nœud clk : 0 -> 1 @ 400.2ns
valeur_finale( Charge ) V=[0.00, 0.04] => 0
..compute_tau( Charger )
{Rmin=2.2K Rdom=2.2K Rmax=2.2K} {Ca=0.06 Cd=0.17}
tauA=0.1 tauD=0.4 ns
[événement #99 : clk->1] transition pour Load : 1 -> 0 (tau=0.5ns, delay=0.6ns)

Dans cet exemple, un calcul pour le nœud Charge est signalé. Le calcul a été causé par
événement 99 dans lequel le nœud clk est passé à 1. Lors de l'utilisation du modèle linéaire (comme dans cet exemple)
le rapport montre

actuel valeur -> finale valeur

La deuxième ligne affiche des informations concernant l'analyse de la valeur finale (ou cc) pour le nœud
"Charge"; les tensions minimale et maximale ainsi que la valeur logique finale (0 dans ce
Cas).

Les trois lignes suivantes affichent les informations d'analyse temporelle utilisées pour estimer les retards. Les
la signification des variables affichées peut être trouvée dans la thèse de Chu : "Improved Models for Switch-
Simulation de niveau".

When the finale valeur est signalé comme "D", le nœud n'est pas connecté à une entrée et peut être
programmé pour décroître de sa valeur actuelle à X à un moment ultérieur (voir le "décadence"
commander).

"tau" est la constante de temps de transition calculée, "delta" est quand les conséquences de la
l'événement sera calculé ; la différence entre les deux temps est la façon dont l'IRSIM comptabilise le
forme de la forme d'onde de transition sur les étapes suivantes (voir la référence donnée ci-dessus pour plus
des détails). Les lignes médianes du rapport indiquent les paramètres de thévenine et de capacité
des réseaux environnants, c'est-à-dire les paramètres sur lesquels les calculs de transition sont
basé.

déboguer [ev dc tau taupe tw spk][off][tous]
Définir le niveau de débogage. Utile pour le débogage du simulateur et/ou du circuit à divers
niveaux du calcul. La signification des différents niveaux de débogage est la suivante :

ev afficher la mise en file d'attente et la suppression de la file d'attente.

dc afficher les informations de calcul en courant continu.

tau calcul de la constante de temps d'affichage (synchronisation).

taupe afficher le deuxième calcul de la constante de temps (synchronisation).

tw afficher les paramètres du réseau pour chaque étape de la promenade dans les arbres, cela s'applique à
courant continu, tauet taupe. Ce niveau de détail de débogage n'est généralement nécessaire que
lors du débogage du simulateur.

spk affiche les informations d'analyse des pics.

tous Ceci est un raccourci pour spécifier tout ce qui précède.

de rabais Cela désactive toutes les informations de débogage.

Si un commutateur de débogage est activé, lors d'une étape de simulation, à chaque fois qu'un nœud surveillé est
rencontré dans un événement, ce fait est indiqué à l'utilisateur avec un événement
Info. Si un nœud continue d'apparaître dans cette impression, il y a de fortes chances que sa valeur soit
oscillant. Vice versa, si votre circuit ne se stabilise jamais (c'est-à-dire qu'il oscille), vous
pouvez utiliser le "déboguer" et "t" pour trouver le(s) nœud(s) qui causent le
problème.

Sans aucun argument, la commande debug imprime le niveau de débogage actuel.

t [-]nœud...
définir l'indicateur de trace pour le nœud. Active les différentes impressions décrites ci-dessus. Préface
le nom du nœud avec '-' efface son indicateur de trace. Si "wnode" est le nom d'un vecteur,
chaque fois qu'un nœud de ce vecteur change de valeur, l'heure actuelle et les valeurs de
tous les vecteurs tracés sont imprimés. Cette fonction est utile pour regarder la relative
temps d'arrivée des valeurs aux nœuds dans un vecteur de sortie.

Commandes de l'interface système :

> nom de fichier
Écrire l'état actuel de chaque nœud dans le fichier spécifié. Utile pour faire un
point d'arrêt dans votre simulation. Ne stocke que les valeurs, ce n'est donc pas vraiment utile pour
« vider » une exécution pour une utilisation ultérieure, c'est-à-dire que les listes d'entrée actuelles, les événements en attente, etc. sont
NON enregistré dans le fichier d'état.

< nom de fichier
Lire à partir du fichier spécifié, en réinitialisant la valeur de chaque nœud comme indiqué. Noter
ce réseau doit déjà exister et être identique au réseau utilisé pour créer le
dump avec la commande ">". Ces commandes de sauvegarde d'état sont vraiment fournies donc
que les séquences d'initialisation compliquées n'ont besoin d'être simulées qu'une seule fois.

<< nom de fichier
Pareil que "<", sauf que cette commande restaurera la contribution statut du
nœuds aussi. Cependant, il ne restaure pas les événements en attente.

connard [nom de fichier]
Écrivez l'historique de la simulation dans le fichier spécifié, c'est-à-dire ; tous
transitions depuis le temps = 0. Le fichier résultant est un binaire indépendant de la machine
fichier, et contient toutes les informations nécessaires pour continuer la simulation au moment
le vidage a lieu. Si le nom de fichier n'est pas spécifié, il sera construit par
en prenant le nom du sim_file (à partir de la ligne de commande) et en ajoutant ".hist" à
le

lire nom de fichier
Lit le fichier de vidage d'historique spécifié dans le réseau actuel. Cette commande va
restaurer l'état du circuit à celui du fichier de vidage, en écrasant le courant
Etat.

affleurer [temps]
Si la consommation mémoire due à la maintenance de l'historique devient prohibitive, cette commande
peut être utilisé pour libérer la mémoire consommée par l'historique jusqu'à l'heure spécifiée.
En l'absence d'arguments, tout l'historique jusqu'au point actuel de la simulation est libéré.
Le vidage de l'historique peut invalider une simulation incrémentielle et les portions
rincé n'apparaîtra plus dans la fenêtre de l'analyseur.

chemin défini [chemin...]
Définissez le chemin de recherche des fichiers de commandes. Chemin devrait être une séquence de répertoires à
être recherché pour les fichiers ".cmd", "." c'est-à-dire le répertoire courant. Par exemple :

chemin défini . /usr/me/rsim/cmds /cad/lib/cmds

Sans arguments, il affichera le chemin de recherche actuel. Au départ c'est juste
"."

impression texte...
Imprime simplement le texte sur la console de l'utilisateur. Utile pour tenir l'utilisateur au courant de
progresser à travers un long fichier de commandes.

fichier journal [nom de fichier]
Créez un fichier journal avec le nom spécifié, en fermant le fichier journal actuel le cas échéant ; sinon
argument, fermez simplement le fichier journal actuel. Toutes les sorties qui apparaissent sur la console de l'utilisateur
sera également placé dans le fichier journal. La sortie vers le fichier journal est intelligemment formatée afin
que les fichiers journaux eux-mêmes peuvent servir de fichiers de commandes.

journal de configuration [nom de fichier | désactivé]
Enregistrez toutes les modifications nettes, ainsi que les messages d'erreur résultants, dans le fichier spécifié
(voir "Mise à jour"). Les changements nets sont toujours ajoutés au fichier journal, précédant
chaque séquence de changements à la date actuelle. Si l'argument est de rabais puis net-
les modifications ne seront pas enregistrées. Sans arguments, le nom du fichier journal actuel est
imprimé.

La valeur par défaut est de toujours enregistrer les changements nets ; si aucun nom de fichier n'est spécifié (en utilisant le
"journal de configuration" commande) le nom de fichier par défaut irsim_changes.log sera utilisé. Le journal-
les fichiers sont formatés de manière à ce que les fichiers journaux puissent eux-mêmes être utilisés comme fichiers de changement net.

bientôt [nom de fichier]
Écrire le réseau actuel dans le fichier spécifié. Si le nom de fichier n'est pas spécifié,
il sera construit en prenant le nom du sim_file (depuis la ligne de commande)
et en y ajoutant ".inet". Le fichier résultant peut être utilisé dans une future simulation
exécuter, comme s'il s'agissait d'un fichier sim. Le fichier produit est un binaire indépendant de la machine
fichier, qui est généralement d'environ 1/3 de la taille du fichier sim et environ 8 fois
plus rapide à charger.

Paisible [commander]
Sans argument, un récapitulatif du temps utilisé par le simulateur est imprimé. Si des arguments
reçoivent la commande spécifiée est chronométré et un résumé de temps est imprimé lorsque le
la commande se termine. Le format du résumé de temps est Uu Ss E P% M, où:

U => Temps utilisateur en secondes
S => Temps système en secondes
E => Temps écoulé, minutes:secondes
P => Pourcentage de temps CPU (((U + S)/E) * 100)
M => Utilisation médiane du texte, des données et de la taille de la pile

q
Terminer le flux d'entrée actuel. S'il est saisi au niveau supérieur, le simulateur
revenir au système ; sinon, l'entrée revient au flux d'entrée précédent.

sortie [n]
Sortie au système, n est l'état signalé (par défaut : 0).

Les paramètres du simulateur sont définis avec les commandes suivantes. Sans arguments, chacun des
commandes imprime simplement la valeur actuelle du paramètre.

décadence [n]
Réglez le paramètre de décroissance sur n ns. (par défaut : 0). S'il est différent de zéro, il indique le nombre de ns.
il faut que la charge d'un nœud se désintègre en X. Une valeur de 0 n'implique aucune désintégration du tout.
Vous ne pouvez pas spécifier ces paramètres séparément pour chaque nœud, mais cela ne s'avère pas
être un problème. Voir "rapport"commande.

l’affichage [-][fichier cmd][automatique]
régler/réinitialiser les modes d'affichage, qui sont

fichier cmd les commandes exécutées à partir des fichiers de commandes sont affichées pour l'utilisateur avant
exécution. La valeur par défaut est fichier cmd = DE.

automatique imprimer la liste d'affichage actuelle (voir "d" commande) après l'achèvement de
"s"Ou"c". La valeur par défaut est automatique = SUR LA.

Faire précéder les commandes précédentes d'un "-" désactive cette option d'affichage.

modèle [Nom]
Définissez le modèle de simulation sur l'un des éléments suivants :

interrupteur Modélisez les transistors comme des commutateurs commandés en tension. Ce modèle utilise l'intervalle
niveaux logiques, sans tenir compte des résistances des transistors, donc les circuits
avec des transistors de combat peut ne pas être modélisé avec précision. Les retards peuvent ne pas
refléter le oui la vitesse du circuit aussi.

linéaire Modélisez les transistors comme une résistance en série avec un interrupteur commandé en tension.
Ce modèle utilise une constante de temps unique calculée à partir du RC résultant
réseau et utilise un modèle à deux constantes pour analyser le partage des charges et
des pointes.

La valeur par défaut est le linéaire maquette. Vous pouvez modifier le modèle de simulation à tout moment
-- même avec des événements en attente -- car seuls les nouveaux calculs sont affectés. Sans
arguments, cette commande imprime le nom du modèle actuel.

rapport [niveau]
Lorsque le niveau est différent de zéro, signalez tous les nœuds qui sont définis sur X en raison de la baisse de charge,
indépendamment du fait qu'ils soient suivis ou non. Le réglage du niveau à zéro désactive
rapport, mais pas la carie elle-même (voir "décadence" commande).

taille de pas [n]
Spécifiez la durée de l'étape de simulation ou de la phase d'horloge. n is spécifié en ns.
(nanosecondes). Nombres à virgule flottante avec jusqu'à 1 chiffre après la virgule décimale
sont autorisés. D'autres décimales sont tronquées (c'est-à-dire 10.299 == 10.2).

délai unitaire [n]
Lorsque différent de zéro, forcer toutes les transitions à prendre n ns. Mettre le paramètre à zéro
désactive cette fonctionnalité. La résolution est la même que pour le "taille de pas"commande.

stats Imprimez les statistiques d'événement, comme suit :

changements = 26077
plates (cns) = 208 (34)
plates = 0.79%, cons_punted = 16.35%
événements = 28012; évaluations = 27972

change est le nombre total de transitions enregistrées, coup de volée est le nombre de
événements ponctuels, (CNS) est le nombre d'événements consécutifs de dégagement (un événement de dégagement
qui a provoqué un autre événement). L'avant-dernière ligne indique le pourcentage de bottés
événements par rapport au nombre total d'événements, et le pourcentage de
événements consécutifs bottés par rapport au nombre d'événements bottés. Le dernier
La ligne indique le nombre total d'événements (nevents) et le nombre d'évaluations nettes.

Commandes de simulation incrémentielle :

Irsim prend en charge les modifications incrémentielles du réseau et la resimulation du résultat
réseau. Cela se fait de manière incrémentale afin que seuls les nœuds affectés par les changements,
directement ou indirectement, sont réévalués.

Mise à jour nom de fichier
Lire les jetons net-change à partir du fichier spécifié. Les commandes net-change suivantes
sont disponibles:

add type grille source drain longueur largeur [surface]
dtype elete grille source drain longueur largeur [surface]
mtype ove grille source drain longueur largeur [surface] gsd
cvaleur du nœud ap
N nœud métal-zone poly-zone diff-zone diff-perim
M nœud M2A M2P MA MP PA PP DA DP PDA PDP
tnœud d'hresh bas haut
Dnœud relais tplh tphl

Pour une description détaillée de ce fichier, voir change net(5). Notez qu'il s'agit d'un
interface expérimentale et est susceptible de changer à l'avenir.

Notez que cette commande ne resimule pas le circuit afin qu'il puisse quitter le
réseau dans un état incohérent. Habituellement, cette commande sera suivie d'un nom
commande (voir ci-dessous), si ce n'est pas le cas alors c'est à l'utilisateur d'initialiser
l'état du circuit. Cette commande n'existe que pour des raisons historiques et
disparaître probablement à l'avenir. Son utilisation est déconseillée.

nom [nom de fichier]
Lire les jetons net-change à partir du fichier spécifié (voir change net(5)) et progressivement
resimuler le circuit jusqu'à l'heure de simulation actuelle (pas encore pris en charge).

ires n L'algorithme incrémentiel garde une trace des nœuds s'écartant de leur comportement passé
comme enregistré dans l'historique du réseau. Lors de la resimulation, un nœud est considéré comme
s'écarter de son histoire si son nouvel état s'avère différent à l'intérieur n ns de
son état antérieur. Cette commande permet de changer la résolution incrémentale.
Sans arguments, il imprimera la résolution actuelle. La résolution par défaut est
0 ns.

fichier powlog [nom de fichier]
Ouvre nom de fichier pour la rédaction de rapports de transition nodale. Le format du rapport est
la même chose que vous obtenez lorsque vous tracez un nœud normalement. Sans arguments powlogfile juste
ferme le fichier journal ouvert et imprime un résumé de la dissipation de puissance. Nodal
les transitions dans les entrées sont pas inclus dans le décompte des transitions.

tracer [[-]nœud...]
La syntaxe de cette commande est la même que la normale t (tracer) commande. Si tu
souhaitez tracer et signaler la dissipation de puissance pour tous les nœuds, utilisez simplement powtrace *.
Utiliser la trace -nœud si vous souhaitez exclure certains nœuds.

pas de force
Active ou désactive l'affichage de l'estimation de puissance dynamique après chaque pas de temps. Les
la puissance dynamique affichée sera uniquement pour les nœuds qui ont été sélectionnés à l'aide de la
tracer commander.

approvisionnement Tension
Définit le V variable à utiliser dans le P=CV^2/(2t) expression où C est la capacité
commuté, et t est le pas de temps. La valeur par défaut pour vsupply est de 5.0 volts.

sommecap Donne une somme de tous capacités nodales, pas seulement ceux sélectionnés avec le tracer
commander.

Utilisez irsim en ligne en utilisant les services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

Commandes Linux

Ad




×
Publicité
❤ ️Achetez, réservez ou achetez ici — gratuitement, contribue à maintenir la gratuité des services.