AHB传输---保护控制

本文介绍了HPROT信号在A版和B版规格说明书中关于4位保护控制的应用,涉及缓存和修改权限的变化,以及其在指令取指和数据访问中的作用。还讨论了master和slave如何处理保护信息及HPROT的时序要求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

保护控制

本规格说明书的A版定义了一个4位的HPROT信号。

本规格说明书的B版增加了扩展的存储器类型。

注意:在本规格说明书的A版和B版中,HPROT[3]的名称有所变化,但定义保持不变。在A版中,HPROT[3]被指定为可缓存(Cacheable),而在B版中它被指定为可修改(Modifiable)。

保护控制信号HPROT[3:0]提供了有关总线访问的额外信息,主要用于实现某种保护级别的任何模块。

 这些信号指示传输是否为:

  • 指令取指或数据访问。
  • 特权模式访问或用户模式访问。

对于带有内存管理单元的master,这些信号还指示当前访问是否可缓存(Cacheable)或可缓冲(Bufferable)。 表3-4列出了HPROT信号编码。

HPROT[3]

可修改

HPROT[2]

可缓冲

HPROT[1]

特权

HPROT[0]

数据/指令

描述
---0指令取指
---1数据访问
--0-用户访问
--1-特权访问
-0--非缓冲的
-1--缓冲的
0---非缓存的
1---可缓存的

注意:许多master无法生成准确的保护信息。如果master无法生成准确的保护信息,本规格说明书建议:

  • master将HPROT设置为0b0011,对应于非缓存的、非缓冲的、特权、数据访问。
  • slave除非绝对需要,否则不使用HPROT。

保护控制信号HPROT的时序与地址总线完全相同。然而,它们必须在突发传输期间保持不变。

AHB总线上的读写操作HPROT\ [3:0]是指AHB传输保护类型。HPROT是一个4位的信号,用于指示当前AHB传输保护要求。 HPROT\ [3:0]的四个位分别表示以下含义: - HPROT\[3\]:外设端口(Autonomous peripheRal Port,ARP)保护位:当此位为高电平时,表示该传输是ARP访问引起的,而不是内部总线所有者引起的。 - HPROT\[2\]:异常保护位:当此位为高电平时,表示此传输是由于异常(如数据终止错误等)而引起的,需要特殊处理。 - HPROT\[1\]:数据保护位:当此位为高电平时,表示此传输是对保护存储器进行的读或写操作,需要执行额外的数据保护操作。 - HPROT\[0\]:特权保护位:当此位为高电平时,表示此传输是特权访问,需要执行额外的特权保护操作。 根据这四个位的组合,系统可以根据需要进行相应的读写操作来满足传输过程中的保护要求。 当HPROT\为0000时,表示不需要执行额外的保护操作,即普通传输。 当HPROT\为0001时,表示需要执行特权保护操作,即特权访问。 当HPROT\为0010时,表示需要执行数据保护操作,即保护存储器读写。 当HPROT\为0011时,表示需要执行数据保护和特权保护操作。 当HPROT\为0100时,表示需要执行异常保护操作。 当HPROT\为0101时,表示需要执行异常保护和特权保护操作。 当HPROT\为0110时,表示需要执行异常保护和数据保护操作。 当HPROT\为0111时,表示需要执行异常保护、数据保护和特权保护操作。 当HPROT\为1000时,表示该传输是由外设端口(ARP)引起的访问。 当HPROT\为其他值时,表示保留,未定义。 通过设置HPROT\的不同值,系统可以根据需要对AHB传输进行不同的保护操作,确保数据的安全和完整性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值