智能双倍数据速率(ddr)存储器控制器的制造方法_4

文档序号:8449195阅读:来源:国知局
接口等)的存储器位置。例如,该存储器控制器可以确定该地址是否可以转变为在该存储器控制器能直接控制和/或对其负有直接责任的存储器(DRAM、DDR SDRAM等)的界限内的行和列数据地址。
[0056]当该存储器控制器确定该源地址不是该存储器控制器可直接存取的存储器位置(即,确定框404 = “否”)时,则在确定框406中,该存储器控制器可以确定该目的地址是否是该存储器控制器可直接存取的存储器位置(例如,在该存储器控制器能直接控制/对其负有直接责任等的存储器的界限内)。当该存储器控制器确定该目的地址是该存储器控制器可直接存取的存储器位置(即,确定框406 =“是”)时,则在方框416中,该存储器控制器可以执行DMA操作。如上文所讨论的,DMA操作可以包括:将读取指令和源地址推送到总线上,接收数据并且将其存储在本地存储器中,以及将写入命令、所存储的数据和目的地址推送到总线上。当该存储器控制器确定该目的地址不是该存储器控制器可直接存取的存储器位置(即,确定框406 =“否”)时,则在方框418中,该存储器控制器可以生成并且报告错误。
[0057]当该存储器控制器确定该源地址是该存储器控制器可直接存取的存储器位置(即,确定框404 =“是”)时,则在确定框408中,该存储器控制器可以确定该目的地址是否是该存储器控制器可直接存取的存储器位置(例如,在该存储器控制器能直接控制/对其负有直接责任等的存储器的界限内)。当该存储器控制器确定该目的地址是该存储器控制器可直接存取的存储器位置(即,确定框408 =“是”)时,则在方框410中,该存储器控制器可以将存储在该源地址处的数据复制到该目的地址。
[0058]当该存储器控制器确定该目的地址不是该存储器控制器可直接存取的存储器位置(即,确定框408 =“否”)时,则在方框412中,该存储器控制器可以取回存储在该源地址处的数据。在方框414中,该存储器控制器可以向第二存储器控制器发送写入命令、该目的地址和所取回的数据(例如,通过将信息推送到总线上等)。
[0059]图5描绘了由示例性存储器控制器来执行存储器对存储器的传送操作的另一示例性方法500。在方框502中,存储器控制器(例如,DDR存储器控制器206)可以经由系统总线接收源地址和目的地址。在确定框504中,该存储器控制器可以确定该源地址是否是该存储器控制器可直接存取(例如,经由存储器总线、PHY接口等)的存储器位置。例如,该存储器控制器可以确定该地址是否可以转变为在该存储器控制器能直接控制/对其负有责任的存储器(DRAM、DDR SDRAM等)的界限内的行和列数据地址。
[0060]当该存储器控制器确定该源地址不是该存储器控制器可直接存取的存储器位置(即,确定框504 =“否”)时,则在方框506中,该存储器控制器可以生成并且向外部DMA控制器发送通知(例如,控制信号、消息等),这可以使得该外部DMA控制器执行存储器对存储器的传送操作。
[0061]当该存储器控制器确定该源地址是该存储器控制器可直接存取的存储器位置(即,确定框504 = “是”)时,则在方框508中,该存储器控制器可以取回存储在该源地址处的数据。在方框510中,该存储器控制器可以将这些数据存储在本地存储器中。
[0062]在确定框512中,该存储器控制器可以确定该目的地址是否是该存储器控制器可直接存取的存储器位置(例如,在该存储器控制器能直接控制/对其负有直接责任等的存储器的界限内)。当该存储器控制器确定该目的地址是该存储器控制器可直接存取的存储器位置(即,确定框512 =“是”)时,则在方框512中,该存储器控制器可以将存储在本地存储器中的数据复制到该目的地址。当该存储器控制器确定该目的地址不是该存储器控制器可直接存取的存储器位置(即,确定框512 = “否”)时,则在方框516中,该存储器控制器可以向第二存储器控制器发送写入命令、该目的地址和存储在该本地存储器中的数据(例如,通过将信息推送到总线上等)。
[0063]还可以使用任何商业计算设备来实现各种实施例,在图6-图7中描绘了这些计算设备的一些例子。典型移动计算设备600将共同具有图6中描绘的组件。例如,移动计算设备600可以包括:耦合到内部存储器604的处理器602和触摸表面输入设备/显示器606,例如电阻式传感触摸屏、电容式传感触摸屏、红外线传感触摸屏、声音/压电传感触摸屏等。计算设备600可以具有用于发送并接收电磁辐射的无线单元/天线610,其连接到耦合到处理器602的无线数据链路和/或蜂窝电话收发机608。计算设备600还可以包括用于接收用户输入的物理按钮612。
[0064]可以使用其它形式的计算设备(包括个人计算机和膝上型计算机)来实现各种实施例。这样的计算设备通常包括图7中描绘的组件,图7描绘了示例性个人膝上型计算机700。这样的个人计算机700通常包括耦合到易失性存储器704和大容量非易失性存储器(例如磁盘驱动器706)的处理器702。计算机700还可以包括耦合到处理器702的压缩光盘(⑶)和/或DVD驱动器708。计算机设备700还可以包括耦合到处理器702的多个连接器端口,其用于建立数据连接或接收外部存储器设备,例如用于将处理器702耦合到网络的网络连接电路。计算设备700可以具有用于发送并接收电磁辐射的无线单元/天线710,其连接到耦合到处理器702的无线数据链路。如计算机领域中所公知的,计算机700还可以耦合到键盘716、定点设备(例如鼠标714)和显示器712。
[0065]处理器602、702可以是任何可编程的微处理器、微计算机或者多处理器芯片或芯片集,它们可以通过软件指令(应用)来配置以执行各种功能,包括本文所描述的各种实施例的功能。可以提供多个处理器,例如一个处理器专用于无线通信功能,而一个处理器专用于运行其它应用。通常,软件应用在被访问并且加载到处理器602、702之前,可以被存储在内部存储器中。在一些设备中,处理器602、702可以包括足以存储应用软件指令的内部存储器。在一些移动设备中,安全存储器可以在耦合到处理器602、702的单独存储器芯片中。该内部存储器可以是易失性或非易失性存储器(例如闪存)或者二者的混合物。出于此说明的目的,对存储器进行的一般引用指代可以由处理器存取的所有存储器,包括内部存储器、插入设备中的可移动存储器和处理器602、702自身内的存储器。
[0066]提供前述的方法描述和过程流程图仅仅作为说明性的例子,而并非旨在要求或暗示必须按照给出的顺序来执行各种实施例的方框。如本领域的技术人员应当意识到的,可以按照任何顺序来执行前述实施例中的方框顺序。诸如“其后”、“然后”、“接下来”等词汇并非旨在限制方框的顺序;这些词汇仅用于引导读者阅读对方法的描述。此外,以单数形式(例如使用冠词“一个”、“一”或“该”)对权利要求元素进行的任何引用都不应被解释为将元素限制为单数。
[0067]结合本文所公开的实施例描述的各种说明性逻辑框、模块、电路和算法框可以被实现为电子硬件、计算机软件或二者的组合。为了清楚地说明硬件和软件的这种可互换性,以上各种说明性组件、方框、模块、电路和步骤均围绕它们的功能来概括性描述。这样的功能是实现为硬件还是软件取决于具体应用和施加在整个系统上的设计约束。技术人员可以针对各个具体应用以变通方式来实现所描述的功能,但是这样的实现决策不应当被解释为导致脱离本发明的范围。
[0068]可以利用被设计为执行本文所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑设备、分立门或晶体管逻辑器件、分立硬件组件、或其任意组合来实现或执行用于实现结合本文所公开的实施例所描述的各种说明性逻辑单元、逻辑框、模块和电路的硬件。通用处理器可以是微处理器,但在替代方案中,该处理器可以是任何常规的处理器、控制器、微控制器或状态机。处理器还可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器与DSP内核的结合或任何其它这样的配置。或者,可由特定于给定功能的电路来执行一些步骤或方法。
[0069]在一个或多个示例性方面中,可以使用硬件、软件、固件或其任意组合来实现描述的功能。如果使用软件实现,则可以将这些功能作为一个或多个指令或代码存储在非暂时性计算机可读介质或非暂时性处理器可读介质上。本文公开的方法或算法的步骤可以体现在处理器可执行软件模块中,该模块可以驻留在非暂时性计算机可读或处理器可读存储介质上。非暂时性计算机可读或处理器可读存储介质可以是可以由计算机或处理器存取的任何存储介质。通过举例而非限制的方式,这样的非暂时性计算机可读或处理器可读介质可以包括RAM、ROM、EEPR0M、闪存、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或者能够用于存储具有指令或数据结构形式的期
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1