Holographic Processing Unit
More actions
| Holographic Processing Unit | |
|---|---|
| Information | |
| Type | Sensor coprocessor |
| Subtype | Mixed reality headset coprocessor |
| Creator | Microsoft |
| Developer | Microsoft |
| Manufacturer | TSMC |
| Devices | Microsoft HoloLens (HPU 1.0), HoloLens 2 (HPU 2.0) |
| Release Date | Announced January 21, 2015; first shipped to developers in March 2016 |
| Website | https://learn.microsoft.com/en-us/hololens/hololens2-hardware |
The Holographic Processing Unit (HPU) is a custom coprocessor designed by Microsoft for its HoloLens mixed reality headsets. It sits beside the headset's main processor and handles the data from the on-board sensors, so that tracking, environment sensing and gesture input do not have to run on the general-purpose CPU.[1][2] Microsoft built two generations. HPU 1.0 is in the original Microsoft HoloLens, paired with an Intel Atom "Cherry Trail" processor.[3][4] The second-generation HPU 2.0 is in HoloLens 2 alongside a Qualcomm Snapdragon 850, and adds a dedicated deep neural network (DNN) core.[5][6]
Both chips are built from Tensilica configurable DSP cores (a Cadence Design Systems processor line) extended with Microsoft's own instructions and fixed-function accelerators. Microsoft described them in detail at the Hot Chips symposium in 2016 and 2019.[4][7]
History
Announcement (2015)
Microsoft unveiled HoloLens at its Windows 10 event on January 21, 2015. A Microsoft developer blog summary of the event listed the headset's "high-end CPU, GPU, and HPU (Holographic Processing Unit)" and said the device needed no wires and no phone or PC connection.[8] Road to VR described the HPU as "a dedicated chip to handle sensing and interpretation of the real world as revealed by on-board sensors".[2] Developer shipments of the headset began in March 2016.[9]
Hot Chips 2016 disclosure
Microsoft disclosed the HPU's design at the Hot Chips conference in Cupertino, California, in August 2016, in a presentation by Microsoft Devices Group engineer Nick Baker.[4] According to Network World, Microsoft had evaluated SoC CPUs and GPUs, traditional CPU arrays and commercial image signal processors before choosing the Cadence Tensilica design. Its priorities were support for multiple algorithms, room for future growth (cores were limited to 50% utilization) and guaranteed latency.[9] Tom's Hardware described the result as a hybrid that uses programmable units wherever possible and fixed-function blocks where they made sense.[10]
At the Embedded Vision Summit in 2017, HoloLens director of science Marc Pollefeys described the HoloLens hardware, including the HPU, in the opening keynote; Cadence's Paul McLellan summarized the talk.[11]
AI coprocessor announcement (2017)
In July 2017, Harry Shum, executive vice president of Microsoft's Artificial Intelligence and Research Group, announced in a keynote at the CVPR 2017 computer vision conference that the second version of the HPU, then under development, would incorporate an AI coprocessor to "natively and flexibly implement DNNs". Pollefeys wrote that the chip supports "a wide variety of layer types, fully programmable by us", that Shum showed "an early spin of the second version of the HPU running live code implementing hand segmentation", and that the coprocessor was designed to run continuously off the next HoloLens's battery.[1] Pollefeys explained the reason for custom silicon: any low-latency compute, such as hand tracking, "has to run off the same battery that powers everything else".[1] Road to VR reported that the demonstration ran hand-tracking models on a first-generation HoloLens connected to a PC fitted with the new coprocessor.[12]
HoloLens 2 and Hot Chips 2019
Microsoft announced HoloLens 2 on February 24, 2019. Road to VR's specification report described the headset as using a Snapdragon 850 "along with Microsoft's own 2nd generation 'Holographic Processing Unit', a co-processor which handles sensor input".[13] Microsoft engineers described the headset's custom sensors and "low power compute blocks aggregated in a custom ASIC" in a paper at the 2019 Symposium on VLSI Circuits.[14]
Elene Terry of Microsoft described the silicon inside HoloLens 2 in "The Silicon at the Heart of the Hololens 2", the final talk of Hot Chips 31, on August 20, 2019.[15][7] The Register reported Terry's explanation that the relatively large 79 mm2 die lets enough heat escape, which matters because the chip sits over the wearer's forehead between the eyes.[16]
Current status
In October 2024 Microsoft confirmed that HoloLens 2 production had ended and that there was no replacement headset. HoloLens 2 receives fixes for critical security issues and software regressions until December 31, 2027, and software support for the original HoloLens ended after December 10, 2024.[17]
Features
Role in the headset
Pollefeys wrote that the HPU processes the information from all of HoloLens's on-board sensors, including Microsoft's custom time-of-flight depth sensor, the head-tracking cameras, the inertial measurement unit (IMU) and the infrared camera.[1] Network World reported that it handles environmental data, aggregates sensor data and processes the wearer's gesture movements.[9] A 2020 paper by Microsoft researchers on the HoloLens 2 Research Mode states that the HPU 2.0 runs all of the on-device computer vision algorithms, including head tracking, hand tracking, eye gaze tracking and spatial mapping, and hosts the DNN core, and that the CPU of the Snapdragon 850 "remains fully available for applications". The HPU sits at the front of the headset near the sensors, and the SoC is at the rear.[6]
The HPU does not render application graphics. At Hot Chips 2019, Microsoft explained that the application processor runs the app and renders images, which are sent back to the HPU over MIPI. The HPU then adjusts the rendered image and sends it to the displays.[15] Microsoft's developer documentation describes HoloLens's hologram stabilization through reprojection as a "hardware-assisted" technique.[18] For hologram stability on HPU 2.0, Microsoft cited multiple pose updates per frame and a hardened block that decouples the render resolution from the display resolution. The HPU also timestamps sensor data as it arrives.[15]
HPU 1.0
The first HPU is made by TSMC on a 28 nm high-performance compact (HPC) process and contains about 65 million logic gates.[4][11] Most of the die is taken up by 12 compute nodes, each with two Tensilica DSP cores, for 24 cores in total.[10][4] Microsoft started from Cadence's Xtensa base instruction set and added about 300 of its own extensions, according to Tom's Hardware.[10] Fixed-function accelerators handle tasks the DSP cores cannot address satisfactorily; some stand alone and others are tightly coupled to the cores.[10][11] Microsoft said the combination runs algorithms up to 200 times faster than software alone.[4][11] The Register put the chip's throughput at a trillion calculations per second, and Tom's Hardware at about one trillion pixel operations per second.[4][10]
The chip has 8 MB of SRAM and comes in a 12 mm by 12 mm BGA package (0.4 mm pitch, according to Cadence), and it is paired with 1 GB of low-power DDR3 (LPDDR3) memory. The Register and Cadence both reported that it dissipates less than 10 W.[4][11] Tom's Hardware reported the I/O layout presented at Hot Chips: MIPI CSI inputs from the depth camera and the four environment understanding cameras, MIPI DSI outputs to the two displays, an SPI link to the IMU, I2C for a temperature sensor, and PCI Express to the Intel SoC.[10] The host SoC is an Intel Atom x86 Cherry Trail chip running 32-bit Windows 10.[4] Microsoft lists the headset's processors as "Intel 32-bit architecture with TPM 2.0 support" and a "Custom-built Microsoft Holographic Processing Unit (HPU 1.0)", with 2 GB of RAM in total.[3] Cadence's summary splits that RAM as 1 GB for the main CPU and 1 GB for the HPU.[11]
HPU 2.0
HPU 2.0 is a 79 mm2 die made on TSMC's 16FF+ process, with 123 million gates, about 2 billion transistors and 125 Mb of SRAM.[15][7] It taped out in September 2016 and worked on its first silicon, according to Cadence's account of the talk.[7] The chip runs only Microsoft workloads under a single Microsoft real-time operating system, with no memory management units and simple interrupts.[15]
Its programmable compute is split into 13 statically assigned compute nodes: seven SIMD fixed-point (SFP) nodes for 2D processing and six vector floating-point (VFP) nodes for 3D work. Each node has two Tensilica processors, giving 26 in total, and both node types are 128 bits wide (the SFP nodes in HPU 1.0 were 64-bit). Microsoft quoted more than 1 TOPS (tera operations per second) of programmable compute.[15][7] The cores have hundreds of custom instructions. Microsoft profiled its algorithms to collapse sequences of tens of operations into single instructions; its example, boxavg_2x16x8, averages a block of pixels in one cycle and saves more than 10,000 cycles per frame.[15][7]
Some functions are hardened into fixed logic. A joint bilateral filter for the time-of-flight depth sensor was converted from C code into RTL, which cut its power to a third and its latency to a thirtieth. The chip also has a hardened neural network block.[15][7] Terry's list of hardware blocks on the chip was: the SFP and VFP nodes, an LSR engine, DMA, monochrome ISPs, FFT for audio, the DNN, the joint bilateral filter, an interrupt controller, sensor frame timers, a DRAM scheduler (memory controller) and a classifier.[7]
Functions handled by HPU 2.0, from a partial list given in the talk, include fully articulated hand tracking, spatial audio, 6DoF tracking, hologram stability, eye tracking, spatial reconstruction and mapping, and scene understanding such as finding floors, walls and ceilings.[7]
Because the chip is mounted at the brow, its thermal budget is 2.4 W averaged over 30 minutes at 85 degrees Celsius. Microsoft used clock gating and power gating, runs most digital logic at 250 MHz and the compute nodes at 500 MHz, and lowered the supply voltage below 630 mV, which saved a further 20% of power.[7][15] The HPU at the front of the headset talks to the application processor at the back over a PCIe 2.0 x1 link at about 100 MB/s, and has its own custom DRAM scheduler.[15][16]
Comparison of generations
| Feature | HPU 1.0 | HPU 2.0 |
|---|---|---|
| Headset | Microsoft HoloLens (2016)[3] | HoloLens 2 (2019)[5] |
| Host processor | Intel Atom x86 Cherry Trail[4] | Qualcomm Snapdragon 850[5] |
| Process | TSMC 28 nm HPC[11] | TSMC 16FF+[15] |
| Logic | About 65 million gates[4] | 123 million gates, about 2 billion transistors, 79 mm2 die[7] |
| On-chip SRAM | 8 MB[4] | 125 Mb[7] |
| Programmable cores | 24 Tensilica DSP cores in 12 compute nodes[10] | 26 Tensilica processors in 13 compute nodes (7 SFP, 6 VFP)[7] |
| Stated compute | About one trillion calculations per second; up to 200x faster than software[4] | More than 1 TOPS of programmable compute[15] |
| Neural network hardware | None disclosed; Microsoft announced an AI coprocessor for the second version in 2017[1] | Hardened DNN core[7][6] |
| Power | Less than 10 W[4] | 2.4 W thermal budget averaged over 30 minutes[7] |
Microsoft compared the two at Hot Chips 2019. HPU 2.0 supports twice the field of view, has 1.7 times the compute and twice the effective DRAM bandwidth, and gives better hologram stability. It also runs four workloads the first chip did not: eye tracking, fully articulated hand tracking, semantic labeling and spatial audio.[7][16]
Supported devices
| Device | HPU version | Released | Status (October 2026) |
|---|---|---|---|
| Microsoft HoloLens | HPU 1.0[3] | Developer shipments from March 2016[9] | Software support ended December 10, 2024[17] |
| HoloLens 2 | HPU 2.0[5][6] | Announced February 24, 2019[13] | Production ended 2024; security and regression fixes until December 31, 2027[17] |
See also
References
- ↑ 1.0 1.1 1.2 1.3 1.4 Marc Pollefeys (2017-07-23). "Second version of HoloLens HPU will incorporate AI coprocessor for implementing DNNs". Microsoft Research Blog. Microsoft. https://www.microsoft.com/en-us/research/blog/second-version-hololens-hpu-will-incorporate-ai-coprocessor-implementing-dnns/. Retrieved 2026-10-04.
- ↑ 2.0 2.1 Ben Lang (2015-01-21). "'Microsoft HoloLens' Revealed, an Untethered See-through AR Headset". Road to VR. https://roadtovr.com/microsoft-hololens-augemtend-reality-virtual-reality-headset-microsoft-holographic-windows-10/. Retrieved 2026-10-04.
- ↑ 3.0 3.1 3.2 3.3 "HoloLens (1st gen) hardware". Microsoft Learn. Microsoft. https://learn.microsoft.com/en-us/previous-versions/mixed-reality/hololens-1/hololens1-hardware. Retrieved 2026-10-04.
- ↑ 4.00 4.01 4.02 4.03 4.04 4.05 4.06 4.07 4.08 4.09 4.10 4.11 4.12 4.13 Chris Williams (2016-08-23). "Microsoft's HoloLens secret sauce: A 28nm customized 24-core DSP engine built by TSMC". The Register. https://www.theregister.com/2016/08/22/microsoft_hololens_hpu/. Retrieved 2026-10-04.
- ↑ 5.0 5.1 5.2 5.3 "HoloLens 2 hardware". Microsoft Learn. Microsoft. 2023-02-02. https://learn.microsoft.com/en-us/hololens/hololens2-hardware. Retrieved 2026-10-04.
- ↑ 6.0 6.1 6.2 6.3 Dorin Ungureanu, Federica Bogo, Silvano Galliani, Pooja Sama, Xin Duan, Casey Meekhof, Jan Stühmer, Thomas J. Cashman, Bugra Tekin, Johannes L. Schönberger, Pawel Olszta, Marc Pollefeys (2020-08-25). "HoloLens 2 Research Mode as a Tool for Computer Vision Research". arXiv, 2008.11239. https://arxiv.org/abs/2008.11239. Retrieved 2026-10-04.
- ↑ 7.00 7.01 7.02 7.03 7.04 7.05 7.06 7.07 7.08 7.09 7.10 7.11 7.12 7.13 7.14 7.15 Paul McLellan (2019-08-23). "HOT CHIPS: Microsoft Hololens 2". Breakfast Bytes (Cadence Community). Cadence Design Systems. https://web.archive.org/web/2020/https://community.cadence.com/cadence_blogs_8/b/breakfast-bytes/posts/holo2. Retrieved 2026-10-04.
- ↑ "Windows 10 announcements on Jan 21, 2015". Microsoft Learn (archived MSDN blog). Microsoft. 2015-01-21. https://learn.microsoft.com/en-gb/archive/blogs/jennifer/windows-10-announcements-on-jan-21-2015. Retrieved 2026-10-04.
- ↑ 9.0 9.1 9.2 9.3 Andy Patrizio (2016-08-24). "Microsoft reveals the chip behind HoloLens". Network World. https://www.networkworld.com/article/954616/microsoft-reveals-the-chip-behind-hololens.html. Retrieved 2026-10-04.
- ↑ 10.0 10.1 10.2 10.3 10.4 10.5 10.6 Chris Angelini (2016-08-30). "Microsoft HoloLens: HPU Architecture, Detailed". Tom's Hardware. https://www.tomshardware.com/news/microsoft-hololens-hpu-architecure-28nm,32586.html. Retrieved 2026-10-04.
- ↑ 11.0 11.1 11.2 11.3 11.4 11.5 11.6 Paul McLellan (2017-06-15). "Lifting the Veil on Hololens". Edge AI and Vision Alliance (reprinted from Cadence's Breakfast Bytes blog). https://www.edge-ai-vision.com/2017/06/lifting-the-veil-on-hololens/. Retrieved 2026-10-04.
- ↑ Scott Hayden (2017-07-24). "HoloLens 2.0 to Put a Custom A.I. Chip at the Heart of Its On-board Processor". Road to VR. https://www.roadtovr.com/hololens-2-0-put-custom-chip-heart-board-processor/. Retrieved 2026-10-04.
- ↑ 13.0 13.1 Ben Lang (2019-02-24). "HoloLens 2 Specs Reveal 2-3 Hour 'Active' Battery Life, Optional Top Strap, & More". Road to VR. https://roadtovr.com/hololens-2-specs-resolution-field-of-view-battery-life/. Retrieved 2026-10-04.
- ↑ Patrick O'Connor, Casey Meekhof, Chad McBride, Christopher Mei, Cyrus Bamji, Dave Rohn, Hakon Strande, Justin Forrester, Mike Fenton, Ryan Haraden, Tolga Ozguner, Travis Perry (2019-06). "Custom Silicon and Sensors Developed for a 2nd Generation Mixed Reality User Interface". 2019 Symposium on VLSI Circuits, pp. C186-C187. IEEE. doi:10.23919/VLSIC.2019.8778092. https://doi.org/10.23919/VLSIC.2019.8778092. Retrieved 2026-10-04.
- ↑ 15.00 15.01 15.02 15.03 15.04 15.05 15.06 15.07 15.08 15.09 15.10 15.11 Ian Cutress (2019-08-20). "Hot Chips 31 Live Blogs: Microsoft Hololens 2.0 Silicon". AnandTech. https://web.archive.org/web/2020/https://www.anandtech.com/show/14775/hot-chips-31-live-blogs-microsoft-hololens-20-silicon. Retrieved 2026-10-04.
- ↑ 16.0 16.1 16.2 Katyanna Quach (2019-08-23). "Got a burning desire for a Hololens 2.0? Microsoft insists its math coprocessor won't be too hot for headgear". The Register. https://www.theregister.com/2019/08/23/microsoft_hololens_chips/. Retrieved 2026-10-04.
- ↑ 17.0 17.1 17.2 David Heaney (2024-10-01). "Microsoft Is Discontinuing HoloLens 2, With No Replacement". UploadVR. https://www.uploadvr.com/microsoft-discontinuing-hololens-2/. Retrieved 2026-10-04.
- ↑ "Hologram stability". Microsoft Learn. Microsoft. https://learn.microsoft.com/en-us/windows/mixed-reality/develop/advanced-concepts/hologram-stability. Retrieved 2026-10-04.