Parallax Propeller 1 P8X32A Open Source Multi-core MCU
Lots of electronics devices are now powered by open source software such as Linux, open source hardware is not as wide-spread, but gaining tracking traction thanks to the like of Arduino, Beagleboard.org, Olimex, and many projects on crowdfunding websites, and now we even start seeing some open source silicon. Existing open source processors include LEON3 (SparkV8) MCU, OpenRisc, and just very recently, LowRISC, based on 64-bit RISC-V instruction set architecture, has been announced with the backing of some of Raspberry Pi co-founders, Google ATAP, etc… and is currently being developed at the University of Cambridge, UK. Parallax Propeller 1 P8X32A is another MCU which has been open sourced last week.
Propeller 1 P8X32A had however been released in April 2006, and can be sourced as a 40-pin DIP chip for prototyping, and 44-pin QFP and QFN for production, and come with the following key features:
- Power Requirements: 3.3 VDC
- Operating Temperature: -55 to +125 degrees C
- Processor cores: Eight 32-bit cores
- I/O Pins: 32 GPIO CMOS
- External Clock Speed: DC to 80 MHz
- Internal RC Oscillator: ~12 MHz or ~20 kHz
- Execution Speed: 0 to 160 MIPS (20 MIPS/cog)
- Global ROM/RAM: 32768/32768 bytes
- Cog RAM: 512 x 32 bits/core
The MCU can be programmed with several languages including Spin (native, object-based), assembly (native low-level), and C/C++ (via open-source Propeller GCC toolchain). Each core can access all 32 I/O pins and other shared system resources, but comes with its own memory and set of configurable hardware for creating, releasing, and re-creating software-defined peripherals as needed.
All the design files ( Verilog files and top-level HDL) have been released under GPLv3 license, and you can load these to simulate the micro-controller on a computer or an FPGA board with access to I/Os. The license allows for derivative works, so anyone can use the Propeller P8X32A micro-controller as a base for research, development, or any form of experimentation.
There are two “education and development” FPGA boards by Terasic officially supported: DE0-Nano, and the more versatile and powerful Altera DE2-115, both powered by an Altera Cyclone IV FPGA. Beside the VDL files, the instructions to emulate Propeller 1 on the FPGA boards are provided for Linux and Windows, using Quartus II software. The development tools PropellerIDE (Spin/ASM) and SimpleIDE (C) are also open source.
You can find more information, and download all files on Parallax Propeller 1 Open Source page.