FPGA Central - World's 1st FPGA / CPLD Portal

FPGA Central

World's 1st FPGA Portal

 

Go Back   FPGA Groups > NewsGroup > VHDL

VHDL comp.lang.vhdl newsgroup / Usenet

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 01-02-2004, 03:03 AM
bigdipper_gary
Guest
 
Posts: n/a
Default Different concatenation result VJDL93' generates from VHDL'87


Hello there!

I hope i could get some help regarding concatenation.
Part of my VHDL code of a Booth Multiplier is appended below. This code tries to generate Partial Product term in a Booth Multiplier. The inputs x and y are generic and the output which is given as matrix is a two dimentional array data output.
--------------------------
procedure gen_pp_Booth ( x : in std_logic_vector
(n-1 downto 0);
y: std_logic_vector (m-1 downto 0);
PP: inout matrix) is

variable i,j,k : integer;
variable nb_pp : integer;
variable x_coded : std_logic_vector (n+1 downto 0);
variable selector : std_logic_vector (2 downto 0);

begin

for i on 0 to (n-1) loop
x_coded (i+1) := x(i);
end loop;
x_coded (0):= '0';
nb_pp := n/2;

j:= 0; -- index for the selector

for i in 0 to (nb_pp -1) loop
selector := x_coded(j+2) & x_coded(j+1) & x_coded(j);
-- ( this is where the warning is)
case selector is

when "000" =>
for k in 0 to (m+n-1) loop
PP(i)(k) := '0';
end loop;

when "001" =>
.....
...
when "010" =>
.....
...
...
when others => null;
end case;
j := j+2;
end loop;
end procedure gen_PP_Booth;
------------------------

When this code is simulated using NC Sim ( Cadence) , there was no error however when the Booth Multiplier was used in synthesis using Design analzer of Synopsys, a warning was generated while in elebrotation phase. The warning is that " the VHDL'93 concatenation operator generates different results from the same operator in VHDL'87".
The warning is on the concatination operation for the selector of the VHDL code given above.

My question is that basing on the code given above, would my selector generate different logic circuits in VHDL'93?
Is my code written using VHDL'87?
How could I then rephrase it to suit the VHDL'93 style of coding for the cocatenation for the selector?
I have used VHDL'93 during my simulation by default and in design analyzer , I think VHDL'93 coding style is automatically reffered to for synthesis

I would appreciate if I could get some response to my problem.
Thanks in advace.

Regards

Gary


Reply With Quote
  #2 (permalink)  
Old 01-05-2004, 06:20 PM
Mike Treseler
Guest
 
Posts: n/a
Default Re: Different concatenation result VJDL93' generates from VHDL'87

bigdipper_gary wrote:

> When this code is simulated using NC Sim ( Cadence) , there was no error however when the Booth Multiplier was used in synthesis using Design analzer of Synopsys, a warning was generated while in elebrotation phase. The warning is that " the VHDL'93 concatenation operator generates different results from the same operator in VHDL'87".
> The warning is on the concatination operation for the selector of the VHDL code given above.
>
> My question is that basing on the code given above, would my selector generate different logic circuits in VHDL'93?
> Is my code written using VHDL'87?
> How could I then rephrase it to suit the VHDL'93 style of coding for the cocatenation for the selector?
> I have used VHDL'93 during my simulation by default and in design analyzer , I think VHDL'93 coding style is automatically reffered to for synthesis


After fixing the syntax error:

for i in 0 to (n-1) loop
-- for i on 0 to (n-1) loop

and assuming a reasonable type for "matrix",
your procedure compiles fine for -87 or -93 using modelsim.

-- Mike Treseler

Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
synplify pro generates negative slack ni FPGA 6 04-05-2008 07:42 PM
Xilinx core generator MIG module generates a slow timing for a DDR2 SDRAM controller [email protected] FPGA 4 09-12-2007 10:17 AM
VHDL : Use concatenation on port mapping Georgios Sidiropoulos FPGA 6 10-17-2005 04:10 PM
SPARTANI II - PCI target logic - what code generates burst read ? Dan DeConinck of PixelSmart FPGA 1 10-16-2004 02:02 PM
what's the difference between VHDL 93 CONCATENATION and VHDL 87 CONCATENATION? walala VHDL 3 09-18-2003 06:17 AM


All times are GMT +1. The time now is 04:18 AM.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright 2008 @ FPGA Central. All rights reserved