GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  GENPAT (1)

NAME

genpat, A procedural pattern file generator

CONTENTS

Synopsis
Description
Options
Genpat File Format
Functions
Examples
Environment Variables
See Also

SYNOPSIS

genpat [-v] [-k] [file]

[Include document man1/alc_origin.1]

DESCRIPTION

Genpat is a set of C fonctions that allows a procedural description of input pattern file for the logic simulator ASIMUT. The Unix genpat command accepts a C file as input and produces a pattern description file as output. The extension ".c" is not to be given. The file generated by genpat is in pat format, so IT IS STRONGLY RECOMMENDED TO SEE pat(5) BEFORE THIS MANUAL.

OPTIONS

-v verbose mode
-k keeps the executable along with the compilation Makefile after completion

GENPAT FILE FORMAT

From a user point of view, genpat is a pattern description language using all standard C facilities (include, define, variables, loop, ...). Fonctions provided by genpat are to be used in a given order. Using them in a different order won’t crash the system, but will result in execution errors. Here follows the description of the input file.

A pat format file can be divided in two parts : declaration and description part.

The declaration part is the list of inputs, outputs, internal signals and registers. Inputs are to be forced to a certain value and all the others are to be observed during simulation.

The description part is a set of patterns, where each pattern defines the value of inputs and outputs. The pattern number represents actually the absolute time for the simulator.

Similarly, a genpat file can be divided in two parts : declaration and description part. Functions related to the declaration must be called before any function related to the description part.

declaration part
  The first thing you should do in this part is to give the output file’s name (see DEF_GENPAT(3)). Then, this part allows you to declare the inputs, the outputs, and internal observing points (see DECLAR(3)). It is also possible to create virtual arraies (see ARRAY(3)).
description part
  After all signals are declared, you can begin to define input values which are to be applied to the inputs of the circuit or output values which are to be compare with the values produced during the simulation. (see AFFECT(3)). Genpat describes the stimulus by event : only signal transitions are described. This part also allows you to give instructions to the simulation tool to save the state of the circuit at the end of the simulation. (see SAVE(3)). Last thing you should do in this part is to generate the output file (see SAV_GENPAT(3)).

FUNCTIONS

DEF_GENPAT() defines the output file’s name.
SAV_GENPAT() make the output file be generated
DECLAR() declares inputs, outputs, and the internal observing points.
ARRAY() allows signals of the same type to be groupped in an "virtual array" in order to ease their manipulation
INIT() changes the values of registers between two patterns.
AFFECT() assigns a value to a signal, at a given pattern number. This value is kept on the signal until a new value is assigned to the signal.
SAVE() informs the simulation tool to save the state of the circuit at the end of simulation
LABEL() gives a label to the current pattern
GETCPAT() return the number of the current pattern

EXAMPLES

#include <stdio.h>
#include "genpat.h"

char *inttostr(entier) int entier; { char *str; str = (char *) mbkalloc (32 * sizeof (char)); sprintf (str, "%d",entier); return(str); } /*------------------------------*/ /* end of the description */ /*------------------------------*/

main () { int i; int j; int cur_vect = 0;

DEF_GENPAT("example");

/* interface */ DECLAR ("a", ":2", "X", IN, "3 downto 0", "" ); DECLAR ("b", ":2", "X", IN, "3 downto 0", "" ); DECLAR ("s", ":2", "X", OUT, "3 downto 0", "" ); DECLAR ("vdd", ":2", "B", IN, "", "" ); DECLAR ("vss", ":2", "B", IN, "", "" );

LABEL ("adder"); AFFECT ("0", "vdd", "0b1"); AFFECT ("0", "vss", "0b0");

for (i=0; i<16; i++) { for (j=0; j<16; j++) { AFFECT (inttostr(cur_vect), "a", inttostr(i) ); AFFECT (inttostr(cur_vect), "b", inttostr(j) ); cur_vect++; } }

SAV_GENPAT (); }

ENVIRONMENT VARIABLES

Genpat reads the environment variable VH_PATSFX to give the result file an extension.

SEE ALSO

AFFECT(3), ARRAY(3), DECLAR(3), DEF_GENPAT(3), GETCPAT(3), INIT(3), LABEL(3), SAVE(3), SAV_GENPAT(3), pat(5), asimut(1)

[Include document man1/alc_bug_report.1]

Search for    or go to Top of page |  Section 1 |  Main Index


ASIM/LIP6 GENPAT (1) October 1, 1997

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.