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