PSoC (programmable
system on a chip
A system on a chip or system-on-chip (SoC ; pl. ''SoCs'' ) is an integrated circuit that integrates most or all components of a computer or other electronic system. These components almost always include a central processing unit (CPU), memory ...
) is a family of
microcontroller
A microcontroller (MCU for ''microcontroller unit'', often also MC, UC, or μC) is a small computer on a single VLSI integrated circuit (IC) chip. A microcontroller contains one or more CPUs (processor cores) along with memory and programmable i ...
integrated circuit
An integrated circuit or monolithic integrated circuit (also referred to as an IC, a chip, or a microchip) is a set of electronic circuits on one small flat piece (or "chip") of semiconductor material, usually silicon. Large numbers of tiny ...
s by
Cypress Semiconductor. These chips include a
CPU
A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, and ...
core and
mixed-signal arrays of configurable integrated analog and digital peripherals.
History
In 2002, Cypress began shipping commercial quantities of the PSoC 1. To promote the PSoC, Cypress sponsored a "PSoC Design Challenge" in ''
Circuit Cellar'' magazine in 2002 and 2004.
In April 2013, Cypress released the fourth generation, PSoC 4. The PSoC 4 features a 32-bit
ARM Cortex-M0
The ARM Cortex-M is a group of 32-bit reduced instruction set computer, RISC ARM architecture, ARM processor cores licensed by Arm Holdings. These cores are optimized for low-cost and energy-efficient integrated circuits, which have been embedd ...
CPU, with programmable analog blocks (
operational amplifiers and comparators), programmable digital blocks (PLD-based UDBs), programmable routing and flexible GPIO (route any function to any pin), a serial communication block (for SPI, UART,
I²C), a timer/counter/PWM block and more.
PSoC is used in devices as simple as Sonicare toothbrushes and Adidas sneakers, and as complex as the
TiVo set-top box. One PSoC implements
capacitive sensing for the
touch-sensitive
A touchscreen or touch screen is the assembly of both an input ('touch panel') and output ('display') device. The touch panel is normally layered on the top of an electronic visual display of an information processing system. The display is often ...
scroll wheel
A scroll wheel is a wheel used for scrolling. The term usually refers to such wheels found on computer mice (where they can also be called a mouse wheel). It is often made of hard plastic with a rubbery surface, centred around an internal rotary ...
on the Apple
iPod click wheel.
In 2014, Cypress extended the PSoC 4 family by integrating a
Bluetooth Low Energy
Bluetooth Low Energy (Bluetooth LE, colloquially BLE, formerly marketed as Bluetooth Smart) is a wireless personal area network technology designed and marketed by the Bluetooth Special Interest Group (Bluetooth SIG) aimed at novel applications in ...
radio along with a PSoC 4 Cortex-M0-based SoC in a single, monolithic die.
In 2016, Cypress released PSoC 4 S-Series, featuring
ARM Cortex-M0+
The ARM Cortex-M is a group of 32-bit RISC ARM processor cores licensed by Arm Holdings. These cores are optimized for low-cost and energy-efficient integrated circuits, which have been embedded in tens of billions of consumer devices. Though ...
CPU.
Overview
A PSoC integrated circuit is composed of a core, configurable analog and digital blocks, and programmable routing and interconnect. The configurable blocks in a PSoC are the biggest difference from other microcontrollers.
PSoC has three separate memory spaces: paged SRAM for data,
Flash memory
Flash memory is an electronic non-volatile computer memory storage medium that can be electrically erased and reprogrammed. The two main types of flash memory, NOR flash and NAND flash, are named for the NOR and NAND logic gates. Both us ...
for instructions and fixed data, and I/O registers for controlling and accessing the configurable logic blocks and functions. The device is created using
SONOS
SONOS, short for "silicon–oxide–nitride–oxide–silicon", more precisely, " polycrystalline silicon"—"silicon dioxide"—"silicon nitride"—"silicon dioxide"—"silicon",
is a cross sectional structure of MOSFET (metal-oxide-semiconduc ...
technology.
PSoC resembles an
ASIC
An application-specific integrated circuit (ASIC ) is an integrated circuit (IC) chip customized for a particular use, rather than intended for general-purpose use, such as a chip designed to run in a digital voice recorder or a high-efficien ...
: blocks can be assigned a wide range of functions and interconnected on-chip. Unlike an ASIC, there is no special manufacturing process required to create the custom configuration — only startup code that is created by Cypress' ''PSoC Designer'' (for PSoC 1) or ''PSoC Creator'' (for PSoC 3 / 4 / 5)
IDE.
PSoC resembles an
FPGA
A field-programmable gate array (FPGA) is an integrated circuit designed to be configured by a customer or a designer after manufacturinghence the term '' field-programmable''. The FPGA configuration is generally specified using a hardware de ...
in that at power up it must be configured, but this configuration occurs by loading instructions from the built-in Flash memory.
PSoC most closely resembles a
microcontroller
A microcontroller (MCU for ''microcontroller unit'', often also MC, UC, or μC) is a small computer on a single VLSI integrated circuit (IC) chip. A microcontroller contains one or more CPUs (processor cores) along with memory and programmable i ...
combined with a PLD and programmable analog. Code is executed to interact with the user-specified peripheral functions (called "Components"), using automatically generated APIs and interrupt routines. ''PSoC Designer'' or ''PSoC Creator'' generate the startup configuration code. Both integrate APIs that initialize the user selected components upon the users needs in a
Visual-Studio-like GUI.
Configurable analog and digital blocks
Using configurable analog and digital blocks, designers can create and change mixed-signal embedded applications. The digital blocks are state machines that are configured using the blocks registers. There are two types of digital blocks, Digital Building Blocks (DBBxx) and Digital Communication Blocks (DCBxx). Only the communication blocks can contain serial I/O user modules, such as SPI, UART, etc.
Each digital block is considered an 8-bit resource that designers can configure using pre-built digital functions or user modules (UM), or, by combining blocks, turn them into 16-, 24-, or 32-bit resources. Concatenating UMs together is how 16-bit PWMs and timers are created.
There are two types of analog blocks. The continuous time (CT) blocks are composed of an op-amp circuit and designated as ACBxx where xx is 00–03. The other type is the switch cap (SC) blocks, which allow complex analog signal flows and are designated by ASCxy where x is the row and y is the column of the analog block. Designers can modify and personalize each module to any design.
Programmable routing and interconnect
PSoC mixed-signal arrays' flexible routing allows designers to route signals to and from I/O pins more freely than with many competing microcontrollers. Global buses allow for signal multiplexing and for performing logic operations. Cypress suggests that this allows designers to configure a design and make improvements more easily and faster and with fewer PCB redesigns than a digital logic gate approach or competing microcontrollers with more fixed function pins.
Series
There are five different families of devices, each based around a different microcontroller core:
* PSoC 1 — CY8C2xxxx series — M8C core.
* PSoC 3 — CY8C3xxxx series —
8051
The Intel MCS-51 (commonly termed 8051) is a single chip microcontroller (MCU) series developed by Intel in 1980 for use in embedded systems. The architect of the Intel MCS-51 instruction set was John H. Wharton. Intel's original versions were po ...
core.
* PSoC 4 — CY8C4xxxx series —
ARM Cortex-M0
The ARM Cortex-M is a group of 32-bit reduced instruction set computer, RISC ARM architecture, ARM processor cores licensed by Arm Holdings. These cores are optimized for low-cost and energy-efficient integrated circuits, which have been embedd ...
core.
* PSoC 5/5LP — CY8C5xxxx series —
ARM Cortex-M3
The ARM Cortex-M is a group of 32-bit reduced instruction set computer, RISC ARM architecture, ARM processor cores licensed by Arm Holdings. These cores are optimized for low-cost and energy-efficient integrated circuits, which have been embedd ...
core.
* PSoC 6 — CY8C6xxxx series —
ARM Cortex-M4 core with an added
ARM Cortex-M0+
The ARM Cortex-M is a group of 32-bit RISC ARM processor cores licensed by Arm Holdings. These cores are optimized for low-cost and energy-efficient integrated circuits, which have been embedded in tens of billions of consumer devices. Though ...
core (in some models).
;Bluetooth Low Energy
Starting in 2014, Cypress began offering PSoC 4 BLE devices with integrated Bluetooth Low Energy (Bluetooth Smart). This can be used to create connected products leveraging the analog and digital blocks. Users can add and configure the BLE module directly in PSoC creator. Cypress also provides a complete Bluetooth Low Energy stack licensed from
Mindtree
Mindtree Ltd was an Indian Multinational corporation, multinational information technology services and consulting company, headquartered in Bangalore. It is a part of the Larsen & Toubro Group. Since its foundation in 1999, the company has e ...
with both Peripheral and Central functionality.
The PSoC 6 series includes versions with BLE including
Bluetooth 5 features including extended range or higher speed.
Summary
Development tools
PSoC Designer
This is the first generation software IDE to design and debug and program the PSoC 1 devices. It introduced unique features including a library of pre-characterized analog and digital peripherals in a drag-and-drop design environment which could then be customized to specific design needs by leveraging the dynamically generated API libraries of code.
PSoC Creator
PSoC Creator is the second generation software IDE to design debug and program the PSoC 3 / 4 / 5 devices. The development IDE is combined with an easy-to-use graphical design editor to form a powerful hardware/software co-design environment. PSoC Creator consists of two basic building blocks. The program allows the user to select, configure and connect existing circuits on the chip and the components which are the equivalent of peripherals on MCUs. What makes PSoC intriguing is the possibility of creating its own application-specific peripherals in hardware. Cypress publishes component packs several times a year. PSoC users get new peripherals for their existing hardware without being charged or having to buy new hardware. PSoC Creator also allows much freedom in the assignment of peripherals to I/O pins.
Cortex-M
Generic ARM development tools for PSoC 4 and PSoC 5.
Documentation
;PSoC 4 / 5
The amount of documentation for all ARM chips is daunting, especially for newcomers. The documentation for microcontrollers from past decades would easily be inclusive in a single document, but as chips have evolved so has the documentation grown. The total documentation is especially hard to grasp for all ARM chips since it consists of documents from the IC manufacturer (
Cypress Semiconductor) and documents from CPU core vendor (
ARM Holdings
Arm is a British semiconductor and software design company based in Cambridge, England.
Its primary business is in the design of ARM processors (CPUs). It also designs other chips, provides software development tools under the DS-5, RealView an ...
).
A typical top-down documentation tree is: manufacturer website, manufacturer marketing slides, manufacturer datasheet for the exact physical chip, manufacturer detailed reference manual that describes common peripherals and aspects of a physical chip family, ARM core generic user guide, ARM core technical reference manual, ARM architecture reference manual that describes the instruction set(s).
;PSoC 4 / 5 documentation tree (top to bottom):
# PSoC website.
# PSoC marketing slides.
# PSoC datasheet.
# PSoC reference manuals.
# ARM core website.
# ARM core generic user guide.
# ARM core technical reference manual.
# ARM architecture reference manual.
Cypress Semiconductor has additional documents, such as: evaluation board user manuals, application notes, getting started guides, software library documents, errata, and more. See
External Links section for links to official PSoC and ARM documents.
See also
*
ARM architecture
ARM (stylised in lowercase as arm, formerly an acronym for Advanced RISC Machines and originally Acorn RISC Machine) is a family of reduced instruction set computer (RISC) instruction set architectures for computer processors, configured ...
,
List of ARM microprocessor cores
This is a list of central processing units based on the ARM family of instruction sets designed by ARM Ltd. and third parties, sorted by version of the ARM instruction set, release and name. In 2005, ARM provided a summary of the numerous vendor ...
,
ARM Cortex-M
*
Embedded systems
*
Field-programmable analog array A field-programmable analog array (FPAA) is an integrated circuit device containing computational analog blocks (CAB) and interconnects between these blocks offering field-programmability. Unlike their digital cousin, the FPGA, the devices tend to ...
*
Interrupt,
Interrupt handler,
Comparison of real-time operating systems
*
JTAG
JTAG (named after the Joint Test Action Group which codified it) is an Technical standard, industry standard for verifying designs and testing printed circuit boards after manufacture.
JTAG implements standards for on-chip instrumentation in ele ...
*
Microcontroller
A microcontroller (MCU for ''microcontroller unit'', often also MC, UC, or μC) is a small computer on a single VLSI integrated circuit (IC) chip. A microcontroller contains one or more CPUs (processor cores) along with memory and programmable i ...
, (
List of common microcontrollers)
*
Reconfigurable computing
*
Single-board microcontroller
A single-board microcontroller is a microcontroller built onto a single printed circuit board. This board provides all of the circuitry necessary for a useful control task: a microprocessor, I/O circuits, a clock generator, RAM, stored program ...
References
Further reading
External links
;PSoC Official Documents
*
*
PSoC Designer softwarefor PSoC 1 family
*
PSoC Creator softwarefor PSoC 3 / 4 / 5LP families
*
PSoC Programmer softwarefor PSoC 1 / 3 / 4 / 5LP families
;ARM Official Documents for PSoC 4 / 5
;Other
PSoC DeveloperIoT Expert PSoC TutorialsPsoc-chileEl primer web site en Español sobre Microcontroladore Psoc
{{DEFAULTSORT:Psoc
Integrated circuits
System on a chip