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 37375

Article: 37375
Subject: Re: Which vendor to choose
From: AsherM@AsherM.com (Asher C. Martin)
Date: 8 Dec 2001 17:33:48 -0800
Links: << >>  << T >>  << A >>
Russell Shaw <rjshaw@iprimus.com.au> wrote in message news:<3C042F4B.917F85F8@iprimus.com.au>...
> What is a CLB? configurable logic block? Is that the basic logic
> cell with ram/flip-flop kind of thing?
 
Hi Russell,

A CLB is the most basic unit for Xilinx's parts... Altera has
something called an LCELL which is just like a CLB.

For Altera's LCELL you basically have 4 inputs that you can "program"
with various logic functions.  Both the CLB and LCELL work sort of
like a RAM lookup table but they have a few other d-flip-flops and
carry in/out logic.

Take care,
>Asher<

Article: 37376
Subject: Re: ALTERA's Mercury CDR
From: AsherM@AsherM.com (Asher C. Martin)
Date: 8 Dec 2001 18:04:14 -0800
Links: << >>  << T >>  << A >>
Peter Alfke <palfke@earthlink.net> wrote in message news:<3C015E9A.B98CA518@earthlink.net>...
> 3. And finally, Altera makes bogus claims about LVDS power consumption, where
> they quote not the consumed power (Vcc x Icc ) in the driver, but rather the
> power dissipated in the 100 Ohm termination resistor. Nobody cares about this
> nice low number, which makes it a candidate for the "Misleading Marketing"
> award of the year.

Hi Peter,

Isn't power consumption for a dynamic circuit is
Power=(Capacitance)(Voltage^2)(Freq) not Vcc x Icc.  LVDS circuits are
typically running at 70+ Mhz...?

>Asher<

Article: 37377
(removed)


Article: 37378
Subject: Re: [Spartan-II] Global Timing Constraints valid for Block RAM's ?
From: Peter Alfke <palfke@earthlink.net>
Date: Sun, 09 Dec 2001 02:48:41 GMT
Links: << >>  << T >>  << A >>
I think we can handle this in English, but Markus, you can also send me e-mail in German...
The only problem occurs when both ports access the same address location. Since you seem to write one
port and read the other ( alternating between the two, I suppose), you can never "damage" any data. But
you might occasionally read one location while it is being updated by a write on the other port. ( As I
posted previously, this problem only occurs when the two accesses occur within the same nanosecond.)
Your read may then be a mixture of the "old" and the "new" content.

How you solve this problem depends on your overall system.
One brute-force way would be two double the RAM size and alternate between the two halves. That costs you
RAM and latency, so I call it brute force....

Gruss ins Schweizerland...
Peter Alfke, Xilinx Applications
=============================
Markus Meng wrote:

> "Falk Brunner" <Falk.Brunner@gmx.de> wrote in message news:<9ut9lj$aq0uv$1@ID-84877.news.dfncis.de>...
> > "Markus Meng" <meng.engineering@bluewin.ch> schrieb im Newsbeitrag
> > news:3c121b73_3@news.bluewin.ch...
> >
> > > Hi all,
> > >
> > > We are using the Block RAM's inside the Spartan-II device
> > > in order to get a synchronous true dual-ported RAM buffer.
> > >
> > > The block RAM buffer clocks are being sourced from two different
> > > clock domains.
> > >
> > > When using the design in real word we get sometimes 'data-flicker' on the
> > > data we push from one clock domain to the other, not always,
> > > only sometimes. As a second test we put in values on one side PortA
> > > using a staircase generator - well a counter -. On PortB of the block RAM
> > > we read out the the 'staircase'. However sometimes we see something like
> > > an interference, a modulation on top of our digital generated staircase,
> > > maybe
> > > once per thousand scans. The dual ported synchronous RAM we generated
> > > with the CoreLoigc tool from Xilinx using version 3.1i. Those are really
> > > true
> > > dual-ported, right ?? The clocks are really asynchronous to eatch other
> > ...
> >
> > They are.
> >
> > > The question: How to you have to apply timing constraints for the block
> > > ram, or is it not needed? Actually we did constraint the two clocks. Is
> >  that
> > > enough, or is there a need for an additional block ram constraint ??
> >
> > ;-)) The constraints only make sure that data within ONE clock domain makes
> > it way from FlipFlop to FlipFlop or RAM within on clock cycle. It does NOT
> > do anything about synchronization. This is YOUR part. It is the classic data
> > crossing clock domain problem, and so it can (and must) be solved. You need
> > to synchronize both port access somehow, you have to make sure that the FF
> > on the synchonizer going metastable dont kick your system. Go to the Xilinx
> > website and have a look at the TechXclusives, there is one article
> > discussing exactly your problem. There are also some appnotes about
> > asynchronous FIFOs, read them carefully. Twice. Or as long as you really got
> > the point of asynchronous clocks.
> >
> > > Any idea how to furhter find the reason for the problem?
> >
> > See avove.
>
> Hi Falk,
>
> maybe my english is not clear enough. The address generator and
> the data FF for PortA are clocked with the clk for PortA. The
> same applies for the address generator and the data FF on PortB
> of the DualPorted RAM block. Those parts are clocked with the clock
> for PortB of the dual ported memory.
>
> The access can interleave, however the DPM is somehow 'splitted'
> in two pages. When a read burst appears on page 0, a write burst
> can only appear on page 1. Therefore what kind of additional syn-
> chronization is needed in your opinion. I don't get this point
>
> best regards
> markus


Article: 37379
Subject: Re: Xilinx multiplier and block ram error
From: Peter Alfke <palfke@earthlink.net>
Date: Sun, 09 Dec 2001 02:52:45 GMT
Links: << >>  << T >>  << A >>
Good news:
You can use the BlockRAM and the multiplier independent of each other, with one
exception: If you use the BlockRAM in its widest configuation, 36 bits wide,
then you have lost access to the multiplier. In all other cases the two
functions do NOT overlap.

Peter Alfke, Xilinx Applications
=================
Sul Weh wrote:

> If you use a multiplier does that mean you can't use the block ram that is
> associated with it and vice versa.
> For example, the virtex II 250 has 24 multipliers and 24 block ram.  If I
> use all of the multipliers does that mean I cannot use any of the block ram.
>
> thanks
>
> SW


Article: 37380
Subject: Re: ALTERA's Mercury CDR
From: Peter Alfke <palfke@earthlink.net>
Date: Sun, 09 Dec 2001 03:21:37 GMT
Links: << >>  << T >>  << A >>
There are two ways to calculate power, I x V  or C x Vsquared x f
The question is which calculation is appropriate.

If the circuit switches rail-to-rail you can figure it either way, and you get identical
results.
If the switching is not rail-to-rail, you have to think a little:
The charge ( each coulomb of it ) that is put on the capacitor comes from the supply, so one of
the two voltages in the Vsquared is Vcc. The other V is the switching amplitude.
When a device manufacturer quotes power consumption, it has to be the total power "consumed",
i.e. the power taken from the Vcc supply, whether it is dissipated in a load resistor or in the
drive transistors. ( Power can only end up in a resistive element, ideal capacitors do not
dissipate any power. )

Anything else is what I called "bogus", just to avoid the more appropriate words " blatant
marketing lie". ( Their choice of words indicated that they knew exactly what kind of wool they
were trying to pull over our eyes. I am much more friendly when somebody makes an honest
mistake, everybody does occasionally...)

I mean, we all got an engineering degree somewhere, sometime, maybe long ago, but this stuff has
not changed in more than 100 years...

Peter Alfke, Xilinx Applications
=============================



"Asher C. Martin" wrote:

> Peter Alfke <palfke@earthlink.net> wrote in message news:<3C015E9A.B98CA518@earthlink.net>...
> > 3. And finally, Altera makes bogus claims about LVDS power consumption, where
> > they quote not the consumed power (Vcc x Icc ) in the driver, but rather the
> > power dissipated in the 100 Ohm termination resistor. Nobody cares about this
> > nice low number, which makes it a candidate for the "Misleading Marketing"
> > award of the year.
>
> Hi Peter,
>
> Isn't power consumption for a dynamic circuit is
> Power=(Capacitance)(Voltage^2)(Freq) not Vcc x Icc.  LVDS circuits are
> typically running at 70+ Mhz...?
>
> >Asher<


Article: 37381
Subject: Re: aldec
From: Peter Alfke <palfke@earthlink.net>
Date: Sun, 09 Dec 2001 03:24:02 GMT
Links: << >>  << T >>  << A >>
Please be specific: Do you mean Moore vs Mealey?
A combinatorial state machine is a contradiction in terms.

Peter Alfke
=============================
Warren Wisnewski wrote:

> Is there any way to get Aldec FSM editor to produce a sequential state
> machine (vs combinatorial) ?
> thanks


Article: 37382
Subject: Re: I need a Xilinx Spartan PCI Development Board
From: Ray Andraka <ray@andraka.com>
Date: Sun, 09 Dec 2001 04:16:21 GMT
Links: << >>  << T >>  << A >>
I hadn't tried since 3.1 sp2 or 3.  Can you elaborate on the flow to put it
in there?  I don't believe it is in the library, so I assume you are passing
it into the edif as a black box.  Do you need to include an edif netlist for
it too?

Duane Clark wrote:

> Ray Andraka wrote:
> >
> > Yes, in a -6 I believe you will need the TRDY box to make the timing
> > for PCI66, and even then it *just* makes it.  Unfortunately, that TRDY
> > box is onlly accessible in the FPGA editor and it is pretty much
> > undocumented, at least publicly.
> >
>
> Create a small test design with the block in it. Run ngd2vhdl. The
> result is a small file with a VHDL model of the PCILOGIC. And as I
> mentioned "above", I am able to use the PCILOGIC block with the Xilinx
> 3.3i (and earlier) tools such as ngdbuild, map, and par.
>
> --
> Duane

--
--Ray Andraka, P.E.
President, the Andraka Consulting Group, Inc.
401/884-7930     Fax 401/884-7950
email ray@andraka.com
http://www.andraka.com

 "They that give up essential liberty to obtain a little
  temporary safety deserve neither liberty nor safety."
                                          -Benjamin Franklin, 1759



Article: 37383
Subject: Re: I need a Xilinx Spartan PCI Development Board
From: Eric Smith <eric-no-spam-for-me@brouhaha.com>
Date: 08 Dec 2001 22:14:46 -0800
Links: << >>  << T >>  << A >>
Duane Clark <dclark@akamail.com> writes:
> And by the way, the 3.3i tools handle the PCILOGIC aka "magic TRDY" just
> fine for me, despite Xilinx claims that they do not support it. That
> includes ngdbuild, map and par, and includes support for timing
> constraints on paths that pass through the PCILOGIC. I did not find that
> the use of fpga_editor was required.

What did you put in your VHDL or Verilog source code to make it
use the magic TRDY logic?

Article: 37384
Subject: Re: [Spartan-II] Global Timing Constraints valid for Block RAM's ?
From: meng.engineering@bluewin.ch (Markus Meng)
Date: 9 Dec 2001 00:16:55 -0800
Links: << >>  << T >>  << A >>
Hallo Peter und Falk,

your right the missing question is how do I make shure that I don't get
this overlapp reading and writing from the same address at the same time.

It's done in logic using kind of a master/slave data processing flow.
First on PortA all data are written, then an interrupt is being generated
and the page bit is toggeled - previous '0' now '1'.
On the other side - PortB - a DSP from Analog Device
does DMA read bursts and reads out all the required data. In the meantime
writing continues but on page '1'. It should work and most of of the time
is does. Therefore it mayed get a situation where this overlap happens, but
it should not. I will keep you informed. I have to think about how I can
measure or catch this problem ...

markus



Peter Alfke <palfke@earthlink.net> wrote in message news:<3C12D0F8.BFB1CAE@earthlink.net>...
> I think we can handle this in English, but Markus, you can also send me e-mail in German...
> The only problem occurs when both ports access the same address location. Since you seem to write one
> port and read the other ( alternating between the two, I suppose), you can never "damage" any data. But
> you might occasionally read one location while it is being updated by a write on the other port. ( As I
> posted previously, this problem only occurs when the two accesses occur within the same nanosecond.)
> Your read may then be a mixture of the "old" and the "new" content.
> 
> How you solve this problem depends on your overall system.
> One brute-force way would be two double the RAM size and alternate between the two halves. That costs you
> RAM and latency, so I call it brute force....
> 
> Gruss ins Schweizerland...
> Peter Alfke, Xilinx Applications
> =============================
> Markus Meng wrote:
> 
> > "Falk Brunner" <Falk.Brunner@gmx.de> wrote in message news:<9ut9lj$aq0uv$1@ID-84877.news.dfncis.de>...
> > > "Markus Meng" <meng.engineering@bluewin.ch> schrieb im Newsbeitrag
> > > news:3c121b73_3@news.bluewin.ch...
> > >
> > > > Hi all,
> > > >
> > > > We are using the Block RAM's inside the Spartan-II device
> > > > in order to get a synchronous true dual-ported RAM buffer.
> > > >
> > > > The block RAM buffer clocks are being sourced from two different
> > > > clock domains.
> > > >
> > > > When using the design in real word we get sometimes 'data-flicker' on the
> > > > data we push from one clock domain to the other, not always,
> > > > only sometimes. As a second test we put in values on one side PortA
> > > > using a staircase generator - well a counter -. On PortB of the block RAM
> > > > we read out the the 'staircase'. However sometimes we see something like
> > > > an interference, a modulation on top of our digital generated staircase,
> > > > maybe
> > > > once per thousand scans. The dual ported synchronous RAM we generated
> > > > with the CoreLoigc tool from Xilinx using version 3.1i. Those are really
> > > > true
> > > > dual-ported, right ?? The clocks are really asynchronous to eatch other
> > > ...
> > >
> > > They are.
> > >
> > > > The question: How to you have to apply timing constraints for the block
> > > > ram, or is it not needed? Actually we did constraint the two clocks. Is
>  that
> > > > enough, or is there a need for an additional block ram constraint ??
> > >
> > > ;-)) The constraints only make sure that data within ONE clock domain makes
> > > it way from FlipFlop to FlipFlop or RAM within on clock cycle. It does NOT
> > > do anything about synchronization. This is YOUR part. It is the classic data
> > > crossing clock domain problem, and so it can (and must) be solved. You need
> > > to synchronize both port access somehow, you have to make sure that the FF
> > > on the synchonizer going metastable dont kick your system. Go to the Xilinx
> > > website and have a look at the TechXclusives, there is one article
> > > discussing exactly your problem. There are also some appnotes about
> > > asynchronous FIFOs, read them carefully. Twice. Or as long as you really got
> > > the point of asynchronous clocks.
> > >
> > > > Any idea how to furhter find the reason for the problem?
> > >
> > > See avove.
> >
> > Hi Falk,
> >
> > maybe my english is not clear enough. The address generator and
> > the data FF for PortA are clocked with the clk for PortA. The
> > same applies for the address generator and the data FF on PortB
> > of the DualPorted RAM block. Those parts are clocked with the clock
> > for PortB of the dual ported memory.
> >
> > The access can interleave, however the DPM is somehow 'splitted'
> > in two pages. When a read burst appears on page 0, a write burst
> > can only appear on page 1. Therefore what kind of additional syn-
> > chronization is needed in your opinion. I don't get this point
> >
> > best regards
> > markus

Article: 37385
Subject: Re: I need a Xilinx Spartan PCI Development Board
From: kevinbraceusenet@hotmail.com (Kevin Brace)
Date: 9 Dec 2001 01:11:13 -0800
Links: << >>  << T >>  << A >>
I realize that it is not a big deal at all, but I got my PCI IP core
to meet 33MHz PCI timings if I synthesized it and floorplanned it for
Spartan-II speed grade -6 (XC2S150-6CPQ208).
I didn't use the special TRDY logic you were talking about because I
wanted my PCI IP to be vendor independent, and ISE WebPack doesn't
come with FPGA Editor (I wish ISE WebPack came with FPGA Editor. It
still comes with Floorplanner though).
In fact, the part I had the most problems was keeping the Tsu of paths
starting from either FRAME# (pin 23) or IRDY# (pin 24) propagating
through 4 levels of LUTs, ultimately reaching AD[0] (pin 67) or AD[31]
(pin 203) below 7 ns.
I must say that Floorplanner is very effective in reducing routing
delay, and also shows that how bad Map and PAR are in grouping and
placing LUTs.
Now the problem is to meet 33MHz PCI timings for Spartan-II speed
grade -5 (XC2S150-5CPQ208) because Insight Electronics Spartan-II
Development Kit has Spartan-II speed grade -5 on the PCI card . . .
For speed grade -5, I reduced Tsu down to 8.302 ns with the help of
Floorplanner, but haven't been successful reducing it further.
Currently, the worst path I got starts from IRDY# (pin 24), and goes
through 4 levels of LUTs, and reaches AD[2]'s (pin 62) IOB output FF.
The logic delay is 5.372 ns and route delay is 5.371 ns.
Clock skew of 2.441ns brings the total Tsu down to 8.302ns.
Does anyone know how I can ruduce the route delay further?
I have sort of already tried grouping relavent LUTs together within a
CLB, or if that is not possible, placing relavent CLBs horizontally
(rather than vertically to take advantage of Virtex architecture's
fast direct connections between horizontally adjacent CLBs).




Kevin Brace (don't respond to me directly, respond within the
newsgroup)




Ray Andraka <ray@andraka.com> wrote in message news:<3C1122D4.EA124F08@andraka.com>...
> The VIrtex parts can support a fuly compliant PCI33 design, but the timing is not met over worst case unless you use that special TRDY
> logic.  I think 5v Virtex-6 just met the PCI66 timing.
> 
> 
> --
> --Ray Andraka, P.E.
> President, the Andraka Consulting Group, Inc.
> 401/884-7930     Fax 401/884-7950
> email ray@andraka.com
> http://www.andraka.com
> 
>  "They that give up essential liberty to obtain a little
>   temporary safety deserve neither liberty nor safety."
>                                           -Benjamin Franklin, 1759

Article: 37386
(removed)


Article: 37387
Subject: Re: For Sale: Huge Xilinx FPGA lots
From: Rick Filipkiewicz <rick@algor.co.uk>
Date: Sun, 09 Dec 2001 10:22:46 +0000
Links: << >>  << T >>  << A >>


Arthur wrote:

> I'd be wary of this -
> 1.  who knows what precautions were taken when the parts were removed from the board
> 2. current Xilinx software doesn't support these devices

If they are parts that have been removed then warning #1 is very important. When we
moved from the Intel Altera EPX780 parts [the original Intel FX780 CPLD range that had
had been bought by Altera] to the XC95K range after Altera stopped making  EPX780s we
still had to build one more batch of boards with the old parts. All we could find were
some "reclaimed" parts and they gave us no end of trouble. About 1/4 didn't work at all
and another 20% died during soak test. Fortunately, with a lot of effort, we did manage
to find some "real" unused stock by pleading with the client for whom we'd designed in
the FX780/880.


Article: 37388
Subject: Re: [Spartan-II] Global Timing Constraints valid for Block RAM's ?
From: Philip Freidin <philip@fliptronics.com>
Date: Sun, 09 Dec 2001 10:49:20 GMT
Links: << >>  << T >>  << A >>
Hi Markus,

Earlier this week I wrote two brilliant articles, with a subject of

    "Crossing a clock domain"

I think you might be helped by reading these, as they discuss the
issue of passing a flag from one clock domain to another.

In your case, you need to pass a flag from the portA side to the DSP
to tell it when the page is available to be read (when the writes
have finished), and you need to pass a flag from the DSP (portB side)
back to the portA side to tell it when the DSP has finished reading,
and it is OK to write to that page again on the portA side.

Another name for the memory structure you have designed is a "Ping-Pong"
memory. This is true regardless of whether you use a dual port memory,
or two separate memories. You usage of a "page" address bit is an
efficient way to do a ping-pong memory with just 1 DP RAM.

Another important issue is the higher level system view, which includes
the analysis of bandwidth. You have not mentioned:

- portA write rate
- portA number of words written
- is there any slack time between end of writing to one page and then the
  other

- portB read rate
- portB number of words read (should be same as number of words written)
- is there any slack time between end of reading of one page and then the
  other

For instance, if the portA data is a continuous data stream, there will
be no delay between writing to one page and then the other. This will
only work if the logic to read the page (DSP side) reads at a faster
rate than the writes.

You may want to do something like this:

A master FF that indicates which side is using which page:

0 : portA writing page 0, portB reading page 1
1 : portA writing page 1, portB reading page 0

You say that the A side is the master, so when it has finished writing,
it could toggle the FF.

On the portB side, the synchronized version of this FF (see my other
articles) is monitored by the B side logic. If the FF changes state
while the DSP is still reading, then an error has occured. Set an
error FF, that turns on a red LED or triggers a scope or logic
analyzer.

Or here's another possibility:

While the DSP is reading, pass a signal to the A side (through a
synchronizer !) saying that the B side is busy (page "n" in use).

When the A side has finished writing, it looks at the synchronized
busy flag. If it is busy, it waits till it goes non-busy before
flipping the master FF. This works well if you don't have to
write blocks of data on the A side at some fixed rate. If you do
have deadlines to meet on the A side (a new block must be written
every "x" microseconds), then you can still wait for the non-busy
indication, but if you don't get it in time for when the A side
must start writing another block, set an error FF, that turns on
a red LED (or a status signal that triggers a scope or logic
analyzer).

All the best,

Philip Freidin



On 9 Dec 2001 00:16:55 -0800, meng.engineering@bluewin.ch (Markus Meng) wrote:
>Hallo Peter und Falk,
>
>your right the missing question is how do I make shure that I don't get
>this overlapp reading and writing from the same address at the same time.
>
>It's done in logic using kind of a master/slave data processing flow.
>First on PortA all data are written, then an interrupt is being generated
>and the page bit is toggeled - previous '0' now '1'.
>On the other side - PortB - a DSP from Analog Device
>does DMA read bursts and reads out all the required data. In the meantime
>writing continues but on page '1'. It should work and most of of the time
>is does. Therefore it mayed get a situation where this overlap happens, but
>it should not. I will keep you informed. I have to think about how I can
>measure or catch this problem ...
>
>markus

Philip Freidin
Fliptronics

Article: 37389
Subject: Re: I need a Xilinx Spartan PCI Development Board
From: Duane Clark <dclark@akamail.com>
Date: Sun, 09 Dec 2001 08:51:47 -0800
Links: << >>  << T >>  << A >>
Ray Andraka wrote:
> 
> I hadn't tried since 3.1 sp2 or 3.  Can you elaborate on the flow to put it
> in there?  I don't believe it is in the library, so I assume you are passing
> it into the edif as a black box.  Do you need to include an edif netlist for
> it too?
> 


Yes, I just stuck it in as a black box. Looking at it in fpga_editor, it
appeared to be a primitive named PCILOGIC with input pins IRDY, TRDY,
I1, I2, and I3 and output PCI_CE. And how the connections were used was
also easily seen. So I tried a blackbox with that primitive name and
pins and ... it worked. 

Basically I just tied all the input pins of the primitive to FPGA device
input pins, and then had two other device pins as input and output with
CE controlled by PCI_CE. The simplest possible circuit.

About all that is missing is a VHDL model in the unisim library. But
once I determined with ngd2vhdl what that model was, I just stuck a file
with a simplified version into the unisim directory and compiled it into
the unisim library.

Duane

Article: 37390
Subject: Re: ISA syncronization?
From: "Peter Wallace" <pcw@mesanet.com>
Date: Sun, 9 Dec 2001 11:51:58 -0800
Links: << >>  << T >>  << A >>
I think its just as easy to regard the bus as asynchronous and just build edge detectors to detect bus operations-- bringing them into your local clock domain

http://www.mesanet.com/4i34.zip

(support code for our FPGA based PC/104 card)

Has some PC104 examples including 16 bit bus interface/interrupt generation logic...

PCW

Article: 37391
Subject: Re: PCI card - 2 layers versus four layers
From: "Peter Wallace" <pcw@mesanet.com>
Date: Sun, 9 Dec 2001 12:45:21 -0800
Links: << >>  << T >>  << A >>
Actually 2 layer boards are better for PCI in some respects (lower trace capacitance for PCI bus stub lines) Its just very hard to do good 2 layer board designs as power integrity and crosstalk are more of a problem. Unless you have very high volumes, 4 layer is the way to go
(and _much_ easier to layout)

PCW

Article: 37392
(removed)


Article: 37393
Subject: Re: I need a Xilinx Spartan PCI Development Board
From: Duane Clark <dclark@akamail.com>
Date: Sun, 09 Dec 2001 12:54:14 -0800
Links: << >>  << T >>  << A >>
Eric Smith wrote:
> 
> Duane Clark <dclark@akamail.com> writes:
> > And by the way, the 3.3i tools handle the PCILOGIC aka "magic TRDY" just
> > fine for me, despite Xilinx claims that they do not support it. That
> > includes ngdbuild, map and par, and includes support for timing
> > constraints on paths that pass through the PCILOGIC. I did not find that
> > the use of fpga_editor was required.
> 
> What did you put in your VHDL or Verilog source code to make it
> use the magic TRDY logic?

A black box primitive.

   component PCILOGIC
      port (
         IRDY: in std_logic;
         TRDY: in std_logic;
         I1: in std_logic;
         I2: in std_logic;
         I3: in std_logic;
         PCILOGIC: out std_logic
      );
   end component;

Article: 37394
Subject: Re: ISA syncronization?
From: ikauranen@netscape.net (ikauranen)
Date: 9 Dec 2001 14:04:41 -0800
Links: << >>  << T >>  << A >>
Hello Jason,
For implementation of the PC104/ISA interface, I suggest you to use
read/write strobes, address ADDR[], address enable AEN, and CH READY
(if delay is required) signals, without the clock. Thus, the design
will include [inferred, in the case of VHDL] register and comparator;
no state machines is required.

Best Regards,
Igor Kauranen

Article: 37395
Subject: Re: ISA syncronization?
From: "Jason Berringer" <jberringer@trace-logic.com>
Date: Sun, 9 Dec 2001 18:32:58 -0500
Links: << >>  << T >>  << A >>
Thanks for the examples, it always help to see how others have approached
the task, my only worry with the asyncronous exchange is that some fo the
data might be lost, I'm fairly confident that it won't but you never know.
Have you ever noticed any wierd or unexplained data exchanges in your design
for your PC/104 FPGA card? The reason I ask is at present the card we have,
which I\m trying to debug seems to have inconsistent readings unless we
install another card onto the stack. I have a feeling it's beacause the ISA
bus isn't handled very well in that code.

Jason

"Peter Wallace" <pcw@mesanet.com> wrote in message
news:ee739ce.0@WebX.sUN8CHnE...
> I think its just as easy to regard the bus as asynchronous and just build
edge detectors to detect bus operations-- bringing them into your local
clock domain
>
> http://www.mesanet.com/4i34.zip
>
> (support code for our FPGA based PC/104 card)
>
> Has some PC104 examples including 16 bit bus interface/interrupt
generation logic...
>
> PCW



Article: 37396
Subject: DSP or FPGA for ODFM Demodulation?
From: "Deli Geng (David)" <deli.geng@ncl.ac.uk>
Date: Mon, 10 Dec 2001 01:05:20 -0000
Links: << >>  << T >>  << A >>
Hi, there,

I'm going to use FPGA or DSP to demodulate ODFM, especially for DVB-T.
However, I just wondered if general DSP chip, like C6211 133MHz, is fast
enough to do that? Or if FPGA must be used, around how many equivalant
gates/cells will the design be?

Thanks.

David



Article: 37397
Subject: Re: I need a Xilinx Spartan PCI Development Board
From: Duane Clark <dclark@akamail.com>
Date: Sun, 09 Dec 2001 17:10:23 -0800
Links: << >>  << T >>  << A >>
Duane Clark wrote:
> 
> A black box primitive.
> 
>    component PCILOGIC
>       port (
>          IRDY: in std_logic;
>          TRDY: in std_logic;
>          I1: in std_logic;
>          I2: in std_logic;
>          I3: in std_logic;
>          PCILOGIC: out std_logic
>       );
>    end component;

Oops, that is of course 
         PCI_CE: out std_logic

Article: 37398
Subject: Re: PCI card - 2 layers versus four layers
From: kevinbraceusenet@hotmail.com (Kevin Brace)
Date: 9 Dec 2001 19:18:36 -0800
Links: << >>  << T >>  << A >>
acher@in.tum.de (Georg Acher) wrote in message news:<9ug1l7$hvp$1@sunsystem5.informatik.tu-muenchen.de>...
> In article <u0m7n0ku4ccvd2@corp.supernews.com>,
>  "Austin Franklin" <austin@dark98room.com> writes:
> |> Did you read the PCI spec carefully?  The PCI spec requires power and ground
> |> planes, since the maximum distance for the PCI power/ground connector pads
> |> to the plane is .25", as stated in 4.4.2.1. <...>
> 
> Then 80% of the cheaper network and soundcards violate the spec. I have never
> seen a RTL8139 based network card with a multilayer PCB.

        I always wondered how come those Made in Taiwan/China PCI
Ethernet cards or sound cards be sold that cheaply (US $10 to $15 at a
mom and pop computer dealer).
I guess that shows that companies that make low cost/quality products
in Taiwan or China only care about making a buck, and don't care at
all for complying with the specification.
I guess that makes companies that follow the specification very
difficult to compete because most consumers don't know that some
companies violate the specification in order to sell it cheap.
I have a Realtek based PCI Ethernet card in my main computer, but the
card didn't fit inside my computer, because the bracket was sticking
out a little (by a few millimeters), so I had to remove the bracket to
fit it in.
I suppose that can be my computer case's fault.
I just have it installed to use LeonardoSpectrum-Altera in my
computer, but I personally hate that tool because it is unstable.




Kevin Brace (don't respond to me directly, respond within the
newsgroup)

Article: 37399
Subject: Re: Altera pin drivers
From: "George P. Kosmopoulos" <gkosmo@ticon.net>
Date: Sun, 9 Dec 2001 22:47:07 -0600
Links: << >>  << T >>  << A >>

"Falk Brunner" <Falk.Brunner@gmx.de> wrote in message
news:9ur0fs$a5b36$4@ID-84877.news.dfncis.de...
> "Andrea Sabatini" <sabatini@nergal.it> schrieb im Newsbeitrag
> news:9uqo7c$2jko$1@newsreader1.mclink.it...
> > hi all,
> >
> > i'm designing an fpga usign altera max-plus and/or quartusII (we still
> > haven't decided which one) and i have a question about it. does anybody
>
> I suggest to drop MAx-plus as fast as possible, because it is a real pain
to
> work with.
Max plus is the easiest tool i've ever used.
>
> > knows if these softwares automatically place IO buffers? or do i have to
>
> For Max-plus, Yes. For Quartus, I dont know, but guess it does.
Quartus does depending on which FPGA
>
> --
> MfG
> Falk
>
>
>
>
>
>





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