2 #define RVALS 2 // max bits in reg/wire divided by 32
23 typedef unsigned long long int rval;
24 #define Sizeofrval sizeof(rval)
50 void init (
int,
int,
const char*);
51 void init(
const char* rname){
init(0, 0, rname);};
52 void init(
Signal* shost,
int h,
int l,
const char* rname);
56 std::string& getorname(){
return orname;};
57 std::string& getcatname();
58 void setname (std::string& rname){
name = rname;};
59 void setorname (std::string& rname){orname = rname;};
60 void setbrackets(
const char*
l,
const char*
r){lb =
l; rb =
r;};
127 void input (
int,
int,
const char*);
129 void clock (
const char* rname);
131 void output (
int,
int,
const char*);
136 void inout (
int,
int,
const char*);
139 void reg (
int,
int,
const char*);
140 void initreg (
int,
int,
const char*);
141 void reg (
const char* rname){
reg(0, 0, rname);};
143 void wire (
int,
int,
const char*);
144 void wire (
int,
int,
const char*,
int);
179 operator int(){
return (
unsigned int)
r;};
181 void init (
int,
int,
const char*);
192 void reg (
int,
int,
int,
int,
const char*);
193 void reg (
int nup,
int ndown,
const char* rname) {
reg (0, 0, nup, ndown, rname);};
220 void init (
const char*,
const char*);
221 void init (
const char*,
const char*,
module* fixt);
222 void init (
const char*,
const char*,
int);
238 std::streambuf *outbuf;
261 void init (
int,
int,
const char*);
275 #define MAXSTIM 10000
282 void AddParameter(
string ln) {pars[npar] = ln; npar++;};
283 void AddDeclarator(
string ln){decls[ndecl] = ln; ndecl++;};
284 void AddComment(
string ln){ln +=
"\n"; decls[ndecl] = ln; ndecl++;};
285 void AddIO(
string ln);
287 string& PrintIO(
bool col);
288 void Indent(){indpos++; PrepMargin();};
289 void Outdent(){indpos--; PrepMargin();};
290 string& getmargin(){
int t = nomargin; nomargin = 0;
return (t) ? zeromargin :
margin;};
291 int getpos(){
return indpos;};
292 void setpos(
int pos){indpos =
pos; PrepMargin();};
293 void setprintassign(
int y){pa =
y;};
294 int printassign(){
return pa;};
295 void enablemargin (
int i){nomargin = !
i;};
296 int getenablemargin (){
return !nomargin;};
297 void setFileOpen(
int fo){
VFileOpen = fo;};
331 string margin, zeromargin;
355 #define endsystem exit(0);
357 #define beginsystem glc.setce(0); glc.passn_inc(); do { glc.setchange(0);
358 #define endsystem } while (glc.getchange() ? 1 : glc.getce() ? 0 : glc.setce(1));
void inout(const char *rname)
void output(const char *rname)
Signal operator>=(Signal)
void init(int, int, const char *)
void reg(int, int, const char *)
void reg(int, int, int, int, const char *)
Signal operator!=(Signal)
void makemask(int hpar, int lpar)
void sethlmask(int high, int low, rval imask)
Signal operator==(Signal)
Signal operator()(Signal, Signal)
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision bits
void wire(int, int, const char *)
Signal operator>>(Signal)
void wire(const char *rname)
Signal operator<=(Signal)
void init(int, int, const char *)
void init(const char *rname)
virtual void operator()()
void reg(const char *rname)
Signal operator&&(Signal)
friend Signal rand(Signal)
void reg(int nup, int ndown, const char *rname)
friend Signal ror(Signal)
void init(const char *, const char *)
void init(int, int, const char *)
Signal operator<<(Signal)
void initreg(int, int, const char *)
Signal ifelse(Signal, Signal, Signal)
Signal operator||(Signal)
void setparent(module *rparent)
void clock(const char *rname)
char * constant(int bits, char *val)
void operator=(Signal arg)
Signal * AddOutReg(Signal arg)
unsigned long long int rval
void pushswitch(Signal arg)
Signal & operator[](Signal)
void input(const char *rname)
friend Signal rxor(Signal)
void inout(int, int, const char *)
void output(int, int, const char *)
parameter(const char *rname, Signal arg)
void input(int, int, const char *)