JPH0632051B2 - Information processing equipment - Google Patents
Information processing equipmentInfo
- Publication number
- JPH0632051B2 JPH0632051B2 JP61265855A JP26585586A JPH0632051B2 JP H0632051 B2 JPH0632051 B2 JP H0632051B2 JP 61265855 A JP61265855 A JP 61265855A JP 26585586 A JP26585586 A JP 26585586A JP H0632051 B2 JPH0632051 B2 JP H0632051B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- program
- pulse
- unit
- execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7839—Architectures of general purpose stored program computers comprising a single central processing unit with memory
- G06F15/7842—Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Microcomputers (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、周辺機器の制御などを行なう為のパルス出力
装置を有する情報処理装置に関する。The present invention relates to an information processing apparatus having a pulse output device for controlling peripheral devices and the like.
今日、マイクロコンピユータは、LSI技術の進歩によ
り高集積化が進み、各種の周辺ハードウェアをワンチッ
プに搭載するようになってきた。なかでも、パルス出力
装置は、油圧ポンプ、モータなどの外部機器(以下外部
機器と記す)の制御には不可欠なもので、マイクロコン
ピユータの制御対象となる外部機器の数も増え、こうし
たパルス出力装置を多チャンネル設けることが多い。2. Description of the Related Art Today, microcomputers have been highly integrated due to the progress of LSI technology, and various kinds of peripheral hardware have been mounted on one chip. Among them, the pulse output device is indispensable for controlling external devices (hereinafter referred to as external devices) such as hydraulic pumps and motors, and the number of external devices to be controlled by the microcomputer is increasing. Are often provided with multiple channels.
以下では、第4図、第5図、第6図を用いて従来の技術
を説明する。マイクロコンピユータ020は、プログラ
ムを読み出し実行する実行部100、プログラム及びデ
ータを格納するための記憶手段(以下メモリと記す)2
00、各周辺ハードウエアからの割り込み信号を受付け
て実行部100に通知する割り込み制御部300、及び
任意のパルスを発生させるパルス発生装置400、及び
各部のデータ受渡しを行なう周辺バス500から構成さ
れる。実行部100はプログラムの実行アドレスを示す
プログラムカウンタ101、実行部100の状態を示す
プログラムステータスワード(以下PSW)102、汎
用レジスタ103、算術論理演算を行なう算術論理演算
ユニット(以下ALU)107、及び命令コードを格納する
命令レジスタ108、命令レジスタ108に格納した命
令コードをデコードし各部の実行制御を行なう実行制御
部109を有する。メモリ200はプログラムを格納す
るプログラム格納エリア230、割り込みプログラムを
実行する際にプログラムカウンタ101,PSW102,汎用レジ
スタ103を一時退避する為の退避領域(以下、退避領
域と記す)240から成る。パルス発生装置400はカ
ウントクロックφをカウントするカウンタ(以下CN
T)406,407,CNT406,407と比較動作を行なうレジスタ
(以下比較レジスタ)411,421、CNT406,407と比較レ
ジスタ411,421の値が一致するとアクティブ(“1”)
になる一致信号線414,424及び一致信号線414,424がアク
ティブ(“1”)になると出力値を反転する出力ラッチ
412,422の値を出力する出力信号線413,423から構成され
る。また割り込み要求制御部300には比較レジスタ41
1,421から割り込み要求を受付けたことを実行部100
に通知する為の割り込み要求信号線310を有する。割
込制御部300は他の周辺ハードウエアからの割り込み
要求信号線も受けつけるが本従来例では省略する。The conventional technique will be described below with reference to FIGS. 4, 5, and 6. The microcomputer 020 is an execution unit 100 that reads and executes a program, a storage unit (hereinafter, referred to as a memory) 2 for storing the program and data.
00, an interrupt control unit 300 that receives an interrupt signal from each peripheral hardware and notifies the execution unit 100, a pulse generator 400 that generates an arbitrary pulse, and a peripheral bus 500 that transfers data of each unit. . The execution unit 100 includes a program counter 101 indicating an execution address of a program, a program status word (hereinafter PSW) 102 indicating a state of the execution unit 100, a general register 103, an arithmetic logic operation unit (hereinafter ALU) 107 for performing an arithmetic logic operation, and It has an instruction register 108 that stores an instruction code, and an execution control unit 109 that decodes the instruction code stored in the instruction register 108 and controls the execution of each unit. The memory 200 includes a program storage area 230 for storing a program, and a save area (hereinafter referred to as a save area) 240 for temporarily saving the program counter 101, PSW 102, and general register 103 when executing an interrupt program. The pulse generator 400 is a counter (hereinafter referred to as CN
T) 406, 407, CNT 406, 407 register (hereinafter, comparison register) 411, 421 performing comparison operation, CNT 406, 407 and comparison register 411, 421 match value, active (“1”)
Matching signal lines 414,424 and an output latch that inverts the output value when the matching signal lines 414,424 become active ("1")
It is composed of output signal lines 413 and 423 for outputting the values of 412 and 422. The interrupt request control unit 300 also includes a comparison register 41.
Execution unit 100 receives the interrupt request from 1,421.
Has an interrupt request signal line 310 for notifying the user. The interrupt control unit 300 also accepts interrupt request signal lines from other peripheral hardware, but this is omitted in this conventional example.
次に第4図を参照して各ハードウエアの動作を説明す
る。パルス発生装置400のCNT406,407はシス
テムリセット解除後、カウント動作を開始し、カウント
クロックが来るたびにカウントアップをする。CNT406,4
07がカウント動作を行なって比較レジスタ411,421の値
に等しくなると比較レジスタ411,421は一致信号線414,
424をアクティブ(“1”)にする。一致信号線414,
424はそのまま割り込み制御部300への割り込み要求
信号線になっている。またCNT406,407は一致信号線4
14,424がアクティブになるとクリアされて0になり、再
び0からカウント動作を行なう。出力ラッラ412,422は
システムリセットでリセットされて出力値“0”とな
る。システムリセット解除後、FRC405と比較レジス
タ411,421が一致して比較レジスタ411,421が一
致信号線414,424をアクティブ(“1”)にする毎に出
力ラッチ412,422は出力値を反転する。また、出力ラッ
チ412,422の値はソフトウエアで読み出す事ができる。
割り込み要求制御部300は、一致信号線414,424がア
クティブ(“1”)になると割り込み要求信号線310
をアクティブ(“1”)にして、実行部100に割り込
み処理を要求する。実行部100は通常メモリ200上
のプログラム格納エリア230からプログラムカウンタ
101に従って命令を読み出して命令レジスタ108に
格納し、実行制御部109は命令レジスタ108の命令
コードをデコードして命令を実行する。実行部100
は、1命令の実行処理が終了するたびに割り込み要求信
号線310を検知してインアクティブ(“0”)であれば
上記の命令実行動作を繰り返す。実行部100が1命令
終了後、割り込み要求信号線310を検知して割り込み
要求信号線310がアクティブ(“1”)であれば、以
下に述べる割り込み処理を実行する。割り込み要求信号
線310がアクティブ(“1”)になると、実行部10
0は現在実行中のプログラムの実行状態を保持するた
め、プログラムカウンタ101,PSW102、汎用レジスタ
103の値をメモリ200上の退避領域240へ順次格
納する。上記の処理の後、実行部100は割り込み処理
プログラムの実行を開始する。Next, the operation of each hardware will be described with reference to FIG. The CNTs 406 and 407 of the pulse generator 400 start counting after the system reset is released, and count up each time a count clock arrives. CNT406,4
When 07 performs the counting operation and becomes equal to the values of the comparison registers 411 and 421, the comparison registers 411 and 421 cause the match signal lines 414 and 421,
424 is activated (“1”). Match signal line 414,
424 is an interrupt request signal line to the interrupt control unit 300 as it is. The CNTs 406 and 407 are the same signal lines 4
When 14,424 becomes active, it is cleared to 0 and the counting operation is performed again from 0. The output latches 412, 422 are reset by the system reset and have the output value "0". After releasing the system reset, the output values of the output latches 412 and 422 are inverted each time the FRC 405 and the comparison registers 411 and 421 match and the comparison registers 411 and 421 activate the match signal lines 414 and 424 (“1”). The values of the output latches 412 and 422 can be read by software.
The interrupt request control unit 300, when the coincidence signal lines 414 and 424 become active (“1”), the interrupt request signal line 310.
Is made active (“1”) and the execution unit 100 is requested to perform interrupt processing. The execution unit 100 reads an instruction from the program storage area 230 on the normal memory 200 according to the program counter 101 and stores it in the instruction register 108, and the execution control unit 109 decodes the instruction code of the instruction register 108 and executes the instruction. Execution unit 100
Detects the interrupt request signal line 310 every time the execution process of one instruction is completed and is inactive (“0”), the above instruction execution operation is repeated. After the execution unit 100 finishes one instruction, if the interrupt request signal line 310 is detected and the interrupt request signal line 310 is active (“1”), the interrupt process described below is executed. When the interrupt request signal line 310 becomes active (“1”), the execution unit 10
Since 0 holds the execution state of the program currently being executed, the values of the program counter 101, PSW 102, and general register 103 are sequentially stored in the save area 240 on the memory 200. After the above processing, the execution unit 100 starts executing the interrupt processing program.
次に第5図のフローチャート及び第6図のタイミング図
を参照して割り込み処理の処理内容について説明する。
割り込み処理プログラムでは、まず実行部100は、出
力ラッチ412の値を読み込む。実行部100は、出力
ラッチ412の値が“0”ならロウレベル幅の演算を行
ない、出力ラッチ412の値が“1”ならハイレベル幅
の演算を行なう。t0において、出力ラッチ412の値
は“1”となるので、t0で起動された割込みプログラ
ムでは次に出力するパルス巾T1を計算する。次に実行
部100は、パルス出力幅T1を比較レジスタ411へ
転送する。上記の処理の後、退避領域240からプログ
ラムカウンタ101,PSW102、汎用レジスタ103を復
帰させる。Next, the processing contents of the interrupt processing will be described with reference to the flowchart of FIG. 5 and the timing chart of FIG.
In the interrupt processing program, the execution unit 100 first reads the value of the output latch 412. The execution unit 100 calculates the low level width when the value of the output latch 412 is "0", and calculates the high level width when the value of the output latch 412 is "1". At t0, the value of the output latch 412 becomes “1”, so the interrupt program started at t0 calculates the pulse width T 1 to be output next. Next, the execution unit 100 transfers the pulse output width T1 to the comparison register 411. After the above processing, the program counter 101, PSW 102, and general-purpose register 103 are restored from the save area 240.
以上の処理によって、比較レジスタ411は、t1のタ
イミングで、一致信号線414をアクティブにして上記
の割り込み処理を再び起動する。Through the above processing, the comparison register 411 activates the coincidence signal line 414 at the timing of t1 to restart the above interrupt processing.
以上説明した処理により、パルス出力装置400は出力信
号線413からパルス出力をする。また、ここでは、比
較レジスタ411と出力ラッチ412に関する割込み処理
を説明をしたが、比較レジスタ421と出力ラッチ41
2に関しても、同様の処理を施す。Through the processing described above, the pulse output device 400 outputs a pulse from the output signal line 413. Further, here, the interrupt processing regarding the comparison register 411 and the output latch 412 has been described, but the comparison register 421 and the output latch 41 are described.
The same process is applied to the item 2.
(1) 従来のパルス出力装置は出力するパルスデータの
演算,転送処理を割り込みプログラムの実行によって処
理しているため、出力の変化タイミング毎にPC,PSW,汎
用レジスタの退避を行ない、割り込み処理後、再びPC,P
SWの復帰を行なうといった処理を必要とするため、実際
に割り込み処理全体に要する実行時間中、割り込み処理
自体にかかる実行部の処理時間に比べてステータスの退
避、復帰処理時間が多く、実行部の処理効率が悪い。(1) Since the conventional pulse output device processes and processes the output pulse data by executing the interrupt program, the PC, PSW, and general-purpose registers are saved at each output change timing, and after the interrupt processing , Again PC, P
Since processing such as SW restoration is required, during the actual execution time required for the entire interrupt processing, the status save and restore processing time is longer than the processing time of the execution section required for the interrupt processing itself. The processing efficiency is poor.
(2) 上記の実行部の処理能率は、パルス出力装置の出
力パルスデータの増加、及びチャネル数の増加に伴って
さらに悪化する。(2) The processing efficiency of the execution unit described above further deteriorates as the output pulse data of the pulse output device increases and the number of channels increases.
(3) 従来のパルス出力装置は、1チャネルにつき、カ
ウンタと比較レジスタを1つずつ持つ構成をとっている
ため、チャネル数を増加する際に、膨大なハードウエア
の増加が伴う。(3) Since the conventional pulse output device has a configuration in which each channel has one counter and one comparison register, an enormous increase in hardware is required when the number of channels is increased.
本発明は、中央処理装置とデータを配憶する記憶手段と
パルス出力装置を単一半導体基盤上に集積し情報処理装
置において、中央処理装置がプログラムの実行状態を保
持したまま記憶手段からパルス出力装置へのデータ転送
を行なうデータ転送手段を設けたことを特徴とする。According to the present invention, a central processing unit, a storage unit for storing data, and a pulse output unit are integrated on a single semiconductor substrate, and in the information processing unit, the central processing unit outputs the pulse from the storage unit while holding the execution state of the program. A data transfer means for transferring data to the device is provided.
〔実施例) 次に、本発明の実施例について第1図、第2図及び第3
図を参照して説明する。第1図は、本発明の一実施例で
マイクロコンピユータ010は、プログラムを読み出し
実行する実行部100、プログラム及びデータを格納す
るための記憶手段(以下メモリと記す)200、各周辺
ハードウエアからの割り込み信号を受付けて実行部10
0に通知する割り込み制御部(以下I/O要求制御部)
305、及び任意のパルスを発生させるパルス発生装置
400、及び各部のデータ受渡しを行なう周辺パルス5
00から構成される。実行部100はプログラムの実行
アドレスを示すプログラムカウンタ101、実行部10
0の状態を示すPSW102汎用レジスタ103、算術論理演
算を行なうALU107、及び命令コードを格納する命令
レジスタ108、命令レジスタ108に格納した命令コ
ードをデコードし各部の実行制御を行なう実行制御部1
09、I/O要求制御部305にI/O要求を受けつけ
た事を示す為のアクノリッジ信号線325を有する。メ
モリ200はプログラムを格納するプログラム格納エリ
ア230、パルス発生装置の出力パルスデータを格納す
るバッファメモリ210,220、バッファメモリ210,2
20のデータ転送回数を格納するための転送回数格納領
域280,290、及びバッファメモリ210,220の先頭ア
ドレスを指すメモリポインタ285,295から成る。パルス
発生装置400はカウントクロックφをカウントするフ
リーランニングカウンタ(以下FRC)450,FRC405と比
較動作を行うレジスタ(以下比較レジスタ)411,421、FR
C405と比較レジスタ411,421の値が一致するとアクテ
ィブ(“1”)になる一致信号線414,424、及び
一致信号線414,424がアクティブになると出力値を反転
する出力ラッチ412,422及び出力ラッチ412,422の値を出
力する出力信号線413,423から構成される。I/O要求
制御部305は一致信号線414,424がアクティブになる
事によってI/O要求が起動されたことを実行部100
へ通知するためのI/O要求信号315とI/O要求の処
理を行なう処理コードを発生するI/O要求処理コード
発生回路308を有する。[Embodiment] Next, FIG. 1, FIG. 2 and FIG.
It will be described with reference to the drawings. FIG. 1 shows an embodiment of the present invention in which a microcomputer 010 includes an execution unit 100 for reading and executing a program, a storage unit (hereinafter referred to as a memory) 200 for storing the program and data, and a peripheral hardware. Execution unit 10 that receives an interrupt signal
Interrupt control unit for notifying 0 (hereinafter I / O request control unit)
305, a pulse generator 400 for generating an arbitrary pulse, and a peripheral pulse 5 for passing data between respective parts.
It consists of 00. The execution unit 100 includes a program counter 101 that indicates an execution address of a program and an execution unit 10.
PSW102 general-purpose register 103 indicating 0 state, ALU 107 performing arithmetic logic operation, instruction register 108 storing instruction code, execution control unit 1 decoding instruction code stored in instruction register 108 and controlling execution of each unit
09, the I / O request control unit 305 has an acknowledge signal line 325 for indicating that the I / O request is received. The memory 200 includes a program storage area 230 for storing programs, buffer memories 210, 220 for storing output pulse data of the pulse generator, and buffer memories 210, 2
It comprises transfer count storage areas 280 and 290 for storing the data transfer count of 20 and memory pointers 285 and 295 pointing to the head addresses of the buffer memories 210 and 220. The pulse generator 400 is a register (hereinafter, comparison register) 411, 421, FR that performs a comparison operation with a free-running counter (hereinafter, FRC) 450, FRC405 that counts the count clock φ.
When the values of C405 and the comparison registers 411 and 421 match, the match signal lines 414 and 424 that become active (“1”) and the output values of the output latches 412 and 422 and the output latches 412 and 422 that invert the output value when the match signal lines 414 and 424 become active are output. Output signal lines 413 and 423. The I / O request control unit 305 indicates that the I / O request is activated by the activation of the match signal lines 414 and 424.
An I / O request signal 315 for notifying the user and an I / O request processing code generation circuit 308 for generating a processing code for processing the I / O request.
本実施例において、実行部100プログラムカウンタ1
01、PSW102、汎用レジスタ103の退避を行なわず、
実行部100の状態を維持したままI/O要求処理を行
う。(以後この処理形態をマクロサービスと呼ぶ。) 次に第1図を用いて各周辺ハードウエアの動作を説明す
る。パルス出力制御部400のFRC405はシステムリセッ
ト解除後、カウント動作を開始し、カウントクロックφ
が来るたびにカウントアップをする。FRC405がカウント
動作を行なって比較レジスタ411,421の値に等しくなる
と比較レジスタ411,421は一致信号線414,424をアクティ
ブ(“1”)にする。一致信号414,424はそのままI/
O要求制御部305へのI/O要求信号となる。出力ラ
ッチ412,422はシステムリセットでリセットされて出力
値“0”となる。システムリセット解除後、比較レジス
タ411,421が一致信号414,424線をアクティブに
する毎に出力ラッチ412,422は出力値を反転する。I/
O要求制御部305は、一致信号線414,424がア
クティブになるとI/O要求信号線315をアクティブ
(“1”)にして、実行部100にI/O要求が発生し
たことを通知する。また、I/O要求制御部305は、
実行部100がアクノリッジ信号325をアクティブに
すると、周辺バス500にI/O要求処理処理コード発
生回路308からI/O要求処理コードを出力する。実
行部100は通常プログラムメモリ230内のプログラ
ムを読み出し命令レジスタ108に格納し実行制御部1
09は命令レジスタ108の値をデコードして実行して
いる。実行部100は、1命令の実行が終了するたびに
I/O要求信号線315を検知してインアクティブ
(“0”)であれば上記の命令実行動作を繰り反す。実
行部100が命令実行終了後、I/O要求信号線315
を検知してI/O要求信号線315がアクティブ
(“1”)であれば実行中のプログラムの処理を一時中
断して、バッファメモリ210,220から比較レジスタ411,
421への転送をするマクロサービス処理を行なう。In the present embodiment, the execution unit 100 program counter 1
01, PSW102, general register 103 is not saved,
I / O request processing is performed while maintaining the state of the execution unit 100. (Hereinafter, this processing form is referred to as a macro service.) Next, the operation of each peripheral hardware will be described with reference to FIG. The FRC 405 of the pulse output control unit 400 starts the counting operation after the system reset is released, and the count clock φ
Count up every time. When the FRC 405 performs the counting operation and becomes equal to the values of the comparison registers 411 and 421, the comparison registers 411 and 421 activate the coincidence signal lines 414 and 424 (“1”). Matching signals 414 and 424 are I /
It becomes an I / O request signal to the O request control unit 305. The output latches 412 and 422 are reset by the system reset and have the output value "0". After releasing the system reset, the output latches 412 and 422 invert the output value every time the comparison registers 411 and 421 activate the coincidence signals 414 and 424. I /
The O request control unit 305 activates the I / O request signal line 315 (“1”) when the match signal lines 414 and 424 become active, and notifies the execution unit 100 that an I / O request has been issued. Also, the I / O request control unit 305
When the execution unit 100 activates the acknowledge signal 325, the I / O request processing code generation circuit 308 outputs the I / O request processing code to the peripheral bus 500. The execution unit 100 stores the program in the normal program memory 230 in the read instruction register 108, and the execution control unit 1
09 decodes the value of the instruction register 108 and executes it. The execution unit 100 detects the I / O request signal line 315 every time the execution of one instruction is completed, and repeats the above instruction execution operation if it is inactive (“0”). After the execution unit 100 finishes executing the instruction, the I / O request signal line 315
Is detected and the I / O request signal line 315 is active (“1”), the processing of the program being executed is temporarily suspended, and the buffer memories 210 and 220 change the comparison register 411,
The macro service processing for transferring to 421 is performed.
次に第1図を参照して本実施例におけるI/O要求処
理、及びパルス出力装置の動作を説明する。実行部10
0はI/O要求信号線315がアクティブ(“1”)に
なるまではプログラム格納エリア230のプログラムを
読み出し、命令レジスタ108へ格納し、実行制御部1
09が命令レジスタ108の内容をデコードして実行し
ている。実行部100内のプログラムカウンタ101は
次に実行する命令のアドレスを指しており、またPSW1
02は現在実行中のプログラムによる実行部100の状
態を示し、汎用レジスタ103は処理中のデータを格納
している。I/O要求信号線315がアクティブ
(“1”)になると、実行部100はバッファメモリ210,2
20から比較レジスタ411,421への転送をするマクロサ
ービス処理を行なう。実行部100は、I/O要求信号
線315がアクティブ(“1”)になると、アクノリッ
ジ信号325をアクティブ(“1”)にしてI/O要求
処理コード発生回路308に、転送処理の処理コードを
周辺バス500に対して出力させる。実行制御部109
は、この転送処理の処理コードを命令レジスタ108に
直接書き込んで、プログラムカウンタ101,PSW102、汎用
レジスタ103を保持したままバッファメモリ210,220
から比較レジスタ411,421への転送をするマクロサービ
ス処理を実行する。Next, with reference to FIG. 1, the I / O request processing and the operation of the pulse output device in this embodiment will be described. Execution unit 10
For 0, the program in the program storage area 230 is read and stored in the instruction register 108 until the I / O request signal line 315 becomes active (“1”), and the execution control unit 1
09 decodes the content of the instruction register 108 and executes it. The program counter 101 in the execution unit 100 points to the address of the instruction to be executed next, and PSW1
Reference numeral 02 indicates the state of the execution unit 100 according to the program currently being executed, and the general-purpose register 103 stores data being processed. When the I / O request signal line 315 becomes active (“1”), the execution unit 100 causes the buffer memories 210, 2
Macro service processing for transferring data from 20 to the comparison registers 411 and 421 is performed. When the I / O request signal line 315 becomes active (“1”), the execution unit 100 makes the acknowledge signal 325 active (“1”) and causes the I / O request processing code generation circuit 308 to transfer the processing code of the transfer process. Is output to the peripheral bus 500. Execution control unit 109
Writes the processing code of this transfer processing directly to the instruction register 108, and holds the program counter 101, PSW 102, and general-purpose register 103 while holding the buffer memories 210 and 220.
To the comparison registers 411 and 421 is executed.
実行部100は、上記のI/O要求を受けつけると、以
下の処理を実行する。Upon receiving the above I / O request, the execution unit 100 executes the following processing.
(1) バッファメモリのアドレスを示すメモリポインタ2
85,295の値と転送回路格納領域280,290の値をAL
U107を用いて加算し、加算によって得られた転送データ
アドレスから転送データを読み出し、パルス発生装置4
00内の比較レジスタ411,421へ転送する。(1) Memory pointer 2 that indicates the buffer memory address
AL values 85,295 and transfer circuit storage areas 280,290
U107 is used for addition, transfer data is read from the transfer data address obtained by the addition, and pulse generator 4
It transfers to the comparison register 411,421 in 00.
(2) 転送処理後、実行部100は、転送回数格納領域2
80,290の値をALU107を用いてディクリメントする。ディ
クリメント結果が“0”でなければ、I/O要求処理以
前に実行していたプログラムの実行を再開する。ディク
リメントの結果がもし“0”にあったら、実行部100
は、バッファメモリ210,220のデータ転送完了割り込み
要求を起動する。(2) After the transfer processing, the execution unit 100 displays the transfer count storage area 2
Decrement the value of 80,290 using ALU107. If the decrement result is not "0", the execution of the program executed before the I / O request processing is restarted. If the decrement result is "0", the execution unit 100
Activates a data transfer completion interrupt request for the buffer memories 210 and 220.
以上の処理により実行部100のプログラムカウンタ10
1,PSW102、汎用レジスタ103の退避、復帰処理なし
に、バッファメモリ210,220から比較レジスタ411,421へ
の転送動作を行なうことが可能である。Through the above processing, the program counter 10 of the execution unit 100
The transfer operation from the buffer memories 210 and 220 to the comparison registers 411 and 421 can be performed without saving and restoring the PSW 102 and the general-purpose register 103.
次に第2図および第3図を用いてバッファメモリ210
に設定した値と出力信号線413から出力するパルスの
関係を説明する。第2図において、バッファメモリ21
0はパルスデータ211〜217を有し、メモリ200上は他
に転送回数格納領域280、メモリポインタ285を有
する。パルスデータ211〜217のアドレスは、パルスデー
タ217からパルスデータ211にいくに従って大きく
なるように、またパルスデータ211〜217には値t1〜t7が
設定してある。Next, referring to FIGS. 2 and 3, the buffer memory 210
The relationship between the value set in the above and the pulse output from the output signal line 413 will be described. In FIG. 2, the buffer memory 21
0 has pulse data 211 to 217, and the memory 200 additionally has a transfer count storage area 280 and a memory pointer 285. The addresses of the pulse data 211 to 217 are set to increase from the pulse data 217 to the pulse data 211, and the pulse data 211 to 217 are set to the values t1 to t7.
初期状態において、転送回数格納領域280の値はパル
スデータの数を示し、メモリポインタ285はパルスデ
ータ217をさしている。また比較レジスタ411には
初期値t0を設定しておく。この状態において、FRC405と
比較レジスタ411の値がt0のタイミングで一致して
一致信号線414をアクティブし、I/O要求処理を起
動すると、実行部100は、メモリポインタ285と転送
回数格納領域280の値を加算してパルスデータ211
のアドレスを算出する。このアドレス情報をもとに、パ
ルスデータ211の値t1を比較レジスタ411に転送
する。続いて実行部100は、転送回数格納領域280
の値をデクリメントする。上記の一致信号線414がア
クティブになるt0のタイミングで、出力ラッチ412
は出力値を反転する。In the initial state, the value of the transfer count storage area 280 indicates the number of pulse data, and the memory pointer 285 points to the pulse data 217. The initial value t0 is set in the comparison register 411. In this state, when the values of the FRC 405 and the comparison register 411 match at the timing of t0 to activate the match signal line 414 and activate the I / O request processing, the execution unit 100 causes the execution unit 100 to store the memory pointer 285 and the transfer count storage area 280. Pulse data 211
Calculate the address of. Based on this address information, the value t1 of the pulse data 211 is transferred to the comparison register 411. Subsequently, the execution unit 100 determines the transfer count storage area 280.
Decrement the value of. At the timing t0 when the coincidence signal line 414 becomes active, the output latch 412
Inverts the output value.
次にt1のタイミングで、FRC405と比較レジスタ411
が一致して、一致信号線414をアクティブにし、I/
O要求処理を起動すると、実行制御部109は再びメモ
リポインタ285と転送回数格納領域280の値の加算
を行なう。加算結果はパルスデータ212のアドレス示
し、実行制御部109は、アドレスをもとにパルスデー
タ2122の値を比較レジスタ411に転送する。以下
同様にしてパルスデータ213,214,215,216,217の値をt2,
t3,t4,t5,t6のタイミングで比較レジスタ411に転送
する。Next, at the timing of t1, the FRC 405 and the comparison register 411
Match, the match signal line 414 is activated, and I /
When the O request process is activated, the execution control unit 109 again adds the values of the memory pointer 285 and the transfer count storage area 280. The addition result indicates the address of the pulse data 212, and the execution control unit 109 transfers the value of the pulse data 2122 to the comparison register 411 based on the address. Similarly, the pulse data 213, 214, 215, 216, 217 values are t2,
Transfer to the comparison register 411 at the timing of t3, t4, t5, t6.
バッファメモリ210上のパルスデータを全て転送し終
わったt7のタイミング転送回数格納領域280の値は
0となり、転送完了割り込み処理を起動する。この転送
完了割り込み処理でパルスデータ211〜217の更新を行な
うことにより一連のパルスデータを再度出力することが
可能である。また、バッファメモリ220、比較レジス
タ421、に関しても同様の処理を行なう事によりバッファ
メモリ220上のパルスデータを出力できる。The value of the timing transfer count storage area 280 at t7 when all the pulse data on the buffer memory 210 has been transferred becomes 0, and the transfer completion interrupt process is activated. A series of pulse data can be output again by updating the pulse data 211 to 217 by this transfer completion interrupt process. Further, the pulse data on the buffer memory 220 can be output by performing the same processing on the buffer memory 220 and the comparison register 421.
以上説明した様に本発明は、パルス出力装置が一致信号
を出力する毎に、実行部の状態を保持したまま、直接命
令レジスタに転送処理命令を書き込む処理により、メモ
リ上のバッファメモリの値を比較レジスタへの転送処理
を行なうことによって以下の効果がある。As described above, according to the present invention, every time the pulse output device outputs the coincidence signal, the value of the buffer memory on the memory is changed by the process of directly writing the transfer process instruction to the instruction register while keeping the state of the execution unit. The following effects can be obtained by performing the transfer processing to the comparison register.
(1) 本発明はパルス列データの転送処理を割り込みプ
ログラムの実行によって処理していないため出力の変化
タイミング毎にPC,PSW、汎用レジスタの退避を行ない、
割り込み処理後、再びPC,PSWの復帰を行なうといった処
理を必要としない。従って、従来の割り込み処理によっ
てデータ転送を行なうパルス出力装置に比べ、実際に割
り込み処理全体に要する実行時間のうち、ステータスの
退避、復帰といった処理時間が皆無であるため、実行部
の処理効率は極めて高い。(1) Since the present invention does not process the transfer of pulse train data by executing the interrupt program, the PC, PSW, and general-purpose registers are saved at each output change timing,
After interrupt processing, there is no need to perform processing such as restoring PC and PSW again. Therefore, compared with the conventional pulse output device that transfers data by interrupt processing, the processing time of saving and restoring the status is not included in the execution time actually required for the entire interrupt processing, so that the processing efficiency of the execution unit is extremely high. high.
(2) 上記の実行部の処理能率は、通常のパルス出力装
置の場合、パルス出力データの増加、及びチャネル数の
増加に伴ってプログラムカウンタ、PSW、汎用レジス
タの退避、復帰に要する時間が増え、実行部の処理能力
が低下するが、本発明のパルス出力装置ではチャネル数
に伴う処理能率の低下が少ない。(2) In the case of a normal pulse output device, the processing efficiency of the above execution unit increases as the pulse output data increases, and the time required to save and restore the program counter, PSW, and general-purpose registers increases as the number of channels increases. Although the processing capacity of the execution unit decreases, the pulse output device of the present invention does not decrease the processing efficiency with the number of channels.
(3) 本発明のパルス出力装置は1本のFRCと各チャ
ネル毎の比較レジスタによって構成される為、パルス出
力装置のチャネル数が増加した場合にも、比較レジスタ
の増設のみで対応できる。(3) Since the pulse output device of the present invention is composed of one FRC and the comparison register for each channel, even if the number of channels of the pulse output device is increased, it can be dealt with only by adding the comparison register.
第1図は本発明の一実施例のブロック図、第2図はバッ
ファメモリ210の構成図、第3図はパルス出力装置4
00のパルス出力波形図、第4図は従来例のブロック
図、第5図は従来例の割り込み処理を示すフローチャー
ト、第6図はパルス出力装置400のパルス出力波形図
である。 010,020……マイクロコンピユータ、100……実行
部、101……プログラムカウンタ、102……PS
W、103……汎用レジスタ、107……ALU、10
8……命令レジスタ、109……実行制御部、300…
…メモリ、210,220……バッファメモリ、211,21
7……パルス出力データ、230……プログラムメモ
リ、240……退避領域、280,290……転送回数格納領
域、285,295……メモリポインタ、300……割り込み
制御部、305……I/O要求制御部、308……I/
O要求処理コード発生回路、310……割り込み要求信
号線、315……I/O要求信号線、325……アクノ
リッジ信号線、400……パルス出力装置、405……
FRC、406……カウンタ、407……カウンタ、4
11,421……比較レジスタ、412,422……出力ラッ
チ、413,423……出力信号線、414,424……一致信号線、
500……周辺バス。FIG. 1 is a block diagram of an embodiment of the present invention, FIG. 2 is a block diagram of a buffer memory 210, and FIG. 3 is a pulse output device 4
00 is a pulse output waveform diagram, FIG. 4 is a block diagram of a conventional example, FIG. 5 is a flowchart showing interrupt processing of the conventional example, and FIG. 6 is a pulse output waveform diagram of the pulse output device 400. 010,020 ... Microcomputer, 100 ... Execution unit, 101 ... Program counter, 102 ... PS
W, 103 ... General-purpose register, 107 ... ALU, 10
8 ... Instruction register, 109 ... Execution control unit, 300 ...
… Memory, 210,220 …… Buffer memory, 211,21
7 ... Pulse output data, 230 ... Program memory, 240 ... Save area, 280,290 ... Transfer count storage area, 285,295 ... Memory pointer, 300 ... Interrupt control section, 305 ... I / O request control section, 308 …… I /
O request processing code generation circuit, 310 ... Interrupt request signal line, 315 ... I / O request signal line, 325 ... Acknowledge signal line, 400 ... Pulse output device, 405 ...
FRC, 406 ... Counter, 407 ... Counter, 4
11,421 ... Comparison register, 412,422 ... Output latch, 413,423 ... Output signal line, 414,424 ... Match signal line,
500 …… Peripheral bus.
Claims (1)
数比較データを格納する記憶部と、クロック信号を計数
するカウンタ、このカウンタの計数値が設定値と一致す
ると一致信号を発生するとともに前記中央処理装置に処
理要求を発行する比較手段、および前記一致信号にもと
づきパルスを出力する出力手段を有するパルス出力装置
とを備え、前記中央処理装置は前記比較手段からの処理
要求に応答して前記プログラムの実行を一時中断しその
ときのプログラムの実行状態を保持したまま前記記憶部
から前記計数比較データを前記設定値として前記比較手
段に転送するデータ転送手段を有することを特徴とする
情報処理装置。1. A central processing unit that executes a program, a storage unit that stores count comparison data, a counter that counts clock signals, and a coincidence signal is generated when the count value of this counter matches a set value, and the central unit. A pulse output device having a comparison means for issuing a processing request to the processing device and an output means for outputting a pulse based on the coincidence signal, wherein the central processing unit responds to the processing request from the comparison means. The information processing apparatus further comprising: a data transfer unit that temporarily suspends the execution of the program and transfers the count comparison data as the set value from the storage unit to the comparison unit while maintaining the execution state of the program at that time.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61265855A JPH0632051B2 (en) | 1986-11-07 | 1986-11-07 | Information processing equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61265855A JPH0632051B2 (en) | 1986-11-07 | 1986-11-07 | Information processing equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS63118969A JPS63118969A (en) | 1988-05-23 |
JPH0632051B2 true JPH0632051B2 (en) | 1994-04-27 |
Family
ID=17423015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61265855A Expired - Lifetime JPH0632051B2 (en) | 1986-11-07 | 1986-11-07 | Information processing equipment |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0632051B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01300345A (en) * | 1988-05-27 | 1989-12-04 | Nec Corp | Pulse generating device |
JPH0247729A (en) * | 1988-08-09 | 1990-02-16 | Nec Corp | Information processor |
JPH0752395B2 (en) * | 1988-10-20 | 1995-06-05 | 日本電気株式会社 | Information processing equipment |
JP2847729B2 (en) * | 1989-01-31 | 1999-01-20 | 日本電気株式会社 | Information processing device |
-
1986
- 1986-11-07 JP JP61265855A patent/JPH0632051B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPS63118969A (en) | 1988-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7590774B2 (en) | Method and system for efficient context swapping | |
US6275749B1 (en) | Interrupt-controlled thread processing | |
JP3676882B2 (en) | Microprocessor and its peripheral devices | |
JPS62151971A (en) | Microprocessor | |
US4835684A (en) | Microcomputer capable of transferring data from one location to another within a memory without an intermediary data bus | |
JP2822782B2 (en) | Single chip microcomputer | |
US4947478A (en) | Switching control system for multipersonality computer system | |
JPH0632051B2 (en) | Information processing equipment | |
JPH0916409A (en) | Microcomputer | |
JPH056281A (en) | Information processor | |
JPH08249267A (en) | Dma controller | |
JPH07219766A (en) | Arithmetic processor | |
US5542057A (en) | Method for controlling vector data execution | |
JP2847729B2 (en) | Information processing device | |
JP2876629B2 (en) | Data processing device | |
JPH0795276B2 (en) | Information processing equipment | |
JP2002278753A (en) | Data processing system | |
JPH03149621A (en) | Microprocessor | |
JP2885548B2 (en) | Pipeline control method | |
JPS58176761A (en) | Starting circuit of multi-processor system | |
JP2821176B2 (en) | Information processing device | |
JPS6043757A (en) | Microcomputer of one chip | |
JPH0567035A (en) | Data alignment system for dma transfer | |
JPS62175853A (en) | Interface control system | |
JPH03188547A (en) | Data transfer controller |