Site Home   Archive Home   FAQ Home   How to search the Archive   How to Navigate the Archive   
Compare FPGA features and resources   

Threads starting:
1994JulAugSepOctNovDec1994
1995JanFebMarAprMayJunJulAugSepOctNovDec1995
1996JanFebMarAprMayJunJulAugSepOctNovDec1996
1997JanFebMarAprMayJunJulAugSepOctNovDec1997
1998JanFebMarAprMayJunJulAugSepOctNovDec1998
1999JanFebMarAprMayJunJulAugSepOctNovDec1999
2000JanFebMarAprMayJunJulAugSepOctNovDec2000
2001JanFebMarAprMayJunJulAugSepOctNovDec2001
2002JanFebMarAprMayJunJulAugSepOctNovDec2002
2003JanFebMarAprMayJunJulAugSepOctNovDec2003
2004JanFebMarAprMayJunJulAugSepOctNovDec2004
2005JanFebMarAprMayJunJulAugSepOctNovDec2005
2006JanFebMarAprMayJunJulAugSepOctNovDec2006
2007JanFebMarAprMayJunJulAugSepOctNovDec2007
2008JanFebMarAprMayJunJulAugSepOctNovDec2008
2009JanFebMarAprMayJunJulAugSepOctNovDec2009
2010JanFebMarAprMayJunJulAugSepOctNovDec2010
2011JanFebMarAprMayJunJulAugSepOctNovDec2011
2012JanFebMarAprMayJunJulAugSepOctNovDec2012
2013JanFebMarAprMayJunJulAugSepOctNovDec2013
2014JanFebMarAprMayJunJulAugSepOctNovDec2014
2015JanFebMarAprMayJunJulAugSepOctNovDec2015
2016JanFebMarAprMayJunJulAugSepOctNovDec2016
2017JanFebMarAprMayJunJulAugSepOctNovDec2017
2018JanFebMarAprMayJunJulAugSepOctNovDec2018
2019JanFebMarAprMayJunJulAugSepOctNovDec2019
2020JanFebMarAprMay2020

Authors:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Custom Search

Messages from 57325

Article: 57325
Subject: Re: ModelSim 5.7 and xilinx libraries
From: demircitolga@hotmail.com (Tolga)
Date: 27 Jun 2003 08:02:21 -0700
Links: << >>  << T >>  << A >>
Eventhough I have compiled and mapped Xilinx libraries, when try to
simulate my desings Modelsim crashes and quits.

After execution of : 

#vsim -lib work -t 1ps -L xilinxcorelib_ver -L unisims_ver -L
simprims_ver ...................

Modelsim starts executing : 

#loading work.testbench 

and then quits without any error/warning messages... I am currently
using Modelsim 5.7c and Xilinx ISE 5.2.

Any suggestions?

Thanks,
Tolga



Thomas <tom3@protectedfromreality.com> wrote in message news:<oprq7qmalimo2d8p@news3.news.adelphia.net>...
> How do you recompile the libraries for ModelSim 5.7? all the libs I found 
> at for 5.6
> 
> I tried to ask modelsim to rebuild them, but there are lots of errors.
> I tried the tcl script on xilinx's ftp, as a result it goes for a while and 
> then modelsim just crashes and quits...

Article: 57326
Subject: Re: why so many problems Xilinx ?
From: nweaver@ribbit.CS.Berkeley.EDU (Nicholas C. Weaver)
Date: Fri, 27 Jun 2003 15:17:37 +0000 (UTC)
Links: << >>  << T >>  << A >>
I think its fairly simple.  Clued Xilinx People will answer questions
in this newsgroup, so a lot of people have figured out "If there is a
question, problem, or gotcha, ask here, you get the quickest
response".

-- 
Nicholas C. Weaver                                 nweaver@cs.berkeley.edu

Article: 57327
Subject: Re: Partial reconfiguration of Vertex-2 devices.
From: Steve Lass <lass@xilinx.com>
Date: Fri, 27 Jun 2003 10:09:46 -0600
Links: << >>  << T >>  << A >>
Kelvin Tsai @ Singapore wrote:

>Hi, all: 
>
>In the Vertex-2 datasheet, it mentioned about partial reconfiguration,
>where can I find more information on this topic? 
>
Check out this App Note.  It describes the software flow:

http://www.xilinx.com/xapp/xapp290.pdf

>I have a variable
>design and a fixed design to put on same V-2 chip.
>
>Will partial reconfiguration process halt the current operation of the
>'fixed' design on the chip?
>
No, you can leave the fixed design running.

>How can I guarantee the variable design doesn't rob away the hardware
>of my fixed design?
>
Partial reconfiguration requires our modular design flow where you 
specify the physical area of
each module (or in your case, the fixed design and the reconfigurable 
design).  The modular design
router does not go outside the area you have specified.  Our bitstream 
generation tool can look at
two bitstreams and generate a difference bitstream to be used for 
partial reconfiguration.

Communication between the modules requires bus macros.   It's all 
explained in the App Note.

Steve

>
>Thanks. 
>Kelvin
>  
>


Article: 57328
Subject: Re: ModelSim 5.7 and xilinx libraries
From: Thomas <tom3@protectedfromreality.com>
Date: Fri, 27 Jun 2003 16:25:28 GMT
Links: << >>  << T >>  << A >>
make sure your licence is valid, it will do that kind of things otherwise


On 27 Jun 2003 08:02:21 -0700, Tolga <demircitolga@hotmail.com> wrote:

> Eventhough I have compiled and mapped Xilinx libraries, when try to
> simulate my desings Modelsim crashes and quits.
>
> After execution of :
>
> #vsim -lib work -t 1ps -L xilinxcorelib_ver -L unisims_ver -L
> simprims_ver ...................
>
> Modelsim starts executing :
>
> #loading work.testbench
>
> and then quits without any error/warning messages... I am currently
> using Modelsim 5.7c and Xilinx ISE 5.2.
>
> Any suggestions?
>
> Thanks,
> Tolga
>
>
>
> Thomas <tom3@protectedfromreality.com> wrote in message 
> news:<oprq7qmalimo2d8p@news3.news.adelphia.net>...
>> How do you recompile the libraries for ModelSim 5.7? all the libs I 
>> found at for 5.6
>>
>> I tried to ask modelsim to rebuild them, but there are lots of errors.
>> I tried the tcl script on xilinx's ftp, as a result it goes for a while 
>> and then modelsim just crashes and quits...
>



Article: 57329
Subject: XAPP132: CLKDLL constraints pb
From: Stephane Guyetant <sguyetan.dislikes.spam@IRISA.fr>
Date: Fri, 27 Jun 2003 18:59:38 +0200
Links: << >>  << T >>  << A >>
Hi,

I implemented into a SPARTAN-II (device xc2s200, package pq208, speed 
-5) the design shown in Xapp132, figure 10: "DLL de-skew of board level 
clock".

The mydesign.edf file has been generated for 40MHz with synplify_pro, 
promising a 47+MHz clock.
My problem is that I can implement the design at 27MHz, but not over.

If I try, after phase 5 of PAR, I get the following messages:
(command is: par -ol 2 -w map.ncd mydesign mydesign.pcf)

IMPORTANT MSG: IRRATIONAL TIMING! SWITCHING TO RESOURCE MODE; (EASE 
CONSTRAINTS) (sometimes I don't get this message...)

WARNING:Par:62 - Timing constraints have not been met.

The unmatched constraint is at the output CLK0 of the CLKDLL component, 
input of the BUFG:
TS_dllint_clk0 = PERIOD TIMEGRP "dllint_clk0" ts_clkin * 1.000000  HIGH 
50.000 %

here are several results of PAR for this TS_dllint_clk0:
Requested:   Actual:    Logic Level:
36ns         35.46ns    6             (no error here)
35ns         35.118ns   6
25ns         40.810ns   6
I tried CLKDLLHF, but it is worse.
25ns         42.4ns     5  (with CLKDLLHF)
I tried par -ol 5...
25ns         37ns

Any idea of what is happening?
Should I try "par -n 0"? use IO_LVDS_DLL? give up and buy a bicycle?


further details below:


here are the constraints in .UCF file:
NET clkin LOC= P77 ;
NET "clkin" TNM_NET= "clkin";
TIMESPEC "ts_clkin"= PERIOD "clkin" 25 ns HIGH 50 %;


anyway, the trace of the constraint is ok:
INFO:XdmHelpers:851 - TNM "clkin", used in period specification 
"ts_clkin", was
    traced into CLKDLL instance "dllint". The following new TNM groups and
    period specifications were generated at the CLKDLL output(s):
    CLK0: TS_dllint_clk0=PERIOD dllint_clk0 ts_clkin*1.000000 HIGH
50.000000%


Article: 57330
Subject: Re: Partial reconfiguration of Vertex-2 devices.
From: jetmarc@hotmail.com (jetmarc)
Date: 27 Jun 2003 10:54:18 -0700
Links: << >>  << T >>  << A >>
> The tricky part is keeping the routing from a given
> portion from running into the routing from another portion and also
> being able to provide interfaces for the wiring that needs to hookup.  
> 
> If there is support for this, I am not aware of it.  

Atmels AT40K toolchain lets you turn a design into a rectangular
routed (hard) macro.  With this feature it should be possible to
create partial reconfigurable designs.  When all modules are
rectangualar and all contain equal (hand-placed) interconnect
cells at their border, the inter-module routing is equal for
all modules.

However, this still is not the level of support I'd expect of
partially reconfigurable chips.  At least one should be able to
define "keepout" areas like in PCB software.

Marc

Article: 57331
Subject: Re: MIPS instruction set?
From: nweaver@ribbit.CS.Berkeley.EDU (Nicholas C. Weaver)
Date: Fri, 27 Jun 2003 17:55:28 +0000 (UTC)
Links: << >>  << T >>  << A >>
In article <1056453399.643807@haldjas.folklore.ee>,
Sander Vesik  <sander@haldjas.folklore.ee> wrote:
>> There is always Sparc, which doesn't have a liscence fee to use the
>> ISA, only to use the SPARC trademark.
>
>sparc licence costs $99  - to use the mark i believe you have to pass
>certification, which probably costs more. But don't quote me on this

http://www.sparc.org/faq.html

The "registry fee" appears to be for tracking purposes, not for use,
according ot their FAQ.

>> Of course, register windows are a bad idea, but hey, nothing's
>> perfect.
>
>but with block rams, there are much less problems. 

Even with BlockRAMs, its that register windows:

a) FUBAR garbage collectors by hiding the root set

b) Don't actually speed up function calling, as long call-chains you
end up spilling MORE data than you otherwise would.

>of course, everybody can always start from scratch and make a fpga
>specific one

Too bad intel probably has patents-up-the-wazoo on the IA64's deferred
execption model.  That is one of the few great things about that
architecture.
-- 
Nicholas C. Weaver                                 nweaver@cs.berkeley.edu

Article: 57332
Subject: Re: cyclone on pci?
From: ryanc@nova-eng.com (Ryan Canning)
Date: 27 Jun 2003 11:34:31 -0700
Links: << >>  << T >>  << A >>
Sander Vesik <sander@haldjas.folklore.ee> wrote in message news:<1054761767.988243@haldjas.folklore.ee>...
> Anybody know of Cyclone EP1C12 (preferably) or EP1C20 
> (also ok) based PCI development boards? Do such things
> even exist - or in other words, what is the approximate
> timline after chip availability that one can expect such
> to be around?

Sander,

I am unaware of any existing PCI Cyclone boards, however Nova
Engineering is currently developing a PC/104+ Cyclone board for our
Constellation FPGA Board line. This board should be available late
summer/early fall.

More info here: www.nova-eng.com/const-1c.html.

Ryan Canning
Constellation Tech Support
Nova Engineering, Inc.
Phone: 513-642-3197
Fax: 513-642-3397
www.nova-eng.com

Article: 57333
Subject: Re: Partial reconfiguration of Vertex-2 devices.
From: rickman <spamgoeshere4@yahoo.com>
Date: Fri, 27 Jun 2003 14:42:07 -0400
Links: << >>  << T >>  << A >>
jetmarc wrote:
> 
> > The tricky part is keeping the routing from a given
> > portion from running into the routing from another portion and also
> > being able to provide interfaces for the wiring that needs to hookup.
> >
> > If there is support for this, I am not aware of it.
> 
> Atmels AT40K toolchain lets you turn a design into a rectangular
> routed (hard) macro.  With this feature it should be possible to
> create partial reconfigurable designs.  When all modules are
> rectangualar and all contain equal (hand-placed) interconnect
> cells at their border, the inter-module routing is equal for
> all modules.
> 
> However, this still is not the level of support I'd expect of
> partially reconfigurable chips.  At least one should be able to
> define "keepout" areas like in PCB software.

The other problem is that the Atmel parts are very long in the tooth. 
This means they are not competative in terms of performance and price
and may well disappear at any time.  

I have already been advised not to use the FPSLIC which functionally
would be a very good part for my design.  

At one point the Lucent parts started to look like an array of four
smaller chips on one die.  If they had provided enough separation to
individually clock and configure them, that would have been perfect for
my needs.  But then Lucent seems to have suffered a lack of enthusiasm
for FPGA sales.  The newer Orca parts that Lattice is selling are
targeted more for the comms market. 

-- 

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

Article: 57334
Subject: Re: ModelSim and Specman: on the fly generation
From: jonathan@oxfordbromley.u-net.com (Jonathan Bromley)
Date: Fri, 27 Jun 2003 19:01:18 GMT
Links: << >>  << T >>  << A >>
On 12 May 2003 11:44:28 -0700, tardi69@hotmail.com (Paolo Tardivel)
wrote:

>I have implemented a testbench in e that drives a VHDL design on the fly.

What do you mean by "on the fly"?  Presumably Specman is driving
all or most of the stimulus into the DUT - that's a very reasonable
way to start.

>The VHDL file I drive acts as a shell for the design and simply
>contains the signals that I need to drive.  This file contains the
>necessary code to link Specman and ModelSim and is called macro.vhd. 
>These signals are then driven into the design in a file called sig_lib
>as follows:
>
>   inst_mstim: macro
[...]

OK, that's the usual sort of thing.

>This all works fine and the values driven into the signals can be seen
>in ModelSim's waveform viewer.  However I want to be able to view all
>the signals from the design (not just the ones I am driving), in order
>to view the dataout signals.

So, what's the problem?  ModelSim can see all the signals in the
loaded design, same as it always can.

>So what I want to be able to do is Specman to drive macro.vhd, but
>ModelSim to load sig_lib.vhd, while keeping the "on the fly" nature of
>my implementation.
>I am currently using the following command to invoke Specman and
>ModelSim (after everything is compiled):
>   specview vsim -keepstdout macro

Now I'm confused.  You have your "sig_lib" entity, apparently, but you
are not loading it;  instead, you are loading the next level down
("macro") which is something that has ports.  Why not load sig_lib?

I think it's possible that you have one more level of hierarchy than
you really need.  If all the DUT's inputs are being sourced from e 
code, then you only need one level of jacket - simply declare one
signal for each DUT port, hook the DUT to those signals, and let 
Specman play around with the signals in the jacket module. No ports
on the jacket module - it's just like a testbench. Don't
forget to instantiate the SPECMAN entity in the jacket, too.
When you do this correctly, the HDL simulator can see all signals
in the simulation - so it's easy to load any signal into the
waveform viewer - and you can also issue "wave event" and 
"wave exp" commands to display Specman objects in the wave viewer.

You may get more help on the Verisity mailing lists.
-- 
Jonathan Bromley

Jonathan Bromley

Article: 57335
Subject: Re: Partial reconfiguration of Vertex-2 devices.
From: Steve Lass <lass@xilinx.com>
Date: Fri, 27 Jun 2003 14:00:23 -0600
Links: << >>  << T >>  << A >>
rickman wrote:

>Steve Lass wrote:
>  
>
>>Kelvin Tsai @ Singapore wrote:
>>    
>>
>>>Hi, all:
>>>
>>>In the Vertex-2 datasheet, it mentioned about partial reconfiguration,
>>>where can I find more information on this topic?
>>>
>>>      
>>>
>>Check out this App Note.  It describes the software flow:
>>
>>http://www.xilinx.com/xapp/xapp290.pdf
>>    
>>
>>>I have a variable
>>>design and a fixed design to put on same V-2 chip.
>>>
>>>Will partial reconfiguration process halt the current operation of the
>>>'fixed' design on the chip?
>>>      
>>>
>>No, you can leave the fixed design running.
>>    
>>
>>>How can I guarantee the variable design doesn't rob away the hardware
>>>of my fixed design?
>>>
>>>      
>>>
>>Partial reconfiguration requires our modular design flow where you
>>specify the physical area of
>>each module (or in your case, the fixed design and the reconfigurable
>>design).  The modular design
>>router does not go outside the area you have specified.  Our bitstream
>>generation tool can look at
>>two bitstreams and generate a difference bitstream to be used for
>>partial reconfiguration.
>>
>>Communication between the modules requires bus macros.   It's all
>>explained in the App Note.
>>
>>Steve
>>    
>>
>
>Thanks for the pointer.  This is a useful document.  But I am a little
>confused about the useage of the term "slices".   They talk about a
>module 4 slices wide.  Do they mean slices in the sense of a pair of FFs
>and LUTs and not a CLB?  So in a Spartan 3, 4 slices are 1 CLB?  
>
Yes, the minimum config size is 1 CLB column.  One thing you might 
notice in in App Note is that
we use TBUFs for communication between modules.  Since Spartan3 doesn't 
have TBUFs, you
will need a macro.  I think I can get you one that we created, but 
haven't tested yet.

>In my application I would not need to reconfigure while operating.  I
>just need to be able to pick a design from a list for each module at
>configuration time.  e.g. Put design A in modules 1 and 3 and put design
>B in module 2 and design C in module 4.  This would all be decided at
>power up time, the FPGA would then be configured once with the
>combination of modules.  
>  
>
I'm pretty sure that the devices need a full configuration first, then 
partial bistreams can be loaded.
You could probably do a simple bitstream with multiple frame writes to 
fill the device, then load
each of your design bitstreams.

Steve


Article: 57336
Subject: Configure an FPGA from the PCs Parallel port. A solution.
From: dgleeson@utvinternet.com (Denis Gleeson)
Date: 27 Jun 2003 13:09:57 -0700
Links: << >>  << T >>  << A >>
Hello all

As some might know from my recent postings I am trying to configure 
an FPGA over a PC parallel port using my own SW.

Today I managed to get SW to configure a spartan xl device through a xilinx 
parallel download cable. This is a partial step towards my desired solution.

In the hope that this code may help others it is included below. I targeted 
a spartan xl. with some minor modifications this code should work for other
FPGAs.

Regards

Denis


/*****************************************************************************
** Project: Use a Dos Executable to configure a spartan xl FPGA.
**          This software operates with a xilinx parallel cable.
**          Im using Parallel cable IV but any should work.
**          The project was a WIN 32 console application. Built using MSVC 6.
**          Run code in debug mode as  _inp and _outp will not operate
**          otherwise. Running the .exe in a dos window appears to succeed but
**          in fact it doesnt. I used Win ME but 95 or 98 should be OK also.
**          Not so sure about 2K, XP etc.
**
** File   : CFG_bit.c 
**
** Author : Denis Gleeson
** 
** 
** Notes 1.  Assumptions made:  i.e. things that need changing for other FPGAs.  
**           (a) Parallel port address starts at 0x378
**           (b) configuration file is a .bit file.
**           (c) configuration file is in the specified directory.
**           (e) configuration file has less than 64K Bytes.
**           (f) Device is a xilinx xcs05xl.
**
**       2.  Program based on the work of Brittle. Thanks to Philip Freidin
**           for the FPGA- FAQ and Question: How can I download a FPGA from 
**           a linux System
**
**       3.  Use this code at your own risk. I guarantee nothing.
**           It worked for me, it may not work for you.  
**           Its just a quick test I put together to allow me to move
**           on to my required solution.
**
****************************************************************************/
#include <stdio.h> 
#include <conio.h> 

#define DATA 0x378 
#define STATUS DATA+1 
#define CONTROL DATA+2 
 
char buf[64000]; 

 
int main(void) 
{ 
 FILE *bitfile; 
 
 unsigned char head_key; 
 unsigned long int length=0;
 unsigned char length1;
 unsigned char length2;
 unsigned char length3;
 unsigned char length4;

 unsigned int i =0; 
 int j=0; 
 unsigned char tmp=0; 

 bitfile = fopen("C:/work/projects/comisn10.bit", "rb"); 
 
 if(bitfile== NULL)
 {
 	printf("Cant open File \n");
 	return(0); 
 }	

 head_key = 0; 
 
 while (head_key != 0x65) 
 { 
    fread(&head_key, 1, 1, bitfile); 
    printf("%c ",head_key);
	 
 	 if (head_key == 0x65) 
  		{ 
			// Cant use fread to read 4 bytes in one go because 
			// I end up with words switched and bytes within words switched.
			// read Byte 1
			fread(&length1, 1, 1, bitfile); 
			length = length | (length1<<24);
			// read Byte 2
			fread(&length2, 1, 1, bitfile); 
			length = length | (length2<<16);
			// read Byte 3
			fread(&length3, 1, 1, bitfile); 
			length = length | (length3<<8);
			// read Byte 4
			fread(&length4, 1, 1, bitfile); 
			length = length | (length4);
			// Now read length bytes into the buffer.
			fread(buf,length, 1, bitfile); 
  		} 
 } 

 fclose(bitfile); 
 printf("\n"); 

 _outp(CONTROL,0x04);  
   
 // sense VCC 
 tmp =_inp(STATUS);
 tmp = (tmp>>3) & 1; 
 if (!tmp) 
 { 
  printf("cabel not found\n"); 
  return(0); 
 } 
 else 
  printf("cabel detected\n"); 

 // clear config 
 _outp(DATA,0x10);
 printf("configuration memory cleared\n"); 
 _outp(DATA,0x14);

 // Actually configure the FPGA
 printf("start loading %d bytes\n", length); 
 printf("Programming %d bits\n", length *8); 
 
 for (i=0; i<length; i++) 
 { 
  for (j=7; j>=0; j--) 
  { 
    tmp = (buf[i]>>j) & 1; 
	_outp( DATA,tmp|0x14); 
	_outp( DATA,tmp|0x16); 

  } 

 } 
 printf("finish loading\n"); 

 // Done 
 tmp =_inp(STATUS);
 tmp = (tmp>4)&1; 
 if (tmp) 
  printf("DONE!\n"); 
 else 
  printf("FAILED!\n"); 

 printf("Hit any Key to Continue. \n"); 

 while(!kbhit())
 {
	 ;
 }

 return (0); 
}

Article: 57337
Subject: ASIC divider in FPGA?
From: skepticon@yahoo.com (Skept)
Date: 27 Jun 2003 14:11:05 -0700
Links: << >>  << T >>  << A >>
Is there a limitation to what type of divider can be implemented in
FPGA hardware vs. ASIC?  I come from the ASIC side, and I have
something in verilog like: assign Z = (a[15:0] / b[9:0]); and I get an
error saying the divisor must be a power of 2.  Looking around, it
seems that this cannot be implemented into HW??

Any advice is appreciated.

Article: 57338
Subject: Re: Configure an FPGA from the PCs Parallel port. A solution.
From: "Kasper Pedersen" <ngfilter@kasperkp.dk>
Date: Fri, 27 Jun 2003 23:11:30 +0200
Links: << >>  << T >>  << A >>

"Denis Gleeson" <dgleeson@utvinternet.com> wrote in message
news:6f080894.0306271209.67e598ba@posting.google.com...
> Hello all
>
> As some might know from my recent postings I am trying to configure
> an FPGA over a PC parallel port using my own SW.

Looking at the init/load code:

>  // clear config
>  _outp(DATA,0x10);
>  printf("configuration memory cleared\n");
>  _outp(DATA,0x14);
>
>  // Actually configure the FPGA
>  printf("start loading %d bytes\n", length);
>  printf("Programming %d bits\n", length *8);
>
>  for (i=0; i<length; i++)
>  {
>   for (j=7; j>=0; j--)
>   {
>     tmp = (buf[i]>>j) & 1;
> _outp( DATA,tmp|0x14);
> _outp( DATA,tmp|0x16);
>   }

The code has no guaranteed delay between releasing /program and clocking
in the first bit, and it does not check /init. This bit us on an XCS30
design:
What you see is that once you release /prog, /init will stay low for
some time (max 4 ms for the XCS30), and only then can you start clocking
data into the device.
My guess is that, in this case, the printf's are supplying enough delay
that it works for the 05xl (console output under windows is slooow).

/Kasper



Article: 57339
Subject: STARTUP_WAIT
From: "Martin Euredjian" <0_0_0_0_@pacbell.net>
Date: Fri, 27 Jun 2003 21:12:14 GMT
Links: << >>  << T >>  << A >>
Xilinx, V2, DCM's:

Pro's and con's of setting STARTUP_WAIT = "TRUE"?
When to use it and when not. Why?

On first inspection, it would seem to me that you'd always want to have this
set to "TRUE" unless you have a design where you know that an external clock
is not guaranteed to be available after configuration or "manually"
resetting a DCM.

Thanks,


-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Martin Euredjian

To send private email:
0_0_0_0_@pacbell.net
where
"0_0_0_0_"  =  "martineu"




Article: 57340
Subject: projects for beginners
From: dreamguy007@hotmail.com (Jack)
Date: 27 Jun 2003 14:28:03 -0700
Links: << >>  << T >>  << A >>
hello.

i'm just getting started to learn fpga and i'm interested in dsp
design in fpga.
what small projects do you recommend to start with? 
i need to define small projects so that i have goals, rather than
studying without any target.

thanks!

Article: 57341
Subject: Re: ASIC divider in FPGA?
From: "Jon Beniston" <dontspam@me.you.bastards>
Date: Fri, 27 Jun 2003 21:46:27 GMT
Links: << >>  << T >>  << A >>

"Skept" <skepticon@yahoo.com> wrote in message
news:bbdf4ddd.0306271311.56bcdacb@posting.google.com...
> Is there a limitation to what type of divider can be implemented in
> FPGA hardware vs. ASIC?

No.

I come from the ASIC side, and I have
> something in verilog like: assign Z = (a[15:0] / b[9:0]); and I get an
> error saying the divisor must be a power of 2.  Looking around, it
> seems that this cannot be implemented into HW??

The limitation is with your synthesis tool, not the capabilities of FPGA.

> Any advice is appreciated.

Buy a good book on computer arithmetic and implement the operation yourself
(or alternatively search a bit hardware around the web and you're bound to
find some example code). Don't expect the resultant hardware to be small.

Cheers,
JonB



Article: 57342
Subject: Re: MIPS instruction set?
From: Sander Vesik <sander@haldjas.folklore.ee>
Date: Fri, 27 Jun 2003 22:10:12 +0000 (UTC)
Links: << >>  << T >>  << A >>
Nicholas C. Weaver <nweaver@ribbit.cs.berkeley.edu> wrote:
> In article <1056453399.643807@haldjas.folklore.ee>,
> Sander Vesik  <sander@haldjas.folklore.ee> wrote:
>>> There is always Sparc, which doesn't have a liscence fee to use the
>>> ISA, only to use the SPARC trademark.
>>
>>sparc licence costs $99  - to use the mark i believe you have to pass
>>certification, which probably costs more. But don't quote me on this
> 
> http://www.sparc.org/faq.html
> 
> The "registry fee" appears to be for tracking purposes, not for use,
> according ot their FAQ.
> 
>>> Of course, register windows are a bad idea, but hey, nothing's
>>> perfect.
>>
>>but with block rams, there are much less problems. 
> 
> Even with BlockRAMs, its that register windows:
> 
> a) FUBAR garbage collectors by hiding the root set

Observing the number of garbage collectors working just fine on 
sparc, 

> 
> b) Don't actually speed up function calling, as long call-chains you
> end up spilling MORE data than you otherwise would.

This is plain wrong. Among other things:

	* it assumes a specific calling convention - you could use something
	  else than the "standard" of doing save/restore on function entry / exit -
	  and instead use it for fast thread switches.

	* it does speed up function calls

	* it allows for very fast tail calls and polymorphism 

	* it does not speed down long chains, it just doesn't give any 
	  additional benefit in that case - with the sole exception of
	  exteremely grossly braindead compilers that can't manage tail calls

The register windows are just a cache for parts of stack frames - like all caches,
you get bet perfomance if you don't do braindead things.


-- 
	Sander

+++ Out of cheese error +++

Article: 57343
Subject: Re: why so many problems Xilinx ?
From: visualfor@yahoo.com (Naveed)
Date: 27 Jun 2003 15:40:49 -0700
Links: << >>  << T >>  << A >>
Hello,

I have used both Xilinx and Altera extensively.  

Xilinx: Virtex, VirtexE, VirtexII (but not pro)
Altera: CPLDS, 10K, 10KA, 10KE, 6K, Cyclone (but not Apex, or Stratix)


here's my thoughts:

If you are designing a high speed logic (above 100Mhz core), Altera
might be risky.  Xilinx software helps you squeeze the last 0.1ns off
of your chip. In xilinx, you can route each and every net manually.
Altera's floor planner is a joke when compared to xilinx.  And, Altera
does not even have FPGA editor (for manual tweeking).

If you are using a lot of small shift registers and memory, xilinx
lets you convert LUT into RAM.  No such feature in Altera.

For all other designs, consider using Altera.  Altera's parts are
cheaper and readily available.  I just love the fact that Altera has
fix pricing on 6K and Cyclone, whether you buy 1, or 100.  Xilinx just
started competing with Altera on pricing.  Two years ago, I would use
Altera in any low-cost solution, if the speed wasn't too high.  With
Spartan2/3, I now, do consider xilinx.

Altera's software is more user friendly.  With Quartus, I am not that
sure, but I don't think there ever have been a better CAD tool than
Maxplus2.  For quick and dirty digital design, I will always stick
with Altera, as long as they have MaxPlus2.

As far as technical support go, both companies suck (probably Altera
sucks more than xilinx).  They normally hire fresh college graduate
for support, and those kids can't answer much.

I am not complaining, as I work for small company.  I am sure Cisco
probably gets better support.  I do understand that.


qlyus@yahoo.com (qlyus) wrote in message news:<da71446f.0306262230.33862eda@posting.google.com>...
> I do not know why you see my post is Xilinx bashing.  I did not even
> try to criticise Xilinx.  Are those posts of Xilinx problems real? Is
> it true that there are few Altera related?
> 
> As a matter of fact, I am a long time or all time Xilinx user, I did
> not know (or did not want to know) altera product line well.  I
> started to look at Altera Stratix closely when I started a big DSP
> project a couple of month ago.  It looks very good in features and
> performance (as it says).  The documentation is far better than
> Xilinx, for example, the DSP section of Stratix User Guider.  Altera
> rep/distributor did not walk away as Xilinx people did when they heard
> small annual volume.
> 
> My next step went to software.  Again as a long time Xilinx user
> (since M1.2), I do not know anything of Altera backend software. 
> Browsing and searching this NG is one way trying to gether this kind
> of information.  I read this NG and Xilinx realated posts quite often.
>  But I wonder there are very few Altera post, especially its software
> problem related, people talked more on chip to chip comparison.  It
> even surprised me alittle when I counted the numbers of Xilinx vs
> Altera posts.
> 
> I do not see your logic how my post affects the value of Xilinx
> appearance in this NG, and what kind of criticism is constructive or
> destructive.  Don't you see Peter and Austin already appeared in this
> thread?
> 
> -qlyus
>

Article: 57344
Subject: Re: MIPS instruction set?
From: nweaver@ribbit.CS.Berkeley.EDU (Nicholas C. Weaver)
Date: Fri, 27 Jun 2003 23:40:33 +0000 (UTC)
Links: << >>  << T >>  << A >>
In article <1056751822.55116@haldjas.folklore.ee>,
Sander Vesik  <sander@haldjas.folklore.ee> wrote:
>> a) FUBAR garbage collectors by hiding the root set
>
>Observing the number of garbage collectors working just fine on 
>sparc, 

Its a performance hit, because they have to force a spill to get at
the root set.

And if you want to hear some REAL curses, talk to those in charge of
Java's GC on the SPARC.  Especially the multiprocessor
implementation's GC.

>> b) Don't actually speed up function calling, as long call-chains you
>> end up spilling MORE data than you otherwise would.
>
>This is plain wrong. Among other things:

>	* it assumes a specific calling convention - you could use
>something else than the "standard" of doing save/restore on function
>entry / exit - and instead use it for fast thread switches.

>	* it does speed up function calls

>	* it allows for very fast tail calls and polymorphism 
>
>	* it does not speed down long chains, it just doesn't give any 
>	  additional benefit in that case - with the sole exception of
>	  exteremely grossly braindead compilers that can't manage tail calls

It does because you potentially spill a lot MORE registers than you
otherwise would, because the window assume 8 local registers and 8 arg
registers to be saved, IIRC.

There was a masters done many years back which I'm trying to get a
reference to, where MIPS code was transliterated/translated to the
SPARC, compared with code complied directly onto the SPARC to see the
impact of register windows.
-- 
Nicholas C. Weaver                                 nweaver@cs.berkeley.edu

Article: 57345
Subject: Re: why so many problems Xilinx ?
From: nweaver@ribbit.CS.Berkeley.EDU (Nicholas C. Weaver)
Date: Fri, 27 Jun 2003 23:42:12 +0000 (UTC)
Links: << >>  << T >>  << A >>
In article <864a80dc.0306271440.79910d76@posting.google.com>,
Naveed <visualfor@yahoo.com> wrote:
>As far as technical support go, both companies suck (probably Altera
>sucks more than xilinx).  They normally hire fresh college graduate
>for support, and those kids can't answer much.

The major exception is comp.arch.fpga, where you have Peter Alfke and
Austin Lesea answering Xilinx questions.
-- 
Nicholas C. Weaver                                 nweaver@cs.berkeley.edu

Article: 57346
Subject: Re: Configure an FPGA from the PCs Parallel port. A solution.
From: "John_H" <johnhandwork@mail.com>
Date: Sat, 28 Jun 2003 00:00:13 GMT
Links: << >>  << T >>  << A >>
Just for grins, generate a binary file from the Xilinx tools and compare it
to the bit file.

The header should be stripped off to begin with and you might have better
luck with the byte ordering (or perhaps not).  It's just another form of
output - one that we use exclusively.



Article: 57347
Subject: Re: ASIC divider in FPGA?
From: "Jerry" <nospam@nowhere.com>
Date: Fri, 27 Jun 2003 20:30:50 -0400
Links: << >>  << T >>  << A >>

"Jon Beniston" <dontspam@me.you.bastards> wrote in message
news:920b1dbeef215215a6fc038ea46a0b0e@TeraNews...
>
> "Skept" <skepticon@yahoo.com> wrote in message
> news:bbdf4ddd.0306271311.56bcdacb@posting.google.com...
> > Is there a limitation to what type of divider can be implemented in
> > FPGA hardware vs. ASIC?
>
> No.
>
> I come from the ASIC side, and I have
> > something in verilog like: assign Z = (a[15:0] / b[9:0]); and I get an
> > error saying the divisor must be a power of 2.  Looking around, it
> > seems that this cannot be implemented into HW??
>
> The limitation is with your synthesis tool, not the capabilities of FPGA.
>
> > Any advice is appreciated.
>
> Buy a good book on computer arithmetic and implement the operation
yourself
> (or alternatively search a bit hardware around the web and you're bound to
> find some example code). Don't expect the resultant hardware to be small.
>
> Cheers,
> JonB
>
>
To expand on what JonB said, there is a trade off between gate count and
number of clock cycles required to perform the operation.



Article: 57348
Subject: Re: why so many problems Xilinx ?
From: "Paul Leventis" <paul.leventis@utoronto.ca>
Date: Sat, 28 Jun 2003 00:35:36 GMT
Links: << >>  << T >>  << A >>
Hi Naveed,

I'm steering clear from most of this thread -- bashing of anyone, even X
;-), is silly if you ask me.  But I thought I'd respond to a few of your
criticisms.

> If you are designing a high speed logic (above 100Mhz core), Altera
> might be risky.  Xilinx software helps you squeeze the last 0.1ns off
> of your chip. In xilinx, you can route each and every net manually.
> Altera's floor planner is a joke when compared to xilinx.  And, Altera
> does not even have FPGA editor (for manual tweeking).

Stratix and Cyclone are perfectly well suited to high-speed logic.  We have
customers running at 300+ Mhz.  As for comparisons vs. competitive
offerings, your best bet is to download the free P & R tools (such as
Quartus Web Edition) and run your own tests with a real design.  You will
likely be pleasantly surprised at the results.

As for achieving timing closure and doing manual tweaks, take a look at
appliation note AN198.  As of Quartus II 3.0 (which should be out shortly),
we offer a new Chip Editor feature and a bunch of timing-closure features
that you may find handy.  I've never floorplanned a design nor used Xilinx's
tools to do so, so I can't comment on your comparison.  But in general, we
find that while some designs benefit from floorplanning for timing closure;
most designs (in Stratix and Cyclone) do not.  The first step when we
receive a design that is not hitting timing is for us to try removing the
user's region constraints -- this often does the trick!

As far as routing by hand goes... I honestly haven't ever seen a case where
a human could beat the Quartus router (barring major bugs).  Ignoring
congestion, the router should find the fastest path every time.  With
congestion, what appears as a sub-optimal route often turns out to be the
correct choice -- if that route had been shortened, some other route would
have lengthened to the point that the critical path length increased.

Regards,

Paul Leventis
Altera Corp.

(Opinions are my own)



Article: 57349
Subject: Re: ERROR:iMPACT:583
From: Neil Glenn Jacobson <neil.jacobson@xilinx.com>
Date: Fri, 27 Jun 2003 18:02:19 -0700
Links: << >>  << T >>  << A >>

tk,

The way to use the two options is as follows:

Option 1 queries the boundary-scan chain and indentifies the devices contained on it.  Users are then guided through the process of associating programming data files with each device in the
chain.  After this step, users can perform whichever function they require on the devices in the chain.  This is the default option if you click through the wizard without changing the button settings,

Option 2 allows sophisticated users to manually create a boundary-scan chain of devices to match that on the target system by instantiating devices and programming data files on the tableau.
 When the instantiated devices match the composition of the boundary-scan chain  the user can then perform operations on the devices as required.  If the instantiated boundary-scan chain in
iMPACT does not match the physical chain of the target system, you get errors of the sort you experienced

tk wrote:

  the problem is solved!

  There are two options in iMPACT in bounday-scan chain:
  1. Automatically connect to cable and identify Boundary-Scan chain
  2. Enter a Boundary-Scan Chain

  If I choose 2, only the xc2vp7 is chosen, which causes the error.
  If I choose 1, there are 2 devices detected in the bounday-scan chain,
  namely xccace and xc2vp7. The xc2vp7 can be successfully programmed in this
  case by assigning the correct .bit file.

  "tk" <tokwok@hotmail.com> gl news:bde17q$igm$1@www.csis.hku.hk...
    

    I'm quite sure that the physical cable connection is ok

    actually, the platform I use is ML300 and I try to program the xc2vp7 via
    the
    Parallel Cable IV. Does anyone have the experience on it ? Are there any
    settings on the ML300 board I should pay attention to ?

    Thanks in advance.

    tk

    "Neil Glenn Jacobson" <neil.jacobson@xilinx.com> wrote in message
    news:3EF9F98F.30402@xilinx.com...
        

     iMPACT is telling you that you are getting all 0's back from the device
     when it is expecting the IDCODE.  Assuming the device is currently
     unprogrammed, I would first check your physical cable connections to the
     device making certain that the device itself and the cable are both
     properly powered

     This error does not appear to be related to the software

     tk wrote:
           

       Hi all,

       I get the following error when I try to program xc2vp7 device using
               

    iMPACT
        

       (ISE 5.1i):

       ERROR:iMPACT:583 - '1': The idcode read from the device does not match
               

    the
        

       idcode in the bsdl File.
       INFO:iMPACT:629 - '1':  Device IDCODE :
               

  00000000000000000000000000000000
    

       INFO:iMPACT:630 - '1': Expected IDCODE:
               

  00000001001001001010000010010011
    

       I've found that this problem is discussed in the Xilinx web page:

               

  http://support.xilinx.com/xlnx/xil_ans_display.jsp?iLanguageID=1&iCountryID=
    

       1&getPagePath=16490

       However, I don't use the encryption function for the bitstream. Why I
               

    still
        

       get the problem?
       Even I install the service pack 3, the problem is still there.
       Can anyone kindly tell me how to solve it?
       Thanks in advance.

       tk


       PS:  the following are the options used by BitGen:

       Summary of Bitgen Options:
       +----------------------+----------------------+
       | Option Name          | Current Setting      |
       +----------------------+----------------------+
       | Compress             | (Not Specified)*     |
       +----------------------+----------------------+
       | Readback             | (Not Specified)*     |
       +----------------------+----------------------+
       | CRC                  | Enable**             |
       +----------------------+----------------------+
       | DebugBitstream       | No**                 |
       +----------------------+----------------------+
       | ConfigRate           | 4**                  |
       +----------------------+----------------------+
       | StartupClk           | JtagClk              |
       +----------------------+----------------------+
       | DCMShutdown          | Disable**            |
       +----------------------+----------------------+
       | DisableBandgap       | No**                 |
       +----------------------+----------------------+
       | CclkPin              | Pullup**             |
       +----------------------+----------------------+
       | DonePin              | Pullup**             |
       +----------------------+----------------------+
       | HswapenPin           | Pullup*              |
       +----------------------+----------------------+
       | M0Pin                | Pullup**             |
       +----------------------+----------------------+
       | M1Pin                | Pullup**             |
       +----------------------+----------------------+
       | M2Pin                | Pullup**             |
       +----------------------+----------------------+
       | PowerdownPin         | Pullup**             |
       +----------------------+----------------------+
       | ProgPin              | Pullup**             |
       +----------------------+----------------------+
       | TckPin               | Pullup**             |
       +----------------------+----------------------+
       | TdiPin               | Pullup**             |
       +----------------------+----------------------+
       | TdoPin               | Pullnone             |
       +----------------------+----------------------+
       | TmsPin               | Pullup**             |
       +----------------------+----------------------+
       | UnusedPin            | Pulldown**           |
       +----------------------+----------------------+
       | GWE_cycle            | 6**                  |
       +----------------------+----------------------+
       | GTS_cycle            | 5**                  |
       +----------------------+----------------------+
       | LCK_cycle            | NoWait**             |
       +----------------------+----------------------+
       | Match_cycle          | NoWait               |
       +----------------------+----------------------+
       | DONE_cycle           | 4**                  |
       +----------------------+----------------------+
       | Persist              | No*                  |
       +----------------------+----------------------+
       | DriveDone            | No**                 |
       +----------------------+----------------------+
       | DonePipe             | No**                 |
       +----------------------+----------------------+
       | Security             | None**               |
       +----------------------+----------------------+
       | UserID               | 0xFFFFFFFF**         |
       +----------------------+----------------------+
       | ActivateGclk         | No*                  |
       +----------------------+----------------------+
       | ActiveReconfig       | No*                  |
       +----------------------+----------------------+
       | PartialMask0         | (Not Specified)*     |
       +----------------------+----------------------+
       | PartialMask1         | (Not Specified)*     |
       +----------------------+----------------------+
       | PartialMask2         | (Not Specified)*     |
       +----------------------+----------------------+
       | PartialGclk          | (Not Specified)*     |
       +----------------------+----------------------+
       | PartialLeft          | (Not Specified)*     |
       +----------------------+----------------------+
       | PartialRight         | (Not Specified)*     |
       +----------------------+----------------------+
       | Encrypt              | No**                 |
       +----------------------+----------------------+
       | Key0                 | pick*                |
       +----------------------+----------------------+
       | Key1                 | pick*                |
       +----------------------+----------------------+
       | Key2                 | pick*                |
       +----------------------+----------------------+
       | Key3                 | pick*                |
       +----------------------+----------------------+
       | Key4                 | pick*                |
       +----------------------+----------------------+
       | Key5                 | pick*                |
       +----------------------+----------------------+
       | Keyseq0              | M*                   |
       +----------------------+----------------------+
       | Keyseq1              | M*                   |
       +----------------------+----------------------+
       | Keyseq2              | M*                   |
       +----------------------+----------------------+
       | Keyseq3              | M*                   |
       +----------------------+----------------------+
       | Keyseq4              | M*                   |
       +----------------------+----------------------+
       | Keyseq5              | M*                   |
       +----------------------+----------------------+
       | KeyFile              | (Not Specified)*     |
       +----------------------+----------------------+
       | StartKey             | 0*                   |
       +----------------------+----------------------+
       | StartCBC             | pick*                |
       +----------------------+----------------------+
       | IEEE1532             | No*                  |
       +----------------------+----------------------+
       | Binary               | No**                 |
       +----------------------+----------------------+
        *  Default setting.
        ** The specified setting matches the default setting.







Site Home   Archive Home   FAQ Home   How to search the Archive   How to Navigate the Archive   
Compare FPGA features and resources   

Threads starting:
1994JulAugSepOctNovDec1994
1995JanFebMarAprMayJunJulAugSepOctNovDec1995
1996JanFebMarAprMayJunJulAugSepOctNovDec1996
1997JanFebMarAprMayJunJulAugSepOctNovDec1997
1998JanFebMarAprMayJunJulAugSepOctNovDec1998
1999JanFebMarAprMayJunJulAugSepOctNovDec1999
2000JanFebMarAprMayJunJulAugSepOctNovDec2000
2001JanFebMarAprMayJunJulAugSepOctNovDec2001
2002JanFebMarAprMayJunJulAugSepOctNovDec2002
2003JanFebMarAprMayJunJulAugSepOctNovDec2003
2004JanFebMarAprMayJunJulAugSepOctNovDec2004
2005JanFebMarAprMayJunJulAugSepOctNovDec2005
2006JanFebMarAprMayJunJulAugSepOctNovDec2006
2007JanFebMarAprMayJunJulAugSepOctNovDec2007
2008JanFebMarAprMayJunJulAugSepOctNovDec2008
2009JanFebMarAprMayJunJulAugSepOctNovDec2009
2010JanFebMarAprMayJunJulAugSepOctNovDec2010
2011JanFebMarAprMayJunJulAugSepOctNovDec2011
2012JanFebMarAprMayJunJulAugSepOctNovDec2012
2013JanFebMarAprMayJunJulAugSepOctNovDec2013
2014JanFebMarAprMayJunJulAugSepOctNovDec2014
2015JanFebMarAprMayJunJulAugSepOctNovDec2015
2016JanFebMarAprMayJunJulAugSepOctNovDec2016
2017JanFebMarAprMayJunJulAugSepOctNovDec2017
2018JanFebMarAprMayJunJulAugSepOctNovDec2018
2019JanFebMarAprMayJunJulAugSepOctNovDec2019
2020JanFebMarAprMay2020

Authors:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Custom Search