FPGARelated.com
Forums

Spartan-3 3S50 in Web ISE 5.2i = no block RAM, no multiplier?

Started by Kirill 'Big K' Katsnelson September 10, 2003
I downloaded Xilinx free Web ISE 5.2i, and toying with different design to get
the feeling of this Spartan-3 thingy.  The only Spartan-3 device supposed to be
supported by the free verison is 3S50.  I am saying "supposed", because I cannot
make it instantiate neither multipliers nor block RAMs.  According to the data
sheet, there are enough of them in the device, but mapper thinks there are none.
Why is that?
 - My error (so I hope!)
 - Bug in ISE 
 - Limitation of the free version
 - Typo in the datasheet, and there are no multipliers really.

Code follows.  In this test (one of so many!) I let ISE infer a multiplier:

<<<
module mult (input clk, input [7:0] x, input [7:0] y, output reg [15:0] q);

always @(posedge clk)
  q <= { 8'h0, x } * { 8'h0, y };

endmodule
>>>
Synthesizer infers one: <<< Synthesizing Unit <mult>. Related source file is mult.v. WARNING:Xst:643 - Multiplier result width is 16 bits. Found 16x16-bit registered multiplier for signal <$n0000> created at line 4. Summary: inferred 1 Multiplier(s). Unit <mult> synthesized. ========================================================================= HDL Synthesis Report Macro Statistics # Multipliers : 1 16x16-bit registered multiplier : 1
>>>
but then, in the final report, says *something* is overmapped. Note it does not mark overused resource with an asterisk like '(*)': <<< ========================================================================= * Final Report * ----snip---- # MULTs : 1 # MULT18X18S : 1 ========================================================================= Device utilization summary: --------------------------- Selected Device : 3s50pq208-4 Number of bonded IOBs: 32 out of 124 25% Number of GCLKs: 1 out of 8 12% WARNING:Xst:1336 - (*) More than 100% of Device resources are used
>>>
There supposed to be 4 of MULT18X18S in this part, but then maper fails with a more detailed, but not more explainable diagnostics: <<< Design Summary ---snip--- Number of bonded IOBs: 33 out of 124 26% Number of MULT18X18s: 1 out of 0 0% (OVERMAPPED) Number of GCLKs: 1 out of 8 12%
>>>
-kkm
Kirill 'Big K' Katsnelson <kkm@dtmx.com> wrote:
: I downloaded Xilinx free Web ISE 5.2i, and toying with different design to
: get the feeling of this Spartan-3 thingy.  The only Spartan-3 device
: supposed to be supported by the free verison is 3S50.  I am saying
: "supposed", because I cannot make it instantiate neither multipliers nor
: block RAMs.  According to the data sheet, there are enough of them in the
: device, but mapper thinks there are none.  Why is that?  - My error (so
: I hope!)  : - Bug in ISE : - Limitation of the free version - Typo in the
: datasheet, and there are no multipliers really.

The first batch of XC3S50 (labeled XC3S50J) has no block ram and no
multipliers. Later batches will have those things as stated in the datasheet.

Bye
-- 
Uwe Bonnes                bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
WebPack ISE 5.2i only supports the device called the XC3S50J (note the 'J'),
which has no block RAM or multipliers.

WebPack ISE 6.1i, due out at the end of September, supports the XC3S50 (no
'J'),  which has four 18Kbit block RAMs, four 18x18 hardware multipliers,
and two Digital Clock Managers (DCMs).  WebPack 6.1i also supports the next
few larger Spartan-3 devices, namely the XC3S200 and the XC3S400.

My apologies on the short-term confusion.
---------------------------------
Steven K. Knapp
Applications Manager, Xilinx Inc.
Spartan-3/II/IIE FPGAs
http://www.xilinx.com/spartan3
---------------------------------
Spartan-3:  Make it Your ASIC

"Kirill 'Big K' Katsnelson" <kkm@dtmx.com> wrote in message
news:73163042.0000d078.086@drn.newsguy.com...
> I downloaded Xilinx free Web ISE 5.2i, and toying with different design to
get
> the feeling of this Spartan-3 thingy. The only Spartan-3 device supposed
to be
> supported by the free verison is 3S50. I am saying "supposed", because I
cannot
> make it instantiate neither multipliers nor block RAMs. According to the
data
> sheet, there are enough of them in the device, but mapper thinks there are
none.
> Why is that? > - My error (so I hope!) > - Bug in ISE > - Limitation of the free version > - Typo in the datasheet, and there are no multipliers really. > > Code follows. In this test (one of so many!) I let ISE infer a
multiplier:
> > <<< > module mult (input clk, input [7:0] x, input [7:0] y, output reg [15:0]
q);
> > always @(posedge clk) > q <= { 8'h0, x } * { 8'h0, y }; > > endmodule > >>> > > Synthesizer infers one: > > <<< > Synthesizing Unit <mult>. > Related source file is mult.v. > WARNING:Xst:643 - Multiplier result width is 16 bits. > Found 16x16-bit registered multiplier for signal <$n0000> created at
line 4.
> Summary: > inferred 1 Multiplier(s). > Unit <mult> synthesized. > > > ========================================================================= > HDL Synthesis Report > > Macro Statistics > # Multipliers : 1 > 16x16-bit registered multiplier : 1 > >>> > > but then, in the final report, says *something* is overmapped. Note it
does not
> mark overused resource with an asterisk like '(*)': > > <<< > ========================================================================= > * Final Report * > ----snip---- > # MULTs : 1 > # MULT18X18S : 1 > ========================================================================= > > Device utilization summary: > --------------------------- > > Selected Device : 3s50pq208-4 > > Number of bonded IOBs: 32 out of 124 25% > Number of GCLKs: 1 out of 8 12% > > WARNING:Xst:1336 - (*) More than 100% of Device resources are used > >>> > > There supposed to be 4 of MULT18X18S in this part, but then maper fails
with a
> more detailed, but not more explainable diagnostics: > > <<< > Design Summary > ---snip--- > Number of bonded IOBs: 33 out of 124 26% > Number of MULT18X18s: 1 out of 0 0%
(OVERMAPPED)
> Number of GCLKs: 1 out of 8 12% > >>> > > -kkm >
"Steven K. Knapp" <steve.knappNO#SPAM@xilinx.com> writes:
> WebPack ISE 5.2i only supports the device called the XC3S50J (note the 'J'), > which has no block RAM or multipliers. > > WebPack ISE 6.1i, due out at the end of September, supports the XC3S50 (no > 'J'), which has four 18Kbit block RAMs, four 18x18 hardware multipliers, > and two Digital Clock Managers (DCMs).
Will 6.1i and future versions continue to support the XC3S50J? Or do we need to keep the 5.2i release around for those? What does the "i" at the end of the software version mean, anyhow?
Correct, for the XC3S50J devices, you'll want to keep ISE5.2i around.

What does the "i" stand for?  For me, it stands for "I don't know". :-).  I
believe that it stands for ISE (Integrated Software Environment) to
distinguish it from earlier "Foundation" software.  Still, just a guess.
---------------------------------
Steven K. Knapp
Applications Manager, Xilinx Inc.
Spartan-3/II/IIE FPGAs
http://www.xilinx.com/spartan3
---------------------------------
Spartan-3:  Make it Your ASIC

"Eric Smith" <eric-no-spam-for-me@brouhaha.com> wrote in message
news:qh7k4g429a.fsf@ruckus.brouhaha.com...
> "Steven K. Knapp" <steve.knappNO#SPAM@xilinx.com> writes: > > WebPack ISE 5.2i only supports the device called the XC3S50J (note the
'J'),
> > which has no block RAM or multipliers. > > > > WebPack ISE 6.1i, due out at the end of September, supports the XC3S50
(no
> > 'J'), which has four 18Kbit block RAMs, four 18x18 hardware
multipliers,
> > and two Digital Clock Managers (DCMs). > > Will 6.1i and future versions continue to support the XC3S50J? Or do we > need to keep the 5.2i release around for those? > > What does the "i" at the end of the software version mean, anyhow?
"Steven K. Knapp" wrote:
> > Correct, for the XC3S50J devices, you'll want to keep ISE5.2i around. > > What does the "i" stand for? For me, it stands for "I don't know". :-). I > believe that it stands for ISE (Integrated Software Environment) to > distinguish it from earlier "Foundation" software. Still, just a guess.
IIRC, the 'i' was added on the first version that was Internet aware. I can't say what features were made possible by having web connectivity, but they have never dropped the designation. -- Rick "rickman" Collins rick.collins@XYarius.com Ignore the reply address. To email me use the above address with the XY removed. Arius - A Signal Processing Solutions Company Specializing in DSP and FPGA design URL http://www.arius.com 4 King Ave 301-682-7772 Voice Frederick, MD 21701-3110 301-682-7666 FAX
I think after XACT 6 was rechristened to "M" ("merged" due to Neocad
purchase) it became M1, M1.5 etc. and AFAIR it was somewhere there the "i"
was added. (and later M was replaced by ISE when XST was added) "i" meant
"internet aware" as Rickman pointed out, and the reasons I think was context
sensitive help documents being linked to the web documents...or something
similar...



"rickman" <spamgoeshere4@yahoo.com> wrote in message
news:3F60CAC2.56AF1034@yahoo.com...
> "Steven K. Knapp" wrote: > > > > Correct, for the XC3S50J devices, you'll want to keep ISE5.2i around. > > > > What does the "i" stand for? For me, it stands for "I don't know". :-).
I
> > believe that it stands for ISE (Integrated Software Environment) to > > distinguish it from earlier "Foundation" software. Still, just a guess. > > IIRC, the 'i' was added on the first version that was Internet aware. I > can't say what features were made possible by having web connectivity, > but they have never dropped the designation. > > -- > > Rick "rickman" Collins > > rick.collins@XYarius.com > Ignore the reply address. To email me use the above address with the XY > removed. > > Arius - A Signal Processing Solutions Company > Specializing in DSP and FPGA design URL http://www.arius.com > 4 King Ave 301-682-7772 Voice > Frederick, MD 21701-3110 301-682-7666 FAX