(no commit message)
[libreriscv.git] / 22nm_PowerPI.mdwn
1 # Introduction
2
3 This is a page describing a proposed mass-volume SoC. It outlines:
4
5 * the NREs involved (realistically USD $7m, with headroom up to $12m preferred)
6 * proposes a fair market price (around $12-13)
7 * estimates a manufacturing cost (around $3.50 to $4)
8 * realistic industry-standard timescales (12-18 months).
9
10 On that basis it indicates that commercial viability is possible if the
11 quantities ordered are over 1 million units.
12 Several ways in which the NREs may be covered in order to be viable include:
13
14 * VC investors (typically requires multiple LOIs and customer committments)
15 * European Union Grants (such as [SiPearl](https://www.eenewsanalog.com/news/european-processor-startup-gets-eu62-million-kickstart-grant) and the [EPI](https://www.european-processor-initiative.eu/dissemination-material/epi-consortium-members-list/) )
16 * Direct OEM / Customer investment (pre-orders, in effect)
17
18 With enough direct customers, VC funding may not even be needed. This is
19 a preferred route that is not unreasonable and has been achieved before
20 in the Silicon Industry.
21
22 **This is a POWER PI proposal, but why was the Raspberry Pi successful?**
23
24 As a dedicated Set-Top Box / IPTV solution, the initial Pi processor,
25 the 700 mhz ARM11 BCM2835, was only available from Broadcomm in
26 Minimum Order Quantities (MOQ) of 5 million and above. As a
27 specialist Vertical Market Applications Processor, it was *not
28 available* for use in products on the general market.
29
30 The *only reason*
31 that it went into the Raspberry Pi at all (selling in far smaller quantities) was because Eben Upton was an employee of Broadcom and had access to NDA'd internal datasheets. Crucially: on
32 learning that it was to be deployed in an Educational market, Broadcom
33 could not exactly say "no".
34
35 In the intervening years, despite persistent requests on Pi Forums,
36 even efforts by the Raspberry Pi Foundation themselves to see a non-Broadcom processor
37 be developed and deployed have not been successful because a Pi-only-centric
38 processor does not have a large enough market share to justify the NREs.
39
40 **The lesson here is that a low-cost processor must cover multiple markets
41 to be successful**.
42
43 Consequently the Libre-SOC "POWER Pi" is designed to enter multiple
44 disparate large-volume markets: the Educational and Open aspects
45 may thus be considered an essential part of the P.R. rather than as
46 major sales opportunities.
47
48 # Specs for 22/28nm SOC
49
50 **Overall goal: an SoC that is capable of meeting multiple markets:**
51
52 * Basic "Pi" style SBC role (aka POWER-Pi)
53 - Power consumption to be **strictly** limited to under 3.5 watts
54 so as to be passively-cooled and significantly reduce OEM product costs,
55 as well as increase reliability
56 * Libre-style smartphone, tablet, netbook and chromebook products
57 - Pine64, Purism, FairPhone, many others
58 - 3.5 watt limit greatly simplifies portable product development,
59 as well as increasing battery life
60 * Baseboard Management Controller (BMC) replacement for existing BMC products
61 - including PCIe Video Card capability after BMC Boot
62 * Mid-end low-cost Graphics Card with reasonable 3D and VPU capabilities
63 - This as a sub-goal of the BMC functionality (stand-alone)
64
65 By meeting the needs of multiple markets in a single SoC the product has
66 broader appeal yet amortises the NREs across all of them. This is
67 industry-standard practice: ST Micro and ATMEL use the exact same die in
68 up to 12-14 different products.
69
70 **Three different pin packages:**
71
72 * 400-450 pin FBGA 18mm 0.8mm and 14mm 0.6mm pitch
73 - single 32-bit DDR3/4 interface (appx 120 pins incl. VSS/VDD)
74 - Suitable for smaller products.
75 - 0.8mm pitch is easier for low-cost China PCB manufacturing
76 - This lesson is learned from Freescale's 19-year-LTS iMX6 SoC
77 * 600-650 pin FBGA appx 20mm 0.6mm pitch
78 - dual 32-bit DDR3/4 interfaces.
79 - Suitable for 4k HD resolution screens and Graphics Card capability.
80
81 By re-packaging the same die in different FPGA packages it meets the
82 needs of different markets without significant NREs. Texas Instruments
83 and Freescale/NXP and many other companies follow this practice.
84
85 **Timeframe from when funding is received:**
86
87 * 6-8 months for PHY negotiation and supply by IP Vendors (DDR4 is always
88 custom-tailored by the supplier)
89 * 6-8 months development (in parallel with PHY negotiation)
90 * 3-4 months FPGA proof-of-concept (partial overlap with above)
91 * 4-6 months layout development once design is frozen (partial overlap with
92 above)
93
94 Total: 12-18 months development time. **This is industry-standard**
95
96 **NREs:**
97
98 These are ballpark estimates:
99
100 * USD 250,000 for layout software licensing (Cadence / Synopsis / Mentor)
101 * USD 400,000 for engineer to perform layout to GDS-II
102 * USD 1,000,000 for (LP)DDR3/4 which includes customisation by IP vendor
103 * USD 250,000 for Libre-licensed DDR firmware (normally closed binary)
104 * USD 250,000 for USB3/C
105 * USD 250,000 for HDMI PHY (includes HDCP closed firmware: DVI may be better)
106 * USD 50,000 for PCIe PHY
107 * USD 50,000 for RGMII Ethernet PHY
108 * USD 50,000 for Libre-licensed PCIe firmware (normally closed binary)
109 * USD 2,000,000 for Software and Hardware Engineers
110 * USD 2,000,000 for 22nm Production Masks (1,000,000 for 28nm)
111 * USD 200,000 per 22nm MPW Shuttle Service (test ASICs. 28nm is 100,000)
112 * USD 200,000 estimated for other PHYs (UART, SD/MMC, I2C, SPI)
113
114 Total is around USD 7 million.
115
116 Note that this is a bare minimum and may require re-spins of the production
117 masks. A safety margin is recommended to cover at least 2 additional
118 re-spins. Business Operating costs bring the total realistically
119 to around USD 12 million.
120
121 Production cost is expected to be around the $3.50 to $4 mark meaning
122 that a sale price of around $12-$13 will require **1 million units**
123 sold to recover the NREs.
124
125 **Even if the SoC used an off-the-shelf OpenPOWER core or a lower
126 functionality core without GPU or VPU capability these development
127 NREs are still required**
128
129 # Functionality
130
131 - 4 Core SMP dual-issue LibreSOC OpenPOWER CPU
132 - SimpleV Capability with VPU and GPU Instructions *no need for separate GPU*
133 - IOMMU
134 - PCIe Host Controller
135 - PCIe Slave controller (RaptorCS wants to use LibreSOC as a Graphics Card
136 on their TALOS-II motherboards)
137 - BMC capability (OpenBMC / LibreBMC) - enables LibreSOC to replace the
138 closed source existing market BMC product range, booting up large servers
139 securely
140 - RGB/TTL framebuffer VGA/LCD PHY from Richard Herveille, RoaLogic.
141 - Pinmux for mapping multiple I/O functions to pins (standard fare
142 for SoCs, to reduce pincount)
143 - SD/MMC and eMMC
144 - Standard "Pi / Arduino" SoC-style interfaces including UART, I2C,
145 SPI, GPIO, PWM, EINT, AC97.
146
147 The "PI / Arduino" style interfaces are provided so as to be pin-comoatibke with the existing "Shield" 3rd party producy markets.
148
149 # Interfaces
150
151 Much of the advanced section is "under consideration" because there are proprietary firmware issues involved as well as high power consumption and high costs involved. OpenCAPI for example would, in 22nm, at 25 ghz, be an enormous power draw (IBM used 14nm for the POWER9 25ghz SERDES)
152
153 HDCP is present in HDMI, as well as being optional in eDP and by extension USB-C as well. Licensing of any of these Controllers therefore introduces the risk of closed firmware which will be viewed unfavourably by the educational markets, libre/open supporters and advocates, as well as cause Customer Support issues and introduce security vulnerabilities that *cannot be fixed or evaluated*.
154
155 Great care therefore needs to be taken in selecting the advanced interfaces.
156
157 ## Advanced
158
159 - SERDES - 10rx, 14tx
160 - 4tx, 4rx for [OMI(DDR4](https://openpowerfoundation.org/wp-content/uploads/2018/10/Jeff-Steuchli.OpenCAPI-OPS-OMI.pdf) on top of SERDES with OpenCAPI protocol) @25GHz
161 - 4tx, 4rx for PCIe and other CAPI devices
162 - 3tx for HDMI (note: requires HDMI Trademark Licensing and Compliance Testing. DVI is an alternative)
163 - USB-OTG / USB2 - [Luna USB](https://github.com/greatscottgadgets/luna)
164 with [USB3300 PHY](https://www.microchip.com/wwwproducts/en/USB3300#datasheet-toggle) (Tested max at 333MB/s with Luna on ECP5)
165 - [[shakti/m_class/USB3]]
166
167 ## Basic
168
169 - [OpenFSI](https://openpowerfoundation.org/?resource_lib=field-replaceable-unit-fru-service-interface-fsi-openfsi-specification) instead of / as well as JTAG
170 - [Raptor HDL](https://gitlab.raptorengineering.com/raptor-engineering-public/lpc-spi-bridge-fpga)
171 - [Raptor Libsigrok](https://gitlab.raptorengineering.com/raptor-engineering-public/dsview/-/tree/master/libsigrokdecode4DSL/decoders/fsi)
172
173 These should be easily doable with LiteX.
174
175 * [[shakti/m_class/UART]]
176 * [[shakti/m_class/JTAG]]
177 * [[shakti/m_class/I2C]]
178 * [[shakti/m_class/GPIO]]
179 * [[shakti/m_class/SPI]]
180 * [[shakti/m_class/QSPI]]
181 * [[shakti/m_class/LPC]] - BMC Management
182 * [[shakti/m_class/EINT]]
183 * [[shakti/m_class/PWM]]
184 * [[shakti/m_class/RGBTTL]] in conjunction with:
185 - TI TFP410a (DVI / HDMI)
186 - Chrontel converter (DVI, eDP, VGA)
187 - Solomon SSD2828 (MIP)
188 - TI SN75LVDS83b (LVDS)
189
190 # Protocols
191 - IMPI over i2c to talk to the BMC
192 - [Intel Spec Sheet](https://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/second-gen-interface-spec-v2.pdf)
193 - [RaptorCS HDL](https://gitlab.raptorengineering.com/raptor-engineering-public/lpc-spi-bridge-fpga/blob/master/ipmi_bt_slave.v)
194 - Reset Vector is set Flexver address over LPC
195 - [Whitepaper](https://www.raptorengineering.com/TALOS/documentation/flexver_intro.pdf)
196
197 # Notes
198
199 * closed source BMC when web-enabled is a high value hacking target
200
201