In a bid to encourage greater use of TI’s Programmable Real-time Unit (PRU) built into the Sitara AM335x and AM437x family of devices which power the BeagleBone Black development board Texas have announced the PRU cape. The PRU is made up of dual 200 MHz coprocessors, implementing a low-latency subsystem optimized for deterministic, real-time processing allowing direct access to I/Os. It would be fair to say that this capability is seldom used by BeagleBone developers because it has been found to be complex to program.
The PRU Cape is supported with a software package including the Linux source code and a number of worked examples using the LEDs, push buttons, audio and UART. The code is available as part of the Sitara Linux SDK. A new PRU-optimized C compiler and TI’s Code Composer Studio is also available for download.
The PRU cape hardware includes:
- BeagleBone/BeagleBone Black Cape expansion connector
- Hardware UART to PRU subsystem
- Temperature sensor with 1-wire interface
- Dual GPIO push button switches
- Audio jack connection output
- Bank of PRU0 and PRU1 LEDs
- LCD Connector for optional character display (not included). Compatible with Newhaven NHD-0208AZ-RN-YBW-33V
- Prototyping area
The PRU can be used to offload processing from the ARM processor by managing deterministic tasks such as time-critical I/O manipulation. In one application implementing a 3D printing controller the PRU provides the motion profile (acceleration-travel-deceleration) based on parameters sent by the host CPU (i.e. BeagleBone ARM) via a ring buffer. The host CPU prepares data, such as parsing G-Code and doing travel planning while all the time-critical activities are handled by the PRU. The resulting code showed that the host program spent less than 1 % of its time processing the G-code file. The PRU cape is available now and retails at $39.