The development of PSoC™ a programmable system on chip

This year, we celebrate the twentieth anniversary of the launch of PSoC™, a programmable system on chip developed by Cypress Semiconductor, now a part of Infineon Technologies. Technology evolution is a constant companion to the silicon industry, and twenty years ago, the focus was the burgeoning demand for microcontrollers. The nature of the semiconductor is that you need to find a market niche and build volume quickly. Research, development, and production costs are significant, so the first-mover advantage rule applies.

Grasping the microcontroller market opportunity

In the late 1980s, Cypress Semiconductor had a range of complex programmable logic devices (CPLDs) based on its SONOS (silicon oxide and nitride oxide silicon) process technology. In addition to the CPLD line-up, Cypress used the SONOS process to develop a mouse control IC and, later, a USB controller. At the heart of these application-specific integrated circuits (ASICs) was a microcontroller (MCU) core. The market for PC USB-connected peripherals and the rapidly growing popularity of graphic interfaces saw significant demand for these ASICs. Memory devices were another key product line for Cypress.

By the early 2000s, Cypress management was keen to grasp the microcontroller market's opportunities, but there were numerous challenges. The 8-bit microcontroller market had become saturated with several dominant players by then. The competitors had been in the market for several decades and had an impressive portfolio of 8-bit MCUs. Entering the market with a new MCU with similar features to those already available was a daunting prospect.

Some informal conversations with embedded engineers highlighted that developers realized that an MCU didn't provide everything they needed for an application for most applications. Typically, a host of analog ICs, such as op-amps and passive components, and other digital ICs were required. The additional parts often cost more than the MCU, pushing up the bill of material (BOM) cost and requiring valuable PCB space.

Armed with this insight and realizing the potential value that mixed-signal programmability could bring to embedded developers, several product development engineers approached Cypress management. They convinced them that, perhaps, rather than selling ASICs, they could package their MCU core with a host of programmable analog and digital functions around it. Although the idea looked promising, offering a differentiated microcontroller product into the market, Cypress decided to incubate the concept within a new subsidiary, Cypress MicroSystems.

Developing a concept into a product, PSoC™ 1

The initial programmable system-on-chip product, PSoC™ 1, used the SONOS process technology to construct an 8-bit Harvard architecture 24 MHz M8C microcontroller core and a programmable mixed-signal array. Like a field-programmable gate array (FPGA), a PSoC™ needs to configure its programmable blocks at start-up by loading instructions from flash memory. A key aspect of PSoC™'s programmable features is that the microcontroller can reconfigure them instantly. Programmable features can be loaded into different levels, allowing the PSoC™ to function entirely differently. Analog programmable blocks provide the building blocks for discrete circuit functions, for example, op-amps, comparators, counters, timers, pulse-width modulators, and switchable passive arrays. Individual blocks can be interconnected to form other functions, such as an analog to digital converter (ADC), a programmable gain amplifier (PGA), or a programmable bandpass filter. Programmable universal digital blocks (UDBs) included a host of primitive logic gates, serial communication interfaces, and digital filter blocks - see Figure 1.

Alongside PSoC™'s hardware design, a software development team wrote a GUI-based configurator IDE, Cypress PSoC™ Creator. 

Embedded development community embraces PSoC™

From launch, the embedded development community took to PSoC™. For the first time, not only did PSoC™ 1 (the Cypress CY82Cxxxx series) offer an MCU but also a host of programmable analog and digital features. Some developers took a while to grasp the enormity of what Cypress had developed, while others 'got it' immediately. Suddenly, there was a device that could significantly reduce the BOM component count and cost. Also, many developers realized that PSoC™ was a device that could reconfigure itself for multiple applications. Aside from using expensive and complex FPGAs, PSoC™ was the first time a microcontroller featured any form of reconfigurability. Reconfigurability is a crutial during prototyping and initial production phases. Engineers could rectify simple board layout or pin allocation errors in minutes, saving significant NRE and rework costs.

There are many examples where PSoC™ saved significant BOM costs, but here are just a few.

Hotel room door lock: A door lock manufacturer reviewed PSoC™ for an updated product design. The current design featured a magnetic swipe card reader, an MCU, the card reader, some op-amps, a solenoid driver, and a host of passives. It also incorporated a real-time clock and a battery monitor, a total BOM count of 90 components. Using PSoC™ 1, the company reduced the BOM to 20 items, simplified the board layout, and used fewer layers. It is an excellent example of what we hoped for by developing PSoC™.

Vending machine: A PSoC™-based design was used to count the value of coins inserted into a vending machine by measuring their resistivity. Using a series of electromechanically controlled levers, the application directed coins to individual coin hoppers. Using PSoC™'s programmable digital functions, an ultrasonic pulse was used to detect the height of the coins in each hopper. Once each hopper had reached a pre-determined size, the PSoC™ reconfigured itself into a DTMF dialer and communicated with a control application to instigate a service call. Once the control system acknowledged the message, the PSoC™ reconfigured itself to the coin validation task. Again, using PSoC™ saved considerable BOM and PCB size.

PSoC™ evolves

PSoC™ quickly gathered market adoption, and some use cases became a natural fit, and one of them was for capacitive touch sensing. The early 2000s saw the mobile phone market replace traditional phone keypads with a touch screen and the advent of personal media players. With PSoC™'s programmable analog blocks, capacitive touch sensing was a perfect sweet spot for us. We developed a fixed block for the purpose, which became named CAPSENSE™, which has continued throughout the evolution of PSoC™.

We often get asked a popular question about the PSoC™ numbering sequence and why there isn't a PSoC™ 2. With the success of PSoC™ 1, Cypress Microsystems became folded back into Cypress Semiconductor, and work commenced on PSoC™ 2. Semiconductor process technologies were developing quickly in the mid-2000s. The thought was we would move to a smaller geometry and use a higher voltage process to incorporate better motor drive capabilities. Now integrated into Cypress fully and no longer considered a start-up, there were more design considerations. A key influencing factor was that Cypress was building out its next-generation mixed-signal platform, something PSoC™ should adopt moving forward. We decided not to continue with the development of PSoC™ 2 but to commence PSoC™ 3 development using a 130 nm 5 V process.

PSoC™ 3 and PSoC™ 5

PSoC™ 3 - the CY8C3xxxx series - saw an improved analog performance; for example, a 16-bit sigma-delta ADC capable of operating at audio rates compared to the 12-bit block used in PSoC™1. 20-bit performance was achievable at lower data rates using a successive approximation register (SAR) conversion technique. Also, flash memory capacity increased to 256 kb, and the MCU core switched to the popular 8051, capable of operating up to 67 MHz.

PSoC™ 3 formed the basis for PSoC™ 5 - the CY8C5 series - a larger version of the PSoC™ 3 and signaling the move to a 32-bit 80 MHz Arm Cortex M3 core. PSoC™ 5 has so many features that it has been described as a breadboard lab on a chip. It is enjoyable to play with and ideal for architecting complex applications.

Both PSoC™ 3 and PSoC™ 5 launched in 2009, significantly expanding the total addressable market opportunity above that of PSoC™ 1. The Cypress annual report in 2009 highlighted that PSoC™ 3's analog capabilities could remove the need for up to 30 discrete analog ICs in a design, saving more than $ 8.92 - see Figure 2.

PSoC™ 4 and PSoC™ 6

By the mid-2000s, our competitors were catching up with the lead we'd established with PSoC™. PSoC™ was always a compromise between performance, feature sets, and cost, something that we had kept in front of for a decade. Following on from PSoC™ 3 and PSoC™ 5, we focused our development efforts on optimizing device complexity and improving sleep power consumption and performance. PSoC™ 4, launched in integrated a 32-bit ARM Cortex-M0 core capable of up to 48 MHz and was built on a smaller geometry. In terms of complexity, PSoC™ 4 sat roughly between PSoC™ 3 and PSoC™ 5 and featured a finely tuned capacitive touch technology. Many major white goods manufacturers quickly adopted it for use in HMI applications. With its ability to drive an LCD glass, operate the touch sensing interface, and provide the control functions, PSoC™ 4 was a great success for many high volume, cost-sensitive consumer products.

The emphasis on HMI applications ultimately led to the development of PSoC™ 6 to address the growing demand to support small battery-operated devices. PSoC™ 6 is based on a 40 nm process, has the programmable capabilities of PSoC™ 4, and uses an Arm Cortex-M4 core running up to 150 MHz, with the addition of a Bluetooth Low Energy transceiver. Also, the integration of X.509 encryption capabilities and a hardware-based trusted execution environment positions PSoC™ 6 neatly into the growing market for flexible low-power MCUs used in IoT applications and other wearable consumer electronics. A dual-core PSoC™ 6 variant features an additional ultra-low-power Arm Cortex M0+ core capable of 100 MHz operation.

The PSoC™ journey continues

From the humble beginnings of PSoC™ 1, the PSoC™ journey continues. We're continuing our investments in PSoC™ 4 and PSoC™ 6 as they broaden their appeal to embedded developers working on wearables, hearables, and other IoT use cases. PSoC™ 6, with its solutions-oriented approach, is optimized with the right balance of programmable analog and digital blocks, market-leading MIPS per mW performance, and BLE connectivity.

PSoC™ continues to go from strength to strength as embedded developers embrace its flexibility and programmability design after design.