Build your hardware, easily!
Go to file
Alain Péteut 97fece249d setup.py: simplify
Signed-off-by: Alain Péteut <alain.peteut@yahoo.com>
2012-03-11 00:52:13 +01:00
doc doc: more examples and comments 2012-03-10 19:38:39 +01:00
examples doc: more examples and comments 2012-03-10 19:38:39 +01:00
migen fhdl: handle negative constants correctly 2012-03-08 20:49:24 +01:00
vpi vpi: support extra include directories 2012-03-08 18:14:40 +01:00
.gitignore doc: switch to sphinx 2012-03-09 17:08:38 +01:00
README doc: cosmetic changes (thanks sh4rm4 for reporting typos) 2012-03-10 17:59:42 +01:00
setup.py setup.py: simplify 2012-03-11 00:52:13 +01:00

README

Migen (Milkymist Generator)
  a Python toolbox for building complex digital hardware

Migen aims at automating further the VLSI design process. Migen makes it
possible to apply modern software concepts such as object-oriented
programming and metaprogramming to design hardware. This results in more
elegant and easily maintained designs and reduces the incidence of human
errors. Built on these principles, it also provides tools to build
synchronous designs more productively, integrate system-on-chips, design
dataflow systems, and more. Migen will become the foundation for the
next-generation Milkymist SoC.

See the doc/ folder for a more complete description.

Code repository:
https://github.com/milkymist/migen
Experimental version of the Milkymist SoC based on Migen:
https://github.com/milkymist/milkymist-ng

Migen is designed for Python 3.2.

Send questions, comments and patches to devel [AT] lists.milkymist.org
We are also on IRC: #milkymist on the Freenode network.

Migen is free software: you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation, version 3 of the License. This program is
distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
more details.

Additional permissions under section 7 of the GNU General Public License
(GPL) are hereby granted. The purpose of this exception is to allow
non-GPL (including proprietary) logic cores to be used in conjunction
with code generated by Migen in a design.

"Generated" code refers to Verilog or VHDL code that has been obtained
by converting FHDL structures using Migen.

To "instantiate" is to include and connect another module as specified
in section 12.1.2 of the IEEE standard 1364-2001 or in section 9.6 of
the IEEE standard 1076-1993.

(1) You have permission to propagate a work of generated code that
    instantiates modules that are not generated code and do not comply
    with the GPL.
(2) You have permission to propagate a work of Verilog or VHDL code that
    is not generated code, does not comply with the GPL and instantiates
    generated code.

The availability of this exception does not imply any general
presumption that third-party software is unaffected by the copyleft
requirements of the license of Migen.

Unless otherwise noted, Migen's source code is copyright (C) 2011-2012
Sebastien Bourdeauducq. Other authors retain ownership of their
contributions. If a submission can reasonably be considered
independently copyrightable, it's yours and I encourage you to claim it
with appropriate copyright notices. This submission then falls under the
"otherwise noted" category. All submissions must use a license
compatible with the GPL and the exception above.

  "Electricity! It's like magic!"