add links
[libreriscv.git] / nlnet_2018.mdwn
1 # NL.net proposal
2
3 ## Project name
4
5 The Libre-RISCV SoC
6
7 ## Website / wiki
8
9 <https://libre-riscv.org>
10
11 Please be short and to the point in your answers; focus primarily on
12 the what and how, not so much on the why. Add longer descriptions as
13 attachments (see below). If English isn't your first language, don't
14 worry - our reviewers don't care about spelling errors, only about
15 great ideas. We apologise for the inconvenience of having to submit in
16 English. On the up side, you can be as technical as you need to be (but
17 you don't have to). Do stay concrete. Use plain text in your reply only,
18 if you need any HTML to make your point please include this as attachment.
19
20 ## Abstract: Can you explain the whole project and its expected outcome(s).
21
22 Intelligence Communities have a hard rule: if the trustworthiness of
23 an adversary is not known, the absolute worst must be assumed.
24 An average computer end-user makes the mistake of holding the opposite view:
25 "what I don't know about can't hurt me therefore it couldn't happen to me".
26
27 until it does.
28
29 So responsibility falls to those people who *do* have the expertise and
30 knowledge to design trustworthy privacy-respecting systems to take the
31 initiative. Unfortunately, if the hardware is compromised (for example,
32 the Intel Management Engine, aka "NSA Backdoor spying co-processor"), all
33 efforts at the software level, however well-intentioned and no matter
34 how far they go, are utterly compromised and rendered completely ineffective.
35
36 Therefore, the only real way to fully and truly gain the trust of the
37 end-users is to go right back to the harware, and to *transparently*
38 design an entire processor, from scratch, in a truly Libre / Open
39 fashion.
40
41 This project therefore will provide a fully libre and open design of
42 mobile-class processor, where not only the source code of the BIOS,
43 bootloader, kernel and Operating System are entirely available, the
44 *hardware defintion* (HDL) source code will be entirely available as well.
45 That includes the GPU (for 3D Graphics), and the VPU (for video decode),
46 as well as full libre-licensed source code for the 3D and VPU drivers.
47
48 The expected outcome within the next 18-24 months is to deliver a
49 fully-functioning quad-core 800mhz RISC-V 64-bit SoC (system-on-a-chip)
50 for use in tablets, netbooks, smartphones, chromebooks and IoT Industrial
51 Embedded scenarios.
52
53 # Have you been involved with projects or organisations relevant to this project before? And if so, can you tell us a bit about your contributions?
54
55 Luke Leighton is an ethical technology specialist who has a consistent
56 23-year track record of developing code in a real-time transparent
57 (fully libre) fashion, and in managing Software Libre teams. He currently
58 is fulfilling a USD $200,000 successfully-funded crowdfunding campaign:
59 an eco-conscious computing project.
60
61 Jacob Lifshay is a software libre 3D expert who developed a Vulkan 3D
62 software render engine under the GSoc2017 Programme. He also developed
63 his own libre-licensed 32-bit RISC-V processor. Luke is presently
64 personally sponsoring him to continue the Vulkan driver development,
65 a project known as Kazan.
66
67 # Requested Amount
68
69 EUR $50,000.
70
71 # Explain what the requested budget will be used for?
72
73 EUR $50,000 is approximately half a percent of the total budget needed to
74 achieve the goal. It will however easily fund us, as software engineers,
75 to get to an all-important milestone: an FPGA demonstrator. We already
76 have the FPGAs: we need time to focus on developing both the hardware
77 and the software (in tandem).
78
79 An FPGA demonstration will bring confidence to investors and larger
80 sponsors alike, as well as give potential Crowdsupply campaign backers
81 confidence to back the project (the Crowdsupply page is already
82 up in pre-launch mode at https://crowdsupply.com/libre-risc-v/m-class)
83
84 Additionally, there are domain experts whom we would like to bring on board
85 with offers of sponsorship, particularly when it comes to the compilers
86 that will need to be augmented to match the planned RISC-V enhancements
87 needed for the combined CPU, GPU and VPU workload.
88
89 # Does the project have other funding sources, both past and present?
90
91 The project is entirely self-funded from personal income. Luke is presently
92 sponsoring Jacob from personal income. There is no corporate sponsorship.
93 There is no academic affiliation so there is no source of academic grants.
94
95 Jacob's costs are around USD $1,000 per month. Luke's costs are around
96 USD $1,500 per month (including support for his family).
97
98 We already have been donated a ZC706 FPGA board, and have just recently
99 also been offered a comparable MicroSemi FPGA board from another sponsor.
100 We both have sufficiently powerful modern computers to cope with the workload
101 of both the software development and for hardware simulations, although Luke's
102 Aorus X3v6 could benefit from an upgrade to 32GB of RAM (approx USD $250).
103
104 Whilst there are conferences that it would be good to go to, the cost
105 of world-wide flights is so relatively high that it would only be
106 prudent to do so only if there is significant benefit (or additional
107 sponsors).
108
109 Primarily we need to focus on the development of the core processor,
110 the 3D Driver (Kazan) and the compiler technology. EUR $50,000 will
111 easily cover our costs for up to 20 months.
112
113 # Compare your own project with existing or historical efforts.
114
115 There have been a number of efforts to create Libre SoCs. If they are
116 by Open Hardware community individuals, they are typically 32-bit and
117 tend to run at an absolute maximum of 500mhz, due to design flaws that
118 are not noticed if run in (slow) FPGAs. The OpenRISC 1200 falls into
119 this category.
120
121 There are a number of higher-end 64-bit RISC-V efforts: Rocket-Chip
122 is used by LowRISC and SiFive. These are not capable of 3D or VPU
123 workloads, and their internal architecture nor codebase is suited
124 to the massive redesign effort required to cope with the demands of
125 3D and Video workloads.
126
127 There have also been a number of GPU efforts: the Open Graphics
128 Project, and the (incorrectly named) GPLGPU project (the license was
129 not GPL). Both of these focussed on a PCIe Graphics Card as the
130 primary objective: neither of them succeeded. There is also a
131 project called "ORGFX": an extension to the OpenRISC core as a Master's
132 Degree. This was successful however it is what is termed a "fixed
133 function" 3D engine, which is in no way suited to modern graphics,
134 all of which has moved to "shader" design.
135
136 Also, from two researchers at the University of Birmingham, are
137 two efforts known as "Nyuzi" and the "Open Shader" Project. Nyuzi
138 is a non-hardware-accelerated Software Renderer which has
139 power-performance characteristics 25% that of an embedded MALI 400 GPU,
140 so is unsuitable for deployment in a mobile-class environment. The
141 Open Shader project appears to have stalled, and its academic developers
142 are unresponsive.
143
144 In addition, the MIAOW Project is another academic effort to research
145 parallel computing workloads. It has no GPU characteristics, at all,
146 would require significant investment of time and effort to adapt, and,
147 not being suitable for general-purpose CPU workloads, would require
148 a significant (risky) investment of time and effort in the 3D driver.
149 By contrast, the approach taken - to hardware-accelerate a hybrid
150 CPU-GPU-VPU that is primarily a software renderer, requires significantly
151 less resources in driver development.
152
153 All other mobile-class commercial SoCs license either proprietary
154 GPU technology or proprietary VPU technology, neither of which may
155 be trusted by end-users to respect privacy.
156
157 Basically there does not exist - anywhere in the world - in the year
158 2018 - a commercially-available system-on-a-chip where the entire
159 source code of both the hardware and the software is libre-licensed.
160 Full (libre) transparency is the only way that independent audits may be
161 carried out.
162
163 ## What are significant technical challenges you expect to solve during the project, if any?
164
165 The development of a hybrid CPU-GPU-VPU is a significant project.
166 However as an libre / open project, we are able to ask questions and
167 get help online from unexpected sources, which no "competitive"
168 commercial company could ever possibly consider doing. At the time
169 of writing, the comp.arch newsgroup has a number of active discussions
170 where our lack of knowledge is being corrected and augmented by
171 several extremely experienced hardware engineers, including Mitch
172 Alsup, the designer of the Motorola 68000 Family.
173
174 Mitch used to work for AMD, in particular on the AMDGPU: he was also
175 the architect of the AMD K9 Series, and more recently he was a technical
176 advisor to Samsung on their GPU Project.
177
178 With his help we have already uncovered some previously unknown
179 features of the CDC 6600 processor, developed in 1964 by Seymour Cray.
180 We are extremely lucky to have access to his wealth of experience and
181 knowledge
182
183 Only by being independent of Corporate control as a Libre Project can we
184 release simulations, reports, documentation and source code, in real-time,
185 such that it may be publicly reviewed.
186
187
188 ## Describe the ecosystem of the project, and how you will engage with relevant actors and promote the outcomes?
189
190 We have a pre-launch Crowdsupply page up and running already, at
191 https://www.crowdsupply.com/libre-risc-v/m-class through which we will
192 engage with developers and end-users alike. Developers will be invited
193 to participate through the http://libre-riscv.org website and resources.
194
195 The Crowdsupply page has already been picked up by Phoronix, Heise.de
196 Magazine, reddit and ycombinator. There is a lot of interest in this
197 project.
198
199 # Extra info to be submitted
200
201 * <https://hardware.slashdot.org/story/18/12/11/1410200/super-micro-says-review-found-no-malicious-chips-in-motherboards>
202 * <https://libreboot.org/faq.html#intelme>