[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gEDA-user: putting it all together



[ Ales here, I'm reposting this since majordomo didn't recognize the
  e-mail as being subscribed to the geda-dev mailinglist. ]

-- Cut here --
From: Jeff Storm <storm@chip-art.com>

Hi,

  Interesting ideas, but I think the problems are much more
 complicated. There is a releationship between cell size, or
 drive strength, and the distance the signal (wire) travels.

  Anything that makes the leap from "Icarus Verilog" to a
 "Magic .mag" needs to understand the impact of placement,
 distances, and wire lenghts to connect the different points
 each signal must hit... see -> Synopsys Physical Compiler

  A clock tree for a "flat" design might seem easy enough,
 but for a "hierarchal" designs (with  or modules)
 you need to keep track of the insertion delays for each
 branch of the clock tree... all the way down to the last
 flip-flop and memory component. This isn't too hard to keep
 track of, it's just easy to overlook it at first.

  I've had problems with clock trees that need to deliver
 a clock before the data to a "subsystems" (or module) that
 had it's own clock tree embedded in it. Even standard EDA
 tools don't have that case covered.

  FYI: I love Magic, limitations and all, used it and hacked
 at the code for aprox 10 years. Physical Designer - IC Layout
 designer by profession. I'm just learning about Icarus, and
 I'm a Sun/Solaris user type of software hack.

                       -J.Storm

cfk@pacbell.net wrote:
>
> It also seems that the placement issue can be modularized.
> A clock tree can be designed and placed seperately from
> various Verilog modules (or subsystems). It would seem that
> subsystems (or modules) would need to be placed in groups
> with their associated RatsNests displayed so that the members
> of the group can be re-arranged for appropriate signal placement.
> After the modules have been placed, then the routing can proceed.
> I know some of this borrows from PCB layout concepts, but I
> think it is basically a very similar problem