(no commit message)
[libreriscv.git] / index.mdwn
1 <div class="jumbotron">
2 <h1 class="display-5">Welcome to Libre-SOC</h1>
3 <blockquote>
4 <p>We're building a chip. A fast chip. A safe chip. A trusted chip.
5 </p>
6
7 <p>A chip with lots of peripherals. And it's a VPU. And it's a 3D GPU...
8 </p>
9
10 <p>Oh and here, have the
11 <a href="http://git.libre-soc.org">Libre-SOC source code</a>...
12 </p>
13 </blockquote>
14 <hr class="my-4">
15
16 <h2 class="display-5">Why should I care?</h2>
17
18 With Libre-SOC, you can take complex algorithms usually intended for
19 power hungry servers with big fat GPUs, and run them on tiny devices
20 like smartwatches, cellphones, and pocket drones without changing your
21 code at all.
22
23 <hr class="my-4">
24
25 <h2 class="display-5">Hasn't Somebody Already Done This?</h2>
26
27 To the best of our knowledge, no. The closest systems would be ARM Cortex
28 devices which currently offer mediocre GPU and OpenCL support. Often
29 times, it is quite difficult for customers to get their hands on the
30 drivers and install them due to their locked down nature. Libre-SOC is
31 providing our own Free/Libre drivers. Easy as 1, 2, 3!
32
33 <hr class="my-4">
34
35 <h2 class="display-5">Does Open Hardware Really Work?</h2>
36 <p>A few names come to mind:</p>
37
38 <ul>
39 <li><a href="https://www.arduino.cc">Arduino</a></li>
40 <li><a href="https://www.raptorcs.com">Raptor Computing Systems</a></li>
41 <li><a href="https://www.bitcraze.io">CrazyFlie</a></li>
42 <li><a href="https://www.scopefun.com">ScopeFun</a></li>
43 </ul>
44
45 <p class="lead">
46 <a class="btn btn-primary btn-lg" href="https://libre-soc.org/why_a_libresoc/" role="button">Learn more</a>
47
48 </div>
49
50 # Our Team
51
52 We are proud of our talented and diverse [team](about_us)
53 located all across the world: UK US Canada Germany Greece India
54 Kuwait.
55
56 # Our sponsors and partners
57
58 * [NLnet](https://nlnet.nl) who have very kindly sponsored us with
59 over EUR 550,000 in various separate grants.
60 * [NGI POINTER](https://www.ngi.eu/ngi-projects/ngi-pointer/) who have
61 sponsored us with a EUR 200,000 Horizon 2020 Grant.
62 * [Mythic Beasts](http://mythic-beasts.com) who don't overcommit on
63 their VPS allocations (no memory ballooning), and put servers on
64 the fastest backbone Internet points.
65 * [Purism](http://puri.sm) donates to us through [NLNet](nlnet)
66 charitable gifting
67 * [Raptor CS](http://raptorcs.com) has given us access to a powerful
68 18-core 128 GB RAM TALOS II workstation, online.
69 * [Raptor Engineering](https://raptorengineering.com) is providing
70 additional assistance including access to an [[shakti/m_class/LPC]]
71 interface (more to come)
72 * [MarketNext](http://marketnext.org) is helping us connect to developer
73 resources in Emerging markets, for completion of NLNet-funded tasks.
74 * The [[PowerPC Notebook]] Project
75 * [RED Semiconductor](http://redsemiconductor.com) is the commercial realisation of Libre-SOC technology that respects and actively supports Libre principles in its business objectives.
76 * [[fed4fire]] for supercomputer access for verilator simulations,
77 with thanks to Ghent University / IMEC.
78
79 # How Can I Help?
80
81 If you would like to fund us, see [[funding]]. We currently have some
82 funding and always appreciate more! If you are a Corporation or an
83 individual you can donate tax-free to NLNet, and they can in turn gift
84 our developers. Contact lkcl@lkcl.net for more information.
85
86 # How Can I Help as a Developer? <a name="help_as_developer"></a>
87
88 If you want to write code with us (and receive donations from NLNet
89 for doing so), keep reading. If you want to *learn*
90 so that you can write code with us, see "How can I learn" section,
91 below. If there is anything else,
92 just get in touch on the list, there is plenty to do.
93
94 1. First, join the
95 [mailing list](http://lists.libre-soc.org/mailman/listinfo/libre-soc-dev),
96 introduce yourself (people will happily say "hello" back) and
97 the Libera IRC channel
98 (#libre-soc at irc.libera.chat port 6697, see
99 https://libera.chat/guides/connect),
100 it's also accessible via Libera.Chat's Matrix Bridge.
101 [logs here](https://libre-soc.org/irclog/latest.log.html).
102 Read through
103 [recent posts](http://lists.libre-soc.org/pipermail/libre-soc-dev/)
104 and the [[charter]], ask questions if you have any and let everyone know,
105 on the list that you're happy with it and agree to it.
106 2. The next thing you should do is read through the
107 [bugs list](http://bugs.libre-soc.org) and
108 see if there are any bugs that pique your interest.
109 A fascinating way to do that is to view the
110 [dependency graph](https://bugs.libre-soc.org/showdependencygraph.cgi?id=1&display=web&rankdir=LR)
111 3. After that, go ahead and take a look at the
112 [git repositories](https://git.libre-soc.org).
113 4. If you plan to do HDL work, you should familiarize yourself with our
114 [[HDL_workflow]]. If you would like to help with the ASIC layout,
115 see [[HDL_workflow/coriolis2]]
116 5. We do have funding available (see [[nlnet]]) upon completion of issues -
117 we are also working on procuring more funding which gets the project to
118 nanometre scale tapeout.
119 6. After all this, if you feel that Libre-SOC is a something
120 that you would like to contribute to, add yourself to the
121 [current_members](about_us) page, fill in some information about yourself,
122 and join the mailing list and say hello.
123
124 Also note that you can edit this wiki. You can experiment in the [[Sandbox]].
125
126 ## Quick peek at the code
127
128 The full install process may be automated using scripts found
129 here: <https://git.libre-soc.org/?p=dev-env-setup.git;a=summary>
130 which you can clone with:
131
132 git clone https://git.libre-soc.org/git/dev-env-setup.git
133
134 A convenient page which gives easy step-by-step instructions is:
135 [[HDL_workflow/devscripts]], and you can get started with a
136 [[docs/firststeps]] tutorial.
137
138 ## How can I learn?
139
140 The whole purpose of this project is to be a learning environment as well
141 as an actual business. If you want to learn how to do ASIC design, with
142 a view to contributing or starting your own ASIC business, start here:
143 [[3d_gpu/tutorial]]. Yes, really: do not let anyone tell you that you
144 can't learn this stuff too.
145
146 Along the way, if you find any [[resources]] or links that you found
147 particularly helpful, please add them to that page so that other people
148 can also benefit (and you have a place to remember them, too).
149
150 ## Needed Skills
151
152 Most labor is currently being applied to developing the GPU portion of
153 the Libre-SOC.
154
155 Our highest priority short-term and medium-term: we need HDL engineers.
156 Particularly those familiar
157 with nMigen or just python. Most of the techniques being used require
158 software engineering skills (OO design, polymorphism) than they do more
159 traditional HDL programming skills. Basically if you have experience in 2
160 of the following you'll do fine: python, nmigen, verilog/VHDL/gate-level
161 design. See [[HDL_workflow]]
162
163 We also need to find a c++ engineer with compiler experience to work on
164 a MESA 3D driver. This will begin life similar to SwiftShader however
165 retaining the vectorisation and predication intrinsics then adding
166 hardware accelerated opcodes (all of which SwiftShader lacks)
167
168 Also, individuals with experience in formal mathematical verification
169 are quite welcome.
170
171 # Documentation
172
173 - [Source Code](/docs/)
174 - [Architecture](3d_gpu/architecture)