(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 Even efforts by the Raspberry Pi Foundation to see a non-Broadcom processor
36 be developed and deployed have not been successful because a Pi-only-centric
37 processor does not have a large enough market share to justify the NREs.
38
39 **The lesson here is that a low-cost processor must cover multiple markets
40 to be successful**.
41
42 Consequently the Libre-SOC "POWER Pi" is designed to enter multiple
43 disparate large-volume markets: the Educational and Open aspects
44 may thus be considered an essential part of the P.R. rather than as
45 major sales opportunities.
46
47 # Specs for 22/28nm SOC
48
49 **Overall goal: an SoC that is capable of meeting multiple markets:**
50
51 * Basic "Pi" style SBC role (aka POWER-Pi)
52 - Power consumption to be **strictly** limited to under 3.5 watts
53 so as to be passively-cooled and significantly reduce OEM product costs,
54 as well as increase reliability
55 * Libre-style smartphone, tablet, netbook and chromebook products
56 - Pine64, Purism, FairPhone, many others
57 - 3.5 watt limit greatly simplifies portable product development,
58 as well as increasing battery life
59 * Baseboard Management Controller (BMC) replacement for existing BMC products
60 - including PCIe Video Card capability after BMC Boot
61 * Mid-end low-cost Graphics Card with reasonable 3D and VPU capabilities
62 - This as a sub-goal of the BMC functionality (stand-alone)
63
64 By meeting the needs of multiple markets in a single SoC the product has
65 broader appeal yet amortises the NREs across all of them. This is
66 industry-standard practice: ST Micro and ATMEL use the exact same die in
67 up to 12-14 different products.
68
69 **Three different pin packages:**
70
71 * 400-450 pin FBGA 18mm 0.8mm and 14mm 0.6mm pitch
72 - single 32-bit DDR3/4 interface (appx 120 pins incl. VSS/VDD)
73 - Suitable for smaller products.
74 - 0.8mm pitch is easier for low-cost China PCB manufacturing
75 - This lesson is learned from Freescale's 19-year-LTS iMX6 SoC
76 * 600-650 pin FBGA appx 20mm 0.6mm pitch
77 - dual 32-bit DDR3/4 interfaces.
78 - Suitable for 4k HD resolution screens and Graphics Card capability.
79
80 By re-packaging the same die in different FPGA packages it meets the
81 needs of different markets without significant NREs. Texas Instruments
82 and Freescale/NXP and many other companies follow this practice.
83
84 **Timeframe from when funding is received:**
85
86 * 6-8 months for PHY negotiation and supply by IP Vendors (DDR4 is always
87 custom-tailored by the supplier)
88 * 6-8 months development (in parallel with PHY negotiation)
89 * 3-4 months FPGA proof-of-concept (partial overlap with above)
90 * 4-6 months layout development once design is frozen (partial overlap with
91 above)
92
93 Total: 12-18 months development time. **This is industry-standard**
94
95 **NREs:**
96
97 These are ballpark estimates:
98
99 * USD 250,000 for layout software licensing (Cadence / Synopsis / Mentor)
100 * USD 400,000 for engineer to perform layout to GDS-II
101 * USD 1,000,000 for (LP)DDR3/4 which includes customisation by IP vendor
102 * USD 250,000 for Libre-licensed DDR firmware (normally closed binary)
103 * USD 250,000 for USB3/C
104 * USD 250,000 for HDMI PHY (includes HDCP closed firmware: DVI may be better)
105 * USD 50,000 for PCIe PHY
106 * USD 50,000 for RGMII Ethernet PHY
107 * USD 50,000 for Libre-licensed PCIe firmware (normally closed binary)
108 * USD 2,000,000 for Software and Hardware Engineers
109 * USD 2,000,000 for 22nm Production Masks (1,000,000 for 28nm)
110 * USD 200,000 per 22nm MPW Shuttle Service (test ASICs. 28nm is 100,000)
111 * USD 200,000 estimated for other PHYs (UART, SD/MMC, I2C, SPI)
112
113 Total is around USD 7 million.
114
115 Note that this is a bare minimum and may require re-spins of the production
116 masks. A safety margin is recommended to cover at least 2 additional
117 re-spins. Business Operating costs bring the total realistically
118 to around USD 12 million.
119
120 Production cost is expected to be around the $3.50 to $4 mark meaning
121 that a sale price of around $12-$13 will require **1 million units**
122 sold to recover the NREs.
123
124 **Even if the SoC used an off-the-shelf OpenPOWER core or a lower
125 functionality core without GPU or VPU capability these development
126 NREs are still required**
127
128 # Functionality
129
130 - 4 Core SMP dual-issue LibreSOC OpenPOWER CPU
131 - SimpleV Capability with VPU and GPU Instructions *no need for separate GPU*
132 - IOMMU
133 - PCIe Host Controller
134 - PCIe Slave controller (RaptorCS wants to use LibreSOC as a Graphics Card
135 on their TALOS-II motherboards)
136 - BMC capability (OpenBMC / LibreBMC) - enables LibreSOC to replace the
137 closed source existing market BMC product range, booting up large servers
138 securely
139 - RGB/TTL framebuffer VGA/LCD PHY from Richard Herveille, RoaLogic.
140 - Pinmux for mapping multiple I/O functions to pins (standard fare
141 for SoCs, to reduce pincount)
142 - SD/MMC and eMMC
143 - Standard "Pi / Arduino" SoC-style interfaces including UART, I2C,
144 SPI, GPIO, PWM, EINT, AC97.
145
146 The "PI / Arduino" style interfaces are provided so as to be pin-comoatibke with the existing "Shield" 3rd party producy markets.
147
148 # Interfaces
149
150 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)
151
152 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*.
153
154 Great care therefore needs to be taken in selecting the advanced interfaces.
155
156 ## Advanced
157
158 - SERDES - 10rx, 14tx
159 - 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
160 - 4tx, 4rx for PCIe and other CAPI devices
161 - 3tx for HDMI (note: requires HDMI Trademark Licensing and Compliance Testing. DVI is an alternative)
162 - USB-OTG / USB2 - [Luna USB](https://github.com/greatscottgadgets/luna)
163 with [USB3300 PHY](https://www.microchip.com/wwwproducts/en/USB3300#datasheet-toggle) (Tested max at 333MB/s with Luna on ECP5)
164 - [[shakti/m_class/USB3]]
165
166 ## Basic
167
168 - [OpenFSI](https://openpowerfoundation.org/?resource_lib=field-replaceable-unit-fru-service-interface-fsi-openfsi-specification) instead of / as well as JTAG
169 - [Raptor HDL](https://gitlab.raptorengineering.com/raptor-engineering-public/lpc-spi-bridge-fpga)
170 - [Raptor Libsigrok](https://gitlab.raptorengineering.com/raptor-engineering-public/dsview/-/tree/master/libsigrokdecode4DSL/decoders/fsi)
171
172 These should be easily doable with LiteX.
173
174 * [[shakti/m_class/UART]]
175 * [[shakti/m_class/JTAG]]
176 * [[shakti/m_class/I2C]]
177 * [[shakti/m_class/GPIO]]
178 * [[shakti/m_class/SPI]]
179 * [[shakti/m_class/QSPI]]
180 * [[shakti/m_class/LPC]] - BMC Management
181 * [[shakti/m_class/EINT]]
182 * [[shakti/m_class/PWM]]
183 * [[shakti/m_class/RGBTTL]] in conjunction with:
184 - TI TFP410a (DVI / HDMI)
185 - Chrontel converter (DVI, eDP, VGA)
186 - Solomon SSD2828 (MIP)
187 - TI SN75LVDS83b (LVDS)
188
189 # Protocols
190 - IMPI over i2c to talk to the BMC
191 - [Intel Spec Sheet](https://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/second-gen-interface-spec-v2.pdf)
192 - [RaptorCS HDL](https://gitlab.raptorengineering.com/raptor-engineering-public/lpc-spi-bridge-fpga/blob/master/ipmi_bt_slave.v)
193 - Reset Vector is set Flexver address over LPC
194 - [Whitepaper](https://www.raptorengineering.com/TALOS/documentation/flexver_intro.pdf)
195
196 # Notes
197
198 * closed source BMC when web-enabled is a high value hacking target
199
200