JP4549073B2 - Memory control circuit - Google Patents

Memory control circuit Download PDF

Info

Publication number
JP4549073B2
JP4549073B2 JP2004037205A JP2004037205A JP4549073B2 JP 4549073 B2 JP4549073 B2 JP 4549073B2 JP 2004037205 A JP2004037205 A JP 2004037205A JP 2004037205 A JP2004037205 A JP 2004037205A JP 4549073 B2 JP4549073 B2 JP 4549073B2
Authority
JP
Japan
Prior art keywords
signal
memory
control circuit
state
banks
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.)
Expired - Fee Related
Application number
JP2004037205A
Other languages
Japanese (ja)
Other versions
JP2005228142A (en
Inventor
亮二 藤原
英和 加藤
利一 古川
好将 新井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2004037205A priority Critical patent/JP4549073B2/en
Publication of JP2005228142A publication Critical patent/JP2005228142A/en
Application granted granted Critical
Publication of JP4549073B2 publication Critical patent/JP4549073B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明はメモリ制御回路に関する。   The present invention relates to a memory control circuit.

メモリには、複数のブロック(バンク)に分割されてデータの書き込み読み出しのためのアクセスが行われるものがある。前記メモリに対するアクセスは、後述するメモリ制御回路によって実行される。
上記のメモリ制御回路は、CPUからの指示に従って、メモリを構成する複数のバンクの何れかを選択するとともに、選択されたバンク内における所定アドレスを指定してデータの書き込みまたは読み出しを行うこととなる(例えば、特許文献1参照)。
Some memories are divided into a plurality of blocks (banks) and accessed for writing and reading data. Access to the memory is executed by a memory control circuit described later.
The memory control circuit selects one of a plurality of banks constituting the memory according to an instruction from the CPU, and writes or reads data by designating a predetermined address in the selected bank. (For example, refer to Patent Document 1).

図5に、従来のメモリ制御回路による読み出し状態の変化のタイミングを説明するためのタイムチャートを示す。この図は、各アドレスに記憶されるビット数が16ビットからなるメモリ(16bit×1メモリ、以下、16ビットメモリとする)にメモリ制御回路がアクセスをして読み出しを行う例である。つまり、1つのバンクに対してアクセスする場合のタイムチャートである。メモリとして、例えばSRAMを使用することができる。   FIG. 5 shows a time chart for explaining the timing of change of the read state by the conventional memory control circuit. This figure shows an example in which a memory control circuit accesses and reads out a memory (16 bits × 1 memory, hereinafter referred to as a 16-bit memory) having 16 bits stored in each address. That is, it is a time chart when accessing one bank. For example, an SRAM can be used as the memory.

メモリ制御回路は、アドレスバス、データバスを介してCPUと接続されていて、メモリ制御回路内においてCPUからの指示に従いValid、ステート信号の各信号を発生する。Validはメモリにアクセスすることを示す信号であり、ステート信号はメモリ内における各種状態を設定するための信号である。   The memory control circuit is connected to the CPU via an address bus and a data bus, and generates Valid and State signals in accordance with instructions from the CPU in the memory control circuit. Valid is a signal indicating access to the memory, and the state signal is a signal for setting various states in the memory.

また、メモリ制御回路は、接続されたメモリに対してアドレス信号ADDR、チップセレクト信号nCS、リード信号nRD、ローバイトセレクト信号nLB、nHB/nWRH信号を出力する端子、およびDATA信号を入出力する端子を備えている。一方、接続された16ビットメモリは、メモリ制御回路の出力に対応して、アドレス信号ADDR、チップセレクト信号nCS、リード信号nRD、ローバイトセレクト信号nLB、nHB信号を入力する端子、およびDATA信号を入出力する端子を備えている。以上の各信号はCPUにて、メモリ制御回路を動作するために設定されるシステムクロックCLKに同期して変化する。   The memory control circuit outputs an address signal ADDR, a chip select signal nCS, a read signal nRD, a low byte select signal nLB, an nHB / nWRH signal to the connected memory, and a terminal for inputting / outputting a DATA signal. It has. On the other hand, the connected 16-bit memory has a terminal for inputting an address signal ADDR, a chip select signal nCS, a read signal nRD, a low byte select signal nLB, an nHB signal, and a DATA signal corresponding to the output of the memory control circuit. It has a terminal for input and output. Each of the above signals changes in synchronization with the system clock CLK set for operating the memory control circuit in the CPU.

まず、メモリ制御回路内においての信号について説明する。
アドレスバスは、CPUとメモリ制御回路間でのメモリのアドレスの転送経路であり、読み出しまたは書き込みを行うメモリのアドレスがCPUから指定される。
データバスは、CPUとメモリ制御回路間での指定されたメモリの読み出しや書き込みデータの転送経路となる。
First, signals in the memory control circuit will be described.
The address bus is a memory address transfer path between the CPU and the memory control circuit, and the memory address to be read or written is designated by the CPU.
The data bus serves as a transfer path for reading and writing data of a designated memory between the CPU and the memory control circuit.

ステート信号は、メモリ制御回路内におけるメモリへのアクセスの状態を示す信号である。このメモリアクセスの状態を示す信号として、TACS、TCOS、TACC、TCOHがある。
TACSは、メモリのアドレスを指定するが、メモリを活性化しない状態を示す信号である。
TCOSは、メモリを活性化するが、書き込み又は読み出しを行わない状態を示す信号である。
TACCは、書き込み又は読み出しを実行する状態を示す信号である。
TCOHは、書き込み又は読み出しの終了後にメモリを非活性化しない状態を示す信号である。
The state signal is a signal indicating the state of access to the memory in the memory control circuit. There are TACS, TCOS, TACC, and TCOH as signals indicating the memory access state.
TACS is a signal that specifies a memory address but does not activate the memory.
The TCOS is a signal indicating a state in which the memory is activated but writing or reading is not performed.
TACC is a signal indicating a state in which writing or reading is executed.
TCOH is a signal indicating a state in which the memory is not deactivated after completion of writing or reading.

なお、IDLEはメモリにアクセスしていない状態を示す信号である。
通常メモリアクセスの状態は、ステート信号がIDLE→TACS→TCOS→TACC→TCOH→IDLEの順で変化することにより、このステート信号に応じた状態を経て変化する。メモリ制御回路は、このステート信号の長さやタイミングを制御することができる。
IDLE is a signal indicating that the memory is not being accessed.
The state of the normal memory access changes through a state corresponding to this state signal when the state signal changes in the order of IDLE → TACS → TCOS → TACC → TCOH → IDLE. The memory control circuit can control the length and timing of this state signal.

Validは、“HIGH”となることで活性化し、メモリに対してアクセスを行うことを示す信号である。このValidは“HIGH”となってから、ステート信号TACS、TCOS、TACC、TCOHが順次変化する期間と同一のクロック期間経過後に“LOW”となる。   Valid is a signal indicating that the memory is activated when it becomes “HIGH” and the memory is accessed. After this Valid becomes “HIGH”, it becomes “LOW” after the same clock period as the period in which the state signals TACS, TCOS, TACC, and TCOH sequentially change.

次に、メモリ制御回路からメモリに出力される信号について説明する。
アドレス信号ADDRは、アドレスバスによって指定されたメモリのアドレスを、メモリ制御回路がメモリに対して指定するための信号である。したがってアドレス信号ADDRにはアドレスバスと同じアドレスが指定される。このメモリのアドレスの指定開始となるのは、メモリ制御回路がIDLEの状態から他の状態へと変化するタイミングである。また、メモリ制御回路が、このアドレスを指定する期間は、ステート信号TACS、TCOS、TACC、TCOHが順次変化する期間と同一のクロック期間である。
Next, signals output from the memory control circuit to the memory will be described.
The address signal ADDR is a signal for the memory control circuit to specify the memory address specified by the address bus to the memory. Therefore, the same address as the address bus is designated for the address signal ADDR. This memory address designation starts when the memory control circuit changes from the IDLE state to another state. In addition, the period in which the memory control circuit designates this address is the same clock period as the period in which the state signals TACS, TCOS, TACC, and TCOH sequentially change.

チップセレクト信号nCSは、メモリのバンクを選択する信号であり、このチップセレクト信号nCSが“LOW”となると選択したバンクが活性化する。このチップセレクト信号nCSが“LOW”となる期間(『予め定められた期間』)は、メモリ制御回路のステート信号TCOS、TACC、TCOHが順次変化する期間と同一のクロック期間である。この期間経過後チップセレクト信号nCSは“HIGH”となり、当該バンクは非活性化する。   The chip select signal nCS is a signal for selecting a memory bank, and the selected bank is activated when the chip select signal nCS becomes “LOW”. The period when the chip select signal nCS is “LOW” (“predetermined period”) is the same clock period as the period when the state signals TCOS, TACC, and TCOH of the memory control circuit sequentially change. After this period, the chip select signal nCS becomes “HIGH” and the bank is inactivated.

リード信号nRDは、メモリ制御回路がアクセスしたメモリから出たデータの読み出しを行うための信号であり、“LOW”となることで活性化する。リード信号nRDが“LOW”となる期間は、ステート信号がTACCの期間と同一のクロック期間であり、この期間経過後“HIGH”となる。   The read signal nRD is a signal for reading data output from the memory accessed by the memory control circuit, and is activated when it becomes “LOW”. The period in which the read signal nRD is “LOW” is the same clock period as the period of the state signal TACC, and becomes “HIGH” after this period.

DATA信号は、メモリに対する書き込みデータ又は読み出しデータをメモリ制御回路とメモリ間で転送するための信号である。メモリに記憶されたデータは、ステート信号がTACCから他の信号に切り替わるタイミングで読み出される。   The DATA signal is a signal for transferring write data or read data for the memory between the memory control circuit and the memory. The data stored in the memory is read at a timing when the state signal is switched from TACC to another signal.

ローバイトセレクト信号nLBは、メモリの下位側のビット(バイト)を選択することを示す信号であり“LOW”になると活性化する。例えば16ビットメモリを使用した場合、nLBが“LOW”になると下位8ビット(1バイト)が選択される。このローバイトセレクト信号nLBが“LOW”となる期間は、アクセスを行うメモリが16ビットメモリであり、かつチップセレクト信号nCSが“LOW”となる期間である。なおアクセスを行うメモリが8ビットの場合にはnLB信号は“HIGH”となる。   The low byte select signal nLB is a signal indicating that the lower bit (byte) of the memory is selected, and is activated when it becomes “LOW”. For example, when a 16-bit memory is used, when nLB becomes “LOW”, the lower 8 bits (1 byte) are selected. The period when the low byte select signal nLB is “LOW” is a period when the memory to be accessed is a 16-bit memory and the chip select signal nCS is “LOW”. When the memory to be accessed is 8 bits, the nLB signal becomes “HIGH”.

nHB/nWRHは、端子がnHBとnWRHとで兼用され、接続されるメモリの種類によって切り替えられる。
ハイバイトセレクト信号nHBは、メモリの上位側、例えば16ビットの内上位8ビット(1バイト)を選択する信号であり、アクセスするメモリが16ビットメモリの時のみ活性化する信号である。
ライトハイバイト信号nWRHは、メモリに書き込みを行う信号でありデータバスの上位側が有効であることを示す信号である。
nHB / nWRH has a terminal shared by nHB and nWRH, and is switched depending on the type of memory to be connected.
The high byte select signal nHB is a signal for selecting the upper side of the memory, for example, the upper 8 bits (1 byte) of 16 bits, and is activated only when the memory to be accessed is a 16-bit memory.
The write high byte signal nWRH is a signal for writing to the memory and indicates that the upper side of the data bus is valid.

メモリへのアクセスが、例えば16ビットメモリから、アクセスを行うメモリが各アドレスに記憶されるビット数が8ビットからなるメモリを2つ備えたメモリ(8bit×2メモリ、以下、8ビットメモリとする)に切り替わる時には、端子がnHBからnWRHに切り替わる。図5ではアクセスするメモリが16ビットなので、この時端子はnHBとして機能している。   Access to the memory is, for example, a 16-bit memory, and a memory having two memories each having an 8-bit number of bits stored in each address (8-bit × 2 memory, hereinafter referred to as 8-bit memory) ), The terminal switches from nHB to nWRH. Since the memory to be accessed is 16 bits in FIG. 5, the terminal functions as nHB at this time.

なお、読み出しの動作において、nHB/nWRHは、16ビットメモリにアクセスする場合チップセレクト信号nCSが“LOW”となる期間で“LOW”となり、8ビットメモリにアクセスする場合は“HIGH”となる。   In the read operation, nHB / nWRH is “LOW” when the chip select signal nCS is “LOW” when accessing the 16-bit memory, and “HIGH” when accessing the 8-bit memory.

次に、図5のタイムチャートについて説明する。<内部信号>はメモリ制御回路内の信号を示し、<端子>はメモリ制御回路からメモリに出力される信号を示している。   Next, the time chart of FIG. 5 will be described. <Internal signal> indicates a signal in the memory control circuit, and <Terminal> indicates a signal output from the memory control circuit to the memory.

まず、<内部信号>について説明する。
アドレスバスにt0からt1の期間CPUからアクセスを行うメモリのアドレスA0が指定される。
同時に、t0でValidが“HIGH”となり、それに応じてt1でステート信号がIDLEからTACSへ変化する。
Validはステート信号がIDLE以外の期間と同クロック周期経過後、すなわちt4で“LOW”になる。
First, <internal signal> will be described.
The address A0 of the memory that is accessed from the CPU during the period from t0 to t1 is designated on the address bus.
At the same time, Valid becomes “HIGH” at t0, and the state signal changes from IDLE to TACS at t1 accordingly.
Valid becomes “LOW” after the same clock cycle as the period other than the period when the state signal is IDLE, that is, at t4.

ステート信号は、IDLE→TACS→TCOS→TACC→TCOH→IDLEの順に変化する。まずt1でTACSに変化し、t2でTCOS、t3でTACC、t4でTCOH、となる。また、ステート信号は、t4でValidが“LOW”となることによりt5でIDLEに変化する。   The state signal changes in the order of IDLE → TACS → TCOS → TACC → TCOH → IDLE. First, it changes to TACS at t1, TCOS at t2, TACC at t3, and TCOH at t4. Further, the state signal changes to IDLE at t5 when Valid becomes “LOW” at t4.

次に、<端子>の信号について説明する。これらの信号はすべて、ステート信号に基づいて変化する。
まず、ステート信号がTACSに変化するt1でアドレス信号ADDRに、CPUからアドレスバスに指定されたアドレスA0が指定される。
そして、ステート信号がTCOSに変化するt2でチップセレクト信号が“LOW”になる。
同時にアクセスするメモリが16ビットメモリなのでnLBが“LOW”となり、nHB/nWRHも“LOW”となる。
次に、ステート信号がTACCに変化するt3で、リード信号nRDが“LOW”となる。
ステート信号がTACCからTCOHに変化するt4でリード信号nRDが“HIGH”となり、アドレスA0に記憶されていたデータD0がDATA信号に読み出される。
なお、読み出されたデータD0は、<内部信号>のデータバスに出力される。
そして、ステート信号がIDLEに変化するt5で、チップセレクト信号nCSが“HIGH”となり、アドレス信号ADDRのアドレスA0の指定が終了する。
Next, the signal of <terminal> will be described. All of these signals change based on the state signal.
First, at t1 when the state signal changes to TACS, the address A0 specified by the CPU on the address bus is specified as the address signal ADDR.
The chip select signal becomes “LOW” at t2 when the state signal changes to TCOS.
Since the memory to be accessed at the same time is a 16-bit memory, nLB becomes “LOW” and nHB / nWRH also becomes “LOW”.
Next, at t3 when the state signal changes to TACC, the read signal nRD becomes “LOW”.
At t4 when the state signal changes from TACC to TCOH, the read signal nRD becomes “HIGH”, and the data D0 stored at the address A0 is read to the DATA signal.
The read data D0 is output to the data bus of <internal signal>.
At t5 when the state signal changes to IDLE, the chip select signal nCS becomes “HIGH”, and the designation of the address A0 of the address signal ADDR is completed.

このように、メモリ制御回路ではメモリの読み出しまたは書き込みに対する状態に対するステート信号TACS、TCOS、TACC、TCOHが設定されていて、読み出しまたは書き込みを行う期間のtaccに対して、アドレスのセットアップやバンク選択のセットアップのための期間tacs、tcos、tcohを設けている。   As described above, in the memory control circuit, the state signals TACS, TCOS, TACC, and TCOH for the state for reading or writing of the memory are set, and address setup and bank selection are performed for tacc during the period of reading or writing. Periods tacs, tcos, and tcoh for setup are provided.

本実施の形態では、1クロック期間を1とするとtacs=tcos=tcoh=1、tacc=3であり、この期間に応じてステート信号が変化する。書き込み又は読み出しを行う期間であるtaccは0以外の値であるが、tacs、tcos、tcohは、高速にアクセスを行う場合には0に設定することが可能となっている。
特開平11−328095号公報
In this embodiment, if one clock period is 1, tacs = tcos = tcoh = 1 and tacc = 3, and the state signal changes according to this period. Although tacc, which is a period during which writing or reading is performed, is a value other than 0, tacs, tcos, and tcoh can be set to 0 when accessing at high speed.
Japanese Patent Laid-Open No. 11-328095

図6は、従来のメモリ制御回路による問題を説明するためのタイムチャートである。
この例では、メモリ制御回路がアクセスするメモリとして16ビットメモリ(以下バンク0とする)と8ビットメモリ(以下バンク1とする)との2つのバンクが接続されている。
メモリ制御回路は読み出しおよび書き込みの指示をCPUからアドレスバス、データバスを介して受け、Valid、ステート信号の各信号を生成する。
また、メモリ制御回路は、接続された複数のメモリに対してアドレス信号ADDR、バンク0へのチップセレクト信号nCS0、バンク1へのチップセレクト信号nCS1、リード信号nRD、ローバイトセレクト信号nLB、nHB/nWRH信号を出力する端子および、DATA信号を入出力する端子を備えている。
16ビットメモリであるバンク0は、メモリ制御回路の出力に対応して、アドレス信号ADDR、チップセレクト信号nCS0、リード信号nRD、ローバイトセレクト信号nLB、nHB信号を入力する端子および、DATA信号を入出力する端子を備えている。
FIG. 6 is a time chart for explaining a problem caused by a conventional memory control circuit.
In this example, two banks of a 16-bit memory (hereinafter referred to as bank 0) and an 8-bit memory (hereinafter referred to as bank 1) are connected as memories accessed by the memory control circuit.
The memory control circuit receives read and write instructions from the CPU via the address bus and data bus, and generates Valid and state signal signals.
In addition, the memory control circuit performs an address signal ADDR, a chip select signal nCS0 to the bank 0, a chip select signal nCS1 to the bank 1, a read signal nRD, a low byte select signal nLB, nHB / A terminal for outputting an nWRH signal and a terminal for inputting and outputting a DATA signal are provided.
Bank 0, which is a 16-bit memory, inputs a terminal for inputting an address signal ADDR, a chip select signal nCS0, a read signal nRD, a low byte select signal nLB, an nHB signal and a DATA signal corresponding to the output of the memory control circuit. A terminal for output is provided.

一方、8ビットメモリであるバンク1は、メモリ制御回路の出力に対応して、アドレス信号ADDR、チップセレクト信号nCS1、リード信号nRD、nWRH信号を入力する端子および、DATA信号を入出力する端子を備えている。
以上の各信号はCPUにて、メモリ制御回路を動作するために設定されるシステムクロックCLKに同期して変化する。
On the other hand, bank 1, which is an 8-bit memory, has terminals for inputting address signal ADDR, chip select signal nCS1, read signal nRD, nWRH and terminals for inputting / outputting DATA signals corresponding to the output of the memory control circuit. I have.
Each of the above signals changes in synchronization with the system clock CLK set for operating the memory control circuit in the CPU.

次に、図6のタイムチャートについて説明する。
この図6の場合では、高速アクセスを行うためバンク0、バンク1ともにステート信号に応じてtacs=tcos=tcoh=0と設定している。なおバンク0に対するtacs、tcos、tacc、tcohをそれぞれtacs0、tcos0、tacc0、tcoh0とし、バンク1に対するtacs、tcos、tacc、tcohをそれぞれtacs1、tcos1、tacc1、tcoh1とする。またバンク0に対するValid、ステート信号をそれぞれ、Valid0、ステート0信号とし、バンク1に対するValid、ステート信号をそれぞれ、Valid1、ステート1信号とする。
Next, the time chart of FIG. 6 will be described.
In the case of FIG. 6, tacs = tcos = tcoh = 0 is set in accordance with the state signal in both bank 0 and bank 1 for high speed access. Note that tacs, tcos, tacc, and tcoh for bank 0 are tacs0, tcos0, tacc0, and tcoh0, respectively, and tacs, tcos, tacc, and tcoh for bank 1 are tacs1, tcos1, tacc1, and tcoh1, respectively. The valid and state signals for bank 0 are the Valid0 and state 0 signals, respectively, and the valid and state signals for bank 1 are the Valid1 and state 1 signals, respectively.

まず、<内部信号>について説明する。
アドレスバスにCPUから、t0からt1の期間バンク0のアドレスA0が指定され、続いてt1からt3の期間バンク1のアドレスA1が指定される。
バンク0のアドレスA0の指定によってt0でValid0が“HIGH”となる。
Valid0はステート0信号がIDLE以外の期間と同一のクロック周期経過後、すなわちt2で“LOW”になる。
そして、Valid0が“HIGH”であることによって、t1でステート0信号がIDLEからTACCに変化する。この例の場合tacs0=tcos0=tcoh0=0なのでステート0信号はIDLE→TACC→IDLEの順で変化する。
また、ステート0信号は、t2でValid0が“LOW”となるのに応じて、t3でTACCからIDLEに変化する。
First, <internal signal> will be described.
The address A0 of the bank 0 is specified from the CPU to the address bus during the period t0 to t1, and then the address A1 of the bank 1 is specified from the time t1 to t3.
By specifying the address A0 of the bank 0, Valid0 becomes “HIGH” at t0.
Valid0 becomes “LOW” after the same clock period has elapsed in the state 0 signal other than the period other than IDLE, that is, at t2.
When Valid0 is “HIGH”, the state 0 signal changes from IDLE to TACC at t1. In this example, since tacs0 = tcos0 = tcoh0 = 0, the state 0 signal changes in the order of IDLE → TACC → IDLE.
Further, the state 0 signal changes from TACC to IDLE at t3 in response to Valid0 becoming “LOW” at t2.

一方、t2では、Valid0が“LOW”となるのと同時に、アドレスバスのアドレスA1の指定に応じたValid1が“HIGH”となる。
Valid1はステート1信号がIDLE以外の期間と同一のクロック周期経過後、すなわちt4で“LOW”になる。
そして、Valid1が“HIGH”であることによって、t3でステート1信号がIDLEからTACCに変化する。この例の場合tacs1=tcos1=tcoh1=0なのでステート1信号はIDLE→TACC→IDLEの順で変化する。
また、ステート1信号は、t4でValid1が“LOW”となることによって、t5でTACCからIDLEに変化する
次に、<端子>の信号について説明する。これらの信号はすべて、ステート信号に基づいて変化する。
まず、ステート0信号がTACCに変化するt1でアドレス信号ADDRに、CPUからアドレスバスに指定されたアドレスA0が指定される。
同時にバンク0のチップセレクト信号nCS0、リード信号nRD、ローバイトセレクト信号nLB、nHB/nWRH信号が“LOW”になり、バンク0の読み出しのアクセスが開始する。
そして、ステート0信号がTACCからIDLEに変化し、ステート1信号がIDLEからTACCに変化するt3では、アドレス信号ADDRの指定がバンク0のアドレスA0からバンク1のアドレスA1に切り替わる。また、バンク0のチップセレクト信号nCS0が“HIGH”となり、バンク1のチップセレクト信号nCS1が“LOW”となる。
この場合、バンク0とバンク1の連続読み出しとなるのでリード信号nRDは、t3で“LOW”のままである。
On the other hand, at t2, Valid0 becomes “LOW” and at the same time, Valid1 according to the designation of the address A1 of the address bus becomes “HIGH”.
Valid1 becomes “LOW” after the same clock period as that of the period other than IDLE in the state 1 signal, that is, at t4.
When Valid1 is “HIGH”, the state 1 signal changes from IDLE to TACC at t3. In this example, since tacs1 = tcos1 = tcoh1 = 0, the state 1 signal changes in the order of IDLE → TACC → IDLE.
The state 1 signal changes from TACC to IDLE at t5 when Valid1 becomes “LOW” at t4. Next, the signal at <terminal> will be described. All of these signals change based on the state signal.
First, at t1 when the state 0 signal changes to TACC, the address A0 designated by the CPU on the address bus is designated as the address signal ADDR.
At the same time, the chip select signal nCS0, the read signal nRD, the low byte select signal nLB, and the nHB / nWRH signal of the bank 0 become “LOW”, and the read access of the bank 0 is started.
Then, at t3 when the state 0 signal changes from TACC to IDLE and the state 1 signal changes from IDLE to TACC, the designation of the address signal ADDR is switched from the address A0 of the bank 0 to the address A1 of the bank 1. Further, the chip select signal nCS0 of the bank 0 becomes “HIGH”, and the chip select signal nCS1 of the bank 1 becomes “LOW”.
In this case, since the bank 0 and the bank 1 are continuously read, the read signal nRD remains “LOW” at t3.

また、アクセスを行うメモリが16ビットメモリから8ビットメモリになるので、ローバイトセレクト信号nLB、nHB/nWRH信号はt3で“HIGH”となる。
アドレスA0に記憶されていたデータD0はDATA信号に読み出される。
なお、読み出されたデータD0は、<内部信号>のデータバスに出力される。
同時に、t3ではステート1信号の変化によってチップセレクト信号nCS1が“LOW”になり、バンク1の読み出しのアクセスが開始する。
ステート1信号がTACCからIDLEに変化するt5でリード信号nRD、チップセレクト信号nCS1が“HIGH”になり、アドレス信号ADDRによるアドレスA1の指定が終了する。
アドレスA1に記憶されていたデータD1はDATA信号に読み出される。なお、読み出されたデータD1は、<内部信号>のデータバスに出力される。
Since the memory to be accessed is changed from the 16-bit memory to the 8-bit memory, the low byte select signals nLB and nHB / nWRH signals become “HIGH” at t3.
Data D0 stored at address A0 is read out to the DATA signal.
The read data D0 is output to the data bus of <internal signal>.
At the same time, the change of the state 1 signal causes the chip select signal nCS1 to be “LOW” at t3, and the bank 1 read access is started.
At t5 when the state 1 signal changes from TACC to IDLE, the read signal nRD and the chip select signal nCS1 become “HIGH”, and the designation of the address A1 by the address signal ADDR is completed.
The data D1 stored at the address A1 is read to the DATA signal. The read data D1 is output to the data bus of <internal signal>.

この図6のタイムチャートのように高速アクセスを行うためステート信号のTACS、TCOS、TCOHをパスした場合、Valid0とValid1の“HIGH”の期間の切り替わりがt2において連続となり、アドレス信号ADDRのA0からA1への指定の切り替えも連続となる。また、この場合、チップセレクト信号nCS0の“LOW”から“HIGH”への変化と、チップセレクト信号nCS1の“HIGH”から“LOW”への変化とは、同じタイミングのt3となる。   As shown in the time chart of FIG. 6, when the state signals TACS, TCOS, and TCOH are passed to perform high-speed access, switching between Valid0 and Valid1 “HIGH” period is continuous at t2, and from A0 of the address signal ADDR. The designation switching to A1 is also continuous. In this case, the change of the chip select signal nCS0 from “LOW” to “HIGH” and the change of the chip select signal nCS1 from “HIGH” to “LOW” are t3 of the same timing.

nHB/nWRHの端子は、バンク1の8ビットのメモリへの切り替わりに応じてnHBからnWRHに切り替えられ、nHB/nWRHの信号は、バンク1に書き込みが行われないように“LOW”から“HIGH”に変化する。このnHB/nWRHの“HIGH”への立ち上がりのタイミングが、回路の遅延などで図6に示す点線のように遅れた場合、チップセレクト信号nCS1とnWRH信号とリード信号nRDがすべて“LOW”となる期間が生じる。よってバンク1の書き込みと読み出しが不定となり誤動作を起こす恐れがある。   The nHB / nWRH terminal is switched from nHB to nWRH in accordance with the switching to the 8-bit memory of bank 1, and the nHB / nWRH signal is changed from “LOW” to “HIGH so that writing to bank 1 is not performed. To change. When the rising timing of nHB / nWRH to “HIGH” is delayed as indicated by a dotted line in FIG. 6 due to a circuit delay or the like, the chip select signal nCS1, the nWRH signal, and the read signal nRD all become “LOW”. A period arises. Therefore, writing and reading of the bank 1 are indefinite and there is a risk of malfunction.

このように、従来のメモリ制御回路では、異なるバンクに連続してアクセスを行う場合に、アクセスの遅延による誤動作の恐れがあるという問題があった。   As described above, the conventional memory control circuit has a problem that there is a risk of malfunction due to access delay when accessing different banks successively.

本発明は、複数の異なるバンクに連続アクセスをしてもアクセスの遅延による誤動作を防止するメモリ制御回路を提供することを目的とする。   It is an object of the present invention to provide a memory control circuit that prevents malfunction due to access delay even when consecutive accesses are made to a plurality of different banks.

本発明に係る主たる発明は、複数のバンクを有するメモリに対するアクセスを制御する制御回路、前記複数のバンクのアドレスを選択的に指定するための第1信号と、前記複数のバンクを選択的に活性化するための第2信号に基づいて、前記メモリに対するアクセス方法を判定するアクセス判定回路と、前記複数のバンクに対するアドレスの指定から活性化までの期間を設定する第1の設定回路と、を備え、前記アクセス判定回路は、前記第1信号が前記複数のバンクを指定し、前記第2信号が当該複数のバンクを連続して活性化させることを示す場合の判定結果に基づいて、前記第1の設定回路に対して前記複数のバンクに対するアドレスの指定と活性化を同時とすることを示す値が設定されているときには、当該複数のバンクの活性化が切り替わる際に当該複数のバンクをともに非活性化とする期間を設けるべく、前記制御回路を制御する、ことを特徴とするメモリ制御回路であるThe present invention The main invention of the includes a control circuit for controlling access to the memory having a plurality of banks, a first signal for selectively specifying the address of the plurality of banks, selectively said plurality of banks An access determination circuit for determining an access method for the memory based on a second signal for activation, and a first setting circuit for setting a period from address designation to activation for the plurality of banks ; wherein the access judging circuit, the first signal specifying a plurality of banks, the second signal is based on the determination result of the case showing that activates sequentially the plurality of banks, the first when the value indicating that the simultaneous designation and activation of address to the plurality of banks to one of the setting circuit is set, activation of the plurality of banks To provide a period in which both the deactivate the plurality of banks when switching, to control the control circuit, a memory control circuit, characterized in that.

本発明の他の特徴については、添付図面及び本明細書の記載により明らかとなる。   Other features of the present invention will become apparent from the accompanying drawings and the description of this specification.

本発明によれば複数の異なるバンクに連続アクセスをしてもアクセスの遅延による誤動作を防止することができる。   According to the present invention, it is possible to prevent malfunction due to access delay even when consecutive accesses are made to a plurality of different banks.

===メモリ制御回路の構成===
図1は、本発明の実施の形態に係るメモリ制御回路を説明するためのブロック図である。なお、図1に示すメモリ制御回路は集積回路であることとする。
=== Configuration of Memory Control Circuit ===
FIG. 1 is a block diagram for explaining a memory control circuit according to an embodiment of the present invention. Note that the memory control circuit shown in FIG. 1 is an integrated circuit.

また、以後の説明では集積回路の内部を内部とし、集積回路の外部を外部と呼ぶことにする。
集積回路100は、CPU200とメモリ制御回路300とを備えている。また本実施の形態では、メモリ制御回路300はCPU200からの指示に基づきメモリ400とメモリ500に対してアクセスを行い読み出しまたは書き込みを行う。
ここで、メモリ400(以下バンク0とする)には、例えば16ビットメモリが接続され、また、メモリ500(以下バンク1とする)には、例えば8ビットメモリが接続される。これらのメモリは例えばSRAMを使用することができる。
CPU200は、メモリ400、500に対してデータの書き込み又は読み出しを行うための信号を内部バスに出力する。
In the following description, the inside of the integrated circuit is referred to as the inside, and the outside of the integrated circuit is referred to as the outside.
The integrated circuit 100 includes a CPU 200 and a memory control circuit 300. In the present embodiment, the memory control circuit 300 accesses the memory 400 and the memory 500 based on an instruction from the CPU 200 to perform reading or writing.
Here, a 16-bit memory, for example, is connected to the memory 400 (hereinafter referred to as bank 0), and an 8-bit memory, for example, is connected to the memory 500 (hereinafter referred to as bank 1). For example, SRAM can be used as these memories.
The CPU 200 outputs a signal for writing or reading data to or from the memories 400 and 500 to the internal bus.

メモリ制御回路300は、内部バスから、バンクのアドレスを選択的に指定するためのアドレスバス、データ転送を行うためのデータバスを接続している。
またメモリ制御回路300は、内部バスから、メモリにアクセスすることを示すセレクト信号、内部バスが活性か否かを示す状態信号、メモリ制御回路300を動作させるためのシステムクロックCLKを入力している。
そして、メモリ制御回路300は、CPU200からの指示に基づき、外部に接続されたメモリ400、500に対し、アドレス信号ADDR、DATA信号、バンク0に対するチップセレクト信号nCS0、バンク1に対するチップセレクト信号nCS1、ローバイトセレクト信号nLB、リード信号nRD、およびnWR/nWRL、nHB/nWRHの信号を入出力し、書き込み又は読み出しのアクセスを行う。
The memory control circuit 300 is connected to an address bus for selectively designating bank addresses and a data bus for data transfer from an internal bus.
The memory control circuit 300 receives from the internal bus a select signal indicating access to the memory, a status signal indicating whether the internal bus is active, and a system clock CLK for operating the memory control circuit 300. .
Then, based on an instruction from the CPU 200, the memory control circuit 300 sends an address signal ADDR, a DATA signal, a chip select signal nCS 0 for the bank 0, a chip select signal nCS 1 for the bank 1 to the externally connected memories 400, 500. Low byte select signal nLB, read signal nRD, and nWR / nWRL and nHB / nWRH signals are input / output to perform write or read access.

なお、nWR/nWRLは、端子がnWRとnWRLとで兼用されていて、接続されるメモリの種類によって切り替えられる。ライト信号nWRは、書き込みを行うための信号であり、ライトローバイト信号nWRLは、書き込みを行う信号でありデータバスの下位側が有効であることを示す信号である。nWR/nWRLの端子はアクセスを行うメモリが16ビットメモリの時はnWRに、アクセスを行うメモリが8ビットメモリの時はnWRLに切り替えられる。   It should be noted that nWR / nWRL has a terminal shared by nWR and nWRL, and is switched according to the type of memory to be connected. The write signal nWR is a signal for performing writing, and the write raw byte signal nWRL is a signal for performing writing and indicates that the lower side of the data bus is valid. The nWR / nWRL terminal is switched to nWR when the memory to be accessed is a 16-bit memory, and to nWRL when the memory to be accessed is an 8-bit memory.

メモリ400(バンク0)は、メモリ制御回路300の出力に対応して、アドレス信号ADDR、チップセレクト信号nCS0、リード信号nRD、ローバイトセレクト信号nLB、nHB信号、nWR信号を入力する端子および、DATA信号を入出力する端子を備えている。   The memory 400 (bank 0) corresponds to the output of the memory control circuit 300, a terminal for inputting an address signal ADDR, a chip select signal nCS0, a read signal nRD, a low byte select signal nLB, an nHB signal, and an nWR signal, and DATA A terminal for inputting and outputting signals is provided.

一方、メモリ500(バンク1)は、メモリ制御回路300の出力に対応して、アドレス信号ADDR、チップセレクト信号nCS1、リード信号nRD、nWRH信号、nWRL信号を入力する端子および、DATA信号を入出力する端子を備えている。   On the other hand, the memory 500 (bank 1) inputs / outputs a terminal for inputting an address signal ADDR, a chip select signal nCS1, a read signal nRD, an nWRH signal, an nWRL signal, and a DATA signal corresponding to the output of the memory control circuit 300. It has a terminal to do.

また、メモリ制御回路300は、レジスタアクセス回路10、レジスタ(『設定回路』)20、21、状態制御回路(『制御回路』)30、31、外部インターフェイス回路40、メモリアクセス検出回路50、アクセス判定回路60を備えている。以上の回路は、すべて内部バスから入力されるクロックCLKに同期して動作を行う。   The memory control circuit 300 includes a register access circuit 10, registers ("setting circuit") 20, 21, state control circuits ("control circuit") 30, 31, an external interface circuit 40, a memory access detection circuit 50, an access determination. A circuit 60 is provided. All the circuits described above operate in synchronization with the clock CLK input from the internal bus.

レジスタアクセス回路10は、内部バスから入力した信号の内、レジスタにアクセスする信号を判別し、対応するレジスタ群20または21に出力する。
レジスタ群20は、レジスタ70、71、72、73、74、75の各レジスタを有している。
レジスタ71は、アクセスを行うメモリのアドレスの指定からメモリが活性化するまでの期間tacsに相当する値が設定されるものである。
レジスタ72は、メモリの活性化から読み出し開始までの期間tcosに相当する値が設定されるものである。
レジスタ73は、メモリの書き込み又は読み出しを実行する期間taccに相当する値が設定されるものである。
レジスタ74は、書き込み又は読み出し終了からメモリが非活性になるまでの期間tcohに相当する値が設定されるものである。
レジスタ75は、外部に接続されたメモリの種類により端子の設定を切り替えるための値が設定されるものである。例えば、アクセスを行うメモリが8ビットか16ビットかを示すCPU200からの入力によって、nHB/nWRHの端子はnHBまたはnWRHに切り替えられる。
レジスタ70は、異なる複数のバンクで連続したアクセスが行われるときに追加される期間(『複数のバンクをともに非活性化とする期間』)に相当する値が設定されるものある。
これらの各レジスタ70乃至75の値は、CPU200によって設定される。
The register access circuit 10 determines a signal for accessing the register among the signals input from the internal bus, and outputs the signal to the corresponding register group 20 or 21.
The register group 20 includes registers 70, 71, 72, 73, 74, and 75.
The register 71 is set with a value corresponding to a period tacs from the designation of the address of the memory to be accessed until the memory is activated.
The register 72 is set with a value corresponding to a period tcos from the activation of the memory to the start of reading.
The register 73 is set with a value corresponding to a period tacc for executing writing or reading of the memory.
The register 74 is set with a value corresponding to a period tcoh from the end of writing or reading until the memory becomes inactive.
The register 75 is set with a value for switching the terminal setting depending on the type of memory connected to the outside. For example, the terminal of nHB / nWRH is switched to nHB or nWRH by an input from the CPU 200 indicating whether the memory to be accessed is 8 bits or 16 bits.
The register 70 is set to a value corresponding to a period (“period in which both banks are deactivated”) added when consecutive accesses are performed in a plurality of different banks.
The values of these registers 70 to 75 are set by the CPU 200.

なお、レジスタ群21はレジスタ群20と同様に構成されている。メモリ制御回路300は、バンク数と同数のレジスタ群20、21を備えている。   The register group 21 is configured in the same manner as the register group 20. The memory control circuit 300 includes the same number of register groups 20 and 21 as the number of banks.

状態制御回路30は、レジスタ群20で設定された値と、メモリアクセス検出回路50から出力されるValidと、アクセス判定回路60の出力とに基づいて、メモリへのアクセス状態を示す信号IDLE、TACS、TCOS、TACC、TCOHの出力の制御を行う。
この制御を行うため、状態制御回路30は、レジスタ群20のレジスタ71、72、73、74の値をそれぞれダウンカウントするACSカウンタ、COSカウンタ、ACCカウンタ、COHカウンタを備えている。そして、状態制御回路30は、各レジスタ70乃至75に設定された値からクロックCLKに同期してダウンカウントし、レジスタ値が「0」となるまでの期間をそれぞれTACS、TCOS、TACC、TCOHの状態とする信号を出力する。この信号によって外部インターフェイス回路40から出力される信号の状態が制御される。
なお、状態制御回路31は、状態制御回路30と同様に構成されている。本実施の形態ではレジスタ群20、21に対応して状態制御回路30、31を設けているが、状態制御回路30、31は1つでもよい。例えば、状態制御回路30に、レジスタ群20、21からそれぞれの値が入力され適宜切り替えるようになっていてもよい。
Based on the value set in the register group 20, the Valid output from the memory access detection circuit 50, and the output of the access determination circuit 60, the state control circuit 30 generates signals IDLE and TACS indicating the access state to the memory. , TCOS, TACC, and TCOH outputs are controlled.
In order to perform this control, the state control circuit 30 includes an ACS counter, a COS counter, an ACC counter, and a COH counter that down-counts the values of the registers 71, 72, 73, and 74 of the register group 20, respectively. Then, the state control circuit 30 counts down from the values set in the registers 70 to 75 in synchronization with the clock CLK, and sets the period until the register value becomes “0” as TACS, TCOS, TACC, and TCOH, respectively. Outputs a signal to set the state. The state of the signal output from the external interface circuit 40 is controlled by this signal.
The state control circuit 31 is configured in the same manner as the state control circuit 30. In this embodiment, the state control circuits 30 and 31 are provided corresponding to the register groups 20 and 21, but the number of the state control circuits 30 and 31 may be one. For example, each value may be input to the state control circuit 30 from the register groups 20 and 21 so as to be switched as appropriate.

メモリアクセス検出回路50は、内部バスから外部のメモリにアクセスすることを検出する回路であり、内部バスからメモリをアクセスすることを示すセレクト信号を入力し、外部のメモリにアクセスすることを示すValid(『第2信号』)を出力する。   The memory access detection circuit 50 is a circuit that detects that an external memory is accessed from the internal bus, and receives a select signal that indicates that the memory is accessed from the internal bus, and is valid that indicates that the external memory is accessed. ("Second signal") is output.

アクセス判定回路60は、アドレスバスと、Validと、内部バスがアクティブか否かを示す状態信号とに基づいて、外部のメモリへのアクセス方法を判定しその結果を状態制御回路30に出力する。
例えばアドレスバスが複数のバンクのアドレスを指定し、それに対応するバンクのValidが連続で“HIGH”となるとき、ACSカウンタはtacs、tareaに相当する値の加算値をダウンカウントする。
The access determination circuit 60 determines an access method to an external memory based on the address bus, Valid, and a status signal indicating whether the internal bus is active, and outputs the result to the status control circuit 30.
For example, when the address bus designates the addresses of a plurality of banks and the valid of the corresponding banks is continuously “HIGH”, the ACS counter counts down the added value corresponding to tacs and talent.

外部インターフェイス回路40は、アドレスバス、データバスの転送内容、レジスタ75の設定値、状態制御回路30の出力に応じて、メモリに対する入力、出力のタイミングが制御された、アドレス信号ADDR、DATA信号、チップセレクト信号nCS0、nCS1、ローバイトセレクト信号nLB、リード信号nRD、nWR/nWRL信号、nHB/nWRH信号を出力するものである。   The external interface circuit 40 has an address signal ADDR, a DATA signal, the timing of input and output to the memory controlled according to the transfer contents of the address bus and data bus, the set value of the register 75, and the output of the state control circuit 30. Chip select signals nCS0 and nCS1, low byte select signal nLB, read signal nRD, nWR / nWRL signal, and nHB / nWRH signal are output.

例えば、チップセレクト信号nCSは、状態制御回路30がIDLE又はTACSの信号を出力するときに“HIGH”となり、それ以外の場合には“LOW”となる。また、リード信号nRDは、状態制御回路30がIDLE、TACS、TCOS、TCOHの信号を出力するとき“HIGH”となり、TACCの信号を出力するとき“LOW”となる。また、nWR/nWRL、nHB/nWRHは、アクセスするメモリが16ビットか8ビットかを示すレジスタ群20内のレジスタ75によってそれぞれ切り替えられる。   For example, the chip select signal nCS becomes “HIGH” when the state control circuit 30 outputs an IDLE or TACS signal, and becomes “LOW” otherwise. The read signal nRD is “HIGH” when the state control circuit 30 outputs IDLE, TACS, TCOS, and TCOH signals, and “LOW” when the TACC signal is output. NWR / nWRL and nHB / nWRH are switched by a register 75 in the register group 20 indicating whether the memory to be accessed is 16 bits or 8 bits.

===状態制御回路30の出力変化===
図2は、本発明の実施の形態に係るメモリ制御回路300内の状態制御回路30の状態変化を説明するための図である。状態制御回路30は、外部のメモリ400、500にアクセスを行っていないときにはValidが“LOW”であり、メモリをIDLEの状態とするステート信号を出力している。ステート信号は、このIDLEから、通常前述のようにTACS→TCOS→TACC→TCOHの順で変化する。
=== Change in Output of State Control Circuit 30 ===
FIG. 2 is a diagram for explaining a state change of the state control circuit 30 in the memory control circuit 300 according to the embodiment of the present invention. When the external memory 400 or 500 is not accessed, the state control circuit 30 has a valid signal “LOW” and outputs a state signal for setting the memory to the IDLE state. The state signal changes from this IDLE in the order of TACS → TCOS → TACC → TCOH as described above.

この図2において、メモリアクセス検出回路50からValidが“LOW”すなわちメモリをアクセスしないことを示す信号が入力された場合には、状態制御回路30の出力がTACS、TCOS、TACC、TCOHのいずれのステート信号であっても、状態制御回路30の出力はIDLEのステート信号に変化する。以後、Validが“HIGH”であることを前提に説明する。   In FIG. 2, when Valid is “LOW”, that is, a signal indicating that the memory is not accessed is input from the memory access detection circuit 50, the output of the state control circuit 30 is any of TACS, TCOS, TACC, and TCOH. Even if it is a state signal, the output of the state control circuit 30 changes to an IDLE state signal. In the following description, it is assumed that Valid is “HIGH”.

また、図2における各カウンタ=1とは、クロックCLKの1周期のダウンカウントを行うことを示している。ダウンカウントはクロックCLKの整数倍の定倍CLKでこととする。例えばtacsの場合レジスタ71にクロックCLKの1周期に相当するレジスタ値が設定され、そのレジスタに対応するカウンタでダウンカウントを行う。そしてレジスタ値が「0」になったタイミングで次の状態に変化する。   Further, each counter = 1 in FIG. 2 indicates that one cycle of the clock CLK is counted down. The down count is assumed to be a fixed multiple CLK that is an integral multiple of the clock CLK. For example, in the case of tacs, a register value corresponding to one cycle of the clock CLK is set in the register 71, and down-counting is performed by a counter corresponding to the register. Then, it changes to the next state at the timing when the register value becomes “0”.

レジスタ71、レジスタ72、レジスタ74が0の場合には、ダウンカウントを行わず、次の状態へと変化する。
なお、前述したように書き込み又は読み出しを行う期間のレジスタ73は0以外が設定され、TACCがパスすることはない。
When the register 71, the register 72, and the register 74 are 0, the down count is not performed and the state is changed to the next state.
Note that, as described above, the register 73 during the period of writing or reading is set to a value other than 0, and the TACC is not passed.

《同バンクあるいは連続でないメモリアクセス時》
まず、ステート信号がIDLEである状態で、Validが“HIGH”となることでCPUにより指定されるメモリにアクセスを開始する。状態制御回路30は、tacs≠0の場合にはステート信号としてTACSを出力する。tacs=0かつtcos≠0の場合にはTCOSを出力する。また、tacs=0かつtcos=0の場合にはTACCと出力する。
<When accessing the same bank or non-contiguous memory>
First, in a state where the state signal is IDLE, when the Valid becomes “HIGH”, access to the memory designated by the CPU is started. The state control circuit 30 outputs TACS as a state signal when tacs ≠ 0. When tacs = 0 and tcos ≠ 0, TCOS is output. When tacs = 0 and tcos = 0, TACC is output.

ステート信号がTACSに変化すると、状態制御回路30内の、この状態に対応したACSカウンタにレジスタ71の値が取り込まれ、カウントが行われる。ACSカウンタにてクロックCLKの1周期のダウンカウントが終了すると、状態制御回路30は、tcos≠0の場合はステート信号としてTCOSを出力し、tcos=0の場合は、TACCを出力する。   When the state signal changes to TACS, the value of the register 71 is taken into the ACS counter corresponding to this state in the state control circuit 30 and counting is performed. When the ACS counter finishes counting down one cycle of the clock CLK, the state control circuit 30 outputs TCOS as a state signal when tcos ≠ 0, and outputs TACC when tcos = 0.

ステート信号がTCOSに変化すると、状態制御回路30内の、この状態に対応したCOSカウンタにレジスタ72の値が取り込まれ、カウントが行われる。COSカウンタにてクロックCLKの1周期のダウンカウントが終了すると、状態制御回路30は、TACCを出力する。   When the state signal changes to TCOS, the value of the register 72 is taken into the COS counter corresponding to this state in the state control circuit 30, and counting is performed. When the COS counter finishes counting down one cycle of the clock CLK, the state control circuit 30 outputs TACC.

ステート信号がTACCに変化すると、状態制御回路30内の、この状態に対応したACCカウンタにレジスタ73の値が取り込まれ、カウントが行われる。ACCカウンタにてクロックCLKの1周期のダウンカウントが終了すると状態制御回路30は、tcoh≠0の場合はステート信号としてTCOHを出力し、tcos=0の場合は、Validが“LOW”となりIDLEを出力する。   When the state signal changes to TACC, the value of the register 73 is taken into the ACC counter corresponding to this state in the state control circuit 30, and counting is performed. When the count down of one cycle of the clock CLK is completed by the ACC counter, the state control circuit 30 outputs TCOH as a state signal when tcoh ≠ 0, and when tcos = 0, Valid becomes “LOW” and IDLE is set. Output.

ステート信号がTCOHに変化すると、制御回路30内の、この状態に対応したCOHカウンタにレジスタ74の値が取り込まれ、カウントが行われる。COHカウンタにてクロックCLKの1周期のダウンカウントが終了すると、Validが“LOW”となり状態制御回路30はステート信号としてIDLEを出力する。   When the state signal changes to TCOH, the value of the register 74 is taken into the COH counter corresponding to this state in the control circuit 30, and counting is performed. When the COH counter finishes counting down one cycle of the clock CLK, Valid becomes “LOW” and the state control circuit 30 outputs IDLE as a state signal.

《異なるバンクに連続アクセス時》
本発明の状態制御回路30は、図2に示すように、異なるバンクに対して連続してアクセスをする場合、ステート信号がIDLEからTACSへ変化する設定としてレジスタ70とレジスタ71の加算値をACSカウンタに取り込むようにアクセス判定回路60によって制御される。このレジスタ70とレジスタ71の加算値tacs+tareaは、CPU200によって、0でない値が設定される。例えばクロックCLKの1クロック期間以上の値が設定される。よってtacs=0として設定されていても、TACSの状態をパスすることがなくなる。以下通常と同様に変化を行う。
なお、tareaの追加は、tacsの値に関係なく、異なるバンクに対して連続してアクセスをする場合に行うので、tacs+tareaとなる場合のtacsの値は0でなくてもよい。
<< When accessing different banks continuously >>
As shown in FIG. 2, when the state control circuit 30 of the present invention continuously accesses different banks, the state control circuit 30 sets the addition value of the register 70 and the register 71 as ACS by setting the state signal to change from IDLE to TACS. It is controlled by the access determination circuit 60 so as to be taken into the counter. The CPU 200 sets a value other than 0 as the addition value tacs + tare of the register 70 and the register 71. For example, a value longer than one clock period of the clock CLK is set. Therefore, even if tacs = 0 is set, the TACS state is not passed. Thereafter, changes are made as usual.
Note that the addition of “tare” is performed when accessing different banks continuously regardless of the value of “tacs”. Therefore, the value of “tacs” in the case of “tacs + teare” does not have to be zero.

===メモリ制御回路の動作===
図3は、図1における本発明の実施の形態に係るメモリ制御回路300の動作を説明するためのタイムチャートである。この図3は、メモリ400(バンク0)のアドレスA0から、メモリ500(バンク1)のアドレスA1に連続してアクセスを行う場合の一例を示している。
=== Operation of Memory Control Circuit ===
FIG. 3 is a time chart for explaining the operation of the memory control circuit 300 according to the embodiment of the present invention in FIG. FIG. 3 shows an example in which the address A0 of the memory 400 (bank 1) is continuously accessed from the address A0 of the memory 400 (bank 0).

なお、バンク0にはレジスタ群20、バンク1にはレジスタ群21が対応しているものとする。また、高速アクセスのため、レジスタ群20にはtacs0=tcos0=tcoh0=0、tacc0=3、tarea0=1が設定され、レジスタ群21にはtacs1=tcos1=tcoh1=0、tacc1=3、tarea1=0が設定されている。   It is assumed that register group 20 corresponds to bank 0 and register group 21 corresponds to bank 1. For high-speed access, the register group 20 is set to tacs0 = tcos0 = tcoh0 = 0, tacc0 = 3, and tara0 = 1. 0 is set.

各バンクへのアクセスにつき、バンク0に対するValidとステート信号をそれぞれValid0、ステート0信号とし、バンク1に対するValidとステート信号をそれぞれValid1、ステート1信号とする。   For access to each bank, Valid and state signals for bank 0 are set to Valid0 and State0 signals, respectively, and Valid and state signals for bank1 are set to Valid1 and State1 signals, respectively.

まず、<内部信号>について説明する。
CPUからアドレスバスに、t0からt1の期間にバンク0のアドレスA0が指定され、続いてt1からt3の期間にバンク1のアドレスA1が指定される。
バンク0のアドレスA0の指定によってt0でValid0が“HIGH”になる。
Valid0はステート0信号がIDLE以外の期間と同一のクロック周期経過後すなわちt2で“LOW”になる。
そして、Valid0が“HIGH”であることによって、t1でステート0信号がIDLEからTACCに変化する。この例の場合tacs0=tcos0=tcoh0=0なのでステート0信号はIDLE→TACC→IDLEの順で変化する。
また、ステート0信号は、t2でValid0が“LOW”となることによって、t3でTACCからIDLEに変化する。
First, <internal signal> will be described.
The address A0 of the bank 0 is specified from the CPU to the address bus during the period from t0 to t1, and then the address A1 of the bank 1 is specified during the period from t1 to t3.
By specifying the address A0 of the bank 0, Valid0 becomes “HIGH” at t0.
The Valid0 becomes “LOW” after the same clock cycle as the period other than the period when the state 0 signal is not IDLE, that is, at t2.
When Valid0 is “HIGH”, the state 0 signal changes from IDLE to TACC at t1. In this example, since tacs0 = tcos0 = tcoh0 = 0, the state 0 signal changes in the order of IDLE → TACC → IDLE.
Further, the state 0 signal changes from TACC to IDLE at t3 when Valid0 becomes “LOW” at t2.

一方、t2では、Valid0が“LOW”に変化するのと同時に、アドレスバスにおけるアドレスA1の指定に応じたValid1が“HIGH”となる。
Valid1はステート1信号がIDLE以外の期間と同一のクロック周期経過後すなわちt5で“LOW”になる。
そして、Valid1が“HIGH”であることによって、t3でステート1信号がIDLEから変化する。この場合異なるバンクへの連続アクセスとなるので、ステート1信号がTACSである期間としてtacs1+tarea0が設定される。ステート1信号はIDLE→TACS→TACC→IDLEの順で変化する。
On the other hand, at t2, Valid0 changes to “LOW”, and at the same time, Valid1 corresponding to the designation of address A1 on the address bus becomes “HIGH”.
Valid1 becomes “LOW” after the same clock period as that of the period other than IDLE has passed in the state 1 signal, that is, at t5.
Since Valid1 is “HIGH”, the state 1 signal changes from IDLE at t3. In this case, since continuous access to different banks is performed, tacs1 + tare0 is set as a period in which the state 1 signal is TACS. The state 1 signal changes in the order of IDLE → TACS → TACC → IDLE.

図3に示すようにステート1信号は、t3でIDLEからTACSに変化し、t4でTACCに変化する。そしてステート1信号は、t5でValid1が“LOW”に変化するのに応じてt6でTACCからIDLEに変化する
なお、内部バスが活性か否かを示す状態信号はアドレスバスにCPUからの指示がある期間はアクティブを示している。この場合、CPUがアドレスA0とアドレスA1を連続して指定しているので、状態信号はこの期間連続してアクティブを示している。
As shown in FIG. 3, the state 1 signal changes from IDLE to TACS at t3, and changes to TACC at t4. The state 1 signal changes from TACC to IDLE at t6 in response to Valid1 changing to “LOW” at t5. Note that the state signal indicating whether the internal bus is active is sent to the address bus by an instruction from the CPU. A period is active. In this case, since the CPU continuously designates the address A0 and the address A1, the status signal indicates active continuously during this period.

次に、<端子>の信号について説明する。これらの信号はすべて、ステート信号に基づいて変化する。
まず、ステート0信号がTACCに変化するt1でアドレス信号ADDRに、CPUからアドレスバスに指定されたアドレスA0が指定される。
同時にバンク0のチップセレクト信号nCS0、リード信号nRD、ローバイトセレクト信号nLB、nHB/nWRH信号が“LOW”になり、バンク0の読み出しのアクセスが開始する。
Next, the signal of <terminal> will be described. All of these signals change based on the state signal.
First, at t1 when the state 0 signal changes to TACC, the address A0 designated by the CPU on the address bus is designated as the address signal ADDR.
At the same time, the chip select signal nCS0, the read signal nRD, the low byte select signal nLB, and the nHB / nWRH signal of the bank 0 become “LOW”, and the read access of the bank 0 is started.

そして、ステート0信号がTACCからIDLEに変化し、ステート1信号がIDLEからTACSに変化するt3では、アドレス信号ADDRの指定がバンク0のアドレスA0からバンク1のアドレスA1に切り替わる。また、バンク0のチップセレクト信号nCS0が“HIGH”となる。ステート1信号がTACSの状態なので、バンク1のチップセレクト信号nCS1は“HIGH”のままであり、リード信号nRD“HIGH”となる。
また、アクセスを行うメモリが16ビットメモリから8ビットメモリになるので、ローバイトセレクト信号nLB、nHB/nWRH信号はt3で“HIGH”になる。
アドレスA0に記憶されていたデータD0はDATA信号に読み出される。
なお、読み出されたデータ信号D0は、<内部信号>のデータバスに出力される。
Then, at t3 when the state 0 signal changes from TACC to IDLE and the state 1 signal changes from IDLE to TACS, the designation of the address signal ADDR is switched from the address A0 of the bank 0 to the address A1 of the bank 1. Further, the chip select signal nCS0 of the bank 0 becomes “HIGH”. Since the state 1 signal is in the TACS state, the chip select signal nCS1 of the bank 1 remains “HIGH” and becomes the read signal nRD “HIGH”.
Further, since the memory to be accessed is changed from the 16-bit memory to the 8-bit memory, the low byte select signals nLB and nHB / nWRH signals become “HIGH” at t3.
Data D0 stored at address A0 is read out to the DATA signal.
The read data signal D0 is output to the <internal signal> data bus.

次に、ステート1信号がTACSからTACCに変化するt4で、チップセレクト信号nCS1が“LOW”となり、バンク1の読み出しのアクセスが開始する。
そして、ステート1信号がTACCからIDLEに変化するt6でリード信号nRD、チップセレクト信号nCS1が“HIGH”となり、アドレス信号ADDRによるアドレスA1の指定が終了する。
アドレスA1に記憶されていたデータD1はDATA信号に読み出される。
なお、読み出されたデータD1は、<内部信号>のデータバスに出力される。
Next, at t4 when the state 1 signal changes from TACS to TACC, the chip select signal nCS1 becomes “LOW”, and reading access to the bank 1 starts.
At time t6 when the state 1 signal changes from TACC to IDLE, the read signal nRD and the chip select signal nCS1 become “HIGH”, and the designation of the address A1 by the address signal ADDR is completed.
The data D1 stored at the address A1 is read to the DATA signal.
The read data D1 is output to the data bus of <internal signal>.

このように、異なるバンクへの連続アクセスの場合ステート信号のTACSの設定としてtareaを追加することにより、チップセレクト信号nCS0、nCS1をともに“HIGH”とする期間を設定することができ、nHB/nWRH信号が“HIGH”となるタイミングの遅れによる誤動作を防止することができる。   As described above, in the case of continuous access to different banks, by adding “tare” as the setting of the TACS of the state signal, it is possible to set a period in which both the chip select signals nCS0 and nCS1 are “HIGH”, and nHB / nWRH It is possible to prevent malfunction due to a delay in timing when the signal becomes “HIGH”.

===その他の実施の形態===
図4は、本発明のその他の実施の形態に係るメモリ制御回路300の動作を説明するためのタイムチャートである。
=== Other Embodiments ===
FIG. 4 is a time chart for explaining the operation of the memory control circuit 300 according to another embodiment of the present invention.

このタイムチャートは、例えばCPU200内部にデータを一時的に保存しておくキャッシュメモリ(不図示)およびキャッシュ専用のバス(不図示)を備えていて、メモリ制御回路300がキャッシュメモリとアクセスすることによって内部バスがIDLEとなる期間を含む場合の一例を示している。このように、CPU内部にキャッシュメモリを備え、キャッシュメモリに繰り返し使われる特定のデータを記憶しておくと、アクセス時間を大幅に短縮することができる。   This time chart includes, for example, a cache memory (not shown) for temporarily storing data in the CPU 200 and a cache-dedicated bus (not shown), and the memory control circuit 300 accesses the cache memory. An example in which the internal bus includes a period in which it is IDLE is shown. As described above, when the cache memory is provided in the CPU and specific data to be repeatedly used is stored in the cache memory, the access time can be greatly shortened.

この図4では、アドレスバスのA0とA1の指定が連続でなくt1からt2においてアドレスバスにCPUからのアドレスを指定する信号が無いという点で前述の実施の形態と異なっている。状態信号もアドレスバスに対応して、t1からt2において内部バスに信号が無いバスIDLEとなっている。   FIG. 4 is different from the above-described embodiment in that the designation of address buses A0 and A1 is not continuous and there is no signal for designating an address from the CPU on the address bus from t1 to t2. The status signal also corresponds to the address bus, and is a bus IDLE with no signal on the internal bus from t1 to t2.

しかしバンク0のValid0の“HIGH”から“LOW”の変化と、バンク1のValid1の“LOW”から“HIGH”への変化のタイミングは共にt2であり、外部のメモリに対しては、異なるバンクへの連続アクセスとなる。   However, the timing of change from “HIGH” to “LOW” of Valid0 of bank 0 and the timing of change from “LOW” to “HIGH” of Valid1 of bank 1 are both t2, and different banks are used for external memory. It becomes continuous access to.

このように内部バスにおいてアドレス指定の間にIDLE状態が存在しても、レジスタ群20、21の設定値によって、Valid0の立ち下がりとValid1の立ち上がりのタイミングが同時となり、アドレス信号ADDRの指定のA0からA1への切り替えが連続となることがある。
よって、この場合も、外部のメモリに対して、異なるバンクへの連続アクセスとなるのでメモリ制御回路300は、TACSの期間の設定としてtacs1にtarea0を追加する。
In this way, even if the IDLE state exists during address designation in the internal bus, the timing of the fall of Valid0 and the rise of Valid1 are the same, depending on the set values of the register groups 20 and 21, and the address signal ADDR designated A0 is designated. Switching from A1 to A1 may be continuous.
Therefore, in this case as well, since the external memory is continuously accessed to different banks, the memory control circuit 300 adds “tare0” to tacs1 as the setting of the TACS period.

以上説明したように、異なるバンクに連続でアクセスをする場合にステート信号がTACSである期間としてtacsにtareaを加算した値を設定することにより、チップセレクト信号nCS0、nCS1をともに“HIGH”とする期間を設けることができる。この期間では両バンクとも“HIGH”であるので、信号の遅延、例えばnHB/nWRH信号が“LOW”から“HIGH”になるタイミングの遅れによる誤動作を防止することができる
なお、本実施の形態ではtacs=0の場合について説明したが、tacsが0でない場合にも、異なるバンクに連続してアクセスする場合、ステート信号がTACSである期間としてtacsにtareaを加算した値を設定することにより、信号の遅延による誤動作を防止することができる
また、tacsが0の場合、すなわち高速アクセスによってアドレスの指定期間とバンクの活性化の期間が同時となる場合には、異なるバンクの活性化の切り替わり時に、バンクの活性化の切り替わりが同時となり誤動作が生じやすいので、tacs=0の場合にtareaを加算するようにしてもよい。この場合、高速アクセス時の誤動作を防止することができる。
このtareaの値の設定をするレジスタを、アクセスを行うバンクに対応して設けることにより、各バンクに対応してtareaを追加することができる。
As described above, the chip select signals nCS0 and nCS1 are both set to “HIGH” by setting a value obtained by adding “tare” to “tacs” as a period in which the state signal is TACS when accessing different banks continuously. A period can be provided. Since both banks are “HIGH” during this period, it is possible to prevent malfunction due to signal delay, for example, delay in timing when the nHB / nWRH signal changes from “LOW” to “HIGH”. Although the case where tacs = 0 is described, even when tacs is not 0, when continuously accessing different banks, the signal is obtained by setting a value obtained by adding “tare” to “tacs” as a period in which the state signal is TACS. In addition, when tacs is 0, that is, when the address designation period and the bank activation period are simultaneous due to high-speed access, when activation of different banks is switched, Since the activation of the bank is switched simultaneously and malfunction is likely to occur, tacs = 0 It may be added to the tarea in the case. In this case, malfunction during high-speed access can be prevented.
By providing a register for setting the value of the “tare” corresponding to the bank to be accessed, it is possible to add a “tare” corresponding to each bank.

また、ステート信号がTACSである期間としてtacsにtareaを加算した値はシステムクロックCLKの少なくとも1クロック期間とすることにより、バンク0とバンク1の活性化の期間の切り替わりが連続となることがなくなるので、誤動作を防止することができる。   Further, when the state signal is TACS and the value obtained by adding “tare” to “tacs” is set to at least one clock period of the system clock CLK, switching between the activation periods of the bank 0 and the bank 1 is not continuous. Therefore, malfunction can be prevented.

なお本発明では、内部信号にバスIDLEの期間が存在しても、メモリへのアクセスが連続となる時には、連続アクセスとみなしTACSの状態の期間を追加することで誤動作を防止することができる。   In the present invention, even if the bus IDLE period exists in the internal signal, when the access to the memory is continuous, it can be regarded as continuous access and the malfunction can be prevented by adding the period of the TACS state.

以上、本発明の実施の形態について、その実施の形態に基づき具体的に説明したが、これに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
例えば、メモリ400、500は、図1の構成でなくてもよい。またSRAM以外のメモリ、例えばFlashメモリなどを使用してもよい。
As mentioned above, although embodiment of this invention was described concretely based on the embodiment, it is not limited to this and can be variously changed in the range which does not deviate from the summary.
For example, the memories 400 and 500 do not have to have the configuration shown in FIG. Further, a memory other than SRAM, for example, a flash memory may be used.

本発明の形態に係るメモリ制御回路を説明するためのブロック図である。It is a block diagram for explaining a memory control circuit according to an embodiment of the present invention. 本発明の形態に係るメモリ制御回路内の制御回路の状態変化を説明するための図である。It is a figure for demonstrating the state change of the control circuit in the memory control circuit which concerns on the form of this invention. 本発明の形態に係るメモリ制御回路の動作を説明するためのタイムチャートである。6 is a time chart for explaining the operation of the memory control circuit according to the embodiment of the present invention. 本発明のその他の実施の形態に係るメモリ制御回路の動作を説明するためのタイムチャートである。It is a time chart for demonstrating operation | movement of the memory control circuit which concerns on other embodiment of this invention. 従来のメモリ制御回路の動作を説明するためのタイムチャートである。It is a time chart for demonstrating operation | movement of the conventional memory control circuit. 従来のメモリ制御回路の問題点を説明するためのタイムチャートである。It is a time chart for demonstrating the problem of the conventional memory control circuit.

符号の説明Explanation of symbols

10 レジスタアクセス回路
20、21 レジスタ
30、31 状態制御回路
40 外部インターフェイス回路
50 メモリアクセス検出回路
60 アクセス判定回路
100 集積回路
200 CPU
300 メモリ制御回路
400、500 メモリ
10 Register access circuit
20, 21 registers
30, 31 State control circuit 40 External interface circuit
50 Memory access detection circuit
60 Access determination circuit
100 integrated circuits
200 CPU
300 Memory control circuit
400, 500 memory

Claims (4)

複数のバンクを有するメモリに対するアクセスを制御する制御回路
前記複数のバンクのアドレスを選択的に指定するための第1信号と、前記複数のバンクを選択的に活性化するための第2信号に基づいて、前記メモリに対するアクセス方法を判定するアクセス判定回路と、
前記複数のバンクに対するアドレスの指定から活性化までの期間を設定する第1の設定回路と、を備え、
前記アクセス判定回路は、
前記第1信号が前記複数のバンクを指定し、前記第2信号が当該複数のバンクを連続して活性化させることを示す場合の判定結果に基づいて、前記第1の設定回路に対して前記複数のバンクに対するアドレスの指定と活性化を同時とすることを示す値が設定されているときには、当該複数のバンクの活性化が切り替わる際に当該複数のバンクをともに非活性化とする期間を設けるべく、前記制御回路を制御する、ことを特徴とするメモリ制御回路。
A control circuit for controlling access to the memory having a plurality of banks,
An access determination circuit for determining an access method to the memory based on a first signal for selectively designating addresses of the plurality of banks and a second signal for selectively activating the plurality of banks. When,
A first setting circuit for setting a period from address designation to activation for the plurality of banks ;
The access determination circuit includes:
Based on a determination result when the first signal designates the plurality of banks and the second signal indicates that the plurality of banks are continuously activated, the first setting circuit is configured to When a value indicating that address designation and activation for a plurality of banks are simultaneously set is set , a period for deactivating both of the plurality of banks is provided when activation of the plurality of banks is switched. Therefore, the memory control circuit is characterized by controlling the control circuit.
前記制御回路は、
前記複数のバンクをそれぞれ予め定められた期間活性化させるものであり、
前記複数のバンクの活性化を切り替える場合、所定の前記バンクが予め定められた期間活性化した直後に、当該バンクおよび次に活性化すべき前記バンクをともに非活性化とする期間を設け、当該期間の経過後、前記次に活性化すべきバンクを非活性化から予め定められた期間活性化させること、を特徴とする請求項1に記載のメモリ制御回路。
The control circuit includes:
Said plurality of banks is intended to period activated respective predetermined,
When switching the activation of the plurality of banks, immediately after the predetermined bank is activated for a predetermined period, a period for deactivating both the bank and the bank to be activated next is provided. 2. The memory control circuit according to claim 1, wherein after the elapse of time, the bank to be activated next is activated for a predetermined period from deactivation.
前記複数のバンクをともに非活性化とする期間を設定するための、前記複数のバンクに対応する第2の設定回路を備え、
前記制御回路は、前記第2の設定回路の設定値に基づいて、前記複数のバンクの活性化に際し、前記複数のバンクをともに非活性化とする期間を設けることを特徴とする請求項1または2に記載のメモリ制御回路。
A second setting circuit corresponding to the plurality of banks for setting a period for inactivating both of the plurality of banks;
2. The control circuit according to claim 1, wherein when the plurality of banks are activated, the control circuit provides a period for inactivating both of the plurality of banks based on a setting value of the second setting circuit. 3. The memory control circuit according to 2.
前記複数のバンクをともに非活性化とする期間は、前記メモリ制御回路を動作させるためのシステムクロックの少なくとも1クロック期間である、ことを特徴とする請求項1乃至3の何れかに記載のメモリ制御回路。   4. The memory according to claim 1, wherein the period during which the plurality of banks are deactivated is at least one clock period of a system clock for operating the memory control circuit. 5. Control circuit.
JP2004037205A 2004-02-13 2004-02-13 Memory control circuit Expired - Fee Related JP4549073B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004037205A JP4549073B2 (en) 2004-02-13 2004-02-13 Memory control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004037205A JP4549073B2 (en) 2004-02-13 2004-02-13 Memory control circuit

Publications (2)

Publication Number Publication Date
JP2005228142A JP2005228142A (en) 2005-08-25
JP4549073B2 true JP4549073B2 (en) 2010-09-22

Family

ID=35002805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004037205A Expired - Fee Related JP4549073B2 (en) 2004-02-13 2004-02-13 Memory control circuit

Country Status (1)

Country Link
JP (1) JP4549073B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4945125B2 (en) * 2005-12-21 2012-06-06 ラピスセミコンダクタ株式会社 Memory control device
JP6418983B2 (en) * 2015-03-05 2018-11-07 キヤノン株式会社 MEMORY ACCESS CONTROL DEVICE, ITS CONTROL METHOD, AND PROGRAM

Also Published As

Publication number Publication date
JP2005228142A (en) 2005-08-25

Similar Documents

Publication Publication Date Title
JP4550439B2 (en) ECC controller
US20170194042A1 (en) Semiconductor memory and memory system
JPH0845277A (en) Semiconductor memory
US6545942B2 (en) Semiconductor memory device and information processing unit
JP4945125B2 (en) Memory control device
US8239658B2 (en) Internally derived address generation system and method for burst loading of a synchronous memory
US6769051B2 (en) Memory controller and memory control method for controlling an external memory device to be accessible even in an addressing mode that is not supported thereby
EP0337385A2 (en) Cache memory controller associated with a microprocessor
JP4549073B2 (en) Memory control circuit
US6292867B1 (en) Data processing system
US8074096B2 (en) Semiconductor integrated circuit, memory system, memory controller and memory control method
US20020188771A1 (en) Direct memory access controller for carrying out data transfer by determining whether or not burst access can be utilized in an external bus and access control method thereof
US20070094460A1 (en) DRAM control circuit
JP6493044B2 (en) Multiprocessor system
US6751130B2 (en) Integrated memory device, method of operating an integrated memory, and memory system having a plurality of integrated memories
JP2638484B2 (en) Data processing device
JP4749689B2 (en) Memory control circuit and memory control method
JP2004206850A (en) Semiconductor storage device
CN114253464B (en) Method of controlling read request and memory controller having host device
JP2004146051A (en) Integrated circuit and method which can execute read operation and write operation of data concurrently
JP4651206B2 (en) Semiconductor memory device and information processing apparatus
JP3561670B2 (en) Memory control circuit
JP3600830B2 (en) Processor
JP3563340B2 (en) Memory controller
JP3222647B2 (en) Automatic memory bank switching system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100329

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100525

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100608

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100706

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130716

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees