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 69600

Article: 69600
Subject: Re: One issue about free hardware
From: johnjakson@yahoo.com (john jakson)
Date: 14 May 2004 18:17:51 -0700
Links: << >>  << T >>  << A >>
jon@beniston.com (Jon Beniston) wrote in message news:<e87b9ce8.0405140056.23ca67ac@posting.google.com>...
> > > Ok, maybe not that particular case, but most other configurations of
> > > dual-port RAM can be infered. In Verilog at least, isn't this a
> > > problem with the language rather than the FPGA tools (i.e. you can't
> > > write to the same variable from two different processes)?
> > 
> > Verilog does not have this restriction.  I've searched the LRM and
> > I've run testcases through two reputable implementations without
> > complaints (ncverilog, icarus).
> 
> You are correct. Although it is only ever supported for simulation. I
> can kind of understand why though. Take the following:
> 
> module test(c1, c2, a, b, d);
> input c1, c2, a, b;
> output d;
> reg d;
> always @(posedge c1)
> 	d <= a;
> always @(posedge c2)
> 	d <= b;
> endmodule
> 
> What logic would you synthesize it to? Have you tried this with a
> behavioural synthesis tool? Maybe that could do a better job.
>  
> > Hence my frustration.  We can precisely describe a dual port block-ram
> > in Verilog, yet the tools draw a blank.  We can even preset RAMs with
> > values, but most, if not all, completely disregard initial statements.
> 
> Isn't this fixed in v200x? I do agree it's all a bit crap.
>  
> Cheers,
> JonB

BRams are a very special case since most of the time the 2 address are
different so the 2 clock domains are fully independant. If the address
should be the same then the result of the 2 concurrent writes is
undefined but the user should have taken care about that. given that,
the synthesis should be able to handle it with a warning for same
addresses.

regards

johnjakson_usa_com

Article: 69601
Subject: Re: Simple way to generate random netlists of ALU cells
From: Fred Ma <fma@doe.carleton.ca>
Date: 15 May 2004 02:47:13 GMT
Links: << >>  << T >>  << A >>
Fred Ma wrote:
> I'm actually not trying to model the ALU-like cell.  I'm trying to
> generate random netlist of those cells.  However, a completely
> random net list is not realistic.

Ray Andraka wrote:
> Why?

Hi, Ray,

Not sure if you remember, but we met (I think at FCCM) a few
years back.  Hope things are going well with you.

Why am I trying to generate pseudorandom netlists?  I'm testing out a
placement algorithm for ALU arrays.

Why is a random netlist not realistic?  Designs usually have some kind
of hierarchy (effective hierarchy, even if not explicit).  I'm not an
expert in this area, but I've looked at a few papers on graph
clustering algorithms.  Hierarchical information is often captured as
a rooted tree, where each internal node represents a subgraph of the
netlist with a somewhat minimal cutset (compared to an arbitrarcy cut
at the same level of clustering).  A truly random graph will probably
not have the same degree of hierarchical structure.  You can still
force-feed it into a clustering algorthm to impose hierarchy, but the
criteria for choosing subgraphs will probably not be that distinct
between candidate subgraphs.

Intuitively, I don't expect a totally random graph to be easily
placable because there's too much random interdepedence between
arbitrary nodes.  A real netlist has more localization of
interconnect.

I'm currently looking through some papers on the topic of random graph
generation by Hutton & Pistorius (upon their recommendation).
However, they are meant for FPGAs, whereas the cell I mentioned in my
original post is quite different.  There are far fewer of them in a
circuit, and there are many more inputs.  I'm trying to get some
guiding considerations to cobble my own quick-and-dirty code in
matlab.

Fred
-- 
Fred Ma, fma@doe.carleton.ca
Dept. of Electronics, Carleton University, Ottawa, Ontario, Canada
*|  If I don't reply to your email, please sent it again.  I may  |*
*|  have erased along with the deluge of post-filter spam.        |*

Article: 69602
Subject: Re: Simple way to generate random netlists of ALU cells
From: Fred Ma <fma@doe.carleton.ca>
Date: 15 May 2004 02:58:40 GMT
Links: << >>  << T >>  << A >>
Fred Ma wrote:
> 
> Hierarchical information is often captured as
> a rooted tree, where each internal node represents a subgraph of the
> netlist with a somewhat minimal cutset (compared to an arbitrarcy cut
> at the same level of clustering).  A truly random graph will probably
> not have the same degree of hierarchical structure.  You can still
> force-feed it into a clustering algorthm to impose hierarchy, but the
> criteria for choosing subgraphs will probably not be that distinct
> between candidate subgraphs.

I just read what I wrote -- it's clear to someone who has seen it
before, but confusing otherwise.  The rooted tree is different from
graph for the netlist.  The tree just captures subsumption information
(a parent node subsumes a child node, thus forming a more aggregate
node, or "supernode").  If you travel down a path on the rooted tree,
you are travelling deeper and deeper into the nested supernodes.  When
you reach the leaf nodes at the bottom of the tree, you reached the
actual nodes in the circuit graph.  The physical interconnect doesn't
show up in the rooted tree at all.

Actually, maybe that picture isn't so obscure.  I think it might be
commoon placed for graph partitioning algorithms.

Fred
-- 
Fred Ma, fma@doe.carleton.ca
Dept. of Electronics, Carleton University, Ottawa, Ontario, Canada
*|  If I don't reply to your email, please sent it again.  I may  |*
*|  have erased along with the deluge of post-filter spam.        |*

Article: 69603
Subject: Re: best fpga development board?
From: tom_systek@msn.com (Tom Seim)
Date: 14 May 2004 21:54:11 -0700
Links: << >>  << T >>  << A >>
geoffrey wall <wallge@eng.fsu.edu> wrote in message news:<c82o6r$g2m$1@news.fsu.edu>...
> Im looking to do some real-time video processing algorithms,
> but i am mostly a software person... i need an fpga with good 
> development tools (not buggy) that will be easy to use for someone who 
> is learning how to program hdl and use the hardware for the first time.
> Ideally i would like a powerful and flexible board with good development 
> tools, good tech support and documentation. Any suggestions?

What ever you do, don't buy ANYTHING from Nu Horizons. Their customer
service sucks! And they discontinue products with no notice.

Article: 69604
Subject: Re: best fpga development board?
From: "Alex Gibson" <me@privacy.net>
Date: Sat, 15 May 2004 16:40:20 +1000
Links: << >>  << T >>  << A >>

"geoffrey wall" <wallge@eng.fsu.edu> wrote in message
news:c82o6r$g2m$1@news.fsu.edu...
> Im looking to do some real-time video processing algorithms,
> but i am mostly a software person... i need an fpga with good
> development tools (not buggy) that will be easy to use for someone who
> is learning how to program hdl and use the hardware for the first time.
> Ideally i would like a powerful and flexible board with good development
> tools, good tech support and documentation. Any suggestions?
>
> thanks
>

A different question to ask is
what is the budget for an fpga board ?

And what size do you need ?

For lower end boards take a look at
www.digilentinc.com


Have you guys had a look at the Anlog devices
black fin boards ?

http://www.analogdevices.com/Analog_Root/static/promotions/blackfin750/?CT=adi_webcastad2_homepage.gif

http://www.analogdevices.com/processors/epProductPage/0,2542,BF533%252DHARDWARE,00.htm

http://www.analogdevices.com/processors/epProductPage/0,2542,BF561%252DHARDWARE,00.htm



Article: 69605
Subject: Re: Looking for Synario 3.0 (Lattice)
From: coop62194@yahoo.com (David Cooprider)
Date: 14 May 2004 23:54:45 -0700
Links: << >>  << T >>  << A >>
Your best bet would be to get Lattice to send you a copy of ispDesign
Expert
V8.4 (ispDE V8.4) it will support isp1032-60 and isp1032E-70 devices, 
all the older devices.  Request a license as well based on your C
drive serial number.
Go to a DOS prompt and type "C:\vol" and send the request to
lic_admin@latticesemi.com along with old Lattice key ID (10 digit
number).

Try Lattice Tech Support.  techsupport@latticesemi.com
They should be able to help.

The spawning problem I ran into a few years ago.  If I remember
correctly
the pdsplus environment variable had spaces after the last character:
pdsplus=C:\pdsplus\bin (do not have any spaces after the n in bin)
this was in a really old version of the software V5.0 or older.

Also no spaces where you install the software and no spaces in file
names
or directory names.

If you can get the ispDE V8.4 to get to the older devices you will
need to
get that info from Lattice.  Just let them know what you need.
Hope this helps.

--Coop


Jim Granville <no.spam@designtools.co.nz> wrote in message news:<4R%oc.1958$FN.211542@news02.tsnz.net>...
> Fabio G. wrote:
> <snip>
> > I looked in SYNDPM.exe with an HEX file viewer.
> > I found some messages:
> > 
> > LatticeStdioWinID   LatticeAppQuit  LatticeAppStart suspend continue  
> >  terminate   beat    SYNDPM EXIT MESSAGE Syndpm Exiting %d  
> > PDS_SYNDPM_DEBUG    SYNDPM DEBUG MESSAGE    SYNDPM CLOSING APPLICATION
> >  SynDPM Closing Application %d, imm:%d   SYNDPM abel_yield ended
> > SYNDPM MESSAGE  Syndpm break received %d    %s  SYNDPM abel_yield
> > started   Sent Heart Beat to Synario environment  SYNDPM To Synario  
> > PDS_SYNDPM_HEARTMSG %s: Child process (%d) exited with status:%d.
> >   Wait Child *** Process is gone?...
> >  Child process ID = %d, is active.
> >   PDS_SYNDPM_CHILDPROC    %s: Wait Child *** received child %d quit
> > with status %d
> >    %s: Wait Child *** received child %d started.
> >   No response from LSC Compiler...
> > Click cancel to abort  returning from spawnvp.
> >     %s: Using Current Child Id (%d) instead of handle.
> >  %s: Child Proc %s ID -- %d
> >  Request to close syndpm received.   Syndpm exiting with status %d  
> > %s
> > %s
> >  ****HERE ******** Received process exit status -1 Possible system
> > problem to spawn child process  PDS_DPM_EXE SYNDPM LICENSE ERROR   
> > for the ispDS+ 5.1 compiler.
> >    FlexLM License file must be copied to the above location
> >    License file %s not found.
> >  Application Registered  SYNDPM DEBUG    ispDS+  rt  PDS_SYNDPM_ARGS
> > LATTICE_CONSOLE_ID=%u   %s/bin/dpm.exe  Environment Variable PDSPLUS
> > is undefined.  PDSPLUS=d:\pdsplus  PDSPLUS=%s
> > PATH=%s
> >  PATH=%s\bin;%s; PATH    Cannot open current context SYNDPM CONTEXT 
> > Env License File    Set License File   
> > LM_LICENSE_FILE=%s\license\license.dat  PDS_LIC=%s  PDSPLUS=%s 
> > LM_LICENSE_FILE=%s  FOUND LM_LICENSE_FILE   LM_LICENSE_FILE PDSLic 
> > PDS_LIC Failed to get PDSPLUS context string    SYNARIO PDSPath ENV
> > PDSPath SYNARIO PDSPLUS ENV PDS_SYNDPM_ENV  PDSPLUS syndpm.log  wt 
> > PDS_SYNDPM_LOG=1    c:\tmp\syndpm.log   PDS_STDIO_DEBUG=1  
> > c:\tmp\syndpm.sio   PDS_SYNDPM_HEARTMSG=1   c:\tmp\syndpm.hbt  
> > PDS_SYNDPM_ENV=1    c:\tmp\syndpm.env   PDS_SYNDPM_ARGS=1  
> > c:\tmp\syndpm.arg   PDS_SYNDPM_DIOMSG=1 c:\tmp\syndpm.msg  
> > PDS_SYNDPM_DEBUG=1  c:\tmp\syndpm.dbg   PDS_SYNDPM_LOG  SYNDPM
> > TKOutputProcMsg  Data String(%d): '%s'   PDS_SYNDPM_DIOMSG   Syndpm
> > Terminate msg received %d    OWNER_PROCESS   CREATE COM WINDOW   %s:
> > Failed to Create Application's COM window.
> >  STDIO PROC %d   laStdioCommClass
> 
>   Hmmm, sounds like this fitter uses the KEY and license scheme of a 
> certain release Synario, so you will need to have all that correctly 
> installed and setup.
> 
> > Maybe with other changes I could find the solution, but I've already
> > lost too much time: I'll try to use the alternative design flow chain.
> 
> If the 'E' version fits, and you have a tool flow for that, sounds like 
> you are OK.
> 
> -jg

Article: 69606
Subject: Re: Clueless newbie question -- what has changed to make moisture such an issue?
From: "Gregory C. Read" <readgc.invalid@hotmail.com.invalid>
Date: Sat, 15 May 2004 08:34:53 GMT
Links: << >>  << T >>  << A >>
The plastic packages used in through hole technology were never subjected to
the extreme temperatures of surface mounting. When a small amount of
moisture is absorbed and then heated during surface mounting, the package
can fracture or even explode when the moisture turns to steam.

-- 
Greg
readgc.invalid@hotmail.com.invalid
(Remove the '.invalid' twice to send Email)


"William H. Maddox III" <NOSPAMmaddox@NOSPAMtransmetaDOTCOM> wrote in
message news:1084578360.741900@palladium.transmeta.com...
> Plastic packages have been used for years, but it is only very recently
> that I've heard of moisture absorption becoming big issue.  Clearly, with
> such dramatic effects on reliability, it can't be that we just were
ignorant
> of a long-standing problem.  What is it about these parts that causes the
> moisture sensitivity, or why has it become such an issue recently?
>
> --Bill



Article: 69607
Subject: Quartus Internal Errors
From: tushitjain@yahoo.com (tushit)
Date: 15 May 2004 02:01:04 -0700
Links: << >>  << T >>  << A >>
Hi,
I know I should be posting this to Altera Support, but I am in a bit
of a hurry and hoping someone on the grp could advise me in parallel.
I get a Quartus internal error while it's doing a P&R. Has anyone seen
this before?? Any workarounds? I see this on 2 different machines both
with enough RAM(1GB).

----------------------------------------------------------------------------
Internal Error: Sub-system: CDB_ATOM, File: cdb_atom_netlist.cpp,
Line: 1585
iter == m_created_from_map.end()
(Fitter pre-processing)
Quartus II Version 3.0 Build 245 10/09/2003 SJ Full Version
Service Pack Installed:  2
---------------------------------------------------

Thanks & Regards
Tushit

Article: 69608
Subject: Re: One issue about free hardware
From: jon@beniston.com (Jon Beniston)
Date: 15 May 2004 03:05:30 -0700
Links: << >>  << T >>  << A >>
johnjakson@yahoo.com (john jakson) wrote in message news:<adb3971c.0405141717.7eea7369@posting.google.com>...
> jon@beniston.com (Jon Beniston) wrote in message news:<e87b9ce8.0405140056.23ca67ac@posting.google.com>...
> > > > Ok, maybe not that particular case, but most other configurations of
> > > > dual-port RAM can be infered. In Verilog at least, isn't this a
> > > > problem with the language rather than the FPGA tools (i.e. you can't
> > > > write to the same variable from two different processes)?
> > > 
> > > Verilog does not have this restriction.  I've searched the LRM and
> > > I've run testcases through two reputable implementations without
> > > complaints (ncverilog, icarus).
> > 
> > You are correct. Although it is only ever supported for simulation. I
> > can kind of understand why though. Take the following:
> > 
> > module test(c1, c2, a, b, d);
> > input c1, c2, a, b;
> > output d;
> > reg d;
> > always @(posedge c1)
> > 	d <= a;
> > always @(posedge c2)
> > 	d <= b;
> > endmodule
> > 
> > What logic would you synthesize it to? Have you tried this with a
> > behavioural synthesis tool? Maybe that could do a better job.
> >  
> > > Hence my frustration.  We can precisely describe a dual port block-ram
> > > in Verilog, yet the tools draw a blank.  We can even preset RAMs with
> > > values, but most, if not all, completely disregard initial statements.
> > 
> > Isn't this fixed in v200x? I do agree it's all a bit crap.
> >  
> > Cheers,
> > JonB
> 
> BRams are a very special case since most of the time the 2 address are
> different so the 2 clock domains are fully independant. If the address
> should be the same then the result of the 2 concurrent writes is
> undefined but the user should have taken care about that. given that,
> the synthesis should be able to handle it with a warning for same
> addresses.

Sure, but it seemed like the OP was suggesting that synthesis tools
should support everything possible in the language.

Cheers,
JonB

Article: 69609
Subject: MCNC benchmarks (was: Simple way to generate random netlists of ALU
From: Fred Ma <fma@doe.carleton.ca>
Date: 15 May 2004 10:55:49 GMT
Links: << >>  << T >>  << A >>
Hi,

I'm looking for a way to get or generate small netlists of high level
cells to test a placement algorithm.  I don't need timing or
functional information about the netslist.  I posted a description of
this in the original thread.

Many of the papers I've read refer to the MCNC testbenches at
http://www.cbl.ncsu.edu.  Many of the links on their benchmark page
seem to be obsolete.  In particular, most links that can provide
background to navigate the site (and its various test suites) are no
longer available.  These include the technical reports, the
Benchmark-review, and the ftp address.

Is there some kind of guide information that helps visitors to the
site choose a test suite?  MCNC seems to be very prevalent, so I
assume this "high-level view" information exists somewhere (maybe in
the technical reports?).  A paper I found that seemed like it might
help is

   ACM/SIGDA Design Automation Benchmarks: Catalyst or Anathema
   Franc Brglez
   IEEE Design & Test of Computers (magazine)
   10(3), Sept., 1993, pp. 87--91.

Strangely, this paper seems to have disappeared from the web.  It
doesn't show up in that issue in IEEE Explore.  Our library also has
access to ACM, which merely points to the IEEE society website.
There, a user login is needed to get the article.  So despite my
personally subscribing to D. and T., and the library having access to
IEEE and ACM, I can't get it.

Thanks for any pointers to where the technical reports might still be
available.  Or, if there is some kind of summary/overview that can
help in determining which of the test suites to start looking at
first, I'd appreciate a referral to that, too.  How do other newcomers
go about getting this "roadmap"?

Fred
-- 
Fred Ma, fma@doe.carleton.ca
Dept. of Electronics, Carleton University, Ottawa, Ontario, Canada
*|  If I don't reply to your email, please sent it again.  I may  |*
*|  have erased along with the deluge of post-filter spam.        |*

Article: 69610
Subject: Re: Simple way to generate random netlists of ALU cells
From: johnjakson@yahoo.com (john jakson)
Date: 15 May 2004 05:07:22 -0700
Links: << >>  << T >>  << A >>
Fred Ma <fma@doe.carleton.ca> wrote in message news:<40A5873B.DC4721CA@doe.carleton.ca>...
> Fred Ma wrote:

 snipping

> Actually, maybe that picture isn't so obscure.  I think it might be
> commoon placed for graph partitioning algorithms.
> 
> Fred

Ok so you are doing P/R work, sort of guessed.

Why not hand design a reasonable datapath with lots of options that
can be parameterised.

Atleast in verilog (& probably VHDL) you can 'define just like in C,
and in verilog2000 use generate (VHDL does that too).

With that, 1 good datapath can now spawn possibly 100s of variations
small & large. For instance design a hierarchy of cells with specific
ports. Now create alternates for a no of these, a good candidate would
be the alu adder. You can have a dumb ripple adder, carry save added,
carry lookahead and so on, all pin compatible but using wildy
different amounts of logic, some regular & some not.

If your datapath has half a dozen widgets, you could make 2,3 ^6
versions in no time and they would be plausible. We end up doing that
anyway but chucking the slower ones along the way. You could do same
in a toy meta HDL if you add a define or generate primitive to it.

regards

johnjakson_usa_com

Article: 69611
Subject: Re: Clueless newbie question -- what has changed to make moisture such an issue?
From: johnjakson@yahoo.com (john jakson)
Date: 15 May 2004 05:14:49 -0700
Links: << >>  << T >>  << A >>
"William H. Maddox III" <NOSPAMmaddox@NOSPAMtransmetaDOTCOM> wrote in message news:<1084578360.741900@palladium.transmeta.com>...
> Plastic packages have been used for years, but it is only very recently
> that I've heard of moisture absorption becoming big issue.  Clearly, with
> such dramatic effects on reliability, it can't be that we just were ignorant
> of a long-standing problem.  What is it about these parts that causes the
> moisture sensitivity, or why has it become such an issue recently?
> 
> --Bill

Actually its been an issue ever since plastic has been used atleast as
far back as I know 25yrs+. ofcourse the plastics are not your typical
"plastic" but are engineered to have the kinds of properties needed to
house ICs. They need to resist moisture, need to be strong enough, and
mustn't contain too much radioactive material, that was the big one
that cought DRAM folks off gaurd 20yrs ago when the US found out how
much better Japan was at packaging.

Theres far more to it than that, google chip packaging etc to find
more

regards

johnjakson_usa_com

Article: 69612
Subject: Re: One issue about free hardware
From: "David Brown" <david@no.westcontrol.spam.com>
Date: Sat, 15 May 2004 14:30:41 +0200
Links: << >>  << T >>  << A >>

"Jon Beniston" <jon@beniston.com> wrote in message
news:e87b9ce8.0405141709.5ef4798f@posting.google.com...
> Roger Larsson <roger.larsson@skelleftea.mail.telia.com> wrote in message
news:<HN7pc.59087$mU6.238562@newsb.telia.net>...
> > Tom Hawkins wrote:
> >
> > > 2. With Confluence under GPL, I have yet to receive a single bug
> > > report or source code contribution.
> > >
> >
> > For some tools it can take a very long time to build a userbase.
> > Step 1. You need to know about it.
> >         - I know about Confluence.
> > Step 2. You need to have something suitable to try it with.
> >         - Maybe this summer...
> > Step 3. It needs to be good enough.
> >         No idea... since I have not tried it yet.
> > Step 4a. It needs to have bugs to give you bug reports :-)
> > Step 4b. It needs to be incomplete to give you feature requests.
>
> Step 4c. It needs to be programmed in a language that your small
> target audience have heard of! How many Verilog/VHDL coders also know
> OCaml? C or Java and you might have a chance...
>

That's certainly a point when you are looking for code contributions, and
for many open source projects it makes sense to consider that when choosing
the language.  But for something like Confluence, I don't think that Tom is
looking for so much in the way of direct coding help at the moment -
feedback and ideas are important, along with contributions to the library,
examples and documentation (how many good Verilog/VHDL coders are also good
at "normal" software development, especially something as specialised as
implementing functional programming languages, regardless of the language?).
I am a great supporter of choosing the right language (or right tool of any
kind, for that matter) for the job - popularity might be one consideration,
but it's not the only one.  In fact, why would anyone be interested in
confluence in the first place if they were not happy to consider new
languages?  The choice of ocaml makes a lot of sense here, actually - it is
a functional programming language itself (with bits of imperitive language
added - sort of the opposite of Python, but for the same reasons), so it
matches the style of confluence programming well.  It was actually top of my
"languages to learn when I have the time" list, but confluence sneaked in on
top...




Article: 69613
Subject: Re: Simple way to generate random netlists of ALU cells
From: Fred Ma <fma@doe.carleton.ca>
Date: 15 May 2004 13:18:00 GMT
Links: << >>  << T >>  << A >>
john jakson wrote:
> 
> Why not hand design a reasonable datapath with lots of options that
> can be parameterised.
> 
> Atleast in verilog (& probably VHDL) you can 'define just like in C,
> and in verilog2000 use generate (VHDL does that too).
> 
> With that, 1 good datapath can now spawn possibly 100s of variations
> small & large. For instance design a hierarchy of cells with specific
> ports. Now create alternates for a no of these, a good candidate would
> be the alu adder. You can have a dumb ripple adder, carry save added,
> carry lookahead and so on, all pin compatible but using wildy
> different amounts of logic, some regular & some not.
> 
> If your datapath has half a dozen widgets, you could make 2,3 ^6
> versions in no time and they would be plausible. We end up doing that
> anyway but chucking the slower ones along the way. You could do same
> in a toy meta HDL if you add a define or generate primitive to it.

I can't really change the design of the cell (which is already at a high
level).   I can only interconnect them in different ways.  The exact
behaviour of the cells are determined by control signals (not shown).
So I have to create random netlists of identical cells i.e. the cells
are the same throughout each netlist, as well as between netlists.

Fred
-- 
Fred Ma, fma@doe.carleton.ca
Dept. of Electronics, Carleton University, Ottawa, Ontario, Canada
*|  If I don't reply to your email, please sent it again.  I may  |*
*|  have erased along with the deluge of post-filter spam.        |*

Article: 69614
Subject: Re: Quartus Internal Errors
From: "Subroto Datta" <sdatta@altera.com>
Date: Sat, 15 May 2004 13:34:27 GMT
Links: << >>  << T >>  << A >>
Tushit,

  This error is in a low level library and is difficult to explain the cause
without analyzing it with a debugger. In the meantime if you do not have
access to Quartus II 4.0 send me a qar (Quartus Archive) file of your
project, and I can compile the design with 4.0 to find out if that will help
you.

- Subroto Datta
Altera Corp.

"tushit" <tushitjain@yahoo.com> wrote in message
news:ec6aab0.0405150101.32610c46@posting.google.com...
> Hi,
> I know I should be posting this to Altera Support, but I am in a bit
> of a hurry and hoping someone on the grp could advise me in parallel.
> I get a Quartus internal error while it's doing a P&R. Has anyone seen
> this before?? Any workarounds? I see this on 2 different machines both
> with enough RAM(1GB).
>
> --------------------------------------------------------------------------
--
> Internal Error: Sub-system: CDB_ATOM, File: cdb_atom_netlist.cpp,
> Line: 1585
> iter == m_created_from_map.end()
> (Fitter pre-processing)
> Quartus II Version 3.0 Build 245 10/09/2003 SJ Full Version
> Service Pack Installed:  2
> ---------------------------------------------------
>
> Thanks & Regards
> Tushit



Article: 69615
Subject: Re: Effects of moisture on CPLD
From: johnjakson@yahoo.com (john jakson)
Date: 15 May 2004 06:34:28 -0700
Links: << >>  << T >>  << A >>
"Dave Marsh" <me@privacy.net> wrote in message news:<40a4ce89$0$4587$db0fefd9@news.zen.co.uk>...
> "Andy Peters" <Bassman59a@yahoo.com> wrote in message
> news:9a2c3a75.0405131635.25f8ea90@posting.google.com...
> > "Leon Heller" <leon_heller@hotmail.com> wrote in message
>  news:<40a0ebc8$0$25328$cc9e4d1f@news-text.dial.pipex.com>...
> > >
> > > Reflow soldering without baking them (probably 120 C for 24 hours) might
> > > give problems. Hand soldering should be OK: I never have problems,
>  anyway.
> >
> > I'm not so sure about that.  I bought a handful of microcontrollers
> > about a year ago and stuffed boards, and all was fine.  I never
> > resealed the bag (I don't have the facility) so they sat until I used
> > them a month ago.  I handsoldered one prototype and it failed in a
> > particular way.  After much gnashing of teeth (I hate shotgunning
> > parts), I removed the micro and replaced it with another from the same
> > bag, which worked.  I have since hand-built three more prototypes and
> > I've had a 50% fallout.  I guess I should've baked the parts...
> >
> > -a
> 
> Thanks Andy. That's interesting - One of the assembly houses I've come
> across on the web says the parts would need baking before they will hand
> solder them . This seems to concur with your experiences.
> 
> Dave

Perhaps one of those BlackNdecker toaster ovens will do the job since
they were mentioned awhile back as being useable for home based reflow
ovens in another thread on BGA pcb work.

regards

johnjakson_usa_com

Article: 69616
Subject: EDK6.1 MBlaze : problems with INTC IPIF and external interrupts
From: Alessandro Scaglione <dirak@tiscali.it>
Date: Sat, 15 May 2004 17:22:37 +0200
Links: << >>  << T >>  << A >>
Hi,
I have created a IPIF device based on ssp1 for a MicroBlaze system. I have 
tested each device and they correctly generate interrupts.
Now I have to use INTC to handle more than one interrupt signals and some 
external interrupt signals.
By default IPIF ssp1 uses generic driver, that seems not support PARAMETER 
INT_HANDLER.
1.How can attach a int_handler to IPIF device? I have to write a specific 
driver for each IPIF device?
2.It's possible to specify interrupt level for external interrupt signals?

Thanks

Article: 69617
Subject: Re: One issue about free hardware
From: Jim Lewis <Jim@SynthWorks.com>
Date: Sat, 15 May 2004 08:42:35 -0700
Links: << >>  << T >>  << A >>
Jon Beniston wrote:

>>>Ok, maybe not that particular case, but most other configurations of
>>>dual-port RAM can be infered. In Verilog at least, isn't this a
>>>problem with the language rather than the FPGA tools (i.e. you can't
>>>write to the same variable from two different processes)?
>>
>>Verilog does not have this restriction.  I've searched the LRM and
>>I've run testcases through two reputable implementations without
>>complaints (ncverilog, icarus).
> 
> 
> You are correct. Although it is only ever supported for simulation. I
> can kind of understand why though. Take the following:
> 
> module test(c1, c2, a, b, d);
> input c1, c2, a, b;
> output d;
> reg d;
> always @(posedge c1)
> 	d <= a;
> always @(posedge c2)
> 	d <= b;
> endmodule
> 
> What logic would you synthesize it to? Have you tried this with a
> behavioural synthesis tool? Maybe that could do a better job.
>  

Another interesting question about the proposed
code above is, during a given simulation cycle
if both clocks rise at the same time, which
executes first in simulation?

Can you re-write the code so that one always
has wins or if both happen a the same time
an 'X' is generated on d?


Cheers,
Jim

Article: 69618
Subject: Re: Video Blob Analysis on FPGAs
From: "Brad Smallridge" <bradsmallridge@dslextreme.com>
Date: Sat, 15 May 2004 13:42:04 -0700
Links: << >>  << T >>  << A >>
What I did for Google was this:

FPGA OR ASIC "blob analysis"

which gave about 165 hits, but none of them seem to
point me in the direction of any source code or even to
any theoretical discussions. If you think I should
try another search then please do suggest something.

Someone was king enough to email me personally
and suggested looking for some articals by Sumitomo,
which produced a blob analysis chip some years ago.
I don't know if that chip still exist and I can't find
the articles mentioned.  I added Sumitomo to the
search above and received only three hits, none of
them talked about blob analysis.


> > Still looking for some suggestions.
>
> Consider google.com
>
> http://www.itee.uq.edu.au/~damien/GuRoo/theses/Wong.pdf
>
>  -- Mike Treseler



Article: 69619
Subject: FPGA Timing question
From: ed@anuff.com (Ed Anuff)
Date: 15 May 2004 15:57:18 -0700
Links: << >>  << T >>  << A >>
I'm using an FPGA (a Xilinx Spartan 3 XC3S400-4PQ208) in a design
where one of it's functions is to sit between a cpu's SDRAM controller
address and control lines and the sdram chips in order to register and
buffer the signals and generate some additional chip selects.  The
data lines are not buffered.  The processor in question (an Analog
Devices ADSP-BF532) has the ability to pipeline the SDRAM address and
control signals to support the delay introduced by this sort of
buffering by one cycle.

address, control, clock signals (A0-12, DQMB0-1, RAS#, CAS#, clk,
etc.):
CPU <-> FPGA <-> SDRAM

data signals (D0-D15):
CPU <-> SDRAM

The question is how to analyze how long the FPGA needs to register the
address and control lines on the input pins at the first rising edge
of the clock signal received from the processor and then be able to
have the buffered address and control lines available on the output
pins on the FPGA at next rising edge of the clock.  I'm not sure what
I should be looking at in the timing analyzer to get the best estimate
of what the timing parameters involved are.  Also, what constraints
should I set to minimize the timing overhead?

Thanks

Ed

Article: 69620
Subject: Re: Video Blob Analysis on FPGAs
From: "Chuck McManis" <devnull@mcmanis.com>
Date: Sun, 16 May 2004 00:32:40 GMT
Links: << >>  << T >>  << A >>

"Brad Smallridge" <bradsmallridge@dslextreme.com> wrote in message
news:10ad0596rrmu4da@corp.supernews.com...
> What I did for Google was this:
>
> FPGA OR ASIC "blob analysis"
>
> which gave about 165 hits, but none of them seem to
> point me in the direction of any source code or even to
> any theoretical discussions. If you think I should
> try another search then please do suggest something.

Are you trying to what the CMU CAM does? Have you read the CMU papers? Blob
analysis doesn't mean anything to me so I'm guessing here, but perhaps you
meant center-of-mass type things?

The image processing stuff is generally DSP based as the algoritms are to
delineate an area using a standard convolver algorithm and then to track its
"center of mass" using standard graphics techniques for finding the center
of a polygon. (See Eberly's FAQ for that code).

Off the top of my head I'm guessing you could do some clever stuff whereby
you keep an array of pixels in a the block ram of an FPGA, and use some form
of iso-bar type system to connect regions with similar pixels. I'm not sure
what the logic would look like, something like

    for (pixel = 2048 downto 0)
    begin
      if ( NEIGHBOR(0,pixel) or
             NEIGHBOR(1, pixel) or
             NEIGHBOR(2, pixel) or
             NEIGHBOR(3, pixel) or
            ...
             NEIGHBOR(7, pixel) ) then
        group[pixel] <= group_id;
        group_id++;
      end if;
    end for;

Like I said, I'm no expert. Basically you want logic that creates a
comparator whose inputs are the logically adjacent pixels for each
individual pixel, and a second array which is the group membership function
(in or out). If you set a specific criteria for membership (like the pixel
is a particular color) then this will probably work for you.

Then on each vertical retrace you need to compute the center of mass of
pixels in the "group."

--Chuck





Article: 69621
Subject: Re: best fpga development board?
From: rrr@ieee.org (Rajeev)
Date: 15 May 2004 18:30:04 -0700
Links: << >>  << T >>  << A >>
geoffrey wall <wallge@eng.fsu.edu> wrote in message news:<c830uc$ha1$1@news.fsu.edu>...
> actually, i think we are going to try both solutions(dsp and fpga) and 
> see how they compare with each other. thanks for the feedback.

I'll be interested to hear your conclusions.

I did a design study for my application a couple of years ago.  Pentium
vs DSP vs FPGA.  The application did not leap out at me as a no-brainer
for the FPGA -- processing of data packets, what I would call general
scientific computation including division, straight-line fit and some
minimization.  The figure of merit was processing rate (packets per 
second) per dollar.  And I certainly made a number of hand-waving
assumptions in my estimation.  Yet (to my surprise) the Pentium and DSP 
chip came out roughly equivalent.  The FPGA won by a factor of 5.  Now
development effort is another story...

Regards,
-rajeev-

Article: 69622
Subject: Re: synthesising VHDL for Xilinx FPGAs using ISE 6.1i
From: ashant_me@yahoo.com (Ashant)
Date: 16 May 2004 01:20:54 -0700
Links: << >>  << T >>  << A >>
Mario Trams <Mario.Trams@informatik.tu-chemnitz.de> wrote:

> it is difficult to diagnose this without seeing the code. I would guess
> that there is a little mistake in your code.

Well, the code is pretty much clean ... every entity interacting with
the bus has a single process with a case statement that was generated
from an already proven set of FSMs.

But curiously enough, all the VHDL code works now. The only thing I
did was to remove one or two extraneous signals that were declared but
never used by any entity. Is it because the synthesiser's attempts at
optimisation are so aggressive as to cause unexpected problems?

> When you describe busses and you synthesize it for a PLD, this is 
> usually mapped into a MUX/DMUX structure (PLDs do not have tristatable
> drivers).
> 
> Most FPGAs (so the Virtex) have tristatable drivers and can handle 
> real busses.

That makes sense. I am new to actual synthesis of hardware, this
continues to be a learning experience for me.

> You say that the synthesis for a CoolRunner CPLD worked fine. 
> Have you simulated and verified the backannotated design?

Pointers for a complete newbie please ... I am aware that you are
supposed to iterate at every stage of the process to smoothen out any
wrinkles that may cause unexpected problems. The build process in ISE
generates tons of information through various reports, but I don't
know how to make proper use of that ... URLs / FAQs / tutes on this
would be most useful.

Thanks,
Ashant.

Article: 69623
Subject: Internal Signals and other questions with ModelSim XE/II Starter 5.7g VHDL Testbench
From: "Martin Maurer" <capiman@clibb.de>
Date: Sun, 16 May 2004 16:47:22 +0200
Links: << >>  << T >>  << A >>
Hello,

i am trying to learn how to use ModelSim with a VHDL Testbench, but i don't
find any answers on a few of my answers.
At the moment i start ModelSim always via "Simulate Post-Translate VHDL"
from Xilinx Project Navigator.

1) I can see all my stimuli, which are mainly the external in- and outputs.
They seems to toggle fine. But how can i display the internal signals ? Is
the only solution to assign a port to an internal signal to see it in
ModelSim. I already tried to simply define new signals, they are drawn in
ModelSim, but it seems they are not connected to the real signals. I think i
was able to add internal signals via "Signal" window, but next time i
simulate the signal was lost again...

2) I am currently can simulate my design once. When i external edit my vhdl
source or testbench i always must close ModelSim and restart it via Xilinx
Projects Manager. If i don't close it, i get an error message, that
"ModelSim is already running". Is there a more convenient way ?

3) I found a few nice commands like "view wave", "add wave *". Is there a
command for full zoom ? Where can i say, that certain commands should be
executed e.g. after drawing of a wave ?

4) Every time when i open ModelSim the wave window is only a small window,
positioned at right/lower corner of my screen. I already edited the wave
window "geometry", saved it to default name modelsim.tcl of my project
directory. But on next restart same windows size and position as before.
Must i move this file to a certain position. Is there a command like "use
preferences" that i can execute like in question 3 ?

5) In my vhdl source file i use a "std_ulogic_vector", because i want to use
tristate pins, for bidirectional data transfer of data. In the testbench the
xilinx tool created a testbench with "std_logic_vector". It compiles fine.
When i change it to "std_ulogic_vector" in testbench, ModelSim brings a
compile error, that source and testbench does not fit together. I already
use 'Z' for assignments and it seems to work. Should i just ignore this or
must i pay attention when doing it this way ? ModelSim can handle tristate
logic ?

6) Is there a FAQ for such questions ?

So enough for now,

                  Martin Maurer



Article: 69624
Subject: Re: best fpga development board?
From: kempaj@yahoo.com (Jesse Kempa)
Date: 16 May 2004 10:44:19 -0700
Links: << >>  << T >>  << A >>
geoffrey wall <wallge@eng.fsu.edu> wrote in message news:<c82o6r$g2m$1@news.fsu.edu>...
> Im looking to do some real-time video processing algorithms,
> but i am mostly a software person... i need an fpga with good 
> development tools (not buggy) that will be easy to use for someone who 
> is learning how to program hdl and use the hardware for the first time.
> Ideally i would like a powerful and flexible board with good development 
> tools, good tech support and documentation. Any suggestions?
> 
> thanks

I normally don't plug my employer's products, but what you're asking
for is covered quite nicely by the embedded dev kits from Altera as
well as from our partner Microtronix. I suggest this approach as
putting processor core(s) on the FPGA is very simple these days; for
someone with software experience this can make getting started with
hardware design a bit more simple as a processor allows you to bring
up a design/debug/interface to your hardware with familiar means
(software dev. & debug). Also consider a soft-processor has terrific
potential for controlling the various hardware processing blocks in a
design very easily.

Also note that with any of these products you aren't required to use
the processor; they're really just FPGA dev. boards with additional
design tools/IP/RTOS support in the box.

http://www.microtronix.com/
http://www.altera.com/products/ip/processors/nios/kits/nio-dev_kits.html

Jesse Kempa
Altera Corp.
jkempa at altera dot com



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