Questo è il comando alliance-genpat che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS
PROGRAMMA:
NOME
genpat, Un generatore di file di pattern procedurali
SINOSSI
genpat [-v] [-K] [file]
DESCRIZIONE
Genpat è un insieme di funzioni C che consente una descrizione procedurale del file di pattern di input
per il simulatore logico ASIMUT. Unix genpat il comando accetta un file C come input e
produce un file di descrizione del modello come output. L'estensione ".c" non deve essere data. Il
file generato da genpat è in formato pat, quindi SI CONSIGLIA VIVAMENTE DI VEDERE colpetto(5)
PRIMA DI QUESTO MANUALE.
VERSIONI
-v modalità verbosa
-k mantiene l'eseguibile insieme alla compilazione Makefile dopo il completamento
GENPAT RISORSE FORMATO
Dal punto di vista dell'utente, genpat è un linguaggio di descrizione del modello che utilizza tutto lo standard C
servizi (includi, definisci, variabili, loop, ...). Funzioni fornite da genpat sono a
essere utilizzato in un determinato ordine. Usarli in un ordine diverso non causerà il crash del sistema, ma lo farà
provocare errori di esecuzione. Di seguito la descrizione del file di input.
A colpetto Il file di formato può essere diviso in due parti: parte di dichiarazione e parte di descrizione.
La parte di dichiarazione è l'elenco di ingressi, uscite, segnali interni e registri.
Gli ingressi devono essere forzati ad un certo valore e tutti gli altri devono essere osservati durante
simulazione.
La parte della descrizione è un insieme di modelli, in cui ogni modello definisce il valore degli input
e uscite. Il numero del modello rappresenta in realtà il tempo assoluto per il simulatore.
Allo stesso modo, a genpat il file può essere diviso in due parti: parte di dichiarazione e parte di descrizione.
Le funzioni relative alla dichiarazione devono essere chiamate prima di qualsiasi funzione relativa alla
parte descrittiva.
dichiarazione parte
La prima cosa che dovresti fare in questa parte è dare il nome del file di output
(Vedi DEF_GENPAT(3)). Quindi, questa parte consente di dichiarare gli input, il
uscite e punti di osservazione interni (vedi DICHIARARE(3)). È anche possibile
creare array virtuali (vedi ARRAY(3)).
descrizione parte
Dopo che tutti i segnali sono stati dichiarati, puoi iniziare a definire i valori di input che sono
da applicare agli ingressi del circuito o ai valori di uscita che devono essere
confrontare con i valori prodotti durante la simulazione. (vedere INFLUENZARE(3)). Genpat
descrive lo stimolo per evento: vengono descritte solo le transizioni di segnale. Questo
parte consente anche di dare istruzioni allo strumento di simulazione per salvare il
stato del circuito al termine della simulazione. (vedere RISPARMIA(3)). ultima cosa tu
dovrebbe fare in questa parteègenerare il file di output (vedi SAV_GENPAT(3)).
FUNZIONI
DEF_GENPAT() definisce il nome del file di output.
SAV_GENPAT() creare il file di output
DICHIARARE() dichiara input, output e punti di osservazione interni.
VETTORE() consente di raggruppare segnali dello stesso tipo in un "array virtuale" in
per facilitare la loro manipolazione
DENTRO() cambia i valori dei registri tra due pattern.
INTACCARE() assegna un valore ad un segnale, ad un dato numero di pattern. Questo valore viene mantenuto
sul segnale fino a quando non viene assegnato un nuovo valore al segnale.
SALVA() informa lo strumento di simulazione di salvare lo stato del circuito alla fine del
simulazione
ETICHETTA() dà un'etichetta al modello corrente
GETCPAT() restituisce il numero del modello corrente
ESEMPI
#includere
#include "genpat.h"
char *inttostr(intero)
intero intero;
{
char * str;
str = (carattere *) mbkalloc (32 * sizeof (carattere));
sprintf (str, "%d",entier);
ritorno(str);
}
/*----------------*/
/* fine della descrizione */
/*----------------*/
principale ()
{
int i;
intj;
int cur_vect = 0;
DEF_GENPAT("esempio");
/* interfaccia */
DICHIAR ("a", ":2", "X", IN, "3 fino a 0", "" );
DICHIAR ("b", ":2", "X", IN, "3 fino a 0", "" );
DICHIAR ("s", ":2", "X", OUT, "3 fino a 0", "" );
DICHIAR ("vdd", ":2", "B", IN, "", "" );
DICHIAR ("vss", ":2", "B", IN, "", "" );
ETICHETTA ("sommatore");
AFFETTO ("0", "vdd", "0b1");
AFFETTO ("0", "vss", "0b0");
per (i=0; i<16; i++)
{
per (j=0; j<16; j++)
{
AFFECT (inttostr(cur_vect), "a", inttostr(i) );
AFFECT (inttostr(cur_vect), "b", inttostr(j) );
cur_vect++;
}
}
SAV_GENPAT ();
}
AMBIENTE VARIABILI
Genpat legge la variabile d'ambiente VH_PATSFX per dare un'estensione al file dei risultati.
Usa Alliance-genpat online utilizzando i servizi onworks.net