存储器访问控制装置、命令发出装置和方法

文档序号:6466564阅读:152来源:国知局
专利名称:存储器访问控制装置、命令发出装置和方法
技术领域
本发明涉及一种用于控制对具有不同等待时间(latency)的 多个存储器装置的访问的存储器访问控制装置和命令发出装置 以及方法。
背景技术
传统上,设计基板使得大规模集成电路(L SI)和存储器装置 之间的布线延迟(wiring delay)不超过存储器的一个时钟周期。 然而,随着工作频率增高,已经变得难以通过基板设计来保持 布线延迟不超过存储器的一个时钟周期,并且出现了存储器装 置具有不同的访问等待时间的情况。因此,已经设想了能够在考虑到布线延迟的情况下精确地 进行与多个存储器装置的数据交换的存储器访问控制电路(例 如,日本特开2003-173290号公报)。图l是示出在传统例子中的存储器访问控制电路的一个例 子的框图。如图l所示,存储器装置191和192连接到存储器访问 控制电路IOO,并且存储器访问控制电路100控制对存储器装置 191和192的访问。注意,在图l中示出的例子中,使用DDR型 存储器装置作为存储器装置。在图l中,IOI是片选信号,并且当存储器访问控制电路IOO 访问存储器装置191时断言(assert)该信号。102是片选信号,并 且当存储器访问控制电路IOO访问存储器装置192时断言该信 号。10 3是时钟信号,并且将其从存储器访问控制电路10 0提供 给存储器装置191和192。存储器装置191和192与时钟信号103同步运行。104是命令信号,并且将其从存储器访问控制电路IOO 发出给存储器装置191和192。当断言了相应的片选信号101和 102时,存储器装置191和192接收命令信号104,并进行与该命 令的内容相对应的处理。105是双向数据选通信号。当发送数据时,存储器访问控制 电路100以及存储器装置191和192驱动数据选通信号105。 106 是双向数据信号。当写入时,存储器访问控制电路100在预定定 时驱动数据信号106,并且当读取时,存储器装置191或存储器 装置192在预定定时驱动数据信号106。在存储器访问控制电路100中,IIO是在前命令信息保持电 路,并且保持与紧接之前(immediately before)发出的命令有关 的信息。该在前命令信息保持电路110内部设置有用于保持紧接 之前发出的命令的读取或写入方向的在前访问方向緩冲器lll。120是命令信息保持电路,并且保持与接下来要发出的命令 有关的信息。该命令信息保持电路120内部设置有用于保持接下 来要发出的命令的读取或写入方向的访问方向緩冲器121 。13 0是命令间隔信息保持电路,并且保持与从发出在前命令 到发出下一命令的最小命令发出间隔有关的信息。该命令间隔 信息保持电路130内部配置有命令间隔緩冲器131a 131d,并且 保持在前命令的读取和写入方向与下一命令的读取和写入方向 的所有组合中的最小命令发出间隔。换句话说,在图l中示出的 例子中,保持了四组命令间隔。14 0是等待时间信息保持电路,并且保持与连接到存储器访 问控制电路100的存储器装置的设置相对应的存储器装置的读 取等待时间和写入等待时间。150是命令发出控制电路,并且控制对存储器装置191和192 的命令的发出。命令发出间隔选择电路151才艮据在前访问方向緩冲器lll和访问方向緩冲器121从命令间隔缓冲器131a 131d中 选择相关的命令间隔。接着,命令发出定时控制电路152将用于 使下一命令发出的定时延迟由命令发出间隔选择电路151所选 择的命令间隔。160是数据发出控制电路,并且在自从命令发出控制电路 150发出了命令起经过了与保持在等待时间信息保持电路140中 的写入等待时间等同的时间段之后,驱动数据信号106。 170是 数据接收控制电路,并且接收从存储器装置191和192读取的数 据。180是存储器访问接口 ,并且接收来自外部电路的存储器访 问请求,向命令发出控制电路150发送命令并将读取或写入信息 设置到访问方向緩冲器121中。下面说明用于计算要设置到命令间隔緩冲器131a 131d中 的命令发出间隔的方法。计算方法如下面在(1)到(4)中列出。(1) 发出写入命令之后再发出写入命令命令发出间隔=数据传送长度/2+最小数据间隔(2) 发出写入命令之后再发出读取命令命令发出间隔=在前访问装置写入等待时间+数据传送长 度/2+最大访问装置布线延迟-下 一访问装置读取等待时间-最 小访问装置布线延迟(3) 发出读取命令之后再发出写入命令命令发出间隔-最大访问装置布线延迟x2+在前访问装置 读取等待时间+数据传送长度/ 2+最小数据间隔-下 一 访问装置 写入等待时间(4) 发出读取命令之后再发出读取命令命令发出间隔二最大访问装置布线延迟x2+数据传送长度 /2+最小数据间隔-最小访问装置布线延迟x2如果在不满足使用上述计算方法计算出的命令发出间隔的情况下发出命令,则在存储器访问控制电路100与存储器装置 191和192之间的数据信号的驱动之间存在发生冲突的风险。注意,在存储器访问控制电路100与存储器装置191和192 之间的读取和写入访问均使用4拍(four-beat)传送。假定存储器访问控制电路100和存储器装置191之间的布线 延迟为0.5个时钟周期,并且假定存储器访问控制电路100和存 储器装置192之间的布线延迟为1.5个时钟周期。假定保持在等 待时间信息保持电路140中的读取等待时间为3个时钟周期,并 且假定保持在等待时间信息保持电路140中的写入等待时间为2 个时钟周期。如上所述,基于访问长度、布线延迟和等待时间计算最小 命令间隔值,使得通过存储器访问控制电路100以及存储器装置 191和19 2对数据信号10 6的驱动不冲突,并且将这些最小命令间 隔值设置到命令间隔緩冲器131a 131d中。在传统例子中,由于仅处理了4拍的存储器访问,因此"数 据传送长度/2"为2个时钟周期。此外,"最小数据间隔"是用于 防止连续访问的数据在数据信号中邻接的间隔,并且该"最小数 据间隔"通常为l个时钟周期。当使用上述命令发出间隔计算方法计算命令发出间隔时, 结果如下。即,将下面的间隔(时钟周期)设置到命令间隔緩冲 器131a 131d中,并且在命令之间设置等于至少这些间隔的时 钟周期。(1) 发出写入命令之后再发出写入命令(131a): 3个时钟周期(2) 发出写入命令之后再发出读取命令2个时钟周期(3) 发出读取命令之后再发出写入命令7个时钟周期(4) 发出读取命令之后再发出读取命令5个时钟周期参考图2 ,现在说明在存储器访问控制电路10 0向存储器装 置192发出读取命令然后再向存储器装置191发出写入命令的情 况下的操作(操作例子1)。图2是示出在传统例子中发出命令时的操作例子1的时序 图。在图2中,标记为存储器访问控制电路100的波形是通过采 样存储器访问控制电路100的信号管脚(signal pin)所获得的波 形。CLK、 CS0、 CS1和CMD是存储器访问控制电路100的输出 信号,并且DQS和DQ是存储器访问控制电路100的输入/输出信 号。存储器装置191和存储器装置192是通过采样存储器装置的 信号管脚所获得的波形。CLK—0、 CS—0和CMD—O以及CLKJ、 CS—1和CMD—l是存储器装置的输入信号,并且DQS—0和DQ—0 以及DQSJ和DQ—l是存储器装置的输入/输出信号。通过存储器访问接口 180将意为下 一命令是读取命令的信 息设置到访问方向緩冲器121中。当设置了访问方向緩冲器121 时,由于在前访问方向緩冲器lll为空,因而命令发出间隔选择 电路151通知命令发出定时控制电路152在可能进行命令发出之 前存在O个周期。另 一方面,命令发出定时控制电路152接收表示在命令发出 之前存在O个时钟周期的信息,并且在O个时钟周期之后给出命 令发出许可。命令发出控制电路150断言片选信号102并且发出 读取命令(T3)。命令发出控制电路150发出命令,并且同时将访问方向緩冲 器121的表示读取的信息设置到在前访问方向緩冲器111。同时, 存储器访问接口 18 0将表示下 一 命令是写入命令的信息设置到 访问方向緩冲器121。在1.5个时钟周期的延迟之后存储器装置192接收到由命令发出控制电路150发出的读取命令(B4)。由于接收到的命令是读 取命令,因此存储器装置19 2在经过了 3个时钟周期的读取等待 时间之后驱动数据信号106 (B7)。在1.5个时钟周期的延迟之后 数据接收控制电路170接收到由存储器装置192驱动的数据 (T10 ~ T12)。由于在前命令是读取命令且下一命令是写入命令,因而命 令发出间隔选择电路151选择命令间隔緩冲器131c。因此,通知 命令发出定时控制电路152在可能进行命令发出之前存在7个时钟周期。命令发出定时控制电路152接收表示在命令发出之前存在7 个时钟周期的信息,并且在从发出在前命令(T 3)起的7个时钟周 期之后给出命令发出许可。命令发出控制电路150断言片选信号101并且发出写入命令 (TIO)。命令发出控制电路150发出命令,并且同时将访问方向 緩冲器121的信息设置到在前访问方向緩冲器111。在0.5个时钟周期的延迟之后存储器装置191接收到由命令 发出控制电路150发出的写入命令(All)。在从命令发出控制电 路150发出了写入命令的定时起经过了由等待时间信息保持电 路140保持的2个周期的写入等待时间之后,数据发出控制电路 160驱动数据信号106 (T13)。在0.5个时钟周期的延迟之后,存 储器装置191接收到由数据发出控制电路160发出的数据 (A13 ~ A15)。接着,参考图3,现在说明在存储器访问控制电路100向存 储器装置191发出读取命令然后再向存储器装置192发出写入命 令的情况下的操作(操作例子2)。图。注意,图3中示出的波形的采样点与图2中的相同。通过存储器访问接口 180将意为下一命令是读取命令的信 息设置到访问方向緩冲器121 。当设置了访问方向緩沖器121时, 由于在前访问方向緩冲器lll为空,因而命令发出间隔选择电路 151通知命令发出定时控制电路152在可能进行命令发出之前存 在0个周期。另 一方面,命令发出定时控制电路152接收表示在命令发出 之前存在O个时钟周期的信息,并且在O个时钟周期之后给出命 令发出许可。命令发出控制电路150断言片选信号101并且发出 读取命令(T3)。命令发出控制电路15 0发出命令,并且同时将访问方向緩冲 器121的表示读取的信息设置到在前访问方向緩冲器111。同时, 存储器访问接口 180将表示下一命令是写入命令的信息设置到 访问方向緩冲器121。在0.5个时钟周期的延迟之后,存储器装置191接收到由命 令发出控制电路150发出的读取命令(A4)。由于接收到的命令是 读取命令,因此存储器装置191在经过了 3个时钟周期的读取等 待时间之后驱动数据信号106 (A7)。在0.5个时钟周期的延迟之 后,数据接收控制电路17 0接收到由存储器装置19 2驱动的数据 (T8 ~ TIO)。由于在前命令是读取命令且下一命令是写入命令,因而命 令发出间隔选择电路151选择命令间隔緩冲器131c。因此通知命 令发出定时控制电路152在可能进行命令发出之前存在7个时钟 周期。命令发出定时控制电路152接收表示在命令发出之前存在 7个时钟周期的信息,并且在从发出在前命令(T3)起的7个时钟 周期之后给出命令发出许可。命令发出控制电路150断言片选信号102并且发出写入命令 (TIO)。命令发出控制电路150发出命令,并且同时将访问方向緩冲器121的信息设置到在前访问方向緩冲器111 。在1.5个时钟周期的延迟之后,存储器装置192接收到由命 令发出控制电^各150发出的写入命令(Bll)。在从命令发出控制 电路150发出了写入命令的定时起经过了由等待时间信息保持 电路140保持的2个周期的写入等待时间之后,数据发出控制电 路160驱动数据信号106 (T13)。在1.5个时钟周期的延迟之后, 存储器装置192接收到由数据发出控制电路160发出的数据 (B13 ~ B15)。仅说明了在读取之后再写入的情况下的操作,但写入之后 再写入、写入之后再读取以及读取之后再读取的情况相同。换 句话说,通过命令发出间隔选择电路151从命令间隔緩沖器 131a~ 131d中选择相关的信息,并且命令发出定时控制电路152 根据所选择的信息来给出发出许可。由于命令发出控制电路150 发出命令,因此在数据信号106的驱动没有冲突的情况下进行数 据传送。然而,如果基于在前命令的读取/写入信息和下一命令的读 取/写入信息来控制命令发出间隔,则需要等待命令发出间隔与 对具有最大访问等待时间的存储器装置的访问相匹配。可能出现这种情况即使当访问具有短的访问等待时间的 存储器装置时,由于命令发出间隔的过多间隙而使得无法驱动 数据信号。例如,在上述相关技术例子中,在图3中,即使将由 存储器访问控制电路10 0发出的写入命令提前两个时钟周期(T 8) 发出,也可以在数据信号106的驱动不冲突的情况下进行存储器 访问。因此,出现了在可能进行数据传送的周期期间浪费了不必 要的传送间隔的问题,从而降低了存储器总线的使用效率。发明内容本发明的目的在于高效访问存储器。本发明的另一目的在于提供一种存储器访问控制装置,用 于控制到具有不同的等待时间的多个存储器装置的访问,所述存储器访问控制装置包括访问部件,用于访问所述多个存储 器装置;以及控制部件,用于在通过所述访问部件先进行第一 访问再进行第二访问的情况下,根据在所述第 一访问中访问的 存储器装置和在所述第二访问中访问的存储器装置来控制由所 述访问部件进行所述第二访问的定时。本发明的另一目的在于提供一种命令发出装置,用于向具 有不同的等待时间的多个存储器装置发出命令,所述命令发出 装置包括发出部件,用于向所述多个存储器装置之一发出命 令;以及控制部件,用于在所述发出部件先发出第一命令再发 出第二命令的情况下,根据接收所述第 一命令的存储器装置和接收所述第二命令的存储器装置来控制由所述发出部件发出所 述第二命令的定时。本发明的又一 目的在于提供一种存储器访问控制方法,用 于控制到具有不同的等待时间的多个存储器装置的访问,所述 存储器访问控制方法包括访问步骤,用于访问所述多个存储 器装置,以及控制步骤,用于在所述访问步骤中进行第一访问 和第二访问的情况下,根据在所述第 一访问中访问的存储器装 置和在所述第二访问中访问的存储器装置来控制在所述访问步 骤中进行所述第二访问的定时。本发明的又一目的在于提供一种命令发出方法,用于向具 有不同的等待时间的多个存储器装置发出命令,所述命令发出 方法包括发出步骤,用于向所述多个存储器装置之一发出命 令;以及控制步骤,用于在先发出第一命令再发出第二命令的情况下,根据接收所述第一命令的存储器装置和接收所述第二 命令的存储器装置来控制发出所述第二命令的定时。根据以下(参考附图)对典型实施例的说明,本发明的其它 特征将变得明显。


图1是示出传统例子中的存储器访问控制电路的 一 个例子的框图;图2是示出在传统例子中发出命令时的操作例子1的时序图;图;图4是示出根据第 一 实施例的存储器访问控制电路的 一 个 例子的框图;图5是示出使用根据第 一 实施例的命令发出计算方法计算 出的命令发出间隔的图;图6是示出根据第 一 实施例的当发出命令时的操作例子l的时序图;图7是示出根据第 一 实施例的当发出命令时的操作例子2的 时序图;图8是示出根据第二实施例的存储器访问控制电路的 一 个 例子的框图。
具体实施方式
参考附图,下面详细说明用于执行本发明的优选实施例。 第一实施例图4是示出根据第 一 实施例的存储器访问控制电路的 一 个例子的框图。如在图4中所示,两个存储器装置591和592连接到 存储器访问控制装置5 0 0 ,并且存储器访问控制装置5 0 0控制对 存储器装置591和592的访问。在第一实施例中,同样使用DDR型存储器装置作为存储器 装置。由于在存储器访问控制装置500与存储器装置591和592 之间的信号501到506与使用图l说明的信号101到106相同,因此 省略对这些信号的il明。在存储器访问控制装置500中,510是在前命令信息保持电 路,并且保持与紧接之前发出的命令有关的信息。在前命令信 息保持电路510内部设置有在前访问方向緩冲器511和在前访问 装置緩冲器512,其中,在前访问方向緩沖器511用于保持紧接 之前发出的命令的读取或写入方向,在前访问装置緩沖器512 用于保持与紧接之前发出的命令所访问的装置有关的信息。520是命令信息保持电路,并且保持与接下来要发出的命令 有关的信息。命令信息保持电路5 2 0内部设置有访问方向緩冲器 521和访问装置緩冲器522,其中,访问方向緩冲器521用于保持 接下来要发出的命令的读取或写入方向,访问装置緩沖器522 用于保持与接下来要发出的命令所访问的装置有关的信息。5 3 0是命令间隔信息保持电路,并且保持与从发出在前命令 到发出下一命令的最小命令发出间隔有关的信息。命令间隔信 息保持电路530内部设置有命令间隔緩沖器531a 531N,并且 保持在前命令的访问装置和读取及写入方向以及下一命令的访 问装置和读取及写入方向的所有组合中的最小命令发出间隔。 在图4示出的例子中,由于两个存储器装置591和592连接到存储 器访问控制装置500,因此保持了 16组命令间隔。通过2x(装置 数)x 2 x (装置数)得出组合的总数N 。5 4 0是等待时间信息保持电路,并且保持与连接到存储器访问控制装置500的存储器装置的设置相对应的存储器装置的读 取等待时间和写入等待时间。550是命令发出控制电路,并且控制对存储器装置591和592 的命令的发出。命令发出控制电路550可以由CPU(MPU)、 ROM 和外围电路等构成。命令发出间隔选择电路551根据保持在在前 命令信息保持电路510和命令信息保持电路520中的信息,从命 令间隔緩冲器531a 531N中选择相关的命令间隔。接着,命令 发出定时控制电路552将用于使下一命令发出的定时延迟由命 令发出间隔选择电路551所选择的命令间隔。560是数据发出控制电路,并在自从命令发出控制电路550 发出了命令起经过了与保持在等待时间信息保持电路5 4 0中的 写入等待时间等同的时间段之后,驱动数据信号506。 570是数 据接收控制电路,并且接收从存储器装置591和592读取的数据。580是存储器访问接口 ,并且接收来自外部电路的存储器访 问请求,向命令发出控制电路5 5 0发送命令并将读取或写入信息 i殳置到访问方向緩冲器5 21 。下面说明用于计算要设置到命令间隔緩冲器531a 531N 中的命令发出间隔的方法。计算方法如下面在(1)~ (4)中列出。(1) 发出写入命令之后再发出写入命令命令发出间隔=数据传送长度/2+最小数据间隔(2) 发出写入命令之后再发出读取命令命令发出间隔=在前访问装置写入等待时间+数据传送长 度/2+在前访问装置布线延迟-下 一访问装置读取等待时间-下 一访问装置布线延迟(3) 发出读取命令之后再发出写入命令命令发出间隔-在前访问装置布线延迟x2+在前访问装置 读取等待时间+数据传送长度/2+最小数据间隔-下 一访问装置写入等待时间(4)发出读取命令之后再发出读取命令命令发出间隔=在前访问装置布线延迟><2+数据传送长度 /2+最小数据间隔-下 一访问装置布线延迟x2如果在不满足使用上述计算方法计算出的命令发出间隔的 情况下发出命令,则在存储器访问控制装置5 0 0与存储器装置 591和592之间的数据信号的驱动之间存在发生冲突的风险。注意,在存储器访问控制装置500与存储器装置591和592 之间的读取和写入访问均使用4拍传送。假定存储器访问控制装置500与存储器装置591之间的布线 延迟为0.5个时钟周期,并且假定存储器访问控制装置500与存 储器装置592之间的布线延迟为1.5个时钟周期。假定保持在等 待时间信息保持电路5 4 0中的读取等待时间为3个时钟周期,并 且假定保持在等待时间信息保持电路5 4 0中的写入等待时间为2 个时钟周期。如上所述,基于访问长度、布线延迟和等待时间来计算最 小命令间隔值,使得通过存储器访问控制装置500以及存储器装 置591和592对数据信号506的驱动不会冲突,并且将这些最小命 令间隔值设置到命令间隔緩冲器531a 531N。这里,由于仅处理了4拍的存储器访问,因此"数据传送长 度/2,,为2个时钟周期。此外,"最小数据间隔"是用于防止连续 访问的数据在数据信号中邻接的间隔,并且该"最小数据间隔,, 通常为一个时钟周期。图5是示出使用根据第 一 实施例的命令发出计算方法计算 出的命令发出间隔的图。换句话说,将图5中示出的间隔(时钟 周期)设置到命令间隔緩沖器531a 531p(N=16,所以所添加的 字母是p),并且需要等待大于或等于这些间隔的时钟周期。现在参考图6说明在存储器访问控制装置500向存储器装置 592发出读取命令然后再向存储器装置591发出写入命令的情况 下的操作(操作例子l)。图6是示出根据第 一 实施例的当发出命令时的操作例子1的 时序图。注意,标记为存储器访问控制装置500的波形是通过釆 样存储器访问控制装置500的信号管脚所获得的波形。CLK、 CSO、 CS1和CMD是存储器访问控制装置500的输出信号,并且 D Q S和D Q是存储器访问控制装置5 0 0的输入/输出信号。标记为存储器装置591和存储器装置592的波形是通过采样 存储器装置的信号管脚所获得的波形。CLK—0、 CS—O和CMDJ) 以及CLK—1、 CS—1和CMD—l是存储器装置的输入信号,并且 DQS—0和DQJ)以及DQSJ和DQ—l是存储器装置的输入/输出信号。通过存储器访问接口 580将意为下一命令是读取命令的信 息设置到访问方向緩冲器5 21中。当设置了访问方向緩冲器5 21 时,由于在前访问方向緩冲器511为空,因此命令发出间隔选择 电路551通知命令发出定时控制电路552在可能进行命令发出之 前存在O个周期。另 一方面,命令发出定时控制电路552接收表示在命令发出 之前存在O个时钟周期的信息,并且在O个时钟周期之后给出命 令发出许可。命令发出控制电路550断言片选信号502并且发出 读取命令(T3)。命令发出控制电路550发出命令,并同时将访问方向緩冲器 521的表示读取的信息设置到在前访问方向緩冲器511中。同时, 存储器访问接口 580将表示下一命令是写入命令的信息设置到 访问方向緩沖器521。在1.5个时钟周期的延迟之后,存储器装置592接收到由命令发出控制电路5 5 0发出的读取命令(B 4)。由于接收到的命令是 读取命令,因此存储器装置592在经过了 3个时钟周期的读取等 待时间之后驱动数据信号506 (B7)。在1.5个时钟周期的延迟之 后,数据接收控制电路570接收到由存储器装置592驱动的数据 (T10~ T12)。由于在前命令是读取、在前访问装置是存储器装置592、下 一命令是写入并且下一访问装置是存储器装置591,因而命令发 出间隔选择电路551选择命令间隔緩沖器531m。因此,通知命 令发出定时控制电路552在可能进行命令发出之前存在7个时钟周期。另 一方面,命令发出定时控制电路552接收表示在命令发出 之前存在7个周期的信息,并且在7个时钟周期之后给出命令发 出许可。命令发出控制电路550断言片选信号501并且发出写入命令 (TIO)。命令发出控制电路550发出命令,并且同时将访问方向 緩沖器5 21的信息设置到在前访问方向緩冲器511 。在0.5个时钟周期的延迟之后,存储器装置591接收到由命 令发出控制电路550发出的写入命令(A11)。在从命令发出控制 电路550发出了写入命令的定时起经过了由等待时间信息保持 电路540保持的2个周期的写入等待时间之后,数据发出控制电 路560驱动数据信号506 (T13)。在0.5个时钟周期的延迟之后, 存储器装置591接收到由数据发出控制电路560发出的数据 (A13 ~ A15)。接着,参考图7,现在说明在存储器访问控制装置500向存 储器装置591发出读取命令然后再向存储器装置592发出写入命 令的情况下的操作(操作例子2)。图7是示出根据第 一 实施例的当发出命令时的操作例子2的时序图。注意,图7中示出的波形的采样点与图6中示出的相同。 通过存储器访问接口 580将意为下一命令是读取命令的信 息设置到访问方向緩冲器521中。当设置了访问方向緩冲器521 时,由于在前访问方向緩冲器511为空,因此命令发出间隔选择 电路551通知命令发出定时控制电路522在可能进行命令发出之 前存在0个周期。另 一方面,命令发出定时控制电路552接收表示在命令发出 之前存在O个时钟周期的信息,并且在O个时钟周期之后给出命 令发出许可。命令发出控制电路550断言片选信号501并且发出 读取命令(T3)。命令发出控制电路550发出命令,并且同时将访问方向緩沖 器521的表示读取的信息设置到在前访问方向缓冲器511。同时, 存储器访问接口 5 8 0将表示下 一 命令是写入命令的信息设置到 访问方向緩冲器521。在0.5个时钟周期的延迟之后,存储器装置591接收到由命 令发出控制电路5 5 0发出的读取命令(A 4)。由于接收到的命令是 读取命令,因而存储器装置591在经过了 3个时钟周期的读取等 待时间之后驱动数据信号506 (A7)。在0.5个时钟周期的延迟之 后,数据接收控制电路570接收到由存储器装置592驱动的数据 (T8 ~ TIO)。由于在前命令是读取、在前访问装置是存储器装置591、下 一命令是写入且下一访问装置是存储器装置592,因而命令发出 间隔选择电路551选择命令间隔緩冲器531g。因此,通知命令发 出定时控制电路552在可能进行命令发出之前存在5个时钟周 期。命令发出定时控制电路552接收表示在命令发出之前存在5 个周期的信息,并且在5个时钟周期之后给出命令发出许可。命令发出控制电路550断言片选信号502并且发出写入命令 (T8)。命令发出控制电路550发出命令,并且同时将访问方向緩 沖器521的信息设置到在前访问方向緩冲器511。在1.5个时钟周期的延迟之后,存储器装置592接收到由命 令发出控制电路550发出的写入命令(B9)。在从命令发出控制电 路550发出了写入命令的定时起经过了由等待时间信息保持电 路540保持的2个周期的写入等待时间之后,数据发出控制电路 560驱动数据信号506 (Tll)。在1.5个时钟周期的延迟之后,存 储器装置592接收到由数据发出控制电路560发出的数据(Bll ~ B13)。仅说明了在读取之后再写入的情况下的操作,但是写入之 后再写入、写入之后再读取以及读取之后再读取的情况相同。 换句话说,命令发出间隔选择电路551从命令间隔緩冲器531a 531N中选择相关的信息,并且命令发出定时控制电路522根据 所选择的信息给出发出许可。然后,命令发出控制电路"0发出 命令,因此可以在数据信号5 0 6的驱动不沖突的情况下在可能的 最短时间内驱动数据信号506。在第一实施例中,说明了存储器装置的访问等待时间由于 不同的布线延迟而有所差异的情况的操作。然而,通过以与存 储器装置的等待时间不同的情况下相同的方式设置命令发出间 隔,可以在数据信号的驱动不冲突的情况下在可能的最短时间 内驱动数据信号。在第一实施例中,示出了连接两个存储器装置的情况,但 本发明并不仅局限于此,并且可以应用于连接三个或更多个装 置的情况。利用第一实施例,可以根据如下信息调整命令发出间隔 关于在前命令是用于读取还是写入的信息、关于哪个访问装置接收到在前命令的信息、关于下一命令是用于读取还是写入的 信息以及关于哪个访问装置将接收下 一 命令的信息。由于该原 因,在可能进行数据传送的周期期间,不存在浪费的传送间隔。 换句话说,可以在存储器访问控制电路驱动数据信号的定 时与存储器装置驱动数据信号的定时不冲突的情况下更高效地 使用存储器总线。 第二实施例接着,参考附图,给出对根据本发明的第二实施例的详细 说明。在第一实施例中,将最小命令间隔值保持在命令间隔緩沖器531a 531N中,但在第二实施例中,在发出下一命令时计 算这些最小命令间隔值。图8是示出根据第二实施例的存储器访问控制电路的 一 个 例子的框图。如图8所示,存储器访问控制装置900连接到存储 器装置991和992,并且控制对存储器装置991和992的访问。在第二实施例中,同样使用DDR型存储器装置作为存储器 装置。由于在存储器访问控制装置900与存储器装置991和992 之间的信号901到906与使用图4说明的信号501到506相同,因此 省略对这些信号的说明。在存储器访问控制装置900中,910是在前命令信息保持电 路,并且保持与紧接之前发出的命令有关的信息。在前命令信 息保持电路910内部设置有在前访问方向緩冲器911和在前访问 装置緩冲器912,其中,在前访问方向緩冲器911用于保持紧接 之前发出的命令的读取或写入方向,在前访问装置緩冲器912 用于保持与由紧接之前发出的命令所访问的装置有关的信息。920是命令信息保持电路,并且保持与接下来要发出的命令 有关的信息。命令信息保持电路92 0内部设置有访问方向緩冲器 921和访问装置緩冲器922,其中,访问方向緩冲器921用于保持接下来要发出的命令的读取或写入方向,访问装置緩冲器922 用于保持与由接下来要发出的命令所访问的装置有关的信息。930是布线延迟信息保持电路,并且保持所有存储器装置的 布线延迟信息。该布线延迟信息保持电路930内部设置有布线延 迟緩冲器931a 931N,在这些布线延迟緩沖器931a ~ 931N中保 持了连接到存储器访问控制装置9 0 0的所有存储器装置的布线 延迟量。在图8的例子中,两个存储器装置991和992连接到存储 器访问控制装置9 0 0,该存储器访问控制装置9 0 0设置有分别保 持两个布线延迟量的布线延迟緩冲器931a和931b。940是等待时间信息保持电路,并且保持与连接到存储器访 问控制装置900的存储器装置的设置相对应的存储器装置的读 取等待时间和写入等待时间。941是输出到命令发出控制电路 950的等待时间信息。950是命令发出控制电路,并且控制对存储器装置991和992的命令的发出。命令发出控制电路950可以由CPU(MPU)、 ROM 和外围电路等构成。命令发出间隔计算电路951基于等待时间信 息941以及保持在在前命令信息保持电路910、命令信息保持电 路920和布线延迟信息保持电路930中的信息来计算在可以发出 下一命令之前的周期数。命令发出定时控制电路952将用于发出 下一命令的定时延迟由命令发出间隔计算电路951计算出的命 令间隔。960是数据发出控制电路,并且在自从命令发出控制电路 950发出了命令起经过了与保持在等待时间信息保持电路940中 的写入等待时间等同的时间段之后,驱动数据信号906。 970是 数据接收控制电路,并且接收从存储器装置991和992读取的数 据。980是存储器访问接口 ,并且接收来自外部电路的存储器访问请求,向命令发出控制电路950发送命令并将读取或写入信息 设置到访问方向緩冲器921。通过命令发出间隔计算电路951对命令发出间隔的计算方 法如下面在(1)到(4)中所示。(1) 发出写入命令之后再发出写入命令命令发出间隔=数据传送长度/2+最小数据间隔(2) 发出写入命令之后再发出读取命令命令发出间隔=在前访问装置写入等待时间+数据传送长 度/2+在前访问装置布线延迟-下 一访问装置读取等待时间-下 一访问装置布线延迟(3) 发出读取命令之后再发出写入命令命令发出间隔=在前访问装置布线延迟><2+在前访问装置 读取等待时间+数据传送长度/ 2+最小数据间隔-下 一 访问装置 写入等待时间(4) 发出读取命令之后再发出读取命令命令发出间隔=在前访问装置布线延迟><2+数据传送长度 /2+最小数据间隔-下 一访问装置布线延迟x2如果在不满足使用上述计算方法计算出的命令发出间隔的 情况下发出命令,则在存储器访问控制装置900与存储器装置 9 91和9 92之间的数据信号的驱动之间存在发生冲突的风险。注意,存储器访问控制装置900与存储器装置991和992之间 的读取和写入访问均-使用4拍传送。假定存储器访问控制装置9 00与存储器装置9 91之间的布线 延迟为0.5个时钟周期,并且假定存储器访问控制装置9 0 0与存 储器装置992之间的布线延迟为l个时钟周期。假定保持在等待 时间信息保持电路940中的读取等待时间为3个时钟周期,并且 假定保持在等待时间信息保持电路94 0中的写入等待时间为2个时钟周期。将存储器装置991和存储器装置992的布线延迟设置到布线 延迟緩冲器931a 931N(N是装置数)。现在参考第 一 实施例所参考的图6 ,说明在存储器访问控制 装置900向存储器装置992发出读取命令然后再向存储器装置 991发出写入命令的情况下的操作(操作例子1)。通过存储器访问接口 980将意为下 一命令是读取命令的信 息设置到访问方向緩冲器921 。当设置了访问方向緩冲器921时, 由于在前访问方向緩冲器911为空,因此命令发出间隔计算电路 951通知命令发出定时控制电路952在可能进行命令发出之前存 在O个时钟周期。另 一方面,命令发出定时控制电路952接收表示在命令发出 之前存在O个时钟周期的信息,并且在O个时钟周期之后给出命 令发出许可。命令发出控制电路950断言片选信号902并且发出 读取命令(T3)。命令发出控制电路950发出命令,并且同时将访问方向緩冲 器921的表示读取的信息设置到在前访问方向緩冲器911。同时, 存储器访问接口 980将表示下一命令是写入命令的信息设置到 访问方向緩沖器921。在1.5个时钟周期的延迟之后,存储器装置9 92接收到由命 令发出控制电路950发出的读取命令(B4)。由于接收到的命令是 读取命令,因此存储器装置992在经过了 3个时钟周期的读取等 待时间之后驱动数据信号906 (B7)。在1.5个时钟周期的延迟之 后,数据接收控制电路970接收到由存储器装置992驱动的数据 (T10 ~ T12)。命令发出间隔计算电路951使用上述命令发出间隔计算方 法基于下面的信息计算出在可以发出下 一命令之前存在7个时钟周期,并且通知命令发出定时控制电路952。-在前命令是读取命令-在前访问装置是存储器装置992 -下一命令是写入命令-下一访问装置是存储器装置991 -存储器装置991的布线延迟为0.5个时钟周期 -存储器装置992的布线延迟为1.5个时钟周期 -存储器装置的读取等待时间为3个时钟周期 -存储器装置的写入等待时间为2个时钟周期 另 一方面,命令发出定时控制电路952接收表示在命令发出之前存在7个时钟周期的信息,并且在7个时钟周期之后给出命令发出许可。命令发出控制电路950断言片选信号901并且发出写入命令 (TIO)。命令发出控制电路950发出命令,并且同时将访问方向 緩沖器9 21的信息设置到在前访问方向緩冲器911 。在0.5个时钟周期的延迟之后,存储器装置991接收到由命 令发出控制电路950发出的写入命令(All)。在从命令发出控制 电路950发出了写入命令的定时起经过了由等待时间信息保持 电路940保持的2个周期的写入等待时间之后,数据发出控制电 路960驱动数据信号906 (T13)。在0.5个时钟周期的延迟之后, 存储器装置991接收到由数据发出控制电路960发出的数据 (A13 ~ A15)。现在参考由第 一 实施例参考的图7,说明在存储器访问控制 装置900向存储器装置991发出读取命令之后再向存储器装置 992发出写入命令的情况下的操作(操作例子2)。通过存储器访问接口 980将意为下一命令是读取命令的信 息设置到访问方向緩冲器9 21 。当设置了访问方向緩沖器9 21时,由于在前访问方向緩沖器911为空,因此命令发出间隔计算电路 951通知命令发出定时控制电路952在可能进行命令发出之前存 在0个时钟周期。另 一方面,命令发出定时控制电路952接收表示在命令发出 之前存在O个时钟周期的信息,并且在0个时钟周期之后给出命 令发出许可。命令发出控制电路950断言片选信号902并且发出 读取命令(T3)。命令发出控制电路950发出命令,并且同时将访问方向緩冲 器921的表示读取的信息设置到在前访问方向緩冲器911。同时, 存储器访问接口 9 8 0将表示下 一 命令是写入命令的信息设置到 访问方向緩冲器921。在0.5个时钟周期的延迟之后,存储器装置991接收到由命 令发出控制电路950发出的读取命令(A4)。由于接收到的命令是 读取命令,因此存储器装置991在经过了 3个时钟周期的读取等 待时间之后驱动数据信号906 (A7)。在0.5个时钟周期的延迟之 后,数据接收控制电路970接收到由存储器装置991驱动的数据 (T8 ~ TIO)。命令发出间隔计算电路951使用上述命令发出间隔计算方 法基于下面的信息计算出在可以发出下一命令之前存在5个时 钟周期,并且通知命令发出定时控制电路952。-在前命令是读取命令-在前访问装置是存储器装置991-下一命令是写入命令-下一访问装置是存储器装置992 -存储器装置991的布线延迟为0.5个时钟周期 -存储器装置992的布线延迟为1.5个时钟周期 -存储器装置的读取等待时间为3个时钟周期-存储器装置的写入等待时间为2个时钟周期 另 一方面,命令发出定时控制电路952接收表示在命令发出 之前存在5个时钟周期的信息,并且在5个时钟周期之后给出命 令发出许可。命令发出控制电路950断言片选信号901并且发出写入命令 (T8)。命令发出控制电路950发出命令,并且同时将访问方向緩 冲器9 21的信息设置到在前访问方向緩冲器911 。在1.5个时钟周期的延迟之后,存储器装置992接收到由命 令发出控制电路950发出的写入命令(B9)。在从命令发出控制电 路950发出了写入命令的定时起经过了由等待时间信息保持电 路940保持的2个周期的写入等待时间之后,数据发出控制电路 960驱动数据信号906 (Tll)。在1.5个时钟周期的延迟之后,存 储器装置992接收到由数据发出控制电路960发出的数据(Bll ~B13)。仅说明了在读取之后再写入的情况下的操作,但是写入之 后再写入、写入之后再读取以及读取之后再读取的情况相同。 换句话说,命令发出定时控制电路952根据使用上述命令发出间 隔计算方法由命令发出间隔计算电路951计算出的命令发出间 隔来给出发出许可。然后,命令发出控制电路950发出命令,因 此可以在数据信号9 0 6的驱动不冲突的情况下在可能的最短时 间内驱动数据信号906。在第二实施例中,说明了存储器装置的访问等待时间由于 不同的布线延迟而有所差异的情况的操作。然而,通过以与存 储器装置的等待时间不同的情况下相同的方式来计算命令发出 间隔,可以在数据信号的驱动不相沖突的情况下在可能的最短 时间内驱动数据信号。在第二实施例中,示出了连接两个存储器装置的情况,但是本发明并不^f义局限于此,并且可以应用于连4妄三个或更多个 装置的情况。注意,本发明可应用于由多个装置(例如,主计算机、接口 装置、读取器和打印机等)构成的系统,或者应用于由一个装置 (例如,复印才几、传真机等)组成的设备。此外,向系统或装置提供存储了用于实现上述实施例的功 能的软件的程序代码的存储介质,并且系统或装置的计算机(CPU或MPU)读取并执行该程序代码。以该方式同样可以实现 本发明的目的。在该情况下,从计算机可读记录介质读取的程序代码执行 上述实施例的功能,并且存储了程序代码的记录介质构成了本 发明。可以使用如下介质作为用于提供程序代码的存储介质软 盘、硬盘、光盘、电磁盘、CD-ROM、 CD-R、磁带、非易失性 存储卡和ROM等。不仅通过执行由计算机读取的程序代码实现了上述实施例 的功能,而且还包括了下面的情况。换句话说,运行在计算机 上的操作系统(OS)基于程序代码中的指令进行全部或部分实际 处理,并且通过这些处理实现上述实施例的功能。此外,将从存储介质读取的程序代码读入到为插入到计算 机中的功能增强板或连接到计算机的功能增强单元所设置的存 储器中。这还包括如下情况为功能增强板或功能增强单元设 置的CPU等基于程序代码的指令进行全部或部分实际处理,并 且通过这些处理实现上述实施例的功能。尽管已经参考典型实施例说明了本发明,但是应该理解, 本发明并不局限于所公开的典型实施例。所附权利要求书的范 围符合最宽的解释,以包含所有这类修改、等同结构和功能。
权利要求
1.一种存储器访问控制装置,用于控制对具有不同等待时间的多个存储器装置的访问,所述存储器访问控制装置包括访问部件,用于访问所述多个存储器装置;以及控制部件,用于在通过所述访问部件先进行第一访问再进行第二访问的情况下,根据在所述第一访问中访问的存储器装置和在所述第二访问中访问的存储器装置来控制由所述访问部件进行所述第二访问的定时。
2. 根据权利要求l所述的存储器访问控制装置,其特征在 于,所述控制部件根据在所述第一访问中访问的存储器装置和 在所述第二访问中访问的存储器装置以及所述第一访问和所述 第二访问分别是读取访问还是写入访问,来控制由所述访问部件进行所述第二访问的定时。
3. 根据权利要求l所述的存储器访问控制装置,其特征在 于,所述控制部件根据在所述第一访问中访问的存储器装置的 等待时间和在所述第二访问中访问的存储器装置的等待时间, 来控制由所述访问部件进行所述第二访问的定时。
4. 根据权利要求l所述的存储器访问控制装置,其特征在 于,所述控制部件根据在所述第一访问中访问的存储器装置的 布线延迟和在所述第二访问中访问的存储器装置的布线延迟, 来控制由所述访问部件进行所述第二访问的定时。
5. 根据权利要求l所述的存储器访问控制装置,其特征在 于,所述访问部件利用通用数据信号线来连接所述多个存储器 装置。
6. —种命令发出装置,用于向具有不同等待时间的多个存 储器装置发出命令,所述命令发出装置包括发出部件,用于向所述多个存储器装置的其中一个发出命 令;以及控制部件,用于在所述发出部件先发出第一命令再发出第 二命令的情况下,根据接收所述第一命令的存储器装置和接收 所述第二命令的存储器装置来控制由所述发出部件发出所述第 二命令的定时。
7. 根据权利要求6所述的命令发出装置,其特征在于,所 迷控制部件根据接收所述第一命令的存储器装置和接收所述第 二命令的存储器装置以及所述第一命令和所述第二命令分别是 读取命令还是写入命令,来控制由所述发出部件发出所述第二 命令的定时。
8. 根据权利要求6所述的命令发出装置,其特征在于,所 迷控制部件根据接收所述第 一命令的存储器装置的等待时间和 接收所述第二命令的存储器装置的等待时间,来控制由所述发出部件发出所述第二命令的定时。
9. 根据权利要求6所述的命令发出装置,其特征在于,所 述控制部件根据接收所述第一命令的存储器装置的布线延迟和 接收所述第二命令的存储器装置的布线延迟,来控制由所述发 出部件发出所述第二命令的定时。
10. 根据权利要求6所述的命令发出装置,其特征在于,所 述发出部件利用通用数据信号线来连接所述多个存储器装置。
11. 一种存储器访问控制方法,用于控制对具有不同等待 时间的多个存储器装置的访问,所述存储器访问控制方法包括访问步骤,用于访问所述多个存储器装置;以及 控制步骤,用于在所述访问步骤中先进行第一访问再进行 第二访问的情况下,根据在所述第 一 访问中访问的存储器装置 和在所述第二访问中访问的存储器装置来控制在所述访问步骤 中进行所述第二访问的定时。
12. 根据权利要求ll所述的存储器访问控制方法,其特征在于,在所述控制步骤中,根据在所述第一访问中访问的存储 器装置和在所述第二访问中访问的存储器装置以及所述第一访 问和所述第二访问分别是读取访问还是写入访问,来控制进行 所述第二访问的定时。
13. 根据权利要求ll所述的存储器访问控制方法,其特征 在于,在所述控制步骤中,根据在所述第一访问中访问的存储 器装置的等待时间和在所述第二访问中访问的存储器装置的等 待时间来控制进行所述第二访问的定时。
14. 根据权利要求ll所述的存储器访问控制方法,其特征 在于,在所述控制步骤中,根据在所述第一访问中访问的存储 器装置的布线延迟和在所述第二访问中访问的存储器装置的布 线延迟来控制进行所述第二访问的定时。
15. —种命令发出方法,用于向具有不同等待时间的多个 存储器装置发出命令,所述命令发出方法包括以下步骤发出步骤,用于向所述多个存储器装置的其中一个发出命 令;以及控制步骤,用于在先发出第一命令再发出第二命令的情况 下,根据接收所述第一命令的存储器装置和接收所述第二命令 的存储器装置来控制发出所述第二命令的定时。
16. 根据权利要求15所述的命令发出方法,其特征在于, 在所述控制步骤中,根据接收所述第一命令的存储器装置和接 收所述第二命令的存储器装置以及所述第一命令和所述第二命 令分别是读取命令还是写入命令,来控制发出所述第二命令的 定时。
17. 根据权利要求15所述的命令发出方法,其特征在于, 在所述控制步骤中,根据接收所述第一命令的存储器装置的等 待时间和接收所述第二命令的存储器装置的等待时间来控制发出所述第二命令的定时。
18.根据权利要求15所述的命令发出方法,其特征在于, 在所述控制步骤中,根据接收所述第一命令的存储器装置的布 线延迟和接收所述第二命令的存储器装置的布线延迟来控制发 出所述第二命令的定时。
全文摘要
本发明涉及一种存储器访问控制装置、命令发出装置和方法。该存储器访问控制装置用于控制对具有不同等待时间的多个存储器装置的访问,所述存储器访问控制装置在进行第一访问之后再进行第二访问时,根据在第一访问中访问的存储器装置以及在第二访问中访问的存储器装置来控制进行第二访问的定时。
文档编号G06F3/06GK101403958SQ20081014886
公开日2009年4月8日 申请日期2008年9月27日 优先权日2007年10月3日
发明者落合涉 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1