JP4724289B2 - Data processing apparatus and memory access control method for data processing apparatus - Google Patents

Data processing apparatus and memory access control method for data processing apparatus Download PDF

Info

Publication number
JP4724289B2
JP4724289B2 JP2000332611A JP2000332611A JP4724289B2 JP 4724289 B2 JP4724289 B2 JP 4724289B2 JP 2000332611 A JP2000332611 A JP 2000332611A JP 2000332611 A JP2000332611 A JP 2000332611A JP 4724289 B2 JP4724289 B2 JP 4724289B2
Authority
JP
Japan
Prior art keywords
ram
rom
address
mpu
data processing
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
JP2000332611A
Other languages
Japanese (ja)
Other versions
JP2002140228A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2000332611A priority Critical patent/JP4724289B2/en
Publication of JP2002140228A publication Critical patent/JP2002140228A/en
Application granted granted Critical
Publication of JP4724289B2 publication Critical patent/JP4724289B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、所定のバスに接続されたMPUがROMに記憶された情報に基づきRAM上で所定のデータ処理を実行可能なデータ処理装置およびデータ処理装置のメモリアクセス制御方法に関するものである。
【0002】
【従来の技術】
近年、パソコンやプリンタ等のデータ処理装置は、そのほとんどが演算処理ユニットであるMPUと、不揮発性メモリであるROM、揮発性メモリであるRAMという基本構成を備えている。そして、不揮発性メモリであるROMは、電源をOFFにしてもその内容が失われない特徴があるので、プログラム等は通常、ROMに格納される。
【0003】
【発明が解決しようとする課題】
しかしながら、不揮発性メモリであるROMはその構成上、揮発性メモリであるRAMに比べてデータ読み出し時のアクセスタイムが長く、高速の演算処理可能なMPUにとってはアクセスタイミングに待ちが入り、データ処理効率が低下するという問題点があった。
【0004】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、簡単な構成によってROMへのアクセスをRAMへのアクセスに変換することできるとともに、MPUが実行すソフトウェアがアドレス管理を意識しなくて済む仕組みを提供することである。
【0005】
【課題を解決するための手段】
本発明は、MPUが接続されているバスと、前記バスに接続されているROMと、前記バスに接続されている複数のRAMと、前記ROMおよび前記複数のRAMに接続され、前記ROM及び前記複数のRAMのそれぞれに個別の上位アドレスを割り当てるアドレス手段と、前記複数のRAMのうち、前記MPUによって前記ROMの内容が複写されているRAMの上位アドレスを保持するアドレス保持手段と、前記ROMに前記MPUからアクセスがあると前記アドレス保持手段の保持している上位アドレスに対応するRAMをアクセス対象として選択する選択手段とを有することを特徴とする
【0013】
【発明の実施の形態】
図1は、本発明の一実施形態を示すデータ処理装置の構成を説明する要部ブロック図である。
【0014】
図1において、100はデータバス、101はアドレスバス、110はシステムの処理の中心を担うMPUである。
【0015】
113、114、115は揮発性メモリ媒体であるDRAM、117はDRAMコントローラであり、DRAM113,114,115のそれぞれに対してアドレスやRAS,CAS信号等の制御信号を出力し、DRAM113,114,115とMPU110とのI/Fを行う。DRAM113,114,115への制御信号130、131、132はそれぞれDRAM113,114,115に対応する。118はROMコントローラであり、ROM119に対してアドレスやCS信号、WE信号等の制御信号135を出力し、ROMl19とMPU110とのI/Fを行う。
【0016】
120はMPUのアドレスをデコードするアドレスデコーダ部であり、ROM119の内容をDRAM113,114,115中の後述する領域上にコピーした際に“1”セットするレジスタ121と、ROM119の内容をRAM113,114,115中の後述する領域上にコピーした際に、コピーしたRAM113,114,115中の後述する領域上のアドレスをセットするアドレスセットレジスタ122、およびアドレスデコーダ123を含んでいる。
【0017】
そして、レジスタ121が“0”にセットされているとき、MPU110のアドレスがROM119のマッピングエリアにヒットしている場合は、ROM選択信号133をアクティブにする。
【0018】
一方、内蔵RAMのマッピングエリアにヒットしている場合は、RAM選択信号134をアクティブにし、増設RAM114のマッピングエリアにヒットしている場合はRAM選択信号135をアクティブにし、増設RAM115のマッピングエリアにヒットしている場合はRAM選択信号136をアクティブにする。
【0019】
一方、レジスタ121が“1”にセットされているとき、MPU110のアドレスがROM119のマッピングエリアにヒットしている場合、アドレスレジスタ122の値によりRAM選択信号134,135,136のいずれかをアクティブにする。
【0020】
以上説明したような構成を持つデータ処理装置のメモリマップについて図2を参照して説明する。
【0021】
図2は、図1に示したデータ処理装置のメモリマップを示す図である。
【0022】
図において、「00000h〜0FFFFh」までがROM119のマッピングされたアドレス空間、「10000h〜1FFFFh」までが内蔵RAM113のマッピングされたアドレス空間、「20000h〜2FFFFh」までが増設RAM114のマッピングされたアドレス空間、「30000h〜3FFFFh」までが増設RAM115のマッピングされたアドレス空間である。各アドレス空間はそれぞれ64kBである。
【0023】
この場合、アドレスA{17:0}の内、アドレスの上位2bitA{17:16}が“00”のときはROMエリア、“01”のときは内蔵RAMエリア、“10”のときは増設RAM114のエリア、“11”のときは増設RAM115のエリアにアドレスがヒットしていることが分かる。
【0024】
このように構成されたデータ処理装置において、図1に示したデータ処理装置の電源を投入すると、MPU110は増設RAM114,115の容量を確認する。このときROM119内の全データ(64kB)をコピーするだけの領域が増設RAM114、115上に確保出来る場合には、MPU110はROM119の内容を増設RAM114,115上にコピーする。
【0025】
本実施形態では、増設RAM114,115が無い場合でも内蔵RAM113上にROM119の全データをコピーすることが可能だが、そうするとMPU110がワークエリアとして使用するRAMエリアが「0」になってしまうので(内蔵RAM113のRAM領域はROM119のコピー領域には使用せず、増設RAM115)が64kB以上実装されたときのみROM119の内容を増設RAM領域にコピーする。
【0026】
本実施形態では増設RAM114,115がそれぞれ64kBずつ実装されているのでROM119のデータを増設RAMのメモリ領域上にコピーする事が可能である。
【0027】
MPU110は増設RAM114,115の容量を確認した後、ROM119のデータを増設RAM114の例えばアドレス「20000h〜2FFFFh」の領域にコピーする。内蔵RAM領域「00000h〜OFFFFh」および増設RAM115の領域アドレス「30000h〜3FFFFh」はMPU110のワークエリアとして使用する。
【0028】
次に、ROM119の内容がRAM114上にコピーされたことをアドレスデコーダ部120に知らせる為に、MPU110はROM119のデータをRAM114上にコピーした後、アドレスデコーダ部120内の1bitのレジスタ121を“1”にセットする。
【0029】
更に、ROM119の内容がRAM114上のどのエリアにコピーされたかをアドレスデコーダに知らせる為、MPU110はアドレスデコーダ部120内のアドレスセットレジスタ122に、ROM119の内容をコピーしたRAM領域のアドレスの上位2bitA{17:16}の値をセットする。
【0030】
本実施形態において、ROM119のデータを増設RAM114上にコピーした場合には、アドレスセットレジスタ122に“10”をセットし、増設RAM115上にコピーした場合にはアドレスセットレジスタ122に“11”をセットする。
【0031】
MPU110がROM119にアクセスするとき、MPU110はROM119のマッピングされているアドレスを下記例に示すようにアドレスバス101上に出力する。
【0032】
例えばROM119の先頭アドレス「00000h」の内容を読み出そうとした場合、MPU110はアドレスバス101上にアドレス「00000h」を出力する。
【0033】
アドレスデコーダ123は、アドレスの上位2bitA[17:16]ビットが“00”であると、これをROM119へのアクセスと判断する。
【0034】
ROM119のデータがRAM114上にコピーされている場合、アドレスデコーダ123はレジスタ121からの信号が“1”であり、且つアドレスセットレジスタ122の値が“10”であることを認識し、ROM選択信号133ではなく、増設RAM114のための選択信号135をアクティブにする。
【0035】
もし、ROM119のデータがRAM114上にコピーされていない場合には、アドレスデコーダ123はレジスタ121からの信号が“0”であることを認識し、ROM選択信号133をアクティブにする。
【0036】
また、DRAMコントローラ117は増設RAM114の選択信号135がアクティブになると、アドレスバス101上に出力されたアドレスのうち、下位の16bitA{15:0}をRow/Columnアドレスに分割して増設RAM114(DRAM)に出力する。また、このとき増設RAM114へのRAS,CAS等の制御信号131の制御も行う。
【0037】
そして、増設RAM114から読み出したデータはDRAMコントローラ117を介してデータバス100上に送出される。MPU110がこれを読む事で、MPU110は増設RAM114上にコピーされたROM119のデータを得ることが出来る。
【0038】
このようにして、ROM119へのアクセスが発生すると、ハードウエアによって、例えばRAM114へのアクセスに変換され、ソフトウエアはROM119の内容をROM119から読み出す場合でも、ROM119の内容がRAM114上にコピーされていてRAM114からROM119の内容を読み出す場合でも、それを意識する事無しにROM119のデータ(フォントデータ,プログラムデータ,制御データ,BIOS等を含む)を得る事ができる。
【0039】
以上の処理の流れを、図3に示すフローチャートを参照して説明する。
【0040】
図3は、本発明に係るデータ処理装置におけるデータ処理手順の一例を示すフローチャートであり、図1に示したROM119の格納データに対するメモリアクセス処理手順に対応する。なお、(1)〜(10)は各ステップを示す。
【0041】
図1に示したデータ処理装置の電源を投入すると、ステップ(1)においてMPU110は増設RAM114,115の容量を確認して、ROM119内の全データ(64kB)をコピーするだけの領域が増設RAM114、115上に確保出来る場合には、MPU110はROM119の内容を増設RAM114,115上にコピーすることが可能と判断して、確保できない場合は、ステップ(9)へ進み、ROM119の内容をRAM上にコピーを行うことなく処理を終了する。
【0042】
一方、ステップ(1)で、MPU110はROM119の内容を増設RAM114,115に格納できると判断した場合は、ステップ(2)で、ROM119のデータを増設RAM114の例えばアドレス「20000h〜2FFFFh」の領域にコピーする。内蔵RAM113の領域「00000h〜OFFFFh」および増設RAM115の領域アドレス「30000h〜3FFFFh」はMPU110のワークエリアとして使用する。
【0043】
次に、ステップ(3)で、ROM119の内容がRAM114上にコピーされたことをアドレスデコーダ部120に知らせる為に、アドレスデコーダ部120内の1bitのレジスタ121を“1”にセットする。
【0044】
更に、ROM119の内容がRAM114上のどのエリアにコピーされたかをアドレスデコーダに知らせる為、MPU110はアドレスデコーダ部120内のアドレスセットレジスタ122に、ROM119の内容をコピーしたRAM領域のアドレスの上位2bitA{17:16}の値をセットする。
【0045】
そして、アクセスが要求されると、ステップ(4)で、アドレスの上位2bitA[17:16]ビットが“00”であるかどうかを判断し、NOと判断された場合は、ステップ(10)で、ROMとRAMのアクセス変更を実行せずに、通常のアクセスを実行して、処理を終了する。
【0046】
一方、ステップ(4)でYESの場合は、ステップ(5)で、レジスタ121からの信号が“1”であるかどうかを判断し、NOと判断された場合は、ステップ(10)へ進み、YESと判断された場合は、ステップ(6)で、アドレスセットレジスタ122の値に対応するRAM選択信号134,135,136のいずれかをアクティブにする。
【0047】
次に、ステップ(7)で、DRAMコントローラ117はRAMにアドレスを出力し、また、RAM選択信号によって選択されたRAMに対してRAS,CAS等の制御信号に基づく制御を実行して、増設RAM114からROM119の情報を読み出す。そして、ステップ(8)で、DRAMコントローラ117は、DRAMから読み出したデータをデータバス100上に送出し、MPUがこのデータを読み取り、処理を終了する。
【0048】
なお、前述の実施形態では、RAMデバイスとしてDRAMを使用した例を示したが、これに限定されるものではない。RAMデバイスとしてより高速なSRAM等を使用しても良い。また、実施形態ではROM領域の大きさとコピーする先の増設RAM領域の大きさが同じ場合について説明したが、これに限定されるものではない。ROMの内容の一部、または全部をコピーするだけの領域が内蔵RAM、または増設RAMのいずれかの領域に確保することが出来れば良い。
【0049】
また、上記図3に示すステップ(3)によりセットされた内容は、MPU110に対するリセット時に、クリアされてROMアクセス優先に設定されることはいうまでもない。
【0050】
上記実施形態によれば、ROMの内容をコピーするだけの充分な領域がRAM上に確保出来る場合には、アクセスタイムの遅いROMの内容をアクセス速度の早いRAM上にコピーし、RAM上にコピーしたROMの内容にアクセスすることによってROMの内容への高速なアクセスを可能にした。
【0051】
また、ROMのマッピングされているエリアへのアクセスをハードウエアによってRAMエリアのアクセスに変換することによって、ROMのデータがROM上にある場合とRAM上にある場合のアドレス管理をソフトウエアが意識すること無くROMの内容への高速アクセスが実現できる。
【0052】
以下、図4に示すメモリマップを参照して本発明に係るデータ処理装置で読み出し可能なデータ処理プログラムの構成について説明する。
【0053】
図4は、本発明に係るデータ処理装置で読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【0054】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0055】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0056】
本実施形態における図3に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0057】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0058】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0059】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROM,EEPROM等を用いることができる。
【0060】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0061】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0062】
【発明の効果】
以上説明したように、簡単な構成によってROMへのアクセスをRAMへのアクセスに変換することができるとともに、MPUが実行するソフトウェアがアドレス管理を意識しなくて済むという効果を奏する。
【0063】
また、ROMのマッピングされているエリアへのアクセスをハードウエアによってRAMエリアのアクセスに変換するので、ROMのデータがROM上にある場合とRAM上にある場合のアドレス管理をMPUが実行すべきソフトウエアが意識すること無く、MPUによるROMの内容への高速アクセスが実現でき、既存のソフトウエアに変更することなく、簡単な回路構成でソフトウエアの実行処理効率を実質的に向上できる等の効果を奏する。
【図面の簡単な説明】
【図1】本発明の第1実施形態を示すデータ処理装置の構成を説明する要部ブロック図である。
【図2】図1に示したデータ処理装置のメモリマップを示す図である。
【図3】本発明に係るデータ処理装置におけるデータ処理手順の一例を示すフローチャートである。
【図4】本発明に係るデータ処理装置を適用可能な印刷システムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
100 データバス
101 アドレスバス
110 MPU
113 内蔵RAM
114 増設RAM
115 増設RAM
117 DRAMコントローラ
118 ROMコントローラ
119 ROM
120 アドレスデコーダ
121 レジスタ
122 アドレスセットレジスタ
123 アドレスデコーダ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data processing apparatus capable of executing predetermined data processing on a RAM based on information stored in a ROM by an MPU connected to a predetermined bus, and a memory access control method for the data processing apparatus.
[0002]
[Prior art]
In recent years, most data processing apparatuses such as personal computers and printers have a basic configuration of an MPU that is an arithmetic processing unit, a ROM that is a nonvolatile memory, and a RAM that is a volatile memory. A ROM, which is a non-volatile memory, has a feature that its contents are not lost even when the power is turned off. Therefore, a program or the like is usually stored in the ROM.
[0003]
[Problems to be solved by the invention]
However, the ROM, which is a non-volatile memory, has a longer access time when reading data than the RAM, which is a volatile memory, and the MPU that can perform high-speed arithmetic processing waits for the access timing, and the data processing efficiency. There has been a problem of lowering.
[0004]
The present invention has been made to solve the above problems, an object of the present invention, with a simple configuration it is possible to convert the access to the ROM access to RAM, MPU is to run software Is to provide a mechanism that eliminates the need for address management .
[0005]
[Means for Solving the Problems]
The present invention provides a bus to which an MPU is connected , a ROM connected to the bus, a plurality of RAMs connected to the bus, the ROM and the plurality of RAMs, the ROM and the RAMs Address means for assigning individual high-order addresses to each of a plurality of RAMs; Address holding means for holding high-order addresses of RAMs in which the contents of the ROM of the plurality of RAMs are copied by the MPU ; and characterized by having a selection means for selecting RAM corresponding to the upper address held in said address holding means and there is access from the MPU as an access target.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a principal block diagram illustrating the configuration of a data processing apparatus according to an embodiment of the present invention.
[0014]
In FIG. 1, 100 is a data bus, 101 is an address bus, and 110 is an MPU that plays a central role in the processing of the system.
[0015]
113, 114 and 115 are DRAMs which are volatile memory media, and 117 is a DRAM controller which outputs control signals such as addresses, RAS and CAS signals to the DRAMs 113, 114 and 115, respectively. And the MPU 110 are interfaced. Control signals 130, 131, and 132 to the DRAMs 113, 114, and 115 correspond to the DRAMs 113, 114, and 115, respectively. A ROM controller 118 outputs a control signal 135 such as an address, a CS signal, and a WE signal to the ROM 119, and performs I / F between the ROM 119 and the MPU 110.
[0016]
An address decoder unit 120 decodes the address of the MPU. The register 121 is set to “1” when the contents of the ROM 119 are copied to areas described later in the DRAMs 113, 114, and 115. , 115 includes an address set register 122 and an address decoder 123 for setting an address on an area to be described later in the copied RAM 113, 114, 115 when copied to an area to be described later.
[0017]
When the register 121 is set to “0” and the address of the MPU 110 hits the mapping area of the ROM 119, the ROM selection signal 133 is activated.
[0018]
On the other hand, when the internal RAM mapping area is hit, the RAM selection signal 134 is activated, and when the internal RAM mapping area is hit, the RAM selection signal 135 is activated and the expansion RAM 115 mapping area is hit. If so, the RAM selection signal 136 is activated.
[0019]
On the other hand, when the register 121 is set to “1”, if the address of the MPU 110 hits the mapping area of the ROM 119, one of the RAM selection signals 134, 135, and 136 is activated according to the value of the address register 122. To do.
[0020]
A memory map of the data processing apparatus having the above-described configuration will be described with reference to FIG.
[0021]
FIG. 2 is a diagram showing a memory map of the data processing apparatus shown in FIG.
[0022]
In the figure, “00000h to 0FFFFh” is the address space mapped to the ROM 119, “10000h to 1FFFFh” is the mapped address space of the built-in RAM 113, and “20000h to 2FFFFh” is the mapped address space of the additional RAM 114, “30000h to 3FFFFh” is an address space to which the expansion RAM 115 is mapped. Each address space is 64 kB.
[0023]
In this case, in the address A {17: 0}, when the upper 2 bits A {17:16} of the address is “00”, the ROM area, when it is “01”, the built-in RAM area, when it is “10”, the expansion RAM 114 When the area is “11”, it can be seen that the address hits the area of the additional RAM 115.
[0024]
In the data processing apparatus configured as described above, when the data processing apparatus shown in FIG. 1 is turned on, the MPU 110 checks the capacity of the additional RAMs 114 and 115. At this time, if an area sufficient to copy all data (64 kB) in the ROM 119 can be secured on the expansion RAMs 114 and 115, the MPU 110 copies the contents of the ROM 119 onto the expansion RAMs 114 and 115.
[0025]
In this embodiment, it is possible to copy all the data in the ROM 119 to the built-in RAM 113 even when the additional RAMs 114 and 115 are not provided. However, the RAM area used by the MPU 110 as a work area becomes “0” (built-in). The RAM area of the RAM 113 is not used as a copy area of the ROM 119, and the contents of the ROM 119 are copied to the additional RAM area only when the additional RAM 115) is mounted at 64 kB or more.
[0026]
In this embodiment, since the expansion RAMs 114 and 115 are each mounted in 64 kB, the data in the ROM 119 can be copied onto the memory area of the expansion RAM.
[0027]
After confirming the capacity of the expansion RAMs 114 and 115, the MPU 110 copies the data in the ROM 119 to the area of the expansion RAM 114, for example, addresses “20000h to 2FFFFh”. The internal RAM area “00000h to OFFFFh” and the area address “30000h to 3FFFFh” of the additional RAM 115 are used as a work area for the MPU 110.
[0028]
Next, in order to notify the address decoder unit 120 that the contents of the ROM 119 have been copied onto the RAM 114, the MPU 110 copies the data of the ROM 119 onto the RAM 114 and then sets the 1-bit register 121 in the address decoder unit 120 to “1”. Set to "".
[0029]
Further, in order to inform the address decoder of which area on the RAM 114 the content of the ROM 119 has been copied, the MPU 110 sends the address set register 122 in the address decoder unit 120 to the upper 2 bits A { 17:16} is set.
[0030]
In this embodiment, when the data in the ROM 119 is copied onto the expansion RAM 114, “10” is set in the address set register 122. When the data is copied onto the expansion RAM 115, “11” is set in the address set register 122. To do.
[0031]
When the MPU 110 accesses the ROM 119, the MPU 110 outputs the mapped address of the ROM 119 onto the address bus 101 as shown in the following example.
[0032]
For example, when trying to read the contents of the leading address “00000h” of the ROM 119, the MPU 110 outputs the address “00000h” on the address bus 101.
[0033]
If the upper 2 bitA [17:16] bits of the address are “00”, the address decoder 123 determines that this is an access to the ROM 119.
[0034]
When the data of the ROM 119 is copied onto the RAM 114, the address decoder 123 recognizes that the signal from the register 121 is “1” and the value of the address set register 122 is “10”, and the ROM selection signal Instead of 133, the selection signal 135 for the additional RAM 114 is activated.
[0035]
If the data in the ROM 119 is not copied onto the RAM 114, the address decoder 123 recognizes that the signal from the register 121 is “0” and activates the ROM selection signal 133.
[0036]
Further, when the selection signal 135 of the expansion RAM 114 becomes active, the DRAM controller 117 divides the lower 16-bit A {15: 0} out of the addresses output on the address bus 101 into Row / Column addresses, and adds the expansion RAM 114 (DRAM ). At this time, the control signal 131 such as RAS or CAS to the expansion RAM 114 is also controlled.
[0037]
The data read from the expansion RAM 114 is sent to the data bus 100 via the DRAM controller 117. When the MPU 110 reads this, the MPU 110 can obtain the data of the ROM 119 copied onto the expansion RAM 114.
[0038]
Thus, when access to the ROM 119 occurs, it is converted into access to the RAM 114, for example, by hardware. Even when the software reads the contents of the ROM 119 from the ROM 119, the contents of the ROM 119 are copied onto the RAM 114. Even when the contents of the ROM 119 are read from the RAM 114, the data of the ROM 119 (including font data, program data, control data, BIOS, etc.) can be obtained without being aware of it.
[0039]
The above processing flow will be described with reference to the flowchart shown in FIG.
[0040]
FIG. 3 is a flowchart showing an example of a data processing procedure in the data processing apparatus according to the present invention, and corresponds to the memory access processing procedure for the data stored in the ROM 119 shown in FIG. In addition, (1)-(10) shows each step.
[0041]
When the power of the data processing apparatus shown in FIG. 1 is turned on, in step (1), the MPU 110 confirms the capacity of the expansion RAMs 114 and 115, and an area sufficient for copying all data (64 kB) in the ROM 119 is the expansion RAM 114, If it can be secured on 115, the MPU 110 determines that the contents of the ROM 119 can be copied onto the additional RAMs 114 and 115. If not, the process proceeds to step (9), and the contents of the ROM 119 are placed on the RAM. The process ends without copying.
[0042]
On the other hand, if it is determined in step (1) that the MPU 110 can store the contents of the ROM 119 in the expansion RAMs 114 and 115, the data in the ROM 119 is stored in the expansion RAM 114 in the area of addresses “20000h to 2FFFFh” in step (2). make a copy. The area “00000h to OFFFFh” of the internal RAM 113 and the area address “30000h to 3FFFFh” of the expansion RAM 115 are used as a work area for the MPU 110.
[0043]
Next, in step (3), in order to notify the address decoder unit 120 that the contents of the ROM 119 have been copied onto the RAM 114, the 1-bit register 121 in the address decoder unit 120 is set to "1".
[0044]
Further, in order to inform the address decoder of which area on the RAM 114 the content of the ROM 119 has been copied, the MPU 110 sends the address set register 122 in the address decoder unit 120 to the upper 2 bits A { 17:16} is set.
[0045]
When access is requested, it is determined in step (4) whether the upper 2bitA [17:16] bits of the address are “00”. If NO is determined, in step (10). Then, the normal access is executed without executing the ROM and RAM access change, and the process is terminated.
[0046]
On the other hand, if YES in step (4), it is determined in step (5) whether the signal from the register 121 is “1”, and if NO, the process proceeds to step (10). If YES is determined, in step (6), one of the RAM selection signals 134, 135, 136 corresponding to the value of the address set register 122 is activated.
[0047]
Next, in step (7), the DRAM controller 117 outputs an address to the RAM, and executes control based on a control signal such as RAS or CAS on the RAM selected by the RAM selection signal, so that the additional RAM 114 Read the information of ROM 119 from In step (8), the DRAM controller 117 sends the data read from the DRAM onto the data bus 100, and the MPU reads this data and ends the process.
[0048]
In the above-described embodiment, an example in which a DRAM is used as a RAM device has been described. However, the present invention is not limited to this. A faster SRAM or the like may be used as the RAM device. In the embodiment, the case where the size of the ROM area is the same as the size of the additional RAM area to be copied is described, but the present invention is not limited to this. It suffices if an area for copying a part or all of the contents of the ROM can be secured in either the internal RAM or the additional RAM.
[0049]
Needless to say, the contents set in step (3) shown in FIG. 3 are cleared and set to ROM access priority when the MPU 110 is reset.
[0050]
According to the above embodiment, when a sufficient area for copying the contents of the ROM can be secured on the RAM, the contents of the ROM with a slow access time are copied onto the RAM with a fast access speed and copied onto the RAM. By accessing the contents of the ROM, the ROM contents can be accessed at high speed.
[0051]
In addition, by converting access to the mapped area of the ROM into access to the RAM area by hardware, the software is aware of address management when the ROM data is on the ROM and on the RAM. High-speed access to the contents of the ROM can be realized without any problem.
[0052]
The configuration of the data processing program that can be read by the data processing apparatus according to the present invention will be described below with reference to the memory map shown in FIG.
[0053]
FIG. 4 is a diagram for explaining a memory map of a storage medium for storing various data processing programs that can be read by the data processing apparatus according to the present invention.
[0054]
Although not particularly illustrated, information for managing a program group stored in the storage medium, for example, version information, creator, etc. is also stored, and information depending on the OS on the program reading side, for example, a program is identified and displayed. Icons may also be stored.
[0055]
Further, data depending on various programs is also managed in the directory. In addition, a program for installing various programs in the computer, and a program for decompressing when the program to be installed is compressed may be stored.
[0056]
The functions shown in FIG. 3 in this embodiment may be performed by the host computer by a program installed from the outside. In this case, the present invention is applied even when an information group including a program is supplied to the output device from a storage medium such as a CD-ROM, a flash memory, or an FD, or from an external storage medium via a network. Is.
[0057]
As described above, a storage medium storing software program codes for realizing the functions of the above-described embodiments is supplied to the system or apparatus, and the computer (or CPU or MPU) of the system or apparatus stores the storage medium in the storage medium. It goes without saying that the object of the present invention can also be achieved by reading and executing the programmed program code.
[0058]
In this case, the program code itself read from the storage medium realizes the novel function of the present invention, and the storage medium storing the program code constitutes the present invention.
[0059]
As a storage medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, an EEPROM, or the like is used. it can.
[0060]
Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) or the like running on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.
[0061]
Further, after the program code read from the storage medium is written to a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the case where the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.
[0062]
【The invention's effect】
As described above , access to the ROM can be converted into access to the RAM with a simple configuration, and the software executed by the MPU does not need to be aware of address management.
[0063]
In addition, since access to the mapped area of the ROM is converted into access to the RAM area by hardware, software that the MPU should execute address management when the ROM data is on the ROM and on the RAM High-speed access to ROM contents by MPU can be realized without awareness of software, and software execution processing efficiency can be substantially improved with a simple circuit configuration without changing to existing software. Play.
[Brief description of the drawings]
FIG. 1 is a principal block diagram illustrating a configuration of a data processing apparatus according to a first embodiment of this invention.
FIG. 2 is a diagram showing a memory map of the data processing device shown in FIG. 1;
FIG. 3 is a flowchart showing an example of a data processing procedure in the data processing apparatus according to the present invention.
FIG. 4 is a diagram illustrating a memory map of a storage medium that stores various data processing programs that can be read by a printing system to which the data processing apparatus according to the invention can be applied.
[Explanation of symbols]
100 Data bus 101 Address bus 110 MPU
113 Built-in RAM
114 Additional RAM
115 Additional RAM
117 DRAM controller 118 ROM controller 119 ROM
120 Address decoder 121 Register 122 Address set register 123 Address decoder

Claims (8)

MPUが接続されているバスと、
前記バスに接続されているROMと、
前記バスに接続されている複数のRAMと、
前記ROMおよび前記複数のRAMに接続され、前記ROM及び前記複数のRAMのそれぞれに個別の上位アドレスを割り当てるアドレス手段と、
前記複数のRAMのうち、前記MPUによって前記ROMの内容が複写されているRAMの上位アドレスを保持するアドレス保持手段と、
前記ROMに前記MPUからアクセスがあると前記アドレス保持手段の保持している上位アドレスに対応するRAMをアクセス対象として選択する選択手段と
を有することを特徴とするデータ処理装置。
A bus to which the MPU is connected;
A ROM connected to said bus,
A plurality of RAMs connected to the bus;
Address means connected to the ROM and the plurality of RAMs, and assigning individual upper addresses to the ROM and the plurality of RAMs;
Among the plurality of RAM, an address holding means for holding the upper address of the RAM contents of the ROM is copied by the MPU,
A data processing apparatus comprising: a selecting unit that selects, as an access target, a RAM corresponding to a higher address held by the address holding unit when the ROM is accessed from the MPU.
前記RAMの容量を検出する検出手段と、
前記検出手段により検出された前記RAMの容量内で前記ROMに記憶された情報の一部または全部を前記RAM上に複写可能かどうかを判定する判定手段と、
前記判定手段による判定結果に基づいて、前記MPUによる前記ROMに記憶された情報の一部または全部の前記RAM上への複写の開始または中止を制御する制御手段と、
を有することを特徴とする請求項1記載のデータ処理装置。
Detecting means for detecting the capacity of the RAM;
Determining means for determining whether or not a part or all of the information stored in the ROM within the capacity of the RAM detected by the detecting means can be copied on the RAM;
Control means for controlling the start or stop of copying of a part or all of the information stored in the ROM by the MPU onto the RAM based on the determination result by the determination means;
The data processing apparatus according to claim 1, further comprising:
前記MPUによって前記ROMの内容が前記RAMに複写されていることを示す情報を保持する情報保持手段を更に有し、
前記選択手段は、前記ROMに前記MPUからアクセスがあると前記情報保持手段に前記情報が保持されている、前記アドレス保持手段に保持されている上位アドレスに対応するRAMを選択することを特徴とする請求項1又は2記載のデータ処理装置。
Further comprising information holding means for holding information indicating that the content of the ROM I by the MPU has been copied into the RAM,
Said selecting means, when the information from the MPU to the ROM in the information holding means and an access is being held, characterized by selecting a RAM corresponding to the upper address held in said address holding means The data processing apparatus according to claim 1 or 2 .
前記RAMは、内蔵RAMと複数の増設RAMとを含むことを特徴とする請求項1記載のデータ処理装置。  The data processing apparatus according to claim 1, wherein the RAM includes a built-in RAM and a plurality of additional RAMs. MPUが接続されているバスと、前記バスに接続されているROMと、前記バスに接続されている複数のRAMと、前記ROMおよび前記複数のRAMに接続され、前記ROM及び前記複数のRAMのそれぞれに個別の上位アドレスを割り当てるアドレス手段と、を有するデータ処理装置の制御方法であって、
前記複数のRAMのうち、前記MPUによって前記ROMの内容が複写されているRAMの上位アドレスをアドレス保持手段に保持させるアドレス保持工程と、
前記ROMに前記MPUからアクセスがあると前記アドレス保持手段の保持している上位アドレスに対応するRAMをアクセス対象として選択する選択工程とを有することを特徴とする制御方法。
A bus to which an MPU is connected; a ROM connected to the bus; a plurality of RAMs connected to the bus; and the ROM and the plurality of RAMs; A data processing apparatus control method having address means for assigning individual upper addresses to each ,
An address holding step of causing the address holding means to hold the upper address of the RAM in which the content of the ROM is copied by the MPU among the plurality of RAMs ;
And a selection step of selecting a RAM corresponding to a higher address held by the address holding means as an access target when the ROM is accessed from the MPU.
前記RAMの容量を検出する検出工程と、
前記検出工程により検出された前記RAMの容量内で前記ROMに記憶された情報の一部または全部を前記RAM上に複写可能かどうかを判定する判定工程と、
前記判定工程による判定結果に基づいて、前記ROMに記憶された情報の一部または全部の前記RAM上への複写の開始または中止を決定する決定工程と、
を有することを特徴とする請求項5記載のデータ処理装置のメモリアクセス制御方法。
A detecting step for detecting the capacity of the RAM;
A determination step of determining whether or not a part or all of the information stored in the ROM within the capacity of the RAM detected by the detection step can be copied on the RAM;
A determination step for determining the start or stop of copying of a part or all of the information stored in the ROM on the RAM based on the determination result of the determination step;
6. The memory access control method for a data processing apparatus according to claim 5, further comprising:
前記MPUによって前記ROMの内容が前記RAMに複写されていることを示す情報保持手段に保持する保持工程を更に有し、
前記選択工程において、前記ROMに前記MPUからアクセスがあり前記情報保持手段に前記情報が保持されている、前記アドレス保持手段に保持されている上位アドレスに対応するRAMを選択することを特徴とする請求項5又は6記載の制御方法。
Further comprising a holding step that holds the information holding means for indicating that the contents of the ROM is copied to the RAM by the MPU,
Oite in the selection step, if the information from the MPU to the ROM in the information holding means have access is held, the selection of RAM corresponding to the upper address held in said address holding means The control method according to claim 5 or 6, characterized in that:
前記RAMは、内蔵RAMと複数の増設RAMとを含むことを特徴とする請求項5記載のデータ処理装置のメモリアクセス制御方法。  6. The memory access control method for a data processing apparatus according to claim 5, wherein the RAM includes an internal RAM and a plurality of additional RAMs.
JP2000332611A 2000-10-31 2000-10-31 Data processing apparatus and memory access control method for data processing apparatus Expired - Fee Related JP4724289B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000332611A JP4724289B2 (en) 2000-10-31 2000-10-31 Data processing apparatus and memory access control method for data processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000332611A JP4724289B2 (en) 2000-10-31 2000-10-31 Data processing apparatus and memory access control method for data processing apparatus

Publications (2)

Publication Number Publication Date
JP2002140228A JP2002140228A (en) 2002-05-17
JP4724289B2 true JP4724289B2 (en) 2011-07-13

Family

ID=18808798

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000332611A Expired - Fee Related JP4724289B2 (en) 2000-10-31 2000-10-31 Data processing apparatus and memory access control method for data processing apparatus

Country Status (1)

Country Link
JP (1) JP4724289B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114217744A (en) * 2021-12-14 2022-03-22 山东产研鲲云人工智能研究院有限公司 EFUSE storage content distribution method and device using shadow register

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05342096A (en) * 1992-06-08 1993-12-24 Yaskawa Electric Corp Program executing method for programmable controller
JP2000082010A (en) * 1998-09-04 2000-03-21 Sharp Corp Method and device for data processing with address conversion
JP2000293433A (en) * 1999-04-12 2000-10-20 Nec Niigata Ltd Program execution system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05342096A (en) * 1992-06-08 1993-12-24 Yaskawa Electric Corp Program executing method for programmable controller
JP2000082010A (en) * 1998-09-04 2000-03-21 Sharp Corp Method and device for data processing with address conversion
JP2000293433A (en) * 1999-04-12 2000-10-20 Nec Niigata Ltd Program execution system

Also Published As

Publication number Publication date
JP2002140228A (en) 2002-05-17

Similar Documents

Publication Publication Date Title
KR100797325B1 (en) Unified memory and controller
US7519754B2 (en) Hard disk drive cache memory and playback device
US6754793B2 (en) Method for flashing ESCD and variables into a ROM
US7613870B2 (en) Efficient memory usage in systems including volatile and high-density memories
JP3951918B2 (en) Non-volatile cache
RU2427892C2 (en) Method and device to establish caching policy in processor
EP0440446A2 (en) System and method for shadowing and re-mapping reserved memory in a microcomputer
KR20010006749A (en) Storing system-level mass storage configuration data in non-volatile memory on each mass storage device to allow for reboot/power-on reconfiguration of all installed mass storage devices to the same configuration as last use
JP2006196018A (en) Method and arrangement for providing bios to host computer
JP3519954B2 (en) Chip enable signal generation circuit and memory device
JP2009276853A (en) Flash memory device
JPH04229329A (en) Personal computer apparatus
US6851036B1 (en) Method and apparatus for controlling external devices through address translation buffer
JP4724289B2 (en) Data processing apparatus and memory access control method for data processing apparatus
JPH0115903B2 (en)
JP3701045B2 (en) Processing unit and method for generating a memory access cycle in a processing unit
JP2005222519A (en) Access to bit value in data word stored in memory
JPH10293684A (en) Computer system and rise control method therefor
JP3334602B2 (en) Changing and setting the configuration register of a PCI device
JP4164452B2 (en) Information processing method and apparatus
JP2006146817A (en) Memory control system and memory controller
JP3136681B2 (en) Data processing device
JP4438740B2 (en) Image forming apparatus
JPH08263426A (en) Logical direct memory access system
JPS62120543A (en) Switching system for memory bank

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071030

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071030

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101214

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110209

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: 20110405

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: 20110411

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

Free format text: PAYMENT UNTIL: 20140415

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees