支持多体并发访问的片上存储器访问控制结构、方法、SoC芯片、可读存储介质与流程
- 国知局
- 2024-09-05 14:54:48
本发明属于存储器,具体涉及一种支持多体并发访问的片上存储器访问控制结构、方法、soc芯片、可读存储介质。
背景技术:
1、当前复杂soc中不仅处理器的核心数正在扩大,同时包括pcie、srio、以太网等高速接口也成为必不可少的组件,无论是处理核心还是通信接口,均需要片上拥有高速低延迟的存储区域,用于快速缓存数据并作为与外部ddr、flash器件的中间存储部件,这就要求soc需要集成更大容量、更高速度的片上ram,尤其是对当前人工智能技术的崛起,更凸显出存储墙问题的严峻挑战。但是,大容量和高速度对于ram而言是一对矛盾,更大的容量势必带来读出逻辑的更大延迟,尤其是对于先进纳米工艺下,线延迟取代器件延迟已经成为影响芯片时序收敛的重要因素。更重要的是,即使集成了大容量ram,由于相应的访问控制器没有好的调度机制,使得存储体的串行化访问时序成为影响系统总线效率的重要限制因素。
2、经检索,申请号为202210510935.9的专利文献公开了一种片上sram阵列存储装置及ai神经网络图像数据存储方法,提出了一种将单一存储体变更为多个并列bank块的存储形态,相较于单一存储体的访问带宽,变相的提高为原来的n倍。该发明针对ai图像的simd指令,其数据流特征本身就是连续的在多个bank体中存放,其读取过程也是并行连续的读出,因此效率较高。但是,该方法并不具有通用性,例如对于通用cpu访问的数据并不具有明显的连续性,同时也并未考虑在系统芯片中总线带宽与访存带宽的平衡问题。
3、发表于2015年计算机研究与发展的论文《基于amba总线的存储控制器接口设计》,重点关注系统芯片总线axi的访问向片内其他总线的转换效率,包括apb和nif协议,其中nif协议仅支持256b位宽的读写请求,因此该论文主要研究的是非256b位宽的读写访问请求如何进行位宽转换。然而,该论文仍然没有论述axi总线与存储体之间的调度策略,实现的依旧是串行化的访问控制机制。
技术实现思路
1、本发明的目的在于提供支持多体并发访问的片上存储器访问控制结构、方法、soc芯片、可读存储介质,解决了化访问带来的并发总线利用率低的问题。
2、本发明是通过以下技术方案来实现:
3、本发明公开了一种支持多体并发访问的片上存储器访问控制结构,采用双体ram控制,每个单体ram控制部分包括单体ram的访问控制结构和并行访问检测结构;
4、并行访问检测结构包括地址检测机制和读写冲突检测机制,能够在地址不冲突以及读写不冲突的前提下对两个单体ram的访问控制结构实现多体并发访问。
5、进一步,单体ram的访问控制结构包括写地址自增组件、读地址自增组件、仲裁组件、原子访问组件、写数据组件、等待计数组件、片选产生组件及读应答组件;
6、写操作包括写地址通道、写数据通道和写应答通道,读操作包括读地址通道和读应答通道;
7、写地址自增组件,用于根据写地址通道的首地址、访问长度和访问大小自动计算每次传输的新地址;
8、读地址自增组件,用于根据读地址通道的首地址、访问长度和访问大小自动计算每次传输的新地址;
9、仲裁组件,用于根据读地址通道和写地址通道的请求以及等待计数组件发出的计数值决定输出写地址还是读地址到存储体;
10、原子访问组件,用于监控写地址通道和读地址通道,当发现有原子访问,则作用于片选产生组件实现安全访问,同时将监控结果通过写应答通道输出;
11、写数据组件,用于根据等待计数组件的计数值决定何时向存储体发出写数据;
12、读应答组件,用于将存储体的读数据及应答信号返回到读应答通道;
13、片选产生组件,用于在仲裁组件、原子访问组件及等待计数组件共同作用下产生片选与写使能信号;
14、等待计数组件,用于向写数据组件、仲裁组件及片选产生组件发出控制信号的等待延迟。
15、进一步,仲裁组件包括寄存器、多路选择器mux以及逻辑门;多路选择器mux的输出端与寄存器连接;
16、读写访问请求决定多路选择器mux选择四个输入中的一路输出到寄存器,经过寄存器锁存后正式成为读写选择标志;
17、若同时有读写访问请求,多路选择器mux输入“11”,则仲裁结果与上一次的选择相反,表示读写轮流授权;
18、其中,读写选择标志经过非门反馈回多路选择器mux的11输入端,表示读写访问需要轮转仲裁;
19、写地址无效信号与最后一次写数据信号经过或门与寄存器输出的读写选择信号相与,读传输进行信号与寄存器输出的读写选择信号相与,两个与门经过或操作后成为仲裁使能信号驱动寄存器的使能端en。
20、进一步,多路选择器mux的选择结果需在仲裁使能信号作用下启动,仲裁使能的条件分两种:
21、(1)当前进行的是写传输,且写地址已经无效或者进行到最后一次写数据;
22、(2)当前进行的是读传输,且传输仍然在进行中。
23、进一步,原子访问组件包括多个监控器,每个监控器对应一个处理器核;
24、当一个原子读请求到来时,从监控器i开始查询哪一个监控器输出的独占标识为0,那么其读锁存使能则锁存当前读请求;若输出的独占标识为1,则继续查询下一个监控器,依次类推;
25、当原子写访问请求到来时,所有独占标识为1的监控器均令匹配使能有效,将写地址与监控器内部锁存的读地址、写id和监控器内部锁存的读id进行对比,只要其中一个监控器匹配成功,则输出匹配指示信号为1,最终的写应答则为1,代表独占访问加锁成功。
26、进一步,监控器中包括寄存器reg1、寄存器reg2和寄存器reg3;
27、当独占标识为0,表示当前监控器空闲时,允许寄存器reg1锁存原子读访问请求,且读有效信号将通过寄存器reg3将独占标识变为1,表示当前监控器已被使用;
28、之后,当原子写访问请求到来时,在匹配使能控制下,将写地址与读地址、写id与读id进行匹配,如果相等,一方面反向解除独占标识,同时通过寄存器reg2输出匹配指示信号为1,代表独占访问加锁成功。
29、进一步,两个单体ram的访问控制结构分别命名为存储体访问控制a和存储体访问控制b;地址检测机制为地址比较模块;
30、读写冲突检测机制为一套组合逻辑门,具体包括异或门、或门、非门a、非门b及与门;访问读写类型输入至异或门中,异或门和或门连接,或门与非门a连接,非门a与另一单体ram的访问控制结构连接,地址比较模块和非门b共同连接与门;
31、访问读写类型和存储体访问控制a的正在传输读写类型共同输入至存储体访问控制b侧的异或门中,访问读写类型和存储体访问控制b的正在传输读写类型共同输入至存储体访问控制a侧的异或门中;存储体访问控制a侧的非门a与存储体访问控制b侧的非门b连接,存储体访问控制b侧的非门a与存储体访问控制a侧的非门b连接;
32、组合逻辑门产生出的信号为比较使能,作用于地址比较模块,用于控制地址比较模块是否使能;
33、只有当某一个地址比较模块收到地址比较使能后,该地址比较模块根据当前访问地址和访问读写类型判断是否属于该地址比较模块的地址范围,仅当地址范围命中情况下,并且该地址比较模块并不存在正在进行的访问,才会生成给该地址比较模块最终的访问使能信号。
34、本发明还公开了所述的支持多体并发访问的片上存储器访问控制结构的控制方法,两个单体ram的访问控制结构分别命名为存储体访问控制a和存储体访问控制b;
35、包括以下过程:
36、每个单体ram输出是否有传输正在进行中的标志信号以及正在传输的读写类型;
37、当一个新的访问请求由axi总线发来时,首先将访问读写类型与存储体访问控制a的正在传输读写类型通过存储体访问控制b侧的读写冲突检测机制确定是否相同,如果不同则有效存储体访问控制b的比较使能;如果相同则阻塞该访问,直至正在传输的读写操作结束;
38、或者存储体访问控制a没有传输,则有效存储体访问控制b的比较使能;
39、在存储体访问控制b的比较使能有效后,通过地址检测机制将访问地址与存储体访问控制b的地址范围进行比较看是否命中,只有命中情况下并且存储体访问控制b没有传输进行,才能够允许访问存储体访问控制b,此时存储体访问控制a和存储体访问控制b同时工作,保证axi的读和写能够并行访问。
40、本发明还公开了一种soc芯片,所述soc芯片上配置有所述的支持多体并发访问的片上存储器访问控制结构。
41、本发明还公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现所述的控制方法的步骤。
42、与现有技术相比,本发明具有以下有益的技术效果:
43、本发明公开了一种支持多体并发访问的片上存储器访问控制结构,提出一种多体并发访问的控制接口,首先完成单体存储体对于axi总线的高效支持,并实现了多核间的原子访问支持,进一步将存储体一分为二,并在单体控制之上增加地址检测机制和读写冲突检测机制,能够将不冲突地址的读写访问由串行变为并行,有效提升存储访问的带宽利用。该方案并不需要增加总线接口就能大幅度提高总线利用率,结构简单易行,对片上ram集成具有较高实用价值。它实现了axi总线对单体片上ram的outstanding读写访问,有效降低了串行化访问带来的切换延迟,能够实现单体ram效率的最大化;进一步实现了多核处理器对片上ram的原子访问,通过简单的原子指令监测机制可以实现多核处理器之间的同步操作;为了进一步发挥axi读写通道解耦带来的带宽优势,考虑通过将单体ram拆分成双体ram,所增加的存储带宽可以匹配总线并行读写带来的带宽匹配,仅需增加地址空间命中判断以及读写互斥即可。该方案具有资源开销低的特点,可适用于当前axi接口的片上ram设计中,具有较大的应用价值。
44、本发明设计了一种支持多体并发访问的片上存储访问控制结构,在单体串行最小延迟访问控制基础上,通过读写多体交叉加速片内高性能主机通过axi总线对片上存储器的outstanding访问,并支持多核处理器的原子访问,所取得的效果如下:
45、1)针对当前soc系统对大容量高速片上存储器的访问需求,提出一种适用于axi总线的高带宽利用率的存储访问结构,能够将axi的读写访问快速转换为单端口ram的访问时序,并能实现outstanding访问,最大程度提高存储带宽利用率。
46、2)提出一种支持多核处理器原子访问的监测机制,可以以较小的开销实现原子指令异常响应,达到同步访问的目的。
47、3)在上述单体访问基础上,提出一种多体并发控制结构,能够在地址不冲突以及读写不冲突的前提下实现多体并发访问,消除因ram的读写串行而导致axi读写带宽的不充分利用,发挥axi的读写通道解耦的带宽优势。
本文地址:https://www.jishuxx.com/zhuanli/20240905/288821.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表