From: Brad.Pierce@synopsys.com
Date: Thu Aug 28 2003 - 10:45:19 PDT
Precedence: bulk
In Example 4 of 2.5.1
REPLACE
reg[11:0] a, b, c, d;
initial begin
a = 'h x; // yields xxx
b = 'h 3x; // yields 03x
c = 'h z3; // yields zz3
d = 'h 0z3; // yields 0z3
end
reg [84:0] e, f, g;
e = 'h5; // yields {82{1'b0}, 3'b101}
f = 'hx; // yields {85{1'hx}}
g = 'hz; // yields {85{1'hz}}
WITH
reg[11:0] a, b, c, d;
initial begin
a = 'h x; // yields 12'h xxx
b = 'h 3x; // yields 12'h 03x
c = 'h z3; // yields 12'h zz3
d = 'h 0z3; // yields 12'h 0z3
end
reg [84:0] e, f, g, h, i;
reg signed [84:0] j, k;
e = 'h5; // yields {{82{1'b0}}, 3'b101}
f = 'hx; // yields {85{1'bx}}
g = 'hz; // yields {85{1'bz}}
h = 4'hx; // yields {{81{1'b0}}, 4'hx}
i = 16'ox; // yields {{69{1'b0}}, {16{1'bx}}}
j = 16'sb110; // yields {{82{1'b0}}, 3'b110}
k = 3'sb110; // yields {{82{1'b1}}, 3'b110}
and
REPLACE
NOTES:
1) Sized negative constant numbers and sized unsigned
constant numbers are sign-extended when assigned to a
reg data type, regardless of whether the reg itself is
signed or not.
2) Each of the three tokens for specifying a number
may be macro substituted.
3) The number of bits that make up an unsized number
(which is a simple decimal number or a number without
the size specification) shall be at least 32.
WITH
Sized negative constant numbers and sized unsigned
constant numbers shall be sign-extended when assigned to a
reg data type, regardless of whether the reg itself is
signed or not.
It shall be legal to macro substitute the three tokens
for specifying a number.
The number of bits that make up an unsized number
(which is a simple decimal number or a number without
the size specification) shall be at least 32.
http://boydtechinc.com/cgi-bin/issueproposal.pl?cmd=view&pr=428
This archive was generated by hypermail 2.1.4
: Thu Aug 28 2003 - 10:45:55 PDT
and
sponsored by Boyd Technology, Inc.