SystemC std_logic resolved type

Z

zoro

Hi,
I have encountred a problem while working with resolved sc_logic type.
Considering using resolved sc_logic even for signals, when I assign a
new value to such signals their value change to 'X'.

for example in the following code, "sa" signal gets 'X' at 25 ns
instead of '1'; This case doesn't happen for a,b,c signals.

-------Header
SC_MODULE (testbench) {

sc_signal_rv<8> a;
sc_signal_rv<8> b;
sc_signal_rv<8> c;
sc_signal_resolved sa;
sc_signal_resolved sb;
sc_signal_resolved sc;

sc_signal_rv<8> z;

void p1 ();
....
SC_CTOR(testbench) {

sa = (sc_logic )'0';
SC_THREAD(p1);

SC_THREAD(p2);
....
};
#endif
---------CPP
void testbench::p1(){
while(true){
sa = (sc_logic )'0';
wait(25,SC_NS);
sa = (sc_logic )'1';
wait(25,SC_NS);
}
}
 
A

Alan Fitch

zoro said:
Hi,
I have encountred a problem while working with resolved sc_logic type.
Considering using resolved sc_logic even for signals, when I assign a
new value to such signals their value change to 'X'.

for example in the following code, "sa" signal gets 'X' at 25 ns
instead of '1'; This case doesn't happen for a,b,c signals.

-------Header
SC_MODULE (testbench) {

sc_signal_rv<8> a;
sc_signal_rv<8> b;
sc_signal_rv<8> c;
sc_signal_resolved sa;
sc_signal_resolved sb;
sc_signal_resolved sc;

sc_signal_rv<8> z;

void p1 ();
...
SC_CTOR(testbench) {

sa = (sc_logic )'0';
SC_THREAD(p1);

SC_THREAD(p2);
...
};
#endif
---------CPP
void testbench::p1(){
while(true){
sa = (sc_logic )'0';
wait(25,SC_NS);
sa = (sc_logic )'1';
wait(25,SC_NS);
}
}

I don't think we can answer that question without
knowing what happens in process p2().

I suggest you post the complete code to the "SystemC Help"
web forum at www.systemc.org,

kind regards

Alan


--
Alan Fitch
Consultant

DOULOS - Developing Design Know-how
VHDL * Verilog * SystemC * Perl * Tcl/Tk * Verification *
Project Services

Doulos Ltd. Church Hatch, 22 Market Place, Ringwood,
Hampshire, BH24 1AW, UK
Tel: +44 (0)1425 471223 mail:
(e-mail address removed)
Fax: +44 (0)1425 471573 Web:
http://www.doulos.com

The contents of this message may contain personal views
which are not the
views of Doulos Ltd., unless specifically stated.
 
?

=?ISO-8859-1?Q?Nicolai_J=F8rgensen?=

The problem might be that you should typecast 1 in stead of '1'.

/Nicolai
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,535
Members
45,007
Latest member
obedient dusk

Latest Threads

Top