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 90625

Article: 90625
Subject: Re: using i2c core
From: Bevan Weiss <kaizen__@NOSPAMhotmail.com>
Date: Tue, 18 Oct 2005 19:06:03 +1300
Links: << >>  << T >>  << A >>
CMOS wrote:
> here we go again...showing off stupidity....
> 

Well he has been your only reply, so perhaps you should just humor him 
some and leave his comments be.

Other than that, he wasn't far off.  I2C is a shared interface, usually 
using open drain/collector pull-down connections.  So it will require 
the use of a tri-state output buffer.  You will simply set the output 
value to always be a low value (ie always pulling low) and the only 
signal that will be controlled for the pin is the output enable.
Both pins should be bi-directional, to be capable of operating in either 
master/slave mode, and to tolerate clock stretching.

So as long as you assign the output signals from your I2C module to 
tri-statable pins everything should be ok.

Is that what you're after?

Article: 90626
Subject: Re: clock timing
From: "Antti Lukats" <antti@openchip.org>
Date: Tue, 18 Oct 2005 08:10:43 +0200
Links: << >>  << T >>  << A >>
"Benjamin Menküc" <benjamin@menkuec.de> schrieb im Newsbeitrag
news:dj19v2$7hj$04$1@news.t-online.com...
> Peter Alfke schrieb:
> > You are running at 66 MHz, and you think Virtex2 is too slow? Are you
> > kidding?
> > Did you ever use the fine phase adjust capability in the DCM, where you
> > can move the clock in 256 increments?
> > Peter Alfke
> >
>
> Hi Peter,
>
> the lvds clock is 7*clk. I want to run at 85 MHz in the end, that would
> be 595 MHz.
>
> regards,
> Benjamin

and that would be no big deal either. check out xapp265

85*7 means
1) output clock is 85MHz
2) highes clock on chip is 300MHz as you use DDR io flops

:)

for external lvds serdes

1) make sure data flops are on IOB
2) use DCM to adjust phy clock phase

given [1] and [2] you dont need any timing constraints on the phy output
path, as the IOB clocked outputs have very little skew and DCM adjust your
clock to the best timeslot

antti















Article: 90627
Subject: Newbie question: XC3S400 Gate Count
From: jerryzy@gmail.com
Date: 17 Oct 2005 23:15:03 -0700
Links: << >>  << T >>  << A >>
Hi,
  I am a FPGA newbie. Here's my question:
  How do you count the gates in Xilinx FPGA? I have a XC3S400 board,
which is supposed to have 400K gates. But when I synthesize the
following code, the synthesizer report 68 LUTs were used, compared to
total of 7168 LUTs, I would say that about 1% of the 400K gates, which
is about 4000 gates, were used to synthesize my code. How ever, my
following code only uses 150 "AND" gates and 142 "XOR" gates, why does
it take XC3S400 take 4000 "gates" to handle my code?
  Is there any setting trick need to be done in the synthesizer or in
the code?

//===============Verilog code=======================//
module GFMul(z,y,x);
output [7:0] z;
input [7:0] y;
input [7:0] x;

reg [7:0] z;

//entry:
reg[7:0] t;
always @(y or x )
   begin

   t[0]=((x [0]&y [0])^(x [1]&y [7])^(x [2]&y [6])^(x [3]&y [5])^(x
[4]&y [4])^(x [5]&y [3])^(x [5]&y [7])^(x [6]&y [2])^(x [6]&y [6])^(x
[6]&y [7])^(x [7]&y [1])^(x [7]&y [5])^(x [7]&y [6])^(x [7]&y [7]));
   t[1]=((x [0]&y [1])^(x [1]&y [0])^(x [2]&y [7])^(x [3]&y [6])^(x
[4]&y [5])^(x [5]&y [4])^(x [6]&y [3])^(x [6]&y [7])^(x [7]&y [2])^(x
[7]&y [6])^(x [7]&y [7]));
   t[2]=((x [0]&y [2])^(x [1]&y [1])^(x [1]&y [7])^(x [2]&y [0])^(x
[2]&y [6])^(x [3]&y [5])^(x [3]&y [7])^(x [4]&y [4])^(x [4]&y [6])^(x
[5]&y [3])^(x [5]&y [5])^(x [5]&y [7])^(x [6]&y [2])^(x [6]&y [4])^(x
[6]&y [6])^(x [6]&y [7])^(x [7]&y [1])^(x [7]&y [3])^(x [7]&y [5])^(x
[7]&y [6]));
   t[3]=((x [0]&y [3])^(x [1]&y [2])^(x [1]&y [7])^(x [2]&y [1])^(x
[2]&y [6])^(x [2]&y [7])^(x [3]&y [0])^(x [3]&y [5])^(x [3]&y [6])^(x
[4]&y [4])^(x [4]&y [5])^(x [4]&y [7])^(x [5]&y [3])^(x [5]&y [4])^(x
[5]&y [6])^(x [5]&y [7])^(x [6]&y [2])^(x [6]&y [3])^(x [6]&y [5])^(x
[6]&y [6])^(x [7]&y [1])^(x [7]&y [2])^(x [7]&y [4])^(x [7]&y [5]));
   t[4]=((x [0]&y [4])^(x [1]&y [3])^(x [1]&y [7])^(x [2]&y [2])^(x
[2]&y [6])^(x [2]&y [7])^(x [3]&y [1])^(x [3]&y [5])^(x [3]&y [6])^(x
[3]&y [7])^(x [4]&y [0])^(x [4]&y [4])^(x [4]&y [5])^(x [4]&y [6])^(x
[5]&y [3])^(x [5]&y [4])^(x [5]&y [5])^(x [6]&y [2])^(x [6]&y [3])^(x
[6]&y [4])^(x [7]&y [1])^(x [7]&y [2])^(x [7]&y [3])^(x [7]&y [7]));
   t[5]=((x [0]&y [5])^(x [1]&y [4])^(x [2]&y [3])^(x [2]&y [7])^(x
[3]&y [2])^(x [3]&y [6])^(x [3]&y [7])^(x [4]&y [1])^(x [4]&y [5])^(x
[4]&y [6])^(x [4]&y [7])^(x [5]&y [0])^(x [5]&y [4])^(x [5]&y [5])^(x
[5]&y [6])^(x [6]&y [3])^(x [6]&y [4])^(x [6]&y [5])^(x [7]&y [2])^(x
[7]&y [3])^(x [7]&y [4]));
   t[6]=((x [0]&y [6])^(x [1]&y [5])^(x [2]&y [4])^(x [3]&y [3])^(x
[3]&y [7])^(x [4]&y [2])^(x [4]&y [6])^(x [4]&y [7])^(x [5]&y [1])^(x
[5]&y [5])^(x [5]&y [6])^(x [5]&y [7])^(x [6]&y [0])^(x [6]&y [4])^(x
[6]&y [5])^(x [6]&y [6])^(x [7]&y [3])^(x [7]&y [4])^(x [7]&y [5]));
   t[7]=((x [0]&y [7])^(x [1]&y [6])^(x [2]&y [5])^(x [3]&y [4])^(x
[4]&y [3])^(x [4]&y [7])^(x [5]&y [2])^(x [5]&y [6])^(x [5]&y [7])^(x
[6]&y [1])^(x [6]&y [5])^(x [6]&y [6])^(x [6]&y [7])^(x [7]&y [0])^(x
[7]&y [4])^(x [7]&y [5])^(x [7]&y [6]));
   z  =(t);

   end

endmodule

//===============Resource Utilization================//
Resource Usage Report for GFMul

Mapping to part: xc3s400tq144-4
LUT2            17 uses
LUT3            9 uses
LUT4            42 uses
I/O primitives: 24
IBUF           16 uses
OBUF           8 uses

I/O Register bits:                  0
Register bits not including I/Os:   0 (0%)

Mapping Summary:
Total  LUTs: 68 (0%)



Thanks!


Article: 90628
Subject: Re: Newbie question: XC3S400 Gate Count
From: Sylvain Munaut <com.246tNt@tnt>
Date: Tue, 18 Oct 2005 08:24:34 +0200
Links: << >>  << T >>  << A >>
jerryzy@gmail.com wrote:
> Hi,
>   I am a FPGA newbie. Here's my question:
>   How do you count the gates in Xilinx FPGA? I have a XC3S400 board,
> which is supposed to have 400K gates. But when I synthesize the
> following code, the synthesizer report 68 LUTs were used, compared to
> total of 7168 LUTs, I would say that about 1% of the 400K gates, which
> is about 4000 gates, were used to synthesize my code. How ever, my
> following code only uses 150 "AND" gates and 142 "XOR" gates, why does
> it take XC3S400 take 4000 "gates" to handle my code?

Because in FPGA you don't count space in "gates" ... so don't try ...
just use the Slice/LUT/FF count .


The gate count given is more a commercial argument to me. And you use
many more than you anticipated because in a FPGA when you don't always
use all the resources inside a LC/LE to their full potential so those
are wasted ...


	Sylvain

Article: 90629
Subject: Re: Newbie question: XC3S400 Gate Count
From: Jim Granville <no.spam@designtools.co.nz>
Date: Tue, 18 Oct 2005 19:41:29 +1300
Links: << >>  << T >>  << A >>
jerryzy@gmail.com wrote:
> Hi,
<snip>
> //===============Resource Utilization================//
> Resource Usage Report for GFMul
> 
> Mapping to part: xc3s400tq144-4
> LUT2            17 uses
> LUT3            9 uses
> LUT4            42 uses
> I/O primitives: 24
> IBUF           16 uses
> OBUF           8 uses
> 
> I/O Register bits:                  0
> Register bits not including I/Os:   0 (0%)
> 
> Mapping Summary:
> Total  LUTs: 68 (0%)

  This does nicely show that whoever writes this report software,
really SHOULD fix the reporting, so it is more usefull than the
nonsense 0% for 68 LUTs.

  These are large devices, and often small benchmarks are used,
so common sense (Surely) would say, report % usage with a
decimal point ?

eg
 > Total  LUTs: 68 (0.949%)

-jg


Article: 90630
Subject: Re: Compiling Altera LPM FIFO into Modelsim Error
From: "Simon Peacock" <simon$actrix.co.nz>
Date: Tue, 18 Oct 2005 19:56:12 +1300
Links: << >>  << T >>  << A >>
When there is a binding error..  this usually points to a connection
problem.  Typical things to look for are std_logic vrs std_ulogic ints
unsigned vrs signed.  This part is very much like OOP where the compiler is
looking for a component with the exact same connections.  The ieee sometimes
does the conversion for you so it can be hidden sometimes.
(if you use std_logic_unsigned you will find you can add an integer to a
std_logic_vector for example)


Simon


<pinod01@sympatico.ca> wrote in message
news:1129574626.908253.227130@g44g2000cwa.googlegroups.com...
> Hi All,
>
>     The specific error here was resolved by including the altera_mf
> library into my test bench VHDL code.  I also needed to include the USE
> altara_mf.altera_mf_components.all into the VHDL code.
>
>     Unfortunately when it does compile, there is another error that
> appears which is bizarre.  The Modelsim error is 3473 as follows:
>
> # ** Warning: (vsim-3473) Component 'a_graycounter2' is not bound.
> #    Time: 0 ns  Iteration: 0  Region:
>
/tb_sopc_memory_rw_vhdl/write_fifo_vosq0/vosq0_prestore_fifo_dcfifo_dsu_comp
onent
>  File: D:/My
>
Documents/University/Masters_Project/VHDL_Coding/Prestore_FIFO/vosq0_prestor
e_fifo.vhd
>
>    The error by Modelsim is described as follows:
> # The specified component has not been explicitly bound and no default
> # binding has been found for it. This means that your VHDL design does
> # not include a component configuration for the specified component
> that
> # indicates which entity/architecture to use for that component. It
> also
> # means that no entity of the specified name containing ports and
> generics
> # matching those in the component declaration was found when searching
> all
> # visible libraries for a default binding. Simulation will continue,
> but
> # no VHDL code will be executed for the unbound component.
> #
> # To fix this problem, either put a component configuration in your
> VHDL
> # design that specifies which entity/architecture to use for this
> component
> # or compile an entity of the same name as the component and containing
> # ports and generics matching those in the component declaration along
> # with at least one architecture for the entity into a library that is
> # visible at the time the component is being elaborated. You may need
> # to add a library use clause before the entity containing the unbound
> # component in order to make the library and component visible.
>
>
>    When I go and view the VHDL code that was generated by the Quartus
> megawizard for the FIFO, it seems that the VHDL code for my FIFO
> appears to have the instantiation of all the libraries including the
> one that I described above, which dictates that the entity/architecture
> code should be detectable by Modelsim during the compile process.  I'm
> confused to why this is not happening?   Is there another library that
> I missed?
>
> Just so it's clear my VHDL testbench also includes the following:
>
> LIBRARY ieee;
> USE ieee.std_logic_1164.ALL;
> USE std.textio.ALL;
> USE ieee.std_logic_unsigned.ALL;
> USE ieee.std_logic_arith.ALL;
>
> LIBRARY lpm;
> USE lpm.lpm_components.all;
>
> LIBRARY altera_mf;
> USE altera_mf.altera_mf_components.all;
>
>
> Regards
> Pino
>
>
>
> Subroto Datta wrote:
> > The lpm_widthu parameter need sto be calculated & set by MegaWizard
based on
> > the size
> > of FIFO chosen by the user.
> >
> > > C:/altera/modeltech_ae/altera/vhdl/altera_mf.scfifo(behavior)
> > > # ** Fatal: (vsim-3350) Generic 'lpm_widthu' has not been given a
> > > value.
> >
> > The design should be modified through the scfifo MegaWizard and should
not
> > changed manually.
> >
> > Hope this helps,
> > Subroto Datta
> > Altera Corp.
> >
> > <pinod01@sympatico.ca> wrote in message
> > news:1129005330.788003.36580@g47g2000cwa.googlegroups.com...
> > > To all,
> > >
> > >  I have been attempting to load a lpm component into a Modelsim
> > > project and when I get my test bench compiled and I try to simulate, I
> > > get the following error.  Note that vosq0_prestore_fifo (my own name)
> > > is an instantiated VHDL LPM component from Altera Quartus software
> > > using their scfifo function.  Below shows the log window.  The fatal
> > > error is shown below and is detailed because for some reaoson I don't
> > > know where to declare a value for the LPM_WIDTHU variable?  I had
> > > thought that this was already defined?  Your help would be
appreciated.
> > >
> > > Cheers
> > > Pino
> > >
> > > # Loading work.vosq0_prestore_fifo(rtl)
> > > # Refreshing
> > > C:/altera/modeltech_ae/altera/vhdl/altera_mf.altera_mf_components
> > > # Loading
> > > C:/altera/modeltech_ae/altera/vhdl/altera_mf.altera_mf_components
> > > # Loading work.vosq0_prestore_fifo_dcfifo_dsu(rtl)
> > > # Loading work.vosq0_prestore_fifo_a_gray2bin_fl6(rtl)
> > > # Refreshing
> > > C:/altera/modeltech_ae/altera/vhdl/altera_mf.a_graycounter(behavior)
> > > # Loading
> > > C:/altera/modeltech_ae/altera/vhdl/altera_mf.a_graycounter(behavior)
> > > # Refreshing
> > >
C:/altera/modeltech_ae/altera/vhdl/altera_mf.altera_common_conversion(body)
> > > # Loading
> > >
C:/altera/modeltech_ae/altera/vhdl/altera_mf.altera_common_conversion(body)
> > > # Refreshing
> > >
C:/altera/modeltech_ae/altera/vhdl/altera_mf.altera_device_families(body)
> > > # Loading
> > >
C:/altera/modeltech_ae/altera/vhdl/altera_mf.altera_device_families(body)
> > > # Refreshing
> > > C:/altera/modeltech_ae/altera/vhdl/altera_mf.altsyncram(translated)
> > > # Loading
> > > C:/altera/modeltech_ae/altera/vhdl/altera_mf.altsyncram(translated)
> > > # Loading work.vosq0_prestore_fifo_alt_synch_pipe_lb5(rtl)
> > > # Loading work.vosq0_prestore_fifo_dffpipe_lb5(rtl)
> > > # Loading
> > >
C:/altera/modeltech_ae/altera/vhdl/220model.lpm_common_conversion(body)
> > > # Loading
> > > C:/altera/modeltech_ae/altera/vhdl/220model.lpm_counter(lpm_syn)
> > > # Refreshing
> > > C:/altera/modeltech_ae/altera/vhdl/altera_mf.scfifo(behavior)
> > > # Loading
C:/altera/modeltech_ae/altera/vhdl/altera_mf.scfifo(behavior)
> > > # ** Fatal: (vsim-3350) Generic 'lpm_widthu' has not been given a
> > > value.
> > > #    Time: 0 ns  Iteration: 0  Instance:
> > >
/tb_sopc_memory_rw_vhdl/write_fifo_vosq0/vosq0_prestore_fifo_dcfifo_dsu_comp
onent/scfifo14
> > > File:
> > >
QuartusIIVersion4.0(C:/Modeltech_6.0/win32/../altera/Vhdl/src/altera_mf/alte
ra_mf.vhd)
> > > # FATAL ERROR while loading design
> > >
> > >
>



Article: 90631
Subject: Re: Best Async FIFO Implementation
From: "Alex Shot" <alexshot@gmail.com>
Date: 17 Oct 2005 23:57:08 -0700
Links: << >>  << T >>  << A >>
Peter,
I'm just trying to understand you. You are right - FIFO's width is
groups of bits and not bytes, but let me ask you what kind of problem
you can see. For example:
1. memory size is 2048 words of n bits
2. read and write addresses width have 12 bits
3. full indication is generated when fifo is filled up to 2047 (or 2048
in a case of it is generated with delay of 1 write clock cycle)
4. Now, suppose FIFO is filled up to 2048 (not 2047) and fill
indication is activated - no write cycles are allowed
     i.  within a next read operation, full indication is stay high and
fifo is filled up to 2047
     ii. after additional read operation full indication is cleared

Why do you think, there is better to use almost full with latency of 1
to 3 clock cycles, but not real full indication, which works properly.


Article: 90632
Subject: Re: Xilinx IMPACT Problem... detects 101 unknown devices
From: "Simon Peacock" <simon$actrix.co.nz>
Date: Tue, 18 Oct 2005 20:05:09 +1300
Links: << >>  << T >>  << A >>
I've used a parallel cable 3 (home built) on Spartan 2/e's.. but they don't
work above that.. defiantly not on Spartan 3's  .. voltages are all wrong.

I would strongly recommend you don't be so cheap and buy the USB downloader!


"Klaus Bickert" <kfb@mpe.mpg.de> wrote in message
news:ee90993.10@webx.sUN8CHnE...
> Sorry, had been on conference last week. Parallel port is on a laptop,
JTAG is 3.3v powered, connects to CESYS.com Xv2ddr module (Xc2v1000-456-5
plus xc18v04 prom) all run on 3.3. IMPACT gives me only a (nonexistent)
multilink as choice, par3/4 are grayed out. Installation record says
parallel cables drivers installed, no further details. IMPACT doesn#t
recognize cable II in config-detect. Somethings wrong or missing in setup.
How do I postinstall old cables ? no choice in installing from cd. Ciao,
klaus



Article: 90633
Subject: Re: Storing a file onto FPGA (the last word)
From: "Simon Peacock" <simon$actrix.co.nz>
Date: Tue, 18 Oct 2005 20:07:41 +1300
Links: << >>  << T >>  << A >>
well if it can't be taught in schools.. shouldn't the schools get a student
to write a better one ??

Simon


"backhus" <nix@nirgends.xyz> wrote in message
news:dj21rf$m1h$2@hermes1.rz.hs-bremen.de...
> Hi John,
> ...and I spent so much time with that nasty data2mem tool... :-(
>
> But it's good to hear that an alternative and more straightforward
> solution exists, even if it's limited to XILINX.
>
> The bad thing is that it can't be taught in VHDL courses unless it is
> supported by many (at least the important) tool vendors. Until then we
> have to deal with questions like that of Robert.
>
> I hope this feature finds it's way into VHDL 20xx and will be supported
> by more tool vendors much earlier.
>
> Thank you John for the information. (And to the XILINX programmers as
> well. It's the first positive feature of the 7.1 version up to now IMHO.)
>
>    Eilert
>
> John McCluskey schrieb:
> > I read this thread about initializing FPGA memory with some interest.
> > Well over a year ago, I asked the XST developers in Grenoble to add
> > support for File I/O during VHDL elaboration.   This actually works in
ISE
> > 7.1!   You can write a VHDL function that opens a file (using the TextIO
> > package), reads data out of it, and returns an array that can be used to
> > initialize a signal array that has memory inferred on it.
> -- snip
> -- sorry, needed to cut to old post



Article: 90634
Subject: Re: Rosetta Results
From: francesco_poderico@yahoo.com
Date: 18 Oct 2005 01:11:46 -0700
Links: << >>  << T >>  << A >>
Austin,
seems that Xilinx is always one step in advance!
I'm impressed to see how many people in this newsgroup uses Xilinx.
well done,
Francesco


Austin Lesea wrote:
> All,
>
> http://tinyurl.com/clzqh
>
> Details the latest readouts for actual single event upsets for Virtex 4,
> and Spartan 3.
>
> The improvements (6 times fewer upsets for Virtex 4, and 2.4 times fewer
> upsets for Spartan 3 as compared to Virtex II) shows our commitment to
> making this a non-issue for our customers.
>
> Make sure you demand from you ASIC/ASSP/FPGA vendor reports on their SEU
> susceptibility!  This is not an area where you should take this for
> granted.  Reducing SEU susceptibility is not something the foundry
> builds in to their process; it is something that takes time and effort
> on the part of IC designers to implement, and more time and effort to
> verify.
>
> For a vendor to claim "oh, we do what Xilinx does..." is completely
> insufficient.  We certainly are not telling anyone how we did this (6X
> improvement):  just that we have done this.
>
> The only other company that we are aware of with a "Rosetta"-like
> program (work with foundry on process; design, simulation, and analysis
> by IC designers; measurements in neutron and proton beams; actual
> atmospheric testing in multiple locations at multiple altitudes) is Cypress.
>
> Imitation is the sincerest form of flattery.
>
> Additionally, Cypress has a good book on the effects of cosmic ray
> neutrons and protons on memories.
>
> http://tinyurl.com/72mvw
>
> For more details, contact your FAE.  They have materials accessible to
> them for customer presentations on this issue.
> 
> Austin


Article: 90635
Subject: Simple PWM Spartan 3
From: fecs@usa-dot-com.no-spam.invalid (fecs2)
Date: Tue, 18 Oct 2005 03:16:01 -0500
Links: << >>  << T >>  << A >>
i need help for a Simple PWM Spartan 3, i dont know how to activate
the spartan3 board help


Article: 90636
Subject: re:ADC implementation on fpga? Information and procudures wante
From: alan.hutton@nsc-dot-com.no-spam.invalid (shorty)
Date: Tue, 18 Oct 2005 03:16:01 -0500
Links: << >>  << T >>  << A >>
Has anyone looked at interfacing a Cyclone II or Stratix II with the
1Gsps, 8 bit A/D from National Semiconductor (ADC081000) ?  I'm
looking for a reference design that will save me time rather than
creating my own...


Article: 90637
Subject: Re: Program FPGA from PowerPC in V2P
From: alan@nishioka.com
Date: 18 Oct 2005 02:01:28 -0700
Links: << >>  << T >>  << A >>
Eric wrote:

> I'm working with the Virtex-II Pro FPGA. Is there a way that we can run
> VHDL code for FPGA in PowerPC405 cores?

Do you mean that you want to combine a ppc core with your own vhdl
code?
There are two ways to combine your code with a ppc project:

1. Use your vhdl as the top level (with ise as the build tool).  Build
a ppc project with edk and embed it as a block in your top level
project.

2. Use edk as the top level build tool.  Write your vhdl as modules in
the pcores directory (copy the format from xilinx supplied cores).
Install these and build with edk.

Alan Nishioka
alan@nishioka.com


Article: 90638
Subject: Re: Best Async FIFO Implementation
From: "Dave Pollum" <vze24h5m@verizon.net>
Date: 18 Oct 2005 04:23:11 -0700
Links: << >>  << T >>  << A >>
Jim Granville wrote:
> Dave Pollum wrote:
> > Jim Granville wrote:
> > <Peter's stuff snipped>
> >
> >>Interesting - so for sustained thru-put on these, you are best to avoid
> >>going empty, which probably means two operating modes : fastest, and
> >>clean-out-the-last-byte(s)
> >>I see some uarts have WDOGs in their fifos, that allow simpler streaming
> >>code, and they generate a time-content interrupt, as well as the normal
> >>threshold one.
> >>  Timeout is normally some multiple CHAR times, so the end of message
> >>chars are dealt to without needing polling.
> >>
> >>-jg
> >
> > We upgraded a Zilog Z8530 serial port to a Z85230 serial port, because
> > the Z85230 has deeper FIFOs.  The 85230's recv port has an 8-byte FIFO
> > vs the 8530's 3-byte FIFO.  I had hoped that the CPU would be
> > interrupted a lot less using the 85230.  The 85230 can be set-up to
> > interrupt when 1 char is recv'd or when there are 4 bytes in the recv
> > FIFO (half full).  This sounded really great and even worked quite
> > well, until I discovered that when there _3_ bytes in the FIFO and the
> > chip is set-up to interrupt when half-full, that the chip does not
> > interrupt until another byte is received, even if that's minutes later.
> >  ARGH, WIPA!
> >
> > BTW what's a "WDOG"?
>
>   Sorry, cryptic mode... WDOG = WatchDog = monostable timer, that
> retriggers on every incomming CHAR, and times-out after some user
> defined CHAR pauses.
> Purpose is to catch exactly the PITA you describe :)
>
> -jg

"Watch Dog" - I sorta thought that's what you meant, but I wasn't sure.
 Thanks for the explanation.  And "WIPA" was a brain fart.  I meant
PITA.  Good grief!
-Dave


Article: 90639
Subject: Re: Data2Mem usage - help required
From: "Robert" <robertsolanki@gmail.com>
Date: 18 Oct 2005 05:47:00 -0700
Links: << >>  << T >>  << A >>
Thanks Eilert. It worked!! Hurray!

I am surprised why Xilinx does not have proper documentation for this
tool. I mean, of course, the documentation for data2mem is pretty good
in that it explains what it does and what are the options. However,
there are no examples. I did find one example BMM file in a data2bram
document. However, I would hope they improve the one on data2mem.

Thanks again.

Robert.


Article: 90640
Subject: Re: Data2Mem usage - help required
From: "Robert" <robertsolanki@gmail.com>
Date: 18 Oct 2005 05:48:49 -0700
Links: << >>  << T >>  << A >>
Just to add:

I thought the syntax for data2mem in the documentation was misleading.
Or may be its me. There it says:

data2mem -bm|bd infile.[bmm|elf|mem] [options]

This lead me to think that I should give EITHER a bmm or a mem file as
input, as opposed to both which are required.


Article: 90641
Subject: Re: clock timing
From: =?ISO-8859-15?Q?Benjamin_Menk=FCc?= <benjamin@menkuec.de>
Date: Tue, 18 Oct 2005 16:24:52 +0200
Links: << >>  << T >>  << A >>
Hello,

Okay, I want to latch all my data that goes to the lcd (via the external 
lvds serializer). Or should I use a FF?
I need something that takes the data on rising edge and has it available 
on the output on the next rising edge with enough sample and hold time.

Is it possible to do that with the IOB or do I have to build a latch in 
VHDL?

Sorry for my basic questions :=)


PS: In theory my rising and falling edge thing should work, why is it so 
bad? Is it not possible to set a timing contraint so that a process that 
is triggered by rising edge has every output available on falling edge?

regards,
Benjamin

Article: 90642
Subject: Re: clock timing
From: =?ISO-8859-1?Q?Benjamin_Menk=FCc?= <benjamin@menkuec.de>
Date: Tue, 18 Oct 2005 16:33:20 +0200
Links: << >>  << T >>  << A >>
Hi Antti,

see my answer to Symon.

How do I set my outputs to have an FF in the IOB?

Is a DCM already neccessary to adjust clock phase at 85 MHz? If I 
remember correctly I have to use a special pin on a clock net to do 
phase correction with a DCM, I am not sure if this is the case in my 
design. Maybe I can change that for the next version.

regards,
Benjamin

Article: 90643
Subject: Re: Data2Mem usage - help required
From: Jan Panteltje <pNaonStpealmtje@yahoo.com>
Date: Tue, 18 Oct 2005 15:13:01 GMT
Links: << >>  << T >>  << A >>
On a sunny day (18 Oct 2005 05:47:00 -0700) it happened "Robert"
<robertsolanki@gmail.com> wrote in
<1129639620.226637.259200@g49g2000cwa.googlegroups.com>:

>Thanks Eilert. It worked!! Hurray!
>
>I am surprised why Xilinx does not have proper documentation for this
>tool. I mean, of course, the documentation for data2mem is pretty good
>in that it explains what it does and what are the options. However,
>there are no examples. I did find one example BMM file in a data2bram
>document. However, I would hope they improve the one on data2mem.
>
>Thanks again.
>
>Robert.
>
Yes any documentation without examples is worthless irritating shit.
That is why I started adding examples in the 'application -h' output
these days.

Article: 90644
Subject: Re: Program FPGA from PowerPC in V2P
From: "Eric" <dasani8888@hotmail.com>
Date: 18 Oct 2005 08:14:32 -0700
Links: << >>  << T >>  << A >>
Thanks Alan. I'm hoping to port an OS to the system, and eventually be
able to run VHDL components in ppc. I'll try the methods you suggested.
Thanks again.


Article: 90645
Subject: Carry Chain Design
From: "Brannon" <brannonking@yahoo.com>
Date: 18 Oct 2005 08:14:39 -0700
Links: << >>  << T >>  << A >>
The carry chains in current Xilinx FPGAs are insufficient for
comparison logic. I propose some changes for future chip designs:

First, if this can be done on a Stratix 2 carry chain, please state
how.

We are going to do a LT or GT comparison. The plan for LT:

chop the thing into 2 bit chunks
for the most significant chunk:
  if (a < b) switch the chain high
  if (a > b) switch the chain low
  if (a == b) passthrough
repeat for next most significant chunk
tie the bottom of the chain low

So you see the problem? I can't force the chain high or low at run time
and still allow for passthrough. I can only do one or the other.


Article: 90646
Subject: Anyone used the Xilinx' floating point core?
From: "Simon Heinzle" <sheinzle@student.ethz.ch>
Date: Tue, 18 Oct 2005 17:18:00 +0200
Links: << >>  << T >>  << A >>
Hi there,

has anyone used Xilinx' floating point core with a Virtex2 Pro?

I get the same strange error in ISE the whole day and I don't know whats 
going wrong:

ERROR:NgdBuild:604 - logical block 
'simple_multiply_1/blk00000003/blk00000005' with type 'fpmulE24mw_8ew' could 
not be resolved. A pin name misspelling can cause this, a missing edif or 
ngc file, or the misspelling of a type name. Symbol 'fpmulE24mw_8ew' is not 
supported in target 'virtex2p'.
I read all the database articles, all basically saying that a netlist is 
missing.

All generated FP Core files are in the ISE project directory (also the .ngc 
file), the synthesize task also finds that file ("Reading core 
<floating_point_v1_0.ngc>").

I slowly start to believe that my installation of ISE is corrupt, hmm...

Thanks for any help,

Simon



Article: 90647
Subject: gast division carry chain usage
From: "Brannon" <brannonking@yahoo.com>
Date: 18 Oct 2005 08:21:19 -0700
Links: << >>  << T >>  << A >>
This excellent website discusses fast division:

http://tima-cmp.imag.fr/~guyot/Cours/Oparithm/english/DiviRa.htm

I was able to build the tail object so that it used the carry chain
hardware in a Virtex2 (through K-maping the logic table).
Unfortunately, the triple head and double head are not nearly as easy.
Has anyone done any work to make the triple head use the carry chain
logic? If it's not possible, we should look at changing the slice
layout in future chips. This is one of those parts that uses way more
than its fair share of slices. My quick implementation of the triple
head used two 3-bit adders and a 6bit wide 16 input mux. I recognize
that on a Stratix2 those adders could both be done in fewer luts, but
I'm still left with a 6x16 lookup table.


Article: 90648
Subject: Re: LSI RAPIDCHIP
From: "John B" <ctlmdjb@gmail.com>
Date: 18 Oct 2005 08:23:45 -0700
Links: << >>  << T >>  << A >>
Jerry - we've designed (are designing)  several LSI RapidChips.
Here's some comments on your posting:

-	Costs are pretty out there. You need to get to a Rapid Ready Netlist
using the LSI tool flow (LSI RapidWorx). Depends where you are coming
from on how hard that is. If it's an FPGA design, expect to re-map
the memories, re-do the I/Os, maybe change some IP, re-verify. If
it's a clean design it's a case of designing for the technology.
-	You'll pay; LSI NRE ($50-200K depending on chip chosen) for Netlist
to chip. Synplicity tool costs ($20K or so) and that should be it.
RapidWorx is free. You'll need Synopsis primetime for STA - if you
haven't got it that can be pricey, or you can pay someone to do it
for you on an hourly rate
-	Layout is easy as long as you follow the rules - so, one iteration.
The rules cover things like max speed (typically 250MHz) and getting
the RTL through the design rule checker (Tera Systems, Teraform tool).
The rules can be broken, but that's when physical becomes trickier
and you can expect to pay some additional NRE
-	Device delivery schedule.....won't lie to you here, LSI is still
putting chips through a new tool flow and we've run into several
gotcha's that delayed things. By now hopefully things are cleaned up
(they've done about 50 chips). But don't believe their 'as easy
as an FPGA' hype - it isn't. Learning the tools takes
sometime.....the tools still have some bugs. Working with someone
who's done it before is a huge benefit.
-	Synplicity does a 'placed netlist' synthesis with pretty accurate
timing.....except, one design we did had a massive fan out on the AMBA
bus. We warned the end customer but he went ahead anyway. The final
layout tool threw in a whole bunch of buffers and that screwed things
up compared to Synplicity results. Otherwise the match has been very
accurate.
-	Detailed place and route time - very dependent on the size /
complexity of the chip. But very fast compared to an ASIC 6-8 weeks is
a good rule of thumb
-	Test scan is built into the chip by LSI so you should have no worries
there. You hand off RTL, they add clocks, scan chains etc. No need to
worry about test coverage, signal integrity (as long as you follow the
rules)
-	Paying  distributor - LSI uses Arrow (in North America) to deal
with most customers who aren't Cisco etc. Arrow has a design center
and will do most (not all) of the post Netlist engineering. So yes, you
pay them. But they are highly professional and experienced. Unless
you're a high volume big guy in which case you might deal direct.
>From experience I'd rather deal with Arrow any day. LSI ARE sticklers
and can be a real pain to work with.

Feel free to Email me with any questions or you can talk directly to
one of our engineers (within reason, we have to make a living to!)


Article: 90649
Subject: Re: clock timing
From: langwadt@ieee.org
Date: 18 Oct 2005 08:25:23 -0700
Links: << >>  << T >>  << A >>

Benjamin Menk=FCc skrev:

> Hello,
snip
>
> PS: In theory my rising and falling edge thing should work, why is it so
> bad? Is it not possible to set a timing contraint so that a process that
> is triggered by rising edge has every output available on falling edge?

assuming the clock 50/50 duty cycle that should be the same as
constraining it to twice the frequency ;)=20

-Lasse




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