cast from sc_ufixed to int in systemC

Discussion in 'C Programming' started by Andreas, Oct 10, 2003.

  1. Andreas

    Andreas Guest

    Hi!

    I'm working with systemC to realize a processor like structure in HDL.

    I have a signed variable (RAM) declared after the systemC syntax
    "sc_ufixed<32,32> RAM".

    I also have an signed integer in my testbench, "int myIplImage.depth".

    If I give this unsigned RAM the value of a signed variable
    myIplImage.depth in my testbench,
    ::RAM[100] = myIplImage.depth;
    the bit pattern is transferred.

    But when I do it the other way around,
    ::myIplImage.depth = RAM[100];
    to extract my results back to the testbench, the contest is messed up
    since the RAM keeps a "bigger" value (since it's unsigned) then what
    will fit into the signed variable "myIplImage.depth".

    How can I transfer the unsigned value of my RAM back to the signed
    variable in my testbench? (I like to do this in a bit wise matter,
    just transfer the bit pattern.)

    (PS. myIplImage.depth = (signed int)RAM[100] does not work...)

    best regards,
    Andreas Lundgren
     
    Andreas, Oct 10, 2003
    #1
    1. Advertising

  2. (Andreas) wrote in
    news::

    > I'm working with systemC to realize a processor like structure in HDL.


    So why post to a different language's newsgroup? We don't answer C++
    questions here either.

    > I have a signed variable (RAM) declared after the systemC syntax
    > "sc_ufixed<32,32> RAM".
    >
    > I also have an signed integer in my testbench, "int myIplImage.depth".


    Since this isn't C, how are we suppose to help? The above line would be
    syntax error. I think you need to search for a newsgroup or forum that
    discusses SystemC, a different language from ISO C.

    --
    - Mark ->
    --
     
    Mark A. Odell, Oct 10, 2003
    #2
    1. Advertising

  3. Andreas

    pete Guest

    Andreas wrote:
    >
    > Hi!
    >
    > I'm working with systemC to realize a processor like structure in HDL.
    >
    > I have a signed variable (RAM) declared after the systemC syntax
    > "sc_ufixed<32,32> RAM".
    >
    > I also have an signed integer in my testbench, "int myIplImage.depth".
    >
    > If I give this unsigned RAM the value of a signed variable
    > myIplImage.depth in my testbench,
    > ::RAM[100] = myIplImage.depth;
    > the bit pattern is transferred.
    >
    > But when I do it the other way around,
    > ::myIplImage.depth = RAM[100];
    > to extract my results back to the testbench, the contest is messed up
    > since the RAM keeps a "bigger" value (since it's unsigned) then what
    > will fit into the signed variable "myIplImage.depth".
    >
    > How can I transfer the unsigned value of my RAM back to the signed
    > variable in my testbench? (I like to do this in a bit wise matter,
    > just transfer the bit pattern.)
    >
    > (PS. myIplImage.depth = (signed int)RAM[100] does not work...)


    *(unsigned*)(&myIplImage.depth) = RAM[100];

    --
    pete
     
    pete, Oct 11, 2003
    #3
  4. Andreas

    Andreas Guest

    > Andreas wrote:
    > >
    > > Hi!
    > >
    > > I'm working with systemC to realize a processor like structure in HDL.
    > >
    > > I have a signed variable (RAM) declared after the systemC syntax
    > > "sc_ufixed<32,32> RAM".
    > >
    > > I also have an signed integer in my testbench, "int myIplImage.depth".
    > >
    > > If I give this unsigned RAM the value of a signed variable
    > > myIplImage.depth in my testbench,
    > > ::RAM[100] = myIplImage.depth;
    > > the bit pattern is transferred.
    > >
    > > But when I do it the other way around,
    > > ::myIplImage.depth = RAM[100];
    > > to extract my results back to the testbench, the contest is messed up
    > > since the RAM keeps a "bigger" value (since it's unsigned) then what
    > > will fit into the signed variable "myIplImage.depth".
    > >
    > > How can I transfer the unsigned value of my RAM back to the signed
    > > variable in my testbench? (I like to do this in a bit wise matter,
    > > just transfer the bit pattern.)
    > >
    > > (PS. myIplImage.depth = (signed int)RAM[100] does not work...)

    >
    > *(unsigned*)(&myIplImage.depth) = RAM[100];


    Thank you very much! It works just fine!
    /Andreas Lundgren
     
    Andreas, Oct 13, 2003
    #4
  5. Andreas

    Andreas Guest

    > (Andreas) wrote in
    > news::
    >
    > > I'm working with systemC to realize a processor like structure in HDL.

    >
    > So why post to a different language's newsgroup? We don't answer C++
    > questions here either.
    >
    > > I have a signed variable (RAM) declared after the systemC syntax
    > > "sc_ufixed<32,32> RAM".
    > >
    > > I also have an signed integer in my testbench, "int myIplImage.depth".

    >
    > Since this isn't C, how are we suppose to help? The above line would be
    > syntax error. I think you need to search for a newsgroup or forum that
    > discusses SystemC, a different language from ISO C.


    Just because you don't know the answer to the questions doesn't mean
    that everybody else is that ignorant. SystemC is just an extension of
    C, and it wasn't a specific question on the systemC library.
    /Andreas
     
    Andreas, Oct 13, 2003
    #5
  6. Andreas wrote:


    > Just because you don't know the answer to the questions doesn't mean
    > that everybody else is that ignorant. SystemC is just an extension of
    > C, and it wasn't a specific question on the systemC library.


    Just because you are an ignorant fool does not make SystemC a C implementation.


    --
    Martin Ambuhl
     
    Martin Ambuhl, Oct 13, 2003
    #6
  7. (Andreas) wrote in
    news::

    nce this isn't C, how are we suppose to help? The above line would be
    >> syntax error. I think you need to search for a newsgroup or forum that
    >> discusses SystemC, a different language from ISO C.

    >
    > Just because you don't know the answer to the questions doesn't mean
    > that everybody else is that ignorant. SystemC is just an extension of
    > C, and it wasn't a specific question on the systemC library.


    No, we don't talk about things that aren't topical *here* - even if we all
    know the answer to your question.

    --
    - Mark ->
    --
     
    Mark A. Odell, Oct 14, 2003
    #7
    1. Advertising

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

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Andreas
    Replies:
    1
    Views:
    904
    Eyck Jentzsch
    Oct 13, 2003
  2. Schnoffos
    Replies:
    2
    Views:
    1,236
    Martien Verbruggen
    Jun 27, 2003
  3. Hal Styli
    Replies:
    14
    Views:
    1,682
    Old Wolf
    Jan 20, 2004
  4. Randall Parker
    Replies:
    4
    Views:
    490
    Jack Saalweachter
    May 19, 2006
  5. Praveen Raj

    cast from int** to int*

    Praveen Raj, Jul 3, 2009, in forum: C Programming
    Replies:
    42
    Views:
    1,358
    Keith Thompson
    Jul 9, 2009
Loading...

Share This Page