Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > Combinational logic running over multiple clock cycles in Xilinx

Reply
Thread Tools

Combinational logic running over multiple clock cycles in Xilinx

 
 
Taras_96
Guest
Posts: n/a
 
      08-21-2005
Hi everyone

Currently our architecture consists of 1024 really fast loops, with
each result being loaded into a register, followed by a single long
1024 bit ripple carry addition that uses the end result of the 1024
loops, and loads the addition into a register. This entire sequence is
repeated 1024 times. The addition is supposed to take place over
multiple clock cycles - the design has a state machine that allocates
a configurable number of states for this addition to take place. This
is essential because it is undesirable to be running the fast loop at
the frequency it takes to do one extremely long addition.

-----|
| | loop repeated 1024 times
| |
^ v
| REG
| |
-----.
|
|
ADDER
|
v
REG

Everything synthesises fine, and Xilinx spits out a maximum clock
frequency at the end of the synthesis. However, I suspect that the
value of the clock frequency obtained assumes that the addition
operation between the two registers should be completed in one clock
cycle (I don't see why Xilinx would assume otherwise).

My question is: is there anyway of either telling Xilinx that the
addition is supposed to take over multiple clock cycles or using Xilinx
or its results to determinine the maximum clock frequency assuming that
the addition takes place over a variable number of clock frequencies?

TIA

Taras

 
Reply With Quote
 
 
 
 
mk
Guest
Posts: n/a
 
      08-21-2005
On 20 Aug 2005 23:41:15 -0700, "Taras_96" <(E-Mail Removed)> wrote:

>Hi everyone
>
>Currently our architecture consists of 1024 really fast loops, with
>each result being loaded into a register, followed by a single long
>1024 bit ripple carry addition that uses the end result of the 1024
>loops, and loads the addition into a register. This entire sequence is
>repeated 1024 times. The addition is supposed to take place over
>multiple clock cycles - the design has a state machine that allocates
>a configurable number of states for this addition to take place. This
>is essential because it is undesirable to be running the fast loop at
>the frequency it takes to do one extremely long addition.
>
>-----|
>| | loop repeated 1024 times
>| |
>^ v
>| REG
>| |
>-----.
> |
> |
> ADDER
> |
> v
> REG
>
>Everything synthesises fine, and Xilinx spits out a maximum clock
>frequency at the end of the synthesis. However, I suspect that the
>value of the clock frequency obtained assumes that the addition
>operation between the two registers should be completed in one clock
>cycle (I don't see why Xilinx would assume otherwise).
>
>My question is: is there anyway of either telling Xilinx that the
>addition is supposed to take over multiple clock cycles or using Xilinx
>or its results to determinine the maximum clock frequency assuming that
>the addition takes place over a variable number of clock frequencies?
>
>TIA
>
>Taras


You should read about multi-cycle path exceptions in your timing
analysis tool documentation and set some constraints accordingly.
Also remember that a multi-cycle path helps you meet timing and/or
reduce area. I don't know your speed requirements but you say you are
using a ripple carry adder. If you're really meeting timing with a
ripple carry adder then you don't need to go any faster and you can't
add in less area than a carry ripple adder. So a multi-cycle path may
not help you. Of course you can divide the adder into multiple
sections and add smaller numbers at a time to reduce the area of your
adder.
HTH.
 
Reply With Quote
 
 
 
 
Taras_96
Guest
Posts: n/a
 
      08-22-2005
Thanks for the tip - my timing constraints are that the clock frequency
should be set at the speed the top (fast) loop runs, leaving the
(comparatively slow) ripple carry adder to execute over multiple clock
cycles.

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Free PDF Combinational Logic book download that introduces Quartus II prairiefalcons@gmail.com VHDL 1 02-25-2013 10:08 AM
combinational logic in reference design Mike Treseler VHDL 0 03-01-2007 03:31 PM
Program for drawing clock cycles? Allan Herriman VHDL 2 03-21-2006 01:15 PM
Simplifying this combinational logic? Shawn VHDL 2 02-27-2006 04:24 AM
Problem with Clock signals generated by combinational logic GuitarNerd VHDL 8 05-19-2005 05:16 PM



Advertisments