OpenCores
URL https://opencores.org/ocsvn/cic/cic/trunk

Subversion Repositories cic

[/] [cic/] [trunk/] [source/] [integrator.cpp] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 ahmed.shah
#include "systemc.h"
2
#include "integrator.h"
3
 
4
int sc_main(int argc, char* argv[])
5
{
6
        sc_clock                        CLK("CLK", 10, SC_NS);
7
        sc_signal<bool>         CLR;
8
        sc_signal<double>       integratorIN;
9
        sc_signal<double>       internal;
10
        sc_signal<double>       integratorOUT;
11
 
12
        integrator DUT0("DUT0");
13
        DUT0.CLR(CLR);
14
        DUT0.CLK(CLK);
15
        DUT0.integratorIN(integratorIN);
16
        DUT0.integratorOUT(internal);
17
 
18
        integrator DUT1("DUT1");
19
        DUT1.CLR(CLR);
20
        DUT1.CLK(CLK);
21
        DUT1.integratorIN(internal);
22
        DUT1.integratorOUT(integratorOUT);
23
 
24
        sc_trace_file *fp;
25
        fp = sc_create_vcd_trace_file("wave");
26
        fp -> set_time_unit(100, SC_PS);
27
 
28
        sc_trace(fp, CLR, "CLR");
29
        sc_trace(fp, CLK, "CLK");
30
        sc_trace(fp, integratorIN, "integratorIN");
31
        sc_trace(fp, internal, "internal");
32
        sc_trace(fp, integratorOUT, "integratorOUT");
33
        sc_trace(fp, DUT0.r_delay, "delay0");
34
        sc_trace(fp, DUT1.r_delay, "delay1");
35
 
36
        CLR = true;
37
        integratorIN = 0;
38
        sc_start(73, SC_NS);
39
 
40
        CLR = false;
41
        integratorIN = 1;
42
        sc_start(150, SC_NS);
43
 
44
        CLR = false;
45
        integratorIN = 0;
46
        sc_start(40, SC_NS);
47
 
48
        CLR = false;
49
        integratorIN = 1;
50
        sc_start(40, SC_NS);
51
 
52
        sc_close_vcd_trace_file(fp);
53
 
54
        return 0;
55
}
56
 
57
// g++ -I$SYSTEMC_HOME/include -L$SYSTEMC_HOME/lib-linux integrator.cpp -lsystemc -lm -o int.o

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.