add nlnet proposals links
[libreriscv.git] / 3d_gpu.mdwn
1 # RISC-V 3D GPU / CPU / VPU
2
3 Note: this is a **hybrid** CPU, VPU and GPU. It is not, as many news articles
4 are implying, a "dedicated exclusive GPU". The option exists to **create**
5 a stand-alone GPU product (contact us if this is a product that you want).
6 Our primary goal is to design a **complete** all-in-one processor
7 (System-on-a-Chip) that happens to include a libre-licensed VPU and GPU.
8
9 We seek investors, sponsors, engineers and potential customers, who are
10 interested, as a first product, in the creation and use of an entirely
11 libre low-power mobile class system-on-a-chip. Comparative benchmark
12 performance, pincount and price is the Allwinner A64, except that the
13 power budget target is 2.5 watts in a 16x16mm 320 to 360 pin 0.8mm
14 FBGA package. Instead of single-issue higher clock rate, the design is
15 multi-issue, aiming for around 800mhz.
16
17 The lower pincount, lower power, and higher BGA pitch is all to reduce
18 the cost of product development when it comes to PCB design and layout:
19
20 * Above 4 watts requires metal packages, greater attention to thermal
21 management in the PCB design and layout, and much pricier PMICs.
22 * 0.6mm pitch BGA and below requires much more expensive PCB manufacturing
23 equipment and more costly PCBA techniques.
24 * Above 600 pins begins to reduce production yields as well as increase
25 the cost of testing and packaging.
26
27 We can look at larger higher-power ASICs either later or, if funding
28 is made available, immediately.
29
30 See:
31
32 * [[shakti/m_class/libre_3d_gpu]]
33 * [[discussion]]
34 * [[resources]]
35 * Founding [[charter]]
36 * Mailing list <http://lists.libre-riscv.org/pipermail/libre-riscv-dev/>
37 * Crowdsupply page <https://www.crowdsupply.com/libre-risc-v/m-class>
38 * Wiki <https://libre-riscv.org>
39 * Git repositories <https://git.libre-riscv.org>
40 * Bugtracker <http://bugs.libre-riscv.org>
41 * Kazan Vulkan Driver (including 3D engine) <https://salsa.debian.org/Kazan-team/kazan>
42 * [NLNet 2019 Milestones](http://bugs.libre-riscv.org/buglist.cgi?columnlist=assigned_to%2Cbug_status%2Cresolution%2Cshort_desc%2Ccf_budget&f1=cf_nlnet_milestone&o1=equals&query_format=advanced&resolution=---&v1=NLnet.2019.02)
43 * NLNet Project Page <https://nlnet.nl/project/Libre-RISCV/>
44 * [[nlnet_proposals]]
45
46 Progress:
47
48 * Jul 2019: Sponsorship from Purism received. IEEE754 FP Mul, Add, DIV,
49 FCLASS and FCVT pipelines completed.
50 * Jun 2019: IEEE754 FP Mul, Add, and FSM "DIV" completed.
51 * May 2019: 6600-style scoreboard started
52 * Apr 2019: NLnet funding approved by independent review committee
53 * Mar 2019: NLnet funding application first and second phase passed
54 * Mar 2019: First successful nmigen pipeline milestone achieved with IEEE754 FADD
55 * Feb 2019: Conversion of John Dawson's IEEE754 FPU to nmigen started
56 * Jan 2019: Second version Simple-V preliminary proposal (suited to LLVM)
57 * 2017 - Nov 2018: Simple-V specification preliminary draft completed
58 * Aug 2018 - Nov 2018: spike-sv implementation of draft spec completed
59 * Aug 2018: Kazan Vulkan Driver initiated
60 * Sep 2018: mailing list established
61 * Sep 2018: Crowdsupply pre-launch page up (for updates)
62 * Dec 2018: preliminary floorplan and architecture designed (comp.arch)
63
64 # News Articles
65
66 * <https://hub.packtpub.com/a-libre-gpu-effort-based-on-risc-v-rust-llvm-and-vulkan-by-the-developer-of-an-earth-friendly-computer/>
67 * <https://riscv.org/2018/10/packt-hub-article-a-libre-gpu-effort-based-on-risc-v-rust-llvm-and-vulkan-by-the-developer-of-an-earth-friendly-computer/>
68 * <https://www.reddit.com/r/RISCV/comments/9jts9t/theres_a_new_libre_gpu_effort_building_on_riscv/>
69 * <https://www.linux.com/blog/2018/11/risc-v-linux-development-full-swing>
70 * <https://www.phoronix.com/scan.php?page=news_item&px=Libre-GPU-RISC-V-Vulkan>
71 * <https://www.heise.de/newsticker/meldung/Mobilprozessor-mit-freier-GPU-Libre-RISC-V-M-Class-geplant-4242802.html>
72 * <https://news.ycombinator.com/item?id=18094734>
73 * <http://www.tuxmachines.org/node/116004>
74 * <https://linuxfr.org/users/martoni/journaux/risc-v-est-pret-pour-le-desktop>
75 * <https://www.reddit.com/r/hardware/comments/9jlby1/theres_a_new_libre_gpu_effort_building_on_riscv/>
76 * <http://www.eevblog.com/forum/crowd-funded-projects/libre-risc-v-m-class-with-open-source-gpu-and-kazan-vulkan-driver/>
77 * <https://www.reddit.com/domain/libre-riscv.org/>
78 * <https://hardware.slashdot.org/comments.pl?sid=13447940&cid=58160868>
79 * <https://www.phoronix.com/forums/forum/hardware/graphics-cards/1080755-libre-risc-v-gpu-aiming-for-2-5-watt-power-draw-continues-being-plotted/page5>
80 * <https://www.phoronix.com/forums/forum/hardware/processors-memory/1070828-more-details-on-the-proposed-simple-v-extension-to-risc-v-for-gpu-workloads>
81 * <https://slashdot.org/submission/9750302/nlnet-funds-development-of-a-libre-risc-v-3d-cpu>
82 * <https://hardware.slashdot.org/story/19/06/02/0153243/nlnet-funds-development-of-a-libre-risc-v-3d-cpu>
83 * <https://www.phoronix.com/forums/forum/hardware/graphics-cards/1104124-libre-risc-v-snags-50k-eur-grant-to-work-on-its-risc-v-3d-gpu-chip/page6>
84
85 # Information Resources and Tutorials
86
87 * <https://github.com/timvideos/litex-buildenv/wiki/LiteX-for-Hardware-Engineers>
88 * <https://jeffrey.co.in/blog/2014/01/d-flip-flop-using-migen/>
89 * <http://lists.libre-riscv.org/pipermail/libre-riscv-dev/2019-March/000705.html>
90 * <https://chisel.eecs.berkeley.edu/api/latest/chisel3/util/DecoupledIO.html>
91 * <http://www.clifford.at/papers/2016/yosys-synth-formal/slides.pdf>
92 * <http://blog.lambdaconcept.com/doku.php?id=migen:tutorial>
93 * <http://chiselapp.com/user/kc5tja/repository/kestrel-3/dir?ci=6c559135a301f321&name=cores/cpu>
94 * <https://chips4makers.io/blog/>
95 * <https://hackaday.io/project/7817-zynqberry>
96 * <https://wiki.f-si.org/index.php/FSiC2019>
97 * <https://github.com/efabless/raven-picorv32> - <https://efabless.com>
98 * <https://efabless.com/design_catalog/default>
99 * <https://toyota-ai.ventures/>
100 * <https://github.com/lambdaconcept/minerva>
101 * <https://en.wikipedia.org/wiki/Liskov_substitution_principle>
102 * <https://en.wikipedia.org/wiki/Principle_of_least_astonishment>
103 * <https://peertube.f-si.org/videos/watch/379ef007-40b7-4a51-ba1a-0db4f48e8b16>
104 * <https://github.com/riscv/riscv-sbi-doc/blob/master/riscv-sbi.md>
105 * <https://mshahrad.github.io/openpiton-asplos16.html>
106 * <https://wiki.f-si.org/index.php/The_Raven_chip:_First-time_silicon_success_with_qflow_and_efabless>
107 * <http://smallcultfollowing.com/babysteps/blog/2019/04/19/aic-adventures-in-consensus/>
108 * <http://www.crnhq.org/12-Skills-Summary.aspx?rw=c>
109 * <http://bugs.libre-riscv.org/buglist.cgi?columnlist=assigned_to%2Cbug_status%2Cresolution%2Cshort_desc%2Ccf_budget&f1=cf_nlnet_milestone&o1=equals&query_format=advanced&resolution=---&v1=NLnet.2019.02>
110 * <https://pdfs.semanticscholar.org/5060/4e9aff0e37089c4ab9a376c3f35761ffe28b.pdf>
111 * <http://www.acsel-lab.com/arithmetic/arith15/papers/ARITH15_Takagi.pdf>
112 * <https://youtu.be/o5Ihqg72T3c>
113 * <http://flopoco.gforge.inria.fr/>
114 * Fundamentals of Modern VLSI Devices <https://groups.google.com/a/groups.riscv.org/d/msg/hw-dev/b4pPvlzBzu0/7hDfxArEAgAJ>
115
116 # Analog Simulation
117
118 * <https://github.com/Isotel/mixedsim>
119 * <http://www.vlsiacademy.org/open-source-cad-tools.html>
120 * <http://ngspice.sourceforge.net/adms.html>
121 * <https://en.wikipedia.org/wiki/Verilog-AMS#Open_Source_Implementations>