OpenCores
URL https://opencores.org/ocsvn/socgen/socgen/trunk

Subversion Repositories socgen

[/] [socgen/] [trunk/] [repos/] [readme.md] - Blame information for rev 135

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 135 jt_eaton
FuseSoC
2
=======
3
 
4
 
5
Introduction
6
------------
7
FuseSoC is a package manager and a set of build tools for HDL code.
8
 
9
It's main purpose is to increase reuse of IP cores and be an aid for creating, building and simulating SoC solutions.
10
 
11
The package manager part can be seen as an apt, portage, yum, dnf, pacman for FPGA/ASIC IP cores.
12
A simple ini file describes mainly which files the IP core contains, which other IP cores it depends on and where FuseSoC shall fetch the code.
13
 
14
 
15
A collection of cores together with a top-level is called a system, and systems can be simulated or passed through the FPGA vendor tools to build a loadable FPGA image.
16
 
17
Currently FuseSoc supports simulations with ModelSim, Icarus Verilog and Verilator. It also supports building FPGA images with Xilinx ISE and Altera Quartus
18
 
19
Cores
20
-----
21
FuseSoC does not contain any RTL code or core description files. The official repository for FuseSoC compatible cores is https://github.com/openrisc/orpsoc-cores
22
 
23
Quick start
24
-----------
25
Install by cloning the repo. cd into fusesoc and run:
26
autoreconf -i && ./configure && make
27
sudo make install
28
 
29
Clone orpsoc-cores (https://github.com/openrisc/orpsoc-cores)
30
 
31
Make a new directory that will become your working directory. Inside of that directory create a file called fusesoc.conf with the following contents
32
 
33
[main]
34
cores_root=/path/to/orpsoc-cores/cores
35
systems_root=/path/to/orpsoc-cores/systems
36
 
37
This will let FuseSoC know where to find it's cores. (Note: You can add more cores_root directories by adding --cores-root= on your fusesoc command line)
38
 
39
Test your installation by running 'fusesoc list-cores'. This should return the list of cores that FuseSoC has found
40
 
41
If you have any of the supported simulators installed, you can try to run a simulation on one of the cores as well.
42
For example, 'fusesoc sim --sim=icarus wb_sdram_ctrl' will run a regression test on the core wb_sdram_ctrl with icarus verilog
43
If you also have Altera Quartus installed, you can try to build an example system. For example, 'fusesoc build de0_nano'
44
 
45
fusesoc --help will give you more information on commands and switches
46
 
47
Further reading
48
---------------
49
A few tutorials using FuseSoC are available, but they are unfortunately all written before fusesoc was renamed from orpsocv3
50
 
51
http://www.elec4fun.fr/2011-03-30-10-16-30/2012-08-22-20-50-31/or1200-barebox-on-de1 (
52
http://designandmake.designspark.com/blog/booting-linux-on-a-de0-nano-with-orpsoc

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.