本发明专利技术公开了一种片上系统。片上系统包括:主机、判断装置、互联总线和从机;主机用于通过互联总线向从机发送写数据请求,从机用于在收到写数据请求并处理完成后,通过互联总线向主机发回写数据响应;判断装置用于:监测主机侧的写请求通道和写响应通道,记录主机发出的预设数量的写数据请求以及从机发回的预设数量的写数据响应,并根据记录的信息向主机报告预设数量的写数据请求全部完成。本发明专利技术能够有效判断主机外发的写传输事务是否真正完成,保证SoC芯片内部主机间传输数据的一致性,避免出错,且方案灵活,不仅适用于从机按序返回写数据响应的场景,还能适用于从机乱序返回写数据响应的场景。数据响应的场景。数据响应的场景。
【技术实现步骤摘要】
一种片上系统
[0001]本专利技术属于数据处理
,更具体地,涉及一种片上系统。
技术介绍
[0002]在片上系统(System on Chip,SoC)芯片内部,存在多个主机之间传递数据的普遍场景。现今的SoC芯片性能越来越高,主机普遍具有Outstanding的传输能力,即,主机不需要等到响应,就能持续发送写命令。因此,如何保证多主机之间数据传输的一致性,成为了一个亟待解决的问题。
[0003]例如一个典型的场景为:主机A发送大量数据到系统内部存储器C,主机A通知主机B读取这些数据,主机B从系统内部存储器C将这些数据读走。但是当主机B去存储器C读取数据的时候,主机A发送的数据可能还并未真正写入到存储器C,因此主机B有可能会读取到存储器C中的旧数据,进而导致读取错误。
技术实现思路
[0004]针对现有技术的以上缺陷或改进需求,本专利技术提供了一种片上系统,能够有效判断主机外发的写传输事务是否真正完成,保证SoC芯片内部主机间传输数据的一致性,避免出错,且方案灵活,不仅适用于从机按序返回写数据响应的场景,还能适用于从机乱序返回写数据响应的场景。
[0005]为实现上述目的,根据本专利技术的一个方面,提供了一种片上系统,包括:主机、判断装置、互联总线和从机;主机用于通过互联总线向从机发送写数据请求,从机用于在收到写数据请求并处理完成后,通过互联总线向主机发回写数据响应;判断装置用于:监测主机侧的写请求通道和写响应通道,记录主机发出的预设数量的写数据请求以及从机发回的预设数量的写数据响应,并根据记录的信息向主机报告预设数量的写数据请求全部完成。
[0006]在一些实施方式中,判断装置包括计数模块;计数模块用于:在监测到主机发出的一个写数据请求时,其计数值加1;以及在监测到从机发回的一个写数据响应时,其计数值减1;判断装置用于在所述计数模块的计数值为0时,向主机报告预设数量的写数据请求全部完成。
[0007]在一些实施方式中,主机还用于在计数模块的计数值达到预设数量时,关闭计数模块的计数功能;在计数模块的计数功能被关闭后,计数模块在监测到主机后续发出的写数据请求时,其计数值不再增加。
[0008]在一些实施方式中,判断装置还包括缓存模块;主机还用于在计数模块的计数值达到预设数量时,使能缓存模块的缓存功能;在缓存模块的缓存功能开启后,缓存模块用于将主机发出的写数据请求拦截并缓存。
[0009]在一些实施方式中,主机还用于在获知预设数量的写数据请求全部完成时,关闭缓存模块的缓存功能;在缓存模块的缓存功能关闭后,缓存模块用于将缓存的写数据请求经互联总线发往从机。
[0010]在一些实施方式中,判断装置还包括阻塞模块;主机还用于在计数模块的计数值达到预设数量时,使能阻塞模块的阻塞功能;在阻塞模块的阻塞功能开启后,阻塞模块用于将主机发出的写数据请求拦截。
[0011]在一些实施方式中,主机还用于在获知预设数量的写数据请求全部完成时,关闭阻塞模块的阻塞功能;在阻塞模块的阻塞功能关闭后,阻塞模块用于将主机发出的写数据请求经互联总线发往从机。
[0012]在一些实施方式中,判断装置包括记录模块;记录模块用于:在监测到主机发出的写数据请求时,记录写数据请求对应的ID号;在监测到从机发回的写数据响应时,根据写数据响应对应的ID号,将其记录的对应ID号擦除;判断装置用于在记录模块中没有ID号时,向主机报告预设数量的写数据请求全部完成。
[0013]在一些实施方式中,主机还用于在记录模块记录的写数据请求达到预设数量时,关闭记录模块的记录功能;在记录模块的记录功能被关闭后,记录模块不再记录主机发出的写数据请求对应的ID号。
[0014]在一些实施方式中,写数据请求与其写数据响应对应相同的ID号;或者,写数据请求与其写数据响应对应不同的ID号,但写数据请求对应的ID号与其写数据响应对应的ID号满足预设的对应关系。
[0015]根据本专利技术的另一方面,提供了一种写传输事务完成的判断方法,包括:主机批量发出n个写数据请求;记录主机发出的n个写数据请求;从机收到n个独立的写数据请求,回复写数据响应;记录从机发回的n个写数据响应;根据记录的信息,向主机报告n个写数据请求全部完成。
[0016]在一些实施方式中,记录主机发出的n个写数据请求包括:使计数模块的计数值从0递增到n;记录从机发回的n个写数据响应包括:使计数模块的计数值从n递减到0;根据记录的信息,向主机报告n个写数据请求全部完成包括:在计数模块的计数值为0时,向主机报告n个写数据请求全部完成。
[0017]在一些实施方式中,该方法还包括:在计数模块的计数值为n时,关闭计数模块的计数功能,使得计数模块在监测到主机后续发出的写数据请求时,其计数值不再增加。
[0018]在一些实施方式中,该方法还包括:在计数模块的计数值为n时,开启缓存功能;将缓存功能开启后主机发出的写数据请求拦截并缓存;在获知n个写数据请求全部完成时,关闭缓存功能,将缓存的写数据请求发往从机。
[0019]在一些实施方式中,该方法还包括:在计数模块的计数值为n时,开启阻塞功能;将阻塞功能开启后主机发出的写数据请求拦截;在获知n个写数据请求全部完成时,关闭阻塞功能,将主机后续发出的写数据请求发往从机。
[0020]在一些实施方式中,记录主机发出的n个写数据请求包括:记录n个写数据请求对应的ID号;记录从机发回的n个写数据响应包括:根据写数据响应对应的ID号,将已记录的对应ID号擦除;根据记录的信息,向主机报告n个写数据请求全部完成包括:在记录的ID号被全部擦除时,向主机报告n个写数据请求全部完成。
[0021]总体而言,通过本专利技术所构思的以上技术方案与现有技术相比,具有以下有益效
果:在主机和互联总线之间增加判断装置,利用判断装置监测主机侧的写请求通道和写响应通道,进而判断主机外发的写传输事务是否真正完成,能有效保证SoC芯片内部主机间传输数据的一致性,避免出错;此外,通过调整判断装置的具体设计,不仅能适用于从机按序返回写数据响应的场景,还能适用于从机乱序返回写数据响应的场景。
附图说明
[0022]图1是本专利技术一个实施例的片上系统的结构示意图;图2是图1所示的片上系统中,写传输事务完成的判断方法流程图;图3是本专利技术另一个实施例的片上系统的结构示意图;图4是图3所示的片上系统中,写传输事务完成的判断方法流程图;图5是本专利技术又一个实施例的片上系统的结构示意图;图6是图5所示的片上系统中,写传输事务完成的判断方法流程图;图7是本专利技术再一个实施例的片上系统的结构示意图;图8是图7所示的片上系统中,写传输事务完成的判断方法流程图。
具体实施方式
[0023]为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。正如本领域技术人员可以认识到的那样,在不脱离本申请的精神或范围的本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种片上系统,其特征在于,包括:主机、判断装置、互联总线和从机;所述主机用于通过所述互联总线向所述从机发送写数据请求,所述从机用于在收到写数据请求并处理完成后,通过所述互联总线向所述主机发回写数据响应;所述判断装置用于:监测主机侧的写请求通道和写响应通道,记录所述主机发出的预设数量的写数据请求以及所述从机发回的预设数量的写数据响应,并根据记录的信息向所述主机报告预设数量的写数据请求全部完成。2.如权利要求1所述的片上系统,其特征在于,所述判断装置包括计数模块;所述计数模块用于:在监测到主机发出的一个写数据请求时,其计数值加1;以及在监测到从机发回的一个写数据响应时,其计数值减1;所述判断装置用于在所述计数模块的计数值为0时,向所述主机报告预设数量的写数据请求全部完成。3.如权利要求2所述的片上系统,其特征在于,所述主机还用于在所述计数模块的计数值达到预设数量时,关闭所述计数模块的计数功能;在所述计数模块的计数功能被关闭后,所述计数模块在监测到所述主机后续发出的写数据请求时,其计数值不再增加。4.如权利要求2或3所述的片上系统,其特征在于,所述判断装置还包括缓存模块;所述主机还用于在所述计数模块的计数值达到预设数量时,使能所述缓存模块的缓存功能;在所述缓存模块的缓存功能开启后,所述缓存模块用于将所述主机发出的写数据请求拦截并缓存。5.如权利要求4所述的片上系统,其特征在于,所述主机还用于在获知预设数量的写数据请求全部完成时,关闭所述缓存模块的缓存功能;在所述缓存模块的缓存功能关...
【专利技术属性】
技术研发人员:黄宇浩,何颖,
申请(专利权)人:芯动微电子科技珠海有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。