8eda71aad6a542a70d706b322a43cadf7c48807c
[libreriscv.git] / 3d_gpu.mdwn
1 See architectural details [here](./architecture)
2
3 # "Gaddie Pitch" (1) for LibreSOC
4
5 | What we do | Benefits | Feelings |
6 | ------------------------ | --------------------- | ----------------------- |
7 | design high-performance | No spying backdoors, | Much less frustrated |
8 | efficient and simpler | greatly reduced time | when developing products|
9 | processors with built-in | and cost to market | using e.g. China-based |
10 | 3D and Video capability | Simpler debugging | products. End-customer |
11 | in a fully-transparent | Full transparency | stops complaining, |
12 | fashion. | for their customers | Risk and worry gone. |
13
14 ## You know how...
15
16 You know how for computers, you really have no idea how they work? And
17 how you keep having to replace them with upgrades? Turns out that
18 it's very difficult for medium-sized businesses to design lower-cost products
19 because the only cheap processors (almost always from China) do not respect
20 Copyright law and provide almost zero documentation.
21
22 ## Well what we do is...
23
24 Well, what we do is: design processors that have full transparency
25 ## In fact...
26
27 # "Gaddie Pitch" (2) for LibreSOC
28
29 Cole TODO
30
31 # Hybrid 3D GPU / CPU / VPU
32
33 Creating a trustworthy processor for the world.
34
35 Our [[3d_gpu/business_objectives]]
36
37 Note: this is a **hybrid** CPU, VPU and GPU. It is not, as many news articles
38 are implying, a "dedicated exclusive GPU". The option exists to *create*
39 a stand-alone GPU product (contact us if this is a product that you want).
40 Our primary goal is to design a **complete** all-in-one processor
41 (System-on-a-Chip) that happens to include libre-licensed VPU and GPU
42 accelerated instructions as part of the actual - main - CPU itself. This greatly simplifies driver development, applications integration and debugging, reducing costs and time to market in the process.
43
44 We seek investors, sponsors (whose contributions thanks to NLNet may be
45 tax-deductible), engineers and potential customers, who are
46 interested, as a first product, in the creation and use of an entirely
47 libre low-power mobile class system-on-a-chip
48 [[shakti/m_class/]]. Comparative benchmark
49 performance, pincount and price is the Allwinner A64, except that the
50 power budget target is 2.5 watts in a 16x16mm 320 to 360 pin 0.8mm
51 FBGA package. Instead of single-issue higher clock rate, the design is
52 multi-issue, aiming for around 800mhz.
53
54 The lower pincount, lower power, and higher BGA pitch is all to reduce
55 the cost of product development when it comes to PCB design and layout:
56
57 * Above 4 watts requires metal packages, greater attention to thermal
58 management in the PCB design and layout, and much pricier PMICs.
59 * 0.6mm pitch BGA and below requires much more expensive PCB manufacturing
60 equipment and more costly PCBA techniques.
61 * Above 600 pins begins to reduce production yields as well as increase
62 the cost of testing and packaging.
63
64 We can look at larger higher-power ASICs either later or, if funding
65 is made available, immediately.
66
67 Recent applications to NLNet (Oct 2019) are for a test chip in 180nm,
68 64 bit, single core dual issue, around 300 to 350mhz. This will provide
69 the confidence to go to higher geometries, as well as be a commercially
70 viable embedded product in its own right. Tapeout deadline is Oct 2020.
71
72 See [[3d_gpu/articles]] online.
73
74 # Progress:
75
76 * Oct 2020 [[180nm_Oct2020/ls180/]] pinouts decided, code-freeze initiated
77 for 180nm test ASIC, GDSII deadline set of Dec 2nd.
78 * Sep 2020: [first boot](https://youtu.be/72QmWro9BSE) of Litex BIOS on a Versa ECP5 at 55mhz. DDR3 RAM initialisation successful. 180nm ASIC pinouts started [[180nm_Oct2020/ls180]]
79 * Aug 2020: [first boot](https://libre-soc.org/3d_gpu/libresoc_litex_bios_first_execution_2020-08-06_16-15.png) of litex BIOS in verilator simulation
80 * Jul 2020: first ppc64le "hello world" binary executed. 80,000 gate coriolis2 auto-layout completed with 99.98% routing. Wishbone MoU signed making available access to an additional EUR 50,000 donations from NLNet. XDC2020 and OpenPOWER conference submissions entered.
81 * Jun 2020: core unit tests and pipeline formal correctness proofs in place.
82 * May 2020: first integer pipelines (ALU, Logical, Branch, Trap, SPR, ShiftRot, Mul, Div) and register files (XER, CR, INT, FAST, SPR) started.
83 * Mar 2020: Coriolis2 Layout experiments successful. 6600 Memory Architecture
84 exploration started. OpenPOWER ISA decoder started. Two new people:
85 Alain and Jock.
86 * Feb 2020: OpenPower Foundation EULA released. Coriolis2 Layout experimentation begun. Dynamic Partitioned SIMD ALU created.
87 * Jan 2020: New team members, Yehowshua and Michael. Last-minute attendance of FOSDEM2020
88 * Dec 2019: Second round NLNet questions answered. External Review completed. 6 NLNet proposals accepted (EUR 200,000+)
89 * Nov 2019: Alternative FP library to Berkeley softfloat developed. NLNet first round questions answered.
90 * Oct 2019: 3D Standards continued. POWER ISA considered. Open 3D Alliance begins. NLNet funding applications submitted.
91 * Sep 2019: 3D Standards continued. Additional NLNet Funding proposals discussed.
92 * Aug 2019: Development of "Transcendentals" (SIN/COS/ATAN2) Specifications
93 * Jul 2019: Sponsorship from Purism received. IEEE754 FP Mul, Add, DIV,
94 FCLASS and FCVT pipelines completed.
95 * Jun 2019: IEEE754 FP Mul, Add, and FSM "DIV" completed.
96 * May 2019: 6600-style scoreboard started
97 * Apr 2019: NLnet funding approved by independent review committee
98 * Mar 2019: NLnet funding application first and second phase passed
99 * Mar 2019: First successful nmigen pipeline milestone achieved with IEEE754 FADD
100 * Feb 2019: Conversion of John Dawson's IEEE754 FPU to nmigen started
101 * Jan 2019: Second version Simple-V preliminary proposal (suited to LLVM)
102 * 2017 - Nov 2018: Simple-V specification preliminary draft completed
103 * Aug 2018 - Nov 2018: spike-sv implementation of draft spec completed
104 * Aug 2018: Kazan Vulkan Driver initiated
105 * Sep 2018: mailing list established
106 * Sep 2018: Crowdsupply pre-launch page up (for updates)
107 * Dec 2018: preliminary floorplan and architecture designed (comp.arch)
108
109
110 # Evaluations
111
112 * [[openpower]]
113
114 # Drivers
115
116 * [[3d_gpu/opencl]]
117 * [[3d_gpu/mesa]]