JPS59147544A - Pulse counter - Google Patents
Pulse counterInfo
- Publication number
- JPS59147544A JPS59147544A JP2090083A JP2090083A JPS59147544A JP S59147544 A JPS59147544 A JP S59147544A JP 2090083 A JP2090083 A JP 2090083A JP 2090083 A JP2090083 A JP 2090083A JP S59147544 A JPS59147544 A JP S59147544A
- Authority
- JP
- Japan
- Prior art keywords
- counter
- value
- software
- read
- microprocessor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Microcomputers (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、マイクロプロセッサを用いてパルスゼネレー
タからのパルスを計数する装置に関するものである。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an apparatus for counting pulses from a pulse generator using a microprocessor.
サーボ系のディジタル化が進み、高性能の制御が要求さ
れて来ている現在、マイクロプロセッサを用いてサーボ
系を制御することが行われている。Nowadays, with the progress of digitalization of servo systems and the demand for high-performance control, microprocessors are being used to control servo systems.
第6図はその例を示すものである。この場合、位置ルー
プの制御をマイクロプロセッサMPUで行なおうとする
とき、パルスゼネレータPGをモータMの位置検出器と
して用いた場合、モータの現在値に対応するパルスゼネ
レータPGの計数値を読み込んで処理する必要がある。FIG. 6 shows an example. In this case, when trying to control the position loop with the microprocessor MPU, if the pulse generator PG is used as a position detector for the motor M, the count value of the pulse generator PG corresponding to the current value of the motor is read and processed. There is a need to.
このとき問題となるのは、マイクロプロセソサがアクセ
スできるデータのビット数が、パルスゼネレータの計数
値に要求されるビット数より小さいことである。たとえ
ば、マイクロプロセッサにより、外部のパルスゼネレー
タのカウンタをアクセスできるピント数ごとに入力した
のでは、アクセスの途中でカウンタ値が変化することが
あり、正しい値を読むことはできない。また、マイクロ
プロセッサでカウンタを読んでいる間、カウンタの動作
を止めれば、読まれたデータそのものは正しいが、止め
ている間にパルスが入ってくればカウンタの値は誤差を
含むものとなる。The problem here is that the number of bits of data that the microprocessor can access is smaller than the number of bits required for the pulse generator count. For example, if a microprocessor inputs the counter of an external pulse generator for each accessible number of focus points, the counter value may change during the access, making it impossible to read the correct value. Furthermore, if the counter is stopped while the microprocessor is reading the counter, the read data itself will be correct, but if a pulse is received while the counter is stopped, the counter value will contain an error.
以上のような問題点を解決するための従来技術の方法を
2例挙げて説明する。Two examples of conventional methods for solving the above-mentioned problems will be described.
第1例は最も普通に行われている方法であり、これを第
1図に示す。この例では、マイクロプロセッサ(11)
の外部に、必要なビット数のハードウェアカウンタ(1
2) (この例では16ビソトのカウンタCNTl〜
CNT4 )を用意し、パルスゼネレータの計数はこ
のハードウェアカウンタ(12)だけで行う。更に、カ
ウンタと直結してデータラッチ回路(13) (LA
TCHI〜4)を用意し、あるタイミングでハードウェ
アカウンタ(12)のデータを全ビット同時にデータラ
ンチ回路(13)にランチすることができるようにする
。マイクロプロセッサ(II)からパルスゼネレータの
カウンタ値を読みたい場合には、まずデータランチ信号
を出力し、ラッチされたデータを順次非同期に、読みた
いタイミングでマイクロプロセッサ(11)に読み込め
ばよい。この例の欠点は、必要ピッ1−敗だけハードウ
ェアカウンタ(12)とランチ回路(13)が必要であ
り、ハードウェアのコストが高く、回路も複雑となるこ
とである。The first example is the most commonly used method and is shown in FIG. In this example, the microprocessor (11)
A hardware counter with the required number of bits (1
2) (In this example, 16 bit counter CNTl~
CNT4) is prepared, and pulse generator counting is performed only by this hardware counter (12). Furthermore, a data latch circuit (13) (LA
TCHI~4) is prepared so that all bits of the data of the hardware counter (12) can be simultaneously launched to the data launch circuit (13) at a certain timing. If you want to read the counter value of the pulse generator from the microprocessor (II), first output the data launch signal and read the latched data sequentially and asynchronously into the microprocessor (11) at the desired timing. The disadvantage of this example is that a hardware counter (12) and a launch circuit (13) are required for each number of pins and losses, resulting in high hardware costs and a complex circuit.
第2例は、第2図に示すように、パルスゼネレータのカ
ウンタとして必要なビット数より少ないビット数のハー
ドウェアカウンタ(22) (通常はマイクロプロセ
ッサ(21)でアクセスできるビット数以下)を用意し
、パルスゼネレータのカウンタ値(ソフトウェアカウン
タ(23)となる)を知りたい場合には、ハードウェア
カウンタ(22)を読み込み、この値とソフトウェアカ
ウンタ(23)との加算によりソフトウェアカウンタ値
とすることで行われる。しかし、パルスゼネレータのパ
ルス入力とマイクロプロセッサ(21)からのリード(
読込)動作は全く非同期に行われるため、リード動作中
にカウンタ値が変化してしまうおそれがある。このため
、リード動作中ばカウンタ値は変化せず、かつカウンタ
の計数誤差も生じないようにするようなゲートアービタ
(24) (ゲート仲介回路)を必要とする。ゲート
アービタ(24)は非同期の信号間の調整をし、しかも
パルスゼネレータの高速信号に対しても誤差のないよう
にすることが必要なため、複雑な回路となる欠点がある
。The second example, as shown in Figure 2, is to prepare a hardware counter (22) with a smaller number of bits than the number of bits required for the pulse generator counter (usually the number of bits that can be accessed by the microprocessor (21) or less). If you want to know the counter value of the pulse generator (which becomes the software counter (23)), read the hardware counter (22) and add this value to the software counter (23) to obtain the software counter value. be exposed. However, the pulse input of the pulse generator and the lead from the microprocessor (21) (
Since the read operation is performed completely asynchronously, there is a risk that the counter value may change during the read operation. Therefore, a gate arbiter (24) (gate intermediary circuit) is required so that the counter value does not change during the read operation and no counting error occurs in the counter. The gate arbiter (24) has the disadvantage of being a complex circuit because it is necessary to adjust between asynchronous signals and to prevent errors even with high-speed signals from the pulse generator.
この発明は、このような従来の問題点を解消して、ハー
ドウェアカウンタの数を従来のものに比して減らずこと
ができ、マイクロプロセッサがアクセスできるデータの
ビット数がパルスゼネレータのパルス計数値に要求され
るビット数より小さくても、誤差のない計数が可能とな
る装置を提供することを目的とするものである。This invention solves these conventional problems, allows the number of hardware counters to be reduced compared to conventional ones, and allows the number of data bits that a microprocessor can access to match the pulse count value of a pulse generator. The object of the present invention is to provide a device that can perform error-free counting even when the number of bits is smaller than that required for the calculation.
本発明は、nビット可逆カウンタと、この可逆カウンタ
の計数値を演算処理するマイクロプロセッサとを備えた
パルス計数装置において、前記可逆カウンタの計数値を
読込信号に応じて読み込むデータリード部と、前記マイ
クロプロセッサに割込信号が入ったときのみ計数値を2
nだけ変化させるソフトウェアベースカウンタ部と、こ
のソフトウェアベースカウンタ部の計数値と前記データ
リード部のリードデータ値との加算値を出力するソフト
ウェアカウンタ部とを前記マイクロプロセッサに具備し
、
前記可逆カウンタのキャリー信号による割り込み時には
前記ソフトウェアベースカウンタの計数値に2nを加算
して前記リードデータ値を0とし、前記可逆カウンタの
ボロー信号による割り込み時には前記ソフトウェアベー
スカウンタの計数値から2nを減算して前記リードデー
タ値を2n−1として、前記ソフトウェアカウンタ部の
出力によって前記可逆カウンタに入力するパルス数を計
数する構成としたことを特徴とするパルス計数装置に係
るものである。The present invention provides a pulse counting device that includes an n-bit reversible counter and a microprocessor that processes the counted value of the reversible counter, including a data read section that reads the counted value of the reversible counter in accordance with a read signal; The count value is set to 2 only when an interrupt signal is input to the microprocessor.
The microprocessor is equipped with a software-based counter unit that changes the number by n, and a software counter unit that outputs an added value of the counted value of the software-based counter unit and the read data value of the data read unit, When an interrupt occurs due to a carry signal, 2n is added to the count value of the software base counter to set the read data value to 0, and when an interrupt occurs due to a borrow signal of the reversible counter, 2n is subtracted from the count value of the software base counter and the read data value is set to 0. The pulse counting device is characterized in that the data value is 2n-1 and the number of pulses input to the reversible counter is counted based on the output of the software counter section.
以下本発明を実施例に基いて説明する。 The present invention will be explained below based on examples.
第3図は本発明の構成を示すものであり、マイクロプロ
セッサ(1)の他に必要なハードウェアとしては、nビ
ットのカウンタ(2)(パルスゼネレータのカウンタと
して必要なビット数Mより当然小さい)と、このカウン
タ(2)の読込回路(3)のみである。FIG. 3 shows the configuration of the present invention. In addition to the microprocessor (1), the necessary hardware is an n-bit counter (2) (which is naturally smaller than the number of bits M required for a pulse generator counter). ) and the reading circuit (3) of this counter (2).
インクラブド処理はマイクロプロセッサ(1)に含まれ
る機能とする。Included processing is a function included in the microprocessor (1).
ハードウェアカウンタ(2)の状態は、マイクロプロセ
ッサ(1)のRD (READ−読込)信号によりマイ
クロプロセッサに読み込まれるようになっており、ハー
ドカウンタ(2)のキャリー(CARRY )ラインば
マイクロプロセッサ(11のINTO(インタラブドラ
イン0)に、ボロー(BORROW)ラインはlNT1
(インタラブドライン1)に結ばれている。インクラ
ブドラインが1本しかないマイクロプロセッサではキャ
リーとボローの論理和でインクラブドをかけ、いずれの
インタラブドかを要因判別すればよい。The state of the hardware counter (2) is read into the microprocessor by the RD (READ) signal of the microprocessor (1), and the carry (CARRY) line of the hardware counter (2) is read by the microprocessor (11). INTO (interconnected line 0), borrow (BORROW) line is lNT1
(interconnected line 1). In a microprocessor that has only one included line, it is sufficient to multiply the included line by the logical sum of the carry and the borrow, and determine which interposed line is the factor.
マイクロプロセッサ(1)の中には、データリード(D
AT八−READ ) 、 ソフトウェアカウンタf
41 (SOFTWARE−COUNTER)およびソ
フトウェアベースカウンタ(51(SOFT闇RE−B
ASIE−COUNTER)なる変数領域を用意する。Inside the microprocessor (1), there is a data read (D
AT8-READ), software counter f
41 (SOFTWARE-COUNTER) and software base counter (51 (SOFT Yami RE-B)
Prepare a variable area called ASIE-COUNTER).
データリードはnビット変数で、ハードウェアカウンタ
を読んだときのデータが入る。Data read is an n-bit variable that contains the data when reading the hardware counter.
ソフトウェアカウンタ(4)及びソフトウェアベースカ
ウンタ(5)は共にMビットである。Both the software counter (4) and the software base counter (5) are M bits.
上記回路の動作は次のように行われる。The operation of the above circuit is performed as follows.
パルスゼネレータ計数値であるソフトウェアカウンタ(
4)の値を知りたい場合には、
■ハードカウンタの値をリードデータに読み込む。The software counter (which is the pulse generator count value)
If you want to know the value of 4), read the value of the hard counter into the read data.
■ ■で得られたデータの値とソフトウェアベースカウ
ンタ(5)の値との和をソフトウェアカウンタ(4)の
値とする。(2) Let the sum of the data value obtained in (2) and the value of the software base counter (5) be the value of the software counter (4).
つまり
ソフトウェアカウンタ(4)の計数値
=ソフトウェアベースカウンタ(5)の計数値+リード
データの値 ・・・1式
キャリー信号によるインクラブド時には、■ ソフトウ
ェアベースカウンタ(5)の値にNを加算し
■ リードデータの値を0とする。但しN=2nである
。In other words, the count value of the software counter (4) = the count value of the software base counter (5) + the value of the read data...When incremented by the type 1 carry signal, ■ Add N to the value of the software base counter (5) ■ Set the read data value to 0. However, N=2n.
ボロー信号によるインタラブドの場合には、■ ソフト
ウェアベースカウンタ(5)からNを減算し
■ リードデータの値をN−1とする。In the case of interwoven data due to a borrow signal, (1) subtract N from the software base counter (5); and (2) set the read data value to N-1.
上記動作において、インクラブドにより行われる処理は
、一旦インタラプトになるとインクラブド以外のプログ
ラムにより行われる処理を中断して優先的に実行される
ものとし、また上記1式の実行中はインタラブドを禁止
するものとする。In the above operation, once the process performed by the included program is interrupted, the process performed by the program other than the included program will be interrupted and executed preferentially, and the interactive program will be prohibited while the above-mentioned formula 1 is being executed. do.
第4図に処理プログラムのフローを示す。FIG. 4 shows the flow of the processing program.
第5図はカウンタの動作を説明するためのタイムチャー
トであり、+50パルスの後−50パルスを計数する場
合の各カウンタ値などを示したものである。ハードウェ
アカウンタはカウントを中断することなく、またリセッ
トも不要である。FIG. 5 is a time chart for explaining the operation of the counter, and shows each counter value when counting -50 pulses after +50 pulses. Hardware counters do not interrupt counting and do not require resetting.
上述したように本発明によれば、マイクロプロセッサを
用いたパルスゼネレータの計数回路について、マイクロ
プロセッサを除く部分のハードウェアが極めて小規模で
安価なものとなり、計数回路の小型化及び価格低減に大
きな効果がある。As described above, according to the present invention, with respect to the counting circuit of a pulse generator using a microprocessor, the hardware excluding the microprocessor can be made extremely small-scale and inexpensive, which greatly contributes to miniaturization and cost reduction of the counting circuit. effective.
第1図及び第2図はそれぞれ従来の計数回路の構成を示
すブロック図、第3図は本発明の実施例の構成を示すブ
ロック図、第4図は本発明によるフローチャート、第5
図はカウンタの動作を示すタイムチャート、第6図はマ
イクロプロセッサを位置サーボ系に用いた場合の従来の
回路構成を示すブロック図である。
(1):マイクロプロセッサ
(2):カウンタ
0
(3):読込回路
(4):ソフトウエアカウンタ
(5):ソフトウエアベースカウンタ
特許出願人 株式会社 安川電機製作所代理人 手掘
益(ほか2名)
1
特開昭59−147544(7)1 and 2 are block diagrams showing the configuration of a conventional counting circuit, FIG. 3 is a block diagram showing the configuration of an embodiment of the present invention, FIG. 4 is a flowchart according to the present invention, and FIG.
The figure is a time chart showing the operation of the counter, and FIG. 6 is a block diagram showing a conventional circuit configuration when a microprocessor is used in a position servo system. (1): Microprocessor (2): Counter 0 (3): Reading circuit (4): Software counter (5): Software-based counter Patent applicant: Yaskawa Electric Co., Ltd. Representative Masu Tebori (and 2 others) ) 1 JP-A-59-147544 (7)
Claims (1)
計数値を演算処理するマイクロプロセッサとを備えたパ
ルス計数装置において、 前記可逆カウンタの計数値を読込信号に応じて読み込む
データリード部と、前記マイクロプロセッサに割込信号
が入ったときのみ計数値を2rLだけ変化させるソフト
ウェアベースカウンタ部と、このソフトウェアベースカ
ウンタ部の計数値と前記データリード部のり一ドデータ
値との加算値を出力するソフトウェアカウンタ部とを前
記マイクロプロセッサに具備し、 前記可逆カウンタのキャリー信号による割り込み時には
前記ソフトウェアベースカウンタの計数値に2nを加算
して前記リードデータ値を0とし、前記可逆カウンタの
ポロー信号による割り込み時には前記ソフトウェアベー
スカウンタの計数値から2nを減算して前記リードデー
タ値を27−1として、前記ソフトウェアカウンタ部の
出力によって前記可逆カウンタに入力するパルス数を計
数する構成としたことを特徴とするパルス計数装置。[Claims] ], in a pulse counting device comprising an n-bit reversible counter and a microprocessor that performs arithmetic processing on the count value of the reversible counter, comprising: a data read that reads the count value of the reversible counter in accordance with a read signal; a software-based counter unit that changes the count value by 2rL only when an interrupt signal is input to the microprocessor; and an added value of the count value of the software-based counter unit and the glued data value of the data read unit. The microprocessor is equipped with a software counter unit that outputs an output, and when an interrupt occurs due to a carry signal of the reversible counter, 2n is added to the count value of the software base counter to set the read data value to 0, and a pollo signal of the reversible counter is generated. When an interrupt occurs, 2n is subtracted from the count value of the software base counter to set the read data value to 27-1, and the number of pulses input to the reversible counter is counted based on the output of the software counter section. Pulse counting device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2090083A JPS59147544A (en) | 1983-02-10 | 1983-02-10 | Pulse counter |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2090083A JPS59147544A (en) | 1983-02-10 | 1983-02-10 | Pulse counter |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS59147544A true JPS59147544A (en) | 1984-08-23 |
Family
ID=12040102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2090083A Pending JPS59147544A (en) | 1983-02-10 | 1983-02-10 | Pulse counter |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS59147544A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0652682A2 (en) * | 1993-08-30 | 1995-05-10 | Siemens Aktiengesellschaft | Circuit for determining the occurrence of control signals sent to a microprocessor system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5329774A (en) * | 1976-09-01 | 1978-03-20 | Hitachi Ltd | Recording method for occurrence of phenomenon |
JPS57174722A (en) * | 1981-04-21 | 1982-10-27 | Toshiba Corp | Data processor |
-
1983
- 1983-02-10 JP JP2090083A patent/JPS59147544A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5329774A (en) * | 1976-09-01 | 1978-03-20 | Hitachi Ltd | Recording method for occurrence of phenomenon |
JPS57174722A (en) * | 1981-04-21 | 1982-10-27 | Toshiba Corp | Data processor |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0652682A2 (en) * | 1993-08-30 | 1995-05-10 | Siemens Aktiengesellschaft | Circuit for determining the occurrence of control signals sent to a microprocessor system |
EP0652682A3 (en) * | 1993-08-30 | 1997-04-09 | Siemens Ag | Circuit for determining the occurrence of control signals sent to a microprocessor system. |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4453093A (en) | Multiple comparison circuitry for providing a software error trace signal | |
JPH04121085A (en) | Digital pulse processor | |
JPS59147544A (en) | Pulse counter | |
JPS638971A (en) | Polynomial vector arithmetic and control unit | |
US4723258A (en) | Counter circuit | |
JPH0284812A (en) | Duty factor discrimination circuit | |
JP2812610B2 (en) | Pipeline control method | |
JPS62279438A (en) | Tracking circuit | |
JPH0619700B2 (en) | Arithmetic unit | |
JP2619016B2 (en) | Digital control device | |
JPS6349816B2 (en) | ||
JPS60214043A (en) | Pipeline control circuit | |
JPH1038548A (en) | Displacement measuring instrument | |
JPS5833764A (en) | Time monitor system | |
JPS6349853A (en) | Logic simulation processing system | |
JPS6125167B2 (en) | ||
JP3015722B2 (en) | Digital signal processor | |
JPH04277841A (en) | Time passage recording function constituting system for tracer | |
JPH04291654A (en) | Interruption control circuit | |
JPH04207218A (en) | Pulse selecting circuit | |
JPH0520206A (en) | Data error detecting system for memory | |
JPH02204861A (en) | Vector data processor | |
JPH02171812A (en) | Operating speed increasing circuit for processor having no wait state function | |
JPH0378168A (en) | Error correction circuit | |
JPH07264050A (en) | Counter circuit |