一种树状组织的缓存结构及其应用

文档序号:28684623发布日期:2022-01-29 10:27阅读:77来源:国知局
一种树状组织的缓存结构及其应用

1.本发明属于辐射探测领域,具体涉及一种树状组织的缓存结构及其应用。


背景技术:

2.在辐射探测领域,辐射粒子经过传感器转化为电信号,进而通过大规模集成电路进行处理并读出。为了达到较高的分辨率和检测速率,读出电路需要同时处理多通道的高速信号。以用于高能物理实验顶点探测器的单片有源像素传感器为例,其传感器阵列一般在百万级,按行或列并行读出时,读出通道数高达几百上千,粒子的对撞频率最高可达40ghz。一般来说,粒子撞击时会瞬时产生大量数据,但平均数据率远低于瞬时的数据率,因此可以使用高速缓存缓冲读出后再输出。文献“x.wei et al,high data-rate readout logic design of a 512
×
1024pixel array dedicated for cepc vertex detector,journal of instrumentation,2019”中包含了一种缓冲读出方法。如说明书附图1所示,所有通道并行读出,每个通道包含一个先进先出(fifo)存储器,然后再按一定的规则对数据选择读出。
3.现有高速缓冲读出的主要缺点是:每个读出通道独享一个存储器,不能和其他通道共享,每个通道的存储器都需要考虑在粒子入射瞬间产生较多数据时所需的容量大小并留一定的裕度。由于通道数多,这导致存储器总容量较大,引起芯片面积增大,进而引起时钟布线网络大,功耗较大的问题。


技术实现要素:

4.为了克服上述现有技术存在的不足,本发明提供了一种树状组织的缓存结构及其应用。
5.为了实现上述目的,本发明提供如下技术方案:
6.一种树状组织的缓存结构,包括:
7.多个通道,多个所述通道的数据并行读出,各通道数据按照从树叶到树根的结构缓冲存储;
8.叶子节点,包括多个读出控制和多个叶子节点的子存储器;一个通道与一个读出控制之间进行数据互传,一个所述读出控制向一个叶子节点的子存储器传输数据;
9.n层父节点,每层所述父节点均包括多个路由控制和多个父节点的子存储器;每层所述父节点的一个路由控制向该层父节点的一个子存储器传输数据;每两个所述叶子节点的子存储器向第一层父节点的一个路由控制传输数据;每两个第n层所述父节点的子存储器向第n+1层父节点的一个路由控制传输数据,依次连接至树根;上一层父节点为下一层父节点的子节点,最后一层为根节点;
10.各通道数据首先通过叶子节点的读出控制读出并存储在叶子节点的子存储器;然后叶子节点向其父节点申请数据转移,当父节点空闲时,允许对应子节点的数据输出转移,子节点完成数据转移后释放自己的存储空间,从而为下次信号读取做好准备;当父节点忙
碌时,该子节点等待直到父节点空闲,最终实现所有数据通过根节点缓冲输出。
11.优选地,所述叶子节点和除根节点以外的父节点内部的子存储器用来缓冲同时到达的数据,根据瞬时数据密度设计存储容量。
12.优选地,根节点的子存储器根据平均数据密度设计容量。
13.优选地,所述叶子节点在其子存储器不满时从通道读取数据,并在其子存储器非空时向其父节点发送读数请求;父节点在其子存储器不满时按照数据到达先后或者数据中的时间标记先后顺序响应其子节点的读数请求,在其子存储器非空时向其父节点发送读数请求;依次类推,直至向根节响应其子节点的读数请求,并在其非空时输出数据。
14.优选地,所述叶子节点或父节点的子存储器为sram、dram或寄存器结构,根据时序控制选择使用单端口或者双端口存储。
15.优选地,所述叶子节点或父节点的子存储器分为时间存储队列和数据存储队列,共享访问时时间在先的数据优先读出缓冲。
16.优选地,所述路由控制根据数据的时间标记信息,按照先后顺序将其读入父节点。
17.优选地,所述数据的时间标记信息在粒子入射至通道时产生。
18.本发明的另一目的在于将树状组织的缓存结构应用在高能物理、空间探测或医学成像领域超多通道传感器前端高速数据的缓冲读出。
19.本发明提供的树状组织的缓存结构具有以下有益效果:
20.本发明各通道数据通过树结构的缓存时能够共享使用其父节点的存储空间,从而减少高速数据读出所需的总存储空间;一方面存储空间的减小能够节约芯片面积和成本,另一方面面积的减小使得时钟布线网络负载减小,功耗降低;本发明提供的缓存结构可用于高能物理、空间探测、医学成像等领域超多通道传感器前端高速数据的缓冲读出。
附图说明
21.为了更清楚地说明本发明实施例及其设计方案,下面将对本实施例所需的附图作简单地介绍。下面描述中的附图仅仅是本发明的部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
22.图1为背景技术中多通道高速数据读出缓存结构示意图;
23.图2为本发明实施例提供的的树状组织的缓存结构的示意图;
24.图3是本发明缓存结构的内部信号连接图;
25.图4为图3中一个通道与叶子节点的连接的局部示意图;
26.图5为图3中叶子节点与第一层父节点连接的局部示意图。
具体实施方式
27.为了使本领域技术人员更好的理解本发明的技术方案并能予以实施,下面结合附图和具体实施例对本发明进行详细说明。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
28.本发明公开了一种树状组织的缓存结构,可用于多通道高速数据的缓冲读出,如图2所示,包括多个通道、叶子节点和n层父节点。
29.多个通道的数据并行读出,各通道数据按照从树叶到树根的结构缓冲存储。
30.叶子节点包括多个读出控制和多个叶子节点的子存储器;一个通道与一个读出控制之间进行数据互传,一个读出控制向一个叶子节点的子存储器传输数据。
31.每层父节点均包括多个路由控制和多个父节点的子存储器;每层父节点的一个路由控制向该层父节点的一个子存储器传输数据;路由控制主要是把多个子节点的数据转入一个父节点,进行多对一的数据选择的,控制的对象是叶子节点的子存储器及父节点的自存储器。每两个叶子节点的子存储器向第一层父节点的一个路由控制传输数据;每两个第n层父节点的子存储器向第n+1层父节点的一个路由控制传输数据,依次连接至树根;上一层父节点为下一层父节点的子节点(或孩子节点),最后一层为根节点。
32.各通道数据首先通过叶子节点的读出控制读出并存储在叶子节点的子存储器;然后叶子节点向其父节点申请数据转移,当父节点空闲时,允许对应子节点的数据输出转移,子节点完成数据转移后释放自己的存储空间,从而为下次信号读取做好准备;当父节点忙碌时,该子节点等待直到父节点空闲,最终实现所有数据通过根节点缓冲输出。
33.为了达到极高的读出速度,多通道数据并行读出,各通道数据按照从树叶到树根的结构缓冲存储。每个通道与一个读出控制和一个叶子节点的子存储器一一对应。各通道数据首先通过叶子节点的读出控制读出并存储在叶子节点的子存储器;然后叶子节点向其父节点申请数据转移,当父节点空闲时,允许对应子节点的数据输出转移,子节点完成数据转移后释放自己的存储空间,从而为下次信号读取做好准备。当父节点忙碌时(正在转移其它子节点数据),该子节点等待直到父节点空闲。各父节点包括一个子存储器和路由控制,其孩子节点的数据通过路由控制转储到父节点子存储器中。路由控制按粒子信息的时间先后将孩子节点的数据读入父节点,最终实现所有数据通过根节点缓冲输出。
34.本实施例中,子存储器可以使用sram、dram、寄存器等结构,根据时序控制选择使用单端口或者双端口存储。为了达到更好的效果,叶子节点和除根节点以外的父节点内部子存储器主要用来缓冲同时到达的数据,根据瞬时数据密度设计存储容量,子存储器主要解决瞬时大量数据的缓冲。根节点的子存储器根据平均数据密度设计容量,子存储器解决平均量数据缓冲。叶子节点在其子存储器不满时从通道读取数据,并在其子存储器非空时向其父节点发送读数请求。父节点在其子存储器不满时按照数据到达先后或者数据中的时间标记先后顺序响应其子节点的读数请求,在其子存储器非空时向其父节点发送读数请求。依次类推,直至向根节响应其子节点的读数请求,并在其非空时输出数据。读出控制需要向通道发送时序信息配合通道读出的,根据读出通道定制时序设计。
35.如图2至5所示,以32个通道并行读出为例,按照二叉树的结构进行缓存输出,该缓存二叉树深度为6。本实例中传感器空间分辨率极高,相邻通道容易同时被击中,而不相邻通道被同时击中的概率极低,为了避免相邻通道被击中导致的信息拥塞,因此让不相邻的通道通向同一个父节点,共享父节点的存储空间。在一些进行能量测量的传感器阵列中,相邻通道同时击中概率不高,也可以让相邻通道通向同一个父节点。小概率的冲突发生时数据暂存在当前节点,按照父节点的路由选择控制存入父节点。逐级传送,最终所有数据通过根节点的子存储器输出。
36.路由控制根据实际情况可以按照子节点的读请求顺序响应,也可以按照数据内部的时间标记响应。参照附图3,将附图2中第0、4、8、12通道的数据按照时间标记进行路由控制。在粒子探测领域,为了更好地还原粒子的入射信息或者减少背景信息,通常会为粒子信
息打上时间标记。本实例中的粒子信息是粒子的位置和时间标记。为了减少数据量,我们对一个通道上时间标记相同的粒子信息压缩成一组数据然后写入叶子节点的存储器。因此在路由时不能直接按照粒子信息写入的先后来选择,而是比较时间标记,时间标记较早的先被读入父节点。这样有利于后续按照时间标记进行数据处理。在实现时就需要将时间标记信息和粒子位置信息分别存储。时间标记在一组粒子入射时产生,但最终的位置信息需要将所有相同时间标记的地址全部读出后才能产生。因此先将时间标记写入父节点,并锁定该时间标记子节点的数据,另外一个子节点的数据不能写入,锁定的子节点写入根节点后释放该条路径。
37.针对一个平均每微秒每通道粒子撞击为0.24个的情况,假设需要缓存10微秒的数据,将背景技术和本发明进行对比。尽管实际平均每个通道只有2.4个粒子信息,但如果使用背景技术,按照泊松分布,若要丢数概率小于10-6
,每个通道的存储器容量应为12组数据。32个通道共需要384组数据的存储。如果使用本发明的技术,只要共享存储器的两个通道数据不是同时到达即可快速输出。考虑最差情况,叶子节点存储空间为0,两个不相邻通道共享存储空间,得到16个父节点的,16个父节点的父节点存储空间也为0。按照泊松分布计算,两个不相关通道共同存储所需存储空间为16组,也就是说共需要256个存储空间。存储空间需求为背景技术的66%。实际上按照树状结构,更多通道可以在其父节点及父节点的父节点进行共享存储,存储空间需求会进一步减小。考虑数据压缩和可能的冲突,再预留不确定的瞬时数据流,设计每个叶子节点和根节点以外的父节点设置存储4组数据的空间,根节点存储32,则共需要288个,节约了25%的存储空间。由于每个子存储器容量很小,子存储器采用先入先出的寄存器队列,物理实现后,版图面积也节约了25%左右。
38.本发明提供的缓存结构可用于高能物理、空间探测、医学成像等领域超多通道传感器前端高速数据的缓冲读出。
39.以上所述实施例仅为本发明较佳的具体实施方式,本发明的保护范围不限于此,任何熟悉本领域的技术人员在本发明披露的技术范围内,可显而易见地得到的技术方案的简单变化或等效替换,均属于本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1