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 74400

Article: 74400
Subject: Re: DCM and CLKFX - is this allowed?
From: John Williams <jwilliams@itee.uq.edu.au>
Date: Mon, 11 Oct 2004 07:54:33 +1000
Links: << >>  << T >>  << A >>
Hi John,

John wrote:
> John Williams <jwilliams@itee.uq.edu.au> wrote in message news:<ck1rpt$ubf$1@bunyip.cc.uq.edu.au>...
> 
>>Austin Lesea wrote:
>>
>>>I refer to this as a 'tap dance.' (please forgive my humor, but it is 
>>>part of my personality....)
> 
> Austin,
>   Keep it up, I for one enjoy the pun-ishment.

Yes, it certainly keeps the punters happy.

>>I'm picturing a self-reconfiguring microblaze uClinux system dynamically 
>>scaling its own clock...
> 
> 
>   I'd suggest a numerically controlled oscilator (NCO) / scaling
> accumulator / DDFS (see http://www.xilinx.com/xcell/xl31/xl31_32.pdf).
> In the latest parts, you can clock a 10 bit accumulator at >500 MHz,
> allowing your microblaze to run up to 250MHz (do they go that fast?
> I'll be using one soon). 

I think Microblaze fmax is somewhere around 150MHz these days, but 
climbing all the time esp in V4.

> You would get more resolutions than the
> 5-bits M, 5-bits D of the CLKFX. If you are scaling the clock for
> power conservation, you probably would not need more than 6 bits.
> Also, no worries about the period dropping below the minimum that the
> microblaze configuration was routed for. And far easier to program
> than partial re-config.

Thanks for the tip - certainly much easier than partial reconfig.

I confess a strange desire to find useful things to do with partial 
reconfiguration - however as the devices get bigger and faster, the 
candidate set seems to get smaller and smaller.  Perhaps if it weren't 
so painful re: tools and design flow (and I hear there are changes in 
the wind that might answer that wish)

Cheers,

John

Article: 74401
Subject: Re: JOP on Spartan-3 Starter Kit
From: "Martin Schoeberl" <martin.schoeberl@chello.at>
Date: Sun, 10 Oct 2004 21:56:45 GMT
Links: << >>  << T >>  << A >>
At the moment I'm playing around with Kolja's changes and Pauls Quartus 
suggestions. Setting the PLL factor to different values (to relax the 
timing constraints for smaller area) gives some surprising Fmax results 
from the timing analyzer:
fin is always 20 MHz, LC count stays the same.

PLLout = 50 MHz => Fmax = 131 MHz
PLLout = 100 MHz => Fmax = 100 MHz
PLLout = 120 MHz => Fmax = 101 MHz

The first line is really strange!

Martin
-- 
----------------------------------------------
JOP - a Java Processor core for FPGAs:
http://www.jopdesign.com/ 



Article: 74402
Subject: Re: JOP on Spartan-3 Starter Kit
From: Jim Granville <no.spam@designtools.co.nz>
Date: Mon, 11 Oct 2004 11:27:07 +1300
Links: << >>  << T >>  << A >>
Martin Schoeberl wrote:
> At the moment I'm playing around with Kolja's changes and Pauls Quartus 
> suggestions. Setting the PLL factor to different values (to relax the 
> timing constraints for smaller area) gives some surprising Fmax results 
> from the timing analyzer:
> fin is always 20 MHz, LC count stays the same.
> 
> PLLout = 50 MHz => Fmax = 131 MHz
> PLLout = 100 MHz => Fmax = 100 MHz
> PLLout = 120 MHz => Fmax = 101 MHz
> 
> The first line is really strange!

Have you tried these files in real systems ?
The timing numbers (presume after P&R?) will be corner values,
but you should be able to overclock until it fails,
and then get usefull RELATIVE speed limit comparisons.
-jg


Article: 74403
Subject: Re: JOP on Spartan-3 Starter Kit
From: "Martin Schoeberl" <martin.schoeberl@chello.at>
Date: Sun, 10 Oct 2004 22:33:51 GMT
Links: << >>  << T >>  << A >>
>> At the moment I'm playing around with Kolja's changes and Pauls 
>> Quartus suggestions. Setting the PLL factor to different values (to 
>> relax the timing constraints for smaller area) gives some surprising 
>> Fmax results from the timing analyzer:
>> fin is always 20 MHz, LC count stays the same.
>>
>> PLLout = 50 MHz => Fmax = 131 MHz
>> PLLout = 100 MHz => Fmax = 100 MHz
>> PLLout = 120 MHz => Fmax = 101 MHz
>>
>> The first line is really strange!
>
> Have you tried these files in real systems ?
> The timing numbers (presume after P&R?) will be corner values,
> but you should be able to overclock until it fails,
> and then get usefull RELATIVE speed limit comparisons.
> -jg
>
I've worked with the 100 MHz setting, but I don't want to overclock the 
FPGA. I just want to get 'safe' values. I don't understand the different 
Fmax reports when only the PLL multiplication factor changes.
As there is no 'external' fmax constraint the way I want to go is: Obtain 
fmax from one compilation (with any PLL setting) and than set the PLL 
factor to this limit. With the above results it seems not so easy.

Martin 



Article: 74404
Subject: Re: JOP on Spartan-3 Starter Kit
From: Jim Granville <no.spam@designtools.co.nz>
Date: Mon, 11 Oct 2004 13:30:21 +1300
Links: << >>  << T >>  << A >>
Martin Schoeberl wrote:

>>>At the moment I'm playing around with Kolja's changes and Pauls 
>>>Quartus suggestions. Setting the PLL factor to different values (to 
>>>relax the timing constraints for smaller area) gives some surprising 
>>>Fmax results from the timing analyzer:
>>>fin is always 20 MHz, LC count stays the same.
>>>
>>>PLLout = 50 MHz => Fmax = 131 MHz
>>>PLLout = 100 MHz => Fmax = 100 MHz
>>>PLLout = 120 MHz => Fmax = 101 MHz
>>>
>>>The first line is really strange!
>>
>>Have you tried these files in real systems ?
>>The timing numbers (presume after P&R?) will be corner values,
>>but you should be able to overclock until it fails,
>>and then get usefull RELATIVE speed limit comparisons.
>>-jg
>>
> 
> I've worked with the 100 MHz setting, but I don't want to overclock the 
> FPGA. I just want to get 'safe' values. I don't understand the different 
> Fmax reports when only the PLL multiplication factor changes.
> As there is no 'external' fmax constraint the way I want to go is: Obtain 
> fmax from one compilation (with any PLL setting) and than set the PLL 
> factor to this limit. With the above results it seems not so easy.

  Understood. I was giving a suggestion for a way to check which numbers
are correct - it does sound like something is in error.
  Reminds me of the saying
  "A man with one watch always knows that time it is,
   A man with two is never sure"   :)
-jg



Article: 74405
Subject: Re: Use Xilinx VP20 with 2 ppc and one DRAM chip
From: John Williams <jwilliams@itee.uq.edu.au>
Date: Mon, 11 Oct 2004 12:03:28 +1000
Links: << >>  << T >>  << A >>
Hi Tony,

T Lee wrote:
> What's the easiest way to partition one 128 MB dram into 
> two 64 MB sections with each section control by one of the 
> ppc in the VP20?

I don't know any easy ways - but there are at least two fairly hard ways:

1 - as you suggest, somehow mux the physical off-chip interface between 
two independent controllers.  This is going to be tricky to say the 
least, and probably quite inefficient, depending on how much L1/L2 cache 
you have to play with.  You'd need some sort of arbiter that can 
selectively stall one of the controllers, and switch the mux in such a 
way that it all works seamlessly.  Maybe not as hard as a I think, but 
surely not easy.

2 - implement a classic SMP (symmetric multiprocessing) architecture 
with the two PPCs tied to a common bus, bus arbiters, a single memory 
interface and so on.  I'm not sure how the PPC architecture typically 
implements SMP, and if the V2Pro / PLB can support it without radical 
effort.

Also this results in all memory being shared (at least at the physical 
level, you could use the VM capabilities of the processors to make it 
look like they are distinct).


If what you really want is two completely independent PPC systems it 
could be easier to build/buy a more suitable board.  Take a look at the 
Insight/Memec V2P20/30/50 boards, they have dual independent SDRAM banks 
for exactly this purpose.

http://www.insight.na.memec.com/Memec/iplanet/link1/VirtexIIPro_FF1152_2.pdf

There may be others as well.

> Also if I like to have some special fpga logic to 
> 
>    * offload some special ppc packet processing functions 
>    * the functions require access the DDR used and update by the 
>      ppc CPU at the same time.

Interesting questions, with no easy answers.   If you make your custom 
processing logic bus master capable, then in principle you could use DMA 
to handle all of this.  You need to be careful that you don't end up in 
a bus-bound mess, losing any performance gains that might otherwise be 
achieved with the hardware offloading in the first place!

It depends on the nature of what you are trying to do - if it is heavy 
on the computation, and light on the communication, then it's not so 
bad.  However, if the opposite is true, you will end up saturating the bus.

Regards,

John

Article: 74406
Subject: Micromechatronics, is there money in this area?
From: "Kelvin" <kelvin_xq@yahoo.com>
Date: Mon, 11 Oct 2004 10:23:54 +0800
Links: << >>  << T >>  << A >>
Hi, there:

I was working in ASIC/FPGA industry and I came across a book
Miceomechatronics by Kenji Uchino.
It reminded me of all the mechanics knowledge I learnt in the university and
high school.

Is there many opportunities in this field?

Thanks.
Kelvin





Article: 74407
Subject: Re: Interfacing an 1GS ADC
From: Ray Andraka <ray@andraka.com>
Date: Sun, 10 Oct 2004 22:53:51 -0400
Links: << >>  << T >>  << A >>
240 MHz, 4 samples per clock coming in

Marc Randolph wrote:

> Ray Andraka <ray@andraka.com> wrote in message news:<41649515.80D21B73@andraka.com>...
> > I did a design a couple years ago in a VirtexE-7 that interfaced to an
> > Atmel 1GHz 8 bit ADC.  IIRC, that ADC output 4 samples at a time (perhaps
> > there was a matching mux chip).  Once inside the FPGA the signal was
> > mixed and FFT'd.  The incoming sample rate was 960MHz.  So yes, the
> > answer is most current FPGAs can handle the throughput with some
> > clever/careful design.  The new crop of FPGAs are considerably faster
> > than the VirtexE devices.
>
> Howdy Ray,
>
>    How fast were your IOB's toggling on that design?  Was it really
> 960 MHz?  A coworker and I got to looking yesterday, and it appears
> that the general purpose IOB hasn't really gained any clock rate
> performance since VirtexE - all the way to now with the Virtex4.  We
> were hoping to do 1.25 GHz LVDS (or any other standard), but our FAE
> is steering us away from doing anything much over 840 or 900 MHz.
> Comments from Xilinx reps also welcome...
>
> BTW, Alex, I agree with Ray.  500 MHz LVDS should be doable without
> alot of grief.  Just be aware that the internal termination can be
> less than ideal.
>
> Have fun,
>
>    Marc
>
> > Alex wrote:
> > >
> > > It's not the first time this question has been asked, but I'd like to
> > > know todays state of art:
> > > Are their any devices at Altera, Xilinx or others, capabable of
> > > handling the fast throughput of high-speed ADCs (1 GS), such as
> > > Atmel's AT84AD001B or NS ADC08D1000 ? Preferably without an external
> > > DMUX-device...
> > > Using the ADC's internal DEMUX leaves us with 16 500 MHz LVDS lines
> > > per channel.
>
> --
>  Marc Randolph
>  Reply address is a spam trap.  Please post responses.

--
--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: 74408
Subject: Re: Sine function implementation in FPGA
From: Ray Andraka <ray@andraka.com>
Date: Sun, 10 Oct 2004 22:56:59 -0400
Links: << >>  << T >>  << A >>
I just answered a similar question last Tuesday.  Google for it in this
newsgroup

Sine function implementation in FPGA??
       Date:
           Tue, 05 Oct 2004 19:14:29 -0400
      From:
           Ray Andraka <ray@andraka.com>
 Organization:
           Andraka Consulting Group, Inc
  Newsgroups:
           comp.arch.fpga
  References:
           1



SD wrote:

> Hi all,
> I am trying to implement a DSP algorithm in a FPGA. My algorithm has
> sine and cosine functions in it. Can somebody comment on implementing
> sine and cosine functions in VHDL or MATLAB fixed point (using fixed
> point toolbox).
> Thanks,
> SD

--
--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: 74409
Subject: Re: Xilinx Multiple Clock Domains
From: Ray Andraka <ray@andraka.com>
Date: Sun, 10 Oct 2004 23:03:29 -0400
Links: << >>  << T >>  << A >>
The copy of the clock is a signal that is clocked by the faster clock such that
it is a duplicate of the lower speed clock.  I usually use a 90 degree version
of the slower clock as the reference for the clock copy to make sure it is in
phase with the real slower clock..  How it helps is it gives you a phase
reference in the faster clock domain so that you know which cycle is the one
where you can change the interface flip-flop values knowing that it will occur
away from the active edge in the slower domain.

Brad Smallridge wrote:

>
> Ray Andraka suggested making a copy of the slow clock in the fast domain,
> and using that signal as a clock enable, I guess in the fast domain?  I'm
> not sure how this helps.  The idea of using 90/270 clocks to get rid of skew
> issues seems good.
>
> I have found XAPP253 which is an DDR SDRAM controller with some of the same
> issues.  Trying to work through that.

--
--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: 74410
Subject: Re: Newbie, Altera vs Xilinx
From: Derek_SImmons@msn.com (Derek Simmons)
Date: 10 Oct 2004 21:08:51 -0700
Links: << >>  << T >>  << A >>
Burched has an interesting product line (http://www.burched.biz/).
Their products let you build a system to meet your needs.

Derek

Article: 74411
Subject: Re: Use Xilinx VP20 with 2 ppc and one DRAM chip
From: Peter Ryser <peter.ryser@xilinx.com>
Date: Sun, 10 Oct 2004 21:16:57 -0700
Links: << >>  << T >>  << A >>
Tony,

> What's the easiest way to partition one 128 MB dram into 
> two 64 MB sections with each section control by one of the 
> ppc in the VP20?

if you do not have any specific requirements (like "either one of the 
two processors must see its part of the memory at address zero") it is 
straight forward:

1) hook up both PPC to the same PLB together with the PLB SDRAM controller
2) write seperate linker scripts for each of the two processors. The 
first processor uses the memory in [0,64[ and the second one uses [64,128[.

- Peter


Article: 74412
Subject: Re: Use Xilinx VP20 with 2 ppc and one DRAM chip
From: John Williams <jwilliams@itee.uq.edu.au>
Date: Mon, 11 Oct 2004 15:50:37 +1000
Links: << >>  << T >>  << A >>
Hi Peter,

Peter Ryser wrote:

>> What's the easiest way to partition one 128 MB dram into two 64 MB 
>> sections with each section control by one of the ppc in the VP20?
> 
> if you do not have any specific requirements (like "either one of the 
> two processors must see its part of the memory at address zero") it is 
> straight forward:
> 
> 1) hook up both PPC to the same PLB together with the PLB SDRAM controller
> 2) write seperate linker scripts for each of the two processors. The 
> first processor uses the memory in [0,64[ and the second one uses [64,128[.

Nice solution - what will the caches do in this configuration? 
Duplicate / thrash?  Get incoherent?

John

Article: 74413
Subject: Routing PLL output
From: ALuPin@web.de (ALuPin)
Date: 10 Oct 2004 23:43:19 -0700
Links: << >>  << T >>  << A >>
Hi,

I have decided to post this problem again because it has gone down
in my last post, so here it is;

How do I route the output of the PLL (Altera Cyclone) to the PLL_OUT+
and PLL_OUT- pins for differential clock use?
I mean the PLL has only one output ... Do I have to create an inverted clock -
only by an inverter ?


How do I have to make clock settings to get differential clocks?

Thank you for your help.

Kind regards

Andre

Article: 74414
Subject: Actel Fusefile Reverse Engineering
From: tatto0_2000@yahoo.com (Wong)
Date: 11 Oct 2004 01:29:26 -0700
Links: << >>  << T >>  << A >>
Hi,
  I am a Actel 54SXA family user. I would like to get from the
fusefile what I/O standard I have selected in my Designer software
(i.e. PCI, LVTTL). Is that possible ? I am doing so because I have
been messed up my files and I cant trace back.
  Thanks in advance.

Article: 74415
Subject: CORDIC NCO Frequency resolution?
From: cjmurillo@costarricense.cr (Carlos Murillo)
Date: 11 Oct 2004 02:29:46 -0700
Links: << >>  << T >>  << A >>
Hello everybody!!

Maybe some CORDIC guru's can help me???

I've seen a lot of papers, designs and cores and I still don't
understand
why always everybody offers (for example) a Frequency Resolution of
32bit when at the input of CORDIC's block the angle just have
16bits+guard bits(log2(16)) = 20 bits. That's not a 32 bits
resolution!!!! The phase offset is 16 bits, That's OK but 32 bits
frequency resolution!!!! I think maybe it's all about the guard bits
but I'm not sure!!! Can some one please Help me to understand it!!!!
Thank's for your time!!!

Carlos Murillo

Article: 74416
Subject: Re: VHDL help needed ($)
From: narenkumaraguru@yahoo.co.uk (Narendran Kumaraguru Nathan)
Date: 11 Oct 2004 02:35:43 -0700
Links: << >>  << T >>  << A >>
Hi Gary,
  I am working in TooMuch Semiconductor solutions www.toomuchsemi.com.
This is a startup (2 months old) and focuses on providing EDA &
Verification solutions. We have experianced engineers in Design and
Verification.
  We can help you do this, and we don't expect anything in return. The
work doesn't include any risk/responsiblity from our part.
  We'll do this design and post it in the groups itself.
Thanks & Regards,
Naren.

garyswindell@hotmail.com (G Swindell) wrote in message news:<4ae002c2.0410101308.1ff35942@posting.google.com>...
> I need to accomplish the following using the Spartan-3 Starter Kit.
> This is a small part of my overall project and I don't have time to do
> it.
> 
> Inputs-
> 
> 5V differential quadrature (A+ A- B+ B-) signal
> Enable (active high)
> Counter Reset (active high)
> 
> Output-
> 
> Trigger Pulse (active low)
> 
> 
> Specifics-
> 
> I need a trigger pulse that is n clocks wide (n should be changeable
> in code- pulse length will need to range between 10us and 500us)
> whenever the quadrature counter (24 bit) increments/decrements by x
> counts (x should be changeable in code and will range from around 15
> to 200).  Quadrature input max speed is 7.8mhz.  The trigger pulse
> should only be output when the enable signal is active (the counter
> can run all the time).
> 
> I am not asking for free help, I just need a complete solution and I
> will pay for it ;)
> 
> Thanks,
> 
> Gary

Article: 74417
Subject: Multiple Access on long lines
From: Thomas Reinemann <thomas.reinemann@masch-bau.uni-magdeburg.de>
Date: Mon, 11 Oct 2004 11:37:40 +0200
Links: << >>  << T >>  << A >>
Hello,

I have the problem to discern whether a long line in my VirtexII is used 
(driven just in this moment). Furthermore against the background of 
partial reconfiguration I can't use a central arbitration. Each module 
shall listen and decide whether it can activate it's TBUF or not.

Any hints?

Bye Tom.

Article: 74418
Subject: Re: Spartan 3 Kit
From: Shalin Sheth <Shalin.Sheth@xilinx.com>
Date: Mon, 11 Oct 2004 02:56:48 -0700
Links: << >>  << T >>  << A >>
Brad,

The design was done using MicroBlaze and the Embedded Development Kit 
(EDK).  The project was built from the MicroBlaze Master System.
http://www.xilinx.com/products/spartan3/s3boards.htm

There is a VGA controller core in the project and if you look at the 
source code and the output to the VGA port in the Master System then you 
should be able to decipher what character maps to what value in the RAM.

If you are using the core outside of the EDK environment then you will 
have to make changes to the source code files as they to use some 
Libraries only found in the EDK tools.

Cheers,
Shalin-

Brad Smallridge wrote:
> Where is the demo software for this wonderful Spartan 3 kit?
> 
> I was most surprised when I plugged in a VGA monitor and saw
> all the switches, buttons, and jumper dispalyed in multicolors.
> 
> Does the keyboard input do something as well?
> 
> 
> 


Article: 74419
Subject: Unguided slices
From: mlms@fe.up.pt (Miguel Silva)
Date: 11 Oct 2004 03:48:31 -0700
Links: << >>  << T >>  << A >>
Hello

I'm trying to perform some partial reconfiguration experiments using
EDK/ISE 6.2 on Virtex2 PRO. My design includes 3 modules, one
reconfigurable and 2 fixed. One fixed module includes the PPC and some
of the basic peripherals, one of the peripherals is included in the
other fixed module the connection between the two is made is made
without  the TBUFs, but that shouldn't pose a problem according to a
recent article from Xilinx.
My problem is this, when I reach the assembling stage my final design,
when I manage to avoid the recurrent
"FATAL_ERROR:Guide:basgitaskphyspr.c:255:1.28.20.2:137" and
"FATAL_ERROR:Ncd:basncsignal.c:283:1.39.8.2" errors, always as some
unrouted lines that I canīt route even and in the FPGA_EDITOR, the
problem seems to come from the fact that in the main module there are
always some unguided slices, I tried changing the parameters of
ngdbuild and map but I only managed to change the slices that are
unguided.

My questions are these:

As anyone made successful attempts at partial reconfiguration with
similar designs, or at least one with PPC and peripherals?

Is it essential to get a 100% guided design or is it possible to
achieve partial reconfiguration without it?

The slices seems to be unguided because their structure changes from
the module stage to the assemble stage, registers are missing or
change places, any ideas on why this could be happening?

Thanks

Miguel Silva

Article: 74420
Subject: Re: Interfacing an 1GS ADC
From: Marc Randolph <mrand@my-deja.com>
Date: Mon, 11 Oct 2004 06:37:05 -0500
Links: << >>  << T >>  << A >>
Symon wrote:
 >>Just be aware that the internal termination can be
 >>less than ideal.
 >
> Care to relate your experiences of the internal termination? I've had no
> trouble at 600Mbit/s data and a 600MHz clock. Some of my colleagues have
> mentioned that they've run into problems, and they've reverted to fitting
> external 100R resistors.

Howdy Symon,

    We are using the internal _DT resistors on a V2P7 for receiving a 
LVDS clock that is slightly over 600 MHz, as well as the source 
synchronous data that goes along with it.  It technically works (we 
never have bit errors over all operating conditions), but using a 
differential probe at the vias immediately below the inputs pins show 
that there isn't much margin - the signal quality looks pretty poor.

A more serious problem that we had was with a 600+ MHz GCLK input.  What 
we believe we discovered was that a nearby GCLK input with a single 
ended 3.3V 66 MHz clock was affecting its signal quality enough that 
we'd sometimes miss clocks.  The 66 MHz clock looked good (no excessive 
overshoot or other noise on it).  Lowering the frequency to 311 MHz, 
with no change to routing, fixed the problem.

Have fun,

    Marc

Article: 74421
Subject: Re: CORDIC NCO Frequency resolution?
From: Ray Andraka <ray@andraka.com>
Date: Mon, 11 Oct 2004 09:48:42 -0400
Links: << >>  << T >>  << A >>
There is a difference between phase resolution and frequency
resolution.  Typically, you'll have a phase accumulator that adds some
fixed increment to itself every clock cycle.  The increment value sets
the frequency, which is the frequency of the accumulator wrap-arounds.
The frequency is Fo = Fc*N/(2^k) where Fc is the clock frequency, N is
the increment value (integer) and k is the number of bits in the phase
accumulator.  The more bits in the accumulator, the finer the resolution
to which you can set the frequency.  The CORDIC width does not affect
the frequency at all, rather it will affect the noise added by the
CORDIC.  You have several factors here:  number of iterations, width of
I and Q paths and width of phase path.

First, look at the number of iterations.  If we assume for the moment
that there is infinite precision in the I and Q data paths as well as in
the phase accumulator path, then each iteration performs a perfect
rotation with no error, but the angle of rotation is fixed at the
elemental angle for that iteration.   If you limit the number of
iterations, you limit the total number of possible rotation
angles...that is limiting the number of iterations introduces a phase
error in the rotated output.  There is no amplitude error due to
limiting the number of iterations.

Next, lets consider limited precision in the phase accumulators.  Again,
we'll assume infinite precision in the I and Q paths.  If the phase
accumulator width is limited, we introduce a truncation/rounding error
in the phase for each iteration accomplished.  Again, the error is only
in phase angle, not in amplitude.

In both the above cases, the phase error is not cumulative from sample
to sample, so it manifests itself as phase noise.  Note this has no
effect on the average frequency, and that there is no amplitude noise.

Finally, in the case of limited precision I and Q, the rotations are no
longer perfect, as there is a rounding or truncation error on sum at
each iteration. The result is the rotated vector is forced to fall on a
retangular grid, which introduces both angular and magnitude errors.
Again, there is no effect on the average phase or amplitude, but the
instantaneous values will have some error bounded by the resolution of
the IQ grid defined by the I and Q resolution.  The extra LSBs, which
you are calling guard bits are there to make the I and Q truncation
error smaller with respect to the signal, and therefore reduce this
noise source.

I hope this helps explain it.

Carlos Murillo wrote:

> Hello everybody!!
>
> Maybe some CORDIC guru's can help me???
>
> I've seen a lot of papers, designs and cores and I still don't
> understand
> why always everybody offers (for example) a Frequency Resolution of
> 32bit when at the input of CORDIC's block the angle just have
> 16bits+guard bits(log2(16)) = 20 bits. That's not a 32 bits
> resolution!!!! The phase offset is 16 bits, That's OK but 32 bits
> frequency resolution!!!! I think maybe it's all about the guard bits
> but I'm not sure!!! Can some one please Help me to understand it!!!!
> Thank's for your time!!!
>
> Carlos Murillo

--
--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: 74422
Subject: Re: Xilinx DCMs
From: hmurray@suespammers.org (Hal Murray)
Date: Mon, 11 Oct 2004 07:07:43 -0700
Links: << >>  << T >>  << A >>

Article: 74423
Subject: Re: Use Xilinx VP20 with 2 ppc and one DRAM chip
From: tony.p.lee@gmail.com (T Lee)
Date: 11 Oct 2004 07:15:23 -0700
Links: << >>  << T >>  << A >>
John Williams <jwilliams@itee.uq.edu.au> wrote in message news:<ckd6rb$c62$1@bunyip.cc.uq.edu.au>...
> Hi Peter
> > 
> > 1) hook up both PPC to the same PLB together with the PLB SDRAM controller
> > 2) write seperate linker scripts for each of the two processors. The 
> > first processor uses the memory in [0,64[ and the second one uses [64,128[.
> 
> Nice solution - what will the caches do in this configuration? 
> Duplicate / thrash?  Get incoherent?
> 
> John

John, Peter, Thanks both for reply.

Caches will be fine for the application I have in mind, since each PPC will 
run different application without share any common data structures.

Worst case, I can use volatile with the data structures access and also 
design the code/structure that one always read, the other always write.

> Interesting questions, with no easy answers.   If you make your custom 
> processing logic bus master capable, then in principle you could use DMA 
> to handle all of this.  You need to be careful that you don't end up in 
> a bus-bound mess, losing any performance gains that might otherwise be 
> achieved with the hardware offloading in the first place!
> 
> It depends on the nature of what you are trying to do - if it is heavy 
> on the computation, and light on the communication, then it's not so 
> bad.  However, if the opposite is true, you will end up saturating the bus.
> 

For an application that needs to process 1-2 millions packets per seconds, 
    process = 
       * look at the headers and some data structures and make forwarding
         decision, 
       * append packets descriptor to various Qs.
       * A TX engine, check all Qs and tx them out to RIO base on time and 
         QOS setting,  update counter values in the DDR.

The packets is already stored in a different DDR.  This process only need to 
controls the DMA descriptors of the packets at the rate of 1-2 millions per second.

    Thanks again for both of your comments.

-Tony

Article: 74424
Subject: low cost MPEG4 codec (from Atmel )
From: tony.p.lee@gmail.com (T Lee)
Date: 11 Oct 2004 07:45:20 -0700
Links: << >>  << T >>  << A >>
I don't work for Atmel.  I am interested in knowing how they did it.
(I am using Xilinx at this time - a few very expensive one.) 


Since it is from a fpga company, I wonder if it use one of those
FPGA 2 ASIC conversion process to get such low cost price pointer
for such complex chip.  


I wonder if has anyone done similar complex SOC chip with
xilinx/altera?

....
The AT76C120 device supports high performance still-image and video
decoding of media files encoded according to JPEG, MPEG4, MPEG1,
Motion JPEG
standards 
....
The AT76C120 is compatible with its predecessors, and is an integrated
ARM7TDMI processor that controls the entire application and manages
file-system, decoding and display functions. All necessary
peripherals, including TV video output, USB, UART and SPI, and digital
audio interfaces, have been integrated on the chip
....

http://www.prnewswire.com/cgi-bin/stories.pl?ACCT=109&STORY=/www/story/10-04-2004/0002264661&EDATE=

http://www.atmel.com/dyn/resources/prod_documents/5676s.pdf


-Tony



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