-
Notifications
You must be signed in to change notification settings - Fork 24
Documentation
Leonard (Lenny) Truong edited this page Aug 21, 2018
·
2 revisions
Documentation has moved to https://github.com/phanrahan/magma/tree/master/doc
Types, Operators, and Functions
-
Type hierarchy
- Clock
- Bit
- Array(n,T)
- Bits(n) = Array(n, Bit)
- SInt(n)
- UInt(n)
- Bits(n) = Array(n, Bit)
- Tuple(name0, T0, name1, T1, …, namen, Tn)
-
Operators
- All
- == !=
- Bit
- & | ^ ~
- Bits
- & | ^ ~ >> <<
- UInt, Sint
- >>
- +, -, *, /
- < <= > >=
- All
-
Functions
- concat
- repeat
- zext
- sext
- Circuits
- Circuit instances
- Wiring
- Naming conventions
- Declarations: DeclareCircuit
- Definitions: DefineCircuit, EndCircuit
- class SubCircuit(Circuit)
- Verilog declatations: DeclareFromVerilog, DeclareFromVerilogFile
- Verilog definitions: DefineFromVerilog, DefineFromVerilogFile, DefineFromTemplatedVerilog, DefineFromTemplatedVerilogFile
Higher-Order Circuit functions
- compose
- curry, uncurry
- fork, join, flat
- fold, scan
- braid
- row, col, map_
Appendix: Running the Python Simulator
Appendix: Running on the icestick
Appendix: Logisym