2 #define RVALS 2 // max bits in reg/wire divided by 32
22 typedef unsigned long long int rval;
23 #define Sizeofrval sizeof(rval)
49 void init (
int,
int,
const char*);
50 void init(
const char* rname){
init(0, 0, rname);};
51 void init(
Signal* shost,
int h,
int l,
const char* rname);
58 void setorname (
std::string& rname){orname = rname;};
59 void setbrackets(
const char*
l,
const char*
r){lb =
l; rb =
r;};
126 void input (
int,
int,
const char*);
128 void clock (
const char* rname);
130 void output (
int,
int,
const char*);
135 void inout (
int,
int,
const char*);
138 void reg (
int,
int,
const char*);
139 void initreg (
int,
int,
const char*);
140 void reg (
const char* rname){
reg(0, 0, rname);};
142 void wire (
int,
int,
const char*);
143 void wire (
int,
int,
const char*,
int);
178 operator int(){
return (
unsigned int)
r;};
180 void init (
int,
int,
const char*);
191 void reg (
int,
int,
int,
int,
const char*);
192 void reg (
int nup,
int ndown,
const char* rname) {
reg (0, 0, nup, ndown, rname);};
219 void init (
const char*,
const char*);
220 void init (
const char*,
const char*,
module* fixt);
221 void init (
const char*,
const char*,
int);
237 std::streambuf *outbuf;
260 void init (
int,
int,
const char*);
274 #define MAXSTIM 10000
281 void AddParameter(
string ln) {pars[npar] = ln; npar++;};
282 void AddDeclarator(
string ln){decls[ndecl] = ln; ndecl++;};
283 void AddComment(
string ln){ln +=
"\n"; decls[ndecl] = ln; ndecl++;};
284 void AddIO(
string ln);
286 string& PrintIO(
bool col);
287 void Indent(){indpos++; PrepMargin();};
288 void Outdent(){indpos--; PrepMargin();};
289 string& getmargin(){
int t = nomargin; nomargin = 0;
return (t) ? zeromargin :
margin;};
290 int getpos(){
return indpos;};
291 void setpos(
int pos){indpos = pos; PrepMargin();};
292 void setprintassign(
int y){
pa =
y;};
293 int printassign(){
return pa;};
294 void enablemargin (
int i){nomargin = !
i;};
295 int getenablemargin (){
return !nomargin;};
296 void setFileOpen(
int fo){
VFileOpen = fo;};
330 string margin, zeromargin;
354 #define endsystem exit(0);
356 #define beginsystem glc.setce(0); glc.passn_inc(); do { glc.setchange(0);
357 #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 *)