JPS63185161A - Memory controller - Google Patents
Memory controllerInfo
- Publication number
- JPS63185161A JPS63185161A JP1518887A JP1518887A JPS63185161A JP S63185161 A JPS63185161 A JP S63185161A JP 1518887 A JP1518887 A JP 1518887A JP 1518887 A JP1518887 A JP 1518887A JP S63185161 A JPS63185161 A JP S63185161A
- Authority
- JP
- Japan
- Prior art keywords
- register
- supervisor
- memory
- counter
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 41
- 238000000034 method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はメモリ空間を拡張するメモリ管理装置に係り、
特に、小形ファクシミリ等に用いられる8ビットCPU
のメモリ管理装置に関する。[Detailed Description of the Invention] [Industrial Application Field] The present invention relates to a memory management device for expanding memory space.
In particular, 8-bit CPUs used in small facsimile machines, etc.
The present invention relates to a memory management device.
ファクシミリ等の装置を多機能化するには、プログラム
メモリが必要である。このメモリをRAMで構成し、外
部に設けた磁気記憶装置等から使用するプログラムデー
タを必要に応じてRAMにロードする方法は高価になる
。例えば特開昭61−58372号公報には、ファクシ
ミリ装置の外部にデータ処理装置を接続し、ファクシミ
リ装置が必要とするデータをデータ処理装置から入力し
てファクシミリ装置を多機能化する技術が記載されてい
る。In order to make devices such as facsimile machines multi-functional, a program memory is required. A method of configuring this memory with a RAM and loading program data to be used from an external magnetic storage device or the like into the RAM as needed is expensive. For example, Japanese Patent Application Laid-Open No. 61-58372 describes a technique for making the facsimile machine multi-functional by connecting a data processing device to the outside of the facsimile machine and inputting data required by the facsimile machine from the data processing device. ing.
上述した様に、従来技術は高価なため、特に小型装置で
使用する8ビットCPUにおいては、メモリ空商を拡張
して利用する必要が生じてくる。As mentioned above, since the conventional technology is expensive, it becomes necessary to expand and utilize memory space, especially in 8-bit CPUs used in small devices.
8ビットCPUは64にバイトのメモリ空間しかなく、
これを、スーパバイザ領域、タスク領域。An 8-bit CPU has only 64 bytes of memory space,
This is the supervisor area and task area.
RAM領域に分割して使用している。ファクシミリ装置
等については、RAM領域は、画像用ラインメモリ、付
号化バッファ、通信結果バ・ンファ、システム用局デー
タが有るため、プログラム用ワークエリアと合わせ、1
6にバイト程度必要である。It is divided into RAM areas and used. For facsimile machines, etc., the RAM area contains image line memory, coding buffer, communication result buffer, and system station data, so together with the program work area, the RAM area is 1
About 6 bytes are required.
また、スーパバイザ領域は、O5自身は少ないが、割込
処理を高速化するため、多数の小さなプログラムを場合
により使い分けて使用しており、周期処理と合わせ、3
2にバイト程度使用している。従って、現在は、残り1
6にバイトを多重化し、タスク系に割当てている。しか
し、今後、CCITY半二重再送方式の導入や、各種通
信モード(Gl〜G3)を同一機種により実現するため
に、RAM領域と、スーパバイザ領域を広げる必要が有
る。このため、将来はタスク系の割当領域が減少してし
まい、プログラムが入らなくなってしまうという事態が
生じる。そこで、スーパバイザ領域とタスク領域とを同
一アドレスに配置し、真領域を切換えながら使用するよ
うにして、メモリ空間を拡張することになる。In addition, although the supervisor area is small in O5 itself, in order to speed up interrupt processing, a large number of small programs are used depending on the situation, and together with periodic processing, 3
I use about 2 part-time jobs. Therefore, currently there is only 1 remaining
6 bytes are multiplexed and assigned to the task system. However, in the future, in order to introduce the CCITY half-duplex retransmission method and to realize various communication modes (Gl to G3) with the same model, it will be necessary to expand the RAM area and supervisor area. Therefore, in the future, the allocated area for tasks will decrease, and a situation will arise where a program will no longer be able to be stored. Therefore, the memory space is expanded by arranging the supervisor area and the task area at the same address and using the real area while switching.
上記した真領域の切換えを、メモリアドレス拡張レジス
タ(以下、面切レジスタという)をソフトにより書換え
ることにより行ない、旧タスク面の読み込みとセーブ、
スーパバイザ状態のネスト数の計数をソフトで行なうと
、1 m5ec以下〜2m5ecの割込が数個発生する
ファクシミリ装置等では、オーバーヘッドが多くなって
処理能力が低下し、動作不能となる可能性が有る。The above true area switching is performed by rewriting the memory address extension register (hereinafter referred to as the plane cutting register) using software, reading and saving the old task plane,
If the number of nests in the supervisor state is counted by software, in facsimile machines, etc., where several interrupts of 1 m5 ec or less to 2 m5 ec occur, the overhead will increase, the processing capacity will decrease, and there is a possibility that the machine will become inoperable. .
本発明の目的は、メモリ空間の拡張を行なったときにオ
ーバーヘッドを減少させるメモリ管理装置を提供するこ
とにある。An object of the present invention is to provide a memory management device that reduces overhead when expanding memory space.
上記目的は、メモリ空間の同一アドレスに異なるプログ
ラムを配置するメモリアドレス拡張レジスタを備えメモ
リ空間を多重化して使用する8ビットCPUシステムに
おいて、スーパバイザ状態時に多重化されたアドレスの
うち一固定面を指示するレジスタと、スーパバイザ状態
の発生と解除を計数しスーパバイザ状態が多重発生しと
きに前記レジスタと前記メモリアドレス拡張レジスタと
の切替えタイミング信号を発生するネストカウンタとを
設けることで、達成される。The above purpose is to specify one fixed plane among the multiplexed addresses in the supervisor state in an 8-bit CPU system that uses memory space multiplexing and is equipped with a memory address extension register that places different programs at the same address in the memory space. This is achieved by providing a register for controlling the supervisor state and a nest counter for counting occurrences and cancellations of the supervisor state and generating a switching timing signal between the register and the memory address extension register when multiple supervisor states occur.
ネストカウンタの計数値によりスーパバイザ状態に入っ
た時と終了した時が分かり、該計数値で多重化されたメ
モリ空間のタスク領域、スーパバイザ領域を切換えるの
で、オーバーヘッドが少なくなる。The count value of the nest counter determines when the supervisor state is entered and when it ends, and the task area and supervisor area of the multiplexed memory space are switched based on the count value, thereby reducing overhead.
以下、本発明の一実施例を図面を参照して説明する。 Hereinafter, one embodiment of the present invention will be described with reference to the drawings.
図は、本発明の一実施例に係るメモリ管理装置の構成図
でやる0図において、1はタスク面切レジスタであり、
システムジェネレーション時に、イニシャルタスクが入
うているタスクメモリを指定する値がプログラムにより
書込まれる。2はスーパバイザ指定レジスタであり、こ
れには、システムジェネレーション時にスーパバイザメ
モリを指定する値がプログラムにより書込まれる。これ
等のレジスタ1.2の出力は、マルチプレクサ4によっ
て選択され、選考された信号がデコーダ5でデコードさ
れ、メモリ6.7.・・・、nの選択信° 号となる
。本実施例では、メモリ6をスーパバイザプログラム用
、タスク用の共用メモリとし、メモリ7、・・・、nを
タスク専用メモリとし、各々同一アドレス面上に配置さ
れている。尚、RAM領域は図示を省略している。The figure is a block diagram of a memory management device according to an embodiment of the present invention. In figure 0, 1 is a task face-off register;
During system generation, a value that specifies the task memory containing the initial task is written by the program. 2 is a supervisor designation register, into which a value designating the supervisor memory is written by a program during system generation. The outputs of these registers 1.2 are selected by a multiplexer 4, the selected signals are decoded by a decoder 5, and the memories 6.7. . . . becomes a selection signal for n. In this embodiment, the memory 6 is a shared memory for supervisor programs and tasks, and the memories 7, . . . , n are dedicated memories for tasks, and are arranged on the same address plane. Note that the RAM area is not shown.
マルチプレクサ4はネストカウンタ3の出力により両レ
ジスタ1.2の出力を選択するようになっている。ネス
トカウンタ3とアップダウンカウンタで構成され、シス
テムジェネレーション時に「0」クリアされる。そして
、システムが、タスク動作中に割込処理やシステムマク
ロ等が発生してスーパバイザ状態(O3に管理された状
態)に入ると、ソフトからのスーパバイズスタート信号
SSTを受けてカウントアツプし、スーパバイザ状態終
了によってソフトから発せられるスーパバイズエンド信
号SENを受けてカウントダウンする。このネストカウ
ンタ3は、スーパバイザ状態のときレジスタ2の出力を
マルチプレクサ4が選択するように動作する。The multiplexer 4 selects the outputs of both registers 1 and 2 based on the output of the nest counter 3. It consists of a nest counter 3 and an up/down counter, and is cleared to "0" during system generation. Then, when the system enters the supervisor state (state managed by O3) due to interrupt processing or system macros occurring during task operation, the system receives a supervisor start signal SST from the software, counts up, and enters the supervisor state. It counts down upon receiving the supervision end signal SEN issued from the software upon completion of the state. This nest counter 3 operates so that the multiplexer 4 selects the output of the register 2 when in the supervisor state.
斯かる構成により、タスク動作中に割込処理Aが入ると
、ネストカウンタ3はカウントアツプしてその内容は「
1」となる。これにより、マルチプレクサ4はレジスタ
2の出力信号を選択し、デコーダ5はスーパーバイザ・
タスク共用メモリ6を選択し、割込処理Aが実行される
。このとき、更に割込処理Bが入ると、ネストカウンタ
3はカウントアツプしてその内容は「2」となり、メモ
+J 6を使用した割込処理Bが実行される。割込処理
Bが終了してソフトからスーババイズエンド信号SEN
が発せられとネストカウンタ3の内容は「1」となる。With this configuration, when interrupt processing A enters during task operation, the nest counter 3 counts up and its contents become "
1". As a result, multiplexer 4 selects the output signal of register 2, and decoder 5 selects the output signal of register 2, and decoder 5 selects the output signal of register 2.
The task shared memory 6 is selected and interrupt processing A is executed. At this time, when interrupt processing B is further entered, the nest counter 3 counts up and its content becomes "2", and interrupt processing B using memo +J6 is executed. After interrupt processing B is completed, the software sends the supervisor end signal SEN.
is issued, the content of the nest counter 3 becomes "1".
これにより割込処理Aが実行され、割込処理Aが終了す
るとスーババイズエンド信号SEHによりネストカウン
タ3の内容は「0」となる。ネストカウンタ3の内容が
「0」になるとマルチプレクサ4はタスク面切レジスタ
1に選択を戻し、もとのタスク動作に戻る。As a result, interrupt processing A is executed, and when interrupt processing A is completed, the content of nest counter 3 becomes "0" in response to supervisor's end signal SEH. When the content of the nest counter 3 becomes "0", the multiplexer 4 returns the selection to the task face selection register 1 and returns to the original task operation.
この様に、本実施例によれば、数μsecのソフト処理
の追加でスーパバイザ状態とタスク状態を同一アドレス
空間で処理出来るシステムを実現出来る。In this way, according to this embodiment, a system can be realized in which the supervisor state and task state can be processed in the same address space by adding software processing of several microseconds.
本発明によれば、スーパバイザプログラムとタスクプロ
グラムのメモリを同一アドレスに配置出来るため、8ビ
ットCPUの様にメモリ空間の少ないシステムでも多機
能化が実現出来る。さらに面切レジスタの制御のみで、
メモリ切換えを行なった場合に比べ、面切レジスタの読
み出し退避及び復旧と、これに伴うスタッフ操作が不要
となるため、プログラムの煩雑さが解消出来、さらに、
ファクシミリの様なリアルタイム処理が必要な装置にお
いて、メモリ制御に伴うオーバーヘッドを大幅に軽減出
来る。According to the present invention, since the memories for the supervisor program and the task program can be located at the same address, multi-functionality can be realized even in a system with a small memory space such as an 8-bit CPU. Furthermore, by controlling only the face cutting register,
Compared to the case of memory switching, there is no need to read, save and restore the face-cut register and the associated staff operations, so the complexity of the program can be eliminated.
In devices such as facsimiles that require real-time processing, the overhead associated with memory control can be significantly reduced.
図は、本発明の一実施例に係るメモリ管理装置の構成図
である。
1・・・タスク面切りレジスタ、2・・・スーパバイザ
指定レジスタ、3・・・ネストカウンタ、4・・・マル
チプレクサ、5・・・デコーダ、6・・・共用メモリ、
7〜n・・・タスク用メモリ。FIG. 1 is a configuration diagram of a memory management device according to an embodiment of the present invention. 1... Task cutting register, 2... Supervisor specification register, 3... Nest counter, 4... Multiplexer, 5... Decoder, 6... Shared memory,
7~n...Task memory.
Claims (1)
置するメモリアドレス拡張レジスタを備え、メモリ空間
を多重化して使用する8ビットCPUシステムにおいて
、スーパバイザ状態時に多重化されたアドレスのうち一
固定面を指示するレジスタと、スーパバイザ状態の発生
と解除を計数しスーパバイザ状態が多重発生したときに
前記レジスタと前記メモリアドレス拡張レジスタとの切
替えタイミング信号を発生するネストカウンタとを備え
てなることを特徴とするメモリ管理装置。1. In an 8-bit CPU system that is equipped with a memory address extension register that places different programs at the same address in the memory space and that uses multiplexed memory spaces, it specifies one fixed plane among the multiplexed addresses when in the supervisor state. A memory management device comprising: a register; and a nest counter that counts occurrences and cancellations of supervisor states and generates a switching timing signal between the register and the memory address extension register when supervisor states occur multiple times. Device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1518887A JPS63185161A (en) | 1987-01-27 | 1987-01-27 | Memory controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1518887A JPS63185161A (en) | 1987-01-27 | 1987-01-27 | Memory controller |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63185161A true JPS63185161A (en) | 1988-07-30 |
Family
ID=11881866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1518887A Pending JPS63185161A (en) | 1987-01-27 | 1987-01-27 | Memory controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63185161A (en) |
-
1987
- 1987-01-27 JP JP1518887A patent/JPS63185161A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4394730A (en) | Multi-processor system employing job-swapping between different priority processors | |
US4442485A (en) | Dynamically buffered data transfer system for large capacity data source | |
JPH02235156A (en) | Information processor | |
US5287486A (en) | DMA controller using a programmable timer, a transfer counter and an or logic gate to control data transfer interrupts | |
JPS63185161A (en) | Memory controller | |
JPH02128250A (en) | Access control circuit for information processor | |
JPH05173933A (en) | Direct memory access transfer system | |
JPS59144955A (en) | Information processor | |
JP2003186666A (en) | Microcomputer and dma control circuit | |
JPH0520253A (en) | Data processor | |
JPH0317143B2 (en) | ||
JP2574019B2 (en) | DMA transfer method | |
JPH0685154B2 (en) | Intermediate buffer control method | |
JPH0512114A (en) | Cache memory | |
JPH05274248A (en) | Direct memory access device | |
JPH0344755A (en) | Interface control system | |
JPH0764900A (en) | Dma data transfer system | |
JPH023216B2 (en) | ||
JPS63132362A (en) | Command operation control system | |
JPS61153770A (en) | Image processor | |
JPS5938827A (en) | Microprocessor ipl system | |
JPH0443355B2 (en) | ||
JPH02236741A (en) | Logic simulator | |
JPS60129841A (en) | Interruption control circuit | |
JPH04111149A (en) | Circuit system for dma device |