PSoC 4 uses four subsystems to create a one-chip solution. The MCU subsystem contains the ARM Cortex-M0 core as well as Flash, RAM, and more. The programmable analog blocks include dedicated 1 megasample per second SAR ADC, two Op amps, two low power comparators, and a dedicated block for Cypress’ CapSense touch-sensing solution. The programmable digital block provided includes four UDBs, four blocks capable of configuration as a 16-bit timer, counter, or PWM, two communication blocks and a Segment LCU Driver. No competitive ARM Cortex-M0 device provides this amount of programmable analog and digital blocks. Finally, the programmable IO subsystem includes the Programmable Routing and Interconnect discussed before which provides flexible routing for any analog or digital blocks to any pin.