Re: [sv-bc] query regarding casting

From: Subhamoy Pal <subhamoy_at_.....>
Date: Wed Jun 28 2006 - 22:55:10 PDT
Brad,
then does it mean we can not cast an unpacked aggregate, containing 
real/shortreal, to a bitstream type? If so, then the LRM example in 4.14,
 
tagbits t = tagbits'(a[3]); // convert structure to array of bits

is not correct because 'a[3]' can contain real type as a part of it.

-- Subhamoy


Brad Pierce wrote:

> Subhamoy,
>
>  
>
> I think the only way to bit-stream reals or shortreals is with the 
> $realtobits(), $bitstoreal(), $shortrealtobits() and 
> $bitstoshortreal() system functions.  Reals and shortreals are not 
> bit-stream types.
>
>  
>
> -- Brad
>
>  
>
> ------------------------------------------------------------------------
>
> *From:* owner-sv-bc@eda-stds.org [mailto:owner-sv-bc@eda-stds.org] *On 
> Behalf Of *Subhamoy Pal
> *Sent:* Wednesday, June 28, 2006 5:32 AM
> *To:* sv-bc@eda-stds.org
> *Subject:* [sv-bc] query regarding casting
>
>  
>
> In SV LRM 4.14, I found the following example:
>
> typedef struct {
> bit isfloat;
> union { int i; shortreal f; } n; // anonymous type
> } tagged_st; // named structure
>
> typedef bit [$bits(tagged_st) - 1 : 0] tagbits; // tagged_st defined above
>
> tagged_st a [7:0]; // unpacked array of structures
>
> tagbits t = tagbits'(a[3]); // convert structure to array of bits
>
> Here a[3] can be assigned with '{isfloat:1, n:'{f:2.5}}. Here the 
> problem is if we consider the 33 bits needed to represent value of 
> a[3], the least significant 32 bits will be a representation for 
> shortreal(i.e. the memory representation will be of C float type). 
> Treating this 32 bit representation as bitstream representation does 
> not mean anything significant.
> In LRM, though I found how a real or shortreal data type can be casted 
> to a bit stream, but I can not find any LRM verse which specifies how 
> to cast an unpacked aggregate, containing real/shortreal data, to a 
> packed aggregate. Can anyone please specify any such LRM section and 
> verse?
>
> --Subhamoy
>
Received on Wed Jun 28 22:55:14 2006

This archive was generated by hypermail 2.1.8 : Wed Jun 28 2006 - 22:55:27 PDT