bug 1048, ls011: Add FP Store Shifted Post-Update section
[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 (`#libre-soc:libera.chat`)
102 [logs here](https://libre-soc.org/irclog/latest.log.html).
103 Read through
104 [recent posts](http://lists.libre-soc.org/pipermail/libre-soc-dev/)
105 and the [[charter]], ask questions if you have any and let everyone know,
106 on the list that you're happy with it and agree to it.
107 2. The next thing you should do is read through the
108 [bugs list](http://bugs.libre-soc.org) and
109 see if there are any bugs that pique your interest.
110 A fascinating way to do that is to view the
111 [dependency graph](https://bugs.libre-soc.org/showdependencygraph.cgi?id=1&display=web&rankdir=LR)
112 3. After that, go ahead and take a look at the
113 [git repositories](https://git.libre-soc.org).
114 4. If you plan to do HDL work, you should familiarize yourself with our
115 [[HDL_workflow]]. If you would like to help with the ASIC layout,
116 see [[HDL_workflow/coriolis2]]
117 5. We do have funding available (see [[nlnet]]) upon completion of issues -
118 we are also working on procuring more funding which gets the project to
119 nanometre scale tapeout.
120 6. After all this, if you feel that Libre-SOC is a something
121 that you would like to contribute to, add yourself to the
122 [current_members](about_us) page, fill in some information about yourself,
123 and join the mailing list and say hello.
124
125 Also note that you can edit this wiki. You can experiment in the [[Sandbox]].
126
127 ## Quick peek at the code
128
129 The full install process may be automated using scripts found
130 here: <https://git.libre-soc.org/?p=dev-env-setup.git;a=summary>
131 which you can clone with:
132
133 git clone https://git.libre-soc.org/git/dev-env-setup.git
134
135 A convenient page which gives easy step-by-step instructions is:
136 [[HDL_workflow/devscripts]], and you can get started with a
137 [[docs/firststeps]] tutorial.
138
139 ## How can I learn?
140
141 The whole purpose of this project is to be a learning environment as well
142 as an actual business. If you want to learn how to do ASIC design, with
143 a view to contributing or starting your own ASIC business, start here:
144 [[3d_gpu/tutorial]]. Yes, really: do not let anyone tell you that you
145 can't learn this stuff too.
146
147 Along the way, if you find any [[resources]] or links that you found
148 particularly helpful, please add them to that page so that other people
149 can also benefit (and you have a place to remember them, too).
150
151 ## Needed Skills
152
153 Most labor is currently being applied to developing the GPU portion of
154 the Libre-SOC.
155
156 Our highest priority short-term and medium-term: we need HDL engineers.
157 Particularly those familiar
158 with nMigen or just python. Most of the techniques being used require
159 software engineering skills (OO design, polymorphism) than they do more
160 traditional HDL programming skills. Basically if you have experience in 2
161 of the following you'll do fine: python, nmigen, verilog/VHDL/gate-level
162 design. See [[HDL_workflow]]
163
164 We also need to find a c++ engineer with compiler experience to work on
165 a MESA 3D driver. This will begin life similar to SwiftShader however
166 retaining the vectorisation and predication intrinsics then adding
167 hardware accelerated opcodes (all of which SwiftShader lacks)
168
169 Also, individuals with experience in formal mathematical verification
170 are quite welcome.
171
172 # Documentation
173
174 - [Source Code](/docs/)
175 - [Architecture](3d_gpu/architecture)
176
177 # Autism and Asperger's
178
179 A number of our team have Autism, specifically a variant called Asperger's.
180 Please be mindful and aware when interacting with us. More information
181 may be found here:
182
183 * <https://foodforthebrain.org/autism/>
184 * <https://m.youtube.com/watch?v=Grrbekq-6kw>