Psoc And Propeller: Flexible Mcu Options For Prototyping And Beyond

Choosing the Right MCU for Rapid Prototyping

Selecting the most appropriate microcontroller unit (MCU) is a crucial decision when embarking on any new embedded design project. The MCU acts as the brain of an embedded system, executing program instructions and coordinating peripherals to bring the overall system to life. For rapid prototyping applications, where the priority is getting a working concept model built quickly, flexibility and ease of use are paramount in an MCU.

Both Cypress Semiconductor’s PSoC (Programmable System-on-Chip) and Parallax’s Propeller provide highly flexible MCU options suited for prototyping and proof-of-concept builds. PSoC delivers a unique programmable architecture incorporating configurable analog and digital hardware blocks, while the Propeller utilizes independent processing cores (cogs) for easily implementable parallel execution.

PSoC Capabilities and Benefits

The defining trait of PSoC is its mix of fixed-function hardware blocks that can be user-configured and linked together on a per application basis using easy-to-use IDE tools. This creates a customized chip specialized for the target use case.

Configurable Analog and Digital Blocks

PSoC devices contain an array of unlabeled analog and digital blocks like op-amps, ADCs, DACs, mixers, filters, GPIOs, counters, PWMs, and more. Using the PSoC Creator IDE, any block can map to the desired function by programming its electrical connectivity and registers.

Integrated Peripherals Reduce BOM

Incorporating multiple peripherals like capsense, BLE connectivity, USB and specialized accelerators into the PSoC MCU itself lowers overall system cost and complexity compared to using separate ICs.

Flexible Clocking Options

Each peripheral block in the PSoC has its own clock source derived from up to four PLLs, delivering a simplified clock tree with no risk of propagation delays.

Code in C or Graphical IDE

PSoC enables programming either with graphical drag-and-drop construction for very fast development, or hand-coding in C for greater control over implementation.

Propeller Chip Architecture

The Propeller multicore architecture uses independent processing engines to achieve parallel execution with synchronous inter-engine communication. This delivers both rapid prototyping capabilities through its Spin language and high performance comparable to an ASIC.

Independent Cogs Enable Parallel Processing

Eight 32-bit cog processors can split tasks for parallel operation, communicating through shared registers and external RAM to preserve timing determinism.

Spin Language for Fast Development

Coding the Propeller can be done in Spin, a high-level language that compiles directly into the assembly-like PASM used by the cogs. This speeds up development compared to assembly or C.

External RAM Support

Large external RAM banks ensure there is enough memory space for demanding multi-cog applications.

Seamless Transition to ASIC

The synchronous Propeller architecture enables an easier transition to custom ASIC or FPGA implementations for mass production.

Example Projects Showcasing Flexibility

To demonstrate PSoC and Propeller executing complex tasks in real world examples, two prototyping use cases are examined below. PSoC builds an IoT home automation controller, while the Propeller implements image recognition on a mobile robot.

PSoC: IoT Home Automation Device

Modular Hardware with Integrated Bluetooth and WiFi

The PSoC handles Bluetooth and WiFi wireless connectivity over a modular hardware design containing relays, sensors, and input buttons that can be rearranged or substituted to match any desired configuration.

Grafana Dashboard for Data Visualization

Sensor metrics and user control actions are visualized on a Grafana dashboard with dynamic graphing and analysis.

Propeller: Image Recognition Robot

Parallel Cogs Accelerate ML Inferencing

An AI cog subsystem runs multiple convolutional neural network (CNN) models in parallel for real-time object detection and classification at the edge.

Remotely Access Sensor Data via Web Server

A separate TCP/IP stack cog feeds image sensor frames to the AI cogs while serving a web interface using sensor telemetry.

When to Use PSoC vs Propeller in Prototyping

Both PSoC and Propeller provide excellent prototyping capability, but some applications lend themselves better to either platform. PSoC tends to be more focused on IoT edge nodes leveraging its low power modes and library of integrated wireless communication options. Meanwhile the Propeller architecture’s independent COGs enable more processing intensive applications like parallel inferencing engines or motor control that need deterministic synchronization between tasks.

In the end, there is no one-size-fits all embedded solution; different projects call for different blends of features. By understanding the strengths of flexible MCU/MPU platforms like PSoC and Propeller, prototyping engineers can quickly traverse the design space to find the right fit.

Leave a Reply

Your email address will not be published. Required fields are marked *