CN1987824A - 存储器控制电路及存储器控制方法 - Google Patents
存储器控制电路及存储器控制方法 Download PDFInfo
- Publication number
- CN1987824A CN1987824A CNA200610163714XA CN200610163714A CN1987824A CN 1987824 A CN1987824 A CN 1987824A CN A200610163714X A CNA200610163714X A CN A200610163714XA CN 200610163714 A CN200610163714 A CN 200610163714A CN 1987824 A CN1987824 A CN 1987824A
- Authority
- CN
- China
- Prior art keywords
- data
- storer
- output
- address
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 31
- 238000000034 method Methods 0.000 title claims description 17
- 238000005192 partition Methods 0.000 claims description 24
- 230000008676 import Effects 0.000 description 19
- 239000012141 concentrate Substances 0.000 description 14
- 230000015572 biosynthetic process Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 238000012856 packing Methods 0.000 description 4
- 230000008707 rearrangement Effects 0.000 description 3
- 241001269238 Data Species 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001046 rapid expansion of supercritical solution Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Memory System (AREA)
Abstract
一种存储器控制电路,控制存储最大L位数据的k位宽的m个存储器(第1~第m存储器),具备:地址输入电路,根据地址低j位确定存储数据最初k位的存储器(第n存储器),将地址高A-j位输入到第n~第m存储器,将该地址加1后的地址输入到第1~第n-1存储器;数据输入电路,按第n~第m存储器、第1~第n-1存储器的顺序,输入按每k位分割的分割数据;数据输出电路,按第n~第m存储器、第1~第n-1存储器的顺序,从与数据宽对应数量的存储器读出所述分割数据;和存储器选择电路,按第n~第m存储器、第1~第n-1存储器的顺序,使D/k个存储器为可读写的状态。由此不导致使用效率降低及处理负荷增大,可读写数据宽不同的数据。
Description
技术领域
本发明涉及存储器控制电路及存储器控制方法。
背景技术
图21是表示一般的存储器的构成的图。存储器50可以进行由A位地址指定的最大为L位的数据的读写。在这样的存储器50中,作为存储图22所示那样的数据宽不同的各种各样的数据的方法,认为有两个方法。
如图23所示,第一个方法是将各个数据存储于一个地址的方法(例如,专利文献1)。然后如图24所示,第二个方法是尽可能多地将数据宽不同的多个数据存储于存储器50的方法。
专利文献1:特开平6-266614号公报
但是,若使用图23所示的方法,则当存储了数据宽小于L位的数据时,产生未使用的数据区域(无效数据区域),存储器的使用效率降低。另外,若使用图24所示的方法,虽然不产生无效数据区域,提高了存储器50的使用效率,但在将数据写入存储器50之前或从存储器50读出数据之后,需要进行数据的打包(packing)或展开(unpacking)的处理,从而增大了处理负荷。
发明内容
本发明正是鉴于上述问题而实现的,其目的在于提供一种不会导致存储器的使用效率降低及处理负荷增大,并可以读写数据宽不同的各种各样的数据的存储器控制电路及存储器控制方法。
为了达到上述目的,本发明的存储器控制电路,其对k位宽的m(=L/k)个存储器(第1~第m存储器)进行控制,这些存储器对数据宽(D位)为k位的整数倍且最大为L位的数据进行存储,该存储器控制电路具备:地址输入电路,根据表示所述数据的存储目的地的A位地址中的规定的j位的开始位置指定地址,确定所述m个存储器中的存储所述数据的最初k位的存储器(第n存储器),将所述A位地址中的除所述规定的j位以外的A-j位作为指定所述数据的存储目的地的第一指定地址并输入到所述第n~第m存储器,将对所述指定地址加1而得到的第二指定地址输入到所述第1~第n-1存储器;数据输入电路,根据所述开始位置指定地址,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,输入将所述数据按每k位分割后的分割数据;数据输出电路,根据所述开始位置指定地址,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,从与所述数据的数据宽对应的数量的存储器中读出所述分割数据,并作为所述数据而输出;和存储器选择电路,根据所述开始位置指定地址和所述数据的数据宽,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,使D/k个存储器变为可读写的状态。
而且,所述数据输出电路构成为包括:输出数据重排电路,根据所述开始位置指定地址,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,重排并输出从所述m个存储器输出的k位分割数据;和输出数据选择电路,从由所述输出数据重排电路输出的m个分割数据中,选择并输出与所述数据的数据宽对应的分割数据。
进而,所述输出数据选择电路构成为包括:m个逻辑与电路(第1~第m逻辑与电路),依次分别输入从所述输出数据重排电路输出的m个分割数据;和屏蔽数据输入电路,根据所述数据的数据宽,将用于输出所述分割数据的一方的逻辑值输入到所述第2~第D/k逻辑与电路,将用于对所述分割数据进行屏蔽输出的另一方的逻辑值输入到所述第(D/k+1)~第m逻辑与电路。
另外,所述开始位置指定地址是所述A位地址中的低j位。
(发明的效果)
可以提供不会导致存储器的使用效率降低及处理负荷增大,并可以读写数据宽不同的各种各样的数据的存储器控制电路及存储器控制方法。
附图说明
图1是表示本发明的一实施方式的存储器控制电路的构成的图;
图2是表示存储器M0~Mm-1中存储的数据的一个例子的图;
图3是表示选择器S0的动作的真值表;
图4是表示译码器12的动作的真值表;
图5是表示选择器S1~S3的动作的真值表;
图6是表示图1所示的存储器控制电路1的具体例的图;
图7是表示译码器31的动作的真值表;
图8是表示输入到译码器12的输入IN的WD_LENGTH和数据宽的关系的图;
图9是表示存储器控制电路1a中的译码器12的动作的真值表;
图10是表示存储器控制电路1a中的选择器S1的动作的真值表;
图11是表示选择器S2a~S2d的动作的真值表;
图12是表示选择器S3a~S3d的动作的真值表;
图13是表示读出数据的开头地址为4n地址时的数据配置的一个例子的图;
图14是表示读出数据的开头地址为4n+1地址时的数据配置的一个例子的图;
图15是表示读出数据的开头地址为4n+2地址时的数据配置的一个例子的图;
图16是表示读出数据的开头地址为4n+3地址时的数据配置的一个例子的图;
图17是表示写入数据的开头地址为4n地址时的数据配置的一个例子的图;
图18是表示写入数据的开头地址为4n+1地址时的数据配置的一个例子的图;
图19是表示写入数据的开头地址为4n+2地址时的数据配置的一个例子的图;
图20是表示写入数据的开头地址为4n+3地址时的数据配置的一个例子的图;
图21是表示一般的存储器的构成的图;
图22是表示数据宽不同的各种各样的数据的例子的图;
图23是将各个数据存储于一个地址的方法的图;
图24是表示尽可能多地将数据宽不同的多个数据存储于存储器的方法的图。
图中:1-存储器控制电路;11-加法器;12-译码器;S0~S3-选择器;M0~Mm-1-存储器;31-译码器;32~34-选择器;41~45-D型触发器。
具体实施方式
(存储器控制电路的构成)
图1是表示本发明的一实施方式的存储器控制电路的构成的图。存储器控制电路1是控制对例如k位宽的m个存储器M0~Mm-1进行数据读写的电路,包括加法器11、译码器12、选择器S0~S3、及AND电路A1~Am-1。
图2是表示存储器M0~Mm-1中存储的数据的例子的图。如图所示,所存储数据的数据宽是k位的整数倍,最大为L位。这里,存储器M0~Mm-1的个数“m”为m=L/k。另外,在本实施方式中,如图2所示,数据形式为集中于左侧,但数据形式并不限定于集中于左侧,也可以是集中于右侧等其他的形式。
例如对A位的地址ADRESS,输入用于指定存储器M0~Mm-1中存储的数据的地址[A-1:0]。然后,在选择器S0的输入A处,输入A位地址的高A-j位[A-1:j](以下称作“第一指定地址”)。另外,对选择器S0的输入B,输入通过加法器11将第一指定地址+1而得到的地址(以下称作“第二指定地址”)。然后,对选择器S0的输入SEL,输入A位地址的低j位地址[j-1:0](以下称作“开始位置指定地址”)。
该开始位置指定地址表示将m个存储器M0~Mm-1的哪个作为开头来存储图2所示的各种各样数据宽的数据,位数“j”成为2j-1<m≤2j。然后,基于开始位置指定地址,从选择器S0的输出Y0~Ym-2输出第一指定地址或第二指定地址中的某一个,并将其输入至存储器M0~Mm-2的地址输入A。另外,在存储器Mm-1的地址输入A输入第一指定地址。
图3是表示选择器S0的动作的真值表。如图所示,当选择器S0的输入SEL的值例如为“0”(十进制)时,输出Y0~Ym-2为第一指定地址(输入A)。而且,当输入SEL的值为“1”(十进制)时,输出Y1~Ym-2为第一指定地址(输入A),输出Y0为第二指定地址(输入B)。以下同样,当输入SEL的值为“p”(十进制)时,输出Yp~Ym-2为第一指定地址(输入A),输出Y0~Yp-1为第二指定地址(输入B)。另外,当输入SEL的值为“m-1”(十进制)时,输出Y0~Ym-2全部变为第二指定地址(输入B)。
对译码器12的输入IN输入例如用j位[j-1:0]表示的WD_LENGTH。该WD_LENGTH是表示图2所示的数据的数据宽的值,且以是k位的几倍为基准来表示。例如,当数据是图2所示的k×q位宽数据时,WD_LENGTH的值为“q-1”(十进制)。另外,作为WD_LENGTH,也可以使用具有图2所示的数据的数据宽的数据。例如,当是k×q位宽数据时,也可以将WD_LENGTH的值作为“k×q”(十进制)。其中,如本实施方式所示,以是k位的几倍为基准来表示,可以减少WD_LENGTH的位数。
图4是表示译码器12的动作的真值表。如图所示,当译码器12的输入IN的值是“r”(十进制)时,输出Y1~Yr是“1”,输出Yr+1~Ym-1是“0”。即,将Y1~Ym-1中的“1”的个数加上1而得到的个数,为存储器M0~Mm-1中为了存储图2所示的数据所需的存储器的个数。
选择器S1基于开始位置指定地址和译码器12的输出Y1~Ym-1,可以进行存储器M0~Mm-1中需要的存储器的读写。在选择器S1的输入IN0输入“1”,在输入IN1~INm-1输入来自译码器12的输出Y1~Ym-1。然后,基于在输入SEL输入的开始位置指定地址,从选择器S1的输出/Y0~/Ym-1,将输入IN0~INm-1重排并反相后输出,并将其输入至用于可以进行存储器M0~Mm-1的读写的输入/CS。
图5是表示选择器S1~S3的动作的真值表。如图所示,当选择器S1的输入SEL的值例如为“0”(十进制)时,输出/Y0~/Ym-1为/IN0~/INm-1。而且,例如若数据宽为k×3位,则/Y0~/Y2为“0”,/Y3~/Ym-1为“1”,存储器M0~M2变为可读写的状态。以下同样,当输入SEL的值例如为“s”(十进制)时,按照输出/Ys~/Ym-1、/Y0~/Ys-1的顺序,输出/IN0~/INm-1。然后,若数据宽为k×q位,则按照存储器Ms~Mm-1、M0~Ms-1的顺序,q个存储器变为可读写的状态。
选择器S2是将从存储器M0~Mm-1读出的每k位的数据(分割数据)重排并输出的电路。在选择器S2的输入IN0~INm-1,依次输入存储器M0~Mm-1的数据输出Q(k位)。在选择器S2的输入SEL,输入开始位置指定地址。然后,从选择器S2的输出Y0~Ym-1输出基于开始位置指定地址重排输入IN0~INm-1后的数据。
如图5的真值表所示,当选择器S2的输入SEL的值例如为“0”(十进制)时,输出Y0~Ym-1依次为输入IN0~INm-1。以下同样,当输入SEL的值为“t”(十进制)时,输入IN0~INm-1按照输出Yt~Ym-1、Y0~Yt-1的顺序重排并被输出。
而且,选择器S2的输出Y0例如与L位[L-1:0]的读出数据总线READ_DATA的最高k位连接,输出Y1~Ym-1按照顺序经由AND电路A1~Am-1与读出数据总线的剩余的L-k位连接。在AND电路A1~Am-1输入来自译码器12的输出Y1~Ym-1。由此,当数据宽为K×q位时,来自译码器12的输出Y1~Yq-1为“1”,Yq~Ym-1为“0”,通过来自选择器S2的输出Y0~Ym-1构成的L位的数据中,K×q位以后的Yq~Ym-1通过AND电路Aq~Am-1而被清零(零屏蔽)。由此,k位~L位的数据宽的读出数据被输出到读出数据总线READ_DATA。
选择器S3是下述的电路:按照每k位分割例如位于L位的写入数据总线WRITE_DATA(L-1:0)上的k位~L位的写入数据,并基于开始位置指定地址重排并输出分割后的数据。在选择器S3的IN0~INm-1,从高位依次输入以每k位分割写入数据后的数据(分割数据)。然后,基于开始位置指定地址重排输入IN0~INm-1,并输出作为对存储器M0~Mm-1的数据输入D的输出Y0~Ym-1。
如图5的真值表所示,当选择器S3的输入SEL的值例如为“0”(十进制)时,输出Y0~Ym-1依次为输入IN0~INm-1。以下同样,当输入SEL的值为“t”(十进制)时,输入IN0~INm-1按照输出Yt~Ym-1、Y0~Yt-1的顺序重排并被输出。
另外,加法器11以及选择器S0相当于本发明的地址输入电路,选择器S3相当于本发明的数据输入电路,选择器S2、译码器12以及AND电路A1~Am-1相当于本发明的数据输出电路,译码器12以及选择器S1相当于本发明的存储器选择电路。
而且,选择器S2相当于本发明的输出数据重排电路,译码器12以及AND电路A1~Am-1相当于本发明的输出数据选择电路。另外,AND电路A1~Am-1相当于本发明的逻辑与电路,译码器12相当于本发明的屏蔽数据输入电路。
(具体例子的动作说明)
使用具体例子来说明上述的存储器控制电路1的动作。图6是表示图1所示的存储器控制电路的具体例子。存储器控制电路1a是控制8位宽的4个存储器M0~M3的电路(k=8、m=4),可读写的数据的数据宽为8位~32位(8位单位)。另外,用于选择存储器M0~M3的位数“j”根据2j-1<m≤2j的关系,为j=2。
而且,在存储器控制电路1a中,通过译码器31以及选择器32~34,构成图1所示的选择器S0。另外,通过选择器S2a~S2d,构成图1所示的选择器S2。通过选择器S3a~S3d,构成图1所示的选择器S3。而且,为了保持数据,而设有D型触发器41~45。
在译码器31的输入IN,输入32位的地址[31:0]的低两位[1:0](开始位置指定地址)。然后,从译码器31的输出Y0~Y2输出与开始位置指定地址对应的值。在选择器32输入来自译码器31的输出Y0,当译码器31的输出Y0例如为“0”时,将输入A(地址的高30位:第一指定地址)输出,当译码器31的输出Y0例如为“1”时,将输入B(地址的高30位+1:第二指定地址)输出。选择器33、34也同样,根据来自译码器31的输出Y1、Y2,输出第一指定地址或第二指定地址。
图7是表示译码器31的动作的真值表。如图所示,当译码器31的输入IN的值为“0”(十进制)时,输出Y0~Y2全部是“0”。此时,从选择器32~34输出第一指定地址。当译码器31的输入IN的值为“1”(十进制)时,输出Y1、Y2是“0”,输出Y0为“1”。此时,从选择器33、34输出第一指定地址,从选择器32输出第二指定地址。当译码器31的输入IN的值为“2”(十进制)时,输出Y2为“0”,输出Y0、Y1是“1”。此时,从选择器34输出第一指定地址,从选择器32、33输出第二指定地址。当译码器31的输入IN的值为“3”(十进制)时,输出Y0~Y2全部是“1”。此时,从选择器32~34输出第二指定地址。
图8是表示输入到译码器12的输入IN的WD_LENGTH和数据宽的关系的图。如图所示,将WD_LENGTH加1并×8之后而得到的值为数据宽(数据宽=8位×(WD_LENGTH+1))。图9是表示存储器控制电路1a中的译码器12的动作的真值表。如图所示,当译码器12的输入IN的值为“0”(十进制)时,输出Y1~Y3全部是“0”。而且,当译码器12的输入IN的值为“1”(十进制)时,输出Y2、Y3是“0”,输出Y1为“1”。当译码器12的输入IN的值为“2”(十进制)时,输出Y3为“0”,输出Y1、Y2是“1”。而且,当译码器12的输入IN的值为“3”(十进制)时,输出Y1~Y3全部是“1”。
图10是表示存储器控制电路1a中的选择器S1的动作的真值表。如图所示,当输入到输入SEL的开始位置指定地址(32位的地址的低两位[1:0])为“0”(十进制)时,输出按照输出/Y0~/Y3的顺序将IN0~IN3反相后的值。当输入SEL的值为“1”(十进制)时,输出按照输出/Y1~/Y3、/Y0的顺序将IN0~IN3反相后的值。当输入SEL的值为“2”(十进制)时,输出按照输出/Y2、/Y3、/Y0、/Y1的顺序将IN0~IN3反相后的值。当输入SEL的值为“3”(十进制)时,输出按照输出/Y3、/Y0~/Y2的顺序将IN0~IN3反相后的值。
图11是表示选择器S2a~S2d的动作的真值表。如图所示,当输入到输入SEL的开始位置指定地址(32位的地址的低两位[1:0])为“0”(十进制)时,选择器S2a的输出(R31-24)为从存储器M0输出的数据,选择器S2b的输出(R23-16)为从存储器M1输出的数据,选择器S2c的输出(R15-8)为从存储器M2输出的数据,选择器S2d的输出(R7-0)为从存储器M3输出的数据。
即,当开始位置指定地址为“0”(十进制)时,按照存储器M0~M3的顺序作为读出数据输出。而且,如图11的真值表所示,当开始位置指定地址为“1”(十进制)时,按照存储器M1~M3、M0的顺序作为读出数据输出。另外,当开始位置指定地址为“2”(十进制)时,按照存储器M2、M3、M0、M1的顺序作为读出数据输出。另外,当开始位置指定地址为“3”(十进制)时,按照存储器M3、M0~M2的顺序作为读出数据输出。
图12是表示选择器S3a~S3d的动作的真值表。如图所示,当输入到输入SEL的开始位置指定地址(32位的地址的低两位[1:0])为“0”(十进制)时,选择器S3a的输出(W31-24)为写入数据的高8位[31:24],选择器S3b的输出(W23-16)为写入数据的下一个8位[23:16],选择器S3c的输出(W15-8)为写入数据的再下一个8位[15:8],选择器S3d的输出(W7-0)为写入数据的低8位[7:0]。
即,当开始位置指定地址为“0”(十进制)时,从高位按顺序对存储器M0~M3输出按每8位分割写入数据后的数据(分割数据)。然后,如图12的真值表所示,当开始位置指定地址为“1”(十进制)时,从高位按顺序对存储器M1~M3、M0输出分割数据。另外,当开始位置指定地址为“2”(十进制)时,从高位按顺序对存储器M2、M3、M0、M1输出分割数据。另外,当开始位置指定地址为“3”(十进制)时,从高位按顺序对存储器M3、M0~M2输出分割数据。
接着,对存储器控制电路1a的读写(READ/WRITE)动作具体地进行说明。
(1)READ(开头地址:4n地址)
图13是表示读出数据的开头地址为4n地址时的数据配置的一个例子的图。当读出数据的开头地址为4n地址时,32位地址的低两位[1:0]为“0”(十进制)。因此,译码器31的输出Y0~Y2全部为“0”,从选择器32~34输出第一指定地址。即,在存储器M0~M3的地址输入A输入n地址。
这里,若读出数据的数据宽为32位,则WD_LENGTH为“3”(十进制)。此时,译码器12的输出Y1~Y3全部为“1”。因此,选择器S1的输出/Y0~/Y3全部为“0”,全部的存储器M0~M3变为可以读出的状态。然后,从数据输出Q输出存储器M0~M3的n地址的数据。从存储器M0~M3输出的这些数据在存储器M0~M3整体的地址空间成为4n~4n+3地址的数据。然后,从存储器M0~M3读出的数据按照顺序从选择器S2a~S2d输出。另外,由于译码器12的输出Y1~Y3全部为“1”,所以从存储器M1~M3读出的数据不会被AND电路A1~A3清除。由此,在读出数据总线READ_DATA输出32位宽的数据。
另外,若读出数据的数据宽为24位,WD_LENGTH为“2”(十进制)。此时,译码器12的输出Y1、Y2为“1”,输出Y3为“0”。因此,选择器S1的输出/Y0~/Y2为“0”,输出/Y3为“1”,存储器M0~M2变为可以读出的状态,存储器M3变为不可读出的状态。由此,选择器S2d的输出(R7-0)变为无效数据,但通过AND电路A3被清零,24位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
另外,若读出数据的数据宽为16位,则WD_LENGTH为“1”(十进制)。此时,译码器12的输出Y1为“1”,输出Y2、Y3为“0”。因此,选择器S1的输出/Y0、/Y1为“0”,输出/Y2、/Y3为“1”,存储器M0、M1变为可以读出的状态,存储器M2、M3变为不可读出的状态。由此,选择器S2c、S2d的输出(R15-8、R7-0)变为无效数据,但通过AND电路A2、A3被清零,16位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
另外,若读出数据的数据宽为8位,则WD_LENGTH为“0”(十进制)。此时,译码器12的输出Y1~Y3全部为“0”。因此,选择器S1的输出/Y0为“0”,输出/Y1~/Y3为“1”,存储器M0变为可以读出的状态,存储器M1~M3变为不可读出的状态。由此,选择器S2b~S2d的输出(R23-16、R15-8、R7-0)变为无效数据,但通过AND电路A1~A3被清零,8位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
(2)READ(开头地址:4n+1地址)
图14是表示读出数据的开头地址为4n+1地址时的数据配置的一个例子的图。当读出数据的开头地址为4n+1地址时,32位地址的低两位[1:0]为“1”(十进制)。因此,译码器31的输出Y0为“1”,输出Y1、Y2为“0”,从选择器33、34输出第一指定地址,从选择器32输出第二指定地址。即,在存储器M0~M3的地址输入A输入n地址,在存储器M0的地址输入A输入n+1地址。
这里,若读出数据的数据宽为32位,则WD_LENGTH为“3”(十进制)。此时,译码器12的输出Y1~Y3全部为“1”。因此,选择器S1的输出/Y0~/Y3全部为“0”,全部的存储器M0~M3变为可以读出的状态。然后,从数据输出Q输出存储器M1~M3的n地址的数据及存储器M0的n+1地址的数据。从存储器M1~M3、M0输出的这些数据在存储器M0~M3整体的地址空间成为4n+1~4n+4地址的数据。然后,从存储器M1~M3、M0读出的数据按照顺序从选择器S2a~S2d输出。另外,由于译码器12的输出Y1~Y3全部为“1”,所以从存储器M2、M3、M0读出的数据不会被AND电路A1~A3清除。由此,在读出数据总线READ_DATA输出32位宽的数据。
另外,若读出数据的数据宽为24位,WD_LENGTH为“2”(十进制)。此时,译码器12的输出Y1、Y2为“1”,输出Y3为“0”。因此,选择器S1的输出/Y1~/Y3为“0”,输出/Y0为“1”,存储器M1~M3变为可以读出的状态,存储器M0变为不可读出的状态。由此,选择器S2d的输出(R7-0)变为无效数据,但通过AND电路A3被清零,24位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
另外,若读出数据的数据宽为16位,则WD_LENGTH为“1”(十进制)。此时,译码器12的输出Y1为“1”,输出Y2、Y3为“0”。因此,选择器S1的输出/Y1、/Y2为“0”,输出/Y3、/Y0为“1”,存储器M1、M2变为可以读出的状态,存储器M3、M0变为不可读出的状态。由此,选择器S2c、S2d的输出(R15-8、R7-0)变为无效数据,但通过AND电路A2、A3被清零,16位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
另外,若读出数据的数据宽为8位,则WD_LENGTH为“0”(十进制)。此时,译码器12的输出Y1~Y3全部为“0”。因此,选择器S1的输出/Y1为“0”,输出/Y2、/Y3、/Y0为“1”,存储器M1变为可以读出的状态,存储器M2、M3、M0变为不可读出的状态。由此,选择器S2b~S2d的输出(R23-16、R15-8、R7-0)变为无效数据,但通过AND电路A1~A3被清零,8位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
(3)READ(开头地址:4n+2地址)
图15是表示读出数据的开头地址为4n+2地址时的数据配置的一个例子的图。当读出数据的开头地址为4n+2地址时,32位地址的低两位[1:0]为“2”(十进制)。因此,译码器31的输出Y0、Y1为“1”,输出Y2为“0”,从选择器34输出第一指定地址,从选择器32、33输出第二指定地址。即,在存储器M2、M3的地址输入A输入n地址,在存储器M0、M1的地址输入A输入n+1地址。
这里,若读出数据的数据宽为32位,则WD_LENGTH为“3”(十进制)。此时,译码器12的输出Y1~Y3全部为“1”。因此,选择器S1的输出/Y0~/Y3全部为“0”,全部的存储器M0~M3变为可以读出的状态。然后,从数据输出Q输出存储器M2、M3的n地址的数据及存储器M0、M1的n+1地址的数据。从存储器M2、M3、M0、M1输出的这些数据在存储器M0~M3整体的地址空间成为4n+2~4n+5地址的数据。然后,从存储器M2、M3、M0、M1读出的数据按照顺序从选择器S2a~S2d输出。另外,由于译码器12的输出Y1~Y3全部为“1”,所以从存储器M3、M0、M1读出的数据不会被AND电路A1~A3清除。由此,在读出数据总线READ_DATA输出32位宽的数据。
另外,若读出数据的数据宽为24位,则WD_LENGTH为“2”(十进制)。此时,译码器12的输出Y1、Y2为“1”,输出Y3为“0”。因此,选择器S1的输出/Y2、/Y3、/Y0为“0”,输出/Y1为“1”,存储器M2、M3、M0变为可以读出的状态,存储器M1变为不可读出的状态。由此,选择器S2d的输出(R7-0)变为无效数据,但通过AND电路A3被清零,24位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
另外,若读出数据的数据宽为16位,则WD_LENGTH为“1”(十进制)。此时,译码器12的输出Y1为“1”,输出Y2、Y3为“0”。因此,选择器S1的输出/Y2、/Y3为“0”,输出/Y0、/Y1为“1”,存储器M2、M3变为可以读出的状态,存储器M0、M1变为不可读出的状态。由此,选择器S2c、S2d的输出(R15-8、R7-0)变为无效数据,但通过AND电路A2、A3被清零,16位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
另外,若读出数据的数据宽为8位,则WD_LENGTH为“0”(十进制)。此时,译码器12的输出Y1~Y3全部为“0”。因此,选择器S1的输出/Y2为“0”,输出/Y3、/Y0、/Y1为“1”,存储器M2变为可以读出的状态,存储器M3、M0、M1变为不可读出的状态。由此,选择器S2b~S2d的输出(R23-16、R15-8、R7-0)变为无效数据,但通过AND电路A1~A3被清零,8位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
(4)READ(开头地址:4n+3地址)
图16是表示读出数据的开头地址为4n+3地址时的数据配置的一个例子的图。当读出数据的开头地址为4n+3地址时,32位地址的低两位[1:0]为“3”(十进制)。因此,译码器31的输出Y0~Y3全部为“1”,从选择器32~34输出第二指定地址。即,在存储器M3的地址输入A输入n地址,在存储器M0~M2的地址输入A输入n+1地址。
这里,若读出数据的数据宽为32位,则WD_LENGTH为“3”(十进制)。此时,译码器12的输出Y1~Y3全部为“1”。因此,选择器S1的输出/Y0~/Y3全部为“0”,全部的存储器M0~M3变为可以读出的状态。然后,从数据输出Q输出存储器M3的n地址的数据及存储器M0~M2的n+1地址的数据。从存储器M3、M0~M2输出的这些数据在存储器M0~M3整体的地址空间成为4n+3~4n+6地址的数据。然后,从存储器M3、M0~M2读出的数据按照顺序从选择器S2a~S2d输出。另外,由于译码器12的输出Y1~Y3全部为“1”,所以从存储器M0~M2读出的数据不会被AND电路A1~A3清除。由此,在读出数据总线READ_DATA输出32位宽的数据。
另外,若读出数据的数据宽为24位,则WD_LENGTH为“2”(十进制)。此时,译码器12的输出Y1、Y2为“1”,输出Y3为“0”。因此,选择器S1的输出/Y3、/Y0、/Y1为“0”,输出/Y2为“1”,存储器M3、M0、M1变为可以读出的状态,存储器M2变为不可读出的状态。由此,选择器S2d的输出(R7-0)变为无效数据,但通过AND电路A3被清零,24位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
另外,若读出数据的数据宽为16位,则WD_LENGTH为“1”(十进制)。此时,译码器12的输出Y1为“1”,输出Y2、Y3为“0”。因此,选择器S1的输出/Y3、/Y0为“0”,输出/Y1、/Y2为“1”,存储器M3、M0变为可以读出的状态,存储器M1、M2变为不可读出的状态。由此,选择器S2c、S2d的输出(R15-8、R7-0)变为无效数据,但通过AND电路A2、A3被清零,16位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
另外,若读出数据的数据宽为8位,则WD_LENGTH为“0”(十进制)。此时,译码器12的输出Y1~Y3全部为“0”。因此,选择器S1的输出/Y3为“0”,输出/Y0~/Y2为“1”,存储器M3变为可以读出的状态,存储器M0~M2变为不可读出的状态。由此,选择器S2b~S2d的输出(R23-16、R15-8、R7-0)变为无效数据,但通过AND电路A1~A3被清零,8位宽的集中于左侧的数据被输出到读出数据总线READ_DATA。
(5)WRITE(开头地址:4n地址)
图17是表示写入数据的开头地址为4n地址时的数据配置的一个例子的图。当写入数据的开头地址为4n地址时,32位地址的低两位[1:0]为“0”(十进制)。因此,译码器31的输出Y0~Y2全部为“0”,从选择器32~34输出第一指定地址。即,在存储器M0~M3的地址输入A输入n地址。
这里,若写入数据的数据宽为32位,则WD_LENGTH为“3”(十进制)。此时,译码器12的输出Y1~Y3全部为“1”。因此,选择器S1的输出/Y0~/Y3全部为“0”,全部的存储器M0~M3变为可以写入的状态。从高位按每8位分割32位的写入数据,经由选择器S3a~S3d,按照存储器M0~M3的顺序在数据输入D输入,并存储于各个n地址。存储于存储器M0~M3的这些数据在存储器M0~M3整体的地址空间成为4n~4n+3地址的数据。
另外,若写入数据的数据宽为24位,WD_LENGTH为“2”(十进制)。此时,译码器12的输出Y1、Y2为“1”,输出Y3为“0”。因此,选择器S1的输出/Y0~/Y2为“0”,输出/Y3为“1”,存储器M0~M2变为可以写入的状态,存储器M3变为不可写入的状态。由此,从高位按每8位分割写入数据总线WRITE_DATA上的高24位的数据,经由选择器S3a~S3c,按照存储器M0~M2的顺序在数据输入D输入,并存储于各个n地址。
另外,若写入数据的数据宽为16位,则WD_LENGTH为“1”(十进制)。此时,译码器12的输出Y1为“1”,输出Y2、Y3为“0”。因此,选择器S1的输出/Y0、/Y1为“0”,输出/Y2、/Y3为“1”,存储器M0、M1变为可以写入的状态,存储器M2、M3变为不可写入的状态。由此,从高位按每8位分割写入数据总线WRITE_DATA上的高16位的数据,经由选择器S3a、S3b,按照存储器M0、M1的顺序在数据输入D输入,并存储于各个n地址。
另外,若写入数据的数据宽为8位,则WD_LENGTH为“0”(十进制)。此时,译码器12的输出Y1~Y3全部为“0”。因此,选择器S1的输出/Y0为“0”,输出/Y1~/Y3为“1”,存储器M0变为可以写入的状态,存储器M1~M3变为不可写入的状态。由此,经由选择器S3a,将写入数据总线WRITE_DATA上的高8位的数据,在存储器M0的数据输入D输入,并存储于n地址。
(6)WRITE(开头地址:4n+1地址)
图18是表示写入数据的开头地址为4n+1地址时的数据配置的一个例子的图。当写入数据的开头地址为4n+1地址时,32位地址的低两位[1:0]为“1”(十进制)。因此,译码器31的输出Y0为“1”,输出Y1、Y2为“0”,从选择器33、34输出第一指定地址,从选择器32输出第二指定地址。即,在存储器M1~M3的地址输入A输入n地址,在存储器M0的地址输入A输入n+1地址。
这里,若写入数据的数据宽为32位,则WD_LENGTH为“3”(十进制)。此时,译码器12的输出Y1~Y3全部为“1”。因此,选择器S1的输出/Y0~/Y3全部为“0”,全部的存储器M0~M3变为可以写入的状态。从高位按每8位分割32位的写入数据,经由选择器S3a~S3d,按照存储器M1~M3、M0的顺序在数据输入D输入,并存储于存储器M1~M3的n地址及存储器M0的n+1地址。存储于存储器M0~M3的这些数据在存储器M0~M3整体的地址空间成为4n+1~4n+4地址的数据。
另外,若写入数据的数据宽为24位,则WD_LENGTH为“2”(十进制)。此时,译码器12的输出Y1、Y2为“1”,输出Y3为“0”。因此,选择器S1的输出/Y1~/Y3为“0”,输出/Y0为“1”,存储器M1~M3变为可以写入的状态,存储器M0变为不可写入的状态。由此,从高位按每8位分割写入数据总线WRITE_DATA上的高24位的数据,经由选择器S3b~S3d,按照存储器M1~M3的顺序在数据输入D输入,并存储于各个n地址。
另外,若写入数据的数据宽为16位,则WD_LENGTH为“1”(十进制)。此时,译码器12的输出Y1为“1”,输出Y2、Y3为“0”。因此,选择器S1的输出/Y1、/Y2为“0”,输出/Y3、/Y0为“1”,存储器M1、M2变为可以写入的状态,存储器M3、M0变为不可写入的状态。由此,从高位按每8位分割写入数据总线WRITE_DATA上的高16位的数据,经由选择器S3b、S3c,按照存储器M1、M2的顺序在数据输入D输入,并存储于各个n地址。
另外,若写入数据的数据宽为8位,则WD_LENGTH为“0”(十进制)。此时,译码器12的输出Y1~Y3全部为“0”。因此,选择器S1的输出/Y1为“0”,输出/Y2、/Y3、/Y0为“1”,存储器M1变为可以写入的状态,存储器M2、M3、M0变为不可写入的状态。由此,经由选择器S3b,将写入数据总线WRITE_DATA上的高8位的数据,在存储器M1的数据输入D输入,并存储于n地址。
(7)WRITE(开头地址:4n+2地址)
图19是表示写入数据的开头地址为4n+2地址时的数据配置的一个例子的图。当写入数据的开头地址为4n+2地址时,32位地址的低两位[1:0]为“2”(十进制)。因此,译码器31的输出Y0、Y1为“1”,输出Y2为“0”,从选择器34输出第一指定地址,从选择器32、33输出第二指定地址。即,在存储器M2、M3的地址输入A输入n地址,在存储器M0、M1的地址输入A输入n+1地址。
这里,若写入数据的数据宽为32位,则WD_LENGTH为“3”(十进制)。此时,译码器12的输出Y1~Y3全部为“1”。因此,选择器S1的输出/Y0~/Y3全部为“0”,全部的存储器M0~M3变为可以写入的状态。从高位按每8位分割32位的写入数据,经由选择器S3a~S3d,按照存储器M2、M3、M0、M1的顺序在数据输入D输入,并存储于存储器M2、M3的n地址和存储器M0、M1的n+1地址。存储于存储器M0~M3的这些数据在存储器M0~M3整体的地址空间成为4n+2~4n+5地址的数据。
另外,若写入数据的数据宽为24位,则WD_LENGTH为“2”(十进制)。此时,译码器12的输出Y1、Y2为“1”,输出Y3为“0”。因此,选择器S1的输出/Y2、/Y3、/Y0为“0”,输出/Y1为“1”,存储器M2、M3、M0变为可以写入的状态,存储器M1变为不可写入的状态。由此,从高位按每8位分割写入数据总线WRITE_DATA上的高24位的数据,经由选择器S3c、S3d、S3a,按照存储器M2、M3、M0的顺序在数据输入D输入,并存储于存储器M2、M3的n地址和存储器M0的n+1地址。
另外,若写入数据的数据宽为16位,则WD_LENGTH为“1”(十进制)。此时,译码器12的输出Y1为“1”,输出Y2、Y3为“0”。因此,选择器S1的输出/Y2、/Y3为“0”,输出/Y0、/Y1为“1”,存储器M2、M3变为可以写入的状态,存储器M0、M1变为不可写入的状态。由此,从高位按每8位分割写入数据总线WRITE_DATA上的高16位的数据,经由选择器S3c、S3d,按照存储器M2、M3的顺序在数据输入D输入,并存储于各个n地址。
另外,若写入数据的数据宽为8位,则WD_LENGTH为“0”(十进制)。此时,译码器12的输出Y1~Y3全部为“0”。因此,选择器S1的输出/Y2为“0”,输出/Y3、/Y0、/Y1为“1”,存储器M2变为可以写入的状态,存储器M3、M0、M1变为不可写入的状态。由此,经由选择器S3c,将写入数据总线WRITE_DATA上的高8位的数据,在存储器M2的数据输入D输入,并存储于n地址。
(8)WRITE(开头地址:4n+3地址)
图19是表示写入数据的开头地址为4n+3地址时的数据配置的一个例子的图。当写入数据的开头地址为4n+3地址时,32位地址的低两位[1:0]为“3”(十进制)。因此,译码器31的输出Y0~Y2全部为“1”,从选择器32~34输出第二指定地址。即,在存储器M3的地址输入A输入n地址,在存储器M0~M2的地址输入A输入n+1地址。
这里,若写入数据的数据宽为32位,则WD_LENGTH为“3”(十进制)。此时,译码器12的输出Y1~Y3全部为“1”。因此,选择器S1的输出/Y0~/Y3全部为“0”,全部的存储器M0~M3变为可以写入的状态。从高位按每8位分割32位的写入数据,经由选择器S3a~S3d,按照存储器M3、M0~M2的顺序在数据输入D输入,并存储于存储器M3的n地址和存储器M0~M2的n+1地址。存储于存储器M0~M3的这些数据在存储器M0~M3整体的地址空间成为4n+3~4n+6地址的数据。
另外,若写入数据的数据宽为24位,则WD_LENGTH为“2”(十进制)。此时,译码器12的输出Y1、Y2为“1”,输出Y3为“0”。因此,选择器S1的输出/Y3、/Y0、/Y1为“0”,输出/Y2为“1”,存储器M3、M0、M1变为可以写入的状态,存储器M2变为不可写入的状态。由此,从高位按每8位分割写入数据总线WRITE_DATA上的高24位的数据,经由选择器S3d、S3a、S3b,按照存储器M3、M0、M1的顺序在数据输入D输入,并存储于存储器M3的n地址和存储器M0、M1的n+1地址。
另外,若写入数据的数据宽为16位,则WD_LENGTH为“1”(十进制)。此时,译码器12的输出Y1为“1”,输出Y2、Y3为“0”。因此,选择器S1的输出/Y3、/Y0为“0”,输出/Y1、/Y2为“1”,存储器M3、M0变为可以写入的状态,存储器M1、M2变为不可写入的状态。由此,从高位按每8位分割写入数据总线WRITE_DATA上的高16位的数据,经由选择器S3d、S3a,按照存储器M3、M0的顺序在数据输入D输入,并存储于存储器M3的n地址和存储器M0的n+1地址。
另外,若写入数据的数据宽为8位,则WD_LENGTH为“0”(十进制)。此时,译码器12的输出Y1~Y3全部为“0”。因此,选择器S1的输出/Y3为“0”,输出/Y0~/Y2为“1”,存储器M3变为可以写入的状态,存储器M0~M2变为不可写入的状态。由此,经由选择器S3d,将写入数据总线WRITE_DATA上的高8位的数据,在存储器M3的数据输入D输入,并存储于n地址。
以上,对本发明的一实施方式的存储器控制电路1、1a进行了说明。根据这样的存储器控制电路1、1a,可以在存储器上不产生无效的数据区域的情况下存储数据宽不同的各种各样的数据。即,可以在不导致存储器的使用效率较低的情况下读写数据宽不同的各种各样的数据。另外,在将数据写入存储器前或从存储器读出数据后,不需要进行数据的打包(packing)或展开(unpacking)的处理,从而不会导致处理负荷的增大。
另外,上述实施方式是用于容易地理解本发明的方式,并不是用来限定解释本发明。本发明在不脱离其主旨的情况下,可以进行变更、改良,并且其等价物也包含于本发明。
另外,在本实施方式中,使用A位地址的低j位来选择存储有数据开头的存储器,但并不限定于低j位,也可以使用高j位或不连续地选择的j位。
Claims (5)
1.一种存储器控制电路,其对k位宽的m(=L/k)个存储器(第1~第m存储器)进行控制,这些存储器对数据宽(D位)为k位的整数倍且最大为L位的数据进行存储,该存储器控制电路具备:
地址输入电路,根据表示所述数据的存储目的地的A位地址中的规定的j位的开始位置指定地址,确定所述m个存储器中的存储所述数据的最初k位的存储器(第n存储器),将所述A位地址中的除所述规定的j位以外的A-j位作为指定所述数据的存储目的地的第一指定地址并输入到所述第n~第m存储器,将对所述指定地址加1而得到的第二指定地址输入到所述第1~第n-1存储器;
数据输入电路,根据所述开始位置指定地址,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,输入将所述数据按每k位分割后的分割数据;
数据输出电路,根据所述开始位置指定地址,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,从与所述数据的数据宽对应的数量的存储器中读出所述分割数据,并作为所述数据而输出;和
存储器选择电路,根据所述开始位置指定地址和所述数据的数据宽,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,使D/k个存储器变为可读写的状态。
2.根据权利要求1所述的存储器控制电路,其特征在于,
所述数据输出电路构成为包括:
输出数据重排电路,根据所述开始位置指定地址,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,重排并输出从所述m个存储器输出的k位分割数据;和
输出数据选择电路,从由所述输出数据重排电路输出的m个分割数据中,选择并输出与所述数据的数据宽对应的分割数据。
3.根据权利要求2所述的存储器控制电路,其特征在于,
所述输出数据选择电路构成为包括:
m个逻辑与电路(第1~第m逻辑与电路),依次分别输入从所述输出数据重排电路输出的m个分割数据;和
屏蔽数据输入电路,根据所述数据的数据宽,将用于输出所述分割数据的一方的逻辑值输入到所述第2~第D/k逻辑与电路,将用于对所述分割数据进行屏蔽输出的另一方的逻辑值输入到所述第(D/k+1)~第m逻辑与电路。
4.根据权利要求1~3的任一项所述的存储器控制电路,其特征在于,
所述开始位置指定地址是所述A位地址中的低j位。
5.一种存储器控制方法,用于对k位宽的m(=L/k)个存储器(第1~第m存储器)进行控制,这些存储器对数据宽(D位)为k位的整数倍且最大为L位的数据进行存储,
该方法根据表示所述数据的存储目的地的A位地址中的规定的j位的开始位置指定地址,确定所述m个存储器中的存储所述数据的最初k位的存储器(第n存储器);
将所述A位地址中的除所述规定的j位以外的A-j位作为指定所述数据的存储目的地的第一指定地址并输入到所述第n~第m存储器;
将对所述指定地址加1而得到的第二指定地址输入到所述第1~第n-1存储器;
在写入所述数据时,根据所述开始位置指定地址,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,输入将所述数据按每k位分割后的分割数据;
在读出所述数据时,根据所述开始位置指定地址,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,从与所述数据的数据宽对应的数量的存储器中读出所述分割数据,并作为所述数据而输出;
根据所述开始位置指定地址和所述数据的数据宽,按照所述第n~第m存储器、所述第1~第n-1存储器的顺序,使D/k个存储器变为可读写的状态。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005369848A JP2007172332A (ja) | 2005-12-22 | 2005-12-22 | メモリ制御回路及びメモリ制御方法 |
JP2005369848 | 2005-12-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1987824A true CN1987824A (zh) | 2007-06-27 |
Family
ID=38184626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA200610163714XA Pending CN1987824A (zh) | 2005-12-22 | 2006-11-30 | 存储器控制电路及存储器控制方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7440338B2 (zh) |
JP (1) | JP2007172332A (zh) |
KR (1) | KR100852590B1 (zh) |
CN (1) | CN1987824A (zh) |
TW (1) | TW200731071A (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4908565B2 (ja) * | 2009-09-14 | 2012-04-04 | 株式会社東芝 | メモリシステム |
TWI466084B (zh) * | 2011-10-24 | 2014-12-21 | Mediatek Inc | 顯示控制器與傳輸控制方法 |
US9417958B2 (en) | 2012-06-06 | 2016-08-16 | Silicon Motion Inc. | Flash memory control method, controller and electronic apparatus |
TWI594251B (zh) * | 2012-06-06 | 2017-08-01 | 慧榮科技股份有限公司 | 記憶體控制方法、控制器跟電子裝置 |
JP2014194672A (ja) * | 2013-03-28 | 2014-10-09 | Fujitsu Ltd | メモリ制御装置、及びメモリ制御方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06266614A (ja) | 1993-03-16 | 1994-09-22 | Hitachi Ltd | メモリ制御方法 |
WO1995028677A1 (en) | 1994-04-13 | 1995-10-26 | Ericsson Inc. | Efficient addressing of large memories |
KR0154748B1 (ko) * | 1995-11-28 | 1998-11-16 | 김광호 | 다양한 메모리 폭 및 길이를 갖는 시스템의 피지컬 어드레스 제어방법 |
KR0161868B1 (ko) * | 1995-12-27 | 1999-01-15 | 문정환 | 메모리 주소제어회로 |
JP3756818B2 (ja) * | 2002-01-09 | 2006-03-15 | 株式会社メガチップス | メモリ制御回路および制御システム |
JP4614650B2 (ja) * | 2003-11-13 | 2011-01-19 | ルネサスエレクトロニクス株式会社 | 半導体記憶装置 |
EP1932158A4 (en) * | 2005-09-30 | 2008-10-15 | Mosaid Technologies Inc | MEMORY WITH OUTPUT CONTROL |
-
2005
- 2005-12-22 JP JP2005369848A patent/JP2007172332A/ja not_active Withdrawn
-
2006
- 2006-11-30 CN CNA200610163714XA patent/CN1987824A/zh active Pending
- 2006-12-20 TW TW095147992A patent/TW200731071A/zh unknown
- 2006-12-21 KR KR1020060131716A patent/KR100852590B1/ko not_active IP Right Cessation
- 2006-12-21 US US11/614,793 patent/US7440338B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US7440338B2 (en) | 2008-10-21 |
TW200731071A (en) | 2007-08-16 |
JP2007172332A (ja) | 2007-07-05 |
KR100852590B1 (ko) | 2008-08-14 |
US20070147137A1 (en) | 2007-06-28 |
KR20070066920A (ko) | 2007-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0174845A2 (en) | Semiconductor memory device | |
CN1987824A (zh) | 存储器控制电路及存储器控制方法 | |
KR20100100395A (ko) | 복수의 프로세서를 포함하는 메모리 시스템 | |
US6453380B1 (en) | Address mapping for configurable memory system | |
US4800535A (en) | Interleaved memory addressing system and method using a parity signal | |
US20120117305A1 (en) | Method Of Storing Blocks Of Data In A Plurality Of Memory Devices For High Speed Sequential Read, A Memory Controller And A Memory System | |
JPH023163A (ja) | 多ポートメモリ | |
CN103853694A (zh) | 一种可重构状态机的实现方法 | |
JPS61196340A (ja) | ランダムアクセスメモリを遅延線としてアドレツシングする方法及び該遅延線を含む信号処理装置 | |
JPS6394716A (ja) | 不揮発性メモリの書き込み方式 | |
CN106649136B (zh) | 一种数据存储方法和存储装置 | |
JPH04188243A (ja) | 記憶装置 | |
GB1073800A (en) | Improvements relating to digital data storage systems | |
JPH02148237A (ja) | データのブロツクを記憶させ且つ操作を加えるための方法 | |
CN117194281A (zh) | 一种用于asic中不定长数据的非对称存取方法 | |
JPS5987567A (ja) | 可変長デ−タ記憶制御方式 | |
US20030028707A1 (en) | Memory array apparatus with reduced data accessing time and method for the same | |
JPH03228298A (ja) | データ格納方式 | |
JPS6117480Y2 (zh) | ||
KR100281102B1 (ko) | 플래쉬메모리를사용한에이티에이(ata)카드 | |
JPH04245556A (ja) | 命令メモリ | |
JP2855936B2 (ja) | データ入れ替え方式 | |
CN102402398A (zh) | 闪存控制器及其方法 | |
JPH1124888A (ja) | Fifoメモリ制御装置 | |
JPS6113340A (ja) | ハツシユ制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20070627 |