用于可编程逻辑的存储器的虚拟化的制作方法

文档序号:11160910阅读:来源:国知局

技术特征:

1.一种电子系统,其特征在于,包括:

处理子系统,其被配置为执行程序,所述程序使用一组虚拟存储器地址来引用用于存储所述程序的变量的存储器位置;

可编程逻辑子系统,其被配置为实现配置数据流中指定的一组电路,该组电路中的每一个都包括多个输入/输出电路,每个输入/输出电路都具有相应的标识符(ID),并且被配置为访问所述变量中相应的一个变量;

存储器;

存储器管理电路,其被配置为:

将该组虚拟存储器地址映射到所述存储器的物理存储器地址;以及

对于所述多个输入/输出电路中的每一个,将所述输入/输出电路的所述ID映射到被映射到相应变量的虚拟存储器地址的物理存储器地址,其中所述输入/输出电路被配置为访问所述相应变量;以及

至少一个转换后备缓冲器(TLB),其被耦接到所述多个输入/输出电路中的至少一个输入/输出电路,所述至少一个转换后备缓冲器被配置为响应于接收到指示ID的存储器访问请求,向所述存储器提供指示映射到所述ID的物理存储器地址的存储器访问请求。

2.根据权利要求1所述的电子系统,其特征在于:

所述至少一个TLB包括缓存,其被配置为针对一个或多个ID存储所述ID到所述物理存储器地址的映射;以及

所述至少一个TLB还被配置为,响应于接收到存储器访问请求并且所述存储器访问请求指示存储在所述缓存中的虚拟存储器地址和ID,从所述缓存检索映射到所述ID和虚拟存储器地址的物理存储器地址。

3.根据权利要求2所述的电子系统,其特征在于,所述至少一个TLB还被配置为,响应于接收到存储器访问请求并且所述存储器访问请求指示未包括在所述缓存中的虚拟存储器地址和ID,从所述存储器管理电路检索映射到所述ID和所述虚拟存储器地址的物理存储器地址。

4.根据权利要求3所述的电子系统,其特征在于,所述至少一个TLB还被配置为,响应于从所述存储器管理电路检索到映射到所述ID和所述虚拟存储器地址的物理存储器地址,缓存从所述ID和所述虚拟存储器地址到所述检索到的物理存储器地址的映射。

5.根据权利要求3或4所述的电子系统,其特征在于,所述至少一个TLB是使用所述可编程逻辑子系统的可编程电路来实现的。

6.根据权利要求1所述的电子系统,其特征在于:

至少一个TLB包括多个TLB;并且

所述系统还包括交换网络,其被配置为将存储器访问请求从所述多个TLB路由到所述存储器。

7.根据权利要求6所述的电子系统,其特征在于,还包括:

所述处理子系统中的缓存,所述缓存被配置为存储所述存储器的一个或多个物理存储器位置的值;

缓存一致性互连,其被配置为维持存储在所述缓存中的值与存储在所述存储器中的值之间的一致性;以及

其中所述缓存一致性互连被配置为从所述多个TLB中的至少一个接收存储器访问请求。

8.根据权利要求1至7中任一项所述的电子系统,其特征在于,所述可编程逻辑子系统包括:

多个接口电路,每个接口电路都被配置为将来自所述多个输入/输出电路中的一个或多个的存储器访问请求传送到所述至少一个TLB。

9.根据权利要求8所述的电子系统,其特征在于,所述多个接口电路中的至少一个被配置为将来自所述多个输入/输出电路中的多个输入/输出电路的存储器访问请求传送到所述至少一个TLB。

10.一种用于操作具有处理子系统和可编程逻辑子系统的可编程IC的方法,其特征在于,包括:

在所述处理子系统上执行程序,所述程序使用一组虚拟存储器地址来引用用于存储所述程序的变量的存储器位置;

对所述可编程逻辑子系统编程以实现配置数据流中指定的一组电路,该组电路包括多个输入/输出电路,每个输入/输出电路都具有相应的标识符(ID),并且被配置为访问所述变量中相应的一个变量;

对于每个所述输入/输出电路,通过执行包括下述的操作来访问相应的变量:

从所述输入/输出电路向连接到所述存储器的多个转换后备缓冲器(TLB)中的一个提供存储器访问请求,所述存储器访问请求指示所述输入/输出电路的ID和虚拟存储器地址;以及

使用所述多个TLB中的一个来进行下述操作:

基于所述ID和所述虚拟存储器地址,确定存储所述相应变量的物理存储器地址;并且

向所述存储器提供包括所述确定的物理存储器地址的存储器访问请求。

11.根据权利要求10所述的方法,其特征在于,还包括使用存储器管理电路进行下述操作:

将该组虚拟存储器地址映射到一组物理存储器地址;以及

将所述ID映射到物理存储器地址,所述物理存储器地址被映射到对应于所述输入/输出电路被配置访问的变量的虚拟存储器地址。

12.根据权利要求11所述的方法,其特征在于,基于所述ID和所述虚拟存储器地址确定存储所述相应变量的所述物理存储器地址包括:

对于由所述多个TLB中的所述一个TLB接收的指示所述ID的第一存储器访问请求,从所述存储器管理电路检索与所述ID和所述虚拟存储器地址对应的所述物理存储器地址,并将检索到的所述物理存储器地址存储在所述TLB的缓存中;以及

对于由所述TLB接收的指示所述ID的第二存储器访问请求,从所述TLB的所述缓存中检索与所述ID和所述虚拟存储器地址对应的所述物理存储器地址。

13.根据权利要求10至12中任一项所述的方法,其特征在于,所述可编程逻辑子系统的所述编程包括:对所述可编程逻辑子系统进行编程以实现所述多个TLB中的至少一个。

14.根据权利要求10所述的方法,其特征在于,还包括对所述可编程逻辑子系统编程以实现多个接口电路,每个接口电路被配置为将存储器访问请求从所述多个输入/输出电路中的一个或多个传送到所述多个TLB中相应的一个。

15.根据权利要求10所述的方法,其特征在于,还包括:

将所述存储器的所述物理存储器位置中的一个或多个的值存储在缓存中;以及

从所述多个TLB中的至少一个向所述缓存一致性互连提供存储器访问请求,所述缓存一致性互连被连接到所述缓存并被配置为维持存储所述缓存中的值与存储在所述存储器中的值之间的一致性。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1