JP2002041494A - Single-chip microcomputer - Google Patents
Single-chip microcomputerInfo
- Publication number
- JP2002041494A JP2002041494A JP2000227487A JP2000227487A JP2002041494A JP 2002041494 A JP2002041494 A JP 2002041494A JP 2000227487 A JP2000227487 A JP 2000227487A JP 2000227487 A JP2000227487 A JP 2000227487A JP 2002041494 A JP2002041494 A JP 2002041494A
- Authority
- JP
- Japan
- Prior art keywords
- address
- rom
- operation mode
- program
- area
- 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.)
- Granted
Links
Landscapes
- Microcomputers (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、シングルチップマ
イクロコンピュータに関し、特に、リセット時又は割り
込み受理時に処理を開始するプログラムの先頭アドレス
を特定のベクタアドレス領域から読み出すシングルチッ
プマイクロコンピュータにおける、そのベクタアドレス
の制御方法に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a single-chip microcomputer, and more particularly, to a vector address of a single-chip microcomputer for reading a starting address of a program for starting processing upon reset or acceptance of an interrupt from a specific vector address area. In the control method.
【0002】[0002]
【従来の技術】読み出し専用メモリ(以下ROMと略す)
を内蔵するシングルチップマイクロコンピュータは、チ
ップのテストを行うために通常はチップの外部から命令
をフェッチさせるモードを備えている。このモードはユ
ーザが使用するモードの一つであるプロセッサモードと
して備えられる場合と、メーカが使用するテストモード
として備えられる場合とがある。いずれの場合も、特定
の端子からアドレス及び命令コードの入出力を行う必要
があるため、内蔵ROMを使用して動作するシングルチ
ップモードとは異なる状態を前記特定の端子に対して機
能させなければならない。つまり、前述のモードではシ
ングルチップモードにおける端子の機能をテストできな
いことになる。2. Description of the Related Art Read-only memory (hereinafter abbreviated as ROM)
A single-chip microcomputer having a built-in memory usually has a mode in which instructions are fetched from outside the chip in order to test the chip. This mode may be provided as a processor mode, which is one of the modes used by the user, and may be provided as a test mode used by the manufacturer. In any case, since it is necessary to input and output an address and an instruction code from a specific terminal, a state different from the single-chip mode operating using the built-in ROM must be performed for the specific terminal. No. That is, in the above-described mode, the function of the terminal in the single-chip mode cannot be tested.
【0003】しかしながら、メーカはチップの機能を保
証するために、全ての動作状態で正しくチップが動作す
るかをテストする必要がある。そこで、チップの外部か
ら命令をフェッチさせるモードではテストできない端子
機能のテストを行うために、メーカ用プログラム領域を
内蔵し、シングルチップモードと同一の状態でユーザ用
プログラム領域ではなくメーカ用プログラム領域から命
令をフェッチしてテストを行う手段や、内蔵RAMにプ
ログラムを書き込み、内蔵RAMから命令をフェッチし
てテストを行う手段等が備えられている。However, in order to guarantee the function of the chip, the manufacturer needs to test whether the chip operates correctly in all the operation states. Therefore, in order to test pin functions that cannot be tested in the mode in which instructions are fetched from the outside of the chip, a maker program area is built in, and in the same state as in the single-chip mode, the maker program area is used instead of the user program area. There are provided a means for fetching an instruction and performing a test, a means for writing a program in a built-in RAM and fetching an instruction from the built-in RAM and performing a test.
【0004】次に、従来の一般的なシングルチップマイ
クロコンピュータについて、図14及び図15を参照し
ながら説明する。図14は、従来のシングルチップマイ
クロコンピュータの構成を示すブロック図である。図1
4において、1はCPU、2はROM、3はRAM、4
はI/Oで、DBはデータバス、ABはアドレスバスで
ある。Next, a conventional general single-chip microcomputer will be described with reference to FIGS. 14 and 15. FIG. FIG. 14 is a block diagram showing a configuration of a conventional single-chip microcomputer. Figure 1
In 4, 1 is a CPU, 2 is a ROM, 3 is a RAM, 4
Is an I / O, DB is a data bus, and AB is an address bus.
【0005】このような構成のシングルチップマイクロ
コンピュータは、CPU1からアドレスバスABを介し
て指示されたROMアドレスに格納されたデータを、R
OM2からデータバスDBを介して随時読み出しながら
命令を実行する。また必要に応じてRAM3へのデータ
の書き込み、読み出しを行い命令処理を行っている。場
合によってはRAM3上に配置された命令を実行するこ
とも可能である。[0005] The single-chip microcomputer having the above-described configuration transfers data stored in the ROM address designated by the CPU 1 via the address bus AB to the R.
The instruction is executed while being read from the OM 2 via the data bus DB as needed. Also, data is written to and read from the RAM 3 as necessary, and command processing is performed. In some cases, it is also possible to execute an instruction arranged on the RAM 3.
【0006】図15(a)は、従来のシングルチップマイ
クロコンピュータのROMデータの格納状態を示す図で
ある。図15(b)は、ユーザ用動作モード時のROMデ
ータの格納状態を示す図である。図15(c)は、メーカ
用動作モード時のROMデータの格納状態を示す図であ
る。FIG. 15A is a diagram showing a storage state of ROM data of a conventional single-chip microcomputer. FIG. 15B is a diagram showing the storage state of ROM data in the user operation mode. FIG. 15C is a diagram showing the storage state of ROM data in the manufacturer operation mode.
【0007】図15において,領域A(x’0000
0’〜x’0FFFF’)はRAM領域、領域B(x’1
0000’〜x’1FFFF’)はメーカ用ベクタアド
レス領域及びメーカ用プログラム領域、領域C(x’1
0000’〜x’1FFFF’)はユーザ用ベクタアド
レス領域及びユーザ用プログラム領域、領域D(x’2
0000’〜x’3FFFF’)は共用プログラム領域
である。メーカ用ベクタアドレス領域とユーザ用ベクタ
アドレス領域は、同一論理アドレス空間の同一アドレス
の異なるバンク(領域Bと領域C)に配置される。また、
メーカ用プログラムはメーカ用プログラム領域(領域B
内)に格納されている。シングルチップマイクロコンピ
ュータは、リセット解除時にベクタアドレス領域(x’
10000’〜x’10100)に格納されたリセット
ベクタアドレスからプログラムの実行を開始する。In FIG. 15, an area A (x'0000)
0 'to x'0FFFF') are a RAM area and an area B (x'1
0000 'to x'1FFFF') are a maker vector address area and a maker program area, and an area C (x'1
0000 ′ to x′1FFFF ′) are a user vector address area and a user program area, and an area D (x′2
0000 'to x'3FFFF') are shared program areas. The maker vector address area and the user vector address area are arranged in different banks (area B and area C) of the same address in the same logical address space. Also,
The maker program is in the maker program area (area B
In). The single chip microcomputer uses the vector address area (x '
The execution of the program is started from the reset vector address stored in (10000 ′ to x′10100).
【0008】なお、論理アドレス空間をx’0000
0’〜x’3FFFF’までの256Kバイトとする。
また、RAM容量を64Kバイト、ベクタアドレス領域
を256バイトとする。Note that the logical address space is x'0000
It is 256 Kbytes from 0 'to x'3FFFF'.
The RAM capacity is 64 Kbytes, and the vector address area is 256 bytes.
【0009】以下に、従来のシングルチップマイクロコ
ンピュータの動作について、説明する。従来のリセット
スタート時や割込受理時に処理を開始する先頭アドレス
を特定のベクタアドレス領域(本実施例ではx’100
00’〜x’10100’)から読み出すシングルチッ
プマイクロコンピュータでは、ユーザ用プログラムある
いはメーカ用プログラムを使用する場合に同一のベクタ
アドレス領域から処理の先頭アドレスを読み出す。しか
しながら、一般的にユーザ用プログラムとメーカ用プロ
グラムの双方において、前述の処理先頭アドレスを同一
の値にすることは非常に困難である。そこで、先頭アド
レスを異なった値にするために、図15(a)の領域Bと
領域Cに示すように、メーカ用プログラムとユーザ用プ
ログラムを同一アドレスの異なるバンク空間に配置す
る。なお、バンク空間領域Bと領域Cには、それぞれ固
有のプログラムと固有のベクタアドレス領域が含まれ
る。ユーザ用プログラムを使用する場合は、図15(b)
に示すように、バンクをユーザ用プログラム側(領域C)
へ切り換える。また、テストを行う場合は、図15(c)
に示すように、バンクをメーカ用プログラム領域側(領
域B)へ切り換える。このような切り換えは、シングル
チップマイクロコンピュータの特定の端子の状態(I/
O4より入力)により動作モードを決定し、動作モード
制御信号S100により実行される。The operation of the conventional single-chip microcomputer will be described below. In a conventional reset start or an interrupt acceptance, a start address at which processing is started is set to a specific vector address area (in this embodiment, x'100
In a single-chip microcomputer reading from 00 ′ to x′10100 ′), when a user program or a maker program is used, the head address of the process is read from the same vector address area. However, it is generally very difficult for the user program and the maker program to set the above-mentioned processing start address to the same value. Therefore, in order to set the start address to a different value, as shown in an area B and an area C in FIG. 15A, a maker program and a user program are arranged in different bank spaces having the same address. Note that the bank space area B and the area C include a unique program and a unique vector address area, respectively. When the user program is used, FIG.
As shown in the figure, the bank is placed on the user program side (area C).
Switch to. In the case of performing a test, FIG.
The bank is switched to the maker program area (area B) as shown in FIG. Such switching is performed by changing the state of a specific terminal (I /
The operation mode is determined by the operation mode control signal S100.
【0010】また、内蔵RAMを用いる場合は、特殊な
動作モードにおいて内蔵RAMにテスト用のプログラム
を書き込み、次に命令をフェッチするメモリをROMか
らRAMに切り換えてテストを行う。当然この場合は、
ベクタアドレス領域はRAM側に割り当てられる。When the built-in RAM is used, a test program is written in the built-in RAM in a special operation mode, and the test for fetching an instruction is switched from the ROM to the RAM to perform the test. Of course, in this case,
The vector address area is allocated on the RAM side.
【0011】また、近年、電気的にデータの消去及び書
き込みが可能なフラッシュEEPROMを内蔵するシン
グルチップマイクロコンピュータが増加している。この
ようなシングルチップマイクロコンピュータは、内蔵す
るフラッシュEEPROMへの消去及び書き込み方法と
して、シングルチップマイクロコンピュータの端子を単
体のフラッシュEEPROMと同一の状態にし、外部か
らアドレス、データ及び制御信号を個別の端子に印加す
るパラレルモードと、シングルチップマイクロコンピュ
ータを動作させ、書き込みデータをシリアル通信で送受
信し、シングルチップマイクロコンピュータの命令実行
により書き込みを行うシリアルモードを有する場合が多
い。In recent years, the number of single-chip microcomputers having a built-in flash EEPROM capable of electrically erasing and writing data has been increasing. In such a single-chip microcomputer, as a method of erasing and writing to a built-in flash EEPROM, the terminals of the single-chip microcomputer are made to be in the same state as a single flash EEPROM, and address, data and control signals are externally supplied to individual terminals. And a serial mode in which a single-chip microcomputer is operated, write data is transmitted and received by serial communication, and writing is performed by executing instructions of the single-chip microcomputer.
【0012】前記シリアルモードで内蔵フラッシュEE
PROMの書き換えを行う場合は、シングルチップマイ
クロコンピュータに特別のプログラムを実行させる必要
がある。リセットスタート時や割込受理時に処理を開始
する先頭アドレスを特定のベクタアドレス領域から読み
出すシングルチップマイクロコンピュータでは、動作モ
ードによりベクタアドレス領域を変更し実行するプログ
ラムを切り換えるか、ユーザ用プログラム内で、端子の
状態等を判断し実行するプログラムを切り換える必要が
ある。In the serial mode, the built-in flash EE
When rewriting the PROM, it is necessary to cause a single-chip microcomputer to execute a special program. In a single-chip microcomputer that reads a start address from which a process is started from a specific vector address area at the time of a reset start or acceptance of an interrupt, a program that changes the vector address area according to an operation mode and switches a program to be executed, or in a user program, It is necessary to switch the program to be executed by judging the state of the terminal.
【0013】[0013]
【発明が解決しようとする課題】上述のように、従来の
シングルチップマイクロコンピュータに内蔵されるRO
Mの容量には限りがあり、テスト用プログラムといえど
もその容量を有効に活用することが所望される。例え
ば、メーカ用プログラム領域(領域B)内のサブルーチン
プログラムや、BIOS等のプログラムルーチンをユー
ザ用プログラム側からコールすること等が考えられる。
しかしながら前述のバンク配置の手段では、メーカ用プ
ログラム領域(領域B)内のプログラムをユーザが使用す
る場合、バンクの切り換えという複雑な手続きを取らな
ければならない。またユーザ用プログラム領域(領域C)
とメーカ用プログラム領域(領域B)にはそれぞれ固有の
ベクタアドレス領域が含まれており、ユーザがメーカ用
プログラム領域(領域B)内のプログラムを使用するため
にメーカ用プログラム領域(領域B)側へバンクを切り換
えている間は割込等を受理することが出来ない。なぜな
らバンクをメーカ用プログラム領域(領域B)側に切り換
えている間に割込を受理するとメーカ用の割込処理プロ
グラムが起動されるからである。As described above, the RO built in a conventional single-chip microcomputer is described.
The capacity of M is limited, and it is desired to effectively use the capacity of a test program. For example, it is conceivable to call a subroutine program in the manufacturer program area (area B) or a program routine such as the BIOS from the user program side.
However, in the above-described bank arrangement means, when a user uses a program in the maker program area (area B), a complicated procedure of switching banks must be taken. User program area (area C)
And the maker program area (area B) each include a unique vector address area. In order for the user to use the program in the maker program area (area B), the maker program area (area B) side Interrupts cannot be accepted while the bank is being switched. This is because if an interrupt is received while the bank is being switched to the maker program area (area B), the maker interrupt processing program is started.
【0014】また一般的にシングルチップマイクロコン
ピュータに内蔵されるRAMの容量はROMに比べて少
なく、十分なプログラムを格納することができず、多種
の複雑なテストを一度に行うことは困難であるため、テ
スト項目毎にプログラムを書き換える必要がある。また
内蔵RAMにテスト用のプログラムを書き込むという操
作も必要となり、テストが煩雑になるという課題もあ
る。In general, the capacity of a RAM built into a single-chip microcomputer is smaller than that of a ROM, so that a sufficient program cannot be stored, and it is difficult to perform various kinds of complicated tests at one time. Therefore, it is necessary to rewrite the program for each test item. In addition, an operation of writing a test program into the built-in RAM is also required, which causes a problem that the test becomes complicated.
【0015】一方、フラッシュEEPROMのシリアル
モードでの書き換えにおいては、一般に書き換え用のプ
ログラム(以降ローダープログラムと称す)を消去するこ
とを禁止している。なぜなら、書き換え中にシングルチ
ップマイクロコンピュータに異常が発生した場合ローダ
ープログラムが破壊され、以後2度とシリアルモードで
書き換えが出来なくなるからである。従って、ユーザ用
プログラム内にローダープログラムを配置した場合はベ
クタアドレス領域をユーザ用プログラムと共有すること
になり、前記理由によりベクタアドレス領域の書き換え
が出来なくなるという課題が生じる。On the other hand, in rewriting a flash EEPROM in a serial mode, it is generally prohibited to erase a rewriting program (hereinafter referred to as a loader program). This is because if an error occurs in the single-chip microcomputer during rewriting, the loader program is destroyed, and the rewriting cannot be performed again in the serial mode. Therefore, when the loader program is arranged in the user program, the vector address area is shared with the user program, and the problem that the vector address area cannot be rewritten for the above reason occurs.
【0016】また、ベクタアドレス領域内に格納される
べきアドレスはユーザ用プログラムにより常に変化する
ものであり、このベクタアドレスの書き換えができなけ
れば、ユーザ用プログラムを作成する上で大きな障害と
なる。Also, the addresses to be stored in the vector address area always change depending on the user program, and if the vector address cannot be rewritten, it will be a major obstacle in creating the user program.
【0017】さらに、近年は設計の効率を高めるため
に、設計資産をIP(Intellectual Property)として登
録し、活用を推進する動きがある。IP化されたCPU
を使用する場合、ベクタアドレスの領域の切り換え機能
を有している場合は問題がないが、機能を有していない
場合は、IPコア外部で対応する必要がある。またフラ
ッシュEEPROM等のメモリに関しても、IP化され
る場合は2のべき乗の容量(例えば64Kバイト、12
8Kバイト、256Kバイト等)になっている場合が多
い。例えば論理アドレスとして256Kバイトの空間を
持つCPUに対してRAMを16Kバイト、残りをフラ
ッシュEEPROMにしたい場合、256KバイトのI
P化コアを使用することになる。この場合、フラッシュ
EEPROMの全容量のうち16Kバイトは論理アドレ
スを与えることができず使用できなくなり、無駄を生じ
る。Further, in recent years, there has been a movement to register design resources as IP (Intellectual Property) and promote utilization thereof in order to increase design efficiency. IP-based CPU
Is used, there is no problem in the case where the function of switching the area of the vector address is provided. Also, regarding a memory such as a flash EEPROM, when it is converted to an IP, a capacity of a power of 2 (for example, 64 Kbytes, 12
8 Kbytes, 256 Kbytes, etc.) in many cases. For example, if a CPU having a space of 256 Kbytes as a logical address is to have 16 Kbytes of RAM and the remainder to be a flash EEPROM, a 256 Kbyte I
A P core will be used. In this case, 16 Kbytes of the total capacity of the flash EEPROM cannot be assigned a logical address and cannot be used, resulting in waste.
【0018】本発明は、上記問題点を解決するためにな
されたものであり、動作モードに応じて異なるプログラ
ムの起動が可能であると共に、メーカ用プログラム領域
内のプログラムをユーザが使用可能なシングルチップマ
イクロコンピュータを提供すること、及び実装されるハ
ードウエアを最大限有効に活用することを目的とする。SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and a different program can be started according to an operation mode, and a program in a manufacturer program area can be used by a user. It is an object of the present invention to provide a chip microcomputer and to make the most of hardware to be mounted.
【0019】[0019]
【課題を解決するための手段】本発明の請求項1に記載
のシングルチップマイクロコンピュータは、各種プログ
ラムを格納したROMと、データを格納したRAMと、
該ROMに格納されたプログラムを実行するCPU
と、各種制御信号を出力する入出力装置とを内蔵したシ
ングルチップマイクロコンピュータにおいて、少なくと
も2つ以上の動作モードを有し、前記ROMにおいて、
前記動作モードの数を最大とする複数の異なるベクタア
ドレス領域は同一のROMアドレス空間の同一アドレス
に複数のバンクとして配置され、前記各動作モード時に
使用される各複数のプログラムの各々は前記ROMアド
レス空間の共用プログラム領域に配置され、かつ、前記
各動作モード時に使用される各複数のプログラム間にて
異なる動作モードに共通するプログラムは前記共用プロ
グラム領域の同一アドレスに配置され、前記シングルチ
ップマイクロコンピュータは、前記入出力装置から出力
される動作モード制御信号に基づいて前記複数の動作モ
ードのうちの1つを設定し、バンクを切り換えて異なる
ベクタアドレス領域を使用することにより前記設定され
た動作モードに応じて実行するプログラムを変更可能で
あり、かつ、前記異なる動作モードにおいて、前記共用
プログラム領域の同一アドレスに格納されたプログラム
の実行が可能であることを特徴とする。According to a first aspect of the present invention, there is provided a single-chip microcomputer comprising: a ROM storing various programs; a RAM storing data;
CPU for executing a program stored in the ROM
And a single-chip microcomputer incorporating an input / output device for outputting various control signals, the ROM having at least two or more operation modes,
A plurality of different vector address areas that maximize the number of the operation modes are arranged as a plurality of banks at the same address in the same ROM address space, and each of the plurality of programs used in each of the operation modes is the ROM address. A program that is arranged in a shared program area of a space and that is common to different operation modes among the plurality of programs used in each of the operation modes is arranged at the same address of the shared program area, and the single-chip microcomputer Sets one of the plurality of operation modes based on an operation mode control signal output from the input / output device, and switches the bank to use a different vector address area to set the operation mode. It is possible to change the program to be executed according to In consisting operation mode, characterized in that it is a possible execution of the program stored in the same address of the shared program area.
【0020】これにより、動作モードに応じて異なるプ
ログラムを起動できる。また、異なる動作モードにおい
て、共用プログラム領域の同一アドレスに格納されたプ
ログラムを使用できる。さらに、プログラム容量を有効
に活用し、ROM容量を節約できる。Thus, different programs can be started according to the operation mode. In different operation modes, programs stored at the same address in the shared program area can be used. Further, the capacity of the ROM can be saved by effectively utilizing the program capacity.
【0021】本発明の請求項2に記載のシングルチップ
マイクロコンピュータは、各種プログラムを格納したR
OMと、データを格納したRAMと、 該ROMに格納
されたプログラムを実行するCPUと、各種制御信号を
入出力する入出力装置とを内蔵したシングルチップマイ
クロコンピュータにおいて、少なくとも2つ以上の動作
モードを有し、CPUから出力されるベクタアドレス出
力信号と、入出力装置から出力される動作モード制御信
号とに従って、CPUから論理アドレスとして出力され
たベクタアドレスを変換するベクタアドレス変換手段が
備えられ、前記ROMにおいて、前記動作モードの数を
最大とする複数の異なるベクタアドレス領域は同一のR
OMアドレス空間の異なるアドレスに配置され、前記各
動作モード時に使用される各複数のプログラムの各々は
前記ROMアドレス空間の共用プログラム領域に配置さ
れ、かつ、前記各動作モード時に使用される各複数のプ
ログラム間にて異なる動作モードに共通するプログラム
は前記共用プログラム領域の同一アドレスに配置され、
前記シングルチップマイクロコンピュータは、前記入出
力装置から出力される動作モード制御信号に基づいて前
記複数の動作モードのうちの1つを設定し、前記ベクタ
アドレス変換手段により決定されたベクタアドレス領域
に格納されたプログラムを実行可能であり、かつ、前記
異なる動作モードにおいて前記共用プログラム領域の同
一アドレスに格納されたプログラムの実行が可能である
ことを特徴とする。According to a second aspect of the present invention, there is provided a single-chip microcomputer which stores various programs.
At least two or more operation modes in a single-chip microcomputer including an OM, a RAM storing data, a CPU executing a program stored in the ROM, and an input / output device for inputting / outputting various control signals. And a vector address conversion means for converting a vector address output as a logical address from the CPU according to a vector address output signal output from the CPU and an operation mode control signal output from the input / output device, In the ROM, a plurality of different vector address areas for maximizing the number of the operation modes are the same R address.
Each of the plurality of programs used at each address in the OM address space and used in each of the operation modes is arranged in the shared program area of the ROM address space, and each of the plurality of programs used at each of the operation modes is used. Programs common to different operation modes among the programs are arranged at the same address of the shared program area,
The single-chip microcomputer sets one of the plurality of operation modes based on an operation mode control signal output from the input / output device, and stores the one in the vector address area determined by the vector address conversion means. And executing the programs stored at the same address in the shared program area in the different operation modes.
【0022】これにより、ベクタアドレス変換手段によ
り使用するべきベクタアドレスを決定して、異なるプロ
グラムを起動できる。また、異なる動作モードにおい
て、共用プログラム領域の同一アドレスに格納されたプ
ログラムを使用できる。さらに、プログラム容量を有効
に活用し、ROM容量を節約できる。Thus, a different program can be started by determining the vector address to be used by the vector address conversion means. In different operation modes, programs stored at the same address in the shared program area can be used. Further, the capacity of the ROM can be saved by effectively utilizing the program capacity.
【0023】本発明の請求項3に記載のシングルチップ
マイクロコンピュータは、請求項1または2に記載のシ
ングルチップマイクロコンピュータにおいて、前記動作
モードは、1つ以上のユーザが使用するユーザ用動作モ
ードと、1つ以上のメーカが使用するメーカ用動作モー
ドとを含み、前記ROMにおいて、前記ユーザ用動作モ
ード時に使用するベクタアドレス領域と、前記メーカ用
動作モード時に使用するベクタアドレス領域との2つの
異なるベクタアドレス領域が同一のROMアドレス空間
に配置され、前記ユーザ用動作モードと前記メーカ用動
作モードとのいずれかに使用される各複数のユーザ用プ
ログラム及びメーカ用プログラムは、前記ROMアドレ
ス空間の前記共用プログラム領域に配置され、かつ、前
記ユーザ用動作モードと前記メーカ用動作モードとのい
ずれかに使用される各々複数のプログラム間にて共通す
るプログラムは、前記共用プログラム領域の同一アドレ
スに配置され、前記シングルチップマイクロコンピュー
タは、前記各動作モードに応じて異なるベクタアドレス
領域を使用することにより、前記ユーザ用プログラムと
前記メーカ用プログラムとを選択可能であり、かつ、前
記ユーザ用動作モードと前記メーカ用動作モードとのい
ずれかの動作モードにおいて前記共用プログラム領域の
同一アドレスに格納されたプログラムを実行可能である
ことを特徴とする。A single chip microcomputer according to a third aspect of the present invention is the single chip microcomputer according to the first or second aspect, wherein the operation modes include a user operation mode used by one or more users. And a maker operation mode used by one or more manufacturers. The ROM has two different vector address areas used in the user operation mode and a vector address area used in the maker operation mode. The vector address area is arranged in the same ROM address space, and each of the plurality of user programs and manufacturer programs used in one of the user operation mode and the maker operation mode is provided in the ROM address space. It is located in a shared program area and has the user operation mode. And a common program among the plurality of programs used in any of the operation modes for the manufacturer and the manufacturer is arranged at the same address in the shared program area, and the single-chip microcomputer operates in each of the operation modes. The user program and the manufacturer program can be selected by using different vector address areas in accordance with each other, and in any one of the user operation mode and the manufacturer operation mode, The program stored in the same address of the shared program area can be executed.
【0024】これにより、動作モードに応じてユーザ用
プログラムとメーカ用プログラムの起動を選択でき、か
つユーザがメーカ用プログラム領域内のプログラムを使
用できる。さらに、プログラム容量を有効に活用し、R
OM容量を節約できる。Thus, the user program and the maker program can be started in accordance with the operation mode, and the user can use the program in the maker program area. Furthermore, by effectively utilizing the program capacity, R
OM capacity can be saved.
【0025】本発明の請求項4に記載のシングルチップ
マイクロコンピュータは、各種プログラムを格納したR
OMと、データを格納したRAMと、 該ROMに格納
されたプログラムを実行するCPUと、各種制御信号を
入出力する入出力装置とを内蔵したシングルチップマイ
クロコンピュータにおいて、少なくとも2つ以上の動作
モードを有し、CPUから出力された論理アドレスを物
理アドレスに変換するROMアドレス変換手段と、前記
各動作モードに応じて前記ROMへのアドレス信号の全
てのビットに対し所要の処理を施す信号処理回路とが備
えられ、前記シングルチップマイクロコンピュータは、
前記入出力装置から出力される動作モード制御信号に基
づいて前記複数の動作モードのうちの1つを設定し、前
記設定された動作モードに応じて、前記ROMアドレス
変換手段により変換されたROMアドレスの全てのビッ
トに対し所要の処理を施してROMアドレスを決定し、
前記動作モードに応じて決定されたROMアドレスに格
納されたプログラムの実行が可能であることを特徴とす
る。According to a fourth aspect of the present invention, there is provided a single-chip microcomputer which stores various programs.
At least two or more operation modes in a single-chip microcomputer including an OM, a RAM storing data, a CPU executing a program stored in the ROM, and an input / output device for inputting / outputting various control signals. ROM address conversion means for converting a logical address output from a CPU into a physical address, and a signal processing circuit for performing required processing on all bits of an address signal to the ROM according to each operation mode Wherein the single-chip microcomputer comprises:
One of the plurality of operation modes is set based on an operation mode control signal output from the input / output device, and the ROM address converted by the ROM address conversion means is set according to the set operation mode. The required processing is performed on all the bits of to determine the ROM address,
The program stored in the ROM address determined according to the operation mode can be executed.
【0026】これにより、動作モードに応じてROMへ
入力されるアドレスの全てのビットに対し所要の処理を
施すことにより、異なるプログラムの起動が可能であ
る。また、メーカが、ユーザ用プログラム領域を使用す
ることなくメーカ用プログラムを使用することができ
る。さらに、内蔵ROMの使用不可領域を有効に活用
し、ROM容量を節約できる。Thus, different programs can be started by performing required processing on all bits of the address input to the ROM according to the operation mode. Further, the maker can use the maker program without using the user program area. Furthermore, the unusable area of the built-in ROM can be effectively used, and the ROM capacity can be saved.
【0027】本発明の請求項5に記載のシングルチップ
マイクロコンピュータは、各種プログラムを格納したR
OMと、データを格納したRAMと、 該ROMに格納
されたプログラムを実行するCPUと、各種制御信号を
入出力する入出力装置とを内蔵したシングルチップマイ
クロコンピュータにおいて、少なくとも2つ以上の動作
モードを有し、CPUから出力された論理アドレスを物
理アドレスに変換するROMアドレス変換手段と、前記
各動作モードに応じて前記ROMへのアドレス信号のう
ち上位のmビット(mは任意の整数)に対し所要の処理を
施す信号処理回路とが備えられ、前記シングルチップマ
イクロコンピュータは、前記入出力装置から出力される
動作モード制御信号に基づいて前記複数の動作モードの
うちの1つを設定し、前記設定された動作モードに応じ
て、前記ROMアドレス変換手段により変換されたRO
Mアドレスのうち、上位任意のビットに対し所要の処理
を施すROMアドレスを決定し、前記動作モードに応じ
て決定されたROMアドレスに格納されたプログラムの
実行が可能であることを特徴とする。According to a fifth aspect of the present invention, there is provided a single-chip microcomputer which stores various programs.
At least two or more operation modes in a single-chip microcomputer including an OM, a RAM storing data, a CPU executing a program stored in the ROM, and an input / output device for inputting / outputting various control signals. ROM address conversion means for converting the logical address output from the CPU into a physical address, and the upper m bits (m is an arbitrary integer) of the address signal to the ROM according to each operation mode A signal processing circuit for performing required processing, the single-chip microcomputer sets one of the plurality of operation modes based on an operation mode control signal output from the input / output device, The RO converted by the ROM address conversion means according to the set operation mode.
It is characterized in that a ROM address for performing required processing on an arbitrary upper bit of the M addresses is determined, and a program stored in the ROM address determined according to the operation mode can be executed.
【0028】これにより、動作モードに応じてROMへ
入力されるアドレスのうち上位任意のビット数に対して
のみ所要の処理を施すことにより、異なるプログラムの
起動が可能であり、かつ、排他的論理和の個数を削減で
きる。さらに、内蔵ROMの使用不可領域を有効に活用
し、ROM容量を節約できる。Thus, a different program can be started by performing required processing only on an arbitrary number of high-order bits of an address input to the ROM according to an operation mode, and exclusive logic can be performed. The number of sums can be reduced. Furthermore, the unusable area of the built-in ROM can be effectively used, and the ROM capacity can be saved.
【0029】[0029]
【発明の実施の形態】以下本発明の実施の形態につい
て、図面を参照しながら説明する。なお、ここで示す実
施の形態は、あくまでも一例であって、必ずしもこの実
施の形態に限定されるものではない。Embodiments of the present invention will be described below with reference to the drawings. The embodiment described here is merely an example, and the present invention is not necessarily limited to this embodiment.
【0030】(実施の形態1)以下に、本発明の実施の
形態1に係るシングルチップマイクロコンピュータにつ
いて、図1、図2及び図3を用いて説明する。図1は、
実施の形態1に係るシングルチップマイクロコンピュー
タの構成を示すブロック図である。図1において、1は
CPU(中央処理装置)であり、ROM2に格納されたプ
ログラムを実行する。2はROM(読み出し専用メモリ)
であり、各種プログラムを格納している。3はRAM
(ランダムアクセスメモリ)であり、主としてデータを格
納している。4はI/O(入出力装置)であり、CPU1
の内部や外部に対して各種制御信号を出力する。5はI
/O端子である。DBはデータバスであり、情報を送受
信する。ABはアドレスバスであり、アドレス情報を伝
送する。S100は動作モード制御信号であり、ユーザ
用動作モードあるいはメーカ用動作モードの切り換えを
命令する信号である。(Embodiment 1) Hereinafter, a single-chip microcomputer according to Embodiment 1 of the present invention will be described with reference to FIGS. 1, 2 and 3. FIG. FIG.
FIG. 2 is a block diagram illustrating a configuration of a single-chip microcomputer according to the first embodiment. In FIG. 1, reference numeral 1 denotes a CPU (Central Processing Unit), which executes a program stored in a ROM 2. 2 is ROM (read only memory)
And stores various programs. 3 is RAM
(Random access memory), which mainly stores data. Reference numeral 4 denotes an I / O (input / output device);
It outputs various control signals to the inside and outside of the device. 5 is I
/ O terminal. DB is a data bus for transmitting and receiving information. AB is an address bus for transmitting address information. S100 is an operation mode control signal, which is a signal for instructing switching between the user operation mode and the manufacturer operation mode.
【0031】このような構成のシングルチップマイクロ
コンピュータは、少なくとも2つ以上の動作モードを有
し、ROMにおいて、前記動作モードの数を最大とする
複数の異なるベクタアドレス領域は同一のROMアドレ
ス空間の同一アドレスに複数のバンクとして配置され、
前記各動作モード時に使用される各複数のプログラムの
各々は前記ROMアドレス空間の共用プログラム領域に
配置され、かつ、前記各動作モード時に使用される各複
数のプログラム間にて異なる動作モードに共通するプロ
グラムは前記共用プログラム領域の同一アドレスに配置
されている。The single-chip microcomputer having such a configuration has at least two or more operation modes. In the ROM, a plurality of different vector address areas for maximizing the number of the operation modes are provided in the same ROM address space. It is arranged as multiple banks at the same address,
Each of the plurality of programs used in each of the operation modes is arranged in a shared program area of the ROM address space, and is common to a different operation mode among the plurality of programs used in each of the operation modes. The program is located at the same address in the shared program area.
【0032】なお、本実施の形態1または実施の形態2
に係るシングルチップマイクロコンピュータにおいて、
動作モードは、1つ以上のユーザが使用するユーザ用動
作モードと、1つ以上のメーカが使用するメーカ用動作
モードとを含み、前記ROMにおいて、前記ユーザ用動
作モード時に使用するベクタアドレス領域と、前記メー
カ用動作モード時に使用するベクタアドレス領域との2
つの異なるベクタアドレス領域が同一のROMアドレス
空間に配置され、前記ユーザ用動作モードと前記メーカ
用動作モードとのいずれかに使用される各複数のユーザ
用プログラム及びメーカ用プログラムは、前記ROMア
ドレス空間の前記共用プログラム領域に配置され、か
つ、前記ユーザ用動作モードと前記メーカ用動作モード
とのいずれかに使用される各々複数のプログラム間にて
共通するプログラムは、前記共用プログラム領域の同一
アドレスに配置されている。The first embodiment or the second embodiment
In the single-chip microcomputer according to
The operation modes include a user operation mode used by one or more users and a manufacturer operation mode used by one or more manufacturers. In the ROM, a vector address area used in the user operation mode is set. And the vector address area used in the manufacturer operation mode.
Two different vector address areas are arranged in the same ROM address space, and each of the plurality of user programs and the manufacturer program used in one of the user operation mode and the manufacturer operation mode is stored in the ROM address space. A program that is arranged in the shared program area and is shared between a plurality of programs used in one of the user operation mode and the manufacturer operation mode is assigned to the same address of the shared program area. Are located.
【0033】図2(a)は、実施の形態1に係るシングル
チップマイクロコンピュータのROMデータの格納状態
を示す図である。図2(b)は、ユーザ用モード時のRO
Mアドレスデータの格納状態を示す図である。図2(c)
は、メーカ用モード時のROMアドレスデータの格納状
態を示す図である。図2において、領域A(x’000
00’〜x’0FFFF’)はRAM領域、領域B’
(x’10000’〜x’100FF’)はメーカ用ベク
タアドレス領域、領域C’(x’10000’〜x’1
00FF’)はユーザ用ベクタアドレス領域、領域D
(x’10100’〜x’3FFFF’)は共用プログラ
ム領域である。FIG. 2A is a diagram showing a storage state of ROM data of the single-chip microcomputer according to the first embodiment. FIG. 2B shows the RO in the user mode.
FIG. 4 is a diagram illustrating a storage state of M address data. FIG. 2 (c)
FIG. 4 is a diagram showing a storage state of ROM address data in a maker mode. In FIG. 2, a region A (x'000
00 'to x'0FFFF') are a RAM area and an area B '
(x'10000 'to x'100FF') is a maker vector address area, area C '(x'10000' to x'1)
00FF ') is a user vector address area, area D
(x'10100 'to x'3FFFF') are shared program areas.
【0034】シングルチップマイクロコンピュータは、
リセット解除時にベクタアドレス領域(x’1000
0’〜x’100FF’)に格納されたリセットベクタ
アドレスからプログラムの実行を開始する。A single-chip microcomputer is:
When the reset is released, the vector address area (x'1000
The execution of the program is started from the reset vector address stored at 0 'to x'100FF').
【0035】なお、ベクタアドレス領域をx’0000
0’〜x’100FF’としたが、他のアドレスであっ
ても同様であることは言うまでもない。また、簡単化の
ために論理アドレス空間をx’00000’〜x’3F
FFF’までの256Kバイトとし、RAM容量を64
Kバイト、ベクタアドレス領域を256バイトとする。
当然ながらこれらの容量は任意に設定することが可能で
ある。Note that the vector address area is x'0000
0 'to x'100FF', but it goes without saying that the same applies to other addresses. For simplicity, the logical address space is defined as x'00000 'to x'3F
256K bytes up to FFF ', RAM capacity 64
It is assumed that K bytes and the vector address area are 256 bytes.
Of course, these capacities can be set arbitrarily.
【0036】以下に、実施の形態1に係るシングルチッ
プマイクロコンピュータの動作について説明する。ま
ず、CPU1は、ROMアドレスをアドレスバスABを
介してROM2へ出力する。また、I/O4は、I/O端
子5より入力された信号を基に動作モード制御信号S1
00を生成し、ROM2へ出力する。ROM2は、I/
O4から出力される動作モード制御信号S100に基づ
いて複数の動作モードのうちの1つを設定し、バンクを
切り換えて異なるベクタアドレス領域を使用することに
より、設定された動作モードに応じて実行するプログラ
ムを変更できる。また、異なる動作モードにおいて共用
プログラム領域に格納されたプログラムの実行が可能で
ある。The operation of the single-chip microcomputer according to the first embodiment will be described below. First, the CPU 1 outputs a ROM address to the ROM 2 via the address bus AB. The I / O 4 outputs an operation mode control signal S 1 based on a signal input from the I / O terminal 5.
00 is generated and output to the ROM 2. ROM2 has I / O
One of a plurality of operation modes is set based on the operation mode control signal S100 output from O4, and the bank is switched to use a different vector address area, thereby executing according to the set operation mode. Can change the program. Further, it is possible to execute a program stored in the shared program area in different operation modes.
【0037】なお、動作モード制御信号S100がLレ
ベルの時、図2(b)に示すようにユーザ用ベクタアドレ
ス領域C’が選択され、動作モード制御信号S100が
Hレベルの時、図2(c)に示すようにメーカ用ベクタア
ドレス領域B’が選択される。このように、各動作モー
ドに応じてユーザ用プログラムとメーカ用プログラムを
変更できる。When the operation mode control signal S100 is at an L level, the user vector address area C 'is selected as shown in FIG. 2B, and when the operation mode control signal S100 is at an H level, as shown in FIG. As shown in c), the maker vector address area B 'is selected. Thus, the user program and the maker program can be changed according to each operation mode.
【0038】そして、CPU1からアドレスバスABを
介して指示されたROMアドレスに格納されたデータ
を、ROM2からデータバスDBを介して随時読み出し
ながらプログラムを実行する。また、必要に応じてRA
M3へのデータの書き込み、読み出しを行い、命令処理
を行う。場合によっては、RAM3上に配置された命令
を実行することも可能である。The program is executed while the data stored at the ROM address specified by the CPU 1 via the address bus AB is read from the ROM 2 via the data bus DB as needed. Also, if necessary, RA
Data is written to and read from M3, and instruction processing is performed. In some cases, it is also possible to execute an instruction arranged on the RAM 3.
【0039】次に、従来のシングルチップマイクロコン
ピュータ及び本発明の実施の形態1に係るシングルチッ
プマイクロコンピュータのROMデータ格納状態を比較
するため、図3を用いて説明する。図3は、従来のシン
グルチップマイクロコンピュータ及び本発明の実施の形
態1に係るシングルチップマイクロコンピュータのRO
Mデータ格納状態を示した図である。Next, the comparison between the ROM data storage states of the conventional single-chip microcomputer and the single-chip microcomputer according to the first embodiment of the present invention will be described with reference to FIG. FIG. 3 shows a conventional single-chip microcomputer and the RO of the single-chip microcomputer according to the first embodiment of the present invention.
FIG. 6 is a diagram showing an M data storage state.
【0040】従来のシングルチップマイクロコンピュー
タでは、図3(a)に示すように、メーカ用プログラム領
域Bとユーザ用プログラム領域Cがバンク配置され排他
的に使用される。例えばユーザ用プログラムが3つ(U
1、U2、U3)とメーカ用プログラムが3つ(M1、M
2、M3)である場合、これらはそれぞれ領域Cと領域
Bに配置され、メーカ用プログラムM3とユーザ用プロ
グラムU1が同一アドレスである場合、従来のシングル
チップマイクロコンピュータでは個別に配置しなければ
ならない。しかしながら、本発明の実施の形態1に係る
シングルチップマイクロコンピュータでは、共用プログ
ラム領域にそれぞれのプログラム(U1,U2,U3、
M1、M2、M3)が配置されており、ユーザ用プログ
ラムU1とメーカ用プログラムM3が同一アドレスの場
合、どちらか一方を配置するだけでよく、ユーザ用動作
モードとメーカ用動作モードのいずれかの動作モードに
おいて共用プログラム領域の同一アドレスに格納された
プログラムを実行できる。このように、ユーザ用プログ
ラム(U1)もしくはメーカ用プログラム(M3)のプログ
ラムサイズ分だけROM容量を節約することができ、ま
た、ユーザが、ユーザ用プログラムと同一アドレスのメ
ーカ用プログラムを使用することができる。In a conventional single-chip microcomputer, as shown in FIG. 3A, a maker program area B and a user program area C are arranged in banks and used exclusively. For example, three user programs (U
1, U2, U3) and three manufacturer programs (M1, M
2, M3), they are arranged in the areas C and B, respectively. If the maker program M3 and the user program U1 have the same address, they must be individually arranged in the conventional single-chip microcomputer. . However, in the single-chip microcomputer according to the first embodiment of the present invention, each program (U1, U2, U3,
M1, M2, and M3), and when the user program U1 and the maker program M3 have the same address, only one of them is required, and either the user operation mode or the maker operation mode is required. In the operation mode, a program stored at the same address in the shared program area can be executed. As described above, the ROM capacity can be saved by the program size of the user program (U1) or the maker program (M3), and the user can use the maker program having the same address as the user program. Can be.
【0041】以上のように、本実施の形態1に係るシン
グルチップマイクロコンピュータによれば、各種プログ
ラムを格納したROMと、データを格納したRAMと、
該ROMに格納されたプログラムを実行するCPU
と、各種制御信号を出力する入出力装置とを内蔵したシ
ングルチップマイクロコンピュータにおいて、少なくと
も2つ以上の動作モードを有し、前記ROMにおいて、
前記動作モードの数を最大とする複数の異なるベクタア
ドレス領域は、同一のROMアドレス空間の同一アドレ
スに複数のバンクとして配置され、前記各動作モード時
に使用される各複数のプログラムの各々は、前記ROM
アドレス空間の共用プログラム領域に配置され、かつ、
前記各動作モード時に使用される各複数のプログラム間
にて、異なる動作モードに共通するプログラムは、前記
共用プログラム領域の同一アドレスに配置され、前記シ
ングルチップマイクロコンピュータは、前記入出力装置
から出力される動作モード制御信号に基づいて前記複数
の動作モードのうちの1つを設定し、バンクを切り換え
て、異なるベクタアドレス領域を使用することにより、
前記設定された動作モードに応じて実行するプログラム
を変更可能であり、かつ、前記異なる動作モードにおい
て、前記共用プログラム領域の同一アドレスに格納され
たプログラムの実行が可能であるので、各動作モードに
応じてバンクを切り換えて異なるベクタアドレスを使用
し、異なるプログラムの起動を実行でき、かつ、異なる
動作モードにおいて共用プログラム領域の同一アドレス
に格納されたプログラムを実行でき、プログラム容量を
有効に活用してROM容量を節約したシングルチップマ
イクロコンピュータを提供できる。As described above, according to the single-chip microcomputer according to the first embodiment, the ROM storing various programs, the RAM storing data,
CPU for executing a program stored in the ROM
And a single-chip microcomputer incorporating an input / output device for outputting various control signals, the ROM having at least two or more operation modes,
A plurality of different vector address areas for maximizing the number of the operation modes are arranged as a plurality of banks at the same address in the same ROM address space, and each of the plurality of programs used in each of the operation modes is ROM
Located in the shared program area of the address space, and
Among the plurality of programs used in each of the operation modes, programs common to different operation modes are arranged at the same address in the shared program area, and the single-chip microcomputer is output from the input / output device. By setting one of the plurality of operation modes based on the operation mode control signal, and switching between banks to use different vector address areas,
The program to be executed can be changed according to the set operation mode, and in the different operation mode, the program stored at the same address in the shared program area can be executed. By switching banks according to different vector addresses, different programs can be started, and programs stored at the same address in the shared program area can be executed in different operation modes, thereby effectively utilizing the program capacity. A single-chip microcomputer with a reduced ROM capacity can be provided.
【0042】また、実施の形態1または実施の形態2に
係るシングルチップマイクロコンピュータにおいて、動
作モードは、1つ以上のユーザが使用するユーザ用動作
モードと、1つ以上のメーカが使用するメーカ用動作モ
ードとを含み、ROMにおいて、前記ユーザ用動作モー
ド時に使用するベクタアドレス領域と、前記メーカ用動
作モード時に使用するベクタアドレス領域との2つの異
なるベクタアドレス領域が同一のROMアドレス空間に
配置され、前記ユーザ用動作モードと前記メーカ用動作
モードとのいずれかに使用される各複数のユーザ用プロ
グラム及びメーカ用プログラムは、前記ROMアドレス
空間の前記共用プログラム領域に配置され、かつ、前記
ユーザ用動作モードと前記メーカ用動作モードとのいず
れかに使用される各々複数のプログラム間にて共通する
プログラムは、前記共用プログラム領域の同一アドレス
に配置され、前記シングルチップマイクロコンピュータ
は、前記各動作モードに応じて異なるベクタアドレス領
域を使用することにより、前記ユーザ用プログラムと前
記メーカ用プログラムとを選択可能であり、かつ、前記
ユーザ用動作モードと前記メーカ用動作モードとのいず
れかの動作モードにおいて前記共用プログラム領域の同
一アドレスに格納されたプログラムを実行可能であるの
で、ユーザが、ユーザ用プログラムと同一アドレスのメ
ーカ用プログラムを使用することができ、また、プログ
ラム容量を有効に活用してROM容量を節約できるシン
グルチップマイクロコンピュータを提供できる。In the single-chip microcomputer according to the first or second embodiment, the operation modes include a user operation mode used by one or more users and a user operation mode used by one or more manufacturers. In the ROM, two different vector address areas, a vector address area used in the user operation mode and a vector address area used in the manufacturer operation mode, are arranged in the same ROM address space. A plurality of user programs and a plurality of manufacturer programs used in one of the user operation mode and the manufacturer operation mode are arranged in the shared program area of the ROM address space; Used in one of the operation mode and the operation mode for the manufacturer Programs common to a plurality of programs are arranged at the same address of the shared program area, and the single-chip microcomputer uses different vector address areas according to the respective operation modes, thereby enabling the user A program stored in the same address of the shared program area in one of the operation mode for the user and the operation mode for the manufacturer. Therefore, the user can use a maker's program at the same address as the user's program, and can provide a single-chip microcomputer that can effectively use the program capacity and save the ROM capacity.
【0043】(実施の形態2)以下に、本発明の実施の
形態2に係るシングルチップマイクロコンピュータにつ
いて、図4、図5及び図6を用いて説明する。図4は、
実施の形態2に係るシングルチップマイクロコンピュー
タの構成を示すブロック図である。図4において、6は
ベクタアドレス変換手段であり、ベクタアドレス出力信
号S101及び動作モード制御信号S100に従って、
CPU1から論理アドレスとして出力されたベクタアド
レスの変換を行う。S101はベクタアドレス出力信号
であり、CPU1がベクタアドレスを出力中にアクティ
ブになる信号でる。(Embodiment 2) A single-chip microcomputer according to Embodiment 2 of the present invention will be described below with reference to FIGS. FIG.
FIG. 6 is a block diagram showing a configuration of a single-chip microcomputer according to a second embodiment. In FIG. 4, reference numeral 6 denotes a vector address conversion means, which is provided in accordance with a vector address output signal S101 and an operation mode control signal S100.
The vector address output from the CPU 1 as a logical address is converted. S101 is a vector address output signal, which is a signal that becomes active while the CPU 1 is outputting a vector address.
【0044】このような構成のシングルチップマイクロ
コンピュータは、少なくとも2つ以上の動作モードを有
し、CPUから出力されるベクタアドレス出力信号と、
入出力装置から出力される動作モード制御信号とに従っ
て、CPUから論理アドレスとして出力されたベクタア
ドレスを変換するベクタアドレス変換手段が備えられ、
ROMにおいて、前記動作モードの数を最大とする複数
の異なるベクタアドレス領域は、同一のROMアドレス
空間の異なるアドレスに配置され、前記各動作モード時
に使用される各複数のプログラム各々は、前記ROMア
ドレス空間の共用プログラム領域に配置され、かつ、前
記各動作モード時に使用される各複数のプログラム間に
て異なる動作モードに共通するプログラムは、前記共用
プログラム領域の同一アドレスに配置されている。な
お、図1と同一または相当する構成要素については同じ
符号を用い、その説明を省略する。The single-chip microcomputer having such a configuration has at least two or more operation modes, and a vector address output signal output from the CPU;
Vector address conversion means for converting a vector address output as a logical address from the CPU according to an operation mode control signal output from the input / output device;
In the ROM, a plurality of different vector address areas for maximizing the number of the operation modes are arranged at different addresses in the same ROM address space, and each of the plurality of programs used in each of the operation modes stores the ROM address. Programs that are arranged in the shared program area of the space and are common to different operation modes among the plurality of programs used in each of the operation modes are arranged at the same address of the shared program area. The same or corresponding components as those in FIG. 1 are denoted by the same reference numerals, and description thereof is omitted.
【0045】図5は、実施の形態2に係るシングルチッ
プマイクロコンピュータのROMデータの格納状態を示
す。図5において領域A(x’00000’〜x’0F
FFF’)はRAM領域、領域B’(x’10000’〜
x’100FF’)はユーザ用ベクタアドレス領域、領
域C’(x’3FF00’〜x’3FFFF’)はメーカ
用ベクタアドレス領域、領域D(x’10100’〜
x’3FEFF’)は共用プログラム領域である。FIG. 5 shows a storage state of ROM data of the single-chip microcomputer according to the second embodiment. In FIG. 5, the area A (x'00000 'to x'0F)
FFF ') is a RAM area, an area B'(x'10000'to
x'100FF ') is a vector address area for the user, area C'(x'3FF00'tox'3FFFF') is a vector address area for the maker, and area D (x'10100 ')
x'3FEFF ') is a shared program area.
【0046】シングルチップマイクロコンピュータは、
リセット解除時に領域B’(x’10000’〜x’1
00FF’)に格納されたリセットベクタアドレス、又
は領域C’(x’3FF00’〜x’3FFFF’)に格
納されたリセットベクタアドレスからプログラムの実行
を開始する。The single-chip microcomputer is:
Area B '(x'10000' to x'1) when reset is released
The program execution is started from the reset vector address stored in the area C ′ (00 ′ ′) or the reset vector address stored in the area C ′ (x′3FF00 ′ to x′3FFFF ′).
【0047】なお、実施の形態2では、ユーザ用動作モ
ード時に使用するベクタアドレス領域と、メーカ用動作
モード時に使用するベクタアドレス領域の2つの異なる
ベクタアドレス領域が、同一のROMアドレス空間の異
なるアドレスに配置されている。また、ベクタアドレス
領域をx’00000’〜x’100FF’とx’3F
F00’〜x’3FFFF’にしたが、他のアドレスで
あっても同様であることは言うまでもない。また、簡単
化のために論理アドレス空間をx’00000’〜x’
3FFFF’までの256Kバイトとし、RAM容量を
64Kバイト、ベクタアドレス領域を256バイトとす
る。当然ながらこれらの容量は任意に設定することが可
能である。In the second embodiment, two different vector address areas, a vector address area used in the user operation mode and a vector address area used in the maker operation mode, have different addresses in the same ROM address space. Are located in Further, the vector address areas are defined as x'00000 'to x'100FF' and x'3F
Although F00 'to x'3FFFF' are used, it goes without saying that the same applies to other addresses. For simplicity, the logical address space is defined as x'00000 'to x'.
The size is 256 Kbytes up to 3FFFF ', the RAM capacity is 64 Kbytes, and the vector address area is 256 bytes. Of course, these capacities can be set arbitrarily.
【0048】以下に、実施の形態2に係るシングルチッ
プマイクロコンピュータの動作について説明する。ま
ず、CPU1は、論理アドレスとしてx’10000’
〜x’100FF’のベクタアドレス出力信号をベクタ
アドレス変換手段6へ出力する。また、I/O4は、I
/O5より入力された信号を基に動作モード制御信号S
100を生成し、ベクタアドレス変換手段6へ出力す
る。そして、動作モード制御信号S100に基づいて複
数の動作モードのうちの1つを設定し、CPU1から論
理アドレスとして出力されたx’10000’〜x’1
00FF’は、ベクタアドレス変換手段6によってx’
10000’〜x’100FF’又はx’3FF00’
〜x’3FFFF’に変換され、使用するべきベクタア
ドレス領域のアドレスが決定する。そして、決定された
ベクタアドレス領域に格納されたプログラムを実行でき
る。また、異なる動作モードにおいて共用プログラム領
域の同一アドレスに格納されたプログラムを実行でき
る。The operation of the single-chip microcomputer according to the second embodiment will be described below. First, the CPU 1 sets x'10000 'as a logical address.
.. X'100FF 'are output to the vector address conversion means 6. Also, I / O4 is I / O4
Mode control signal S based on the signal input from / O5
100 is generated and output to the vector address conversion means 6. Then, one of a plurality of operation modes is set based on the operation mode control signal S100, and x'10000 'to x'1 output as logical addresses from the CPU 1 are set.
00FF 'is converted to x' by the vector address conversion means 6.
10000 'to x'100FF' or x'3FF00 '
~ X'3FFFF 'to determine the address of the vector address area to be used. Then, the program stored in the determined vector address area can be executed. Further, programs stored at the same address in the shared program area can be executed in different operation modes.
【0049】なお、動作モード制御信号S100がHレ
ベルで、CPU1から出力されるベクタアドレス出力信
号S101がアクティブな場合にベクタアドレス変換手
段6はCPU1から出力された論理アドレスにx’3F
F00’を加えて領域C’のアドレスに変換する。その
他の場合はCPU1から出力された論理アドレスをその
まま通過させる。When the operation mode control signal S100 is at the H level and the vector address output signal S101 output from the CPU 1 is active, the vector address conversion means 6 applies x'3F to the logical address output from the CPU 1.
F00 'is added to convert to the address of area C'. In other cases, the logical address output from the CPU 1 is passed as it is.
【0050】そして、アドレスバスABを介して決定さ
れたROMアドレスに格納されたデータを、ROM2か
らデータバスDBを介して随時読み出しながら、プログ
ラムを実行する。また必要に応じてRAM3へのデータ
の書き込み、読み出しを行い命令処理を行う。場合によ
ってはRAM3上に配置された命令を実行することも可
能である。The program is executed while the data stored at the ROM address determined via the address bus AB is read from the ROM 2 via the data bus DB as needed. In addition, data is written to and read from the RAM 3 as needed, and command processing is performed. In some cases, it is also possible to execute an instruction arranged on the RAM 3.
【0051】次に、従来のシングルチップマイクロコン
ピュータと本発明の実施の形態2に係るシングルチップ
マイクロコンピュータのROMデータ格納状態を比較す
るため、図6を用いて説明する。図6は、従来のシング
ルチップマイクロコンピュータと本発明の実施の形態2
に係るシングルチップマイクロコンピュータのROMデ
ータ格納状態を示す。Next, a comparison of the ROM data storage state between the conventional single-chip microcomputer and the single-chip microcomputer according to the second embodiment of the present invention will be described with reference to FIG. FIG. 6 shows a conventional single-chip microcomputer and a second embodiment of the present invention.
1 shows a ROM data storage state of the single-chip microcomputer according to the first embodiment.
【0052】従来のシングルチップマイクロコンピュー
タでは、メーカ用プログラム領域Bとユーザ用プログラ
ム領域Cがバンク配置され排他的に使用される。例えば
ユーザ用プログラムが3つ(U1、U2、U3)とメーカ
用プログラムが3つ(M1、M2、M3)である場合、こ
れらはそれぞれ領域Cと領域Bに配置され、メーカ用プ
ログラムM3とユーザ用プログラムU1が同一であった
場合、従来のシングルチップマイクロコンピュータでは
個別に配置しなければならない。しかしながら、本発明
のシングルチップマイクロコンピュータでは、共用プロ
グラム領域にそれぞれのプログラム(U1,U2,U
3、M1、M2、M3)が配置されており、ユーザ用プ
ログラムU1とメーカ用プログラムM3のアドレスが同
じ場合はどちらか一方を配置するだけでよく、ユーザ用
動作モードとメーカ用動作モードのいずれかの動作モー
ドにおいて共用プログラム領域の同一アドレスに格納さ
れたプログラムを実行できる。すなわち、ユーザ用プロ
グラム(U1)もしくはメーカ用プログラム(M3)のプロ
グラムサイズ分だけROM容量を節約することが可能と
なる。また、ユーザが、ユーザ用プログラムと同一アド
レスのメーカ用プログラムを使用することができる。In a conventional single-chip microcomputer, a program area B for a maker and a program area C for a user are arranged in banks and used exclusively. For example, if there are three user programs (U1, U2, U3) and three maker programs (M1, M2, M3), these are arranged in the area C and the area B, respectively, and the maker program M3 and the user If the programs U1 are the same, they must be individually arranged in a conventional single-chip microcomputer. However, in the single-chip microcomputer of the present invention, each program (U1, U2, U2) is stored in the shared program area.
3, M1, M2, M3) are arranged. If the addresses of the user program U1 and the maker program M3 are the same, only one of them needs to be arranged, and either the user operation mode or the maker operation mode is required. In such an operation mode, a program stored at the same address in the shared program area can be executed. That is, it is possible to save the ROM capacity by the program size of the user program (U1) or the maker program (M3). Further, the user can use a maker program having the same address as the user program.
【0053】以上のように、本実施の形態2に係るシン
グルチップマイクロコンピュータによれば、各種プログ
ラムを格納したROMと、データを格納したRAMと、
該ROMに格納されたプログラムを実行するCPU
と、各種制御信号を入出力する入出力装置とを内蔵した
シングルチップマイクロコンピュータにおいて、少なく
とも2つ以上の動作モードを有し、CPUから出力され
るベクタアドレス出力信号と、入出力装置から出力され
る動作モード制御信号とに従って、CPUから論理アド
レスとして出力されたベクタアドレスを変換するベクタ
アドレス変換手段が備えられ、前記ROMにおいて、前
記動作モードの数を最大とする複数の異なるベクタアド
レス領域は、同一のROMアドレス空間の異なるアドレ
スに配置され、前記各動作モード時に使用される各複数
のプログラムの各々は、前記ROMアドレス空間の共用
プログラム領域に配置され、かつ、前記各動作モード時
に使用される各複数のプログラム間にて異なる動作モー
ドに共通するプログラムは、前記共用プログラム領域の
同一アドレスに配置され、前記シングルチップマイクロ
コンピュータは、前記入出力装置から出力される動作モ
ード制御信号に基づいて前記複数の動作モードのうちの
1つを設定し、前記ベクタアドレス変換手段により決定
されたベクタアドレス領域に格納されたプログラムを実
行可能であり、かつ、前記異なる動作モードにおいて前
記共用プログラム領域の同一アドレスに格納されたプロ
グラムの実行が可能であるので、実施の形態1のように
バンクの切り換えを行う必要が無く、動作モードに応じ
てベクタアドレス領域のアドレスを変更して、異なるプ
ログラムの起動が可能である。また、異なる動作モード
において、共用プログラム領域の同一アドレスに格納さ
れたプログラムの実行が可能である。さらに、プログラ
ム容量を有効に活用し、ROM容量を節約できる。As described above, according to the single-chip microcomputer according to the second embodiment, the ROM storing various programs, the RAM storing data,
CPU for executing a program stored in the ROM
And a single-chip microcomputer having an input / output device for inputting / outputting various control signals, having at least two or more operation modes, a vector address output signal output from the CPU, and a vector output signal output from the input / output device. Vector address conversion means for converting a vector address output as a logical address from the CPU in accordance with the operation mode control signal, and a plurality of different vector address areas for maximizing the number of operation modes are provided in the ROM. Each of the plurality of programs arranged at different addresses in the same ROM address space and used in each of the operation modes is arranged in a shared program area of the ROM address space and used in each of the operation modes. A program common to different operation modes among multiple programs RAM is disposed at the same address of the shared program area, the single-chip microcomputer sets one of the plurality of operation modes based on an operation mode control signal output from the input / output device, Since the program stored in the vector address area determined by the vector address conversion means can be executed, and the program stored at the same address in the shared program area can be executed in the different operation modes, There is no need to switch banks as in the first embodiment, and different programs can be started by changing the address of the vector address area according to the operation mode. Further, in different operation modes, it is possible to execute programs stored at the same address in the shared program area. Further, the capacity of the ROM can be saved by effectively utilizing the program capacity.
【0054】(実施の形態3)以下に、本発明の実施の
形態3に係るシングルチップマイクロコンピュータにつ
いて、図7、図8及び図9を用いて説明する。実施の形
態3に係るシングルチップマイクロコンピュータは、少
なくとも2つ以上の動作モードを有し、CPUから出力
された論理アドレスを物理アドレスに変換するROMア
ドレス変換手段と、前記各動作モードに応じて前記RO
Mへのアドレス信号の全てのビットに対し所要の処理を
施す信号処理回路とが備えられている。(Embodiment 3) Hereinafter, a single-chip microcomputer according to Embodiment 3 of the present invention will be described with reference to FIGS. The single-chip microcomputer according to the third embodiment has at least two or more operation modes, a ROM address conversion means for converting a logical address output from a CPU into a physical address, and a ROM address conversion means according to each of the operation modes. RO
And a signal processing circuit for performing required processing on all bits of the address signal to M.
【0055】なお、本実施の形態3または実施の形態4
に係るシングルチップマイクロコンピュータは、アドレ
スを変換するためのROMアドレス変換手段、及び信号
処理回路(本実施例では、排他的論理和)をCPUとR
OMの間に挿入するだけで実現できる。The third embodiment or the fourth embodiment
A ROM address conversion means for converting an address, and a signal processing circuit (in the present embodiment, an exclusive OR) with the CPU and the R
It can be realized only by inserting between OM.
【0056】図7は、実施の形態3に係るシングルチッ
プマイクロコンピュータの構成を示すブロック図であ
る。図7において、7は、ROMアドレス変換手段であ
り、CPU1から出力される論理アドレスを物理アドレ
スに変換する。8は、排他的論理和であり、各動作モー
ドに応じてROMへの全てのアドレス信号を正転もしく
は反転する。なお、図1と同一または相当する構成要素
については同じ符号を用い、その説明を省略する。FIG. 7 is a block diagram showing a configuration of a single-chip microcomputer according to the third embodiment. In FIG. 7, reference numeral 7 denotes ROM address conversion means for converting a logical address output from the CPU 1 into a physical address. An exclusive OR 8 inverts or inverts all address signals to the ROM according to each operation mode. The same or corresponding components as those in FIG. 1 are denoted by the same reference numerals, and description thereof is omitted.
【0057】図8は、物理アドレスと論理アドレスの関
係を示す図である。図8において、便宜上領域2から領
域5までの4つの領域に区分する。各領域は64Kバイ
トである。それぞれの領域の物理アドレスは領域2が
x’00000’〜x’0FFFF’、領域3がx’1
0000’〜x’1FFFF’、領域4がx’2000
0’〜x’2FFFF’、領域5がx’30000’〜
x’3FFFF’である。物理アドレスは論理アドレス
からx’10000’を減算した値であるから、それぞ
れの論理アドレスは動作モード制御信号S100がLレ
ベルの場合、領域2がx’10000’〜x’1FFF
F’、領域3がx’20000’〜x’2FFFF’、
領域4がx’30000’〜x’3FFFF’となる。
また、領域5は論理アドレス外となりCPU1からアク
セスすることができず、使用不可領域となる。一方、動
作モード制御信号S100がHレベルの場合は、領域5
がx’1FFFF’〜x’10000’、領域4がx’
2FFFF’〜x’20000’、領域3がx’3FF
FF’〜x’30000’となる。また領域2は論理ア
ドレス外となりCPU1からアクセスすることができ
ず、使用不可領域となる。FIG. 8 is a diagram showing the relationship between physical addresses and logical addresses. In FIG. 8, the area is divided into four areas from area 2 to area 5 for convenience. Each area is 64K bytes. The physical address of each area is x'00000 'to x'0FFFF' for area 2 and x'1 for area 3
0000 'to x'1FFFF', area 4 is x'2000
0'-x'2FFFF ', area 5 is x'30000'-
x'3FFFF '. Since the physical address is a value obtained by subtracting x'10000 'from the logical address, when the operation mode control signal S100 is at the L level, the area 2 has x'10000' to x'1FFF.
F ', region 3 is x'20000' to x'2FFFF ',
The area 4 becomes x'30000 'to x'3FFFF'.
The area 5 is outside the logical address, cannot be accessed from the CPU 1, and becomes an unusable area. On the other hand, when the operation mode control signal S100 is at the H level,
Are x'1FFFF 'to x'10000', area 4 is x '
2FFFF 'to x'20000', area 3 is x'3FF
FF 'to x'30000'. The area 2 is outside the logical address and cannot be accessed from the CPU 1 and becomes an unusable area.
【0058】図9は、本発明の実施の形態3に係るシン
グルチップマイクロコンピュータのROMデータの格納
状態を示す図であり、ROM2とRAM3は同一の論理
アドレス上に配置される。図9において、図9(a)と図
9(b)はCPU1の論理アドレス上での格納状態、図9
(c)と図9(d)はROMの物理アドレス上での格納状態
を示す図である。また、図9(a)と図9(c)はユーザ用
動作モード時(動作モード制御信号S100がLレベル)
の格納状態を、図9(b)と図9(d)はメーカ用動作モー
ド時(動作モード制御信号S100がHレベル)の格納状
態を示す図である。FIG. 9 is a diagram showing a storage state of ROM data of the single-chip microcomputer according to the third embodiment of the present invention, wherein ROM 2 and RAM 3 are arranged on the same logical address. 9 (a) and 9 (b) show the storage state of the CPU 1 on the logical address.
FIGS. 9C and 9D are diagrams showing the storage state on the physical address of the ROM. FIGS. 9A and 9C show the operation mode for the user (the operation mode control signal S100 is at the L level).
9 (b) and 9 (d) are views showing the storage state in the maker operation mode (operation mode control signal S100 is at H level).
【0059】なお、実施の形態3では簡単化のために論
理アドレス空間をx’00000’〜x’3FFFF’
までの256Kバイトとする。また、RAM容量を64
Kバイト、ベクタアドレス領域を256バイトとする。
またROM2は256Kバイトの容量を持ち、x’00
000’〜x’3FFFF’までの物理アドレスを持つ
ものとする。当然ながらこれらの容量は任意に設定する
ことが可能であることは言うまでもない。In the third embodiment, the logical address space is defined as x'00000 'to x'3FFFF' for simplicity.
Up to 256 Kbytes. Also, if the RAM capacity is 64
It is assumed that K bytes and the vector address area are 256 bytes.
ROM2 has a capacity of 256 Kbytes, and x'00
It is assumed that physical addresses from 000 'to x'3FFFF' are provided. It goes without saying that these capacities can be set arbitrarily.
【0060】以下に、実施の形態3に係るシングルチッ
プマイクロコンピュータの動作について説明する。ま
ず、CPU1は、ROMアドレスをアドレスバスABを
介してROMアドレス変換手段7に出力する。そして、
ROMアドレス変換手段7は、入力されたROMアドレ
スを変換し、排他的論理和8へ出力する。また、I/O
4は、I/O端子5より入力された信号を基に動作モー
ド制御信号S100を生成し、排他的論理和8へ出力す
る。そして、排他的論理和8は、I/O4から入力され
た動作モード制御信号S100に基づいて複数の動作モ
ードのうちの1つを設定し、設定された動作モードに応
じて、変換されたROMアドレス全てを正転もしくは反
転し、ROMアドレスを決定する。The operation of the single-chip microcomputer according to the third embodiment will be described below. First, the CPU 1 outputs a ROM address to the ROM address conversion means 7 via the address bus AB. And
The ROM address conversion means 7 converts the input ROM address and outputs it to the exclusive OR 8. Also, I / O
4 generates an operation mode control signal S100 based on the signal input from the I / O terminal 5, and outputs the operation mode control signal S100 to the exclusive OR 8. The exclusive OR 8 sets one of a plurality of operation modes based on the operation mode control signal S100 input from the I / O 4, and converts the converted ROM according to the set operation mode. All the addresses are rotated forward or inverted to determine the ROM address.
【0061】なお、ユーザ用動作モード時は、図9(a)
に示すように領域2にユーザ用ベクタアドレス領域が配
置され、シングルチップマイクロコンピュータは領域2
(x’10000’〜x’100FF’)に格納されたリ
セットベクタアドレスからプログラムの実行を開始す
る。この場合、領域5は論理アドレスが割り当てられ
ず、使用不可領域となり、領域5に格納されたメーカ用
プログラムは、ユーザ用モードでは実行することができ
ない。一方、メーカ用動作モード時はアドレス信号が排
他的論理和7により反転されるため、物理アドレスがユ
ーザ用動作モード時とは反転することになり、図9(b)
に示すように領域5に論理アドレスx’10000’〜
x’100FF’が割り付けられる。領域5にはメーカ
用ベクタアドレス領域及びメーカ用プログラム領域が配
置され、シングルチップマイクロコンピュータは領域5
(x’10000’〜x’100FF’)に格納されたリ
セットベクタアドレスからプログラムの実行を開始す
る。この場合、領域2は論理アドレスが割り当てられ
ず、使用不可領域となる。In the operation mode for the user, FIG.
The user vector address area is arranged in area 2 as shown in FIG.
The execution of the program is started from the reset vector address stored in (x'10000 'to x'100FF'). In this case, the logical address is not assigned to the area 5 and the area 5 becomes an unusable area, and the maker program stored in the area 5 cannot be executed in the user mode. On the other hand, in the maker operation mode, since the address signal is inverted by the exclusive OR 7, the physical address is inverted from that in the user operation mode.
As shown in the figure, the logical address x'10000 '
x'100FF 'is allocated. In the area 5, a maker vector address area and a maker program area are arranged.
The execution of the program is started from the reset vector address stored in (x'10000 'to x'100FF'). In this case, the logical address is not assigned to the area 2 and the area 2 becomes an unusable area.
【0062】つまり、ROMアドレス変換手段7は、C
PU1からの論理アドレスに対してx’10000’を
減算することにより、例えばCPU1の論理アドレス
x’10000’をROM2の物理アドレスx’000
00’に変換する。そして、排他的論理和8はROM2
の物理アドレスの配置を反転する役割を有しており、ユ
ーザ用動作モードの場合、動作モード制御信号S100
がLレベルのため、ROMアドレス変換手段7で変換さ
れたROMアドレスをそのまま反転せずにROM2に供
給する。一方、メーカ用動作モードの場合、動作モード
制御信号S100がHレベルとなり、ROMアドレス変
換手段7で変換されたROMアドレスを反転してROM
2に供給する。このように、ユーザ用動作モード(動作
モード制御信号S100がLレベル)とメーカ用動作モ
ード(動作モード制御信号S100がHレベル)において
使用可能となる領域が異なり、ユーザ用動作モード時に
使用不可能となる領域5にメーカ用ベクタアドレス領域
とメーカ用プログラム領域を配置することで、メーカは
ユーザ用プログラム領域を使用することなくメーカ用プ
ログラムを配置し、実行することができる。That is, the ROM address conversion means 7
By subtracting x'10000 'from the logical address from PU1, for example, the logical address x'10000' of CPU1 is changed to the physical address x'000 of ROM2.
To 00 '. The exclusive OR 8 is stored in the ROM 2
Has a role of inverting the arrangement of the physical addresses of the operation modes.
Is at the L level, the ROM address converted by the ROM address conversion means 7 is supplied to the ROM 2 without inversion. On the other hand, in the case of the maker operation mode, the operation mode control signal S100 becomes H level, and the ROM address converted by the ROM address
Feed to 2. As described above, the usable area differs between the user operation mode (the operation mode control signal S100 is at the L level) and the manufacturer operation mode (the operation mode control signal S100 is at the H level). By arranging the maker vector address area and the maker program area in the area 5, the maker can arrange and execute the maker program without using the user program area.
【0063】そして、決定されたROMアドレスに格納
されたデータを、ROM2からデータバスDBを介して
随時読み出しながら、プログラムを実行する。また必要
に応じてRAM3へのデータの書き込み、読み出しを行
い命令処理を行う。場合によってはRAM3上に配置さ
れた命令を実行することも可能である。The program is executed while reading the data stored at the determined ROM address from the ROM 2 via the data bus DB as needed. In addition, data is written to and read from the RAM 3 as needed, and command processing is performed. In some cases, it is also possible to execute an instruction arranged on the RAM 3.
【0064】以下に、実施の形態3または実施の形態4
係るフラッシュEEPROM内蔵のシングルチップマイ
クロコンピュータのシリアルモードでの書き換えについ
て、図13を用いて説明する。図13は、シリアルモー
ドでの内蔵フラッシュEEPROMの書き換え手順を示
すフローチャートである。Hereinafter, the third embodiment or the fourth embodiment will be described.
Rewriting in the serial mode of such a single-chip microcomputer with a built-in flash EEPROM will be described with reference to FIG. FIG. 13 is a flowchart showing a procedure for rewriting the built-in flash EEPROM in the serial mode.
【0065】まず、シングルチップマイクロコンピュー
タをメーカ用動作モードに設定し、リセット解除する。
この時メーカ用ベクタアドレスを使用してメーカ用プロ
グラムが起動する(S201)。メーカ用プログラムは、
実施の形態3または実施の形態4に示すように、ユーザ
用動作モードでは使用不可である領域5に格納されてい
る。メーカ用プログラムにはローダー用プログラムが含
まれ、ローダー用プログラムをRAM3(領域1)に転送
する(S202)。ローダー用プログラムがRAM3に転
送されると、プログラムの実行をRAM3上のローダー
用プログラムに分岐させる(S203)。ローダー用プロ
グラムの実行により、フラッシュEEPROMを書き換
え可能な状態に設定し、ユーザ用ベクタアドレス領域及
びユーザ用プログラム領域の消去及び書き込みを行う
(S204)。以上のシーケンスによりフラッシュEEP
ROMの書き換えを行うが、書き換えを行う領域はベク
タアドレス領域を含めユーザが使用可能な全ての領域で
あるため、プログラムの作成上に生じる障害を排除する
ことができる。First, the single-chip microcomputer is set to the maker operation mode, and the reset is released.
At this time, the maker program is started using the maker vector address (S201). The manufacturer program is
As described in the third or fourth embodiment, the data is stored in the area 5 that cannot be used in the user operation mode. The manufacturer program includes a loader program, and transfers the loader program to the RAM 3 (area 1) (S202). When the loader program is transferred to the RAM 3, the execution of the program branches to the loader program on the RAM 3 (S203). By executing the loader program, the flash EEPROM is set in a rewritable state, and the user vector address area and the user program area are erased and written.
(S204). Flash EEP by the above sequence
Although the ROM is rewritten, the area to be rewritten is all the areas that can be used by the user including the vector address area, so that it is possible to eliminate a trouble that occurs in creating a program.
【0066】このように、全てのユーザ用プログラム領
域及びベクタアドレス領域の書き換えが可能なフラッシ
ュEEPROM内蔵のシングルチップマイクロコンピュ
ータを提供することができる。As described above, it is possible to provide a single-chip microcomputer with a built-in flash EEPROM capable of rewriting all user program areas and vector address areas.
【0067】以上のように、実施の形態3に係るシング
ルチップマイクロコンピュータによれば、各種プログラ
ムを格納したROMと、データを格納したRAMと、
該ROMに格納されたプログラムを実行するCPUと、
各種制御信号を入出力する入出力装置とを内蔵したシン
グルチップマイクロコンピュータにおいて、少なくとも
2つ以上の動作モードを有し、CPUから出力された論
理アドレスを物理アドレスに変換するROMアドレス変
換手段と、前記各動作モードに応じて前記ROMへのア
ドレス信号の全てのビットに対して所要の処理を施す信
号処理回路とが備えられ、前記シングルチップマイクロ
コンピュータは、前記入出力装置から出力される動作モ
ード制御信号に基づいて前記複数の動作モードのうちの
1つを設定し、前記設定された動作モードに応じて、前
記ROMアドレス変換手段により変換されたROMアド
レスの全てのビットに対し所要の処理を施してROMア
ドレスを決定し、前記動作モードに応じて決定されたR
OMアドレスに格納されたプログラムの実行が可能であ
るので、ROMアドレスを正転もしくは反転することが
可能であり、各動作モードに応じて異なるプログラムの
起動が可能である。また、ユーザ用動作モードとメーカ
用動作モードの使用可能な領域が異なるので、メーカが
ユーザ用プログラム領域を使用することなく、メーカ用
プログラムを使用できる。さらに、プログラム容量を有
効に活用し、ROM容量を節約できる。As described above, according to the single-chip microcomputer according to the third embodiment, a ROM storing various programs, a RAM storing data,
A CPU for executing a program stored in the ROM;
A single-chip microcomputer having an input / output device for inputting / outputting various control signals, a ROM address conversion unit having at least two or more operation modes, and converting a logical address output from the CPU into a physical address; A signal processing circuit for performing required processing on all bits of the address signal to the ROM in accordance with each of the operation modes, wherein the single-chip microcomputer operates in an operation mode output from the input / output device. One of the plurality of operation modes is set based on a control signal, and a required process is performed on all bits of the ROM address converted by the ROM address conversion means according to the set operation mode. To determine the ROM address, and determine the R address determined according to the operation mode.
Since the program stored in the OM address can be executed, the ROM address can be rotated or inverted, and a different program can be started according to each operation mode. Also, since the usable areas of the user operation mode and the maker operation mode are different, the maker can use the maker program without using the user program area. Further, the capacity of the ROM can be saved by effectively utilizing the program capacity.
【0068】また、実施の形態3または実施の形態4に
係るシングルチップマイクロコンピュータによれば、ア
ドレスを変換するためのROMアドレス変換手段、及び
信号処理回路(本実施例では、排他的論理和)をCPU
とROMの間に挿入するだけで実現できるため、IP化
されたCPUコアや、メモリコアの様に個別の製品を設
計する際に設計的な加工が困難な場合でもユーザ用動作
モードとメーカ用動作モードを切り換えることが可能で
あり、また、全てのユーザ用プログラム領域及びベクタ
アドレス領域の書き換えが可能なフラッシュEEPRO
M内蔵のシングルチップマイクロコンピュータを提供す
ることができる。Further, according to the single-chip microcomputer according to the third or fourth embodiment, the ROM address conversion means for converting the address and the signal processing circuit (in this embodiment, exclusive OR) The CPU
It can be realized simply by inserting it between the CPU and the ROM. Therefore, even if it is difficult to design individual products such as an IP-based CPU core or a memory core, the operation mode for the user and the manufacturer A flash EEPROM capable of switching operation modes and rewriting all user program areas and vector address areas.
A single-chip microcomputer incorporating M can be provided.
【0069】(実施の形態4)以下に、実施の形態4に
係るシングルチップマイクロコンピュータについて、図
10、図11及び図12を用いて説明する。実施の形態
4に係るシングルチップマイクロコンピュータは、少な
くとも2つ以上の動作モードを有し、CPUから出力さ
れた論理アドレスを物理アドレスに変換するROMアド
レス変換手段と、前記各動作モードに応じて前記ROM
へのアドレス信号のうち上位のmビット(mは任意の整
数)に対して所要の処理を施す信号処理回路とが備えら
れている。(Embodiment 4) A single-chip microcomputer according to Embodiment 4 will be described below with reference to FIGS. 10, 11, and 12. FIG. The single-chip microcomputer according to the fourth embodiment has at least two or more operation modes, ROM address conversion means for converting a logical address output from a CPU into a physical address, and ROM
And a signal processing circuit for performing a required process on the upper m bits (m is an arbitrary integer) of the address signal to the memory.
【0070】図10は、実施の形態4に係るシングルチ
ップマイクロコンピュータの構成を示すブロック図であ
る。7は、ROMアドレス変換手段であり、論理アドレ
スから物理アドレスに変換する。8は、排他的論理和で
あり、各動作モードに応じて前記ROMへのアドレス信
号のうち上位のmビット(mは任意の整数)を正転もしく
は反転する。FIG. 10 is a block diagram showing a configuration of a single-chip microcomputer according to the fourth embodiment. Reference numeral 7 denotes ROM address conversion means for converting a logical address into a physical address. An exclusive OR 8 inverts or inverts the upper m bits (m is an arbitrary integer) of the address signal to the ROM according to each operation mode.
【0071】図11は、物理アドレスと論理アドレスの
関係を示す図である。図11において、便宜上領域2か
ら領域5までの4つの領域に区分する。各領域は64K
バイトである。それぞれの領域の物理アドレスは領域2
がx’00000’〜x’0FFFF’、領域3がx’
10000’〜x’1FFFF’、領域4がx’200
00’〜x’2FFFF’、領域5がx’30000’
〜x’3FFFF’である。それぞれの論理アドレスは
動作モード制御信号S100がLレベルの場合、領域2
がx’10000’〜x’1FFFF’、領域3がx’
20000’〜x’2FFFF’、領域4がx’300
00’〜x’3FFFF’となる。また、領域5は論理
アドレス外となりCPU1からアクセスすることができ
ず、使用不可領域となる。一方、動作モード制御信号S
100がHレベルの場合は、領域5がx’10000’
〜x’ 1FFFF’、領域4がx’20000’〜
x’2FFFF’、領域3がx’ 30000’〜x’
3FFFF’となる。また領域2は論理アドレス外とな
りCPU1からアクセスすることができず、使用不可領
域となる。FIG. 11 is a diagram showing the relationship between physical addresses and logical addresses. In FIG. 11, the area is divided into four areas from area 2 to area 5 for convenience. Each area is 64K
Bytes. The physical address of each area is area 2
Are x'00000 'to x'0FFFF', and region 3 is x '
10000 'to x'1FFFF', area 4 is x'200
00 'to x'2FFFF', area 5 is x'30000 '
~ X'3FFFF '. When the operation mode control signal S100 is at the L level, each logical address is stored in the area 2
Are x'10000 'to x'1FFFF', and region 3 is x '
20000 'to x'2FFFF', area 4 is x'300
00 'to x'3FFFF'. The area 5 is outside the logical address, cannot be accessed from the CPU 1, and becomes an unusable area. On the other hand, the operation mode control signal S
When 100 is at the H level, area 5 is x'10000 '
~ X'1FFFF ', area 4 is x'20000' ~
x'2FFFF ', area 3 is x'30000'-x'
3FFFF '. The area 2 is outside the logical address and cannot be accessed from the CPU 1 and becomes an unusable area.
【0072】図12はROMデータの格納状態を示す図
であり、ROMとRAMは、同一の論理アドレス上に配
置される。図12において、図12(a)と図12(b)は
CPU1の論理アドレス上での格納状態、図12(c)と
図12(d)はROMの物理アドレス上での格納状態を示
す。また、図12(a)と図12(c)はユーザ用動作モー
ド時(動作モード制御信号S100がLレベル)の格納状
態を、図12(b)と図12(d)はメーカ用動作モード時
(動作モード制御信号S100がHレベル)の格納状態を
示す。なお、実施の形態4は、実施の形態3とほとんど
同じであるので、共通する部分についての説明は省略す
る。FIG. 12 is a diagram showing a storage state of the ROM data. The ROM and the RAM are arranged on the same logical address. 12A and 12B show the storage state on the logical address of the CPU 1, and FIGS. 12C and 12D show the storage state on the physical address of the ROM. 12 (a) and 12 (c) show the stored state in the user operation mode (operation mode control signal S100 is at L level), and FIGS. 12 (b) and 12 (d) show the manufacturer operation mode. Time
(Operation mode control signal S100 is at H level). Since the fourth embodiment is almost the same as the third embodiment, description of common parts will be omitted.
【0073】以下に、実施の形態4に係るシングルチッ
プマイクロコンピュータの動作について説明する。ま
ず、CPU1は、ROMアドレスをアドレスバスABを
介してROMアドレス変換手段7に出力する。そして、
ROMアドレス変換手段7は、入力されたROMアドレ
スを変換し、排他的論理和8へ出力する。また、I/O
4は、I/O端子5より入力された信号を基に動作モー
ド制御信号S100を生成し、排他的論理和8へ出力す
る。そして、排他的論理和8は、I/O4から入力され
た動作モード制御信号S100に基づいて複数の動作モ
ードのうちの1つを設定し、設定された動作モードに応
じて、変換されたROMアドレスのうちの上位任意のビ
ットを正転もしくは反転してアドレスを決定する。The operation of the single-chip microcomputer according to the fourth embodiment will be described below. First, the CPU 1 outputs a ROM address to the ROM address conversion means 7 via the address bus AB. And
The ROM address conversion means 7 converts the input ROM address and outputs it to the exclusive OR 8. Also, I / O
4 generates an operation mode control signal S100 based on the signal input from the I / O terminal 5, and outputs the operation mode control signal S100 to the exclusive OR 8. The exclusive OR 8 sets one of a plurality of operation modes based on the operation mode control signal S100 input from the I / O 4, and converts the converted ROM according to the set operation mode. An address is determined by inverting or inverting any upper bit of the address.
【0074】そして、決定されたROMアドレスに格納
されたデータを、ROM2からデータバスDBを介して
随時読み出しながら、プログラムを実行する。また必要
に応じてRAM3へのデータの書き込み、読み出しを行
い命令処理を行う。場合によってはRAM3上に配置さ
れた命令を実行することも可能である。The program is executed while the data stored at the determined ROM address is read from the ROM 2 via the data bus DB as needed. In addition, data is written to and read from the RAM 3 as needed, and command processing is performed. In some cases, it is also possible to execute an instruction arranged on the RAM 3.
【0075】実施の形態3との違いは、排他的論理和8
でROMアドレス変換手段7の出力を反転するビット数
が、実施の形態3では全てのビットなのに対して、実施
の形態4では上位の任意のビット数であることである。
このビット数はROM2をいくつの領域に分割するかで
決定される。実施の形態4では、領域2から領域5まで
の4つの領域に分割しているため、反転が必要なビット
数は上位の2ビットとなる。このように、ROMアドレ
スの反転操作を上位のビットのみに対して行うため、必
要な排他的論理和8の個数を削減することができる効果
がある。The difference from the third embodiment is that the exclusive OR 8
The number of bits for inverting the output of the ROM address conversion means 7 is all bits in the third embodiment, but is an arbitrary number of upper bits in the fourth embodiment.
This number of bits is determined by how many areas the ROM 2 is divided into. In the fourth embodiment, since the region is divided into four regions from region 2 to region 5, the number of bits that need to be inverted is the upper two bits. As described above, since the inversion operation of the ROM address is performed only on the upper bits, the required number of exclusive ORs 8 can be reduced.
【0076】また、ユーザ用動作モード時のROM2に
おける物理アドレスの配置は実施の形態3と同一である
が、メーカ用動作モード時のROM2における物理アド
レスの配置は図11及び図12(b)に示すように実施の
形態3とは異なる。但し論理アドレスが割り当てられず
使用不可となる領域は同一である。The arrangement of the physical addresses in the ROM 2 in the user operation mode is the same as that of the third embodiment. However, the arrangement of the physical addresses in the ROM 2 in the manufacturer operation mode is shown in FIG. 11 and FIG. As shown, this is different from the third embodiment. However, the areas that cannot be used because logical addresses are not assigned are the same.
【0077】以上のように、実施の形態4に係るシング
ルチップマイクロコンピュータによれば、本発明の請求
項5に記載のシングルチップマイクロコンピュータは、
各種プログラムを格納したROMと、データを格納した
RAMと、 該ROMに格納されたプログラムを実行す
るCPUと、各種制御信号を入出力する入出力装置とを
内蔵したシングルチップマイクロコンピュータにおい
て、少なくとも2つ以上の動作モードを有し、CPUか
ら出力された論理アドレスを物理アドレスに変換するR
OMアドレス変換手段と、前記各動作モードに応じて前
記ROMへのアドレス信号のうち上位のmビット(mは
任意の整数)に対して所要の処理を施す信号処理回路と
が備えられ、前記シングルチップマイクロコンピュータ
は、前記入出力装置から出力される動作モード制御信号
に基づいて前記複数の動作モードのうちの1つを設定
し、前記設定された動作モードに応じて、前記ROMア
ドレス変換手段により変換されたROMアドレスのう
ち、上位任意のビットに対し所要の処理を施すROMア
ドレスを決定し、前記動作モードに応じて決定されたR
OMアドレスに格納されたプログラムの実行が可能であ
るので、必要な排他的論理和の個数を削減でき、さら
に、内蔵ROMの使用不可領域を有効に活用し、ROM
容量を節約できる。また、IP化されたCPUコアや、
メモリコアの様に個別の製品を設計する際に設計的な加
工が困難な場合でもユーザ用動作モードとメーカ用動作
モードを切り換えることが可能である。As described above, according to the single-chip microcomputer according to the fourth embodiment, the single-chip microcomputer according to the fifth aspect of the present invention includes:
In a single-chip microcomputer including a ROM storing various programs, a RAM storing data, a CPU executing the programs stored in the ROM, and an input / output device for inputting / outputting various control signals, at least 2 R that has one or more operation modes and converts a logical address output from the CPU into a physical address
OM address conversion means, and a signal processing circuit for performing required processing on upper m bits (m is an arbitrary integer) of address signals to the ROM in accordance with each of the operation modes; The chip microcomputer sets one of the plurality of operation modes based on an operation mode control signal output from the input / output device, and, in accordance with the set operation mode, the ROM address conversion means Among the converted ROM addresses, a ROM address for performing a required process on an upper arbitrary bit is determined, and an R address determined according to the operation mode is determined.
Since the program stored in the OM address can be executed, the number of necessary exclusive OR can be reduced, and the unusable area of the built-in ROM can be effectively used.
Saves space. In addition, CPU core converted to IP,
Even when design processing is difficult when designing individual products like a memory core, it is possible to switch between the user operation mode and the manufacturer operation mode.
【0078】[0078]
【発明の効果】本発明の請求項1に記載のシングルチッ
プマイクロコンピュータによれば、少なくとも2つ以上
の動作モードを有し、内蔵ROMにおいて、前記動作モ
ードの数を最大とする複数の異なるベクタアドレス領域
を、同一のROMアドレス空間の同一アドレスに複数の
バンクとして配置し、前記各動作モード時に使用される
各複数のプログラム各々を、前記ROMアドレス空間の
共用プログラム領域に配置し、かつ、前記各動作モード
時に使用される各複数のプログラム間にて、異なる動作
モードに共通するプログラムを、前記共用プログラムの
同一アドレスに配置したので、動作モードに応じて、異
なるプログラムを起動できる。また、異なる動作モード
において、共用プログラム領域の同一アドレスに格納さ
れたプログラムを使用できる。さらに、プログラム容量
を有効に活用し、ROM容量を節約できる。According to the single-chip microcomputer of the first aspect of the present invention, a plurality of different vectors having at least two or more operation modes and having the maximum number of the operation modes in the built-in ROM are provided. The address area is arranged as a plurality of banks at the same address in the same ROM address space, each of the plurality of programs used in each of the operation modes is arranged in a shared program area of the ROM address space, and Since a program common to different operation modes is arranged at the same address of the shared program among a plurality of programs used in each operation mode, different programs can be started according to the operation mode. In different operation modes, programs stored at the same address in the shared program area can be used. Further, the capacity of the ROM can be saved by effectively utilizing the program capacity.
【0079】本発明の請求項2に記載のシングルチップ
マイクロコンピュータによれば、少なくとも2つ以上の
動作モードを有し、さらに、CPUから出力されるベク
タアドレス出力信号と、入出力装置から出力される動作
モード制御信号とに従って、CPUから論理アドレスと
して出力されたベクタアドレスを変換するベクタアドレ
ス変換手段を備え、内蔵ROMにおいて、前記動作モー
ドの数を最大とする複数の異なるベクタアドレス領域
を、同一のROMアドレス空間の異なるアドレスに配置
し、前記各動作モード時に使用される各複数のプログラ
ムの各々を、前記ROMアドレス空間の共用プログラム
領域に配置し、かつ、前記各動作モード時に使用される
各複数のプログラム間にて異なる動作モードに共通する
プログラムを、前記共用プログラム領域の同一アドレス
に配置したので、ベクタアドレス変換手段により使用す
るべきベクタアドレスを決定して、異なるプログラムを
実行できる。また、異なる動作モードにおいて、共用プ
ログラム領域の同一アドレスに格納されたプログラムを
使用できる。さらに、プログラム容量を有効に活用し、
ROM容量を節約できる。According to the single-chip microcomputer of the second aspect of the present invention, the microcomputer has at least two or more operation modes, and further has a vector address output signal output from the CPU and a vector address output signal output from the input / output device. And a vector address conversion means for converting a vector address output as a logical address from the CPU in accordance with the operation mode control signal. A plurality of different vector address areas for maximizing the number of the operation modes are stored in the internal ROM. Each of the plurality of programs used in each of the operation modes is arranged in a shared program area of the ROM address space, and each of the plurality of programs used in each of the operation modes is arranged at a different address in the ROM address space. A program common to different operation modes among a plurality of programs, Having located at the same address in use program area, to determine the vector address to be used by the vector address conversion means can perform different program. In different operation modes, programs stored at the same address in the shared program area can be used. In addition, make effective use of program capacity,
ROM capacity can be saved.
【0080】本発明の請求項3に記載のシングルチップ
マイクロコンピュータによれば、1つ以上のユーザが使
用するユーザ用動作モードと、1つ以上のメーカが使用
するメーカ用動作モードとを有し、内蔵ROMにおい
て、前記ユーザ用動作モード時に使用するベクタアドレ
ス領域と、前記メーカ用動作モード時に使用するベクタ
アドレス領域との2つの異なるベクタアドレス領域を同
一のROMアドレス空間に配置し、前記ユーザ用動作モ
ードと前記メーカ用動作モードとのいずれかに使用され
る各々複数のユーザ用プログラム及びメーカ用プログラ
ムを、前記ROMアドレス空間の前記共用プログラム領
域に配置し、かつ、前記ユーザ用動作モードと前記メー
カ用動作モードとのいずれかに使用される各々複数のプ
ログラム間にて共通するプログラムを、前記共用プログ
ラム領域の同一アドレスに配置したので、ユーザ用プロ
グラムとメーカ用−プログラムが個別のベクタアドレス
領域を使用し、かつ双方が同一のプログラム領域を使用
できる為、起動時にユーザ用プログラムとメーカ用プロ
グラムの選択が可能で、かつプログラム容量を有効に活
用し、ROM容量を節約できるシングルチップマイクロ
コンピュータを提供することができる。According to the single-chip microcomputer of the third aspect of the present invention, there is provided a user operation mode used by one or more users and a manufacturer operation mode used by one or more manufacturers. In the internal ROM, two different vector address areas, a vector address area used in the user operation mode and a vector address area used in the maker operation mode, are arranged in the same ROM address space. A plurality of user programs and a plurality of manufacturer programs used in one of the operation mode and the manufacturer operation mode are arranged in the shared program area of the ROM address space, and the user operation mode and the Common to multiple programs used in any of the manufacturer's operating modes Are allocated at the same address in the shared program area, the user program and the maker-program use separate vector address areas, and both can use the same program area. It is possible to provide a single-chip microcomputer in which a program and a program for a maker can be selected, a program capacity can be effectively used, and a ROM capacity can be saved.
【0081】本発明の請求項4に記載のシングルチップ
マイクロコンピュータによれば、少なくとも2つ以上の
動作モードを有し、CPUから出力された論理アドレス
を物理アドレスに変換するROMアドレス変換手段と、
前記各動作モードに応じて前記ROMへのアドレス信号
の全てのビットに対し所要の処理を施す信号処理回路と
を備えたので、メーカが、ユーザ用プログラム領域を使
用することなくメーカ用プログラムを使用することがで
きる。また、内蔵ROMの使用不可領域を有効に活用
し、ROM容量を節約できる。また、CPUとROMの
間にアドレスを変換するための制御手段(ROMアドレ
ス変換手段、排他的論理和)を挿入するだけで実現でき
るため、IP化されたCPUコアや、メモリコアの様に
個別の製品を設計する際に設計的な加工が困難な場合で
もユーザ用動作モードとメーカ用動作モードを切り換え
ることが可能である。さらに、全てのユーザ用プログラ
ム領域及びベクタアドレス領域の書き換えが可能なフラ
ッシュEEPROM内蔵のシングルチップマイクロコン
ピュータを提供することができる。According to the single-chip microcomputer of the fourth aspect of the present invention, there is provided a ROM address conversion means having at least two or more operation modes and converting a logical address output from the CPU into a physical address,
A signal processing circuit for performing required processing on all bits of the address signal to the ROM according to each of the operation modes, so that the maker can use the maker program without using the user program area. can do. In addition, the unusable area of the built-in ROM can be effectively used, and the ROM capacity can be saved. In addition, since it can be realized only by inserting a control means (ROM address conversion means, exclusive OR) for converting an address between the CPU and the ROM, it can be realized individually as in a CPU core converted into an IP or a memory core. It is possible to switch between the operation mode for the user and the operation mode for the manufacturer even when the design processing is difficult when designing the product. Further, it is possible to provide a single-chip microcomputer with a built-in flash EEPROM capable of rewriting all user program areas and vector address areas.
【0082】本発明の請求項5に記載のシングルチップ
マイクロコンピュータによれば、少なくとも2つ以上の
動作モードを有し、CPUから出力された論理アドレス
を物理アドレスに変換するROMアドレス変換手段と、
前記各動作モードに応じて前記ROMへのアドレス信号
のうち上位のmビット(mは任意の整数)に対し所要の処
理を施す信号処理回路とを備えたので、動作モードに応
じてROMへ入力されるアドレスのうち上位任意のビッ
ト数に対してのみを正転もしくは反転するので、動作モ
ードに応じて異なるプログラムの起動が可能であり、か
つ、排他的論理和の個数を削減できる。また、内蔵RO
Mの使用不可領域を有効に活用し、ROM容量を節約で
きる。さらに、IP化されたメモリコアの様に最適なメ
モリ容量を選択することができず、そのままでは使用不
可能になる領域を有する場合でも、有効にメモリを活用
することが可能であるので、本来使用することができな
いROM領域を活用可能とし、全てのユーザ用プログラ
ム領域及びベクタアドレス領域の書き換えが可能なフラ
ッシュEEPROM内蔵のシングルチップマイクロコン
ピュータを提供することができる。According to the single-chip microcomputer of the fifth aspect of the present invention, there is provided ROM address conversion means having at least two or more operation modes, and converting a logical address output from the CPU into a physical address,
A signal processing circuit for performing a required process on the upper m bits (m is an arbitrary integer) of the address signal to the ROM according to each of the operation modes. Since only the upper-order arbitrary number of bits of the address to be inverted is inverted or inverted, it is possible to start a different program according to the operation mode and to reduce the number of exclusive ORs. In addition, built-in RO
The unusable area of M can be effectively used, and the ROM capacity can be saved. Furthermore, even when an optimum memory capacity cannot be selected as in the case of a memory core converted into an IP, and there is an area that cannot be used as it is, the memory can be effectively used. It is possible to provide a single-chip microcomputer with a built-in flash EEPROM that can utilize the unusable ROM area and can rewrite all user program areas and vector address areas.
【図1】本発明の実施の形態1に係るシングルチップマ
イクロコンピュータの構成を示すブロック図である。FIG. 1 is a block diagram showing a configuration of a single-chip microcomputer according to Embodiment 1 of the present invention.
【図2】本発明の実施の形態1に係るシングルチップマ
イクロコンピュータのROMデータの格納状態を示す図
である。FIG. 2 is a diagram showing a storage state of ROM data of the single-chip microcomputer according to the first embodiment of the present invention.
【図3】従来のシングルチップマイクロコンピュータと
本発明の実施の形態1に係るシングルチップマイクロコ
ンピュータのROMデータ格納状態の比較図である。FIG. 3 is a comparison diagram of a ROM data storage state between a conventional single-chip microcomputer and the single-chip microcomputer according to the first embodiment of the present invention;
【図4】本発明の実施の形態2に係るシングルチップマ
イクロコンピュータの構成を示すブロック図である。FIG. 4 is a block diagram showing a configuration of a single-chip microcomputer according to a second embodiment of the present invention.
【図5】本発明の実施の形態2に係るシングルチップマ
イクロコンピュータのROMデータの格納状態を示す図
である。FIG. 5 is a diagram showing a storage state of ROM data of a single-chip microcomputer according to a second embodiment of the present invention.
【図6】従来のシングルチップマイクロコンピュータと
本発明の実施の形態2に係るシングルチップマイクロコ
ンピュータとのROMデータ格納状態の比較図である。FIG. 6 is a comparison diagram of a ROM data storage state between a conventional single-chip microcomputer and the single-chip microcomputer according to the second embodiment of the present invention.
【図7】本発明の実施の形態3に係るシングルチップマ
イクロコンピュータのブロック図である。FIG. 7 is a block diagram of a single-chip microcomputer according to Embodiment 3 of the present invention.
【図8】本発明の実施の形態3に係るシングルチップマ
イクロコンピュータの物理アドレスと論理アドレスの関
係を示す図である。FIG. 8 is a diagram showing a relationship between a physical address and a logical address of the single-chip microcomputer according to the third embodiment of the present invention.
【図9】本発明の実施の形態3に係るシングルチップマ
イクロコンピュータのROMデータの格納状態を示す図
である。FIG. 9 is a diagram showing a storage state of ROM data of a single-chip microcomputer according to Embodiment 3 of the present invention.
【図10】本発明の実施の形態4に係るシングルチップ
マイクロコンピュータの構成を示すブロック図である。FIG. 10 is a block diagram showing a configuration of a single-chip microcomputer according to a fourth embodiment of the present invention.
【図11】本発明の実施の形態4に係るシングルチップ
マイクロコンピュータの物理アドレスと論理アドレスの
関係を示す図である。FIG. 11 is a diagram showing a relationship between physical addresses and logical addresses of a single-chip microcomputer according to a fourth embodiment of the present invention.
【図12】本発明の実施の形態4に係るシングルチップ
マイクロコンピュータのROMデータの格納状態を示す
図である。FIG. 12 is a diagram showing a storage state of ROM data of a single-chip microcomputer according to a fourth embodiment of the present invention.
【図13】シリアルモードでのフラッシュEEPROM
の書き換え手順を示すフローチャートである。FIG. 13: Flash EEPROM in serial mode
9 is a flowchart showing a procedure for rewriting the data.
【図14】従来のシングルチップマイクロコンピュータ
の構成を示すブロック図である。FIG. 14 is a block diagram showing a configuration of a conventional single-chip microcomputer.
【図15】従来のシングルチップマイクロコンピュータ
のROMデータの格納状態を示す図である。FIG. 15 is a diagram showing a storage state of ROM data of a conventional single-chip microcomputer.
1 CPU 2 ROM 3 RAM 4 I/O 5 I/O端子 6 ベクタアドレス変換手段 7 ROMアドレス変換手段 8 排他的論理和 DB データバス AB アドレスバス S100 動作モード制御信号 S101 ベクタアドレス出力信号 DESCRIPTION OF SYMBOLS 1 CPU 2 ROM 3 RAM 4 I / O 5 I / O terminal 6 Vector address conversion means 7 ROM address conversion means 8 Exclusive OR DB Data bus AB Address bus S100 Operation mode control signal S101 Vector address output signal
─────────────────────────────────────────────────────
────────────────────────────────────────────────── ───
【手続補正書】[Procedure amendment]
【提出日】平成13年11月8日(2001.11.
8)[Submission date] November 8, 2001 (2001.11.
8)
【手続補正1】[Procedure amendment 1]
【補正対象書類名】明細書[Document name to be amended] Statement
【補正対象項目名】0061[Correction target item name] 0061
【補正方法】変更[Correction method] Change
【補正内容】[Correction contents]
【0061】なお、ユーザ用動作モード時は、図9(a)
に示すように領域2にユーザ用ベクタアドレス領域が配
置され、シングルチップマイクロコンピュータは領域2
(x’10000’〜x’100FF’)に格納されたリ
セットベクタアドレスからプログラムの実行を開始す
る。この場合、領域5は論理アドレスが割り当てられ
ず、使用不可領域となり、領域5に格納されたメーカ用
プログラムは、ユーザ用モードでは実行することができ
ない。一方、メーカ用動作モード時はアドレス信号が排
他的論理和8により反転されるため、物理アドレスがユ
ーザ用動作モード時とは反転することになり、図9(b)
に示すように領域5に論理アドレスx’10000’〜
x’100FF’が割り付けられる。領域5にはメーカ
用ベクタアドレス領域及びメーカ用プログラム領域が配
置され、シングルチップマイクロコンピュータは領域5
(x’10000’〜x’100FF’)に格納されたリ
セットベクタアドレスからプログラムの実行を開始す
る。この場合、領域2は論理アドレスが割り当てられ
ず、使用不可領域となる。In the operation mode for the user, FIG.
The user vector address area is arranged in the area 2 as shown in FIG.
The execution of the program is started from the reset vector address stored in (x'10000 'to x'100FF'). In this case, the logical address is not assigned to the area 5 and the area 5 becomes an unusable area, and the maker program stored in the area 5 cannot be executed in the user mode. On the other hand, in the maker operation mode, since the address signal is inverted by the exclusive OR 8 , the physical address is inverted from that in the user operation mode.
As shown in the figure, the logical address x'10000 '
x'100FF 'is allocated. In the area 5, a maker vector address area and a maker program area are arranged.
The execution of the program is started from the reset vector address stored in (x'10000 'to x'100FF'). In this case, a logical address is not assigned to the area 2 and the area 2 becomes an unusable area.
Claims (5)
ータを格納したRAMと、 該ROMに格納されたプロ
グラムを実行するCPUと、各種制御信号を出力する入
出力装置とを内蔵したシングルチップマイクロコンピュ
ータにおいて、 少なくとも2つ以上の動作モードを有し、 前記ROMにおいて、 前記動作モードの数を最大とする複数の異なるベクタア
ドレス領域は、同一のROMアドレス空間の同一アドレ
スに複数のバンクとして配置され、 前記各動作モード時に使用される各複数のプログラムの
各々は、前記ROMアドレス空間の共用プログラム領域
に配置され、かつ、 前記各動作モード時に使用される各複数のプログラム間
にて異なる動作モードに共通するプログラムは、前記共
用プログラム領域の同一アドレスに配置され、 前記シングルチップマイクロコンピュータは、 前記入出力装置から出力される動作モード制御信号に基
づいて前記複数の動作モードのうちの1つを設定し、 バンクを切り換えて、異なるベクタアドレス領域を使用
することにより、前記設定された動作モードに応じて実
行するプログラムを変更可能であり、かつ、 前記異なる動作モードにおいて、前記共用プログラム領
域の同一アドレスに格納されたプログラムの実行が可能
である、 ことを特徴とするシングルチップマイクロコンピュー
タ。A single-chip microcomputer including a ROM storing various programs, a RAM storing data, a CPU for executing the programs stored in the ROM, and an input / output device for outputting various control signals. In the ROM, a plurality of different vector address areas that maximize the number of the operation modes are arranged as a plurality of banks at the same address in the same ROM address space, Each of the plurality of programs used in each of the operation modes is arranged in a shared program area of the ROM address space, and is shared by different operation modes among the plurality of programs used in each of the operation modes. Are located at the same address in the shared program area, The single-chip microcomputer sets one of the plurality of operation modes based on an operation mode control signal output from the input / output device, switches banks, and uses different vector address areas. The program to be executed can be changed according to the set operation mode, and the program stored at the same address in the shared program area can be executed in the different operation mode. Single-chip microcomputer.
ータを格納したRAMと、 該ROMに格納されたプロ
グラムを実行するCPUと、各種制御信号を入出力する
入出力装置とを内蔵したシングルチップマイクロコンピ
ュータにおいて、 少なくとも2つ以上の動作モードを有し、 CPUから出力されるベクタアドレス出力信号と、入出
力装置から出力される動作モード制御信号とに従って、
CPUから論理アドレスとして出力されたベクタアドレ
スを変換するベクタアドレス変換手段が備えられ、 前記ROMにおいて、 前記動作モードの数を最大とする複数の異なるベクタア
ドレス領域は、同一のROMアドレス空間の異なるアド
レスに配置され、 前記各動作モード時に使用される各複数のプログラムの
各々は、前記ROMアドレス空間の共用プログラム領域
に配置され、かつ、 前記各動作モード時に使用される各複数のプログラム間
にて異なる動作モードに共通するプログラムは、前記共
用プログラム領域の同一アドレスに配置され、 前記シングルチップマイクロコンピュータは、 前記入出力装置から出力される動作モード制御信号に基
づいて前記複数の動作モードのうちの1つを設定し、 前記ベクタアドレス変換手段により決定されたベクタア
ドレス領域に格納されたプログラムを実行可能であり、
かつ、 前記異なる動作モードにおいて前記共用プログラム領域
の同一アドレスに格納されたプログラムの実行が可能で
ある、 ことを特徴とするシングルチップマイクロコンピュー
タ。2. A single chip micro-computer having a ROM storing various programs, a RAM storing data, a CPU for executing the programs stored in the ROM, and an input / output device for inputting / outputting various control signals. The computer has at least two or more operation modes, and according to a vector address output signal output from the CPU and an operation mode control signal output from the input / output device,
Vector address conversion means for converting a vector address output as a logical address from the CPU, wherein in the ROM, a plurality of different vector address areas for maximizing the number of operation modes are different addresses in the same ROM address space. Each of the plurality of programs used in each of the operation modes is arranged in a shared program area of the ROM address space, and differs among the plurality of programs used in each of the operation modes. A program common to the operation modes is arranged at the same address in the shared program area, and the single-chip microcomputer is configured to output one of the plurality of operation modes based on an operation mode control signal output from the input / output device. And the vector address conversion means Can execute the program stored in the determined vector address area,
And a single-chip microcomputer capable of executing programs stored at the same address in the shared program area in the different operation modes.
プマイクロコンピュータにおいて、 前記動作モードは、 1つ以上のユーザが使用するユーザ用動作モードと、1
つ以上のメーカが使用するメーカ用動作モードとを含
み、 前記ROMにおいて、 前記ユーザ用動作モード時に使用するベクタアドレス領
域と、前記メーカ用動作モード時に使用するベクタアド
レス領域との2つの異なるベクタアドレス領域が同一の
ROMアドレス空間に配置され、 前記ユーザ用動作モードと前記メーカ用動作モードとの
いずれかに使用される各複数のユーザ用プログラム及び
メーカ用プログラムは、前記ROMアドレス空間の前記
共用プログラム領域に配置され、かつ、 前記ユーザ用動作モードと前記メーカ用動作モードとの
いずれかに使用される各々複数のプログラム間にて共通
するプログラムは、前記共用プログラム領域の同一アド
レスに配置され、 前記シングルチップマイクロコンピュータは、 前記各動作モードに応じて異なるベクタアドレス領域を
使用することにより、前記ユーザ用プログラムと前記メ
ーカ用プログラムとを選択可能であり、かつ、 前記ユーザ用動作モードと前記メーカ用動作モードとの
いずれかの動作モードにおいて前記共用プログラム領域
の同一アドレスに格納されたプログラムを実行可能であ
る、 ことを特徴とするシングルチップマイクロコンピュー
タ。3. The single-chip microcomputer according to claim 1, wherein the operation modes include: a user operation mode used by one or more users;
The ROM includes two different vector addresses: a vector address area used in the user operation mode, and a vector address area used in the manufacturer operation mode. Areas are arranged in the same ROM address space, and each of the plurality of user programs and manufacturer programs used in one of the user operation mode and the manufacturer operation mode is the shared program in the ROM address space. A program common to a plurality of programs used in one of the user operation mode and the maker operation mode, which is arranged in an area, and is arranged at the same address of the shared program area; Single-chip microcomputer, each of the above operation modes The user program and the manufacturer program can be selected by using different vector address areas in accordance with each other, and in any one of the user operation mode and the manufacturer operation mode, A single-chip microcomputer capable of executing programs stored at the same address in a shared program area.
ータを格納したRAMと、 該ROMに格納されたプロ
グラムを実行するCPUと、各種制御信号を入出力する
入出力装置とを内蔵したシングルチップマイクロコンピ
ュータにおいて、 少なくとも2つ以上の動作モードを有し、 CPUから出力された論理アドレスを物理アドレスに変
換するROMアドレス変換手段と、前記各動作モードに
応じて前記ROMへのアドレス信号の全てのビットに対
し所要の処理を施す信号処理回路とが備えられ、 前記シングルチップマイクロコンピュータは、 前記入出力装置から出力される動作モード制御信号に基
づいて前記複数の動作モードのうちの1つを設定し、 前記設定された動作モードに応じて、前記ROMアドレ
ス変換手段により変換されたROMアドレスの全てのビ
ットに対し所要の処理を施してROMアドレスを決定
し、 前記動作モードに応じて決定されたROMアドレスに格
納されたプログラムの実行が可能である、 ことを特徴とするシングルチップマイクロコンピュー
タ。4. A single chip micro-computer having a ROM storing various programs, a RAM storing data, a CPU for executing the programs stored in the ROM, and an input / output device for inputting / outputting various control signals. A computer having at least two or more operation modes, a ROM address conversion means for converting a logical address output from a CPU into a physical address, and all bits of an address signal to the ROM according to each operation mode And a signal processing circuit for performing required processing on the single-chip microcomputer, wherein the single-chip microcomputer sets one of the plurality of operation modes based on an operation mode control signal output from the input / output device. R converted by the ROM address conversion means in accordance with the set operation mode. A single chip that is capable of performing a required process on all bits of the OM address to determine a ROM address, and executing a program stored in the ROM address determined according to the operation mode. Microcomputer.
ータを格納したRAMと、 該ROMに格納されたプロ
グラムを実行するCPUと、各種制御信号を入出力する
入出力装置とを内蔵したシングルチップマイクロコンピ
ュータにおいて、 少なくとも2つ以上の動作モードを有し、 CPUから出力された論理アドレスを物理アドレスに変
換するROMアドレス変換手段と、前記各動作モードに
応じて前記ROMへのアドレス信号のうち上位のmビッ
ト(mは任意の整数)に対し所要の処理を施す信号処理回
路とが備えられ、 前記シングルチップマイクロコンピュータは、 前記入出力装置から出力される動作モード制御信号に基
づいて前記複数の動作モードのうちの1つを設定し、 前記設定された動作モードに応じて、前記ROMアドレ
ス変換手段により変換されたROMアドレスのうち、上
位任意のビットに対し所要の処理を施すROMアドレス
を決定し、 前記動作モードに応じて決定されたROMアドレスに格
納されたプログラムの実行が可能である、 ことを特徴とするシングルチップマイクロコンピュー
タ。5. A single-chip micro-computer having a ROM storing various programs, a RAM storing data, a CPU for executing the programs stored in the ROM, and an input / output device for inputting / outputting various control signals. A computer having at least two or more operation modes, a ROM address conversion means for converting a logical address output from a CPU into a physical address, and a higher-order address signal to the ROM in accordance with each operation mode a signal processing circuit for performing a required process on m bits (m is an arbitrary integer), wherein the single-chip microcomputer performs the plurality of operations based on an operation mode control signal output from the input / output device. Setting one of the modes, and converting the ROM address according to the set operation mode. It is possible to determine a ROM address for performing a required process on upper arbitrary bits from among the ROM addresses converted by the stage, and to execute a program stored in the ROM address determined according to the operation mode. A single-chip microcomputer, characterized in that:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000227487A JP3804754B2 (en) | 2000-07-27 | 2000-07-27 | Single chip microcomputer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000227487A JP3804754B2 (en) | 2000-07-27 | 2000-07-27 | Single chip microcomputer |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002041494A true JP2002041494A (en) | 2002-02-08 |
JP3804754B2 JP3804754B2 (en) | 2006-08-02 |
Family
ID=18720929
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000227487A Expired - Fee Related JP3804754B2 (en) | 2000-07-27 | 2000-07-27 | Single chip microcomputer |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3804754B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114726857A (en) * | 2022-03-18 | 2022-07-08 | 北京元进制科技有限公司 | Software-defined single-chip microcomputer and system structure |
-
2000
- 2000-07-27 JP JP2000227487A patent/JP3804754B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114726857A (en) * | 2022-03-18 | 2022-07-08 | 北京元进制科技有限公司 | Software-defined single-chip microcomputer and system structure |
CN114726857B (en) * | 2022-03-18 | 2024-03-15 | 北京元进制科技有限公司 | Structure of software defined singlechip and system |
Also Published As
Publication number | Publication date |
---|---|
JP3804754B2 (en) | 2006-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6745320B1 (en) | Data processing apparatus | |
US5127096A (en) | Information processor operative both in direct mapping and in bank mapping, and the method of switching the mapping schemes | |
US6934537B2 (en) | Radio communication device, method of and program for rewriting boot program therefor | |
JPH0752405B2 (en) | Single chip microcomputer | |
JP2002041494A (en) | Single-chip microcomputer | |
US20020004877A1 (en) | Method and system for updating user memory in emulator systems | |
JP3345050B2 (en) | Two-dimensional array type memory system | |
JP3093642B2 (en) | Single chip microcomputer and test method thereof | |
KR100264758B1 (en) | Microcomputer | |
JPH06324906A (en) | Single chip microcomputer | |
JPH07306807A (en) | Computer system device | |
JPH06187140A (en) | Processor | |
JP2731618B2 (en) | emulator | |
JPH06103106A (en) | Program debug device | |
KR930009061B1 (en) | Memory access unit | |
JP3006487B2 (en) | Emulation device | |
JP2001256061A (en) | Information storage device | |
JP2003303132A (en) | Semiconductor memory control device | |
CN118860259A (en) | Method, device, equipment and storage medium for reading memory data | |
JP2020009498A (en) | Memory controller and memory control method | |
JP2001075798A (en) | Information processor | |
JP2000010772A (en) | Microcomputer | |
JPH0399327A (en) | Firmware down loading system | |
JP2001209763A (en) | One-chip microcomputer and ic card incorporated with the same | |
JPH04177439A (en) | Single chip microcomputer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040909 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050208 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050408 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051102 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060117 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060316 |
|
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: 20060425 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060502 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100519 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110519 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110519 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120519 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |