一种数据访问方法及总线与流程

文档序号:11063429
一种数据访问方法及总线与制造工艺

本发明涉及通信领域中的数字集成电路IC设计技术,尤其涉及一种数据访问方法及总线。



背景技术:

随着片上系统(SoC,System On Chip)技术的发展,一个芯片内集成的功能模块也越来越多,而各个模块对于存储器的访问要求也越来越高,因此,片上总线在芯片架构中显得非常重要,片上总线实现片上主机对各个从机的控制是片上系统不可缺少的一部分。目前很多芯片设计采用高级微控制器总线体系(AMBA,Advanced Microcontroller Bus Architecture)芯片内总线协议中的高级高性能总线(AHB,Advanced High Performance Bus)协议或高级外设总线(APB,Advanced Peripheral Bus)协议。

现有技术通常不支持具有从机的安全功能,要实现对AHB或APB协议的从机的管理,目前常用的方法为利用NIC301/400,但这类总线矩阵代码复杂,不容易查找问题;以AHB总线为例,如图1所示,NIC301/400会将主机端的协议转换成总线协议(AXI,Advanced eXtensible Interface),再转换成从机端的协议,经过协议中转,会引起访问效率的降低,这对于多效率要求高的从机来说是一大瓶颈;而且NIC301/400内部存在一个GPV,用来配置相关从机的安全属性等,要占据1M的地址空间,这是对地址空间的浪费;复杂的协议转换引入了更多的逻辑,使得时序变差。



技术实现要素:

为解决上述技术问题,本发明实施例期望提供一种数据访问方法及总线,能够减少总线矩阵逻辑,提高了总线的传输效率,减小了总线系统的复杂性。

本发明的技术方案是这样实现的:

本发明实施例提供一种数据访问方法,所述方法包括:

接收至少一个主机发送的访问请求,所述访问请求中携带至少一个主机的访问地址;

从所述至少一个主机中确定第一主机;

根据第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定所述第一主机是否对应目标从机,所述第一主机的访问地址在所述目标从机的地址范围内;

当确定所述第一主机对应所述目标从机时,判断所述第一主机对所述目标从机的访问请求是否合法,进而判断所述第一主机是否实现对所述目标从机的数据访问。

在上述方案中,所述访问请求中还携带第一主机的安全访问状态,所述第一主机的安全访问状态包括:安全和非安全;所述当确定所述第一主机对应所述目标从机时,判断所述第一主机对所述目标从机的访问请求是否合法,包括:

当确定所述第一主机对应所述目标从机,且所述第一主机的安全访问状态为安全时,判断所述第一主机对所述目标从机的访问请求合法;

当确定所述第一主机对应所述目标从机,且所述第一主机的安全访问状态为非安全时,获取目标从机的安全地址范围;当所述第一主机的访问地址未在所述目标从机的安全地址范围内时,判断所述第一主机对所述目标从机的访问请求合法;当所述第一主机的访问地址在所述目标从机的安全地址范围内时,判断所述第一主机对所述目标从机的访问请求非法。

在上述方案中,所述从至少一个从机中确定所述第一主机是否对应目标从机之后,所述方法还包括:

当确定所述第一主机未对应所述目标从机时,判断所述第一主机对从机的访问请求为非法,中断所述第一主机对所述从机的数据访问。

在上述方案中,所述判断所述第一主机是否实现对所述目标从机的数据访问,包括:

当判断所述第一主机对所述目标从机的访问请求为合法时,传输所述第一主机对所述目标从机的访问数据;

当判断所述第一主机对所述目标从机的访问请求为非法时,中断所述第一主机对所述目标从机的数据访问。

在上述方案中,所述访问请求中还携带第一主机的协议类型和所述目标从机的协议类型;所述从所述至少一个主机中确定第一主机之后,所述根据第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定所述第一主机是否对应目标从机之前,所述方法还包括:

当所述第一主机的协议类型与所述目标从机的协议类型不一致时,将所述第一主机的协议类型转换为所述目标从机的协议类型。

本发明实施例提供一种总线,所述总线包括:

仲裁单元,用于接收至少一个主机发送的访问请求,所述访问请求中携带至少一个主机对应的访问地址;并从所述至少一个主机中确定第一主机,以及输出第一主机的访问地址至地址译码单元;

所述地址译码单元,用于根据所述仲裁单元接收的第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定所述第一主机是否对应目标从机,所述第一主机的访问地址在所述目标从机的地址范围内,并输出确定结果至安全管理单元;

所述安全管理单元,用于当所述确定结果为所述第一主机对应所述目标从机时,判断所述第一主机对所述目标从机的访问请求是否合法,进而判断所述第一主机是否实现对所述目标从机的数据访问。

在上述总线中,所述仲裁单元接收的所述访问请求中还携带第一主机的安全访问状态,所述第一主机的安全访问状态包括:安全和非安全;

所述安全管理单元,具体用于当所述地址译码单元确定所述第一主机对应所述目标从机,且所述第一主机的安全访问状态为安全时,判断所述第一主机对所述目标从机的访问请求合法;以及当所述地址译码单元确定所述第一主机对应所述目标从机,且所述第一主机的安全访问状态为非安全时,获取目标从 机的安全地址范围,当所述第一主机的访问地址未在所述目标从机的安全地址范围内时,判断所述第一主机对所述目标从机的访问请求合法;当所述第一主机的访问地址在所述目标从机的安全地址范围内时,判断所述第一主机对所述目标从机的访问请求非法。

在上述总线中,所述安全管理单元,还用于所述从至少一个从机中确定所述第一主机是否对应目标从机之后,当确定所述第一主机未对应所述目标从机时,判断所述第一主机对从机的访问请求为非法,中断所述第一主机对所述从机的数据访问。

在上述总线中,所述安全管理单元,还具体用于当判断所述第一主机对所述目标从机的访问请求为合法时,传输所述第一主机对所述目标从机的访问数据;当确定所述第一主机对所述目标从机的访问请求为非法时,中断所述第一主机对所述目标从机的数据访问。

在上述总线中,所述总线还包括:协议转换单元;所述访问请求中还携带第一主机的协议类型和所述目标从机的协议类型;

所述协议转换单元,用于所述仲裁单元从所述至少一个主机中确定第一主机之后,所述地址译码单元根据第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定所述第一主机是否对应目标从机之前,当所述第一主机的协议类型与所述目标从机的协议类型不一致时,将所述第一主机的协议类型转换为所述目标从机的协议类型。

本发明实施例提供了一种数据访问方法及总线,总线通过接收至少一个主机发送的访问请求,该访问请求中携带至少一个主机对应的访问地址;从至少一个主机中确定第一主机;根据第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定第一主机是否对应目标从机,该第一主机的访问地址在该目标从机的地址范围内;当确定第一主机对应目标从机时,判断第一主机对目标从机的访问请求是否合法,进而判断第一主机是否实现对目标从机的数据访问。采用上述技术实现方案,由于总线中设置了安全管理功能,支持多组主机访问多组从机,主机和从机的数量和协议类型可以根据需要进行 配置;总线可以自行进行安全管理,不需要内部多余的协议转换和寄存器单元,能够减少总线矩阵逻辑,提高了总线的传输效率,减小了总线系统的复杂性。

附图说明

图1为现有技术的总线系统框图;

图2为本发明实施例提供的一种数据访问方法的流程图一;

图3为本发明实施例提供的从机地址范围的划分示意图;

图4为本发明实施例提供的示例性的安全管理单元的逻辑电路图;

图5为本发明实施例提供的合法逻辑信号的产生图;

图6为本发明实施例提供的总线访问的框图;

图7为本发明实施例提供的一种数据访问方法的流程图二;

图8为本发明实施例提供的一种数据访问方法的流程图三;

图9为本发明实施例提供的一种总线的结构示意图一;

图10为本发明实施例提供的一种总线的结构示意图二。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

实施例一

本发明实施例提供一种数据访问方法,如图2所示,该方法可以包括:

S101、总线接收至少一个主机发送的访问请求,该访问请求中携带至少一个主机对应的访问地址。

在本发明实施例中,基于主机、总线和从机的结构,进行主机对从机的数据访问。本发明实施例可以应用在矩阵/总线桥上的,具体为至少一个Master(主机)和至少一个Slave(从机)之间的数据访问过程,即至少一个主机通过总线,对至少一个从机进行数据访问。

具体的,至少一个主机发送访问请求至总线,总线确定选择哪个主机进行 对从机的访问。即,总线接收至少一个主机发送的访问请求,其中,该访问请求中包括至少一个主机中的每个主机想要访问的从机的访问地址。

需要说明的是,总线中的仲裁单元进行第一主机的选择,具体的选择过程可以由现有技术实现,在此不进行详细地描述。

S102、总线从至少一个主机中确定第一主机。

总线接收至少一个主机发送的访问请求之后,该总线从至少一个主机中选择一个主机作为第一主机,来进行第一主机对从机的访问请求。

具体的,总线从至少一个主机中确定第一主机及第一主机的安全访问状态。其中,总线的仲裁单元从至少一个主机中确定第一主机,于是,该第一主机获得访问权。

需要说明的是,每个主机都会有一个安全信号指示对应主机发起的传输是安全还是非安全的,在本发明实施例中的安全信号指示可以为主机的安全访问状态。

进一步地,一个主机的安全访问状态可以由0和1表示,示例性的,0可以表示安全,1可以表示非安全。具体的主机的安全访问状态的安全与非安全的表示方式,本发明实施例不作限制。

示例性的,5个主机要对从机进行数据访问,因此,5个主机分别发送访问请求至总线,这时,该总线的仲裁单元就通过仲裁选择5个主机中的其中一个主机(第一主机)获得访问从机的访问权。

S103、总线根据第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定该第一主机是否对应目标从机,该第一主机的访问地址在该目标从机的地址范围内。

需要说明的是,本发明实施例中的每个从机都有从机的地址范围,每个从机的地址范围是确定的,即一个从机对应一个地址范围,在这个地址范围内的访问地址都对应上述一个从机。

具体的,总线根据第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定该第一主机的访问地址是否对应目标从机,该第一主机 的访问地址在该目标从机的地址范围内,即第一主机的访问地址可以与至少一个从机的地址范围中的一个从机的地址范围对应,该对应的从机为目标从机。

总线的地址译码单元将第一主机的访问地址与预设的至少一个从机的地址范围进行逐个对比,从至少一个从机中确定该第一主机的访问地址是否对应目标从机,具体的,第一主机的访问地址可以与至少一个从机的地址范围中的一个从机的地址范围对应时,该对应的从机为目标从机。

进一步地,当第一主机的访问地址在该预设的至少一个从机的一个从机的地址范围内时,该一个从机的地址范围内为第一主机要访问的目标从机。当第一主机的访问地址未在该预设的至少一个从机的任意一个从机的地址范围内(即不在任意一个从机的地址范围内)时,表征第一主机的访问地址为空地址,该访问地址不是从机的地址。

示例性的,当第一主机的访问地址为10时,由于至少一个从机的地址范围总共包括15-50,则第一主机的访问地址不在这至少一个从机的地址范围内,即第一主机的访问地址为空。

S104、当确定第一主机对应所述目标从机时,总线判断第一主机对目标从机的访问请求是否合法,进而判断该第一主机是否实现对目标从机的数据访问。

总线根据第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定该第一主机的访问地址是否对应目标从机之后,当确定第一主机对应所述目标从机时,总线判断第一主机对目标从机的访问请求是否合法,从而判断该第一主机是否实现对目标从机的数据访问。

可选的,在本发明实施例中,每个从机都具有单独的地址范围和安全地址范围,可以单独限定从机的地址范围和安全地址范围,可以将从机配置成全部安全、全部非安全、部分安全部分非安全等几类。具体的,配置从机的安全地址范围可以由外部系统配置模块来做,且一个从机的安全地址范围是可调节的,即在一个从机的地址范围内的从机的安全地址范围与从机的非安全地址范围的划分是可变的,如图3所示,为从机地址范围的划分示意图。

可选的,在本发明实施例中,总线可以为高级高性能总线(AHB,Advanced High Performance Bus),也可以为外围总线(APB,Advanced Peripheral Bus)。其中,总线为AHB总线时,本发明实施例中的从机的地址范围可以安全、全部非安全、部分安全部分非安全等几类地址范围;总线为APB总线时,本发明实施例中的从机的地址范围可以安全、全部非安全等几类地址范围。

由于上述访问请求中还携带第一主机的安全访问状态,该第一主机的安全访问状态包括:安全和非安全。因此,当确定第一主机对应目标从机时,总线判断该第一主机对该目标从机的访问请求是否合法具体为:当确定第一主机对应目标从机,且该第一主机的安全访问状态为安全时,总线判断该第一主机对该目标从机的访问请求合法。

或者,当确定第一主机对应目标从机,且该第一主机的安全访问状态为非安全时,总线获取目标从机的安全地址范围;当第一主机的访问地址未在该目标从机的安全地址范围内时,总线判断该第一主机对该目标从机的访问请求合法;当该第一主机的访问地址在该目标从机的安全地址范围内时,总线判断该第一主机对该目标从机的访问请求非法。

进一步地,上述确定第一主机对应目标从机的确定结果可以由总线的地址译码单元以从机的选择信号的形式来标记,具体的从机的选择信号可以由0和1表示,示例性的,0表示第一主机对应目标从机,该目标从机为该第一主机的要访问的从机;1表示第一主机未对应目标从机,也就是说第一主机要访问的访问地址不属于至少一个从机中的任意一个从机,因此,第一主机的访问地址是空地址;具体的,从机选择信号的表示方式,本发明实施例不作限制。

进一步地,总线判断该第一主机是否实现对目标从机的数据访问具体为:当判断第一主机对目标从机的访问请求为合法时,总线传输该第一主机对该目标从机的访问数据。当判断第一主机对目标从机的访问请求为非法时,总线中断该第一主机对该目标从机的数据访问。

需要说明的是,总线的安全管理单元获取目标从机的安全地址范围,并根据目标从机的安全地址范围、第一主机的访问地址及第一主机的安全访问状态,确定第一主机对目标从机的访问请求是否合法,从而判断第一主机是否实现对 目标从机的数据访问。上述过程是在总线的安全管理单元的逻辑电路来实现的,如图4所示,为示例性的安全管理单元的逻辑电路图,Addrlegal为安全管理单元的逻辑电路输出信号,Legal_reg为寄存回馈信号。

具体的,总的来说,通过如图5所示的合法逻辑信号(legal)的产生图,可知:在当前的第一主机传输正常的情况下(Trans_req用于表征第一主机传输是否正常,由0和1表示),合法逻辑信号是由目标从机的安全地址范围、第一主机的访问地址及第一主机的安全访问状态通过逻辑运算确定的。其中,合法逻辑信号可以由0和1表示,示例性的,当合法逻辑信号为0时,表示第一主机对目标从机的访问请求合法;当合法逻辑信号为1时,表示第一主机对目标从机的访问请求非法。具体的合法逻辑信号的表示方式,本发明实施例不作限制。

需要说明的是,从整体上来说,由目标从机的安全地址范围、第一主机的访问地址及第一主机的安全访问状态通过逻辑运算确定合法逻辑信号的真值关系如下:

(1)、安全主机(主机的安全访问状态为安全)访问安全地址(主机的访问地址在从机的安全地址范围内),合法逻辑信号为合法;

(2)、安全主机访问非安全地址(主机的访问地址在从机的非安全地址范围内),合法逻辑信号为合法;

(3)、非安全主机(主机的安全访问状态为非安全)访问安全地址,合法逻辑信号为不合法;

(4)、非安全主机访问非安全地址,合法逻辑信号为合法。

其中,从机的地址范围减去该从机的安全地址范围为该从机的非安全地址范围。

进一步地,如图6所示,总线的安全管理单元输出合法逻辑信号,通过图4的逻辑电路实现第一主机对目标从机的访问,通过终止信号来终止第一主机对目标从机的数据访问的传输,即合法则第一主机可以穿过“梯形”访问目标从机,非法则通过终止信号将空闲信号赋给从机(即终止第一主机访问目标从 机)。

进一步地,S103之后,如图7所示,本发明实施例提供的一种数据访问方法还可以包括:S105。具体如下:

S105、当确定第一主机未对应目标从机时,总线判断该第一主机对该目标从机的访问请求为非法,该总线中断该第一主机对该目标从机的数据访问。

当确定第一主机的访问地址未对应目标从机时,即从机的选择信号为1时,总线确定该第一主机对从机的访问请求为非法,于是,该总线中断该第一主机对该从机的数据访问。

进一步地,S102之后,且S103之前,如图8所示,本发明实施例提供的数据访问方法还可以包括:S106。具体如下:

S106、当第一主机的协议类型与目标从机的协议类型不一致时,总线将第一主机的协议类型转换为目标从机的协议类型。

需要说明的是,主机通过总线与目标从机进行数据访问时,主机的协议类型需要与所访问的目标从机的协议类型一致,因此,当第一主机的协议类型与目标从机的协议类型不一致时,执行S106。若当第一主机的协议类型与目标从机的协议类型一致时,则不用进行协议转换了。

可以理解的是,本发明实施例中每个从机都具有单独的地址和安全地址范围,可以单独限定从机的地址范围和安全地址范围,可以将从机配置成全部安全、全部非安全、部分安全部分非安全,通过安全管理单元配置安全属性,从而大大方便用户使用还使得总线布线更加简便,缩减了芯片的面积,节省了成本。

本发明实施例所提供的一种数据访问方法,总线通过接收至少一个主机发送的访问请求,该访问请求中携带至少一个主机对应的访问地址;从至少一个主机中确定第一主机;根据第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定第一主机是否对应目标从机,该第一主机的访问地址在该目标从机的地址范围内;当确定第一主机对应目标从机时,判断第一主机对目标从机的访问请求是否合法,进而判断第一主机是否实现对目标从机 的数据访问。采用上述技术实现方案,由于总线中设置了安全管理功能,支持多组主机访问多组从机,主机和从机的数量和协议类型可以根据需要进行配置;总线可以自行进行安全管理,不需要内部多余的协议转换和寄存器单元,能够减少总线矩阵逻辑,提高了总线的传输效率,减小了总线系统的复杂性。

实施例二

如图9所示,本发明实施例提供一种总线1,该总线1可以包括:

仲裁单元10,用于接收至少一个主机发送的访问请求,所述访问请求中携带至少一个主机对应的访问地址;并从所述至少一个主机中确定第一主机,以及输出第一主机的访问地址至地址译码单元11。

所示地址译码单元11,用于根据所述仲裁单元10接收的第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定所述第一主机是否对应目标从机,所述第一主机的访问地址在所述目标从机的地址范围内,并输出确定结果至安全管理单元12。

所述安全管理单元12,用于当所述确定结果为所述第一主机对应所述目标从机时,判断所述第一主机对所述目标从机的访问请求是否合法,进而判断所述第一主机是否实现对所述目标从机的数据访问。

可选的,所述仲裁单元10接收的所述访问请求中还携带第一主机的安全访问状态,所述第一主机的安全访问状态包括:安全和非安全。

所述安全管理单元12,具体用于当所述地址译码单元11确定所述第一主机对应所述目标从机,且所述第一主机的安全访问状态为安全时,判断所述第一主机对所述目标从机的访问请求合法;以及当所述地址译码单元11确定所述第一主机对应所述目标从机,且所述第一主机的安全访问状态为非安全时,获取目标从机的安全地址范围,当所述第一主机的访问地址未在所述目标从机的安全地址范围内时,判断所述第一主机对所述目标从机的访问请求合法;当所述第一主机的访问地址在所述目标从机的安全地址范围内时,判断所述第一主机对所述目标从机的访问请求非法。

可选的,所述安全管理单元12,还用于所述从至少一个从机中确定所述第 一主机是否对应目标从机之后,当确定所述第一主机未对应所述目标从机时,判断所述第一主机对从机的访问请求为非法,中断所述第一主机对所述从机的数据访问。

可选的,所述安全管理单元12,还具体用于当判断所述第一主机对所述目标从机的访问请求为合法时,传输所述第一主机对所述目标从机的访问数据;当确定所述第一主机对所述目标从机的访问请求为非法,中断所述第一主机对所述目标从机的数据访问。

可选的,如图10所示,所述总线1还包括:协议转换单元13;所述访问请求中还携带第一主机的协议类型和所述目标从机的协议类型。

所述协议转换单元13,用于所述仲裁单元10从所述至少一个主机中确定第一主机之后,所述地址译码单元11根据第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定所述第一主机是否对应目标从机之前,当所述第一主机的协议类型与所述目标从机的协议类型不一致时,将所述第一主机的协议类型转换为所述目标从机的协议类型。

需要说明的是,因为第一主机的协议类型与目标从机的协议类型一致时,才能将第一主机的访问地址发送至地址译码单元11,因此,当第一主机的协议类型与目标从机的协议类型不一致时,存在协议转换单元13,仲裁单元10通过协议转换单元13将第一主机的访问地址发送至地址译码单元11。若当第一主机的协议类型与目标从机的协议类型一致时,不需要存在协议转换单元13。

本发明实施例所提供的一种总线,总线通过接收至少一个主机发送的访问请求,该访问请求中携带至少一个主机对应的访问地址;从至少一个主机中确定第一主机;根据第一主机的访问地址和预设的至少一个从机的地址范围,从至少一个从机中确定第一主机是否对应目标从机,该第一主机的访问地址在该目标从机的地址范围内;当确定第一主机对应目标从机时,判断第一主机对目标从机的访问请求是否合法,进而判断第一主机是否实现对目标从机的数据访问。采用上述技术实现方案,由于总线中设置了安全管理功能,支持多组主机访问多组从机,主机和从机的数量和协议类型可以根据需要进行配置;总线可 以自行进行安全管理,不需要内部多余的协议转换和寄存器单元,能够减少总线矩阵逻辑,提高了总线的传输效率,减小了总线系统的复杂性。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码、数据、功能寄存器的寄存器状态的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)或者功能从机,比如UART、IIC等外设的寄存器,上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1