存储器访问控制模块以及相关方法_4

文档序号:8417536阅读:来源:国知局
口(104)接收第一存储器访问请求的操作401。该方法还包括:用于根据第一数据总线位大小(bsl)和第一时钟频率(clkl)将第一存储器访问请求发送到对由第一存储器访问请求寻址的存储器区(109A-109D)负责的仲裁模块(107A-107D)的操作403。该方法还包括:用于根据第二数据总线位大小(bs2)和第二时钟频率(clk2)从第二数据接口(106)接收第二存储器访问请求的操作405。第二存储器访问请求是数据储存请求。第二数据总线位大小(bs2)是第一数据总线位大小(bsl)的整数倍。第一时钟频率(clkl)是第二时钟频率(clk2)的整数倍。
[0038]该方法还包括:用于将第二数据总线位大小(bs2)的第二存储器访问请求分割为第一数据总线位大小(bsl)的数据段的操作407。该方法还包括:用于根据第一时钟频率(clkl)将第一数据总线位大小(bsl)的每个数据段发送到对由第一数据总线位大小(bsl)的数据段寻址的存储器区(109A-109D)负责的仲裁模块(107A-107D)的操作409。第一数据总线位大小(bsl)的每一个数据段通过单独的数据通道被发送到对其寻址的存储器区(109A-109D)负责的仲裁模块(107A-107D)。此外,每个数据通道与存储器区(109A-109D)的单独组通信。
[0039]在一示例实施例中,第一数据接口(104)连接到计算机处理器,并且第二数据接口(106)连接到系统总线主控器。此外,在一示例实施例,第二数据总线位大小(bs2)是第一数据总线位大小(bsl)的2倍。在该示例实施例的情况中,第一数据总线位大小是32位,并且第二数据总线位大小是64位。此外,在一示例实施例中,第一时钟频率(clkl)是第二时钟频率(clk2)的2倍。在一示例实施例中,存储器包括4个仲裁模块(107A-107D)和4个存储器区(109A-109D),并且数据通道的数量是2,并且第二数据总线位大小(bs2)是第一数据总线位大小(bsl)的2倍,并且第一时钟频率(clkl)是第二时钟频率(clk2)的2倍。此外,在一示例实施例中,该方法包括,操作仲裁模块(107A-107D)从而相对于来自第二存储器访问器(103)的第二存储器访问请求的数据段给来自第一存储器访问器(101)的第一存储器访问请求更高的访问优先权。
[0040]图4B示出了根据本发明的一个实施例的接续图4A的用于在加载操作期间操作存储器访问控制模块203的方法的流程图。该方法包括,用于根据第二数据总线位大小(bs2)和第二时钟频率(clk2)从第二数据接口(106)接收第三存储器访问请求的操作411。第三存储器访问请求是数据加载请求,即,数据读取请求。该方法还包括,用于根据第一数据总线位大小(bsl)和第一时钟频率(clkl)经由相应的多个仲裁模块(107A-107D)从多个存储器区(109A-109D)取回由第三存储器访问请求寻址的数据的操作413。该方法还包括,用于将从多个存储器区(109A-109D)接收的数据组合成第二数据总线位大小(bs2)的操作415。该方法还包括,用于根据第二时钟频率(clk2)将第二数据总线位大小(bs2)的组合的数据发送到第二数据接口(106)的操作417。
[0041]基于前述,应理解的是,这里所公开的存储器访问控制模块203提供通过外部直接存储器访问(DMA)引擎使能对直接紧凑耦合的存储器的访问而不干扰处理器存储器访问操作的系统和方法。下文中,这里所公开的存储器访问控制模块203提供更方便的电路定时关闭和更高性能的存储器访问。此外,存储器访问控制模块203是固件透明的,即固件友好的。
[0042]鉴于前述,应理解的是,存储器访问控制模块203可以在多个存储器区109A-109D中起交织数据储存的作用。例如,在一实施例中,存储器区109A和109C可以覆盖可寻址的存储器范围的下一半,并且存储器区109B和109D可以覆盖可寻址的存储器范围的上一半。第二数据总线位大小bs2的每一个数据通信被分割为第一数据总线位大小bsl的两个数据段。然后,第一数据总线位大小bsl的第一数据段通过第一通道控制模块315A被发送到第一存储器区109A或者第三存储器区109C。并且,第一数据总线位大小bsl的第二数据段通过第二通道控制模块315B被发送到第二存储器区109B或者第四存储器区109D。以此方式,进入通过第二数据接口 106的数据在存储器区109A、109C的第一半和存储器区109B、109D的第二半之间交织。此外,以此方式,来自访问器2103的一个bs2访问(下一半或者上一半)可以并行地进行。
[0043]存储器访问控制模块203还提供读预取和写入缓冲能力。更具体地,因为第一时钟频率clkl是第二时钟频率clk2的整数倍、例如两倍,对于第二时钟频率clk2的每个周期,根据第一时钟频率clkl可以有整数倍的尝试以预取读取数据。此外,因为由数据传输控制器309和多个通道控制器模块315A、315B提供的多个数据通道,可以通过每一个数据通道独立地预取读取请求的一部分。
[0044]应理解的是,存储器访问控制模块203提供由多个存储器访问器、例如101、103对共享的存储的不同的部分、即不同的存储器区109A-109D的同时访问。因此,存储器访问控制模块203被定义为管理:1)由多个计算资源对共享的存储的同时请求;2)共享的存储器和访问共享的存储器的多个计算资源之间的时钟同步问题;3)共享的存储器和访问共享的存储器的多个计算资源之间的数据总线位大小的区别;以及4)由多个计算资源对共享的存储器的不同部分的同时访问。
[0045]这里该的本发明可以实现为计算机可读介质上的计算机可读的代码。例如,计算机可读的代码可以包括配置数据文件,在该配置数据文件中储存对应于的存储器访问控制模块203的一个或多个配置。这里所提及的计算机可读介质是可以储存在之后能够被计算机系统读取的数据的任何数据储存器件。计算机可读介质的示例包括硬盘、网络附加储存(NAS)、只读存储器、随机访问存储器、⑶-ROM、⑶-R、⑶-RW、磁带以及其它光学的和非光学的数据储存器件。计算机可读介质还可以分布在耦合的计算机系统的网络之上,使得计算机可读的代码以分布式的方式被储存和执行。
[0046]这里该的形成本发明的部分的任何操作是有用的机器操作。本发明还涉及用于进行这些操作的设备或装置。装置可以是根据所需要的目的特别构造的,诸如特殊用途计算机。当被定义为特殊用途计算机时,计算机也可以进行不是特殊用途的一部分的其它处理、程序执行或者例程,而同时仍然能够用于特殊用途而操作。可替换地,操作可以通过一般用途计算机处理,该一般用途计算机被选择性地激活或者通过储存在计算机存储器、缓存、或通过网络获得的一个或多个计算机程序配置。当从网络数据时,数据可以通过网络上的其它计算机、例如计算资源的云处理。
[0047]本发明的实施例还可以被定义为将数据从一个状态转换为另一状态的机器。数据可以表示产品,该产品可以被表示为电子信号并且电子地操纵(manipulat1n)数据。转换的数据在一些情况中可以在显示器上被形象化地描述,表示由数据的转换而产生的物理对象。转换的数据可以以使能对物理的且有形的对象的构造或描述的一般或具体的格式被保存到储存。在一些实施例中,该操纵(manipulat1n)可以通过处理器进行。在这样的示例中,处理器从而将数据从一种事物转换为另一种。更进一步,方法可以通过能够连接到网络之上的一个或多个机器或处理器处理。每个机器可以将数据从一状态转换为另一状态,并且也可以处理数据、将数据保存到储存、在网络上发送数据、显示结果或者与另外的机器通信结果。
[0048]还应理解的是,这里所公开的存储器访问控制模块203可以被制造为半导体器件或芯片的一部分。在制造诸如集成电路、存储单元及其类似者的半导体器件中,进行一系列制造操作以定义半导体晶片上的特征。晶片包括定义在硅基板上的多层结构形式的集成电路器件。在基板层处,形成具有扩散区域的晶体管器件。在接下来的层中,互连金属化的线被图案化并且电气连接到晶体管器件以定义期望的集成电路器件。此外,图案化的导电层通过介电材料与其它导电层隔离。
[0049]尽管本发明以若干实施例的方式被描述,应理解的是,本领域技术人员在阅读前述说明书并研宄附图后将会实现各种变化、增加、置换以及其等效物。因此,所意欲的是,
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1