基于预测逻辑的SRAM数据读取系统技术方案

技术编号:35076061 阅读:19 留言:0更新日期:2022-09-28 11:41
本发明专利技术涉及一种基于预测逻辑的SRAM数据读取系统,包括:SRAM控制器、读地址预测模块、数据缓存器、数据选择模块和FPGA的外接SRAM,SRAM控制器用于触发所述读地址预测模块;读地址预测模块用于预测T_user

【技术实现步骤摘要】
基于预测逻辑的SRAM数据读取系统


[0001]本专利技术涉及芯片
,尤其涉及一种基于预测逻辑的SRAM数据读取系统。

技术介绍

[0002]在芯片仿真(emulation)系统、芯片原型(prototype)系统中,通常基于多个FPGA来实现。在芯片仿真系统、芯片原型系统中,对于ASIC(Application Specific Integrated Circuit)芯片内部的大容量SRAM(Static Random

Access Memory)或多端口的SRAM,通常用时分复用的方式用FPGA内部的BRAM或外接SRAM来模拟用户设计中的SRAM。对于外接SRAM的方式。现有技术中通常通过一个用户周期获取地址信息,然后在下一个用户周期基于获取的地址信息访问外接SRAM来读取数据,每一次读取过程均涉及到FPGA管脚延迟、电路板延迟以及返回逻辑所占用的时间做造成的读延迟,读延迟和数据读取都必须在一个用户周期之内,因此导致用户周期时间长,从而限制了FPGA中的用户最高运行频率,影响了仿真(emulation)系统、芯片原型(prototype)系统的性能。由此可知,如何降低SRAM的读延迟,减小用户最小周期,提高FPGA中的用户最高运行频率成为亟待解决的技术问题。

技术实现思路

[0003]本专利技术目的在于,提供一种基于预测逻辑的SRAM数据读取系统,减小了用户最小周期,提高了FPGA中的用户最高运行频率。
[0004]本专利技术提供了一种基于预测逻辑的SRAM数据读取系统,应用于FPGA模拟用户芯片设计的过程中,包括:SRAM控制器、读地址预测模块、数据缓存器、数据选择模块和FPGA的外接SRAM,其中,
[0005]所述SRAM控制器用于解析用户芯片设计代码,判断是否为可预测逻辑,若是,则触发所述读地址预测模块。
[0006]所述读地址预测模块用于预测第i个用户芯片设计周期T_user
i
对应的M读地址{addr
1i
,addr
2i
,

addr
Mi
},M为每个时钟用户可选择读地址的数量,addr
mi
为T_user
i
对应的第m个可选择的读地址,m的取值范围为1到M,M≥1,i=0,1,2,

N,用户总周期数为N+1,所述读地址预测模块还用于在T_user
i
内基于{addr
1i
,addr
2i
,

addr
Mi
}访问所述外接SRAM,并在第i+1个用户芯片设计周期T_user
i+1
结束前从所述外接SRAM读取每一addr
mi
的数据data
mi
,将{data
1i
,data
2i
,

data
Mi
}存储至所述数据缓存器中,用户芯片设计周期为FPGA中的用户芯片设计周期。
[0007]所述数据选择模块用于在T_user
i+1
获取在所述SRAM控制器在T_user
i
发出的目标读地址addr
xi
,addr
xi
属于{addr
1i
,addr
2i
,

addr
Mi
},基于addr
xi
从所述数据缓存器中的{data
1i
,data
2i
,

data
Mi
}选择对应的目标读数据返回给所述SRAM控制器。
[0008]本专利技术与现有技术相比具有明显的优点和有益效果。借由上述技术方案,本专利技术提供的一种基于预测逻辑的SRAM数据读取系统可达到相当的技术进步性及实用性,并具有产业上的广泛利用价值,其至少具有下列优点:
[0009]本专利技术所述系统通过提前预测读地址,并对应周期所有可能的地址对应的数据均缓存在数据缓存器中,使得在基于读地址进行读取目标读数据对应的用户芯片设计周期内,直接从数据缓存器中获取目标读数据,而不需要从外部SRAM获取目标读数据,从而使得FPGA内的用户芯片设计周期不直接受限于读延迟的影响,从而减小了FPGA内的最小用户芯片设计周期,提高了FPGA内的FPGA中的用户最高运行频率,进而提高了FPGA的性能。
[0010]上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
附图说明
[0011]图1为本专利技术实施例提供的基于预测逻辑的SRAM数据读取系统示意图;
[0012]图2为现有技术中SRAM数据读取时序图;
[0013]图3为本专利技术实施例基于预测逻辑的SRAM数据读取时序图;
[0014]图4为图2和图3用户芯片设计周期对比示意图。
具体实施方式
[0015]为更进一步阐述本专利技术为达成预定专利技术目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本专利技术提出的一种基于预测逻辑的SRAM数据读取系统的具体实施方式及其功效,详细说明如后。
[0016]本专利技术实施例提供了一种基于预测逻辑的SRAM数据读取系统,应用于FPGA模拟用户芯片设计的过程中,具体可应用于FPGA(Field

Programmable Gate Array)实现芯片仿真系统或芯片原型系统。如图1所示,包括:SRAM控制器、读地址预测模块、数据缓存器、数据选择模块和FPGA的外接SRAM,可以理解的是,SRAM控制器、读地址预测模块、数据缓存器、数据选择模块位于FPGA内部。
[0017]其中,所述SRAM控制器用于解析用户芯片设计代码,判断是否为可预测逻辑,若是,则触发所述读地址预测模块。
[0018]需要说明的是,在很多芯片设计中,SRAM的读地址是有规律的并且可以预测的,不是随机的。例如视频处理芯片和AI芯片的SRAM的地址一般是顺序访问,读地址都是一直累加的。视频处理芯片一般逐行逐列处理视频,AI芯片顺序读取和存储系数。针对cpu的icache而言,地址一般都是累加的。由于现代高速CPU处理器大量运用pipeline和指令预测技术,其读指令的地址往往可以在有限的地址之间选出。因此,所述可预测逻辑为顺序读取逻辑或多路选择逻辑。
[0019]对于上述示例,视频处理芯片、AI芯片的SRAM、cpu的icache均为顺序读取逻辑。高速CPU处理器大量运用pipeline和指令预测技术对应的是多路选择逻辑。若所述可预测逻辑为顺序读取逻辑,M=1,若所述可预测逻辑为多路选择逻辑,则M=N,N为所述多路选择逻辑的选择通道本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于预测逻辑的SRAM数据读取系统,应用于FPGA模拟用户芯片设计的过程中,其特征在于,包括:SRAM控制器、读地址预测模块、数据缓存器、数据选择模块和FPGA的外接SRAM,其中,所述SRAM控制器用于解析用户芯片设计代码,判断是否为可预测逻辑,若是,则触发所述读地址预测模块;所述读地址预测模块用于预测第i个用户芯片设计周期T_user
i
对应的M读地址{addr
1i
,addr
2i
,

addr
Mi
},M为每个时钟用户可选择读地址的数量,addr
mi
为T_user
i
对应的第m个可选择的读地址,m的取值范围为1到M,M≥1,i=0,1,2,

N,用户总周期数为N+1,所述读地址预测模块还用于在T_user
i
内基于{addr
1i
,addr
2i
,

addr
Mi
}访问所述外接SRAM,并在第i+1个用户芯片设计周期T_user
i+1
结束前从所述外接SRAM读取每一addr
mi
的数据data
mi
,将{data
1i
,data
2i
,

data
Mi
}存储至所述数据缓存器中,用户芯片设计周期为FPGA中的用户芯片设计周期;所述数据选择模块用于在T_user
i+1
获取在所述SRAM控制器在T_user
i
发出的目标读地址addr
xi
,addr
xi
属于{addr
1i
,addr
2i
,

addr
Mi

【专利技术属性】
技术研发人员:李春峰李菲李旭
申请(专利权)人:上海合见工业软件集团有限公司
类型:发明
国别省市:

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

1