Difference between revisions of "Using FPGA"
From ArmadeusWiki
(→Design Tools) |
(→Automatize FPGA design making) |
||
(7 intermediate revisions by the same user not shown) | |||
Line 16: | Line 16: | ||
* '''APF51''': [[IMX51-Spartan6 interface description]] | * '''APF51''': [[IMX51-Spartan6 interface description]] | ||
* '''APF6_SP''': [[APF6_SP Interfaces description]] | * '''APF6_SP''': [[APF6_SP Interfaces description]] | ||
+ | * '''OPOS6UL_SP''': [[OPOS6UL_SP Interfaces description]] | ||
| width="50%" | | | width="50%" | | ||
Line 57: | Line 58: | ||
* [[Diamond | Install Lattice Diamond]] | * [[Diamond | Install Lattice Diamond]] | ||
+ | '''Microsemi''' | ||
+ | * [[Libero | Install Libero]] | ||
|---------------- | |---------------- | ||
Line 68: | Line 71: | ||
For complex projects, POD should be used to simplify design. | For complex projects, POD should be used to simplify design. | ||
− | ==== [[ | + | ==== [[FuseSoC]] ==== |
− | + | FuseSoC is a builder written in Python used to automatize FPGA constructions | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
| width="50%" | | | width="50%" | | ||
+ | |||
+ | === HDL === | ||
===VHDL === | ===VHDL === | ||
Line 86: | Line 87: | ||
=== Verilog === | === Verilog === | ||
+ | * [https://www.veripool.org/wiki/verilator Verilator] an High speed verilog simulator | ||
+ | * [http://iverilog.icarus.com/ Icarus] Famous open-source verilog simulator | ||
+ | * [https://symbiyosys.readthedocs.io/en/latest/ SymbiYosys] open-source Verilog formal verification | ||
+ | |||
+ | === Synthesizable Synchronous HDL === | ||
+ | ==== [[Migen]] ==== | ||
+ | |||
+ | With migen, it's possible to develop FPGA design in Python then generate Verilog for synthezis. | ||
+ | |||
+ | ==== [[Chisel]] ==== | ||
+ | With Chisel, it's possible to develop FPGA design in Scala then generate C++ model for simulation and Verilog model for synthezis. Armadeus system can help you to integrate a Chisel project on Armadeus board. | ||
|---------------- | |---------------- | ||
Line 104: | Line 116: | ||
''' CycloneV''' | ''' CycloneV''' | ||
* [https://www.altera.com/products/fpga/cyclone-series/cyclone-v/overview.html CycloneV overview from altera] | * [https://www.altera.com/products/fpga/cyclone-series/cyclone-v/overview.html CycloneV overview from altera] | ||
+ | |||
+ | ''' OpenSource ''' | ||
+ | |||
+ | * [http://www.fabienm.eu/flf/wp-content/uploads/2017/05/fpgamap-1.svg OpenSource FPGA map] | ||
+ | |||
| width="50%" | | | width="50%" | | ||
+ | |||
+ | |||
+ | |||
|} | |} |
Revision as of 10:57, 20 March 2019
Developing on the APF FPGA
FPGA Interfaces
|
Using Armadeus FPGAManage the FPGA from Armadeus distribution.
|
Make some examplesThese examples give the basis to make VHDL design for FPGA.
|
Design ToolsDescription of tools used to simulate, to synthesize, and to download/configure FGPA. Xilinx Altera Lattice Microsemi |
Automatize FPGA design makingPeripherals On DemandFor complex projects, POD should be used to simplify design. FuseSoCFuseSoC is a builder written in Python used to automatize FPGA constructions |
HDLVHDL
Verilog
Synthesizable Synchronous HDLMigenWith migen, it's possible to develop FPGA design in Python then generate Verilog for synthezis. ChiselWith Chisel, it's possible to develop FPGA design in Scala then generate C++ model for simulation and Verilog model for synthezis. Armadeus system can help you to integrate a Chisel project on Armadeus board. |
LinksSome useful links. Wishbone Spartan CycloneV OpenSource |
|