JPS61289599A - Program memory circuit - Google Patents
Program memory circuitInfo
- Publication number
- JPS61289599A JPS61289599A JP60130172A JP13017285A JPS61289599A JP S61289599 A JPS61289599 A JP S61289599A JP 60130172 A JP60130172 A JP 60130172A JP 13017285 A JP13017285 A JP 13017285A JP S61289599 A JPS61289599 A JP S61289599A
- Authority
- JP
- Japan
- Prior art keywords
- program
- block
- signal
- rom
- read
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
この発明は、マイクロコンピュータ・システムのプログ
ラムを書込んだプログラムメモリに関するものである。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a program memory in which a program for a microcomputer system is written.
一般ニ、マイクロコンピュータ・システムの中央処理装
!1(以後CPUという)は、起動後のスタート・アド
レスがCPUのメモリ空間の最大番地または最小番地と
決められている。例えば、起動後θ番地からスタートす
るCPUでは、0番地からのメモリ空間に、該システム
km作させるプログラムを格納する。また、このプログ
ラムは、電源が切れ几場合でも消えないように1続出し
専用メモリ(以後ROMという)に書込む。Central processing unit for general microcomputer systems! 1 (hereinafter referred to as CPU), the start address after startup is determined to be the maximum or minimum address of the CPU's memory space. For example, in a CPU that starts from address θ after startup, a program for creating the system km is stored in the memory space starting from address 0. Furthermore, this program is written in a memory (hereinafter referred to as ROM) dedicated for continuous output so that it will not be erased even if the power is turned off.
プログラムの保守においてデパックによるプログラムの
修正を行うのに、パッチ修正と呼ばれる方法がある。こ
れは、プログラムメモリの修正該当部分の命令だけを修
正する方法である。In program maintenance, there is a method called patch modification to modify a program using depacking. This is a method of modifying only the instructions in the modified portion of the program memory.
ROMに書込まれ九プログラムでは、該当する部分を直
接パッチ修正することができないために、従来は、別の
ところで該ROMの内容と同一のプログラムに対しパッ
チ修正を行い、修正後のプログラムを別のROMに書込
み、この題に交換する方法によってプログラムの修正を
行なっていた。Since it is not possible to directly patch the corresponding part of a program written in a ROM, conventionally the patch is modified to the same program as the contents of the ROM at another location, and the modified program is then patched separately. The program was modified by writing it into the ROM and replacing it with this title.
従来の上記のような方法では、修正回数が増えるにした
がい、題の使用数が増えるとともに、誤った修正をした
九めに、以前の状態へ復旧したい場合に、誤った修正を
したROMの内容からは以前の状態が判断しにくいため
に、以前のROMも残しておく必要があるという問題が
あった。In the conventional method as described above, as the number of corrections increases, the number of problems used also increases, and when you make an incorrect correction, when you want to restore the previous state, the content of the ROM that was incorrectly corrected increases. Since it was difficult to determine the previous state, there was a problem in that the previous ROM had to be preserved.
この発明は、上記のような問題点を解消するためになさ
れたもので、修正回数が増えても、ROMの使用数を増
す必要がなく、かつ、即時に1以前の状態に復旧するこ
とができるプログラムメモリを提供することを目的とす
る。This invention was made to solve the above-mentioned problems, and even if the number of modifications increases, there is no need to increase the number of ROMs used, and it is possible to immediately restore the state to the previous state. The purpose is to provide program memory that can be used.
この発明に係るプログラムメモリは、プログラムを書込
んだ第1のROMと、このROM k所定数のバイトと
とに複数個のブロックに区分けし、プログラムに誤り個
所が存在するブロックに対するブロックごとの修正プロ
グラムを書込んだ第2のROMと、CPUからのアドレ
ス信号を解読して第1のROMの上記アドレス信号の指
示するアドレスの属するブロックを選択するデコーダと
、選択されたブロックに対し修正プログラムが第2のR
OMに書込まれている場合に書込まれているブロックを
選択するブロック選択回路と、選択された第2の題のブ
ロックに属するアドレスのアドレス信号を作成するエン
コーダと、CPUからの続出し指示によって上記ブロッ
ク選択回路からのブロック選択の出力信号が存在する場
合に第2のROMから読出すことを指示し上記出力信号
が存在しない場合に第1のROMから読出すことを指示
する論理回路を備えたものである。The program memory according to the present invention is divided into a plurality of blocks including a first ROM in which a program is written and a predetermined number of bytes in this ROM, and correction is made for each block in which a block in which an error exists in the program is provided. A second ROM in which a program is written, a decoder that decodes the address signal from the CPU and selects a block to which the address indicated by the address signal in the first ROM belongs, and a modification program for the selected block. Second R
A block selection circuit that selects the written block when it is written in the OM, an encoder that creates an address signal of an address belonging to the selected second block, and a continuation instruction from the CPU. a logic circuit which instructs to read from the second ROM when a block selection output signal from the block selection circuit exists, and instructs to read from the first ROM when the output signal does not exist; It is prepared.
CPUからプログラムの読出しが指示され、アドレス信
号が送られてくると、デコーダにおいてアドレス信号の
指示する第1の鳩のアドレスの属するブロックが選択さ
れ、ブロック選択回路によってそのブロックに対する修
正プログラムが第2のROM K−it込まれているか
否かが検索され、書込まれていないときは論理回路によ
シ第1のR(Mからの読出しが指示され、書込まれてい
るときは第2のROMからの読出しが指示されるととも
に、エンコーダにおいて第2の題の選択され次ブロック
に属するアドレスのアドレス信号が作成される。When the CPU instructs to read a program and sends an address signal, the decoder selects the block to which the address of the first pigeon indicated by the address signal belongs, and the block selection circuit transfers the modified program for that block to the second block. A search is made to see if the ROM K-it is written in. If it is not written, the logic circuit is instructed to read from the first R (M), and if it is written, it is read from the second R (M). Reading from the ROM is instructed, and an address signal of the address belonging to the next selected block of the second title is created in the encoder.
以下、この発明の一実施例を図について説明する。 An embodiment of the present invention will be described below with reference to the drawings.
第1図はこの発明の一実施例を示すブロック図であ夛、
図において(1)はCPU、 +21はこの発明のプロ
グラムメモリ、(3)はプログラム’t−蕾込んだ8g
1のROM、 +41は修正プログラムを書込んだwJ
2のROM、 15)tit読出しを制御する制御回路
、(6)はアドレス・バス、+71t:tデータ・バス
、(8)はCPU [11からのメモリ読出し指示信号
、(9)は制御回路(5)で作成された第2のRQM
+41のアドレス信号のアドレス・バス、(10)は制
御回路(5)で作成された第1のROMf31からの読
出し指゛示信号、(11)は制御回路15)で作成され
た第2のROM +41からの読出し指示信号である。FIG. 1 is a block diagram showing an embodiment of the present invention.
In the figure, (1) is the CPU, +21 is the program memory of this invention, and (3) is the program 't-8g.
1 ROM, +41 is wJ with correction program written.
2 ROM, 15) a control circuit that controls tit reading, (6) an address bus, +71t:t data bus, (8) a memory read instruction signal from the CPU [11], (9) a control circuit ( 5) Second RQM created in
+41 address signal address bus, (10) is a read instruction signal from the first ROMf31 created by the control circuit (5), (11) is the second ROM created by the control circuit 15) This is a read instruction signal from +41.
第2図は第1図の制御回路(5)部分を示すブロック図
であり、図において+61 、 +81 、 +91
、 (10)、 (11)は第1図の同一符号と同一の
バスまたは16号を示し、(12)はCPU fl)か
らのアドレス信号を解読して、第1のROM +31の
上記アドレス信号の指示するアドレスの属するブロック
を選択するデコーダ、(13)はデコーダ(12)で選
択されたブロックに対する修正プログラムが第2のRO
M +41に書込lれている場合に書込まれているブロ
ックを選択するブロック選択回路、(14)はブロック
選択回路(13)で選択され次第2のROM +41の
ブロックに属するアドレスのアドレス信号を作成するエ
ンコーダ、(15)はCPU filからのアドレス信
号とメモリ読出し指示信号(8)によシブログラム読出
し指示信号(16)を作成する信号作成回路、(17)
、(18)(19)、(20)は論理ゲートである。FIG. 2 is a block diagram showing the control circuit (5) part of FIG. 1, and in the figure, +61, +81, +91
, (10) and (11) indicate the same bus or No. 16 as the same reference numerals in FIG. The decoder (13) selects the block to which the address indicated by the block belongs, and the modification program for the block selected by the decoder (12) is the second RO.
A block selection circuit selects the written block when data is written to M +41, and (14) is an address signal of an address belonging to the block of ROM 2 +41 as soon as it is selected by the block selection circuit (13). (15) is a signal generation circuit that generates a program read instruction signal (16) using an address signal from the CPU fil and a memory read instruction signal (8); (17)
, (18), (19), and (20) are logic gates.
第3図はブロック選択回路(13)における信号線接続
法を示す説明図である。FIG. 3 is an explanatory diagram showing a signal line connection method in the block selection circuit (13).
この実施例では、第1のROM 131と第2のROM
+41にそれぞれ4にバイトの容量を持つものを使用
し、128バイトt−1ブロツクとする32ブロツクに
区分けし、第1のRQM +31のプログラムに誤り個
所が存在するブロックに対するブロックごとの修正プロ
グラムが第2のROM 141に書込まれているものと
する。In this embodiment, the first ROM 131 and the second ROM
+41 with a capacity of 4 bytes each, divided into 32 blocks of 128 bytes t-1 block, and a correction program for each block for the block where an error exists in the first RQM +31 program is executed. It is assumed that the data is written in the second ROM 141.
ブロック選択回路(13)は、デコーダ(12)が選択
した第1のROM +3)のブロックを示す信号の信号
線(アドレス信号がO)I〜7 FHの第1ブロツクに
対する号からアドレス信号がF 80H〜FFFHの第
五ブロックに対するP までの32本の信号線)と、第
2のROM +41のブロックを示す信号の信号線(Q
l からQ3□までの32本)との間で、第1の双肩(
3)のプログラムに誤り個所が存在するブロックに対す
る信号線と該ブロックに対する修正プロ、ダラムの書込
まれている第2のROM +41のブロックに対する信
号線とがジャンパ線(21)で接続され、第2の鳩(4
)の修正プログラムの書込まれているブロックが選択さ
れるように構成されている。第3図(alは8g1のR
OM 131の@4ブO”)りに対する修正プログラム
が第2のROM +4)の第1ブロツクに書込まれてい
る場合の両ブロックのメモリ番地の関係と、ブロック選
択回路(13)における接続状態を示し、第3図tbl
t−jプログラム修正のブロックが増えた場合のものを
示す。The block selection circuit (13) selects a signal line (address signal is O) for a signal indicating the block of the first ROM (+3) selected by the decoder (12). 32 signal lines up to P for the fifth block from 80H to FFFH) and a signal line for the signal indicating the block of second ROM +41 (Q
32 from l to Q3□), the first double shoulder (
The signal line for the block in which there is an error in the program in step 3) and the signal line for the second ROM +41 block in which the correction program and Durham are written are connected by a jumper wire (21). 2 doves (4
) is configured so that the block in which the modification program is written is selected. Figure 3 (al is R of 8g1
The relationship between the memory addresses of both blocks and the connection state in the block selection circuit (13) when the modification program for @4 block of OM 131 is written in the first block of the second ROM +4) Figure 3 tbl
This figure shows the case where the number of blocks of t-j program modification increases.
第1のROM +3)におけるアドレス選択は、CPU
IIIからのアドレス信号によシ行われ、第2のROM
+41におけるアドレス選択は、エンコーダ(14)
で作成されたアドレス信号により行われる。Address selection in the first ROM +3) is performed by the CPU
The second ROM
Address selection at +41 is done by encoder (14)
This is done using the address signal created in .
CPU filからメモリ読出し指示信号(8)とアド
レス信号が送られてくると、信号作成回路(15)でプ
ログラム読出し指示信号(16)が作成され、出力され
る。一方、デコーダ(12)でアドレス信号が解読され
、第1のROM +31の丘記アドレス信号の指示する
アドレスの属するブロックが選択され、PoからP3□
までの信号線の選択されたブロックを示す信号がHとな
る。選択されたブロックに対する修正プログラムが第2
の頭(4)に書込まれていない場合は、ブロック選択回
路(13)からのQエ からQ32 ’Jでの信号線の
いずれの信号もHとなることがなく、論理ゲート(17
) 、 (18) 、 (19) 。When a memory read instruction signal (8) and an address signal are sent from the CPU fil, a program read instruction signal (16) is generated in a signal generation circuit (15) and output. On the other hand, the decoder (12) decodes the address signal, selects the block to which the address indicated by the first ROM +31 address signal belongs, and selects the block from Po to P3□.
The signal indicating the selected block of the signal line up to becomes H. The second patch will be applied to the selected block.
If it is not written to the head (4) of the block selection circuit (13), none of the signals on the signal lines from QE to Q32'J from the block selection circuit (13) will become H, and the logic gate (17
), (18), (19).
(20)Kよって読出し指示信号(10)が作成され、
この信号(10)が有効なときは、CPUfilからの
アドレス信号の指示によって、第1のRAM +31か
らプログラムが読出される。(20) A read instruction signal (10) is created by K,
When this signal (10) is valid, the program is read from the first RAM +31 in accordance with the address signal instruction from CPUfil.
デコーダ(12)で選択されたブロックに対する修正プ
ログラムが第2のROM +41に書込まれている場合
は、ブロック選択回路(13)で信号がHとなり′fi
:、P からP3□までのうちの1本の信号線に接続
されているQ からQ3□1でのうちの1本の信号線の
信号がHとなり、論理ゲート(17) 、 (1a)
。If the modification program for the block selected by the decoder (12) is written in the second ROM +41, the signal becomes H in the block selection circuit (13) and 'fi
:, the signal on one signal line from Q to Q3□1 connected to one signal line from P to P3□ becomes H, and logic gates (17), (1a)
.
(19) 、 (20)によって続出し指示信号(11
)が作成される。一方、エンコーダ(14)テリカラQ
までの信号線のHとなった信号の示す第2のROM(4
)のブロックに属するアドレスのアドレス信号が作成さ
れ、上記信号(II )が有効なときは、エンコーダ(
14)で作成されたアドレス信号の指示によって、第2
のROM +41から修正プログラムが読出される。(19) and (20) cause the instruction signal (11
) is created. On the other hand, encoder (14) Terikala Q
The second ROM (4) indicated by the H signal on the signal line up to
) is created, and when the above signal (II) is valid, the encoder (
According to the instruction of the address signal created in step 14), the second
The modification program is read from ROM +41.
プログラムの修正状態を前の状態に復旧するには、ブロ
ック選択回路(13)のジャンパ線(21)の接続を元
の状態に戻せばよい。In order to restore the modified state of the program to the previous state, it is sufficient to restore the connection of the jumper wire (21) of the block selection circuit (13) to its original state.
なお、lブロックの容量及びブロック数は修正内容に適
するものがよく、第2のROM+41の容量が必ずしも
第1のROM +31の容量と等しい必要がない。Note that the capacity of the l block and the number of blocks are preferably appropriate for the contents of the modification, and the capacity of the second ROM+41 does not necessarily have to be equal to the capacity of the first ROM+31.
また、上記実施例ではプログラムを書込んだROMと修
正プログラム読出込んだROM k別個のものとしたが
、大容量のR(Xvi t−用いて、空き領域を修正プ
ログラム用のROMとする構成としてもよい。In addition, in the above embodiment, the ROM in which the program is written and the ROM in which the correction program is read are separate, but it is also possible to use a large-capacity R ( Good too.
この発明は、データを書込んでおくデータメモlJテモ
、ROMt用いる場合は、適用できることはいうまでも
ない。Needless to say, the present invention can be applied when using a data memory or ROM in which data is written.
以上のように、この発明によれば、修正回数が増えても
、従来のよりにROMの使用数を増す必要がなく、かつ
、以前の状態に復旧することが容易であり、効率よくプ
ログラムの修正ができるという効果がある。As described above, according to the present invention, even if the number of modifications increases, there is no need to increase the number of ROMs used than in the past, and it is easy to restore the previous state, allowing efficient program execution. This has the effect of being able to be corrected.
第1図はこの発明の一実施例を示すブロック図、@2図
は第1図の制御回路部分を示すブロック図、第3図は第
2図のブロック選択回路における信号線連結法を示す説
明図である。
図において(1)はCPU12)はこの発明のプログラ
ムメモリ、(3)は第1のROM、 141i!第2の
ROM、 151は制御回路、(12)はデコーダ、(
13)はブロック選択回路、(14)はエンコーダ%(
15)は信号作成回路、(17) 、 (18) 、
(19) 、 (20)は論理ゲートである。
尚、各図中同一符号は同一部分を示す。Fig. 1 is a block diagram showing an embodiment of the present invention, Fig. 2 is a block diagram showing the control circuit portion of Fig. 1, and Fig. 3 is an explanation showing the signal line connection method in the block selection circuit of Fig. 2. It is a diagram. In the figure, (1) is the CPU 12) is the program memory of the present invention, (3) is the first ROM, 141i! 2nd ROM, 151 is a control circuit, (12) is a decoder, (
13) is the block selection circuit, (14) is the encoder% (
15) is a signal generation circuit, (17), (18),
(19) and (20) are logic gates. Note that the same reference numerals in each figure indicate the same parts.
Claims (1)
の第1の読出し専用メモリを所定数のバイトごとに複数
個のブロックに区分けし、プログラムに誤り個所が存在
するブロックに対するブロックごとの修正プログラムを
書込んだ第2の読出し専用メモリと、中央処理装置から
のアドレス信号を解読して上記第1の読出し専用メモリ
の上記アドレス信号の指示するアドレスの属するブロッ
クを選択するデコーダと、このデコーダによって選択さ
れた上記第1の読出し専用メモリのブロックに対する修
正プログラムが上記第2の読出し専用メモリに書込まれ
ている場合に上記修正プログラムの書込まれている上記
第2の読出し専用メモリのブロックを選択するブロック
選択回路と、このブロック選択回路によって選択された
上記第2の読出し専用メモリのブロックに属するアドレ
スのアドレス信号を作成するエンコーダと、中央処理装
置からのプログラム読出し指示によって上記ブロック選
択回路からのブロック選択の出力信号が存在する場合に
上記第2の読出し専用メモリからプログラムを読出すこ
とを指示し、上記出力信号が存在しない場合に上記第1
の読出し専用メモリからプログラムを読出すことを指示
する論理回路を備えたプログラムメモリ回路。A first read-only memory in which a program has been written, and this first read-only memory are divided into multiple blocks for each predetermined number of bytes, and a correction program is applied to each block for blocks in which errors exist in the program. a second read-only memory that has been written into; a decoder that decodes the address signal from the central processing unit and selects a block of the first read-only memory to which the address indicated by the address signal belongs; and a block that is selected by the decoder. If a modification program for the block of the first read-only memory that has been modified is written in the second read-only memory, select the block of the second read-only memory in which the modification program is written. a block selection circuit that generates an address signal of an address belonging to the block of the second read-only memory selected by the block selection circuit; Instructs to read the program from the second read-only memory when the block selection output signal exists, and when the output signal does not exist, the first
A program memory circuit comprising logic circuitry for directing reading of a program from a read-only memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60130172A JPS61289599A (en) | 1985-06-14 | 1985-06-14 | Program memory circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60130172A JPS61289599A (en) | 1985-06-14 | 1985-06-14 | Program memory circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS61289599A true JPS61289599A (en) | 1986-12-19 |
Family
ID=15027751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60130172A Pending JPS61289599A (en) | 1985-06-14 | 1985-06-14 | Program memory circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS61289599A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0333927A (en) * | 1989-06-29 | 1991-02-14 | Canon Inc | Electronic equipment |
-
1985
- 1985-06-14 JP JP60130172A patent/JPS61289599A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0333927A (en) * | 1989-06-29 | 1991-02-14 | Canon Inc | Electronic equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4163280A (en) | Address management system | |
EP0173981A2 (en) | Cache memory control circuit | |
US4095268A (en) | System for stopping and restarting the operation of a data processor | |
US4057850A (en) | Processing link control device for a data processing system processing data by executing a main routine and a sub-routine | |
JPS61289599A (en) | Program memory circuit | |
JPS626269B2 (en) | ||
US5495599A (en) | Information processing system for relocating data and changing status information corresponding to the relocated data | |
JPS5945694A (en) | Modification system for rom read information | |
US20020104056A1 (en) | System and method for building a checksum | |
JPS60173631A (en) | Control program switching system | |
JP2562486B2 (en) | Data processing device error handling method | |
JPH03266141A (en) | Microprocessor system | |
JPH0239812B2 (en) | ||
JPS59186048A (en) | Microprogram control system | |
JPH0226252B2 (en) | ||
JPH0424732B2 (en) | ||
JPS6227415B2 (en) | ||
JPS59123918A (en) | Buffer memory controlling system | |
JPS63195749A (en) | Control system for selection signal of read-only memory | |
JPH01131927A (en) | Program correcting method | |
JPS60262244A (en) | Data processor | |
JPS59114654A (en) | Memory device | |
JPS60214058A (en) | Memory access control circuit | |
JPS5960551A (en) | Memory access controlling system | |
JPH0810429B2 (en) | Micro program controller |