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 153525

Article: 153525
Subject: Re: Spartan 3A counter speed ?
From: Michael Karas <mkaras@carousel-design.com>
Date: Sat, 24 Mar 2012 04:40:19 -0700
Links: << >>  << T >>  << A >>
[This followup was posted to comp.arch.fpga and a copy was sent to the 
cited author.]

In article <XtKdnbZLV6lQVPHSnZ2dnUVZ_oadnZ2d@giganews.com>, 
jmelson@wustl.edu says...
> 
> Hello,
> 
> Does anybody have a very rough estimate of how fast
> you can run a 32-bit counter in a Spartan 3AN FPGA?
> 
> Thanks,
> 
> Jon

The answer to your question will be had by reading the Xilinx Product 
Data Sheets for the basic information which comes in a modular format 
including timing for I/O, logic cells, routing and globally distributed 
networks. The actual timing achievable will be determined by the 
specific design of the counter and how that design is instantiated in 
the part.

-- 

Michael Karas
Carousel Design Solutions
http://www.carousel-design.com

Article: 153526
Subject: Re: Synchronizing Virtex-6 RocketIOs on RX path
From: Verictor <stehuang@gmail.com>
Date: Sat, 24 Mar 2012 09:30:41 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Mar 9, 10:26=A0am, Gabor <ga...@szakacs.invalid> wrote:
> Berti Schueler wrote:
> > Hi
>
> > in a project I am using a Virtex-6 with GTXRocketIOtransceivers which I
> > want to interface with a 4x 6.5 Gb/s interface on the RX side. One proj=
ect
> > contraint is not to use any channel coding, i.e. only 8B data. So I hav=
e 4x
> > 6.5Gb/s that I have to synchronize on the RX path. That gives me two ma=
jor
> > challanges:
>
> > a) Somehow achieve a clock recovery
> > b) Synchronize the incoming data
>
> > Due to the fact that I am not allowed to use a specific channel coding,=
 I
> > cannot get the clock signal extracted from my data. So my idea is to us=
e one
> > additional channel to send a 1-0-pattern to get a clock reference for t=
he
> > whole interface. Use this as RXRECCLK (RX recovered clock) to clock the
> > other RocketIOs. Is this possible? If so, done! Then use a training pat=
tern
> > on the other channels to be able to shift and deskew the data (given th=
at
> > the skew does not change over time). Thereafter transmit the data over =
the 4
> > parallel channels.
>
> > So what do you think of this concept? Is it feasible? Any other suggest=
ions?
>
> > Thanks,
> > Berti
>
> Your solution sounds remarkably like Channel-Link, and it's not likely
> to work at 6.5 Gbps. =A0The problem (even if it were possible to wire the
> bit clocks together inside the V6) is that you're looking at a daunting
> task to match the prop delays between data and clock channels. =A0You
> have a much better chance of success using 8B-10B encoding and
> increasing the clock rate to allow the required throughput. =A0Is
> the Rx side also implemented in V6?
>
> -- Gabor

I may have a similar problem so just brainstorming here: is it
possible to use the recovered clock from the clock channel channel to
a PLL to have better clock performance?

Article: 153527
Subject: Re: Why are my S3A pins getting destroyed?
From: Tim Wescott <tim@seemywebsite.com>
Date: Sat, 24 Mar 2012 12:24:25 -0500
Links: << >>  << T >>  << A >>
On Fri, 23 Mar 2012 14:02:54 -0700, aleksazr wrote:

> Damn it, I've found the error, the wire is badly soldered.

And fixing one wire is worse than having to replace a whole FPGA?

-- 
My liberal friends think I'm a conservative kook.
My conservative friends think I'm a liberal kook.
Why am I not happy that they have found common ground?

Tim Wescott, Communications, Control, Circuits & Software
http://www.wescottdesign.com

Article: 153528
Subject: Digital Tachometer VHDL
From: "tachometer" <bine.bai@n_o_s_p_a_m.yahoo.com>
Date: Sun, 25 Mar 2012 07:25:21 -0500
Links: << >>  << T >>  << A >>
Hi,

I have this project where I have to design a tachometer using VHDL. The
thing is I m pretty new to the field of electronic projects and I m very
new to VHDL.
The project asks me to count the Rotations/per Minute from a motor.
It has to be in the range 19-98 RPM, the measurement time is 1.1s, and the
display resolution is 0.1 .

The good part is that I dont have to create a system to get this rotations,
they are given to me thru a generator. I just have to count the pulses and
display the result.
[url]http://imageshack.us/photo/my-images/546/blockvk.jpg[/url]
So, I tought I'll use an AND gate with the signal from the general as one
input and the clock divided so I'll obtain the period of 1.1s .
[url]http://imageshack.us/photo/my-images/839/clockbg.jpg/[/url]

What I have to do next is when i press a button it will count the pulses
for 1.1s and then display the result. [During counting the display will be
OFF].

Sorry for the long post but the first problem resumes to this. How do i
design a clock divider so I can get a period of 1.1s.
I have a basic clock divider code where i count the rising edges and then i
change the state of clock. But how many edges i have to count?

So : How do i get a clock with 0.909 freqvency from 50 MHZ internal clock
of fpga?

[code]ENTITY CLKDIV IS
PORT(
CLK: IN STD_LOGIC;
CLKOUT: OUT STD_LOGIC
);
END CLKDIV;

ARCHITECTURE DIV OF CLKDIV IS
BEGIN
PROCESS (CLK)
VARIABLE COUNT: INTEGER RANGE 0 TO ????  :=0;
VARIABLE STATE: STD_LOGIC := '1'; 
BEGIN
IF(RISING_EDGE (CLK)) THEN 
 IF(COUNT=  )THEN
COUNT:=0;
STATE:= '1';
ELSE
COUNT := COUNT+1;
END IF;
 IF(COUNT=)
STATE:= NOT STATE;
END IF;
END IF;
CLKOUT <= STATE; 
END PROCESS;
END DIV;
[/code]



	   
					
---------------------------------------		
Posted through http://www.FPGARelated.com

Article: 153529
Subject: Re: Digital Tachometer VHDL
From: Tim Wescott <tim@seemywebsite.please>
Date: Sun, 25 Mar 2012 10:51:14 -0500
Links: << >>  << T >>  << A >>
On Sun, 25 Mar 2012 07:25:21 -0500, tachometer wrote:

> Hi,
> 
> I have this project where I have to design a tachometer using VHDL. The
> thing is I m pretty new to the field of electronic projects and I m very
> new to VHDL.
> The project asks me to count the Rotations/per Minute from a motor. It
> has to be in the range 19-98 RPM, the measurement time is 1.1s, and the
> display resolution is 0.1 .
> 
> The good part is that I dont have to create a system to get this
> rotations, they are given to me thru a generator. I just have to count
> the pulses and display the result.
> [url]http://imageshack.us/photo/my-images/546/blockvk.jpg[/url] So, I
> tought I'll use an AND gate with the signal from the general as one
> input and the clock divided so I'll obtain the period of 1.1s .
> [url]http://imageshack.us/photo/my-images/839/clockbg.jpg/[/url]
> 
> What I have to do next is when i press a button it will count the pulses
> for 1.1s and then display the result. [During counting the display will
> be OFF].
> 
> Sorry for the long post but the first problem resumes to this. How do i
> design a clock divider so I can get a period of 1.1s. I have a basic
> clock divider code where i count the rising edges and then i change the
> state of clock. But how many edges i have to count?
> 
> So : How do i get a clock with 0.909 freqvency from 50 MHZ internal
> clock of fpga?

First:  If it's a halfway decent university that you go to, you can 
always ask the teaching assistant or your prof.

Second:  Or a fellow student.

Third:  You have reduced this down to a question that you might have seen 
in an exam or as a homework problem in a digital logic class -- how did 
you answer it then?  (Hint: how many pulses of a 50MHz clock happen in 
1.1 seconds?)

Fourth:  Do you have sufficient information to get a resolution of 0.1 
RPM by counting pulses for 1.1 seconds, or is your prof trying to herd 
you into a different approach?

-- 
Tim Wescott
Control system and signal processing consulting
www.wescottdesign.com

Article: 153530
Subject: Re: Digital Tachometer VHDL
From: glen herrmannsfeldt <gah@ugcs.caltech.edu>
Date: Sun, 25 Mar 2012 19:30:39 +0000 (UTC)
Links: << >>  << T >>  << A >>
tachometer <bine.bai@n_o_s_p_a_m.yahoo.com> wrote:

> I have this project where I have to design a tachometer using VHDL. The
> thing is I m pretty new to the field of electronic projects and I m very
> new to VHDL.

Many years ago (in the TTL days, likely before microprocessors) there
was a digital tachometer design in an electronics magazine.

To get a reasonable update rate, they used a PLL frequency multiplier.

If you want 1RPM resolution, you would otherwise have to count for
one minute, and for 0.1RMS for 10 minutes. That is a little slow
if someone wants to use it to adjust the speed.

With a PLL frequency multiplier, if it can lock you can get an
accurate RPM much sooner.

-- glen

Article: 153531
Subject: Re: Digital Tachometer VHDL
From: Frank Buss <fb@frank-buss.de>
Date: Sun, 25 Mar 2012 21:53:53 +0200
Links: << >>  << T >>  << A >>
glen herrmannsfeldt wrote:
> 
> If you want 1RPM resolution, you would otherwise have to count for
> one minute, and for 0.1RMS for 10 minutes. That is a little slow
> if someone wants to use it to adjust the speed.

I won't tell the solution, because it might be part of the homework, but
assuming no jitter on the input signal and a 50 MHz clock in the FPGA,
it is no problem at all to measure it with 0.1 RPM resolution, and even
better. Of course, measuring 19 RPM in 1.1 second is impossible with a
single measurement cycle, if the motor gives one impulse per rotation.
Maybe it should be the update rate of the display?

-- 
Frank Buss, http://www.frank-buss.de
electronics and more: http://www.youtube.com/user/frankbuss

Article: 153532
Subject: Re: Digital Tachometer VHDL
From: Tim Wescott <tim@seemywebsite.please>
Date: Sun, 25 Mar 2012 16:15:02 -0500
Links: << >>  << T >>  << A >>
On Sun, 25 Mar 2012 19:30:39 +0000, glen herrmannsfeldt wrote:

> tachometer <bine.bai@n_o_s_p_a_m.yahoo.com> wrote:
> 
>> I have this project where I have to design a tachometer using VHDL. The
>> thing is I m pretty new to the field of electronic projects and I m
>> very new to VHDL.
> 
> Many years ago (in the TTL days, likely before microprocessors) there
> was a digital tachometer design in an electronics magazine.
> 
> To get a reasonable update rate, they used a PLL frequency multiplier.
> 
> If you want 1RPM resolution, you would otherwise have to count for one
> minute, and for 0.1RMS for 10 minutes. That is a little slow if someone
> wants to use it to adjust the speed.
> 
> With a PLL frequency multiplier, if it can lock you can get an accurate
> RPM much sooner.

So think about what you've just said -- if there's sufficient information 
to do it with a PLL, doesn't that mean there's sufficient information in 
the incoming signal?  And what might that sufficient information be?

(Sorry about being so mystical -- this has _got_ to be a student project, 
and while I'm perfectly willing to help, I'm not going to just throw 
answers away.  Hence, Socrates).

-- 
Tim Wescott
Control system and signal processing consulting
www.wescottdesign.com

Article: 153533
Subject: Re: Digital Tachometer VHDL
From: rickman <gnuarm@gmail.com>
Date: Sun, 25 Mar 2012 15:11:10 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Mar 25, 5:15=A0pm, Tim Wescott <t...@seemywebsite.please> wrote:
> On Sun, 25 Mar 2012 19:30:39 +0000, glen herrmannsfeldt wrote:
> > tachometer <bine.bai@n_o_s_p_a_m.yahoo.com> wrote:
>
> >> I have this project where I have to design a tachometer using VHDL. Th=
e
> >> thing is I m pretty new to the field of electronic projects and I m
> >> very new to VHDL.
>
> > Many years ago (in the TTL days, likely before microprocessors) there
> > was a digital tachometer design in an electronics magazine.
>
> > To get a reasonable update rate, they used a PLL frequency multiplier.
>
> > If you want 1RPM resolution, you would otherwise have to count for one
> > minute, and for 0.1RMS for 10 minutes. That is a little slow if someone
> > wants to use it to adjust the speed.
>
> > With a PLL frequency multiplier, if it can lock you can get an accurate
> > RPM much sooner.
>
> So think about what you've just said -- if there's sufficient information
> to do it with a PLL, doesn't that mean there's sufficient information in
> the incoming signal? =A0And what might that sufficient information be?
>
> (Sorry about being so mystical -- this has _got_ to be a student project,
> and while I'm perfectly willing to help, I'm not going to just throw
> answers away. =A0Hence, Socrates).
>
> --
> Tim Wescott
> Control system and signal processing consultingwww.wescottdesign.com


I don't mind giving more obvious hints...

period =3D 1/freq

Rick

Article: 153534
Subject: Re: Spartan 3A counter speed ?
From: Jon Elson <jmelson@wustl.edu>
Date: Mon, 26 Mar 2012 14:33:33 -0500
Links: << >>  << T >>  << A >>
Michael Karas wrote:

> [This followup was posted to comp.arch.fpga and a copy was sent to the
> cited author.]
> 
> In article <XtKdnbZLV6lQVPHSnZ2dnUVZ_oadnZ2d@giganews.com>,
> jmelson@wustl.edu says...
>> 
>> Hello,
>> 
>> Does anybody have a very rough estimate of how fast
>> you can run a 32-bit counter in a Spartan 3AN FPGA?
>> 
>> Thanks,
>> 
>> Jon
> 
> The answer to your question will be had by reading the Xilinx Product
> Data Sheets for the basic information which comes in a modular format
> including timing for I/O, logic cells, routing and globally distributed
> networks. The actual timing achievable will be determined by the
> specific design of the counter and how that design is instantiated in
> the part.
> 
Thanks, that's as close to a non-answer as you can get.  The tricky
part is the carry chain for long counters, and they really don't
give you much info there, unless there's a secret manual I have
not been able to find.

Jon

Article: 153535
Subject: Re: Spartan 3A counter speed ?
From: Rob Gaddi <rgaddi@technologyhighland.invalid>
Date: Mon, 26 Mar 2012 13:12:33 -0700
Links: << >>  << T >>  << A >>
On Mon, 26 Mar 2012 14:33:33 -0500
Jon Elson <jmelson@wustl.edu> wrote:

> Thanks, that's as close to a non-answer as you can get.  The tricky
> part is the carry chain for long counters, and they really don't
> give you much info there, unless there's a secret manual I have
> not been able to find.
> 
> Jon

If I recall correctly, carry chain propagation was on the order of 700
ps/2 bits, but don't quote me on that.

Part of the problem is that I don't think your question is answerable
in the general case of "Spartan 3A".  Different device sizes may or may
not allow you to run 32-bits all on one carry chain.  If you have to
use two columns instead of just one, the additional performance hit of
that next bit would be substantial.

-- 
Rob Gaddi, Highland Technology -- www.highlandtechnology.com
Email address domain is currently out of order.  See above to fix.

Article: 153536
Subject: Re: Spartan 3A counter speed ?
From: glen herrmannsfeldt <gah@ugcs.caltech.edu>
Date: Mon, 26 Mar 2012 20:57:58 +0000 (UTC)
Links: << >>  << T >>  << A >>
Jon Elson <jmelson@wustl.edu> wrote:

(snip)
>> The answer to your question will be had by reading the Xilinx Product
>> Data Sheets for the basic information which comes in a modular format
>> including timing for I/O, logic cells, routing and globally distributed
>> networks. The actual timing achievable will be determined by the
>> specific design of the counter and how that design is instantiated in
>> the part.
 
> Thanks, that's as close to a non-answer as you can get.  The tricky
> part is the carry chain for long counters, and they really don't
> give you much info there, unless there's a secret manual I have
> not been able to find.

Well, also it depends on how you use the counter. If you need to be
able to latch the bits from the counter, then the timing might
depend on that, and not the counter itself. (In race terms, to be
able to get lap times while the counter continues to run.)

-- glen

Article: 153537
Subject: FPGA + Mess o' RAM
From: Rob Gaddi <rgaddi@technologyhighland.invalid>
Date: Mon, 26 Mar 2012 14:19:46 -0700
Links: << >>  << T >>  << A >>
Does anyone have any experience connecting an FPGA to a serious mess of
DRAM?  I'm thinking of something on the order of 16GB, possibly
just by buying/socketing 4x4GB standard DIMMs.

I don't need tremendous throughput; if I could average 50 MB/s I'd be
fine.  For sheer density I'm thinking DDR2.  I'd like to avoid DDR3 if
I can, simply because of the lack of support on low-end FPGAs. I could
certainly go slower, say DDR1 or even SDR, but that seems to imply
buying chips by the bucketload per board, and my assembly people will
shoot me.

Ideally this would be a Cyclone 3/4 project.  Maybe Spartan 6 instead.
The actual signal processing requirements are low, so I don't need that
much crunching horsepower.

Anyone manage to do something like this?

-- 
Rob Gaddi, Highland Technology -- www.highlandtechnology.com
Email address domain is currently out of order.  See above to fix.

Article: 153538
Subject: Re: FPGA + Mess o' RAM
From: Gabor <gabor@szakacs.invalid>
Date: Mon, 26 Mar 2012 18:08:49 -0400
Links: << >>  << T >>  << A >>
Rob Gaddi wrote:
> Does anyone have any experience connecting an FPGA to a serious mess of
> DRAM?  I'm thinking of something on the order of 16GB, possibly
> just by buying/socketing 4x4GB standard DIMMs.
> 
> I don't need tremendous throughput; if I could average 50 MB/s I'd be
> fine.  For sheer density I'm thinking DDR2.  I'd like to avoid DDR3 if
> I can, simply because of the lack of support on low-end FPGAs. I could
> certainly go slower, say DDR1 or even SDR, but that seems to imply
> buying chips by the bucketload per board, and my assembly people will
> shoot me.
> 
> Ideally this would be a Cyclone 3/4 project.  Maybe Spartan 6 instead.
> The actual signal processing requirements are low, so I don't need that
> much crunching horsepower.
> 
> Anyone manage to do something like this?
> 

I don't recommend Spartan 6 for this application.  Its internal
memory controllers only handle single chips - not DIMMs.  So
even with a large S6 and multiple MCB's you can't get up to
16GB.  And S6 is sufficiently slow without the MCB to make
DDR2 a nightmare.

If you want to run really slow, you might want to look into
LPDDR memory, which can run with a much lower clock speed
making the extra net lengths, loads, etc. more manageable.

-- Gabor

Article: 153539
Subject: Re: Spartan 3A counter speed ?
From: Gabor <gabor@szakacs.invalid>
Date: Mon, 26 Mar 2012 18:22:15 -0400
Links: << >>  << T >>  << A >>
Rob Gaddi wrote:
> On Mon, 26 Mar 2012 14:33:33 -0500
> Jon Elson <jmelson@wustl.edu> wrote:
> 
>> Thanks, that's as close to a non-answer as you can get.  The tricky
>> part is the carry chain for long counters, and they really don't
>> give you much info there, unless there's a secret manual I have
>> not been able to find.
>>
>> Jon
> 
> If I recall correctly, carry chain propagation was on the order of 700
> ps/2 bits, but don't quote me on that.
> 
> Part of the problem is that I don't think your question is answerable
> in the general case of "Spartan 3A".  Different device sizes may or may
> not allow you to run 32-bits all on one carry chain.  If you have to
> use two columns instead of just one, the additional performance hit of
> that next bit would be substantial.
> 

Well, it took me about 5 minutes to code up a simple project with
a 32-bit counter and enough registers to prevent other logic from
being the worst-case path.  In a XC3S50AN-5 there are enough rows
to keep 32-bits in a single carry chain.  With no constraints, the
design built and reported 4.402 ns minimum clock period (after
place & route) or about 227 MHz.

YMMV

-- Gabor

Article: 153540
Subject: Re: Spartan 3A counter speed ?
From: Gabor <gabor@szakacs.invalid>
Date: Mon, 26 Mar 2012 18:29:44 -0400
Links: << >>  << T >>  << A >>
Gabor wrote:
> Rob Gaddi wrote:
>> On Mon, 26 Mar 2012 14:33:33 -0500
>> Jon Elson <jmelson@wustl.edu> wrote:
>>
>>> Thanks, that's as close to a non-answer as you can get.  The tricky
>>> part is the carry chain for long counters, and they really don't
>>> give you much info there, unless there's a secret manual I have
>>> not been able to find.
>>>
>>> Jon
>>
>> If I recall correctly, carry chain propagation was on the order of 700
>> ps/2 bits, but don't quote me on that.
>>
>> Part of the problem is that I don't think your question is answerable
>> in the general case of "Spartan 3A".  Different device sizes may or may
>> not allow you to run 32-bits all on one carry chain.  If you have to
>> use two columns instead of just one, the additional performance hit of
>> that next bit would be substantial.
>>
> 
> Well, it took me about 5 minutes to code up a simple project with
> a 32-bit counter and enough registers to prevent other logic from
> being the worst-case path.  In a XC3S50AN-5 there are enough rows
> to keep 32-bits in a single carry chain.  With no constraints, the
> design built and reported 4.402 ns minimum clock period (after
> place & route) or about 227 MHz.
> 
> YMMV
> 
> -- Gabor

Timing constraint: TS_clk = PERIOD TIMEGRP "clk" 4.4 ns HIGH 50%;
  For more information, see Period Analysis in the Timing Closure User 
Guide (UG612).
   574 paths analyzed, 124 endpoints analyzed, 1 failing endpoint
   1 timing error detected. (1 setup error, 0 hold errors, 0 component 
switching limit errors)
   Minimum period is   4.402ns.
 
-------------------------------------------------------------------------------- 


  Paths for end point count_31 (SLICE_X11Y23.CIN), 30 paths
 
-------------------------------------------------------------------------------- 

  Slack (setup path):     -0.002ns (requirement - (data path - clock 
path skew + uncertainty))
    Source:               count_0 (FF)
    Destination:          count_31 (FF)
    Requirement:          4.400ns
    Data Path Delay:      4.363ns (Levels of Logic = 16)
    Clock Path Skew:      -0.039ns (0.230 - 0.269)
    Source Clock:         clk_BUFGP rising at 0.000ns
    Destination Clock:    clk_BUFGP rising at 4.400ns
    Clock Uncertainty:    0.000ns

    Maximum Data Path: count_0 to count_31
      Location             Delay type         Delay(ns)  Physical Resource
                                                         Logical 
Resource(s)
      ------------------------------------------------- 
-------------------
      SLICE_X11Y8.XQ       Tcko                  0.495   count<0>
                                                         count_0
      SLICE_X11Y8.F3       net (fanout=1)        0.318   count<0>
      SLICE_X11Y8.COUT     Topcyf                1.026   count<0>
 
Mcount_count_lut<0>_INV_0
                                                         Mcount_count_cy<0>
                                                         Mcount_count_cy<1>
      SLICE_X11Y9.CIN      net (fanout=1)        0.000   Mcount_count_cy<1>
      SLICE_X11Y9.COUT     Tbyp                  0.130   count<2>
                                                         Mcount_count_cy<2>
                                                         Mcount_count_cy<3>
      SLICE_X11Y10.CIN     net (fanout=1)        0.000   Mcount_count_cy<3>
      SLICE_X11Y10.COUT    Tbyp                  0.130   count<4>
                                                         Mcount_count_cy<4>
                                                         Mcount_count_cy<5>
      SLICE_X11Y11.CIN     net (fanout=1)        0.000   Mcount_count_cy<5>
      SLICE_X11Y11.COUT    Tbyp                  0.130   count<6>
                                                         Mcount_count_cy<6>
                                                         Mcount_count_cy<7>
      SLICE_X11Y12.CIN     net (fanout=1)        0.000   Mcount_count_cy<7>
      SLICE_X11Y12.COUT    Tbyp                  0.130   count<8>
                                                         Mcount_count_cy<8>
                                                         Mcount_count_cy<9>
      SLICE_X11Y13.CIN     net (fanout=1)        0.000   Mcount_count_cy<9>
      SLICE_X11Y13.COUT    Tbyp                  0.130   count<10>
 
Mcount_count_cy<10>
 
Mcount_count_cy<11>
      SLICE_X11Y14.CIN     net (fanout=1)        0.000 
Mcount_count_cy<11>
      SLICE_X11Y14.COUT    Tbyp                  0.130   count<12>
 
Mcount_count_cy<12>
 
Mcount_count_cy<13>
      SLICE_X11Y15.CIN     net (fanout=1)        0.000 
Mcount_count_cy<13>
      SLICE_X11Y15.COUT    Tbyp                  0.130   count<14>
 
Mcount_count_cy<14>
 
Mcount_count_cy<15>
      SLICE_X11Y16.CIN     net (fanout=1)        0.000 
Mcount_count_cy<15>
      SLICE_X11Y16.COUT    Tbyp                  0.130   count<16>
 
Mcount_count_cy<16>
 
Mcount_count_cy<17>
      SLICE_X11Y17.CIN     net (fanout=1)        0.000 
Mcount_count_cy<17>
      SLICE_X11Y17.COUT    Tbyp                  0.130   count<18>
 
Mcount_count_cy<18>
 
Mcount_count_cy<19>
      SLICE_X11Y18.CIN     net (fanout=1)        0.000 
Mcount_count_cy<19>
      SLICE_X11Y18.COUT    Tbyp                  0.130   count<20>
 
Mcount_count_cy<20>
 
Mcount_count_cy<21>
      SLICE_X11Y19.CIN     net (fanout=1)        0.000 
Mcount_count_cy<21>
      SLICE_X11Y19.COUT    Tbyp                  0.130   count<22>
 
Mcount_count_cy<22>
 
Mcount_count_cy<23>
      SLICE_X11Y20.CIN     net (fanout=1)        0.000 
Mcount_count_cy<23>
      SLICE_X11Y20.COUT    Tbyp                  0.130   count<24>
 
Mcount_count_cy<24>
 
Mcount_count_cy<25>
      SLICE_X11Y21.CIN     net (fanout=1)        0.000 
Mcount_count_cy<25>
      SLICE_X11Y21.COUT    Tbyp                  0.130   count<26>
 
Mcount_count_cy<26>
 
Mcount_count_cy<27>
      SLICE_X11Y22.CIN     net (fanout=1)        0.000 
Mcount_count_cy<27>
      SLICE_X11Y22.COUT    Tbyp                  0.130   count<28>
 
Mcount_count_cy<28>
 
Mcount_count_cy<29>
      SLICE_X11Y23.CIN     net (fanout=1)        0.000 
Mcount_count_cy<29>
      SLICE_X11Y23.CLK     Tcinck                0.704   count<30>
 
Mcount_count_cy<30>
 
Mcount_count_xor<31>
                                                         count_31
      ------------------------------------------------- 
---------------------------
      Total                                      4.363ns (4.045ns logic, 
0.318ns route)
                                                         (92.7% logic, 
7.3% route)

That's the worst-case path in the timing report after adding a period
constraint of 4.4 ns.  Same achievable period of 4.402...

-- Gabor

Article: 153541
Subject: Re: Digital Tachometer VHDL
From: Michael Karas <mkaras@carousel-design.com>
Date: Mon, 26 Mar 2012 23:06:56 -0700
Links: << >>  << T >>  << A >>
In article <48354533-874d-4538-bf69-c4a8c43bda80
@l14g2000vbe.googlegroups.com>, gnuarm@gmail.com says...
> 
> 
> 
> I don't mind giving more obvious hints...
> 
> period = 1/freq
> 
> Rick


Hmmm...  Measuring period within 1.1 seconds limits us to a minimum
RPM of 54.5454 assuming one pulse per revolution from the motor. That 
can give a clue as to how many PPR - pulses per revoultion - would be 
needed to resolve to the minimum RPM stated.

-- 

Michael Karas
Carousel Design Solutions
http://www.carousel-design.com

Article: 153542
Subject: Re: FPGA + Mess o' RAM
From: nico@puntnl.niks (Nico Coesel)
Date: Tue, 27 Mar 2012 07:23:06 GMT
Links: << >>  << T >>  << A >>
Rob Gaddi <rgaddi@technologyhighland.invalid> wrote:

>Does anyone have any experience connecting an FPGA to a serious mess of
>DRAM?  I'm thinking of something on the order of 16GB, possibly
>just by buying/socketing 4x4GB standard DIMMs.
>
>I don't need tremendous throughput; if I could average 50 MB/s I'd be
>fine.  For sheer density I'm thinking DDR2.  I'd like to avoid DDR3 if
>I can, simply because of the lack of support on low-end FPGAs. I could
>certainly go slower, say DDR1 or even SDR, but that seems to imply
>buying chips by the bucketload per board, and my assembly people will
>shoot me.
>
>Ideally this would be a Cyclone 3/4 project.  Maybe Spartan 6 instead.
>The actual signal processing requirements are low, so I don't need that
>much crunching horsepower.
>
>Anyone manage to do something like this?

Many years ago I've created a design which used a standard DDR module
at 100MHz on a Spartan2 (lowest speed grade). Actually the memory was
shared between 2 FPGAs due to lack of pins. I did roll my own DDR
controller because the MIG tool produced an overcomplicated interface
and didn't even allow for 32 data lines. Most FPGA vendor solutions
aim at achieving the highest memory bandwidth. Usually at the costs of
enormous amounts of logic. At lower speeds things get much easier.

IIRC DDR2 has a lower speed limit of 133MHz which shouldn't be a
problem. I think my old design would also be able to use DDR2 if I
used a higher speed grade FPGA. I used a 90 degrees shifted clock to
capture the data read from the memory. It took some arm wrestling with
the tools to get worst case setup and hold timings which I needed to
calculate/determine if there was a window in which the data was valid.
This is much easier than trying to use the DQS signal as a clock for a
FIFO. More logic adds more timing uncertainty when dealing with
external signals.

-- 
Failure does not prove something is impossible, failure simply
indicates you are not using the right tools...
nico@nctdevpuntnl (punt=.)
--------------------------------------------------------------

Article: 153543
Subject: FPGA communication with a PC (Windows)
From: Bill Valores <bill.valores@gmail.com>
Date: Tue, 27 Mar 2012 04:10:18 -0700 (PDT)
Links: << >>  << T >>  << A >>
Hello all,

My team needs to design our own piece of testing equipment for our
project. I'll spare you the gory details, and just say that we will
need to collect data at some 20 Mbyte/sec (possibly continuously) and
somehow get it to a PC computer running Windows. A fancy GUI
application will then present this to the operator. A similar link is
necessary in the other direction for signal injection.

The FPGA does some data processing, so we can't just buy a data
capture card. We may consider a capturing card to interface with the
FPGA digitally.

So my question is: What's your recommendation for the PC-FPGA
communication? Given a fairly skilled engineering team and a
management that understands this is not a cheap quickie (but still
wants to keep costs and efforts at a minimum, of course) what would
you suggest? USB? PCIe? Ethernet? Capture data from debug pins?
Something else?

And: Can anyone give me an idea about what we're up against (costs and
time) based upon experience?

Purchasing equipment and IP cores is fine as long as the costs can be
justified in terms of saved engineering time. It's our own salaries
weighted against spending the money on products (with due risk
calculations and stuff).

Thanks in advance,
   Bill

Article: 153544
Subject: Re: FPGA communication with a PC (Windows)
From: "Morten Leikvoll" <mleikvol@yahoo.nospam>
Date: Tue, 27 Mar 2012 13:36:04 +0200
Links: << >>  << T >>  << A >>
"Bill Valores" <bill.valores@gmail.com> wrote in message 
news:33dd12b5-c2a4-4dab-bfba-8e801b27c37c@w32g2000vbt.googlegroups.com...
> So my question is: What's your recommendation for the PC-FPGA
> communication?

Buy a FPGA on a PCIe development board, then add your stuff to it. A single 
lane gen1 may be just enough, so any other newer gen would do too.



Article: 153545
Subject: Re: FPGA communication with a PC (Windows)
From: andy.mcclelland@tesco.net
Date: Tue, 27 Mar 2012 04:36:34 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Tuesday, March 27, 2012 12:10:18 PM UTC+1, Bill Valores wrote:
> Hello all,
> 
> My team needs to design our own piece of testing equipment for our
> project. I'll spare you the gory details, and just say that we will
> need to collect data at some 20 Mbyte/sec (possibly continuously) and
> somehow get it to a PC computer running Windows. A fancy GUI
> application will then present this to the operator. A similar link is
> necessary in the other direction for signal injection.
> 
> The FPGA does some data processing, so we can't just buy a data
> capture card. We may consider a capturing card to interface with the
> FPGA digitally.
> 
> So my question is: What's your recommendation for the PC-FPGA
> communication? Given a fairly skilled engineering team and a
> management that understands this is not a cheap quickie (but still
> wants to keep costs and efforts at a minimum, of course) what would
> you suggest? USB? PCIe? Ethernet? Capture data from debug pins?
> Something else?
> 
> And: Can anyone give me an idea about what we're up against (costs and
> time) based upon experience?
> 
> Purchasing equipment and IP cores is fine as long as the costs can be
> justified in terms of saved engineering time. It's our own salaries
> weighted against spending the money on products (with due risk
> calculations and stuff).
> 
> Thanks in advance,
>    Bill

Hi Bill,

My first thought would be to see if something from National Instruments' extensive range would suit your requirements.  http://www.ni.com/fpga-hardware/

Even if you don't find an off-the-shelf solution from them, the website is a good resource for discovering the various comms and bus options.

NI are undoubtedly at the pricier end of such solutions, but they have put a great deal of effort into ease of use, flexibility and support.

You might even find that their Lab-View s/w can be used to create the GUI that you need.

-- 
Regards,

Andy McC

Article: 153546
Subject: Re: FPGA communication with a PC (Windows)
From: KJ <kkjennings@sbcglobal.net>
Date: Tue, 27 Mar 2012 04:37:07 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Tuesday, March 27, 2012 7:10:18 AM UTC-4, Bill Valores wrote:
> My team needs to design our own piece of testing equipment for our
> project. I'll spare you the gory details, and just say that we will
> need to collect data at some 20 Mbyte/sec (possibly continuously) and
> somehow get it to a PC computer running Windows. A fancy GUI
> application will then present this to the operator. A similar link is
> necessary in the other direction for signal injection.
>=20

20 MB/sec going back up to the FPGA as well?  Or simply a link that control=
s the 20 MB/sec data that is going downstream to the PC?


> So my question is: What's your recommendation for the PC-FPGA
> communication? Given a fairly skilled engineering team and a
> management that understands this is not a cheap quickie (but still
> wants to keep costs and efforts at a minimum, of course) what would
> you suggest? USB? PCIe? Ethernet? Capture data from debug pins?
> Something else?
>=20
For a data point, 30-35 MB/sec is achievable via USB on a PC.  At that poin=
t, Windows becomes the bottleneck.  Whether you're purchasing or designing =
your own USB for the FPGA side of things you'll want to exercise simple dat=
a transfers to see what you can achieve with whatever you choose.

Also, you don't really mention what is the source for the FPGA data.  That =
would likely affect whether you have an external box with FPGA that communi=
cates with the PC or whether it would be better to put the FPGA on a card i=
nside the PC.  Based on what you wrote, I'm guessing that you're envisionin=
g an external box of some sort, but you should clarify.

Kevin Jennings

Article: 153547
Subject: Re: FPGA communication with a PC (Windows)
From: Bill Valores <bill.valores@gmail.com>
Date: Tue, 27 Mar 2012 05:22:12 -0700 (PDT)
Links: << >>  << T >>  << A >>
Thanks for your answers so far. I'll address some issues shortly.

Yes, National Instruments was one of the first thoughts. The main
concern about this solution the per unit price in case we want to
duplicate the system. But it's definitely not ruled out.

Buying an PCIe development board is indeed easy. Implementing the
logic for the PCIe interface (I suppose DMA is the only option) and
writing the Windows drivers doesn't sound like a trip in the
rosegarden to me.

As for the form factor: A separate box solution, or a card stuck in
the PC, both go. Data needs to be flowing in both directions
simultaneously at 20 MB/sec in each direction.

As for USB: It's a generic name. The only solution we're aware of is
Cypress' EZUSB. Whether it fits the data rates is considered a
"maybe".

Article: 153548
Subject: Re: FPGA communication with a PC (Windows)
From: Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>
Date: Tue, 27 Mar 2012 12:49:36 +0000 (UTC)
Links: << >>  << T >>  << A >>
Bill Valores <bill.valores@gmail.com> wrote:
> Thanks for your answers so far. I'll address some issues shortly.

> Yes, National Instruments was one of the first thoughts. The main
> concern about this solution the per unit price in case we want to
> duplicate the system. But it's definitely not ruled out.

> Buying an PCIe development board is indeed easy. Implementing the
> logic for the PCIe interface (I suppose DMA is the only option) and
> writing the Windows drivers doesn't sound like a trip in the
> rosegarden to me.

> As for the form factor: A separate box solution, or a card stuck in
> the PC, both go. Data needs to be flowing in both directions
> simultaneously at 20 MB/sec in each direction.

> As for USB: It's a generic name. The only solution we're aware of is
> Cypress' EZUSB. Whether it fits the data rates is considered a
> "maybe".

A FT(2)232H in synchronous FIFO mode should also be able to pump that rate
into the PC.   
-- 
Uwe Bonnes                bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------

Article: 153549
Subject: Re: FPGA communication with a PC (Windows)
From: Arlet Ottens <usenet+5@c-scape.nl>
Date: Tue, 27 Mar 2012 16:41:49 +0200
Links: << >>  << T >>  << A >>
On 03/27/2012 02:22 PM, Bill Valores wrote:
> Thanks for your answers so far. I'll address some issues shortly.
>
> Yes, National Instruments was one of the first thoughts. The main
> concern about this solution the per unit price in case we want to
> duplicate the system. But it's definitely not ruled out.
>
> Buying an PCIe development board is indeed easy. Implementing the
> logic for the PCIe interface (I suppose DMA is the only option) and
> writing the Windows drivers doesn't sound like a trip in the
> rosegarden to me.
>
> As for the form factor: A separate box solution, or a card stuck in
> the PC, both go. Data needs to be flowing in both directions
> simultaneously at 20 MB/sec in each direction.
>
> As for USB: It's a generic name. The only solution we're aware of is
> Cypress' EZUSB. Whether it fits the data rates is considered a
> "maybe".

I wouldn't recommend USB. It's too flaky for reliable transfer.

Why not ethernet ? Interfacing with a PHY is simple, and if you use UDP 
packets in a controlled environment (fixed IP addresses), the MAC layer 
is fairly straightforward too.

Capturing the UDP traffic can be done with simple tool like netcat.



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