Changes between Initial Version and Version 1 of GSoC/2019/PRU_support


Ignore:
Timestamp:
May 8, 2019, 9:41:49 AM (5 months ago)
Author:
Nils Hölscher
Comment:

Firt Setup

Legend:

Unmodified
Added
Removed
Modified
  • GSoC/2019/PRU_support

    v1 v1  
     1= Add PRU-ICSS loader/driver to RTEMS =
     2
     3'''Student:''' Nils Hölscher
     4
     5'''Mentors:''' Amaan Cheval, Kuan-Hsun Chen, Chris Johns, Sarvesh Patkar
     6
     7'''Ticket:''' https://devel.rtems.org/ticket/3730
     8
     9''' Development Blog:''' TBA
     10
     11== Introduction ==
     12This Project intends to add the PRU support to RTEMS, using the Beaglebone Black (BBB). The BBB has an Texas Instruments AM3358 SoC [3][4] with an Programmable Real-Time Unit (PRU).
     13The PRU is able to connect to the SoC s i/o within one cycle.
     14This will enable the RTEMS community to develop heavily i/o dependent tasks on the Texas Instruments SoC s with PRUs.
     15For more Information about PRU see [5].
     16
     17== Starting Point ==
     18Since the Beagle Board community already uses the PRU, I will start by trying out their drivers.[1][2]
     19After reproducing these results with the Linux, the drivers have to be ported to RTEMS to reproduce these Results on RTEMS.
     20
     21== Proof of Concept ==
     22Since the PRU is designed to be more predictable than your normal CPU, it is able to access I/O peripherals in a deterministic manner.
     23This behavior will be used to demonstrate that code is running on the PRU and not the CPU.
     24The PRU is able to output a square wave with constant wavelength on the BBB s Pins.
     25The SOC s CPU is not capable of this.
     26
     27== References ==
     28[1] Drivers - https://github.com/beagleboard/am335x_pru_package
     29
     30[2] PRU guide for BBB - http://www.righto.com/2016/08/pru-tips-understanding-beaglebones.html
     31
     32[3] AM3358 TI Documentation - https://www.ti.com/lit/ds/symlink/am3358.pdf
     33
     34[4] AM335x TI Technical Reference Manual - https://www.ti.com/lit/ug/spruh73p/spruh73p.pdf
     35
     36[5] eLinux Pru Documentation - https://elinux.org/Ti_AM33XX_PRUSSv2