基于分布式仲裁的可编程输入输出PIO写合并装置和方法制造方法及图纸

技术编号:17596846 阅读:35 留言:0更新日期:2018-03-31 10:05
本发明专利技术实施例提供一种基于分布式仲裁的可编程输入输出PIO写合并装置和方法,属于数据通信领域。至少一个写合并缓存器模块中的每个写合并缓存器模块对应一个分布式仲裁器模块,所述PIO接口模块用于将接收到的PIO写请求处理为适合所述至少一个写合并缓存器模块的格式,其中所述PIO写请求包括写地址和写数据;每个写合并缓存器模块用于接收所述PIO写请求,并且存储有与所述写地址相同的缓存器地址的写合并缓存器模块输出命中信号;每个分布式仲裁器模块用于在接收到所述命中信号时输出使能信号,使对应的写合并缓存器模块根据所述写地址的地址偏移写入所述写数据。本发明专利技术易于实现、扩展性好、通用性强,可以最大限度的简化数据处理过程。

A programmable input-output PIO write merge device and method based on distributed arbitration

The embodiment of the invention provides a programmable input and output PIO write merge device and method based on distributed arbitration, which belongs to the field of data communication. At least one write buffer in each merge module and write corresponding to a distributed arbiter module and buffer module, the PIO interface module is used for receiving the PIO write request for the at least one format with write buffer module, wherein the PIO write requests including the write address and write data; with each write buffer module is used for receiving the PIO write requests, and write with storage buffer module output hit signal with the same address register address; each distributed arbiter module is used to output the signal to the hit signal when receiving the corresponding write merge buffer module according to the address offset the address is written by the write data. The invention is easy to be realized, has good extensibility, and has strong generality, and can simplify the process of data processing to the maximum.

【技术实现步骤摘要】
基于分布式仲裁的可编程输入输出PIO写合并装置和方法
本专利技术涉及数据通信,具体地涉及基于分布式仲裁的PIO写合并装置和方法。
技术介绍
现有技术中,CPU通过PIO指令方式访问I/O设备,根据CPU字长的不同,PIO指令中的数据长度通常为1/2/4/8字节。当I/O设备的字长大于CPU字长时,例如CPU字长为4字节,而I/O设备内部的寄存器访问粒度固定为8字节,CPU访问设备寄存器时会发出两个连续地址的4字节PIO写请求,I/O设备必须能够支持将多个PIO请求进行合并,完成一次寄存器写操作。当多个应用并发访问设备时,PIO写请求会交叉乱序,这使得PIO写合并更加复杂,I/O设备完成困难。
技术实现思路
本专利技术实施例的目的是提供一种基于分布式仲裁的PIO写合并装置和方法,该基于分布式仲裁的PIO写合并装置和方法易于实现、扩展性好、通用性强,可以最大限度的简化数据处理过程。为了实现上述目的,本专利技术实施例提供一种基于分布式仲裁的可编程输入输出PIO写合并装置,该装置包括:至少一个写合并缓存器模块、至少一个分布式仲裁器模块以及PIO接口模块,其中,所述至少一个写合并缓存器模块中的每个写合并缓存器模块对应一个分布式仲裁器模块,所述PIO接口模块用于将接收到的PIO写请求处理为适合所述至少一个写合并缓存器模块的格式,其中所述PIO写请求包括写地址和写数据;所述至少一个写合并缓存器模块中的每个写合并缓存器模块用于接收所述PIO写请求,并且存储有与所述写地址相同的缓存器地址的写合并缓存器模块输出命中信号;所述至少一个分布式仲裁器模块中的每个分布式仲裁器模块用于在接收到所述命中信号时输出使能信号,使对应的写合并缓存器模块根据所述写地址的地址偏移写入所述写数据。优选地,所述每个写合并缓存器模块包括用于写入所述写数据的写合并数据单元,该写合并数据单元用于根据数据存储的状态输出空状态信号或满状态信号;所述每个分布式仲裁器模块还用于接收所述空状态信号,并且在未接收到所述命中信号时,接收到所述空状态信号的至少一个分布式仲裁器模块的其中一个分布式仲裁器模块输出所述使能信号,使对应的写合并数据单元根据所述写地址的地址偏移写入所述写数据。优选地,所述每个写合并缓存器模块还包括:写合并地址单元,在所述写合并数据单元输出空状态信号的情况下,所述写合并地址单元用于在接收到所述使能信号时存储所述写地址以作为所述缓存器地址。优选地,所述每个写合并缓存器模块还包括:写合并超时单元,用于在所述写合并数据单元写入所述写数据时开始计时,以及当预定时间内所述写合并数据单元未输出所述满状态信号时,清空所述写合并缓存器模块。优选地,该装置还包括:输出仲裁器模块,用于接收所述满状态信号,输出并清空存储在发出所述满状态信号的写合并缓存器模块中的地址和数据。本专利技术还提供一种基于分布式仲裁的可编程输入输出PIO写合并装置执行的方法,该方法包括:PIO接口模块将接收到的PIO写请求处理为适合至少一个写合并缓存器模块的格式,其中所述PIO写请求包括写地址和写数据;至少一个写合并缓存器模块中的每个写合并缓存器模块接收所述PIO写请求,并且存储有与所述写地址相同的缓存器地址的写合并缓存器模块输出命中信号;至少一个分布式仲裁器模块中的每个分布式仲裁器模块在接收到所述命中信号时输出使能信号,使对应的写合并缓存器模块根据写地址的地址偏移写入所述写数据。优选地,所述每个写合并缓存器模块包括用于写入所述写数据的写合并数据单元,该方法还包括:写合并数据单元根据数据存储的状态输出空状态信号或满状态信号;每个分布式仲裁器模块接收所述空状态信号,并且在未接收到所述命中信号时,接收到所述空状态信号的至少一个分布式仲裁器模块的其中一个分布式仲裁器模块输出所述使能信号,使对应的写合并数据单元根据所述写地址的地址偏移写入所述写数据。优选地,所述每个写合并缓存器模块包括写合并地址单元,该方法还包括:在所述写合并数据单元输出空状态信号的情况下,在接收到所述使能信号时,写合并地址单元存储所述写地址以作为所述缓存器地址。优选地,该方法还包括:在所述写合并数据单元写入所述写数据时,写合并超时单元开始计时,当预定时间内所述写合并数据单元未输出所述满状态信号时,清空所述写合并缓存器模块。优选地,该方法还包括:输出仲裁器模块接收所述满状态信号,输出并清空存储在发出所述满状态信号的写合并缓存器模块中的地址和数据。通过上述技术方案,采用本专利技术提供的基于分布式仲裁的PIO写合并装置和方法,所述PIO接口模块用于将接收到的PIO写请求处理为适合所述至少一个写合并缓存器模块的格式,其中所述PIO写请求包括写地址和写数据;所述至少一个写合并缓存器模块中的每个写合并缓存器模块用于接收所述PIO写请求,并且存储有与所述写地址相同的缓存器地址的写合并缓存器模块输出命中信号;所述至少一个分布式仲裁器模块中的每个分布式仲裁器模块用于在接收到所述命中信号时输出使能信号,使对应的写合并缓存器模块根据所述写地址的地址偏移写入所述写数据。该基于分布式仲裁的PIO写合并装置和方法使用上述模块进行数据的处理和写合并,可以支持乱序写合并,易于实现、扩展性好、通用性强,可以最大限度的简化数据处理过程。本专利技术实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。附图说明附图是用来提供对本专利技术实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本专利技术实施例,但并不构成对本专利技术实施例的限制。在附图中:图1是本专利技术一实施例提供的基于分布式仲裁的PIO写合并装置的结构示意图;图2是本专利技术一实施例提供的基于分布式仲裁的PIO写合并装置的结构示意图;图3是本专利技术一实施例提供的基于分布式仲裁的PIO写合并装置的交互示意图;以及图4是本专利技术一实施例提供的基于分布式仲裁的PIO写合并方法的流程图。附图标记说明1PIO接口模块2写合并缓存器模块3分布式仲裁器模块4输出仲裁器模块21写合并地址单元22写合并数据单元23写合并超时单元。具体实施方式以下结合附图对本专利技术实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本专利技术实施例,并不用于限制本专利技术实施例。图1是本专利技术一实施例提供的基于分布式仲裁的PIO写合并装置的结构示意图。如图1所示,本专利技术实施例提供一种基于分布式仲裁的PIO写合并装置,该装置包括:至少一个写合并缓存器模块2、至少一个分布式仲裁器模块3以及PIO接口模块1,其中,所述至少一个写合并缓存器模块2中的每个写合并缓存器模块2对应一个分布式仲裁器模块,所述PIO接口模块1用于将接收到的PIO写请求处理为适合所述至少一个写合并缓存器模块2的格式,其中所述PIO写请求包括写地址和写数据;所述至少一个写合并缓存器模块2中的每个写合并缓存器模块2用于接收所述PIO写请求,并且存储有与所述写地址相同的缓存器地址的写合并缓存器模块输出命中信号;所述至少一个分布式仲裁器模块3中的每个分布式仲裁器模块3用于在接收到所述命中信号时输出使能信号,使对应的写合并缓存器模块2根据所述写地址的地址偏移写入所述写数据。PIO接口模块1将CPU发出的PIO写请求处理成统一的格式(主要是数据长度)以适应至少一个写合并缓本文档来自技高网...
基于分布式仲裁的可编程输入输出PIO写合并装置和方法

【技术保护点】
一种基于分布式仲裁的可编程输入输出PIO写合并装置,其特征在于,该装置包括:至少一个写合并缓存器模块、至少一个分布式仲裁器模块以及PIO接口模块,其中,所述至少一个写合并缓存器模块中的每个写合并缓存器模块对应一个分布式仲裁器模块,所述PIO接口模块用于将接收到的PIO写请求处理为适合所述至少一个写合并缓存器模块的格式,其中所述PIO写请求包括写地址和写数据;所述至少一个写合并缓存器模块中的每个写合并缓存器模块用于接收所述PIO写请求,并且存储有与所述写地址相同的缓存器地址的写合并缓存器模块输出命中信号;所述至少一个分布式仲裁器模块中的每个分布式仲裁器模块用于在接收到所述命中信号时输出使能信号,使对应的写合并缓存器模块根据所述写地址的地址偏移写入所述写数据。

【技术特征摘要】
1.一种基于分布式仲裁的可编程输入输出PIO写合并装置,其特征在于,该装置包括:至少一个写合并缓存器模块、至少一个分布式仲裁器模块以及PIO接口模块,其中,所述至少一个写合并缓存器模块中的每个写合并缓存器模块对应一个分布式仲裁器模块,所述PIO接口模块用于将接收到的PIO写请求处理为适合所述至少一个写合并缓存器模块的格式,其中所述PIO写请求包括写地址和写数据;所述至少一个写合并缓存器模块中的每个写合并缓存器模块用于接收所述PIO写请求,并且存储有与所述写地址相同的缓存器地址的写合并缓存器模块输出命中信号;所述至少一个分布式仲裁器模块中的每个分布式仲裁器模块用于在接收到所述命中信号时输出使能信号,使对应的写合并缓存器模块根据所述写地址的地址偏移写入所述写数据。2.根据权利要求1所述的基于分布式仲裁的PIO写合并装置,其特征在于,所述每个写合并缓存器模块包括用于写入所述写数据的写合并数据单元,该写合并数据单元用于根据数据存储的状态输出空状态信号或满状态信号;所述每个分布式仲裁器模块还用于接收所述空状态信号,并且在未接收到所述命中信号时,接收到所述空状态信号的至少一个分布式仲裁器模块的其中一个分布式仲裁器模块输出所述使能信号,使对应的写合并数据单元根据所述写地址的地址偏移写入所述写数据。3.根据权利要求2所述的基于分布式仲裁的PIO写合并装置,其特征在于,所述每个写合并缓存器模块还包括:写合并地址单元,在所述写合并数据单元输出空状态信号的情况下,所述写合并地址单元用于在接收到所述使能信号时存储所述写地址以作为所述缓存器地址。4.根据权利要求3所述的基于分布式仲裁的PIO写合并装置,其特征在于,所述每个写合并缓存器模块还包括:写合并超时单元,用于在所述写合并数据单元写入所述写数据时开始计时,以及当预定时间内所述写合并数据单元未输出所述满状态信号时,清空所述写合并缓存器模块。5.根据权利要求2所述的基于分布式仲裁的PIO写合并装...

【专利技术属性】
技术研发人员:王克非张磊徐亚东黄文斌
申请(专利权)人:深圳市楠菲微电子有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1