X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=nlnet_2018.mdwn;h=dcafd540e9935c847ed9f507fc86815a291837d1;hb=a175a4756f5b4e1350d2099c3f0aae4954b337ed;hp=570474aae42ca912caa120722ffbe892d2383456;hpb=4ed9ca30dd1e5a8295e63482c672f7c6bdba0148;p=libreriscv.git diff --git a/nlnet_2018.mdwn b/nlnet_2018.mdwn index 570474aae..dcafd540e 100644 --- a/nlnet_2018.mdwn +++ b/nlnet_2018.mdwn @@ -1,3 +1,210 @@ # NL.net proposal +* 2019-10-012 +* Top level bugreport +* NLNet Project page +## Project name + +The Libre-RISCV SoC + +## Website / wiki + + + +Please be short and to the point in your answers; focus primarily on +the what and how, not so much on the why. Add longer descriptions as +attachments (see below). If English isn't your first language, don't +worry - our reviewers don't care about spelling errors, only about +great ideas. We apologise for the inconvenience of having to submit in +English. On the up side, you can be as technical as you need to be (but +you don't have to). Do stay concrete. Use plain text in your reply only, +if you need any HTML to make your point please include this as attachment. + +## Abstract: Can you explain the whole project and its expected outcome(s). + +Intelligence Communities have a hard rule: if the trustworthiness of +an adversary is not known, the absolute worst must be assumed. +An average computer end-user makes the mistake of holding the opposite view: +"what I don't know about can't hurt me therefore it couldn't happen to me". + +until it does. + +So responsibility falls to those people who *do* have the expertise and +knowledge to design trustworthy privacy-respecting systems to take the +initiative. Unfortunately, if the hardware is compromised (for example, +the Intel Management Engine, aka "NSA Backdoor spying co-processor"), all +efforts at the software level, however well-intentioned and no matter +how far they go, are utterly compromised and rendered completely ineffective. + +Therefore, the only real way to fully and truly gain the trust of the +end-users is to go right back to the harware, and to *transparently* +design an entire processor, from scratch, in a truly Libre / Open +fashion. + +This project therefore will provide a fully libre and open design of +mobile-class processor, where not only the source code of the BIOS, +bootloader, kernel and Operating System are entirely available, the +*hardware defintion* (HDL) source code will be entirely available as well. +That includes the GPU (for 3D Graphics), and the VPU (for video decode), +as well as full libre-licensed source code for the 3D and VPU drivers. + +The expected outcome within the next 18-24 months is to deliver a +fully-functioning quad-core 800mhz RISC-V 64-bit SoC (system-on-a-chip) +for use in tablets, netbooks, smartphones, chromebooks and IoT Industrial +Embedded scenarios. + +# 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? + +Luke Leighton is an ethical technology specialist who has a consistent +23-year track record of developing code in a real-time transparent +(fully libre) fashion, and in managing Software Libre teams. He currently +is fulfilling a USD $200,000 successfully-funded crowdfunding campaign: +an eco-conscious computing project. + +Jacob Lifshay is a software libre 3D expert who developed a Vulkan 3D +software render engine under the GSoc2017 Programme. He also developed +his own libre-licensed 32-bit RISC-V processor, and has written an +optimising javascript compiler. Luke is presently personally sponsoring +him to continue the Vulkan driver development, a project known as Kazan +(https://salsa.debian.org/Kazan-team/kazan) + +# Requested Amount + +EUR $50,000. + +# Explain what the requested budget will be used for? + +EUR $50,000 is approximately half a percent of the total budget needed to +achieve the goal. It will however easily fund us, as software engineers, +to get to an all-important milestone: an FPGA demonstrator. We already +have the FPGAs: we need time to focus on developing both the hardware +and the software (in tandem). + +An FPGA demonstration will bring confidence to investors and larger +sponsors alike, as well as give potential Crowdsupply campaign backers +confidence to back the project (the Crowdsupply page is already +up in pre-launch mode at https://crowdsupply.com/libre-risc-v/m-class) + +Additionally, there are domain experts whom we would like to bring on board +with offers of sponsorship, particularly when it comes to the compilers +that will need to be augmented to match the planned RISC-V enhancements +needed for the combined CPU, GPU and VPU workload. + +# Does the project have other funding sources, both past and present? + +The project is entirely self-funded from personal income. Luke is presently +sponsoring Jacob from personal income. There is no corporate sponsorship. +There is no academic affiliation so there is no source of academic grants. + +Jacob's costs are around USD $1,000 per month. Luke's costs are around +USD $1,500 per month (including support for his family). + +We already have been donated a ZC706 FPGA board, and have just recently +also been offered a comparable MicroSemi FPGA board from another sponsor. +We both have sufficiently powerful modern computers to cope with the workload +of both the software development and for hardware simulations, although Luke's +Aorus X3v6 high-end laptop could benefit from an upgrade to 32GB of RAM +(approx USD $250). + +Whilst there are conferences that it would be good to go to, the cost +of world-wide flights is so relatively high that it would only be +prudent to do so only if there is significant benefit (or additional +sponsors). + +Primarily we need to focus on the development of the core processor, +the 3D Driver (Kazan) and the compiler technology. EUR $50,000 will +easily cover our costs for up to 20 months. + +# Compare your own project with existing or historical efforts. + +There have been a number of efforts to create Libre SoCs. If they are +by Open Hardware community individuals, they are typically 32-bit and +tend to run at an absolute maximum of 500mhz, due to design flaws that +are not really noticed at the slower speeds achievable with FPGAs. +The OpenRISC 1200 falls into this category. + +There are a number of higher-end 64-bit RISC-V efforts: Rocket-Chip +is used by LowRISC and SiFive. These are not capable of 3D or VPU +workloads, and their internal architecture nor codebase is suited +to the massive redesign effort required to cope with the demands of +3D and Video workloads. + +There have also been a number of GPU efforts: the Open Graphics +Project, and the (incorrectly named) GPLGPU project (the license was +not GPL). Both of these focussed on a PCIe Graphics Card as the +primary objective: neither of them succeeded. There is also a +project called "ORGFX": an extension to the OpenRISC core as a Master's +Degree. This was successful however it is what is termed a "fixed +function" 3D engine, which is in absolutely no way suited to modern graphics, +all of which has moved to "shader" design. + +Also, from two researchers at the University of Birmingham, are +two efforts known as "Nyuzi" and the "Open Shader" Project. Nyuzi +is a non-hardware-accelerated Software Renderer, based on Intel's +Larrabee Project, which has +power-performance characteristics 25% that of an embedded MALI 400 GPU. +As-is, it is unsuitable for deployment in a mobile-class environment. The +Open Shader project appears to have stalled, and its academic developers +are unresponsive (a prerequisite for true auditable open collaboration). + +In addition, the MIAOW Project is another academic effort to research +parallel computing workloads. It has no GPU characteristics, at all, +would require significant investment of time and effort to adapt, and, +not being suitable for general-purpose CPU workloads, would require +a significant (risky) investment of time and effort in the 3D driver. +By contrast, the approach taken - to hardware-accelerate a hybrid +CPU-GPU-VPU that is primarily a software renderer, requires significantly +less resources in driver development. + +All other mobile-class commercial SoCs license either proprietary +GPU technology or proprietary VPU technology, neither of which may +be trusted by end-users to respect privacy. + +Basically there does not exist - anywhere in the world - in the year +2018 - a commercially-available system-on-a-chip where the entire +source code of both the hardware and the software is libre-licensed. +Full (libre) transparency is the only way that independent audits may be +carried out. + +## What are significant technical challenges you expect to solve during the project, if any? + +The development of a hybrid CPU-GPU-VPU is a significant project. +However as an libre / open project, we are able to ask questions and +get help online from unexpected sources, which no "competitive" +commercial company could ever possibly consider doing. At the time +of writing, the comp.arch newsgroup has a number of active discussions +where our lack of knowledge is being corrected and augmented by +several extremely experienced hardware engineers, including Mitch +Alsup, the designer of the Motorola 68000 Family. + +Mitch used to work for AMD, in particular on the AMDGPU: he was also +the architect of the AMD K9 Series, and more recently he was a technical +advisor to Samsung on their GPU Project. + +With his help we have already uncovered some previously unknown +features of the CDC 6600 processor, developed in 1964 by Seymour Cray. +We are extremely lucky to have access to his wealth of experience and +knowledge. + +Only by being independent of Corporate control as a Libre Project can we +release simulations, reports, documentation and source code, in real-time, +such that it may be publicly reviewed and found not to contain +privacy-violating spying back-doors. + + +## Describe the ecosystem of the project, and how you will engage with relevant actors and promote the outcomes? + +We have a pre-launch Crowdsupply page up and running already, at +https://www.crowdsupply.com/libre-risc-v/m-class through which we will +engage with developers and end-users alike. Developers will be invited +to participate through the http://libre-riscv.org website and resources. + +The Crowdsupply page has already been picked up by Phoronix, Heise.de +Magazine, reddit and ycombinator. There is a lot of interest in this +project. + +# Extra info to be submitted + +* +*