name: Wired version: 0.3 homepage: http://www.cse.chalmers.se/~emax/wired/ synopsis: Wire-aware hardware description description: Wired is an extension to the hardware description library Lava targeting (not exclusively) semi-custom VLSI design. A particular aim of Wired is to give the designer more control over on-chip wires' effects on performance. . The goal is a system with the following features: . * Convenient circuit description in monadic style. . * Layout/wiring expressed using optional annotations, allowing incremental specification of physical aspects. . * Export designs to several formats: . (1) Lava (for e.g. verification) . (2) Postscript (for visualizing layout and wiring) . (3) Design Exchange Format (for interfacing to standard CAD tools) . * Accurate, wire-aware timing/power analysis within the system. . * Support for modern standard cell libraries. . * Automatic compilation of standard cell libraries. . We are not very far from this goal. The missing parts are power analysis and cell library compilation, and sequential circuits are not yet fully supported. Also, there is virtually no documentation. The best place to look for guidance is in the @Examples@ directory. The following thesis gives more information about the background and some explanation of programming techniques used in Wired. It should also be said that the library is still quite unstable and has not yet been tested in any larger scale. . The standard cell library shipped with Wired ("Libs.Nangate45.Wired") is an open-source 45nm library from Nangate () provided for the purposes of testing and exploring EDA flows. It is not intended for fabrication. More information is given in the license agreement in "Libs.Nangate45.LICENSE". If anyone is interested in real cell libraries (currently 130nm, 90nm and 65nm from STM), please contact the maintainer of the Wired library. . Currently, Wired contains its own version of Lava which is a bit different from the standard version (package @chalmers-lava2000@ on Hackage) To make things more complicated, this version of Lava actually uses the standard version for simulation and verification. Ideally there should only be /one/ Lava library, independent of the Wired package. Hopefully, this will happen in a not too distant future. category: Language, Hardware license: BSD3 license-file: LICENSE copyright: (c) 2008. Emil Axelsson author: Emil Axelsson maintainer: Emil Axelsson cabal-version: >= 1.6 build-type: Simple data-files: .ghci Examples/UsingLava.hs Examples/UsingWired.hs Examples/Sklansky.hs Examples/Mult.hs source-repository head type: darcs location: http://projects.haskell.org/Wired/ library exposed-modules: Data.Logical.Knot Data.Logical.Let Data.Hardware.Internal Data.Hardware Lava.Patterns Lava.Internal Lava Layout.Internal Layout Wired.Model Wired Analysis.Timing.Library Analysis.Timing Export.DEF Libs.Nangate45.LICENSE Libs.Nangate45.Lava Libs.Nangate45.Wired other-modules: Lava.Model Lava.Loop Lava.Port Lava.Interpret Lava.Misc Layout.Floorplan Layout.Postscript Libs.Nangate45.Timing c-sources: Libs/Nangate45/timing.c build-Depends: base < 10, chalmers-lava2000 >= 1.1 && < 2, containers, mtl, QuickCheck extensions: FlexibleContexts FlexibleInstances ForeignFunctionInterface FunctionalDependencies GeneralizedNewtypeDeriving MultiParamTypeClasses OverlappingInstances OverloadedStrings PackageImports PatternGuards Rank2Types RecursiveDo ScopedTypeVariables StandaloneDeriving TypeSynonymInstances UndecidableInstances