MCU微课堂 | CKS32K148 外设桥

在微课堂第四十九期和第五十期向大家介绍了我们CKS32K148芯片SCG模块,此次微课堂会向大家展开芯片外设桥模块的介绍。

外设桥(AIPS-Lite)模块是用于连接处理器内核与外围设备的关键组件,其中AIPS指的是“高级外设接口保护系统”(AIPS, advanced peripheral interface protection system),它通过硬件方式对外设接口进行访问控制和保护,用于避免芯片上的外设接口受恶意攻击或意外干扰,从而确保外设接口的安全运行和数据完整性。

AIPS的主要功能是管理MPU总线主机对外设的访问权限、地址映射以及访问保护,其提供的访问权限控制机制能够配置不同MPU总线主机(如CPU或DMA)的读写访问及管理权限,并支持对特定外设区域的读写保护,防止非法访问或误操作,从而增强系统的安全性。此外,其内部架构采用交叉开关接口(Crossbar Switch),使得总线主机的访问请求能够转换为可访问片上绝大多数从机外设的接口,即将外设的物理地址映射到处理器的地址空间中,令处理器可以通过统一的地址访问外设,从而实现高效的外设访问管理。

结构与框图

从硬件层面上来看,不同的总线主机可通过交叉开关的从机端口S2向其上连接的外设发起访问请求,而AIPS就是位于从机端口与外设之间用于对访问进行控制的管理模块。为了方便理解,此处给出包含总线主机与外设的AIPS整体结构框图如下图1。其中,蓝色箭头指示了总线主机与交叉开关的端口连接情况,红色箭头指示了交叉开关从机端口与AIPS模块的连接情况。

1.png

图1 AIPS结果框图

在上图中,AIPS可控制访问权限的总线主机包括4种,分别是:

  • 内核主机:负责处理器的核心操作

  • 调试器(系统)主机:用于调试和系统配置

  • DMA主机:用于直接内存访问操作

  • 以太网主机:用于网络通信

AIPS可覆盖芯片中包含的全部外设,并控制其保护权限,这些外设可分为两类:

  • AIPS slot编号0-31的平台上外设

  • AIPS slot编号32-127的平台外外设

上述外设与编号对应情况可查阅外设存储映射表获取。

内存映射

由上文可知,总线主机可通过总线矩阵的从端口S2访问外设的内存映射地址,外设slot支持8位、16位和32位的数据通路。而对于外设空间,可分为三个区域,如下表所示:

表1 与外设空间相关的区域

2.png

为了适应慢速的外设,外设桥包含了每个slot的独立时钟使能输入信号。在实际使用中,可通过PCC/SIM寄存器中的时钟门控制位禁用相关的AIPS外设空间,当访问不存在或禁用的外设桥空间地址时,将导致传输错误终止。

控制权限

外设桥控制着主机对外设的读写访问及其管理权限,下面分别对主机与外设的权限类型进行介绍:

1、总线主机访问权限

 对于总线主机,AIPS能够控制三种访问权限:

  • 读信任

  • 写信任

  • 强制用户模式

当主机具有的权限满足外设的访问要求时,即可发起对外设的相应操作,否则操作无效或产生访问错误。

2、外设保护权限

对于芯片外设,AIPS能够控制三种访问保护:

  • 管理员权限保护

  • 写保护

  • 信任保护

当外设开启某种保护模式时,不满足权限要求的主机将无法完成被保护的权限操作,只有具有特定权限的主机能够被允许进行相应操作请求。

需要注意的是,不同总线主机具有的可访问权限不同,下表2中对其进行了总结:

表2  总线主机访问权限

3.png

AIPS寄存器配置

在前文中,已经对外设桥的结构与功能进行了介绍,下面分别对主机与外设权限的具体配置方法进行讲解。

所有主机的权限均在寄存器AIPS_MPRA中进行配置。

4.png

图2  AIPS_MPRA寄存器

该寄存器的包含了四种总线主机的读、写以及访问模式权限的使能位,四种总线主机的权限使能位功能一致。以内核主机为例,不同使能位功能如下:

5.png

图3 总线主机权限使能位

对于外设的访问控制权限,需注意不同外设与其在寄存器中使能位的对应关系,与主机的权限控制位类似,每个外设有读、写

和访问权限三种保护使能位,具体的寄存器与外设的对应关系可通过外设存储映射表查看。以AIPS_PACRA寄存器为例,其对应的是外设AIPS和MSCM模块,其访问控制使能位如下。

6.png

图4  AIPS_PACRA寄存器

与总线主机类似,所有外设的访问控制使能位功能一致,不同使能位具体功能如下:

7.png

图5 外设访问权限使能位

特殊外设

通常情况下,若主机使能权限满足外设的访问要求,即可发起对外设的相应访问操作。但应注意存在一些特殊的外设,由于其自身特性,当主机工作在USER模式下时,即使在主机权限满足访问要求的前提下依然无法执行相应访问操作。下表对这部分特殊的外设进行了总结:

表3  USER模式下主机无访问权限外设

8.png

注:X表示不可执行操作,O表示可执行操作

对于上表中的外设四种主机在USER模式下均无相应访问权限,除此之外还需注意DMA主机在任何模式下均无法对MSCM和PCC模块进行读写。

来源:中科芯MCU

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。