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 98350

Article: 98350
Subject: Re: Questions about counter in VHDL
From: Jim Granville <no.spam@designtools.co.nz>
Date: Thu, 09 Mar 2006 09:31:24 +1300
Links: << >>  << T >>  << A >>
laura_pretty05@yahoo.com.hk wrote:

> Jim,
>    I don't understand what you means. what is Font Rom code?
> Laura

  In your first post, you mentioned a LED display - I assumed 7 Segment
as you said 0..F.
  This needs a lookup table, to convert/map the 4 bit binary, to 
required LEDs - that table is what I call the Font-Rom.
  It is missing from the examples you have posted thus far.

  Have a look at the ISE webpack, WATCHxx.zip examples : these are
a 3 digit stopwatch, and they have all you will need.

-jg


Article: 98351
Subject: Re: problem
From: "Gabor" <gabor@alacron.com>
Date: 8 Mar 2006 12:45:14 -0800
Links: << >>  << T >>  << A >>
Wojtek,

It looks like you are using VHDL to program a small PAL part?

The error message seems to indicate that the part cannot
represent the logic in your equation without first using
DeMorgan to generate an active low output.  I don't understand
why VHDL isn't able to do this for you.

The last time I used parts like this I was programming in PALASM.
the equation would look like
!Y = !A + !B + !C
where "+" was the OR operator in PALASM.

Maybe your synthesizer wants you to write:

not y <= not a or not b or not c;

Maybe one of the option settings can allow your synthesizer to do the
work for you.  Maybe one of the optimization settings?

Possibly out of my element here...

Good luck,
Gabor

zlotawy wrote:
> Hi,
> I learn VHDL. I got text: "
>
>
>
> Compiling 'komp.vhd' in 'H:\PROGRAMY\WARP\BIN'.
> VHDL parser (h:\programy\warp\bin\vhdlfe.exe V4 IR x66)
> Library 'work' => directory 'lc16r4'
> Library 'ieee' => directory 'h:\programy\warp\lib\ieee\work'
> Using 'h:\programy\warp\lib\ieee\work\stdlogic.vif'.
> High-level synthesis (h:\programy\warp\bin\tovif.exe V4 IR x66)
> Synthesis and optimization (h:\programy\warp\bin\topld.exe V4 IR x66)
> Design optimization (dsgnopt)
> Equation minimization (minopt)
> Design optimization (dsgnopt)
> Device fitting (pla2jed)
>   Error: Polarity specified for LHS signal y must be Active Low.
> "
>
> Code I was trying to synthes is:
>
> "library ieee;
> use ieee.std_logic_1164.all;
>
> entity komparator is
> port (a,b,c: in std_logic;
> y: out std_logic);
> end komparator;
>
>
> architecture komparator of komparator is
> begin
>
> yiuyuiku:process(a,b,c)
> begin
> y <= (a and b and c);
> end process;
> end komparator;"
> 
> 
> What is the problem?
> 
> Regards,
> Wojtek


Article: 98352
Subject: Re: for all those who believe in ASICs....
From: Jim Granville <no.spam@designtools.co.nz>
Date: Thu, 09 Mar 2006 10:03:24 +1300
Links: << >>  << T >>  << A >>
fpga_toys@yahoo.com wrote:

<snip>
> It's with this perspective that domestic FPGA vendors could easily
> disappear off the map as quickly as GE, RCA, Magnavox, Packard Bell,
> Motorola, and other US TV and Radio suppliers did from 1965 to 1970
> when domestic production pretty much stopped.
> 
> Xilinx doesn't control it's means of production, and with that, it also
> does not control it's fate.  As FPGAs become a comodity building block
> for all electronics, as it seems it will during this decade, then every
> major fab on the planet will be producing them ... frequently with the
> fabs own design and logo. Since early US patents are set to expire this
> decade, that is almost a given. Those same fabs producing FPGAs are
> very likely to offer discounted ASIC facilities based on their netlists
> ... so I see the structured ASIC market as long term, at all levels.

  I think FPGAs are a little insulated from the simpler boxes trends,
as a substantial portion of the product, is actually software.
  IIRC, both Altera and Xilinx employ more Engineers on the SW side,
than HW, and have done for a while.
  With Lattice now in the fray, with Fujitsu FAB'd devices, software
is going to be the key differentiator.
  After all, in spite of the best spin efforts from all the marketing 
departments, the Silicon performances are actually quite similar - 
expected given they depend mostly on what Process the leading edge FABs 
can run.
  -jg


Article: 98353
Subject: Re: speed control ac motor in FPGA
From: "feedcaseg" <feedcaseg@gmail.com>
Date: 8 Mar 2006 13:27:43 -0800
Links: << >>  << T >>  << A >>
This is just for impementing un a new technology, i have doubts about
how to configure the fpga and how to use the expansion ports, what pins
are enabled  for I / O, how can i configure them.  I have the archive
in excel about the pins, what can i choose?


Article: 98354
Subject: Re: 5v Xilinx development board
From: Jon Elson <jmelson@artsci.wustl.edu>
Date: Wed, 08 Mar 2006 15:31:30 -0600
Links: << >>  << T >>  << A >>


Gary Pearman wrote:

> Does anybody know where I can get hold of a cheap Xilinx development 
> board that has an FPGA with 5v I/O?

What size FPGA are you interested in?  I make some boards that use the
5 V Spartan  FPGAs.  One board is for the XCS10 and the other is for
the XCS30.  Would either of these do you any good?

Jon


Article: 98355
Subject: Re: 5v Xilinx development board
From: "M.Randelzhofer" <techseller@gmx.de>
Date: Wed, 8 Mar 2006 22:37:50 +0100
Links: << >>  << T >>  << A >>
"Gary Pearman" <g_pearman@hotmail.com> schrieb im Newsbeitrag
news:dump21$flh$1@nwrdmz02.dmz.ncs.ea.ibs-infra.bt.com...
> Does anybody know where I can get hold of a cheap Xilinx development
> board that has an FPGA with 5v I/O?

Our GOP_XC3S200 Mini FPGA module tolerates input voltages up to 7V at the
GAL compatible DIL24 connector.
http://www.oho-elektronik.de/index.php?c=1&s=gop_xc3s200

Optionally I/O's drive up to 5V by selectable pullup resistors.
These features allows easy interconnection to 5V powered CMOS chips like
PIC's, AVR's or others.

We use TI's 74CB3T3245 level shifters for this capability.
http://focus.ti.com/lit/ds/symlink/sn74cb3t3245.pdf

MIKE

-- 
www.oho-elektronik.de
OHO-Elektronik
Michael Randelzhofer
FPGA und CPLD Mini Module
Klein aber oho !



Article: 98356
Subject: Shift Register synthesis??
From: Alderaan <giovannibusonera@yahoo.it>
Date: Wed, 08 Mar 2006 23:30:47 +0100
Links: << >>  << T >>  << A >>
Hi,
while i was synthesizing a simple shift register i got an odd behavior.
The device i'm using is a virtex2pro (xc2vp2) the verilog i've used is:

module shift_reg(clk, in , out);
parameter DIM=16;
input clk, rst, in;
output out;

reg [DIM-1:0] SR;

always@(posedge clk)
	SR <= {in, SR[DIM-1:1]};

assign out = SR[0];
endmodule

After synthesis xst extracts the shift register and map it to a slice. 
The timing report gave a max freq of 341.530MHz.

Then i've tried to resynthesize the module but adding a reset signal to 
the SR.
After the synthesis xst didn't found any SR but used 16 FFD and 9 
slices. Again the timing report get 1099.505 MHz as max. freqency.

I've obtained same results using synplify pro instead of xst.

Is the last frequency value a right one?
Isn't The Virtex2 maximum clock freq <500MH?
How is it possible that using more slices and flip flops intead of the 
LUT configured as SR it gets better performances? Could it be a 
synthesizer error?

Thankyou in advances
Giovanni Busonera

Article: 98357
Subject: Re: Shift Register synthesis??
From: "John_H" <johnhandwork@mail.com>
Date: Wed, 08 Mar 2006 23:02:28 GMT
Links: << >>  << T >>  << A >>
"Alderaan" <giovannibusonera@yahoo.it> wrote in message 
news:440f5b18$0$29737$4fafbaef@reader2.news.tin.it...
> Hi,
> while i was synthesizing a simple shift register i got an odd behavior.
> The device i'm using is a virtex2pro (xc2vp2) the verilog i've used is:
>
> module shift_reg(clk, in , out);
> parameter DIM=16;
> input clk, rst, in;
> output out;
>
> reg [DIM-1:0] SR;
>
> always@(posedge clk)
> SR <= {in, SR[DIM-1:1]};
>
> assign out = SR[0];
> endmodule
>
> After synthesis xst extracts the shift register and map it to a slice. The 
> timing report gave a max freq of 341.530MHz.
>
> Then i've tried to resynthesize the module but adding a reset signal to 
> the SR.
> After the synthesis xst didn't found any SR but used 16 FFD and 9 slices. 
> Again the timing report get 1099.505 MHz as max. freqency.
>
> I've obtained same results using synplify pro instead of xst.
>
> Is the last frequency value a right one?
> Isn't The Virtex2 maximum clock freq <500MH?
> How is it possible that using more slices and flip flops intead of the LUT 
> configured as SR it gets better performances? Could it be a synthesizer 
> error?
>
> Thankyou in advances
> Giovanni Busonera

I can't comment on the reported frequency but the LUT-based SRL does not 
support reset.  There is no circuitry to change the stored SRL values to a 
reset state at the assertion of a reset signal.  So, if you want the 
contents of the SRL to go to a reset state, you must implement the SRL in 
registers (or - more appropriately - the tool should do so for you). 



Article: 98358
Subject: Re: for all those who believe in ASICs....
From: Austin Lesea <austin@xilinx.com>
Date: Wed, 08 Mar 2006 15:03:57 -0800
Links: << >>  << T >>  << A >>
Jim,

I know about Menta and ST.

ST are countering IBMs 90nm ASIC offering which has been using a 
licensed 90nm FPGA core from us for over two years now.

ST just staying competitive, in my book.

Perhaps they saw an opportunity that having a small FPGA core would 
allow them to address?  It appears that the use of the core is 
restricted to customizing a processor.  Not enough details to really see 
what is being offered.  For what, or why.

But, if there were any details, then the holders of significant FPGA 
patent portfolios would probably start to get interested....

At least if you bought the IBM solution you could develop and prototype 
your solution with Xilinx' proven tools, and be assured that the 
solution you were getting was from two of the world leaders in their 
respective fields, and that there would not be any patent disputes that 
might cause a disruption in supply.

The fact that ST dropped their GOSPL FPGA project and went with an 
(unknown) third party for their offering has puzzled a number of people.

We will see.

Austin

Article: 98359
Subject: Re: for all those who believe in ASICs....
From: Austin Lesea <austin@xilinx.com>
Date: Wed, 08 Mar 2006 15:25:07 -0800
Links: << >>  << T >>  << A >>
John,

Interesting opinions.

Of course, I disagree that ASICs have any rosy future at all, and I also 
feel that your conclusion that whoever controls the foundry controls the 
technology is also quite bizarre.

How many patents does Xilinx have?

How many are due to expire?

How many that are due to expire matter? (All it takes is one of the most 
recent ones to be a barrier to entry...for the next 20 years).

How many lines of code do you need to support your FPGA design (in the 
tools)?

How many hotline engineers does it take to support FPGAs?

How do you train and support the distributors, FAEs and customers in a 
new technology from a new vendor?

How much circuit design for FPGAs is done outside the US?  Outside 
silicon valley?  How much software for CAD tool support of FPGAs is done 
elsewhere?  Where are the patents being filed?

Xilinx doesn't just excell in one area, we excell in as many areas as 
possible.  Each by itself is a huge barrier to entry.

Only getting tougher to compete.

And, we don't stand still.  Did you see the 65nm FPGA announcement last 
week?

http://www.xilinx.com/prs_rls/2006/xil_corp/0630_65nm.htm

And, have you heard anything about that 65nm ASIC process being ready 
for anyone, anywhere?  For anything?  Other than it is too much money, 
and too much power? (with no proven IP)

Ouch.  Where is all that new cool 65nm IP, and stuff for that next 
killer application?  MGTs, MACs, DSP, PPC, etc.

Oh, Xilinx has it in their FPGA.

Austin

Article: 98360
Subject: Re: for all those who believe in ASICs....
From: Austin Lesea <austin@xilinx.com>
Date: Wed, 08 Mar 2006 15:35:03 -0800
Links: << >>  << T >>  << A >>
Jim,

I beg to differ.  In terms of power, resistance to neutron SEUs, and 
signal integrity, our silicon has significant advantages.

One not so small feature:  we have 90nm triple oxide.

The process was developed for us, at our request, by two foundries.

Oh, and we have it for 65nm, too.

Wake up and smell the coffee.  We asked for a process, and we had more 
than one foundry eager to supply it.

That sounds to me like a revolution in the fabless model.  Instead of 
"give me your masks and I'll give you some chips" we have a working 
partnership and cooperation in developing a new process unique to our 
industry.

Austin


Article: 98361
Subject: Re: 5v Xilinx development board
From: "Andy" <jonesandy@comcast.net>
Date: 8 Mar 2006 15:55:51 -0800
Links: << >>  << T >>  << A >>
Spartan II's are the last 5V IO tolerant Xilinx FPGA, and their 3.3V
outputs are compatible with 5V TTL inputs (0.8 & 2.4V typically). CMOS
logic typically has 20% & 80% thresholds, or 1V and 4V respectively.
You can safely pull up a spartan 2 output to 5v externally without
damaging the fpga. I think Avnet has some cheap dev boards for that
family.

Andy Jones


Article: 98362
Subject: Re: what do the following constraints mean?
From: Philip Freidin <philip@fliptronics.com>
Date: Thu, 09 Mar 2006 00:17:27 GMT
Links: << >>  << T >>  << A >>
On Wed, 08 Mar 2006 18:51:31 +1100, Allan Herriman <allanherriman@hotmail.com> wrote:
>On Tue, 07 Mar 2006 17:01:31 GMT, Duane Clark <dclark@junkmail.com>
>wrote:
>
>>Subhasri krishnan wrote:
>>> Hi all,
>>> I am trying to modify some code and I came across these constraints.
>>> 'clk_in' is the input clock and 'clk' is generated using a DCM (its is
>>> the Divide By 2 output).
>>> 
>>> NET "clk_in" TNM_NET = "clk_in";
>>> TIMESPEC "TS_clk_in" = PERIOD "clk_in" 20 ns HIGH 50 %;
>>> 
>>> TIMEGRP "rising_ffs" = RISING "clk";
>>> TIMEGRP "falling_ffs" = FALLING "clk";
>>> TIMESPEC "TS_pos_to_neg" = FROM "rising_ffs" TO "falling_ffs" 5 ns ;
>>> 
>>> Is there something wrong with the last FROM : TO statement? Can the
>>> same condition be specified using the Period statement? I think its
>>> supposed to mean "delay between the rising and falling edge is to be
>>> kept to 5ns".
>>
>>Yes, the same condition can be specified with a period statement. When 
>>ISE sees that opposite edges of the clock are being used, it will 
>>automatically cut the period in half (assuming a HIGH 50 % is 
>>applicable). So you just need:
>>TIMESPEC "TS_clk" = PERIOD "clk" 10 ns HIGH 50 %;
>
>A period of 20ns and a rising to falling time of 5ns would give a duty
>cycle of 25%, not 50%.
>
>I've never liked the way the duty cycle is specified in UCF, as it's
>impossible to describe a worst case range.
>For example, if the duty cycle can vary between 40 and 60%, then one
>would need to decrease the period spec by 20% to adequately cover the
>rising to falling and falling to rising paths, but this results in an
>unnecessarily tight spec for the rising to rising and falling to
>falling paths.
>
>Xilinx, take note.
>
>Regards,
>Allan


Careful here folks,

OP wrote that input clock is "clk_in", and the original UCF says period
is 20ns, so 50 MHz.

OP wrote that the clock "clk" comes from the DCM div by 2 output, so
it will be 25 MHz, with a period of 40ns, not 100 MHz and 10ns.

So, the original UCF has a real problem with "TS_pos_to_neg" spec, as
it logically should be 20ns for a half cycle, not 5ns.

The correct period spec for "clk" would be:

 TIMESPEC "TS_clk" = PERIOD "clk" 40 ns HIGH 50 %;

Alternatively, the from-to spec could be:

TIMESPEC "TS_pos_to_neg" = FROM "rising_ffs" TO "falling_ffs" 20 ns ;

Alan's comment:
>>A period of 20ns and a rising to falling time of 5ns would give a duty
>>cycle of 25%, not 50%.

is not correct, as he missed that the 20ns was the "clk_in" net, but the
5ns spec was for ffs in the rising/falling subsets of the "clk" net.
Given that the "clk" clock is at 25MHz, the 5ns is actually just 12%
of the cycle time. Even worse.

For Alan's non-symetric duty cycle worst case scenario, I handle it
this way (let's stick with 40ns cycle time):

TIMEGRP "rising_ffs" = RISING "clk";
TIMEGRP "falling_ffs" = FALLING "clk";
TIMESPEC "TS_pos_to_neg" = FROM "rising_ffs"  TO "falling_ffs" 16 ns ;
TIMESPEC "TS_neg_to_pos" = FROM "falling_ffs" TO "rising_ffs"  16 ns ;
TIMESPEC "TS_pos_to_pos" = FROM "rising_ffs"  TO "rising_ffs"  40 ns ;
TIMESPEC "TS_neg_to_neg" = FROM "falling_ffs" TO "falling_ffs" 40 ns ;

This supports the duty cycle ranging from 40% to 60%, while still
giving the full cycles paths a whole cycle.

If you actually looked at my UCF files, you would find that I would
probably have set the "16 ns" to 15, and the "40 ns" to 38, just so there
was a little safety margin for clock jitter, etc.


Philip Freidin



Philip Freidin
Fliptronics

Article: 98363
Subject: need doc's for Insight Spartan II demo board
From: "richard" <richard@idcomm.com>
Date: 8 Mar 2006 16:34:45 -0800
Links: << >>  << T >>  << A >>
Greetings!

Has anyone got machine readable, hence, net-transferable, documentation
for the Insight Spartan-II demo board with the XILINX XC2S100 and 18V01
boot prom?

I've managed to become separated from some of the doc's.I have the
schematics and the user manual, but the apendices for the user manual
seem to have wandered away.

I'd like to use this board for something useful, but that's difficult
without complete doc's.

thanks, 

Richard


Article: 98364
Subject: Re: for all those who believe in ASICs....
From: fpga_toys@yahoo.com
Date: 8 Mar 2006 18:03:49 -0800
Links: << >>  << T >>  << A >>

Austin Lesea wrote:
> How many that are due to expire matter? (All it takes is one of the most
> recent ones to be a barrier to entry...for the next 20 years).

All it takes is demonstrated prior art to avoid it as well, plus some
litigation to avoid the challenges. By 1989 what was published
regarding FPGAs, and the devices that were in production at that time,
provide an architectural wealth for producing patent free comodity FPGA
devices, which scaled to current processes, would make a strong
competitor for main stream FPGAs.  The market for advanced FPGAs would
at that time not be nearly as high margin with the cash cows
slaughtered, and the competition would become stiff.


Article: 98365
Subject: Xilinx ISE 7.1.4: Timing Contraints/Fan-Out/Placement
From: "Steven Menk" <smenk@sysplan.com>
Date: 8 Mar 2006 18:29:50 -0800
Links: << >>  << T >>  << A >>
This is probably a dumb question, but I'm trying to figure some aspects
of the software (ISE 7.1.4) out.

I have a design for a Virtex-II FPGA that basically consists of several
data busses and several accumulators (Xilinx Core) which correspond to
the data busses, and some control signals.  Basically I'm taking data
in and either adding it to or substracting it from the accumulators.
At this point it's a really simple case where I'm using 1-bit as a
control signal.  '1' I add, '0' I substract.  Both the control signal
and the data are clocked in by seperate clock signals.  Real simple.
The sequence goes:

Control signal valid -> control clock edge -> data valid -> data strobe

Speed is about 5 MHz overall with the signal, clock, signal, clock
sequence basically evenly spaced over that period.

If I basically leave the tools to their own (Xilinx ISE 7.1) what it
basically does is put a flip-flop near the control signal and clock and
fans the output out to the accumulators...  Which amounts to something
like 164 internal signals.  The auto-routing of the internal signals
ends up as a mess that basically doesn't work.

I can fix it by going into the placement editor and moving the
flip-flop to a logical place near the accumulators so the router ends
up with a more reasonable route.  Which is okay, I guess.

My question is how do I specify timing contraints such that the
placement minimizes the route from the output of the flip-flop to the
accumulators?

The other thing I can do is replicate the flip-flop for the control
signal for each accumulator and set ISE to not trim duplicated
registers...

Thanks!


Article: 98366
Subject: Re: Xilinx ISE 7.1.4: Timing Contraints/Fan-Out/Placement
From: "Steven Menk" <smenk@sysplan.com>
Date: 8 Mar 2006 18:32:08 -0800
Links: << >>  << T >>  << A >>
To clarify, the flip-flop is placed near the PAD for the control signal
by the ISE software.  The out put is then routed to all the
accumulators.


Article: 98367
Subject: Re: Shift Register synthesis??
From: mk <kal*@dspia.*comdelete>
Date: Thu, 09 Mar 2006 02:56:27 GMT
Links: << >>  << T >>  << A >>
On Wed, 08 Mar 2006 23:30:47 +0100, Alderaan
<giovannibusonera@yahoo.it> wrote:

>Then i've tried to resynthesize the module but adding a reset signal to 
>the SR.
>After the synthesis xst didn't found any SR but used 16 FFD and 9 
>slices. Again the timing report get 1099.505 MHz as max. freqency.
>
>I've obtained same results using synplify pro instead of xst.
>
>Is the last frequency value a right one?
>Isn't The Virtex2 maximum clock freq <500MH?
>How is it possible that using more slices and flip flops intead of the 
>LUT configured as SR it gets better performances? Could it be a 
>synthesizer error?

The LUT as shift register application is not optimized for timing and
it doesn't support reset or when you add the reset you get the actual
flops. If these flops are placed nicely, ie with minimal routing delay
the minimum period is decided by the equation Tclk2Q + Tsetup
(assuming no-clock tree skew) so it's reasonable to get a number
around 1ns for this. The reported register to lut to register
performance of a -6 device is 1046 MHz.

Article: 98368
Subject: Re: for all those who believe in ASICs....
From: jhallen@TheWorld.com (Joseph H Allen)
Date: Thu, 9 Mar 2006 03:08:39 +0000 (UTC)
Links: << >>  << T >>  << A >>
A more intersting discussion for me is the best path for converting
expensive high end FPGA designs into ASICs.  I viewed rapidchip as one of
these paths- so what's left?  Is this even a big business?

Xilinx: easypath - lower cost but no faster.

Altera: hardcopy-II - these are structured ASICs.  They look appealing, but
I did not get the impression that there were many conversions (at least as
of a year ago).

-- 
/*  jhallen@world.std.com (192.74.137.5) */               /* Joseph H. Allen */
int a[1817];main(z,p,q,r){for(p=80;q+p-80;p-=2*a[p])for(z=9;z--;)q=3&(r=time(0)
+r*57)/7,q=q?q-1?q-2?1-p%79?-1:0:p%79-77?1:0:p<1659?79:0:p>158?-79:0,q?!a[p+q*2
]?a[p+=a[p+=q]=q]=q:0:0;for(;q++-1817;)printf(q%79?"%c":"%c\n"," #"[!a[q-1]]);}

Article: 98369
Subject: Re: Questions about counter in VHDL
From: "kcl" <KCLO4[no_spam]@free.fr>
Date: Thu, 9 Mar 2006 11:21:12 +0800
Links: << >>  << T >>  << A >>
just add a signal

signal clk_counter : std_logic;

change the clock of your counter

c1: counter  port map (clock=>clk_counter , reset=>PB1, count=> count);

and make a process to change the clock of you counter

process(count)
begin
if count = 10 or count=11 or count=12 or count=13 or count=14 or count=15 
then
  clk_counter <= clk_25MHz;
else
  clk_counter <= clock_1Hz ;
end if;
end process;

like this it will count 1 digit each second when betwen 0 to 9 and count so 
fast that no one will notice anything betwen 10 to 15

Regards

kcl

<laura_pretty05@yahoo.com.hk> wrote in message 
news:1141816072.606433.278480@j52g2000cwj.googlegroups.com...
hi, Aurelian Lazarut
I still don't understand what you means. How to decode in VHDL?
The following are my counter VHDL code:
Library IEEE;
USE IEEE.std_logic_1164.all;
USE IEEE.std_logic_arith.all;
USE IEEE.std_logic_unsigned.all;


Entity Counter IS
Port
    ( Clock, Reset :IN  std_logic;
     count                 : OUT std_logic_vector(3 DOWNTO 0));
END Counter;

ARCHITECTURE a OF Counter IS
SIGNAL internal_count:  std_logic_vector(3 DOWNTO 0);

BEGIN
count <= internal_count;
Process (Reset, Clock)
    BEGIN
IF Reset='0' THEN
internal_count <= "0000";
ELSIF (Clock'EVENT AND clock='1') THEN
internal_count <= internal_count + 1;
END IF;
    END Process;
END a;

from Laura


Aurelian Lazarut ??:

> sandypure@yahoo.com wrote:
> > I have implemented a 8-bit synchronous counter by VHDL.
>
> I'll give you a hint, the counter is not in this file, only the
> intantiation of the counter.
> but you can decode count=10 and trigger a reset. (in this file)
> as Alan just said.
>
> Aurash
>
>   The result is
> > that the LED display show  continuously running the count from 0 to
> > F(in Hex). Now, I need to change the result which the LED display can
> > count  from 0 to 9 only. How can I change in the VHDL code? Can anyone
> > answer me? Thanks a lot!!
> > The following VHDL code are about 8-bit synchronous counter:
> > Library IEEE;
> > USE IEEE.std_logic_1164.all;
> > USE IEEE.std_logic_arith.all;
> > USE IEEE.std_logic_unsigned.all;
> >
> > ENTITY counter_eg IS
> > PORT(
> >        PB1, clk_25MHz                           : IN std_logic;
> >           led0, led1, led2, led3, led4, led5, led6  : OUT std_logic);
> > END counter_eg;
> >
> > ARCHITECTURE c OF counter_eg IS
> >
> > COMPONENT counter
> > PORT(
> > Clock, Reset : IN  std_logic;
> > count : OUT std_logic_vector(3 DOWNTO 0));
> >
> > END COMPONENT;
> >
> > COMPONENT dec_7seg
> > PORT(
> > hex_digit    : IN std_logic_vector(3 DOWNTO 0);
> > segment_a, segment_b, segment_c, segment_d, segment_e,
> > segment_f, segment_g   : OUT std_logic);
> > END COMPONENT;
> >
> > COMPONENT clk_div
> > PORT(
> > clock_25MHz : IN std_logic;
> > clock_1MHz : OUT std_logic;
> >    clock_100KHz : OUT std_logic;
> >    clock_10KHz : OUT std_logic;
> > clock_1KHz : OUT std_logic;
> > clock_100Hz : OUT std_logic;
> > clock_10Hz : OUT std_logic;
> > clock_1Hz : OUT std_logic);
> > END COMPONENT;
> >
> > SIGNAL count    : std_logic_vector(3 DOWNTO 0);
> > SIGNAL clk_1KHz : std_logic;
> > BEGIN
> > c0: clk_div  port map (clock_25MHz=> clk_25MHz, clock_1KHz=>clk_1KHz);
> > c1: counter  port map (clock=>clk_1KHz, reset=>PB1, count=> count);
> > c2: dec_7seg port map (count, led0, led1, led2, led3, led4, led5,
> > led6);
> >
> > END c;
> >



Article: 98370
Subject: Inferring RAM from array of records
From: "jtw" <wrightjt @hotmail.invalid>
Date: Thu, 09 Mar 2006 03:24:30 GMT
Links: << >>  << T >>  << A >>
A coworker asked me if I knew of a problem with synthesis tools inferring
RAM (Xilinx is the target) from an array of records, versus an array of
std_[u]logic_vector.  He was using XST; I haven't had a chance to try
Synplify or Precision.

Is anyone aware of specific limitations along this line?  Or which tools 
support this coding construct?

JTW




Article: 98371
Subject: Re: for all those who believe in ASICs....
From: "Rob" <robnstef@frontiernet.net>
Date: Thu, 09 Mar 2006 05:12:26 GMT
Links: << >>  << T >>  << A >>
Volumes and TTM (time to market) will dictate the path you take, either ASIC 
or structure ASIC.  And sometimes they both can work for you.  We have a 
recent product with projected numbers that make an ASIC the best candidate, 
lowest UMC.  The downside is that the ASIC has a long schedule; so long that 
we would miss launch: missing the market with a product can cost a company 
big $$.  The answer, launch with a structure ASIC (Altera HC) and roll in 
the full ASIC later in production.  Yes, you get nailed with 2 NRE's, but if 
your numbers are high enough (as they are in our case) the business case can 
make sense.

In our case the ASIC was a little less than half the cost of the Structured 
ASIC.  Altera's HC also can afford you a pin compatible footprint such that 
you can plop an FPGA down on your production board if you wanted to do 
further development.


"Joseph H Allen" <jhallen@TheWorld.com> wrote in message 
news:duo67n$4ml$1@pcls4.std.com...
>A more intersting discussion for me is the best path for converting
> expensive high end FPGA designs into ASICs.  I viewed rapidchip as one of
> these paths- so what's left?  Is this even a big business?
>
> Xilinx: easypath - lower cost but no faster.
>
> Altera: hardcopy-II - these are structured ASICs.  They look appealing, 
> but
> I did not get the impression that there were many conversions (at least as
> of a year ago).
>
> -- 
> /*  jhallen@world.std.com (192.74.137.5) */               /* Joseph H. 
> Allen */
> int 
> a[1817];main(z,p,q,r){for(p=80;q+p-80;p-=2*a[p])for(z=9;z--;)q=3&(r=time(0)
> +r*57)/7,q=q?q-1?q-2?1-p%79?-1:0:p%79-77?1:0:p<1659?79:0:p>158?-79:0,q?!a[p+q*2
> ]?a[p+=a[p+=q]=q]=q:0:0;for(;q++-1817;)printf(q%79?"%c":"%c\n"," 
> #"[!a[q-1]]);} 



Article: 98372
Subject: Re: what do the following constraints mean?
From: Allan Herriman <allanherriman@hotmail.com>
Date: Thu, 09 Mar 2006 16:50:29 +1100
Links: << >>  << T >>  << A >>
On Thu, 09 Mar 2006 00:17:27 GMT, Philip Freidin
<philip@fliptronics.com> wrote:

>On Wed, 08 Mar 2006 18:51:31 +1100, Allan Herriman <allanherriman@hotmail.com> wrote:
>>On Tue, 07 Mar 2006 17:01:31 GMT, Duane Clark <dclark@junkmail.com>
>>wrote:
>>
>>>Subhasri krishnan wrote:
>>>> Hi all,
>>>> I am trying to modify some code and I came across these constraints.
>>>> 'clk_in' is the input clock and 'clk' is generated using a DCM (its is
>>>> the Divide By 2 output).
>>>> 
>>>> NET "clk_in" TNM_NET = "clk_in";
>>>> TIMESPEC "TS_clk_in" = PERIOD "clk_in" 20 ns HIGH 50 %;
>>>> 
>>>> TIMEGRP "rising_ffs" = RISING "clk";
>>>> TIMEGRP "falling_ffs" = FALLING "clk";
>>>> TIMESPEC "TS_pos_to_neg" = FROM "rising_ffs" TO "falling_ffs" 5 ns ;
>>>> 
>>>> Is there something wrong with the last FROM : TO statement? Can the
>>>> same condition be specified using the Period statement? I think its
>>>> supposed to mean "delay between the rising and falling edge is to be
>>>> kept to 5ns".
>>>
>>>Yes, the same condition can be specified with a period statement. When 
>>>ISE sees that opposite edges of the clock are being used, it will 
>>>automatically cut the period in half (assuming a HIGH 50 % is 
>>>applicable). So you just need:
>>>TIMESPEC "TS_clk" = PERIOD "clk" 10 ns HIGH 50 %;
>>
>>A period of 20ns and a rising to falling time of 5ns would give a duty
>>cycle of 25%, not 50%.
>>
>>I've never liked the way the duty cycle is specified in UCF, as it's
>>impossible to describe a worst case range.
>>For example, if the duty cycle can vary between 40 and 60%, then one
>>would need to decrease the period spec by 20% to adequately cover the
>>rising to falling and falling to rising paths, but this results in an
>>unnecessarily tight spec for the rising to rising and falling to
>>falling paths.
>>
>>Xilinx, take note.
>>
>>Regards,
>>Allan
>
>
>Careful here folks,
>
>OP wrote that input clock is "clk_in", and the original UCF says period
>is 20ns, so 50 MHz.
>
>OP wrote that the clock "clk" comes from the DCM div by 2 output, so
>it will be 25 MHz, with a period of 40ns, not 100 MHz and 10ns.
>
>So, the original UCF has a real problem with "TS_pos_to_neg" spec, as
>it logically should be 20ns for a half cycle, not 5ns.
>
>The correct period spec for "clk" would be:
>
> TIMESPEC "TS_clk" = PERIOD "clk" 40 ns HIGH 50 %;
>
>Alternatively, the from-to spec could be:
>
>TIMESPEC "TS_pos_to_neg" = FROM "rising_ffs" TO "falling_ffs" 20 ns ;
>
>Alan's comment:
>>>A period of 20ns and a rising to falling time of 5ns would give a duty
>>>cycle of 25%, not 50%.
>
>is not correct, as he missed that the 20ns was the "clk_in" net, but the
>5ns spec was for ffs in the rising/falling subsets of the "clk" net.
>Given that the "clk" clock is at 25MHz, the 5ns is actually just 12%
>of the cycle time. Even worse.
>
>For Alan's non-symetric duty cycle worst case scenario, I handle it
>this way (let's stick with 40ns cycle time):
>
>TIMEGRP "rising_ffs" = RISING "clk";
>TIMEGRP "falling_ffs" = FALLING "clk";
>TIMESPEC "TS_pos_to_neg" = FROM "rising_ffs"  TO "falling_ffs" 16 ns ;
>TIMESPEC "TS_neg_to_pos" = FROM "falling_ffs" TO "rising_ffs"  16 ns ;
>TIMESPEC "TS_pos_to_pos" = FROM "rising_ffs"  TO "rising_ffs"  40 ns ;
>TIMESPEC "TS_neg_to_neg" = FROM "falling_ffs" TO "falling_ffs" 40 ns ;
>
>This supports the duty cycle ranging from 40% to 60%, while still
>giving the full cycles paths a whole cycle.
>
>If you actually looked at my UCF files, you would find that I would
>probably have set the "16 ns" to 15, and the "40 ns" to 38, just so there
>was a little safety margin for clock jitter, etc.

Yes, that's what I do to.

My apologies for missing the fact that a DCM divide by 2 output was
used.

Allan

Article: 98373
Subject: XST issue / Answer record does not help
From: "SS" <satpreetsingh@gmail.com>
Date: 8 Mar 2006 22:30:06 -0800
Links: << >>  << T >>  << A >>
I'm facing an issue using TextIO in initialising a ROM block in my
design...

Here's the code snippet with the issue ::

<SNIP>

architecture Behavioral of roms2 is
	type rom_mem_type is array (0 to 31) of std_logic_vector (15 downto
0);
   FILE rom_file_ptr : TEXT open READ_MODE is "E:/roms.txt";


    impure function rom_function(temp : in string)  return rom_mem_type
is
		 variable line_buffer : LINE ;
       variable count: integer := 0;
    	 variable word: bit_vector(1 to 16);
		 variable rom_word_buffer : std_logic_vector(15 downto 0);
       variable rom_buffer : rom_mem_type;


	 begin
       for I in rom_mem_type'range loop

           readline (rom_file_ptr, line_buffer);

				exit when endfile (rom_file_ptr);
           read (line_buffer, word);
--   		  exit when endfile (rom_file_ptr);
           rom_buffer(I) := to_stdlogicvector(word);
		 end loop;
       return rom_buffer;

    end function;

	signal rom_mem : rom_mem_type := rom_function("") ;

</SNIP>

Answer record on ::
http://www.xilinx.com/xlnx/xil_ans_display.jsp?iLanguageID=1&iCountryID=1&getPagePath=22376
does'nt seem to help with this either... The problem just does'nt go
away..

Has anyone figured a way around this ?
Xilinx people pl. help (!)


Article: 98374
Subject: Re: for all those who believe in ASICs....
From: Petter Gustad <newsmailcomp6@gustad.com>
Date: Thu, 09 Mar 2006 08:30:04 +0100
Links: << >>  << T >>  << A >>
jhallen@TheWorld.com (Joseph H Allen) writes:

> A more intersting discussion for me is the best path for converting
> expensive high end FPGA designs into ASICs.  I viewed rapidchip as one of
> these paths- so what's left?  Is this even a big business?

NEC has a structured ASIC family (like the ISSP90).

Petter

-- 
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?



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