DC vhdl question

B

Bert Cuzeau

Guest
Hello,

A customer of ours is using one of our IPs and reports that
DC (for synthesis) complains about two things :

*A* wouldn't support 'pos as in character'pos ??
(which is very handy for cahacter to slv conversion)

*B* wouldn't support booleans in generic ??

I emailed the Synopsys hotline, but got the answer that only
Synopsys customers can ask such questions...

A pointer to a document stating the current limitations of DC
would be very appreciated :)

Thx in advance,

Bert Cuzeau
 
Hi Bert,

Synopsys DC has actually two VHDL frontends (parsers).
The standard one, which is enabled by default, is just crap. It only suppoprts
an extremely limited number of VHDL constructs, which makes it almost unusable
for modern parameterizable designs.
The newer one, called PRESTO, must be explicitly enabled. You can do this by
setting the 'hdlin_enable_presto_for_vhdl' to 'true' in your dc.setup script.

Hope this helps.
 
Bert Cuzeau wrote:

A customer of ours is using one of our IPs and reports that
DC (for synthesis) complains about two things :

*A* wouldn't support 'pos as in character'pos ??
(which is very handy for cahacter to slv conversion)
At one time, mentor synthesis allowed character'pos
for constant use only. In this case a function
"buffer" like this did the trick:

function char_pos (char_v : character)
return natural is
type ascii_t is array (character) of natural;
function ascii_c return ascii_t is
variable table_v : ascii_t;
begin
for i in character loop
table_v(i) := character'pos(i);
-- DC might buy this as i is a loop index "constant"
end loop;
return table_v;
end function ascii_c;
begin
return ascii_c(char_v);
end function char_pos;

*B* wouldn't support booleans in generic ??
The only "sure thing" type for
generic synthesis is integer.

I have never used DC or know the errata.
Your customer may be the best source.

-- Mike Treseler
 
Thank you both for your excellent answers.
The function may be a good workaround, and

I also suspect that presto wasn't enabled.


Thx again,

Bert Cuzeau
 

Welcome to EDABoard.com

Sponsor

Back
Top