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 132625

Article: 132625
Subject: Re: Timing closure problem --- how to make the QII fitter smarter
From: John_H <newsgroup@johnhandwork.com>
Date: Tue, 3 Jun 2008 14:20:01 -0700 (PDT)
Links: << >>  << T >>  << A >>
Hua wrote:
<snip>
>
> Yes Ed, we found out too. In fact, the bottleneck was the clock toggle
> rate for I/O pins. For LVDS the highest toggle rate was only 300+ MHz
> for this part.
>
> Hua

If you're targeting OC-12, the 622MHz is your bit rate.  The 8B10B
coder would typically be implemented at 78MHz.

If all you need ruinning at the highest rate is the serdes, you should
be able to hand-place the LEs and IOs to get the best routing.

As for going beyond the 300 MHz limit, you will not be guaranteed to
work under all conditions.

- John

Article: 132626
Subject: puzzling [and deceiving ?] Actel kit
From: whygee <whygee@yg.yg>
Date: Wed, 04 Jun 2008 03:19:24 +0200
Links: << >>  << T >>  << A >>
Hello,
I'm sorry for this post but I don't want to rant for nothing,
being the optimistic guy that some people know...

I have finally got the ProAsic3 kit that I ordered in december.
When powered up, it displays some stuff on a 1x8 LCD
and blinks LEDs. Wow, I can do the same with a dumb PIC.

Now, I see that the kit has a 250K IC, and not a 1500K one.
I just looked at the invoice and it was never clear
what version was ordered (just "A3P-EVAL-KIT").
I feel really dumb, part one.

The huge box contains boxes, air, foam...
they could have spared 2x the volume, hence shipping,
as well as a CDROM : i get Libero 8.1 and 8.2.
Thanks...... Anyway I'm sure that the 8.2 will be
forced into me by Actel, while 8.1 will work
on the Win2K that I reserve for EDA.
Pleaaaaaaaaase don't make me install XP !

Now, what if I built a prototype board
on top of the .1mil headers ?
Well, Actel decided that a specific board must
be done "the hard way", not using cheap and
easily soldered 0.1mil pitch predrilled boards.
They have shifted the headers 0.05 or 0.025mil
so a predrilled board can't fit. Or was it a
beginner's mistake ? (I know, I did it once).
And don't tell me it's a measure of precaution
because there are better ways to prevent a board
from being inserted the wrong way.
I feel stupid, part two.

I can stand the delay, or hack connectors.
But now how do I register the software ?
http://register.actel.com/ asks me for
"a unique software ID number [that] is located on the CD jacket".
I find it nowhere. I have looked everywhere in vain.
I feel really annoyed, part three.

I think that my patience has reached the limits.
And nobody will buy this kit back, as it has already cost
me almost 400 Euros. I thought that paying "the price"
would provide me with something serious. Now all I got
is a late, useless board with only 6,144 FlipFlop.

I'm sure that there are countless better Xilinx/Actel
boards, either by the makers or 3rd parties, cheaper
and immediately available. I made a choice and I stand
by it, but it's going to end soon if it does not get better.
It's not a disapointment anymore, it's deception.

Can anyone help me ?
YG

Article: 132627
Subject: Re: Combinatorial logic delay plus routing delay exceeds clock period
From: "Sam Worth" <no-reply@some.org>
Date: Tue, 3 Jun 2008 18:41:55 -0700
Links: << >>  << T >>  << A >>

"Peter Alfke" <peter@xilinx.com> wrote in message 
news:14e54e94-bb9f-43f0-9412-
The problem with a long accumulator is the carry ripple delay.
That's why I cut up the accumulator into smaller chunks.
Into the cut I insert a pipeline flip-flop that delays the rippling
carry by one clock tick.
Whenever there is a 1 in any of these pipeline registers, it
represents an "undigested" carry, which means that the accumulator
output is incorrect.
Obviously, I must get rid of these stored carry bits before I look at
the accumulator output.
So I run a few cycles of dummy accumulation, with the data inputs at
zero or disabled.
Each clock tick will move the stored carry into the accumulator. Worst-
case I need one clock tick for every carry-pipeline flip-flop.
If you divide the accumulator in two halves, you need only one extra
clock tick, and you need it only for read-out, not for the normal
accumulator operation.

Hello, Peter.
Thanks for the expanded explanation. That is much clearer. I like this 
approach. The extra carry accumulation cycles are only needed when carry is 
generated. When no carry is generated, the answer is immediately available. 
Nice. Fast (most of the time in my design). Elegant. Thanks again.
- Sam
P.S. I often ask for HDL examples from others so I can learn how others have 
solved similar issues. 



Article: 132628
Subject: Re: Counter implementation with ise problem
From: backhus <nix@nirgends.xyz>
Date: Wed, 04 Jun 2008 07:46:34 +0200
Links: << >>  << T >>  << A >>
Hi Zoran,
wasn't there something in your synthesis report telling you that 
Q_internal (or Q) will be tied to a constant value?

Have a look at your code where you wrote

if RST <='1' then

well, RST less or equal '1' means always true, since '0' is less than 
one. (not caring about 'X','U' etc, since we are talking synthesis here
)
And in that case Q_internal remains 0x00, and doesn't even change when 
CLR is asserted or anything else.

You wrote proper syntax, but the semantic is just wrong for a counter.
Take a look at the technology view too. Or even at the list of used 
ressources in the synthesis report.

> 		if CLR = '1' then
> 				Q_internal <= (others => '0');
> 		elsif C'event and C='1' then
> 			if RST <='1' then
> 				Q_internal <= (others => '0');
> 			elsif CE = '1' then
> 				Q_internal <= Q_internal+'1';
> 			end if;


Have a nice synthesis
   Eilert

Article: 132629
Subject: Re: Counter implementation with ise problem
From: Zorjak <Zorjak@gmail.com>
Date: Tue, 3 Jun 2008 23:55:24 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Jun 4, 7:46 am, backhus <n...@nirgends.xyz> wrote:
> Hi Zoran,
> wasn't there something in your synthesis report telling you that
> Q_internal (or Q) will be tied to a constant value?
>
> Have a look at your code where you wrote
>
> if RST <='1' then
>
> well, RST less or equal '1' means always true, since '0' is less than
> one. (not caring about 'X','U' etc, since we are talking synthesis here
> )
> And in that case Q_internal remains 0x00, and doesn't even change when
> CLR is asserted or anything else.
>
> You wrote proper syntax, but the semantic is just wrong for a counter.
> Take a look at the technology view too. Or even at the list of used
> ressources in the synthesis report.
>
> >            if CLR = '1' then
> >                            Q_internal <= (others => '0');
> >            elsif C'event and C='1' then
> >                    if RST <='1' then
> >                            Q_internal <= (others => '0');
> >                    elsif CE = '1' then
> >                            Q_internal <= Q_internal+'1';
> >                    end if;
>
> Have a nice synthesis
>    Eilert

Thank you very much for the help.

Yes you were right. My code wasn't good. The stupid mistake in code. I
can't believe what I've wrote. But you must admit that warring that I
was getting from ISE were totally unasociative. That confused me
totally. :):)

Thank you one more time for all your help
Zoran

Article: 132630
Subject: Re: Interrupt handler for Xilinx EMAC- URGENT!!
From: vikram <vikram788@gmail.com>
Date: Wed, 4 Jun 2008 00:09:30 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Jun 3, 8:42=A0pm, vikram <vikram...@gmail.com> wrote:
> On Jun 3, 6:54=A0pm, morphiend <morphi...@gmail.com> wrote:
>
>
>
>
>
> > On Jun 3, 6:18 am, vikram <vikram...@gmail.com> wrote:
>
> > > hello
>
> > > when i add a peripheral (plb EMAC in this case) from BSB to my
> > > embedded system (PPC405,ML300), do i have to explicitly write the
> > > drivers and, especially, an interrupt handler,and download them too?
> > > if yes, how do i add them?
>
> > > further, in the drivers and examples provided by xilinx, where can i
> > > find out what the argument values are? (for example, an argument
> > > instance pointer[InstancePtr] appears in most functions. for EMAC,
> > > say, how do i find out what its value is? same thing with device id
> > > etc)
>
> > > Or does xilinx EDK link the drivers too when the peripheral is added?
>
> > > please help me out asap...
>
> > > thanks
>
> > > vikram
>
> > > =A0 ps: i am new to this so please keep it simple....
>
> > Well..... EDK comes with OS-independent drivers for most of its
> > peripherals. So from that standpoint, no you don't have to write the
> > low-level driver. Now, you do have to write the "glue" logic to
> > interface to this low-level driver. For each driver provided by EDK,
> > there is an example of it being used. I'm not sure where they're at,
> > but they do exist.
>
> > The drivers are enabled when you select them in the Software
> > configuration portion of your EDK project. After you have enabled
> > them, you build them by running libgen. This is performed from the
> > command line by "make libs" or from the gui : Build software
> > libraries.
>
> > After the libraries have been built, you can view all the source code
> > to them since they'll be in:
>
> > <EDK project root>/<name of the embedded processor: i.e. ppc405_0>/
> > libsrc/<driver name>.
>
> > HTH,
>
> > Mike- Hide quoted text -
>
> > - Show quoted text -
>
> thanks for the prompt reply... will check it out.
>
> regards
> vikram- Hide quoted text -
>
> - Show quoted text -

hi again...


how do i find out the unique device id of a device in a system? or do
i have to assign IDs to all devices manually (if yes, how?)? also as
regards instance pointers.... do i assign pointers or is it done by
EDK?

thanks in advance
vikram

Article: 132631
Subject: Re: Counter implementation with ise problem
From: Jonathan Bromley <jonathan.bromley@MYCOMPANY.com>
Date: Wed, 04 Jun 2008 09:16:17 +0100
Links: << >>  << T >>  << A >>
On Wed, 04 Jun 2008 07:46:34 +0200, backhus wrote:

>Hi Zoran,
>wasn't there something in your synthesis report telling you that 
>Q_internal (or Q) will be tied to a constant value?
>
>Have a look at your code where you wrote
>
>if RST <='1' then

Whoops, I missed that! Good catch!
-- 
Jonathan Bromley, Consultant

DOULOS - Developing Design Know-how
VHDL * Verilog * SystemC * e * Perl * Tcl/Tk * Project Services

Doulos Ltd., 22 Market Place, Ringwood, BH24 1AW, UK
jonathan.bromley@MYCOMPANY.com
http://www.MYCOMPANY.com

The contents of this message may contain personal views which 
are not the views of Doulos Ltd., unless specifically stated.

Article: 132632
Subject: Re: puzzling [and deceiving ?] Actel kit
From: "HT-Lab" <hans64@ht-lab.com>
Date: Wed, 4 Jun 2008 09:24:17 +0100
Links: << >>  << T >>  << A >>

"whygee" <whygee@yg.yg> wrote in message 
news:4845edb4$0$21147$7a628cd7@news.club-internet.fr...
> Hello,
> I'm sorry for this post but I don't want to rant for nothing,
> being the optimistic guy that some people know...
>
> I have finally got the ProAsic3 kit that I ordered in december.
> When powered up, it displays some stuff on a 1x8 LCD
> and blinks LEDs. Wow, I can do the same with a dumb PIC.
>
> Now, I see that the kit has a 250K IC, and not a 1500K one.
> I just looked at the invoice and it was never clear
> what version was ordered (just "A3P-EVAL-KIT").
> I feel really dumb, part one.

Yes, the Actel webpage clearly states the A3P-EVAL-KIT comes with a soldered 
A3P250 which is not particular big. However, the good news is that they use 
the PQ208 package so you might be able to change it for a A3P1000.

>
> The huge box contains boxes, air, foam...
> they could have spared 2x the volume, hence shipping,
> as well as a CDROM : i get Libero 8.1 and 8.2.
> Thanks...... Anyway I'm sure that the 8.2 will be
> forced into me by Actel, while 8.1 will work
> on the Win2K that I reserve for EDA.
> Pleaaaaaaaaase don't make me install XP !

I had the same problem last year with ISE, so I am afraid that you have to 
go to XP which is becoming more expensive and difficult to get. 
Unfortunately Linux is still not a low-cost option.

>
> Now, what if I built a prototype board
> on top of the .1mil headers ?
> Well, Actel decided that a specific board must
> be done "the hard way", not using cheap and
> easily soldered 0.1mil pitch predrilled boards.
> They have shifted the headers 0.05 or 0.025mil
> so a predrilled board can't fit. Or was it a
> beginner's mistake ? (I know, I did it once).
> And don't tell me it's a measure of precaution
> because there are better ways to prevent a board
> from being inserted the wrong way.
> I feel stupid, part two.
>
> I can stand the delay, or hack connectors.
> But now how do I register the software ?
> http://register.actel.com/ asks me for
> "a unique software ID number [that] is located on the CD jacket".
> I find it nowhere. I have looked everywhere in vain.
> I feel really annoyed, part three.

Mine was on the CD carrier, I suspect you have one without a label. Speak to 
your local FAE/Distributor

>
> I think that my patience has reached the limits.
> And nobody will buy this kit back, as it has already cost
> me almost 400 Euros.

That is indeed quite expensive, although comparing boards/fpga's is always 
difficult an equivalent S100 Spartan board can be had for as little as 45 
Euros (Enterpoint Drigmorn1).

> I thought that paying "the price"
> would provide me with something serious. Now all I got
> is a late, useless board with only 6,144 FlipFlop.

It is not that small, a 6805 + UART + simple timer (System05) only takes 40% 
(50% of an 3S100),

http://members.optushome.com.au/jekent/FPGA.htm

Alternatively, you can turn it into a very simple ping-pong game :-)

http://www.ht-lab.com/freecores/pingpong/pingpong.html

>
> I'm sure that there are countless better Xilinx/Actel
> boards, either by the makers or 3rd parties, cheaper
> and immediately available. I made a choice and I stand
> by it, but it's going to end soon if it does not get better.
> It's not a disapointment anymore, it's deception.
>
> Can anyone help me ?

I would suggest you speak to your Actel FAE and see if he can change it for 
a Cortex-M1 board. It is a much better board and I got mine within 2 weeks 
so I assume they have some in stock (at least in the UK).

Of course there is always eBay....

Hans
www.ht-lab.com



> YG 



Article: 132633
Subject: Re: xilinx and jtag
From: Dave Pollum <vze24h5m@verizon.net>
Date: Wed, 4 Jun 2008 03:35:56 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Jun 3, 11:58 am, Ed McGettigan <ed.mcgetti...@xilinx.com> wrote:
> discussi...@fpga.usenet wrote:
>
>   > I had to remove the idc plug to make direct connection to> vdd/vss/tdo/tdi/tck/tms but still webpack impact will not
> > recognise the cable. It seems to me some jtag programmers
> > are not compatible with xilinx.
>
> The Xilinx tools (iMPACT, ChipScope) only work with cables that they
> have been designed for, they will not work with any random JTAG cable.
>
> Ed McGettigan
> --
> Xilinx Inc.

Digilent (www.digilentinc.com) makes the Xilinx FPGA starter boards,
and they have low-cost JTAG programming cables that work with Xilinx's
iMPACT.
HTH
-Dave Pollum


Article: 132634
Subject: Re: VHDL to Verilog Converter
From: taco <blop@joepie.org>
Date: Wed, 04 Jun 2008 13:21:45 +0200
Links: << >>  << T >>  << A >>
Ambreen Ashfaq Afridi wrote:

> Hi im looking for a vhdl to verilog converter. Im working with Trimode
> Ethernet MAC core which is written in VHDL. I have to modify this code
> but the problem is that I dont have any knowledge of VHDL. I do
> programming in Verilog.Plz send me any link for the converter.
> Thank you
> Regards,
> Ambreen Ashfaq
http://doolittle.icarus.com/~larry/vhd2vl/
open source. It's doing a rough conversion but very usable for a first pass.
taco

Article: 132635
Subject: Using ethernet on a Xilnx board (Help appreciated)
From: AchatesAVC <AchatesAVC@gmail.com>
Date: Wed, 4 Jun 2008 07:54:42 -0700 (PDT)
Links: << >>  << T >>  << A >>
First of all let me apologize for any thing of things I"m ignorant
about here. Up until very recenty my programming experience was
limited to higher level programming language: Python, PHP, Perl, hell
at this point I'd consider C high level.

Anyway.

I'm trying to use a Xilinx XUPV2P board to send data over ethernet.
The board uses the intel LXT972alc to control the PHY and provide a
MII interface.

What I attempted to do was to build a valid packet, assert enable on
the pin labeled TX_ENABLE and feed that packet nibble by nibble to the
intel chip.

The packet itself is UDP datagram using IP. I put in the preamble,
ethernet header, IP header, UDP header, data and checksum. I used the
Ethernet broadcast address.

To try to test his out I thought I would plug my computer and the
board into a router. I have a C program that I wrote which picks up
and prints UDP packets sent to the appropriate port. I put the IP
address of my computer as when plugged into the router and tried to
send the packets there. However, no data seems to be getting through.
Furthermore, the absence of link up lights on both the router and the
board seem to indicate that the bord is not able to link to the
router.

For reference I programmed this in Verilog (which I learned about 2
weeks ago).

If anyone could provide me with advice I would much appreciate.

Thanks,
---AchatesAVC

Article: 132636
Subject: Re: Counter implementation with ise problem
From: KJ <kkjennings@sbcglobal.net>
Date: Wed, 4 Jun 2008 08:45:34 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Jun 4, 2:55=A0am, Zorjak <Zor...@gmail.com> wrote:
> On Jun 4, 7:46 am, backhus <n...@nirgends.xyz> wrote:
>
>
>
>
>
> > Hi Zoran,
> > wasn't there something in your synthesis report telling you that
> > Q_internal (or Q) will be tied to a constant value?
>
> > Have a look at your code where you wrote
>
> > if RST <=3D'1' then
>
> > well, RST less or equal '1' means always true, since '0' is less than
> > one. (not caring about 'X','U' etc, since we are talking synthesis here
> > )
> > And in that case Q_internal remains 0x00, and doesn't even change when
> > CLR is asserted or anything else.
>
> > You wrote proper syntax, but the semantic is just wrong for a counter.
> > Take a look at the technology view too. Or even at the list of used
> > ressources in the synthesis report.
>
> > > =A0 =A0 =A0 =A0 =A0 =A0if CLR =3D '1' then
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0Q_internal <=3D=
 (others =3D> '0');
> > > =A0 =A0 =A0 =A0 =A0 =A0elsif C'event and C=3D'1' then
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0if RST <=3D'1' then
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0Q_internal <=3D=
 (others =3D> '0');
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0elsif CE =3D '1' then
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0Q_internal <=3D=
 Q_internal+'1';
> > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0end if;
>
> > Have a nice synthesis
>
> But you must admit that warring that I
> was getting from ISE were totally unasociative. That confused me
> totally. :):)
>

A synthesis tool's job is to turn code into an implementation, it
makes no assumptions about whether what you've written functions as
you intended.  A simulator's job is to model the functionality of the
code and help you to find design errors in your code, the simulator
couldn't care less about whether what you've written can be
synthesized.

When you use the wrong tool, don't complain about the results.  Using
both somewhat together can be useful, the preliminary synthesis
results pointing to possible logical design errors.

KJ

Article: 132637
Subject: Re: Using ethernet on a Xilnx board (Help appreciated)
From: "MikeWhy" <boat042-nospam@yahoo.com>
Date: Wed, 4 Jun 2008 12:13:52 -0500
Links: << >>  << T >>  << A >>
"AchatesAVC" <AchatesAVC@gmail.com> wrote in message 
news:93a5add5-3221-49e4-83d1-b27cee18a6d2@59g2000hsb.googlegroups.com...
> Furthermore, the absence of link up lights on both the router and the
> board seem to indicate that the bord is not able to link to the
> router.

If it turns out that the Ethernet components are not working, I will 
consider buying the board from you (assuming nothing else is broken).

>
> For reference I programmed this in Verilog (which I learned about 2
> weeks ago).

The V2P has 2 onboard PPC405. Have you tried using an embedded core? Network 
stacks are not trivial components.


Article: 132638
Subject: Re: ANNOUNCE:-- TimingAnalyzer Free Version -- Draw timing diagrams
From: rickman <gnuarm@gmail.com>
Date: Wed, 4 Jun 2008 10:36:41 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Jun 2, 8:37 pm, timinganalyzer <timinganaly...@gmail.com> wrote:
> On Jun 2, 5:40 pm, Andy Peters <goo...@latke.net> wrote:
>
>
>
> > On Jun 2, 5:58 am,timinganalyzer<timinganaly...@gmail.com> wrote:
>
> > > Hello All,
>
> > > TheTimingAnalyzercan be used to quickly and easily draw timing
> > > diagrams.
> > > Signals, clocks, buses, delays, constraints, and states are easily
> > > added
> > > from the GUI.
>
> > > It can also be used to quickly do a timing analysis and check for
> > > timing faults. Minimum, typical, and worst case analysis can be
> > > performed.
> > > Delays and constraints are easily specified and changed to see if
> > > faster
> > > clocks or slower parts can be used without any timing faults.
>
> > > There are 3 editions planned.  The Free Edition(FE),  the Standard
> > > Edition(SE),
> > > and the Professional Edition(PE).
>
> > > You can download the Free Edition now and read all about the
> > >TimingAnalyzerat:
>
> > >www.timing-diagrams.com
>
> > > Comments and feedback are welcome at
>
> > > supp...@timing-diagrams.com
>
> > Hey, it's back!
>
> > It's good to see that this hasn't died. The commercial alternatives
> > are WAAAAAY too expensive.
>
> > -a
>
> Yes,  it's alive and doing well, and yes the competition is expensive.
> TheTimingAnalyzerwill not be.  I'm trying very hard to make it as
> easy as
> possible to use.
>
> Please feel free to request new features or suggest feature
> improvements.
>
> Regards,
> Dan

I installed the program and it ran once.  But when I try to run it a
second time, it will not start.  Any ideas?

Article: 132639
Subject: Re: ANNOUNCE:-- TimingAnalyzer Free Version -- Draw timing diagrams
From: rickman <gnuarm@gmail.com>
Date: Wed, 4 Jun 2008 11:07:38 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Jun 4, 1:36 pm, rickman <gnu...@gmail.com> wrote:
> On Jun 2, 8:37 pm, timinganalyzer <timinganaly...@gmail.com> wrote:
>
>
>
> > On Jun 2, 5:40 pm, Andy Peters <goo...@latke.net> wrote:
>
> > > On Jun 2, 5:58 am,timinganalyzer<timinganaly...@gmail.com> wrote:
>
> > > > Hello All,
>
> > > > TheTimingAnalyzercan be used to quickly and easily draw timing
> > > > diagrams.
> > > > Signals, clocks, buses, delays, constraints, and states are easily
> > > > added
> > > > from the GUI.
>
> > > > It can also be used to quickly do a timing analysis and check for
> > > > timing faults. Minimum, typical, and worst case analysis can be
> > > > performed.
> > > > Delays and constraints are easily specified and changed to see if
> > > > faster
> > > > clocks or slower parts can be used without any timing faults.
>
> > > > There are 3 editions planned.  The Free Edition(FE),  the Standard
> > > > Edition(SE),
> > > > and the Professional Edition(PE).
>
> > > > You can download the Free Edition now and read all about the
> > > >TimingAnalyzerat:
>
> > > >www.timing-diagrams.com
>
> > > > Comments and feedback are welcome at
>
> > > > supp...@timing-diagrams.com
>
> > > Hey, it's back!
>
> > > It's good to see that this hasn't died. The commercial alternatives
> > > are WAAAAAY too expensive.
>
> > > -a
>
> > Yes,  it's alive and doing well, and yes the competition is expensive.
> > TheTimingAnalyzerwill not be.  I'm trying very hard to make it as
> > easy as
> > possible to use.
>
> > Please feel free to request new features or suggest feature
> > improvements.
>
> > Regards,
> > Dan
>
> I installed the program and it ran once.  But when I try to run it a
> second time, it will not start.  Any ideas?

To get some info on why it won't run I ran it in a DOS box.

TimingAnalyzer Version 0.82 Free Edition(FE)
  OS Name        = Windows 2000
  OS Version     = 5.0
  OS Arch        = x86
  Java Version   = 1.6.0_03
  installDir     = C:\Program Files\TimingAnalyzer_b82
  Settings File  = C:\Program Files\TimingAnalyzer_b82\settings
\ta_defaults

Exception in thread "main" java.lang.NullPointerException
        at org.dmad.ta.TimingDiagram.findEdge(TimingDiagram.java:2238)
        at org.dmad.ta.TimFileIO.readDelay(TimFileIO.java:481)
        at org.dmad.ta.TimFileIO.processFileRequest(TimFileIO.java:
1245)
        at org.dmad.ta.TimFileIO.<init>(TimFileIO.java:103)
        at org.dmad.ta.TimingDiagram.openFile(TimingDiagram.java:3641)
        at
org.dmad.ta.TimingAnalyzer.openRecentFile(TimingAnalyzer.java:1682)
        at
org.dmad.ta.TimingAnalyzer.loadOpenFileList(TimingAnalyzer.java:1511)

        at org.dmad.ta.TimingAnalyzer.<init>(TimingAnalyzer.java:314)
        at org.dmad.ta.TimingAnalyzer.main(TimingAnalyzer.java:138)

Article: 132640
Subject: Xilinx Fifo Generator Direct Instantiation?
From: paragon.john@gmail.com
Date: Wed, 4 Jun 2008 11:14:54 -0700 (PDT)
Links: << >>  << T >>  << A >>
Does anybody know if it is possible to directly instantiate a Xilinx
Fifo Generator asynchronous fifo in VHDL?  I have a design that
requires the use of them, and I think it would be easier to not to
have to keep track of different coregen cores as opposed to just
having it written into the VHDL.  I've seen other xilinx cores that
allow this (dds compiler, for instance) but the fifo generator user
guide doesn't say anything about it.

Thanks.

Article: 132641
Subject: Re: Using ethernet on a Xilnx board (Help appreciated)
From: PFC <lists@peufeu.com>
Date: Wed, 04 Jun 2008 20:25:10 +0200
Links: << >>  << T >>  << A >>

> Furthermore, the absence of link up lights on both the router and the
> board seem to indicate that the bord is not able to link to the
> router.

	You should have said so first.

	I don't know about the PHY you use, but usually after reset, an Ethernet  
PHY needs to be talked to softly using the MII protocol, which you then  
use to setup autonegociation, bring the link up, after which the LED will  
light on your router and you will be able to query the PHY to discover the  
actual link capabilities (duplex, speed, etc) and send and receive data.  
The PHY will also raise interrupts, which you should process, when the  
link state changes : disconnection, reconnection, etc.

	From what you say it seems you forgot to do this. In this case the PHY  
will simply stay in power down mode and frustrate you.

	You will need to have a look at the Linux kernel sources for an example,  
use the 2.4, the code is simpler than in 2.6, pick a NIC driver and grok.

	Ah, and yeah, you'll need somse sort of CPU to go through that  
initialization routine.

Article: 132642
Subject: Re: Xilinx Fifo Generator Direct Instantiation?
From: ghelbig@gmail.com
Date: Wed, 4 Jun 2008 11:31:30 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Jun 4, 11:14 am, paragon.j...@gmail.com wrote:
> Does anybody know if it is possible to directly instantiate a Xilinx
> Fifo Generator asynchronous fifo in VHDL?  I have a design that
> requires the use of them, and I think it would be easier to not to
> have to keep track of different coregen cores as opposed to just
> having it written into the VHDL.  I've seen other xilinx cores that
> allow this (dds compiler, for instance) but the fifo generator user
> guide doesn't say anything about it.
>
> Thanks.

Yes, and it's pretty easy.

Look at what coregen creates.  You'll see a template with a bunch a
parameters added.

I have been successful instantiating the template and modifying the
parameters myself, without the use of coregen.

Good luck,
G.

Article: 132643
Subject: Re: Using ethernet on a Xilnx board (Help appreciated)
From: AchatesAVC <AchatesAVC@gmail.com>
Date: Wed, 4 Jun 2008 12:43:39 -0700 (PDT)
Links: << >>  << T >>  << A >>
Thanks much for the replies.

Would it just make more sense to get an IP core for this if I need the
whole thing to be reliable?

-AchatesAVC

Article: 132644
Subject: Re: ANNOUNCE:-- TimingAnalyzer Free Version -- Draw timing diagrams
From: rickman <gnuarm@gmail.com>
Date: Wed, 4 Jun 2008 12:44:03 -0700 (PDT)
Links: << >>  << T >>  << A >>
On Jun 2, 8:58 am, timinganalyzer <timinganaly...@gmail.com> wrote:
> Hello All,
>
> The TimingAnalyzer can be used to quickly and easily draw timing
> diagrams.
> Signals, clocks, buses, delays, constraints, and states are easily
> added
> from the GUI.
>
> It can also be used to quickly do a timing analysis and check for
> timing faults. Minimum, typical, and worst case analysis can be
> performed.
> Delays and constraints are easily specified and changed to see if
> faster
> clocks or slower parts can be used without any timing faults.
>
> There are 3 editions planned.  The Free Edition(FE),  the Standard
> Edition(SE),
> and the Professional Edition(PE).
>
> You can download the Free Edition now and read all about the
> TimingAnalyzer at:
>
> www.timing-diagrams.com
>
> Comments and feedback are welcome at
>
> supp...@timing-diagrams.com

I spent about 5 minutes working with this program before I gave up.
My reason is not the problem posted below, but because of the user
interface decisions made.  I don't know why every new program has to
reinvent something about the user interface.  There is a standard call
Common User Interface (CUI) that is even documented by Microsoft,
IIRC.

The one big difference that hit me up side my head was the way the
Cntl key is used counter-intuitively with mouse clicks for
selections.  If you click on one item it is selected.  If you click on
an second item, it is *added* to the selections.  To deselect
something you have to either press the Cntl key while clicking on it
or you have to use the ESC key.  I have *never* seen a program use
this sort of selection mechanism.  I have seen variations on how you
select multiple, but every other program I have ever worked with, the
default action of clicking a new thing while an old thing was selected
was to deselect the first thing and to select the new thing.

It was more than once that I tried to move some things and ended up
with a mess because extra moves kept happening.  Combine this with the
lack of a working undo feature and I ended up rather frustrated and
gave up.  I was looking for something that would save me time over a
program like Visio.

I suggest that the author get some references on CUI or better yet,
use some other programs with graphical interfaces and go with the
flow.  It is so much more productive than trying to retrain the
world... if you don't believe me, just look down at your keyboard.  Do
you think the keyboard layout we all use was a good idea?  It's just
easier to continue to use it than it is to retrain everyone that is
using it now.

Rick

Article: 132645
Subject: Xilinx vs Altera
From: PFC <lists@peufeu.com>
Date: Wed, 04 Jun 2008 22:11:05 +0200
Links: << >>  << T >>  << A >>

	Sorry about the title, everyone put down the flamethrowers, lol.

	I have a few questions about Xilinx and Altera (actually Spartan-3E  
versus Cyclone III) which relate to a particular project, so here are the  
specifics.
	Currently the prototype system is on a Spartan-3E 500 to validate the  
design, and it works. This was for development, though, as for the final  
version a larger FPGA is needed ; the 500E is starting to feel a bit tight.

This FPGA system has :

	- Microblaze with caches (small caches)
	- 16 bit SDRAM with mch_opb_sdram controller (without OPB actually)
	- CPU connected to RAM through the MCH/XCL
	- Ethernet LAN9117 MAC+PHY, with DMA to SDRAM via MCH/XCL
	- IO peripheral, with DMA to SDRAM via MCH/XCL
	- And lots of IOs (well not so many on PQ208 but final version will have  
a larger FPGA).

Here is what it does :

	- Receives data from PC over ethernet in UDP packets
	- Buffer in SDRAM
	- Output data in user's format of choice on the pins
	- Read data from pins
	- Buffer
	- Send back to PC in UDP packets

	A simple protocol (not finished) will handle UDP retransmissions etc  
a-la-TCP but with very low latency.

	Primary purpose is to transfer multichannel audio (up to about 8-9  
megabytes/s) but also digital scope (sample, buffer, send to PC) and other  
data acquisition applications.
	It will also need to do some DSP work on the audio (resampling,  
dithering, and some complicated filtering, etc) and possibly DSP on the  
acquired signals in a DAQ scenario.

	Now. Three problems.

	Everything is good with Xilinx except the DSP part, I guess the logic  
would fit in a Spartan-E3 1200 with lots of room to spare except I might  
be short on multipliers. Now that would be a problem to realize that once  
the final board is made !

	So I thought about Spartan-3A DSP but it has a packaging problem : 0.8mm  
BGA ! No way. 1mm is fine but not 0.8mm.

	Second problem, this SDRAM is really crummy and so is mch_opb_sdram.  
Granted, I get 90 MB/s from a 16 bit SDRAM running at 50 MHz which is  
good. But it runs at 50 MHz !!! I should have put some DDR.
	So the second requirement is an easy interface to a 16 bit DDR chip with  
a FREE core that supports some good fast DMA like the mch_opb does. I  
really like this way of accessing memory, the CPU doesn't even have to  
touch it, my data IO core self-serves from memory, I like that. Ethernet  
is slow (20 MB/s) but as I said I want to use it also for some data  
acquisition which means writing lots of data very fast to the SDRAM, since  
the sample rate of the converters will depend on the memory bandwidth !

	Third problem, most of my IO is 3.3V but I would like to use LVDS for  
some signals. There are only 4 IO banks...

	Cyclone III (like EP3C40) on the other hand is cheap, has looots of DSP  
power, the FPGA itself is faster than the Spartan 3, and it has 8 banks  
which means I can dedicate 1/8 of the pins to LVDS and still have enough  
for my 3.3V IO.
	In other words it looks nice but I don't know anything about Altera.
	I loaded up the free tools and played with them a bit without much  
success...

	NIOS vs Microblaze ? I don't care, CPU utilization is far from 100%  
anyway, so as long as it runs and has JTAG debug I'm happy.
	I would like to avoid having to purchase cores, also. EDK which I got on  
CD with a dev kit comes with a nice assortment of memory controllers...  
I'm having problems decrypting the Altera licensing stuff, like what is  
free, and what is not...

	Also this board will be used as part of an open source project. We'll  
make a board fab run and sell them so people can hack them.
	I would really prefer if those guys could use free (as in beer) software  
and EDK is a problem there. But, so is the small collection of free Altera  
cores...

	So, from my project description above, what could I do ?...
















Article: 132646
Subject: Re: Xilinx Fifo Generator Direct Instantiation?
From: PFC <lists@peufeu.com>
Date: Wed, 04 Jun 2008 22:16:28 +0200
Links: << >>  << T >>  << A >>
On Wed, 04 Jun 2008 20:31:30 +0200, <ghelbig@gmail.com> wrote:

> On Jun 4, 11:14 am, paragon.j...@gmail.com wrote:
>> Does anybody know if it is possible to directly instantiate a Xilinx
>> Fifo Generator asynchronous fifo in VHDL?  I have a design that
>> requires the use of them, and I think it would be easier to not to
>> have to keep track of different coregen cores as opposed to just
>> having it written into the VHDL.  I've seen other xilinx cores that
>> allow this (dds compiler, for instance) but the fifo generator user
>> guide doesn't say anything about it.
>>
>> Thanks.
>
> Yes, and it's pretty easy.
>
> Look at what coregen creates.  You'll see a template with a bunch a
> parameters added.
>
> I have been successful instantiating the template and modifying the
> parameters myself, without the use of coregen.
>
> Good luck,
> G.

	Thanks, I was in need of this information, too.


Article: 132647
Subject: Re: Using ethernet on a Xilnx board (Help appreciated)
From: PFC <lists@peufeu.com>
Date: Wed, 04 Jun 2008 22:23:49 +0200
Links: << >>  << T >>  << A >>
On Wed, 04 Jun 2008 21:43:39 +0200, AchatesAVC <AchatesAVC@gmail.com>  
wrote:

> Thanks much for the replies.
>
> Would it just make more sense to get an IP core for this if I need the
> whole thing to be reliable?
>
> -AchatesAVC

	Hm, well, if you want to do some more involved ethernet transfer  
(anything besides really basic stuff) yes you'll want an Ethernet MAC and  
some software to configure it and control it.
	If you just want to send raw data you can get away with configuring the  
PHY using the CPU and then sending pre-canned frames just like you've been  
doing.

	Xilinx has one in EDK, also one is on OpenCores.

	In my design I used a LAN9117 MAC+PHY chip from SMSC. I warmly recommend  
this chip to anyone, it is easy to use and will handle 100 Mbps full  
duplex without dropping packets. However you MUST NOT put it on a shared  
bus with, for instance, the RAM, because its bus is slow, and at full  
bandwidth it is busy a large percentage of the time. This is absolutely  
not a problem, unless it kills your memory bandwidth by the simple fact of  
sitting on the same bus !

	Also the CPU interface is very simple, it's really a no-nonsense chip  
(unlike the LAN91c111 which is a PITA).

	Of course it eats more IO than a PHY, but it eats less slices than a MAC  
in the FPGA...
	(and it works)

Article: 132648
Subject: Compare and update in same clock cycle synthesis problem
From: Stef <stef33d@yahooI-N-V-A-L-I-D.com.invalid>
Date: Wed, 04 Jun 2008 23:16:16 +0200
Links: << >>  << T >>  << A >>
Something simular to the following code fragments works in pre-synthesis
simulation, but not in real hardware and post P&R timing simulation.

   entity controller is 
    port (
      ...
      datain   in  : std_logic_vector(7 downto 0);
      clock    in  : std_logic;
      ...
      lastval  out : std_logic_vector(7 downto 0);
    );
   end entity controller;

   architecture rtl of controller is
   begin
     process(clock)
       ...
       variable lastval_v : std_logic_vector(7 downto 0);
     begin
       if rising_edge(clock) then
         case control_state_v is

           ...

           when STATE_CHECK =>
             if datain /= lastval_v then
               lastval_v := datain;
               control_state_v := STATE_CHANGED
             else
               control_state_v := STATE_OTHER;
             end if;

           when STATE_CHANGED =>
             ...

           when STATE_OTHER =>
             ...

         end case;
       end if; 

       lastval <= lastval_v;

     end process;
   end architecture;
 
This works in pre-synthesis simulation (modelsim) and "STATE_CHANGED" is
only reached when datain is actually different from lastval_v. After
synthesis however, STATE_CHANGED is always reached except when datain is
equal to X"00". If I check the synthesis report, I find something about
lastval_v_mux0000 has a constant value during circuit operation. There
is also no 8-bit comparator found for the check state. Both I find 
amazing as the pre-synth simulation works and I know the data on datain
is changing.

To localize the problem, I have split the state in a separate check and
update state like this:

           when STATE_CHECK =>
             if datain /= lastval_v then
               control_state_v := STATE_UPDATE
             else
               control_state_v := STATE_OTHER;
             end if;

           when STATE_UPDATE =>
             lastval_v := datain;
             control_state_v := STATE_CHANGED;

This works in both pre- and post-synthesis simulation and also in real
hardware. There is now an 8-bit comparator found for the compare line
and no more warning about constant values.

So my question is: Is there a problem with comparing and updating a
value in the same state (clock)?

And does the problem als exist for single bit values when used like
this:

   if my_bit_v = '1' then
     my_bit_v := '0';
     -- do stuff
   end if;


All inputs to the entity come from other parts in the fpga and are all
updated on the same clock. The synthesis report claims the design can
run at 58 MHz, actual clock is 50 MHz, no other constraints defined.

The hardware is Xilinx spartan-3e and synthesis is done with ISE9.2.

-- 
Stef    (remove caps, dashes and .invalid from e-mail address to reply by mail)

Article: 132649
Subject: Re: Using ethernet on a Xilnx board (Help appreciated)
From: PFC <lists@peufeu.com>
Date: Wed, 04 Jun 2008 23:18:19 +0200
Links: << >>  << T >>  << A >>

>>     Ah, and yeah, you'll need somse sort of CPU to go through that   
>> initialization routine.
>
> Depending on the definition of CPU.  It could presumably be done
> by a state machine which may or may not follow one's definition
> of CPU.
>
> -- glen
>

	Actually I use Microblaze, but I was thinking if he doesn't need a CPU he  
could use PicoBlaze, then I remembered he uses a chip with a PPC core...




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