中国电子技术网

设为首页 网站地图 加入收藏

 
 

带你认识什么是PRU

关键词:PRU系统 TI Sitara系列处理

时间:2022-12-23 10:48:12      来源:ZLG致远电子

PRU全称是The Programmable Real-Time Unit Subsystem,也叫PRUSS。中文名为可编程实时单元,它是一个32位RISC处理器核心,与IO子系统进行了紧密集成,为其IO引脚提供了低延迟控制,具有本地的指令和数据RAM,并可寻址访问整个片上系统资源。

PRU,作为TI Sitara系列处理的一个特色功能,那PRU具体有什么特性?能帮助我们解决什么问题?

PRU家族介绍

PRU全称是The Programmable Real-Time Unit Subsystem,也叫PRUSS。中文名为可编程实时单元,它是一个32位RISC处理器核心,与IO子系统进行了紧密集成,为其IO引脚提供了低延迟控制,具有本地的指令和数据RAM,并可寻址访问整个片上系统资源。

TI(德州仪器)针对其家族设备的不同资源分配情况,提供了三种PRU子系统,分别是:PRU-ICSS、PRU-ICSSG、PRU-SS。

• PRU-ICSS:The Programmable Real-time Unit and Industrial Communication Subsystem

• 可编程的实时单元和工业通信子系统(PRU-ICS)由两个32bit的RISC核心(PRU)组成,提供了共享数据,指令存储,内部和外围功能子模块,中断控制器(INTC)等功能。相关控制器有AM335x、AM437x、AM57x、K2G。

• PRU-ICSSG:The Programmable Real-time Unit and Industrial Communication Subsystem – Gigabit

• 可编程的实时单元和工业通信子系统 - 千兆(PRU_ICSSG)是PRU-ICSS的功能加强版。除了拥有所有PRU-ICSS功能外,还增加了两个辅助可编程实时单元(RTU)内核,两个传输PRU(TX_PRU)内核,提供加速器,加快数据处理和数据流动,并新增更多的外围设备。相关控制器有AM64x、AM65x。

• PRU-SS: The Programmable Real-time Unit Subsystem

• 可编程的实时单元子系统(PRU-SS)是PRU-ICSS的删减版。功能与PRU-ICSS类似,但不支持包括以太网(MII信号和MDIO信号)在内的工业通信子系统功能。相关控制器有AM62x。

PRU系统描述

PRU的核心是用精简指令集来编程的。每个PRU可以独立运行,也可以相互协调,也可以与CPU协同工作。处理器之间的交互是由加载到PRU的指令存储器中的固件的性质决定的。关于PRU-ICSS/PRU-SS的系统描述如图1 所示。


图1 PRU-ICSS/PRU-SS系统描述

PRU-ICSSG拥有RTU,其处理核心与PRU相同,但是RTU与PRU有不同的资源、连接和加速器。例如,PRU可以访问外部通用输入和通用输出(GPI/GPO)引脚,而RTU则不能。关于PRU-ICSSG的系统描述如图2 所示。


图2 PRU-ICSSG系统描述

PRU的功能特性

1. 快速I/O

PRU属于标量处理器,在同一时间内只处理一条数据;

采用非流水线设计,确保所有指令只能顺序执行;

本地内存映射,使用位于子系统内部的本地32位互连总线来访问本地资源,以最大限度地减少访问延迟。

2. 通用总线

PRU本身也有通用总线功能,如:UART、ECAP、PWM、ADC等。

3. 工业协议

TI根据工业行业应用,定制并兼容了多种工业通讯协议,如:EtherCAT、Profinet、Ethernet/IP等。

4. 运行环境

支持TI RTOS、TI Linux SDK及Code Composer Studio (CCS)的运行环境;

开发语言支持汇编指令及C/C++;

PRU固件是一种特定格式的文件,只能在系统对PRU资源进行初始化后,再把其固件加载到PRU核中运行。

PRU的使用场合

众所周知,SoC很复杂,里面集成了不少东西。这个PRU就可以理解为一个协处理器,就是主处理器ARM或DSP之外的一个小东西,可以处理一些专门的任务,已达到高效快速(Real-Time)的目的,同时也减轻了主处理器的负担。

而且,这个PRU是Programmable,也就是可以给安装一个固件上去。这个固件会干些什么呢,由开发人员设计实现。在Sitara系列SoC里,TI提供了一些现成的固件,像实现EtherCAT(slave)协议的、Profinet通信的等等,这些都是工业通信的。

在没有PRU的情况下,想要做到类似的效果,就需要在外部增加一个ASIC或FPGA部件了。现在整在SoC里的话,就可以把产品做得更小了,也更轻易达到高可靠性。更方便的是,通过内部总线,PRU可以访问到SoC内部的各种资源,包括许多的外设。比如用PRU实现百兆网协议栈,大大扩展一个产品上的网口数量。

如今,我司已经推出了M65x系列核心板,M65x系列系列核心板是ZLG致远电子基于TI公司 AM6526处理器 和 AM6548处理器 开发的工控核心板,旨在满足工业4.0嵌入式产品的复杂处理需求。核心板使用的AM6548处理器具有四个主频高达1.1GHz的Cortex-A53内核和两个主频400MHz的Cortex-R5F内核,M65x系列核心板可选1GB或2GB DDR3L内存以及可选DDR ECC功能,eMMC存储器可选4GB或8GB。具体型号有M6526-1GF4GLI-T、M6526-2GF8GLI-T、M6548-1GF4GLI-T、M6548-2GF8GLI-T,产品图片如图3 所示。


图3 M65x系列核心板

EPCM5300A-LI(如图4)工控机是广州致远电子有限公司基于M6548系列核心板开发的高性能工控机,标配M6548-2GF8GLI-T工控核心板。它是一台可堆叠、可扩展的工控机,分为上下两层,其中下层是工控机的核心部分,上层则是PRU扩展部分。工控机既可以下层单独工作,也可以和上层扩展一起工作。


图4 EPCM5300A-LI

EPC5300A-LI主机集成了大量的外设和接口资源,正面接口包括电源接口和按键开关、LED指示灯、复位按键、USB接口、SD卡接口和SIM卡接口,背面接口包括CAN-FD接口、千兆以太网、LVDS接口、RS232接口和4G天线接口。在主机内部还有预留MiniPCIe插座接口,支持4G模块或MiniPCI设备(如PCIe转SATA);扩展PRU模块EPCM5300A-PRU,可用于扩展千兆以太网和串口,最多可扩展6路千兆以太网和18路串口、以及RGB LCD接口和MIPI-CSI摄像头接口。EPCM5300A-LI工控机可以满足5G、大数据和人工智能场景下的工业自动化、智能交通、智慧城市等行业应用。

在未来一段时间里,我司将陆续推出更多的支持PRU的核心板(如:M64x系列、M62x系列)及主板,关于PRU更多的样例及特性请关注后续推文解锁。

  • 分享到:

 

猜你喜欢

  • 新闻
  • 新品
  • 方案

  • 主 题:高集成伺服驱动系统与工业机器人方案
  • 时 间:2024.04.18
  • 公 司:ST

  • 主 题:英飞凌XMC4000支持EtherCAT®通讯的伺服/IO控制方案介绍
  • 时 间:2024.04.25
  • 公 司:英飞凌&骏龙科技

  • 主 题:安森美数字助听芯片的创新
  • 时 间:2024.05.09
  • 公 司:安森美