JP2015191279A - processing system - Google Patents

processing system Download PDF

Info

Publication number
JP2015191279A
JP2015191279A JP2014066182A JP2014066182A JP2015191279A JP 2015191279 A JP2015191279 A JP 2015191279A JP 2014066182 A JP2014066182 A JP 2014066182A JP 2014066182 A JP2014066182 A JP 2014066182A JP 2015191279 A JP2015191279 A JP 2015191279A
Authority
JP
Japan
Prior art keywords
signal
address
peripheral circuit
processing device
cpu
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
Application number
JP2014066182A
Other languages
Japanese (ja)
Other versions
JP6260394B2 (en
Inventor
川上 健太郎
Kentaro Kawakami
健太郎 川上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014066182A priority Critical patent/JP6260394B2/en
Publication of JP2015191279A publication Critical patent/JP2015191279A/en
Application granted granted Critical
Publication of JP6260394B2 publication Critical patent/JP6260394B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Microcomputers (AREA)
  • Bus Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a processing system configured to perform polling with low power consumption.SOLUTION: A polling circuit (202): includes an address signal generating section which converts an address signal of a first address range, which is input from a processing apparatus (201), to a signal of a second address range, and outputs it to a peripheral circuit (PH1), and on the other hand, outputs the same address signal as that input from the processing apparatus, to the peripheral circuit, when the address signal input from the processing apparatus does not have the first address range; and a ready signal generating section which outputs the same ready signal as that of input from the peripheral circuit when the address signal input from the processing apparatus is an address of the first address range and a read data signal input from the peripheral circuit is the same as an expectation value corresponding to the address signal input from the processing apparatus, and on the other hand, outputs an inactive ready signal to the processing apparatus in the other cases.

Description

本発明は、処理システムに関する。   The present invention relates to a processing system.

プロセッサがアクセス可能なアドレス空間の所定のアドレスから所定の周期でデータを読み出し、読み出したデータが所定の条件を満たすとき、プロセッサに対する割り込み信号を発生するポーリング部が知られている(例えば、特許文献1参照)。ポーリング部は、アドレス空間において割り当てられたアドレスを持ち、所定のアドレス、所定の周期及び所定の条件の少なくとも1つを設定するためのデータを格納するレジスタを有する。   There is known a polling unit that reads data at a predetermined cycle from a predetermined address in an address space accessible by the processor, and generates an interrupt signal for the processor when the read data satisfies a predetermined condition (for example, patent document) 1). The polling unit has an address assigned in the address space, and has a register for storing data for setting at least one of a predetermined address, a predetermined period, and a predetermined condition.

また、特定アドレスのデータが期待値になるまでデータを繰り返し参照して待つポーリング処理の実行が演算装置で必要となった場合に、ポーリング処理の実行によりデータが期待値と一致するか否かを判断する判断手段を有する省電力制御装置が知られている(例えば、特許文献2参照)。制御手段は、データが期待値と一致すると判断されるまで、演算装置を省電力モードに遷移するように制御する。   In addition, when the processing device needs to execute polling processing by repeatedly referring to the data until the data at the specific address reaches the expected value, whether or not the data matches the expected value by executing the polling processing is determined. A power saving control device having a determination means for determining is known (for example, see Patent Document 2). The control means controls the arithmetic device to transition to the power saving mode until it is determined that the data matches the expected value.

特開2009−238001号公報JP 2009-238001 A 特開2011−13914号公報JP 2011-13914 A

割り込み処理では、周辺回路が処理の完了の割り込み信号を中央処理装置(CPU)に対して通知する。そのため、CPUは、周辺回路に対して処理の開始を指示した後、全く別の処理を行ったり、割り込み信号が通知されるまで、消費電力の小さいスリープモードで待機することができるメリットがある。しかし、CPUは、割り込み信号が通知された場合、割り込み処理に移行する前に、その時点で実行している処理を後から再開できるようにCPU内部の汎用レジスタの値、プログラムカウンタの値、CPUの内部状態を保持するプロセッサステータスレジスタの値などを一旦、ランダムアクセスメモリ(RAM)に待避する。CPUは、待避が完了した後、割り込み信号に対応した処理を行い、処理が完了したらRAMに待避してある汎用レジスタの値、プログラムカウンタの値、プロセッサステータスレジスタの値を復元し、元々実行していた処理を再開する。   In interrupt processing, the peripheral circuit notifies the central processing unit (CPU) of an interrupt signal indicating completion of processing. Therefore, after instructing the peripheral circuit to start processing, the CPU can perform completely different processing or can stand by in a sleep mode with low power consumption until an interrupt signal is notified. However, when the CPU is notified of the interrupt signal, the CPU is allowed to resume the processing being executed at that time before the transition to the interrupt processing, the value of the general-purpose register in the CPU, the value of the program counter, the CPU The value of the processor status register holding the internal state of the memory is temporarily saved in a random access memory (RAM). After the saving is completed, the CPU performs processing corresponding to the interrupt signal. When the processing is completed, the general-purpose register value saved in the RAM, the program counter value, and the processor status register value are restored and originally executed. Resume the process that was running.

また、CPUは、割り込み信号をスリープモードで受信すると、スリープ時の汎用レジスタ、プログラムカウンタ、プロセッサステータスレジスタの値のRAMへの待避、割り込み信号に対応した処理、RAMからの汎用レジスタ、プログラムカウンタ、プロセッサステータスレジスタの値の復元を行う。割り込み処理では、これらの値のRAMへの待避と復元がオーバーヘッドとなる点がデメリットである。   Further, when the CPU receives the interrupt signal in the sleep mode, the CPU saves the general-purpose register, program counter, and processor status register value during sleep, processing corresponding to the interrupt signal, general-purpose register from the RAM, program counter, Restores the value of the processor status register. In the interrupt processing, the disadvantage is that saving and restoring these values to the RAM is an overhead.

割り込み処理では、周辺回路側が処理の完了を通知する発信元となるのに対し、ポーリング処理では、CPUから周辺回路に対して処理の完了を問い合わせる。具体的には、周辺回路は、自身の処理状態に応じて値が変わる周辺回路ステータスレジスタを備えており、CPUは、この周辺回路ステータスレジスタの値を読み出して値を確認することで、周辺回路の処理が完了しているか否かを判断する。CPUは、読み出した周辺回路ステータスレジスタの値が、まだ処理を実施中であることを表す値であったときは、もう一度、周辺回路ステータスレジスタの値を読み出し、値を確認することを繰り返す。CPUが何度も周辺回路ステータスレジスタの値の読み出しを繰り返しているうちに、いずれ周辺回路が処理を完了し、周辺回路ステータスレジスタの値が処理完了を表す値に変化し、CPUは処理完了を知ることができる。   In the interrupt process, the peripheral circuit side becomes a transmission source notifying the completion of the process, whereas in the polling process, the CPU inquires the peripheral circuit about the completion of the process. Specifically, the peripheral circuit includes a peripheral circuit status register whose value changes according to its processing state, and the CPU reads the value of the peripheral circuit status register and confirms the value to thereby check the peripheral circuit. It is determined whether or not the process is completed. When the read value of the peripheral circuit status register is a value indicating that processing is still being performed, the CPU repeats reading the value of the peripheral circuit status register and confirming the value again. While the CPU repeatedly reads the value of the peripheral circuit status register many times, the peripheral circuit eventually completes the process, and the value of the peripheral circuit status register changes to a value indicating the completion of the process. I can know.

ポーリング処理のメリットは、割り込み処理への移行前と通常処理への復帰前で行われる汎用レジスタ、プログラムカウンタ、プロセッサステータスレジスタの値のRAMへの待避と復帰が行われないため、これらによるクロックサイクルや消費電力のオーバーヘッドがない点である。CPUが周辺回路に処理を行わせる頻度が多いプログラムを実装する場合、これを割り込み処理を用いたプログラムとして実装すると、頻繁に割り込み処理が行われ、割り込み処理のオーバーヘッドが大きくなる点が課題である。   The merit of polling processing is that the values of general-purpose registers, program counters, and processor status registers that are stored before the transition to interrupt processing and before returning to normal processing are not saved to and restored from the RAM. And no power consumption overhead. When implementing a program that causes the CPU to perform processing frequently in the peripheral circuit, if this is implemented as a program using interrupt processing, interrupt processing is frequently performed and the overhead of interrupt processing increases. .

ポーリング処理のデメリットは、周辺回路での処理がなかなか完了せず、CPUが周辺回路ステータスレジスタの値の読み出しを繰り返す回数が多くなる場合に、CPU及びRAMの消費電力が増えたり、CPUの他にバスアクセスするモジュールでの処理時間が延び、消費電力が増えたりする点である。CPUが周辺回路ステータスレジスタを繰り返し読み出すとき、CPUは次の手順で示すプログラムを繰り返し実行することになる。   The disadvantage of the polling process is that when the processing in the peripheral circuit is not completed easily and the number of times the CPU repeats reading the value of the peripheral circuit status register increases, the power consumption of the CPU and RAM increases, and in addition to the CPU The processing time in the module that accesses the bus is extended, and the power consumption is increased. When the CPU repeatedly reads the peripheral circuit status register, the CPU repeatedly executes the program shown in the following procedure.

(1)CPUは、周辺回路ステータスレジスタの値を読み出す。(2)CPUは、読み出した値が周辺回路の処理完了を表す値と一致するか比較する。(3)CPUは、一致しない場合は、(1)に戻ってやり直す。   (1) The CPU reads the value of the peripheral circuit status register. (2) The CPU compares whether the read value matches the value indicating the completion of processing of the peripheral circuit. (3) If they do not match, the CPU returns to (1) and starts again.

このとき、CPUは常に動作し続けることになるので電力を消費する。また、CPUは、(1)、(2)、(3)の実行を指示するプログラムをRAMから読み出すためRAMの電力消費が生ずる。また、CPU、RAM、及び周辺回路は、バスを介して接続され、ステータスレジスタをはじめ周辺回路の各種レジスタへのアクセス、RAMへのアクセスはバスを介して行われる。しかし、ポーリング処理を行っている間、CPUは、頻繁にバスを使用することになる。すると、ダイレクトメモリアクセスコントローラ(DMAC)など、バスを介してアクセスするブロックがCPU以外に存在する場合、これらのブロックのアクセスに対して競合又は阻害することになり、他のブロックの処理完了が遅れたり、動作時間が延びることにより余分な電力を消費したりする。   At this time, the CPU continues to operate and consumes power. Further, since the CPU reads from the RAM a program that instructs execution of (1), (2), and (3), the RAM consumes power. The CPU, RAM, and peripheral circuit are connected via a bus, and access to various registers of the peripheral circuit including the status register and access to the RAM are performed via the bus. However, the CPU frequently uses the bus during the polling process. Then, when there are blocks other than the CPU, such as a direct memory access controller (DMAC), the access to these blocks competes or obstructs, and the processing completion of other blocks is delayed. Or extra power is consumed by extending the operation time.

特許文献1では、ポーリング処理を専用で担うポーリング部が開示されている。CPUが直接、周辺回路のステータスレジスタの値を読み出して期待する値と一致するかを判定する代わりに、ポーリング部がこれを行う。ポーリング部からCPUへは割り込み信号線が接続されており、ステータスレジスタの値が期待値と一致したときは、この割り込み信号線を通じてポーリング部がCPUに対して割り込みを通知する。これによれば、周辺回路が処理完了を通知する信号を割り込み信号としてCPUに直接出力していない場合においても、CPUはポーリング部を介して割り込み処理によって周辺回路での処理完了を知ることができるため、割り込み処理でのメリットである処理完了まで別の処理を行うことができ、また、消費電力の小さいスリープモードで待機できるなどのメリットを享受できる。しかし、CPUは、割り込み信号を受信する度に汎用レジスタ、プログラムカウンタ、プロセッサステータスレジスタの値のRAMへの待避と、処理完了時に元々実行していた処理を再開するためのこれらの値のRAMからの復元が行われるデメリットは解消されない。   Patent Document 1 discloses a polling unit that performs a dedicated polling process. Instead of the CPU directly reading the value of the status register of the peripheral circuit and determining whether it matches the expected value, the polling unit does this. An interrupt signal line is connected from the polling unit to the CPU. When the value of the status register matches the expected value, the polling unit notifies the CPU of an interrupt through this interrupt signal line. According to this, even when the peripheral circuit does not directly output a signal notifying the completion of processing as an interrupt signal to the CPU, the CPU can know the completion of the processing in the peripheral circuit by the interrupt processing via the polling unit. Therefore, another process can be performed until the process is completed, which is a merit of the interrupt process, and it is possible to enjoy the merit of being able to wait in a sleep mode with low power consumption. However, each time an interrupt signal is received, the CPU saves the values of the general-purpose register, program counter, and processor status register in the RAM, and restarts the processing that was originally executed when the processing is completed. The demerit that is restored is not resolved.

特許文献2では、ポーリング処理を専用で担う省電力モード管理部が開示されている。CPUは、予めポーリング対象のステータスレジスタのアドレスと期待する値を省電力モード管理部内に備わったアドレスレジスタとデータレジスタに設定した後、省電力モード管理部に対してポーリング実行を指示する。省電力モード管理部は、CPUへクロックを供給しているクロック制御部に対し、CPUへのクロック供給を止めることを指示し、同時にアドレスレジスタで指示された周辺回路のステータスレジスタの値を読み出す。省電力モード管理部は、読み出した値がデータレジスタで指示された値と一致するかを確認し、不一致の場合、一致するまでステータスレジスタの値を読み出し、値の一致の確認を繰り返し、一致した場合、クロック制御部に対してCPUへのクロック供給を再開させる。   Patent Document 2 discloses a power saving mode management unit that performs dedicated polling processing. The CPU previously sets the address of the status register to be polled and the expected value in the address register and data register provided in the power saving mode management unit, and then instructs the power saving mode management unit to execute polling. The power saving mode management unit instructs the clock control unit that supplies a clock to the CPU to stop the clock supply to the CPU, and simultaneously reads the value of the status register of the peripheral circuit designated by the address register. The power saving mode management unit checks whether the read value matches the value instructed by the data register. If there is a mismatch, it reads the value in the status register until it matches, and repeats the value match check to find a match. In this case, the clock control unit is caused to resume the clock supply to the CPU.

特許文献2では、割り込み処理を用いていないため、汎用レジスタ、プログラムカウンタ、プロセッサステータスレジスタの値のRAMへの待避と復帰が行われるデメリットがない。また、省電力モード管理部が周辺回路のステータスレジスタを繰り返し読み出し、その間、CPUは、クロック供給が停止しているためCPUでの消費電力が抑えられる。また、CPUは、プログラムのRAMからの読み出しやステータスレジスタアクセスのためのバスアクセスも行わないので、RAMでの電力消費やバスアクセスの競合の問題も起こらない。   In Patent Document 2, since interrupt processing is not used, there is no demerit that the values of general-purpose registers, program counters, and processor status registers are saved to and restored from RAM. In addition, the power saving mode management unit repeatedly reads the status register of the peripheral circuit, and during that time, the CPU stops the clock supply, so that power consumption in the CPU can be suppressed. Further, since the CPU does not read the program from the RAM and does not perform bus access for status register access, there is no problem of power consumption in the RAM and contention of bus access.

しかし、特許文献2では、以下に挙げる3つの課題がある。
(1)プログラム中で省電力モード管理部内のアドレスレジスタやデータレジスタの設定、省電力モード管理部に対するポーリング処理開始の指示が必要である。したがって、省電力モード管理部を備えているか否かによって異なる実装のプログラムが必要であり、省電力モード管理部を備えないシステムとの間でプログラムを移植するときにプログラムの変更量が多くなる。
However, Patent Document 2 has the following three problems.
(1) It is necessary to set the address register and data register in the power saving mode management unit and instruct the power saving mode management unit to start polling processing in the program. Therefore, different implementation programs are required depending on whether or not the power saving mode management unit is provided, and the amount of program change increases when the program is ported to a system that does not include the power saving mode management unit.

(2)省電力モード管理部がポーリング対象としている周辺回路以外のモジュールからCPUに割り込みが通知されたときの動作が開示されていない。   (2) The operation when the CPU is notified of an interrupt from a module other than the peripheral circuit that is the polling target by the power saving mode management unit is not disclosed.

(3)突然のクロックの供給停止及び再開が可能な特殊なCPUが必要となる。通常のCPUは、クロックの供給停止が可能なwaitモードを備えるが、waitモードへの移行は、CPU上でwaitモード移行の専用命令を実行することで行われる。waitモードから再びCPUをwake upモードに移行させるには、CPUへのクロックの供給再開とCPUへ何らかの割り込み通知を行うのが一般的である。しかし、割り込み通知によってCPUをwake upモードにした場合、汎用レジスタ、プログラムカウンタ、プロセッサステータスレジスタの値のRAMへの待避と復元が必要となる。   (3) A special CPU capable of suddenly stopping and restarting clock supply is required. A normal CPU has a wait mode in which clock supply can be stopped, but the transition to the wait mode is performed by executing a dedicated instruction for the wait mode transition on the CPU. In order to shift the CPU from the wait mode to the wake up mode again, it is common to restart the supply of the clock to the CPU and notify the CPU of some kind of interrupt. However, when the CPU is set to the wake up mode by the interrupt notification, it is necessary to save and restore the values of the general-purpose register, the program counter, and the processor status register to the RAM.

本発明の目的は、特殊な処理装置を必要とせず、低消費電力でポーリング処理を行うことができる処理システムを提供することである。   An object of the present invention is to provide a processing system that can perform polling processing with low power consumption without requiring a special processing device.

処理システムは、処理装置と、前記処理装置からリクエスト信号及びアドレス信号を入力し、前記処理装置にレディ信号及びリードデータ信号を出力するポーリング回路と、前記ポーリング回路からリクエスト信号及びアドレス信号を入力し、前記ポーリング回路にレディ信号及びリードデータ信号を出力する周辺回路とを有し、前記処理装置は、前記周辺回路にリードアクセスするために、活性化状態のリクエスト信号及び前記周辺回路に対応するアドレス信号を出力し、前記周辺回路は、前記処理装置のリクエスト信号に対応する処理が終了していない場合には非活性化状態のレディ信号を出力し、前記処理装置のリクエスト信号に対応する処理が終了した場合には活性化状態のレディ信号及びリードデータ信号を出力し、前記ポーリング回路は、前記処理装置から入力したアドレス信号が第1のアドレス範囲のアドレスである場合には、前記処理装置から入力したアドレス信号を第2のアドレス範囲のアドレスに変換して前記周辺回路にアドレス信号を出力し、前記処理装置から入力したアドレス信号が第1のアドレス範囲のアドレスでない場合には、前記処理装置から入力したアドレス信号と同じアドレス信号を前記周辺回路に出力するアドレス信号生成部と、前記処理装置から入力したアドレス信号が第1のアドレス範囲のアドレスであり、前記周辺回路から入力したリードデータ信号が前記処理装置から入力したアドレス信号に対応する期待値と同じである場合には、前記周辺回路から入力したレディ信号と同じレディ信号を前記処理装置に出力し、その他の場合には非活性化状態のレディ信号を前記処理装置に出力するレディ信号生成部とを有する。   The processing system inputs a request signal and an address signal from the processing device, a polling circuit that outputs a ready signal and a read data signal to the processing device, and a request signal and an address signal from the polling circuit. And a peripheral circuit that outputs a ready signal and a read data signal to the polling circuit, and the processing device has an activated request signal and an address corresponding to the peripheral circuit for read access to the peripheral circuit. A signal is output, and the peripheral circuit outputs a ready signal in an inactive state when processing corresponding to the request signal of the processing device is not completed, and processing corresponding to the request signal of the processing device is performed. When finished, an active ready signal and a read data signal are output, When the address signal input from the processing device is an address in the first address range, the circuit converts the address signal input from the processing device into an address in the second address range and addresses the peripheral circuit An address signal generation unit that outputs a signal and outputs the same address signal as the address signal input from the processing device to the peripheral circuit when the address signal input from the processing device is not an address in the first address range; When the address signal input from the processing device is an address in the first address range, and the read data signal input from the peripheral circuit is the same as the expected value corresponding to the address signal input from the processing device. The same ready signal input from the peripheral circuit is output to the processing device, and in other cases And a ready signal generator for outputting a ready signal activated state to said processing unit.

ポーリング回路を設けることにより、特殊な処理装置を必要とせず、低消費電力でポーリング処理を行うことができる。   By providing the polling circuit, it is possible to perform polling processing with low power consumption without requiring a special processing device.

図1は、本実施形態によるワイヤレスセンサノードの構成例を示す図である。FIG. 1 is a diagram illustrating a configuration example of a wireless sensor node according to the present embodiment. 図2は、全体制御部の構成例を示す図である。FIG. 2 is a diagram illustrating a configuration example of the overall control unit. 図3は、周辺回路の一部の構成例を示す図である。FIG. 3 is a diagram illustrating a configuration example of a part of the peripheral circuit. 図4は、CPU、ポーリング回路、バス及び周辺回路間の信号を示す図である。FIG. 4 is a diagram illustrating signals among the CPU, polling circuit, bus, and peripheral circuit. 図5は、CPU及びポーリング回路間の信号を示すタイミングチャートである。FIG. 5 is a timing chart showing signals between the CPU and the polling circuit. 図6は、ポーリング回路及びバス間の信号を示すタイミングチャートである。FIG. 6 is a timing chart showing signals between the polling circuit and the bus. 図7は、バス及び周辺回路間の信号を示すタイミングチャートである。FIG. 7 is a timing chart showing signals between the bus and peripheral circuits. 図8は、メモリマップを示す図である。FIG. 8 is a diagram showing a memory map. 図9は、第1の周辺回路の通常レジスタ領域、期待値が0のレジスタ領域、及び期待値が1のレジスタ領域の例を示す図である。FIG. 9 is a diagram illustrating an example of a normal register area, a register area with an expected value of 0, and a register area with an expected value of 1 of the first peripheral circuit. 図10は、ポーリング回路の構成例を示す図である。FIG. 10 is a diagram illustrating a configuration example of the polling circuit. 図11は、図10のアドレス信号生成部の構成例を示す図である。FIG. 11 is a diagram illustrating a configuration example of the address signal generation unit of FIG. 図12は、図10のREADY信号生成部の構成例を示す図である。FIG. 12 is a diagram illustrating a configuration example of the READY signal generation unit in FIG. 図13は、セレクタの動作を説明するための図である。FIG. 13 is a diagram for explaining the operation of the selector. 図14は、図10のRDATA信号生成部の構成例を示す図である。FIG. 14 is a diagram illustrating a configuration example of the RDATA signal generation unit of FIG. 図15は、図10のREQ信号生成部の構成例を示す図である。FIG. 15 is a diagram illustrating a configuration example of the REQ signal generation unit in FIG. 図16は、周辺回路内のイネーブル信号生成部の構成例を示す図である。FIG. 16 is a diagram illustrating a configuration example of the enable signal generation unit in the peripheral circuit.

図1は、本実施形態によるワイヤレスセンサノード100の構成例を示す図である。ワイヤレスセンサノード100は、全体制御部101、センサ部102、RF(Radio Frequency)部103、発電電源管理部104、アンテナ105及び発電素子106を有する。発電素子106は、光、温度差又は振動などのエネルギー112を基に発電を行い、電力を発電電源管理部104に供給する。発電電源管理部104は、電力を管理し、全体制御部101、センサ部102及びRF部103に対して、電力を供給する。全体制御部101は、I2C(Inter-Integrated Circuit)、SPI(Serial Peripheral Interface)などのシリアルインターフェースを介して、センサ部102、RF部103及び発電電源管理部104を制御する。センサ部102は、温度、照度、加速度又は圧力などの情報111を検出し、情報111を全体制御部101に出力する。全体制御部101は、RF部103及びアンテナ105を介して、情報111を無線信号113として送信する。また、全体制御部101は、RF部103及びアンテナ105を介して、その他の情報を無線信号113として送受信することができる。   FIG. 1 is a diagram illustrating a configuration example of a wireless sensor node 100 according to the present embodiment. The wireless sensor node 100 includes an overall control unit 101, a sensor unit 102, an RF (Radio Frequency) unit 103, a power generation power management unit 104, an antenna 105, and a power generation element 106. The power generation element 106 generates power based on energy 112 such as light, temperature difference, or vibration, and supplies power to the power generation power management unit 104. The power generation power management unit 104 manages power and supplies power to the overall control unit 101, the sensor unit 102, and the RF unit 103. The overall control unit 101 controls the sensor unit 102, the RF unit 103, and the power generation power management unit 104 via a serial interface such as I2C (Inter-Integrated Circuit) and SPI (Serial Peripheral Interface). The sensor unit 102 detects information 111 such as temperature, illuminance, acceleration, or pressure, and outputs the information 111 to the overall control unit 101. The overall control unit 101 transmits information 111 as a radio signal 113 via the RF unit 103 and the antenna 105. Further, the overall control unit 101 can transmit and receive other information as a radio signal 113 via the RF unit 103 and the antenna 105.

ワイヤレスセンサノード100には電池や商用電源が接続されず、発電素子106は、環境から得られるエネルギー112を基に自己発電する。したがって、ワイヤレスセンサノード100は、徹底的な低消費電力が求められる。ワイヤレスセンサノード100に求められる様々な要求仕様や状況に応じた制御を行うために、全体制御部101は、プログラマビリティが求められるため、MCU(マイクロコントローラユニット)が用いられる。   A battery or a commercial power source is not connected to the wireless sensor node 100, and the power generation element 106 generates power based on energy 112 obtained from the environment. Therefore, the wireless sensor node 100 is required to thoroughly reduce power consumption. In order to perform control according to various required specifications and situations required for the wireless sensor node 100, the overall control unit 101 uses MCU (microcontroller unit) because programability is required.

図2は、全体制御部101の構成例を示す図である。全体制御部101は、処理システムであり、中央処理装置(CPU)201、ポーリング回路202、RAM203、割り込みコントローラ204、バス205、ダイレクトメモリアクセスコントローラ(DMAC)206、第1の周辺回路PH1、第2の周辺回路PH2、第3の周辺回路PH3及び第4の周辺回路PH4を有する。バス205には、ポーリング回路202、RAM203、DMAC206及び周辺回路PH1〜PH4が接続される。バス205は、ポーリング回路202及び周辺回路PH1〜PH4の間に接続される。割り込みコントローラ204は、周辺回路PH1〜PH4の割り込み信号IR1〜IR4及び外部割込み信号IRRを入力し、割り込み信号IRをCPU201及びポーリング回路202に出力する。周辺回路PH1〜PH4は、それぞれ、イネーブル信号ENS1〜ENS4をポーリング回路202に出力する。周辺回路PH1〜PH3は、I2C回路又はSPI回路などのインターフェース回路であり、それぞれ、図1のセンサ部102、RF部103及び発電電源管理部104に接続される。   FIG. 2 is a diagram illustrating a configuration example of the overall control unit 101. The overall control unit 101 is a processing system, which is a central processing unit (CPU) 201, a polling circuit 202, a RAM 203, an interrupt controller 204, a bus 205, a direct memory access controller (DMAC) 206, a first peripheral circuit PH1, a second Peripheral circuit PH2, third peripheral circuit PH3, and fourth peripheral circuit PH4. A polling circuit 202, a RAM 203, a DMAC 206, and peripheral circuits PH1 to PH4 are connected to the bus 205. The bus 205 is connected between the polling circuit 202 and the peripheral circuits PH1 to PH4. The interrupt controller 204 receives the interrupt signals IR1 to IR4 of the peripheral circuits PH1 to PH4 and the external interrupt signal IRR, and outputs the interrupt signal IR to the CPU 201 and the polling circuit 202. The peripheral circuits PH1 to PH4 output enable signals ENS1 to ENS4 to the polling circuit 202, respectively. The peripheral circuits PH1 to PH3 are interface circuits such as an I2C circuit or an SPI circuit, and are connected to the sensor unit 102, the RF unit 103, and the power generation power management unit 104 in FIG.

図3は、各周辺回路PH1〜PH4の一部の構成例を示す図である。周辺回路PH1〜PH4は、それぞれ、アドレスレジスタ301、送信データバッファレジスタ302、受信データバッファレジスタ303、制御レジスタ304、ステータスレジスタ305、論理和(OR)回路306及びセレクタ307を有する。レジスタ301〜305のデータ端子D及びイネーブル端子ENは、論理回路311〜320の32ビット出力データを入力する。レジスタ301〜305は、それぞれ、クロック信号に同期して、データ端子Dの入力データをラッチし、ラッチした32ビットデータを出力端子Qから出力する。セレクタ307は、バス205から入力するアドレスADDRに応じて、レジスタ301〜305の32ビット出力データのうちのいずれかを選択し、32ビットデータRDATAをバス205に出力する。論理和回路306は、ステータスレジスタ305のイネーブル端子ENの32ビットデータの論理和をイネーブル信号ENSとして出力する。   FIG. 3 is a diagram illustrating a configuration example of a part of each of the peripheral circuits PH1 to PH4. Each of the peripheral circuits PH1 to PH4 includes an address register 301, a transmission data buffer register 302, a reception data buffer register 303, a control register 304, a status register 305, a logical sum (OR) circuit 306, and a selector 307. The data terminal D and the enable terminal EN of the registers 301 to 305 receive the 32-bit output data of the logic circuits 311 to 320. Each of the registers 301 to 305 latches input data at the data terminal D in synchronization with the clock signal, and outputs the latched 32-bit data from the output terminal Q. The selector 307 selects any of the 32-bit output data of the registers 301 to 305 according to the address ADDR input from the bus 205 and outputs the 32-bit data RDATA to the bus 205. The logical sum circuit 306 outputs a logical sum of 32-bit data at the enable terminal EN of the status register 305 as an enable signal ENS.

CPU201が周辺回路PH1〜PH3を介してセンサ部102、RF部103及び発電電源管理部104へデータ送信する手順は次の通りである。例として、CPU201が周辺回路PH1を介してセンサ部102へデータ送信する手順を説明する。まず、CPU201は、ポーリング回路202及びバス205を介して、送信先アドレスを周辺回路PH1内のアドレスレジスタ301に書き込む。なお、送信先アドレスは、センサ部102を示すアドレスである。次に、CPU201は、ポーリング回路202及びバス205を介して、送信データを周辺回路PH1内の送信データバッファレジスタ302に書き込む。ここで、送信データは、センサデータ読み出しコマンド等を含む。次に、CPU201は、ポーリング回路202及びバス205を介して、送信の指示を周辺回路PH1内の制御レジスタ304に書き込む。その後、周辺回路PH1は、送信データをセンサ部102に送信する。センサ部102は、送信データに従い、情報111を検出し、周辺回路104、バス205及びポーリング回路202を介して、情報111をCPU201に送信する。   The procedure in which the CPU 201 transmits data to the sensor unit 102, the RF unit 103, and the power generation management unit 104 via the peripheral circuits PH1 to PH3 is as follows. As an example, a procedure in which the CPU 201 transmits data to the sensor unit 102 via the peripheral circuit PH1 will be described. First, the CPU 201 writes the transmission destination address in the address register 301 in the peripheral circuit PH1 via the polling circuit 202 and the bus 205. The transmission destination address is an address indicating the sensor unit 102. Next, the CPU 201 writes the transmission data to the transmission data buffer register 302 in the peripheral circuit PH1 via the polling circuit 202 and the bus 205. Here, the transmission data includes a sensor data read command and the like. Next, the CPU 201 writes a transmission instruction to the control register 304 in the peripheral circuit PH1 via the polling circuit 202 and the bus 205. Thereafter, the peripheral circuit PH1 transmits the transmission data to the sensor unit 102. The sensor unit 102 detects the information 111 according to the transmission data, and transmits the information 111 to the CPU 201 via the peripheral circuit 104, the bus 205, and the polling circuit 202.

図4は、CPU201、ポーリング回路202、バス205及び周辺回路PH1間の信号を示す図である。周辺回路PH1の場合を例に示すが、周辺回路PH2〜PH4も周辺回路PH1の場合と同様である。リクエスト信号REQは、アクセスリクエスト信号である。アドレス信号ADDRは、アクセス先アドレス信号である。アクセス種類信号WRITEは、リード又はライトのアクセスの種類を示す信号である。ライトデータ信号WDATAは、ライトアクセス時のライトデータ信号である。リードデータ信号RDATAは、リードアクセス時のリードデータ信号である。レディ信号READYは、アクセス完了を示す信号である。   FIG. 4 is a diagram illustrating signals among the CPU 201, the polling circuit 202, the bus 205, and the peripheral circuit PH1. Although the case of the peripheral circuit PH1 is shown as an example, the peripheral circuits PH2 to PH4 are similar to the case of the peripheral circuit PH1. The request signal REQ is an access request signal. The address signal ADDR is an access destination address signal. The access type signal WRITE is a signal indicating the type of read or write access. The write data signal WDATA is a write data signal at the time of write access. The read data signal RDATA is a read data signal at the time of read access. The ready signal READY is a signal indicating completion of access.

例えば、CPU201が32ビットCPUの場合、信号ADDR、WDATA、RDATAは32ビット信号である。信号REQ、ADDR、WRITE、WDATAは、アクセス元からアクセス先に出力される信号である。信号RDATA及びREADYは、アクセス先からアクセス元に出力される信号である。図4では、最終アクセス先が周辺回路PH1になっているが、CPU201がプログラムコードの読み出しやデータの読み出し、書き込みを行うため、図1のRAM203も最終アクセス先となり得る。また、図4では、CPU201がアクセス元になっているが、図2のDMAC206は、RAM203や周辺回路PH1〜PH4に対して読み出しや書き込みアクセスを行うのでアクセス元になり得る。ただし、DMAC206は、ポーリング処理を行わないので、ポーリング回路202を介する必要がなく、直接バス205に接続される。   For example, when the CPU 201 is a 32-bit CPU, the signals ADDR, WDATA, and RDATA are 32-bit signals. Signals REQ, ADDR, WRITE, and WDATA are signals output from the access source to the access destination. The signals RDATA and READY are signals output from the access destination to the access source. In FIG. 4, the final access destination is the peripheral circuit PH1, but since the CPU 201 reads the program code and reads / writes the data, the RAM 203 in FIG. 1 can also be the final access destination. In FIG. 4, the CPU 201 is the access source, but the DMAC 206 of FIG. 2 can be the access source because it performs read and write access to the RAM 203 and the peripheral circuits PH1 to PH4. However, since the DMAC 206 does not perform polling processing, it is not necessary to go through the polling circuit 202 and is directly connected to the bus 205.

ポーリング回路202は、CPU201からリクエスト信号REQ、アドレス信号ADDR、アクセス種類信号WRITE及びライトデータ信号WDATAを入力し、CPU201にレディ信号READY及びリードデータ信号RDATAを出力する。周辺回路PH1は、バス205を介して、ポーリング回路202からリクエスト信号REQ、アドレス信号ADDR、アクセス種類信号WRITE及びライトデータWDATAを入力し、ポーリング回路202にレディ信号READY及びリードデータ信号RDATAを出力する。   The polling circuit 202 receives a request signal REQ, an address signal ADDR, an access type signal WRITE, and a write data signal WDATA from the CPU 201, and outputs a ready signal READY and a read data signal RDATA to the CPU 201. The peripheral circuit PH1 inputs the request signal REQ, the address signal ADDR, the access type signal WRITE, and the write data WDATA from the polling circuit 202 via the bus 205, and outputs the ready signal READY and the read data signal RDATA to the polling circuit 202. .

次に、通常のCPU201のポーリング処理を説明する。ポーリング対象としている周辺回路PH1は、CPU201から指示された処理が完了したら、32ビットのステータスレジスタ305の最下位ビットの値を0から1に変更する。CPU201は、32ビットのステータスレジスタ305の値を読み出し、最下位ビットの値を抽出する。最下位ビットが1である場合には、周辺回路PH1の処理が完了しているので、CPU201は、次の処理に移る。最下位ビットが0である場合、周辺回路PH1が、まだ処理を完了していないため、CPU201は、次の処理には移れず、再び周辺回路PH1の処理が完了したかを確認する処理を繰り返す。周辺回路PH1の処理実行に時間がかかり、ステータスレジスタ305の最下位ビットがなかなか1に変化しない場合、CPU201は、何度もステータスレジスタ305の最下位ビットを読み出して確認する処理を繰り返すことになる。本実施形態では、このような繰り返し処理をなくすための処理を説明する。本実施形態では、ステータスレジスタ305の最下位ビットを読み出して得られる値は必ず1であることが保証され、1回目の実行で必ず次の処理に進むことができる。以下、その詳細を説明する。   Next, normal polling processing of the CPU 201 will be described. When the processing instructed by the CPU 201 is completed, the peripheral circuit PH1 to be polled changes the value of the least significant bit of the 32-bit status register 305 from 0 to 1. The CPU 201 reads the value of the 32-bit status register 305 and extracts the value of the least significant bit. When the least significant bit is 1, since the processing of the peripheral circuit PH1 is completed, the CPU 201 proceeds to the next processing. When the least significant bit is 0, since the peripheral circuit PH1 has not yet completed the process, the CPU 201 does not proceed to the next process and repeats the process of confirming whether the process of the peripheral circuit PH1 is completed again. . If the processing of the peripheral circuit PH1 takes time and the least significant bit of the status register 305 does not readily change to 1, the CPU 201 repeats the process of reading and confirming the least significant bit of the status register 305 many times. . In the present embodiment, processing for eliminating such repeated processing will be described. In the present embodiment, it is guaranteed that the value obtained by reading the least significant bit of the status register 305 is always 1, and the next processing can be surely proceeded by the first execution. Details will be described below.

図5はCPU201及びポーリング回路202間の信号を示すタイミングチャートであり、図6はポーリング回路202及びバス205間の信号を示すタイミングチャートであり、図7はバス205及び周辺回路PH1間の信号を示すタイミングチャートである。信号CLKは、クロック信号である。信号LSBは、周辺回路PH1内のステータスレジスタ305内のデータの最下位ビットの信号である。   5 is a timing chart showing signals between the CPU 201 and the polling circuit 202, FIG. 6 is a timing chart showing signals between the polling circuit 202 and the bus 205, and FIG. 7 shows signals between the bus 205 and the peripheral circuit PH1. It is a timing chart which shows. The signal CLK is a clock signal. The signal LSB is a signal of the least significant bit of data in the status register 305 in the peripheral circuit PH1.

CPU201が周辺回路PH1内のステータスレジスタ305の最下位ビットに対して読み出しアクセスする例を説明する。すべての信号は、CPU201、ポーリング回路202、バス205及び周辺回路PH1に共通で供給されるクロック信号CLKの立ち上がりエッジで伝達される。CPU201は、ポーリング回路202に対して、図5の時刻T1において、アクセス要求を行ってもよいことを示す信号READY=1であることを確認し、信号REQ=1とするアクセス要求を出力する。それと同時に、CPU201は、ポーリング回路202に対して、アクセス先アドレスの信号ADDR=A’(ステータスレジスタ305の最下位ビットLSBを示すアドレス)、及びアクセス種類が読み出しアクセスであることを示す信号WRITE=0を出力する。   An example in which the CPU 201 performs read access to the least significant bit of the status register 305 in the peripheral circuit PH1 will be described. All signals are transmitted at the rising edge of the clock signal CLK supplied in common to the CPU 201, polling circuit 202, bus 205 and peripheral circuit PH1. The CPU 201 confirms that the signal READY = 1 indicating that the access request may be made to the polling circuit 202 at time T1 in FIG. 5, and outputs an access request with the signal REQ = 1. At the same time, the CPU 201 notifies the polling circuit 202 of an access destination address signal ADDR = A ′ (an address indicating the least significant bit LSB of the status register 305) and a signal WRITE = indicating that the access type is read access. 0 is output.

ポーリング回路202は、内部のアドレス信号生成部1001(図10)により、CPU201から入力された信号ADDR=A’を図6の信号ADDR=Aに変換してバス205へ出力する。また、ポーリング回路202は、CPU201から入力された信号REQ及び信号WRITEをそのままバス205へ出力する。   The polling circuit 202 converts the signal ADDR = A ′ input from the CPU 201 into the signal ADDR = A in FIG. 6 and outputs it to the bus 205 by the internal address signal generation unit 1001 (FIG. 10). The polling circuit 202 outputs the signal REQ and the signal WRITE input from the CPU 201 to the bus 205 as they are.

バス205は、ポーリング回路202からの信号REQ及びWRITEにより、CPU201から読み出しアクセスの要求が来ていることを知る。そして、バス205は、信号ADDRからアクセス先を判別し、アクセス先の周辺回路PH1に対して、ポーリング回路202からの信号REQ、ADDR、及びWRITEを出力する。周辺回路PH1は、ステータスレジスタ305の最下位ビットLSBの読み出しデータの準備中であることを示す信号READY=0をバス205に出力する。信号READYは、周辺回路PH1からバス205及びポーリング回路202を介してCPU201に出力される。CPU201は、信号READY=0となっていることから、読み出しアクセスがまだ実行中であることを知る。   The bus 205 knows that a read access request is received from the CPU 201 based on the signals REQ and WRITE from the polling circuit 202. Then, the bus 205 determines the access destination from the signal ADDR, and outputs the signals REQ, ADDR, and WRITE from the polling circuit 202 to the peripheral circuit PH1 that is the access destination. The peripheral circuit PH1 outputs to the bus 205 a signal READY = 0 indicating that the read data of the least significant bit LSB of the status register 305 is being prepared. The signal READY is output from the peripheral circuit PH1 to the CPU 201 via the bus 205 and the polling circuit 202. Since the signal READY = 0, the CPU 201 knows that the read access is still being executed.

時刻T3の後、周辺回路PH1は、アドレス信号ADDR=Aで指定されたステータスレジスタ305の値Data(A)の出力準備ができ、信号RDATA=Data(A)を出力し、それと同時に、信号RDATAが有効データであることを示す信号READY=1を出力する。この時、周辺回路PH1は、CPU201から指示されたセンサデータの読み出し処理が完了していないので、ステータスレジスタ305の最下位ビットLSBの値は0である。したがって、信号RDATAの最下位ビットLSBは0である。信号READY及びRDATAは、周辺回路PH1からバス205を介してポーリング回路202に出力される。   After time T3, the peripheral circuit PH1 is ready to output the value Data (A) of the status register 305 designated by the address signal ADDR = A, and outputs the signal RDATA = Data (A). At the same time, the signal RDATA A signal READY = 1 indicating that is valid data is output. At this time, since the peripheral circuit PH1 has not completed the sensor data reading process instructed by the CPU 201, the value of the least significant bit LSB of the status register 305 is 0. Therefore, the least significant bit LSB of the signal RDATA is 0. The signals READY and RDATA are output from the peripheral circuit PH1 to the polling circuit 202 via the bus 205.

時刻T4では、ポーリング回路202は、クロック信号CLKの立ち上がりエッジで、信号READY=1となっていることから、それと同時に、信号RDATA=Data(A)が入力されていることを知る。ポーリング回路202は、32ビットの信号RDATAのうち、CPU201がポーリング対象として確認したい最下位ビットLSBの値を取り出し、この値がCPU201が期待する1であるかを確認する。最下位ビットLSBが0であるので、ポーリング回路202は、信号READY=0をCPU201に対して継続して出力する。   At time T4, the polling circuit 202 knows that the signal RDATA = Data (A) is input at the same time because the signal READY = 1 at the rising edge of the clock signal CLK. The polling circuit 202 extracts the value of the least significant bit LSB that the CPU 201 wants to confirm as a polling target from the 32-bit signal RDATA, and confirms whether this value is 1 expected by the CPU 201. Since the least significant bit LSB is 0, the polling circuit 202 continuously outputs the signal READY = 0 to the CPU 201.

その所定時間後の時刻T6では、ポーリング回路202は、再び、バス205を介して、周辺回路PH1に対して、信号ADDR=A、信号REQ=1、信号WRITE=0を出力する。なお、時刻T6の前の時刻T5では、周辺回路PH1は、CPU201の指示によるセンサデータの読み出し処理が完了し、ステータスレジスタ305の最下位ビットLSBを0から1に変更する。   At time T6 after the predetermined time, the polling circuit 202 again outputs the signal ADDR = A, the signal REQ = 1, and the signal WRITE = 0 to the peripheral circuit PH1 via the bus 205. At time T5 before time T6, the peripheral circuit PH1 completes the sensor data reading process instructed by the CPU 201, and changes the least significant bit LSB of the status register 305 from 0 to 1.

時刻T7の後では、周辺回路PH1は、ステータスレジスタ305の最下位ビットLSBの読み出しデータの準備中であることを示す信号READY=0を、バス205及びポーリング回路202を介して、CPU201に出力する。CPU201は、信号READY=0となっていることから、読み出しアクセスがまだ実行中であることを知る。   After time T7, the peripheral circuit PH1 outputs a signal READY = 0 indicating that the read data of the least significant bit LSB of the status register 305 is being prepared to the CPU 201 via the bus 205 and the polling circuit 202. . Since the signal READY = 0, the CPU 201 knows that the read access is still being executed.

時刻T8の後、周辺回路PH1は、アドレス信号ADDR=Aで指定されたステータスレジスタ305の値Data(A)の出力準備ができ、信号RDATA=Data(A)を出力し、それと同時に、信号RDATAが有効データであることを示す信号READY=1を出力する。この時、周辺回路PH1は、CPU201から指示されたセンサデータの読み出し処理が完了しているので、ステータスレジスタ305の最下位ビットLSBの値は1である。したがって、信号RDATAの最下位ビットLSBは1である。信号READY及びRDATAは、周辺回路PH1からバス205を介してポーリング回路202に出力される。   After time T8, the peripheral circuit PH1 is ready to output the value Data (A) of the status register 305 designated by the address signal ADDR = A, and outputs the signal RDATA = Data (A). At the same time, the signal RDATA A signal READY = 1 indicating that is valid data is output. At this time, since the peripheral circuit PH1 has completed reading processing of the sensor data instructed from the CPU 201, the value of the least significant bit LSB of the status register 305 is 1. Therefore, the least significant bit LSB of the signal RDATA is 1. The signals READY and RDATA are output from the peripheral circuit PH1 to the polling circuit 202 via the bus 205.

時刻T8の後では、ポーリング回路202は、信号READY=1となっていることから、それと同時に、信号RDATA=Data(A)が入力されていることを知る。ポーリング回路202は、32ビットの信号RDATAのうち、CPU201がポーリング対象として確認したい最下位ビットLSBの値を取り出し、この値がCPU201が期待する1であるかを確認する。最下位ビットLSBが1であるので、ポーリング回路202は、CPU201に対して、信号READY=1及び32ビット信号RDATA=1を出力する。CPU201は、信号READY=1となっていることから、読み出しアクセスが終了したことを知る。この時、CPU201が入力する信号RDATAは、必ず1であることが保証されている。CPU201は、ステータスレジスタ305の最下位ビットLSBを読み出して得られる値は必ず1であることが保証され、1回目の実行で必ず次の処理に進むことができる。   After the time T8, the polling circuit 202 knows that the signal RDATA = Data (A) is input at the same time because the signal READY = 1. The polling circuit 202 extracts the value of the least significant bit LSB that the CPU 201 wants to confirm as a polling target from the 32-bit signal RDATA, and confirms whether this value is 1 expected by the CPU 201. Since the least significant bit LSB is 1, the polling circuit 202 outputs a signal READY = 1 and a 32-bit signal RDATA = 1 to the CPU 201. Since the signal READY = 1, the CPU 201 knows that the read access has been completed. At this time, the signal RDATA input by the CPU 201 is guaranteed to be 1. The CPU 201 guarantees that the value obtained by reading the least significant bit LSB of the status register 305 is always 1, and can always proceed to the next processing in the first execution.

以上のように、CPU201は、周辺回路PH1にリードアクセスするために、「1」のリクエスト信号REQ及び周辺回路PH1に対応するアドレス信号ADDRを出力する。周辺回路PH1は、CPU201のリクエスト信号REQに対応する処理が終了していない場合には「0」のレディ信号READYを出力し、CPU201のリクエスト信号REQに対応する処理が終了した場合には「1」のレディ信号REDY及びリードデータ信号RDATAを出力する。なお、信号REQ及びREADYは、それぞれ、「1」が活性化状態を示し、「0」が非活性化状態を示す。   As described above, the CPU 201 outputs the request signal REQ of “1” and the address signal ADDR corresponding to the peripheral circuit PH1 in order to perform read access to the peripheral circuit PH1. The peripheral circuit PH1 outputs a ready signal READY of “0” when the processing corresponding to the request signal REQ of the CPU 201 is not finished, and “1” when the processing corresponding to the request signal REQ of the CPU 201 is finished. The ready signal REDY and the read data signal RDATA are output. In the signals REQ and READY, “1” indicates an activated state and “0” indicates an inactivated state.

ポーリング回路202は、信号RDATAの最下位ビットLSBが1になるまで、周辺回路PH1に対して、信号REQ=1等の出力を繰り返す。ポーリング回路202は、周辺回路PH1に対して、信号REQ=1等を2回出力しているが、CPU201は、信号REQ=1のアクセス要求を出力してから、実際に要求した信号RDATA=Data(A’)の到着までの1回の読み出しアクセスで期待する値の1を受け取っている。したがって、CPU201が信号REQ=1の読み出し及び確認処理を繰り返し実行する必要がないので、電力消費が抑えられ、プログラムを繰り返しRAM203から読み出すことによるRAM203の電力消費が抑えられる。   The polling circuit 202 repeats output of the signal REQ = 1 and the like to the peripheral circuit PH1 until the least significant bit LSB of the signal RDATA becomes 1. The polling circuit 202 outputs the signal REQ = 1 and the like twice to the peripheral circuit PH1, but the CPU 201 outputs the access request of the signal REQ = 1 and then the actually requested signal RDATA = Data. The expected value of 1 is received in one read access until the arrival of (A ′). Therefore, since it is not necessary for the CPU 201 to repeatedly read and confirm the signal REQ = 1, the power consumption can be suppressed, and the power consumption of the RAM 203 caused by repeatedly reading the program from the RAM 203 can be suppressed.

図8は、メモリマップを示す図である。以下、ポーリング回路202が、CPU201から入力するアドレス信号ADDRを基にCPU201が32ビットの信号RDATAのうちの何ビット目の値をポーリング処理のチェック対象としているのか、及び期待する値が0と1のどちらなのかを判別する方法を説明する。各レジスタ301〜305は、32ビットでバイトアドレッシング(1バイト=8ビット単位でアドレスが割り振られている)されているものとする。   FIG. 8 is a diagram showing a memory map. Hereinafter, based on the address signal ADDR input from the CPU 201, the polling circuit 202 determines what bit value of the 32-bit signal RDATA is to be checked in the polling process, and the expected values are 0 and 1. A method for discriminating between the two will be described. Each of the registers 301 to 305 is assumed to be byte addressed with 32 bits (1 byte = address is assigned in units of 8 bits).

第1の周辺回路PH1の各種レジスタ301〜305は、アドレス0x40000000から0x40000FFCにマッピングされている。ここで、0xは、16進数を示す。例えば、ステータスレジスタ305のアドレスは0x40000000、制御レジスタ304は0x40000004、受信データバッファレジスタ303は0x40000008などのようにマッピングされる。通常、CPU201がレジスタ301〜305の値を読み出したり、レジスタ301〜305に値を書き込むときは、これらのアドレスを用いてアクセスする。   The various registers 301 to 305 of the first peripheral circuit PH1 are mapped from addresses 0x40000000 to 0x40000FFC. Here, 0x indicates a hexadecimal number. For example, the address of the status register 305 is mapped to 0x40000000, the control register 304 is mapped to 0x40000004, the reception data buffer register 303 is mapped to 0x40000008, and so on. Normally, when the CPU 201 reads the values of the registers 301 to 305 or writes the values to the registers 301 to 305, access is made using these addresses.

アドレス0x50000000〜0x5001FFFCは、CPU201が第1の周辺回路PH1のレジスタのあるビットが0であることを期待して、レジスタに読み出しアクセスするときのためのアドレスである。アドレス0x60000000〜0x6001FFFCは、CPU201が第1の周辺回路PH1のレジスタのあるビットが1であることを期待して、レジスタに読み出しアクセスするときのためのアドレスである。   Addresses 0x50000000 to 0x5001FFFC are addresses when the CPU 201 reads and accesses a register in the hope that a certain bit of the register of the first peripheral circuit PH1 is 0. Addresses 0x60000000 to 0x6001FFFC are addresses used when the CPU 201 reads and accesses a register in the hope that a certain bit of the register of the first peripheral circuit PH1 is 1.

レジスタ領域801aは、第1の周辺回路PH1の通常レジスタ領域である。レジスタ領域801bは、第1の周辺回路PH1の期待値が0のレジスタ領域である。レジスタ領域801cは、第1の周辺回路PH1の期待値が1のレジスタ領域である。レジスタ領域802aは、第2の周辺回路PH2の通常レジスタ領域である。レジスタ領域802bは、第2の周辺回路PH2の期待値が0のレジスタ領域である。レジスタ領域802cは、第2の周辺回路PH2の期待値が1のレジスタ領域である。レジスタ領域804aは、第4の周辺回路PH4の通常レジスタ領域である。レジスタ領域804bは、第4の周辺回路PH4の期待値が0のレジスタ領域である。レジスタ領域804cは、第4の周辺回路PH4の期待値が1のレジスタ領域である。   The register area 801a is a normal register area of the first peripheral circuit PH1. The register area 801b is a register area where the expected value of the first peripheral circuit PH1 is zero. The register region 801c is a register region in which the expected value of the first peripheral circuit PH1 is 1. The register area 802a is a normal register area of the second peripheral circuit PH2. The register area 802b is a register area where the expected value of the second peripheral circuit PH2 is zero. The register area 802c is a register area in which the expected value of the second peripheral circuit PH2 is 1. The register area 804a is a normal register area of the fourth peripheral circuit PH4. The register area 804b is a register area where the expected value of the fourth peripheral circuit PH4 is zero. The register area 804c is a register area in which the expected value of the fourth peripheral circuit PH4 is 1.

図9は、第1の周辺回路PH1の通常レジスタ領域801a、期待値が0のレジスタ領域801b、及び期待値が1のレジスタ領域801cの例を示す図である。例えば、通常レジスタ領域801aのアドレスが0x40000000で指定されるレジスタの0ビット目(最下位ビット)Aを値が0であることを期待して読み出しアクセスするときは、CPU201は、信号ADDR=0x50000000をポーリング回路202に出力する。また、通常レジスタ領域801aのアドレスが0x40000000で指定されるレジスタの0ビット目(最下位ビット)Aを値が1であることを期待して読み出しアクセスするときは、CPU201は、信号ADDR=0x60000000をポーリング回路202に出力する。   FIG. 9 is a diagram illustrating an example of the normal register area 801a, the register area 801b having an expected value of 0, and the register area 801c having an expected value of 1 of the first peripheral circuit PH1. For example, when reading and accessing the 0th bit (least significant bit) A of the register whose address of the normal register area 801a is specified by 0x40000000 with the expectation that the value is 0, the CPU 201 sets the signal ADDR = 0x50000000. Output to the polling circuit 202. Also, when reading and accessing the 0th bit (least significant bit) A of the register whose address of the normal register area 801a is designated by 0x40000000 in the expectation that the value is 1, the CPU 201 sets the signal ADDR = 0x60000000. Output to the polling circuit 202.

通常レジスタ領域801aのアドレスが0x40000000で指定されるレジスタの1ビット目Bを値が0であることを期待して読み出しアクセスするときは、CPU201は、信号ADDR=0x50000004をポーリング回路202に出力する。また、通常レジスタ領域801aのアドレスが0x40000000で指定されるレジスタの1ビット目Bを値が1であることを期待して読み出しアクセスするときは、CPU201は、信号ADDR=0x60000004をポーリング回路202に出力する。   The CPU 201 outputs the signal ADDR = 0x50000004 to the polling circuit 202 when reading and accessing the first bit B of the register designated by the address 0x40000000 in the normal register area 801a with the expectation that the value is 0. Further, when reading and accessing the first bit B of the register designated by the address 0x40000000 in the normal register area 801a in the expectation that the value is 1, the CPU 201 outputs the signal ADDR = 0x60000004 to the polling circuit 202. To do.

通常レジスタ領域801aのアドレスが0x40000FFCで指定されるレジスタの31ビット目(最上位ビット)Cを値が0であることを期待して読み出しアクセスするときは、CPU201は、信号ADDR=0x5001FFFCをポーリング回路202に出力する。また、通常レジスタ領域801aのアドレスが0x40000FFCで指定されるレジスタの31ビット目(最上位ビット)Cを値が1であることを期待して読み出しアクセスするときは、CPU201は、信号ADDR=0x6001FFFCをポーリング回路202に出力する。   When the CPU 201 reads and accesses the 31st bit (the most significant bit) C of the register designated by the address 0x40000FFC in the normal register area 801a with the expectation that the value is 0, the CPU 201 polls the signal ADDR = 0x5001FFFC. To 202. In addition, when reading and accessing the 31st bit (most significant bit) C of the register whose address of the normal register area 801a is specified by 0x40000FFC with the expectation that the value is 1, the CPU 201 outputs the signal ADDR = 0x6001FFFC. Output to the polling circuit 202.

ポーリング処理でアクセスしたいレジスタ301〜305の通常レジスタ領域801aのアドレスをAddr_n、ビット位置をBITとすると、このビットが0であることを期待して読み出しアクセスするときに、CPU201が出力するアドレス信号ADDRは、次式で表される。   When the address of the normal register area 801a of the registers 301 to 305 to be accessed by the polling process is Addr_n and the bit position is BIT, the address signal ADDR output by the CPU 201 when reading access is performed with the expectation that this bit is 0. Is expressed by the following equation.

ADDR=0x50000000+(Addr_n−0x40000000)×32×4+BIT×4   ADDR = 0x50000000 + (Addr_n-0x40000000) × 32 × 4 + BIT × 4

同様に、ポーリング処理でアクセスしたいレジスタ301〜305の通常レジスタ領域801aのアドレスをAddr_n、ビット位置をBITとすると、このビットが1であることを期待して読み出しアクセスするときに、CPU201が出力するアドレス信号ADDRは、次式で表される。   Similarly, assuming that the address of the normal register area 801a of the registers 301 to 305 to be accessed by polling processing is Addr_n and the bit position is BIT, the CPU 201 outputs when reading access with the expectation that this bit is 1. The address signal ADDR is expressed by the following equation.

ADDR=0x60000000+(Addr_n−0x40000000)×32×4+BIT×4   ADDR = 0x60000000 + (Addr_n-0x40000000) × 32 × 4 + BIT × 4

図10は、ポーリング回路202の構成例を示す図である。ポーリング回路202は、アドレス信号生成部1001、レディ(READY)信号生成部1002、リードデータ(RDATA)信号生成部1003及びリクエスト(REQ)信号生成部1004を有する。   FIG. 10 is a diagram illustrating a configuration example of the polling circuit 202. The polling circuit 202 includes an address signal generation unit 1001, a ready (READY) signal generation unit 1002, a read data (RDATA) signal generation unit 1003, and a request (REQ) signal generation unit 1004.

図11は、図10のアドレス信号生成部1001の構成例を示す図である。アドレス信号生成部1001は、アドレス比較部1101、アドレス変換部1102、アドレス保持部1103及びセレクタ1104を有する。アドレス信号生成部1001は、CPU201からの信号ADDRを変換し、変換した信号ADDRをバス205へ出力する。アドレス比較部1101は、CPU201から入力される32ビットの信号ADDRのうち、上位4ビットが0x5であれば、期待値0のレジスタ領域801bのアクセスと判断し、上位4ビットが0x6であれば、期待値1のレジスタ領域801cのアクセスと判断する。また、アドレス比較部1101は、上記の上位4ビットがそれ以外の値である場合、通常レジスタ領域801aへのアクセス、RAM203へのアクセスなど、ポーリング処理以外のアクセスと判断する。   FIG. 11 is a diagram illustrating a configuration example of the address signal generation unit 1001 of FIG. The address signal generation unit 1001 includes an address comparison unit 1101, an address conversion unit 1102, an address holding unit 1103, and a selector 1104. The address signal generation unit 1001 converts the signal ADDR from the CPU 201 and outputs the converted signal ADDR to the bus 205. If the upper 4 bits of the 32-bit signal ADDR input from the CPU 201 are 0x5, the address comparison unit 1101 determines that the register area 801b of the expected value 0 is accessed, and if the upper 4 bits are 0x6, It is determined that the access is to the register area 801c with the expected value 1. Further, when the upper 4 bits are other values, the address comparison unit 1101 determines that the access is other than the polling process, such as access to the normal register area 801a and access to the RAM 203.

アドレス比較部1101は、信号ADDRの上位4ビットが0x5又は0x6の場合、CPU201からポーリングのためのアクセス要求が来たことを伝えるため、「1」のポーリングアクセス信号を出力し、それ以外の場合、「0」のポーリングアクセス信号を出力する。また、アドレス比較部1101は、期待値信号として、信号ADDRの上位4ビットが0x5の場合は0を出力し、信号ADDRの上位4ビットが0x6の場合は1を出力する。また、アドレス比較部1101は、信号ADDRの下位7ビットを4で割った値を基にポーリング対象のビット位置を算出し、ビット位置信号を出力する。   When the upper 4 bits of the signal ADDR are 0x5 or 0x6, the address comparison unit 1101 outputs a polling access signal of “1” to notify that an access request for polling has been received from the CPU 201, and otherwise , "0" polling access signal is output. Further, the address comparison unit 1101 outputs 0 as the expected value signal when the upper 4 bits of the signal ADDR are 0x5, and outputs 1 when the upper 4 bits of the signal ADDR is 0x6. Further, the address comparison unit 1101 calculates a bit position to be polled based on a value obtained by dividing the lower 7 bits of the signal ADDR by 4, and outputs a bit position signal.

アドレス変換部1102は、ポーリングアクセス信号が0の場合は、CPU201からの信号ADDRをそのままアドレス保持部1103及びセレクタ1104に出力する。また、アドレス変換部1102は、ポーリングアクセス信号が1の場合は、以下の手順でアドレスAddr_nを演算し、演算したアドレスAddr_nをアドレス保持部1103及びセレクタ1104に出力する。   When the polling access signal is 0, the address conversion unit 1102 outputs the signal ADDR from the CPU 201 to the address holding unit 1103 and the selector 1104 as it is. Also, when the polling access signal is 1, the address conversion unit 1102 calculates the address Addr_n according to the following procedure, and outputs the calculated address Addr_n to the address holding unit 1103 and the selector 1104.

(1)アドレス変換部1102は、期待値が0の場合、CPU201から入力される信号ADDRから0x50000000を減算し、期待値が1の場合、CPU201から入力される信号ADDRから0x60000000を減算する。   (1) The address conversion unit 1102 subtracts 0x50000000 from the signal ADDR input from the CPU 201 when the expected value is 0, and subtracts 0x60000000 from the signal ADDR input from the CPU 201 when the expected value is 1.

(2)アドレス変換部1102は、(1)で求めた値を7ビット論理右シフトする。   (2) The address conversion unit 1102 shifts the value obtained in (1) to the right by 7 bits.

(3)アドレス変換部1102は、(2)で求めた値に0x40000000を加算する。   (3) The address conversion unit 1102 adds 0x40000000 to the value obtained in (2).

上記の手順により、CPU201がポーリング処理で確認したいビットを含むレジスタの通常レジスタ領域801aのアドレスAddr_nを復元できる。アドレス変換部1102は、アドレスAddr_nをアドレス保持部1103及びセレクタ1104に出力する。   According to the above procedure, the address Addr_n of the normal register area 801a of the register including the bit that the CPU 201 wants to confirm by the polling process can be restored. The address conversion unit 1102 outputs the address Addr_n to the address holding unit 1103 and the selector 1104.

アドレス保持部1103は、ポーリングアクセス信号が1の場合は、アドレス変換部1102が生成したアドレスAddr_nを保持する。これにより、周辺回路PH1から読み出したステータスレジスタ305の値が期待する値でないときにポーリング回路202が、ステータスレジスタ305の読み出しアクセスを繰り返し行うことが可能になる。   The address holding unit 1103 holds the address Addr_n generated by the address conversion unit 1102 when the polling access signal is 1. As a result, when the value of the status register 305 read from the peripheral circuit PH1 is not an expected value, the polling circuit 202 can repeatedly perform read access to the status register 305.

セレクタ1104は、ポーリングアクセス信号が0の場合は、アドレス変換部1102が出力する信号ADDRをそのままバス205へ出力する。この際、アドレス変換部1102は、アドレス変換を行わず、CPU201からの信号ADDRをそのまま出力している。また、セレクタ1104は、ポーリングアクセス信号が1の場合は、アドレス保持部1103が出力するアドレスAddr_nをバス205へ出力する。   When the polling access signal is 0, the selector 1104 outputs the signal ADDR output from the address conversion unit 1102 to the bus 205 as it is. At this time, the address conversion unit 1102 does not perform address conversion, and outputs the signal ADDR from the CPU 201 as it is. When the polling access signal is 1, the selector 1104 outputs the address Addr_n output from the address holding unit 1103 to the bus 205.

以上のように、アドレス信号生成部1001は、CPU201から入力したアドレス信号ADDRが期待値0及び期待値1のレジスタ領域(第1のアドレス範囲)801b及び801cのアドレスである場合には、CPU201から入力したアドレス信号ADDRを通常レジスタ領域(第2のアドレス範囲)801aのアドレスに変換して、バス205を介して周辺回路PH1にアドレス信号ADDRを出力する。また、アドレス信号生成部1001は、CPU201から入力したアドレス信号ADDRが期待値0及び期待値1のレジスタ領域(第1のアドレス範囲)801b及び801cのアドレスでない場合には、CPU201から入力したアドレス信号ADDRと同じアドレス信号ADDRを、バス205を介して周辺回路PH1に出力する。アドレス保持部1103は、CPU201から入力したアドレス信号ADDRを通常レジスタ領域(第2のアドレス範囲)801aのアドレスに変換したアドレスを保持する。   As described above, when the address signal ADDR input from the CPU 201 is the address of the register areas (first address range) 801b and 801c having the expected value 0 and the expected value 1, the address signal generating unit 1001 The input address signal ADDR is converted into an address in the normal register area (second address range) 801a, and the address signal ADDR is output to the peripheral circuit PH1 via the bus 205. Also, the address signal generation unit 1001 receives the address signal input from the CPU 201 when the address signal ADDR input from the CPU 201 is not the address of the register areas (first address range) 801b and 801c with the expected value 0 and the expected value 1. The same address signal ADDR as ADDR is output to the peripheral circuit PH1 via the bus 205. The address holding unit 1103 holds an address obtained by converting the address signal ADDR input from the CPU 201 into the address of the normal register area (second address range) 801a.

図12は、図10のREADY信号生成部1002の構成例を示す図である。READY信号生成部1002は、セレクタR1,R2、ビット位置保持部1201、期待値保持部1202、期待値比較部1203、及びポーリング中断判定部1204を有する。READY信号生成部1002は、CPU201へ出力する信号READYを生成する。   FIG. 12 is a diagram illustrating a configuration example of the READY signal generation unit 1002 of FIG. The READY signal generation unit 1002 includes selectors R1 and R2, a bit position holding unit 1201, an expected value holding unit 1202, an expected value comparison unit 1203, and a polling interruption determination unit 1204. The READY signal generation unit 1002 generates a signal READY that is output to the CPU 201.

ビット位置保持部1201は、ポーリング処理の間、図11のアドレス比較部1101が出力するビット位置信号を保持し、セレクタR1に出力する。セレクタR1は、バス205から入力される32ビットの信号RDATAのうち、ビット位置保持部1201が出力するビット位置信号が示すビット位置の値を選択し、ビット信号として出力する。   The bit position holding unit 1201 holds the bit position signal output from the address comparison unit 1101 in FIG. 11 during the polling process, and outputs the bit position signal to the selector R1. The selector R1 selects the value of the bit position indicated by the bit position signal output from the bit position holding unit 1201 from the 32-bit signal RDATA input from the bus 205, and outputs it as a bit signal.

期待値保持部1202は、ポーリング処理の間、図11のアドレス比較部1101が出力する期待値信号を保持し、期待値比較部1203へ出力する。期待値比較部1203は、セレクタR1から入力されるビット信号と期待値保持部1202から入力される期待値信号を比較し、両者が一致した場合には「1」の期待値判定信号を出力し、両者が不一致の場合には「0」の期待値判定信号を出力する。ポーリング中断判定部1204は、CPU201へ入力される割り込み信号IRを入力し、CPU201に対して割り込みが発生した場合は、「1」のポーリング中断信号をセレクタR2に出力する。   The expected value holding unit 1202 holds the expected value signal output from the address comparing unit 1101 in FIG. 11 during the polling process, and outputs it to the expected value comparing unit 1203. The expected value comparison unit 1203 compares the bit signal input from the selector R1 with the expected value signal input from the expected value holding unit 1202, and outputs an expected value determination signal of “1” if they match. When the two do not match, an expected value determination signal of “0” is output. The polling interruption determination unit 1204 receives an interrupt signal IR input to the CPU 201, and outputs an “1” polling interruption signal to the selector R2 when an interrupt occurs to the CPU 201.

セレクタR2は、図11のアドレス比較部1101が出力するポーリングアクセス信号、期待値比較部1203が出力する期待値判定信号、ポーリング中断判定部1204が出力するポーリング中断信号に応じて、バス205からの信号READY又は0をCPU201に出力する。セレクタR2が出力する信号は、ポーリング回路202からCPU201へ出力される信号READYである。   The selector R2 receives the polling access signal output from the address comparison unit 1101 in FIG. 11, the expected value determination signal output from the expected value comparison unit 1203, and the polling interruption signal output from the polling interruption determination unit 1204 from the bus 205. A signal READY or 0 is output to the CPU 201. The signal output from the selector R2 is the signal READY output from the polling circuit 202 to the CPU 201.

図13は、セレクタR2の動作を説明するための図である。セレクタR2は、ポーリングアクセス信号、期待値判定信号、及びポーリング中断信号に応じて、信号を出力する。セレクタR2は、ポーリング中断信号が1の場合、ポーリングアクセス信号、期待値判定信号の値にかかわらず、バス205からの信号READYを選択して出力する。その理由は後述する。また、セレクタR2は、ポーリング中断信号が0の場合、以下の動作を行う。   FIG. 13 is a diagram for explaining the operation of the selector R2. The selector R2 outputs a signal in response to the polling access signal, the expected value determination signal, and the polling interruption signal. When the polling interruption signal is 1, the selector R2 selects and outputs the signal READY from the bus 205 regardless of the values of the polling access signal and the expected value determination signal. The reason will be described later. Further, when the polling interruption signal is 0, the selector R2 performs the following operation.

ポーリングアクセス信号が0の場合、CPU201はポーリングのためのアクセスでない通常のアクセスを行っているため、セレクタR2は、バス205からの信号READYをそのままCPU201に出力する。   When the polling access signal is 0, the CPU 201 performs normal access that is not access for polling, so the selector R2 outputs the signal READY from the bus 205 to the CPU 201 as it is.

ポーリングアクセス信号が1であり、期待値判定信号が1の場合、CPU201が期待する値が得られているので、セレクタR2は、バス205からの信号READYをそのままCPU201に出力する。この際、ポーリング回路202がバス205を介して周辺回路PH1のステータスレジスタ305の値を読み出す処理は完了しているので、バス205からの信号READYは1となっている。   When the polling access signal is 1 and the expected value determination signal is 1, the value expected by the CPU 201 is obtained, so the selector R2 outputs the signal READY from the bus 205 to the CPU 201 as it is. At this time, since the process in which the polling circuit 202 reads the value of the status register 305 of the peripheral circuit PH1 through the bus 205 has been completed, the signal READY from the bus 205 is 1.

ポーリングアクセス信号が1であり、期待値判定信号が0の場合、CPU201が期待する値が得られておらず、CPU201には読み出しアクセスが継続しているように見せるため、セレクタR2は、「0」の信号READYをCPU201に出力する。   When the polling access signal is 1 and the expected value determination signal is 0, the value expected by the CPU 201 is not obtained, and it appears to the CPU 201 that read access is continuing. "READY" is output to the CPU 201.

次に、ポーリング中断信号が1になる条件と、そのときのポーリング回路202の動作を説明する。CPU201がポーリング処理をしているとき、もしポーリング対象のステータスレジスタ305の値が長時間にわたってCPUが期待する値に変化しなかった場合、ポーリング回路202からCPU201へ出力する信号READYは長時間にわたって0のままになる。CPU201から見ると、読み出しアクセスが長時間保留になっているように見える。CPU201がバスアクセスの途中に「1」の割り込み信号IRが入力されたときは、バスアクセスの完了を待ってから割り込み処理に移行する設計であった場合、ポーリング回路202が期待値一致を確認するまで、CPU201にとっては、信号READYが0であり、バスアクセスが完了していないように見える。そのため、CPU201は、割り込み処理に移行するまでに長い間待たされることになる。そこで、CPU201に「1」の割り込み信号IRが入力された場合は、CPU201は、すみやかに現在実行しているプログラムを中断し、割り込み処理プログラムに移行する。   Next, the condition that the polling interruption signal becomes 1 and the operation of the polling circuit 202 at that time will be described. When the CPU 201 is performing the polling process, if the value of the status register 305 to be polled does not change to the value expected by the CPU for a long time, the signal READY output from the polling circuit 202 to the CPU 201 is 0 for a long time. Will remain. When viewed from the CPU 201, it appears that the read access has been suspended for a long time. When the CPU 201 receives an interrupt signal IR of “1” during the bus access, the polling circuit 202 confirms the expected value match if the CPU 201 is designed to wait for the completion of the bus access before proceeding to the interrupt processing. Until then, it appears to the CPU 201 that the signal READY is 0 and the bus access is not completed. Therefore, the CPU 201 waits for a long time before shifting to the interrupt process. Therefore, when the interrupt signal IR of “1” is input to the CPU 201, the CPU 201 immediately interrupts the program currently being executed and shifts to the interrupt processing program.

本実施形態では、割り込み処理に移行するまでに長時間の待ち時間が生ずる事態を防ぐために、ポーリング中断判定部1204は、CPU201へ入力される割り込み信号IRを入力し、CPU201に対して割り込みが発生した場合は、ポーリング処理を中断するために「1」のポーリング中断信号を出力する。セレクタR2は、CPU201から見たバスアクセスを完了させるために、バス205からの信号READYをそのままCPU201へ出力する。   In the present embodiment, in order to prevent a situation in which a long waiting time is caused before the transition to the interrupt processing, the polling interruption determination unit 1204 receives the interrupt signal IR input to the CPU 201 and an interrupt is generated to the CPU 201. If so, a polling interruption signal of “1” is output to interrupt the polling process. The selector R2 outputs the signal READY from the bus 205 to the CPU 201 as it is in order to complete the bus access viewed from the CPU 201.

このとき、CPU201へ出力される信号RDATAは、ポーリング回路202がもっとも最近読み出したステータスレジスタ305の指定されたビットの値とするため、セレクタR1が出力するビット信号を保持するビット信号保持部1401(図14)を設ける。   At this time, since the signal RDATA output to the CPU 201 is the value of the designated bit of the status register 305 most recently read by the polling circuit 202, the bit signal holding unit 1401 (holding the bit signal output by the selector R1) FIG. 14) is provided.

以上のように、READY信号生成部1002は、CPU201から入力したアドレス信号ADDRが期待値0及び期待値1のレジスタ領域(第1のアドレス範囲)801b及び801cのアドレスであり、バス205を介して周辺回路PH1から入力したリードデータ信号RDATAがCPU201から入力したアドレス信号ADDRに対応する期待値と同じである場合には、バス205を介して周辺回路PH1から入力したレディ信号READYと同じレディ信号READYをCPU201に出力し、その他の場合には「0」のレディ信号READYをCPU201に出力する。   As described above, the READY signal generation unit 1002 is the address of the register areas (first address range) 801b and 801c in which the address signal ADDR input from the CPU 201 has the expected value 0 and the expected value 1, and is transmitted via the bus 205. When the read data signal RDATA input from the peripheral circuit PH1 is the same as the expected value corresponding to the address signal ADDR input from the CPU 201, the ready signal READY is the same as the ready signal READY input from the peripheral circuit PH1 via the bus 205. Is output to the CPU 201, and in other cases, a ready signal READY of “0” is output to the CPU 201.

具体的には、READY信号生成部1002は、CPU201から入力したアドレス信号ADDRが期待値0のレジスタ領域(第3のアドレス範囲)801bのアドレスであり、周辺回路PH1から入力したリードデータ信号RDATAのうちのCPU201から入力したアドレス信号ADDRに対応するビットの値が0である場合には、周辺回路PH1から入力したレディ信号READYと同じレディ信号READYをCPU201に出力する。また、READY信号生成部1002は、CPU201から入力したアドレス信号ADDRが期待値1のレジスタ領域(第4のアドレス範囲)801cのアドレスであり、周辺回路PH1から入力したリードデータ信号RDATAのうちのCPU201から入力したアドレス信号ADDRに対応するビットの値が1である場合には、周辺回路PH1から入力したレディ信号READYと同じレディ信号READYをCPU201に出力する。   Specifically, the READY signal generation unit 1002 is the address of the register area (third address range) 801b in which the address signal ADDR input from the CPU 201 is an expected value 0, and the read data signal RDATA input from the peripheral circuit PH1. When the value of the bit corresponding to the address signal ADDR input from the CPU 201 is 0, the ready signal READY that is the same as the ready signal READY input from the peripheral circuit PH1 is output to the CPU 201. Further, the READY signal generation unit 1002 is an address of the register area (fourth address range) 801c in which the address signal ADDR input from the CPU 201 is an expected value 1, and the CPU 201 of the read data signal RDATA input from the peripheral circuit PH1. When the value of the bit corresponding to the address signal ADDR input from 1 is 1, the ready signal READY that is the same as the ready signal READY input from the peripheral circuit PH1 is output to the CPU 201.

また、READY信号生成部1002は、CPU201に入力される割り込み信号IRが「1」(活性化状態)になった場合には、バス205を介して周辺回路PH1から入力したレディ信号READYと同じレディ信号READYをCPU201に出力する。   Further, when the interrupt signal IR input to the CPU 201 becomes “1” (activated state), the READY signal generation unit 1002 has the same ready signal as the ready signal READY input from the peripheral circuit PH1 via the bus 205. The signal READY is output to the CPU 201.

図14は、図10のRDATA信号生成部1003の構成例を示す図である。RDATA信号生成部1003は、ポーリング回路202からCPU201へ出力する信号RDATAを生成する。RDATA信号生成部1003は、ビット信号保持部1401及びセレクタ1402を有する。ビット信号保持部1401は、図9のレジスタ領域801b及び801cのように、図12のREADY信号生成部1002からのビット信号を最下位ビットとして入力し、上位31ビット分を0で埋め、32ビット信号を生成し、セレクタ1402に出力する。セレクタ1402は、ポーリングアクセス信号が「1」の場合、ビット信号保持部1401が出力する32ビット信号を、信号RDATAとしてCPU201に出力する。また、ポーリングアクセス信号が0の場合、CPU201はポーリング処理のためではないバスアクセスを行っていることになるので、セレクタ1402は、バス205からの信号RDATAをそのままCPU201へ出力する。   FIG. 14 is a diagram illustrating a configuration example of the RDATA signal generation unit 1003 of FIG. The RDATA signal generation unit 1003 generates a signal RDATA output from the polling circuit 202 to the CPU 201. The RDATA signal generation unit 1003 includes a bit signal holding unit 1401 and a selector 1402. The bit signal holding unit 1401 inputs the bit signal from the READY signal generation unit 1002 in FIG. 12 as the least significant bit, fills the upper 31 bits with 0, as in the register areas 801b and 801c in FIG. A signal is generated and output to the selector 1402. When the polling access signal is “1”, the selector 1402 outputs the 32-bit signal output from the bit signal holding unit 1401 to the CPU 201 as the signal RDATA. When the polling access signal is 0, the CPU 201 is performing bus access not for polling processing, so the selector 1402 outputs the signal RDATA from the bus 205 to the CPU 201 as it is.

以上のように、RDATA信号生成部1003は、CPU201から入力したアドレス信号ADDRが期待値0及び期待値1のレジスタ領域(第1のアドレス範囲)801b及び801cのアドレスである場合には、バス205を介して周辺回路PH1から入力したリードデータ信号RDATAのうちのCPU201から入力したアドレス信号ADDRに対応するビットの信号をリードデータ信号RDATAとしてCPU201に出力する。ビット信号保持部1401は、バス205を介して周辺回路PH1から入力したリードデータ信号RDATAのうちのCPU201から入力したアドレス信号ADDRに対応するビットの信号を保持する。   As described above, when the address signal ADDR input from the CPU 201 is the address of the register areas (first address range) 801b and 801c with the expected value 0 and the expected value 1, the RDATA signal generation unit 1003 uses the bus 205 Of the read data signal RDATA input from the peripheral circuit PH1 via the CPU, a bit signal corresponding to the address signal ADDR input from the CPU 201 is output to the CPU 201 as the read data signal RDATA. The bit signal holding unit 1401 holds a bit signal corresponding to the address signal ADDR input from the CPU 201 in the read data signal RDATA input from the peripheral circuit PH1 via the bus 205.

具体的には、RDATA信号生成部1003は、バス205を介して周辺回路PH1から入力したリードデータ信号RDATAのうちのCPU201から入力したアドレス信号ADDRに対応するビットの信号を下位ビットとし、上位ビットを0で埋めた信号をリードデータ信号RDATAとしてCPU201に出力する。   Specifically, the RDATA signal generation unit 1003 uses a bit signal corresponding to the address signal ADDR input from the CPU 201 in the read data signal RDATA input from the peripheral circuit PH1 via the bus 205 as the lower bit, Is output to the CPU 201 as a read data signal RDATA.

図15は、図10のREQ信号生成部1004の構成例を示す図である。REQ信号生成部1004は、ポーリング回路202からバス205へ出力する信号REQを生成する。REQ信号生成部1004は、セレクタ1501及び1502を有する。ポーリングアクセス信号が0の場合、CPU201はポーリング処理のためのアクセスではない通常のアクセスを行っているので、セレクタ1501は、CPU201からの信号REQをそのままバス205への信号REQとして出力する。ポーリングアクセス信号が1の場合、セレクタ1501は、以下の動作により、バス205への信号REQを生成する。   FIG. 15 is a diagram illustrating a configuration example of the REQ signal generation unit 1004 of FIG. The REQ signal generation unit 1004 generates a signal REQ that is output from the polling circuit 202 to the bus 205. The REQ signal generation unit 1004 includes selectors 1501 and 1502. When the polling access signal is 0, the CPU 201 is performing a normal access that is not an access for the polling process. Therefore, the selector 1501 outputs the signal REQ from the CPU 201 as it is to the bus 205 as a signal REQ. When the polling access signal is 1, the selector 1501 generates a signal REQ to the bus 205 by the following operation.

セレクタ1501は、ポーリングアクセス信号が1の場合、周辺回路PH1のステータスレジスタ305の1回目のアクセスのために、「1」の信号REQをバス205に出力する。   When the polling access signal is 1, the selector 1501 outputs a signal REQ of “1” to the bus 205 for the first access of the status register 305 of the peripheral circuit PH1.

読み出した周辺回路PH1のステータスレジスタ305の値が期待値と一致せず、2回目以降のステータスレジスタ305の読み出しアクセスを行うための信号REQの出力は、セレクタ1502がアクセスタイミング信号を出力したときに行う。セレクタ1502は、図11のアドレス保持部1103が出力する通常レジスタアドレスを基に、周辺回路PH1〜PH4が出力するイネーブル信号ENS1〜ENS4のうちのいずれかを選択し、アクセスタイミング信号としてセレクタ1501に出力する。例えば、周辺回路PH1〜PH4の通常レジスタ領域のアドレスが図8の構成の時、通常レジスタアドレスが0x40000000〜0x40000FFCの範囲の場合、セレクタ1502は、周辺回路PH1のイネーブル信号ENS1を選択し、アクセスタイミング信号として出力する。   The read value of the status register 305 of the peripheral circuit PH1 does not match the expected value, and the output of the signal REQ for performing read access to the status register 305 for the second and subsequent times is performed when the selector 1502 outputs the access timing signal. Do. The selector 1502 selects any one of the enable signals ENS1 to ENS4 output from the peripheral circuits PH1 to PH4 based on the normal register address output from the address holding unit 1103 in FIG. 11, and supplies the selector 1501 as an access timing signal. Output. For example, when the addresses of the normal register areas of the peripheral circuits PH1 to PH4 have the configuration shown in FIG. 8, when the normal register address is in the range of 0x40000000 to 0x40000FFC, the selector 1502 selects the enable signal ENS1 of the peripheral circuit PH1, and the access timing Output as a signal.

図16は、各周辺回路PH1〜PH4内のイネーブル信号生成部の構成例を示す図である。32個のD型フリップフロップFF1〜FF32は、図3のステータスレジスタ305に対応し、32ビット値を記憶する。論理和回路306は、図3の論理和回路306に対応する。イネーブル信号生成部は、イネーブル信号ENSを生成する。第1の周辺回路PH1内のイネーブル信号生成部が出力するイネーブル信号ENSは、図15の第1の周辺回路PH1が出力するイネーブル信号ENS1に対応する。第2の周辺回路PH2内のイネーブル信号生成部が出力するイネーブル信号ENSは、図15の第2の周辺回路PH2が出力するイネーブル信号ENS2に対応する。第3の周辺回路PH3内のイネーブル信号生成部が出力するイネーブル信号ENSは、図15の第3の周辺回路PH3が出力するイネーブル信号ENS3に対応する。第4の周辺回路PH4内のイネーブル信号生成部が出力するイネーブル信号ENSは、図15の第4の周辺回路PH4が出力するイネーブル信号ENS4に対応する。   FIG. 16 is a diagram illustrating a configuration example of the enable signal generation unit in each of the peripheral circuits PH1 to PH4. The 32 D-type flip-flops FF1 to FF32 correspond to the status register 305 in FIG. 3 and store 32-bit values. The OR circuit 306 corresponds to the OR circuit 306 in FIG. The enable signal generation unit generates an enable signal ENS. The enable signal ENS output from the enable signal generator in the first peripheral circuit PH1 corresponds to the enable signal ENS1 output from the first peripheral circuit PH1 in FIG. The enable signal ENS output from the enable signal generation unit in the second peripheral circuit PH2 corresponds to the enable signal ENS2 output from the second peripheral circuit PH2 in FIG. The enable signal ENS output from the enable signal generator in the third peripheral circuit PH3 corresponds to the enable signal ENS3 output from the third peripheral circuit PH3 in FIG. The enable signal ENS output from the enable signal generation unit in the fourth peripheral circuit PH4 corresponds to the enable signal ENS4 output from the fourth peripheral circuit PH4 in FIG.

ステータスレジスタ305は、イネーブル端子EN付きのD型フリップフロップFF1〜FF32を有する。イネーブル端子EN付きのD型フリップフロップFF1〜FF32は、それぞれ、1ビットの記憶素子であり、イネーブル端子ENの信号が1の時に入力端子Dの値を内部に取り込み、保持し、保持した値を出力端子Qから出力する。したがって、各D型フリップフロップFF1〜FF32のイネーブル端子ENに入力される信号が1のとき、各D型フリップフロップFF1〜FF32の値が書き換わる可能性がある。なお、イネーブル端子ENに1が入力されても、入力端子Dへ入力される値がもともと各D型フリップフロップFF1〜FF32が保持している値と同じ場合は、結果的に、各D型フリップフロップFF1〜FF32の値は書き換わらず、出力端子Qから同じ値が出力され続ける。論理和回路306は、D型フリップフロップ(ステータスレジスタ)FF1〜FF32のイネーブル端子ENの信号の論理和をイネーブル信号ENSとして出力する。イネーブル信号ENSは、図15のイネーブル信号ENS1〜ENS4に対応する。   The status register 305 has D-type flip-flops FF1 to FF32 with an enable terminal EN. Each of the D-type flip-flops FF1 to FF32 with the enable terminal EN is a 1-bit storage element. When the signal of the enable terminal EN is 1, the value of the input terminal D is taken in and held therein, and the held value is stored. Output from the output terminal Q. Therefore, when the signal input to the enable terminal EN of each D-type flip-flop FF1 to FF32 is 1, the value of each D-type flip-flop FF1 to FF32 may be rewritten. Even if 1 is input to the enable terminal EN, if the value input to the input terminal D is the same as the value originally held by each D-type flip-flop FF1 to FF32, as a result, each D-type flip-flop The values of FF1 to FF32 are not rewritten and the same value is continuously output from the output terminal Q. The logical sum circuit 306 outputs a logical sum of signals from the enable terminals EN of the D flip-flops (status registers) FF1 to FF32 as an enable signal ENS. The enable signal ENS corresponds to the enable signals ENS1 to ENS4 in FIG.

図15において、セレクタ1502は、通常レジスタアドレスに応じて、イネーブル信号ENS1〜ENS4のいずれかを選択し、アクセスタイミング信号としてセレクタ1501に出力する。セレクタ1501は、ポーリングアクセス信号が1であり、アクセスタイミング信号が1の場合、ポーリング対象の周辺回路PH1〜PH4のステータスレジスタ305の値が変化した可能性があると判断し、2回目以降の読み出しアクセスのための「1」の信号REQをバス205へ出力する。また、セレクタ1501は、ポーリングアクセス信号が1であり、アクセスタイミング信号が0の場合、ポーリング対象の周辺回路PH1〜PH4のステータスレジスタ305の値が変化した可能性がないと判断し、「0」の信号REQをバス205へ出力する。ステータスレジスタ305の値が変化した可能性がないときは、バス205へ「0」の信号REQを出力するので、無駄にステータスレジスタ305の読み出しアクセスを行うことを防ぐことができる。これにより、ポーリング回路202及びバス205の無駄な電力消費を抑え、DMAC206などの他にバス205を使用するモジュールとのバスアクセス競合を防ぐことができる。   In FIG. 15, the selector 1502 selects one of the enable signals ENS1 to ENS4 according to the normal register address, and outputs it to the selector 1501 as an access timing signal. When the polling access signal is 1 and the access timing signal is 1, the selector 1501 determines that there is a possibility that the value of the status register 305 of the peripheral circuits PH1 to PH4 to be polled has changed. A “1” signal REQ for access is output to the bus 205. Further, when the polling access signal is 1 and the access timing signal is 0, the selector 1501 determines that there is no possibility that the value of the status register 305 of the peripheral circuits PH1 to PH4 to be polled has changed, and “0”. The signal REQ is output to the bus 205. When there is no possibility that the value of the status register 305 has changed, the signal REQ of “0” is output to the bus 205, so that it is possible to prevent the status register 305 from being read-accessed uselessly. As a result, wasteful power consumption of the polling circuit 202 and the bus 205 can be suppressed, and a bus access conflict with a module using the bus 205 in addition to the DMAC 206 can be prevented.

以上のように、周辺回路PH1〜PH4は、それぞれ、CPU201のリクエスト信号REQに応じて、イネーブル端子ENを有するステータスレジスタ305からリードデータを読み出す。REQ信号生成部1004は、例えば、周辺回路PH1のステータスレジスタ305のイネーブル端子ENの信号が1になった場合に、周辺回路PH1に「1」のリクエスト信号REQを出力する。なお、イネーブル端子ENの信号は、「1」が活性化状態を示し、「0」が非活性化状態を示す。   As described above, each of the peripheral circuits PH1 to PH4 reads the read data from the status register 305 having the enable terminal EN according to the request signal REQ of the CPU 201. For example, when the signal of the enable terminal EN of the status register 305 of the peripheral circuit PH1 becomes 1, the REQ signal generation unit 1004 outputs a request signal REQ of “1” to the peripheral circuit PH1. In the signal of the enable terminal EN, “1” indicates an activated state and “0” indicates an inactivated state.

具体的には、ステータスレジスタ305は、イネーブル端子ENを有する複数のフリップフロップFF1〜FF32を有する。REQ信号生成部1004は、複数のフリップフロップFF1〜FF32のイネーブル端子ENの信号のうちのいずれかの信号が1になった場合に、周辺回路PH1に「1」のリクエスト信号REQを出力する。   Specifically, the status register 305 includes a plurality of flip-flops FF1 to FF32 having an enable terminal EN. The REQ signal generation unit 1004 outputs a request signal REQ of “1” to the peripheral circuit PH1 when one of the signals of the enable terminals EN of the plurality of flip-flops FF1 to FF32 becomes 1.

なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。   The above-described embodiments are merely examples of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features thereof.

100 ワイヤレスセンサノード
101 全体制御部
102 センサ部
103 RF部
104 発電電源管理部
105 アンテナ
106 発電素子
201 中央処理装置(CPU)
202 ポーリング回路
203 RAM
204 割り込みコントローラ
205 バス
206 ダイレクトメモリアクセスコントローラ(DMAC)
PH1 第1の周辺回路
PH2 第2の周辺回路
PH3 第3の周辺回路
PH4 第4の周辺回路
DESCRIPTION OF SYMBOLS 100 Wireless sensor node 101 Overall control part 102 Sensor part 103 RF part 104 Power generation power supply management part 105 Antenna 106 Power generation element 201 Central processing unit (CPU)
202 Polling circuit 203 RAM
204 Interrupt controller 205 Bus 206 Direct memory access controller (DMAC)
PH1 First peripheral circuit PH2 Second peripheral circuit PH3 Third peripheral circuit PH4 Fourth peripheral circuit

Claims (10)

処理装置と、
前記処理装置からリクエスト信号及びアドレス信号を入力し、前記処理装置にレディ信号及びリードデータ信号を出力するポーリング回路と、
前記ポーリング回路からリクエスト信号及びアドレス信号を入力し、前記ポーリング回路にレディ信号及びリードデータ信号を出力する周辺回路とを有し、
前記処理装置は、前記周辺回路にリードアクセスするために、活性化状態のリクエスト信号及び前記周辺回路に対応するアドレス信号を出力し、
前記周辺回路は、前記処理装置のリクエスト信号に対応する処理が終了していない場合には非活性化状態のレディ信号を出力し、前記処理装置のリクエスト信号に対応する処理が終了した場合には活性化状態のレディ信号及びリードデータ信号を出力し、
前記ポーリング回路は、
前記処理装置から入力したアドレス信号が第1のアドレス範囲のアドレスである場合には、前記処理装置から入力したアドレス信号を第2のアドレス範囲のアドレスに変換して前記周辺回路にアドレス信号を出力し、前記処理装置から入力したアドレス信号が第1のアドレス範囲のアドレスでない場合には、前記処理装置から入力したアドレス信号と同じアドレス信号を前記周辺回路に出力するアドレス信号生成部と、
前記処理装置から入力したアドレス信号が第1のアドレス範囲のアドレスであり、前記周辺回路から入力したリードデータ信号が前記処理装置から入力したアドレス信号に対応する期待値と同じである場合には、前記周辺回路から入力したレディ信号と同じレディ信号を前記処理装置に出力し、その他の場合には非活性化状態のレディ信号を前記処理装置に出力するレディ信号生成部とを有することを特徴とする処理システム。
A processing device;
A polling circuit for inputting a request signal and an address signal from the processing device, and outputting a ready signal and a read data signal to the processing device;
A peripheral circuit that inputs a request signal and an address signal from the polling circuit and outputs a ready signal and a read data signal to the polling circuit,
The processing device outputs an activated request signal and an address signal corresponding to the peripheral circuit for read access to the peripheral circuit,
The peripheral circuit outputs a deactivated ready signal when the processing corresponding to the request signal of the processing device is not completed, and when the processing corresponding to the request signal of the processing device is completed. Outputs an active ready signal and read data signal,
The polling circuit includes:
When the address signal input from the processing device is an address in the first address range, the address signal input from the processing device is converted to an address in the second address range and the address signal is output to the peripheral circuit When the address signal input from the processing device is not an address in the first address range, an address signal generation unit that outputs the same address signal as the address signal input from the processing device to the peripheral circuit;
When the address signal input from the processing device is an address in a first address range, and the read data signal input from the peripheral circuit is the same as the expected value corresponding to the address signal input from the processing device, A ready signal generating unit that outputs a ready signal that is the same as the ready signal input from the peripheral circuit to the processing device; in other cases, a ready signal generation unit that outputs a ready signal in an inactive state to the processing device Processing system.
前記周辺回路は、前記処理装置のリクエスト信号に応じて、イネーブル端子を有するレジスタからリードデータを読み出し、
前記ポーリング回路は、前記周辺回路のレジスタのイネーブル端子の信号が活性化状態になった場合に、前記周辺回路に活性化状態のリクエスト信号を出力するリクエスト信号生成部を有することを特徴とする請求項1記載の処理システム。
The peripheral circuit reads read data from a register having an enable terminal in response to a request signal of the processing device,
The polling circuit includes a request signal generation unit that outputs an activated request signal to the peripheral circuit when a signal of an enable terminal of a register of the peripheral circuit is activated. Item 2. The processing system according to Item 1.
前記周辺回路のレジスタは、イネーブル端子を有する複数のフリップフロップを有し、
前記リクエスト信号生成部は、前記周辺回路の複数のフリップフロップのイネーブル端子の信号のうちのいずれかの信号が活性化状態になった場合に、前記周辺回路に活性化状態のリクエスト信号を出力することを有することを特徴とする請求項2記載の処理システム。
The peripheral circuit register includes a plurality of flip-flops having an enable terminal,
The request signal generation unit outputs an activated request signal to the peripheral circuit when any one of the signals of the enable terminals of the plurality of flip-flops of the peripheral circuit is activated. The processing system according to claim 2, further comprising:
前記ポーリング回路は、前記処理装置から入力したアドレス信号が第1のアドレス範囲のアドレスである場合には、前記周辺回路から入力したリードデータ信号のうちの前記処理装置から入力したアドレス信号に対応するビットの信号をリードデータ信号として前記処理装置に出力するリードデータ信号生成部を有することを特徴とする請求項1〜3のいずれか1項に記載の処理システム。   The polling circuit corresponds to an address signal input from the processing device among read data signals input from the peripheral circuit when the address signal input from the processing device is an address in a first address range. The processing system according to claim 1, further comprising: a read data signal generation unit that outputs a bit signal as a read data signal to the processing device. 前記リードデータ信号生成部は、前記周辺回路から入力したリードデータ信号のうちの前記処理装置から入力したアドレス信号に対応するビットの信号を下位ビットとし、上位ビットを0で埋めた信号をリードデータ信号として前記処理装置に出力することを特徴とする請求項4記載の処理システム。   The read data signal generation unit sets a signal of a bit corresponding to an address signal input from the processing device of read data signals input from the peripheral circuit as a lower bit and a signal in which upper bits are padded with 0 as read data 5. The processing system according to claim 4, wherein the processing system outputs the signal to the processing device. 前記第1のアドレス範囲は、期待値が0である第3のアドレス範囲及び期待値が1である第4のアドレス範囲を有し、
前記レディ信号生成部は、
前記処理装置から入力したアドレス信号が前記第3のアドレス範囲のアドレスであり、前記周辺回路から入力したリードデータ信号のうちの前記処理装置から入力したアドレス信号に対応するビットの値が0である場合には、前記周辺回路から入力したレディ信号と同じレディ信号を前記処理装置に出力し、
前記処理装置から入力したアドレス信号が前記第4のアドレス範囲のアドレスであり、前記周辺回路から入力したリードデータ信号のうちの前記処理装置から入力したアドレス信号に対応するビットの値が1である場合には、前記周辺回路から入力したレディ信号と同じレディ信号を前記処理装置に出力することを特徴とする請求項1〜5のいずれか1項に記載の処理システム。
The first address range has a third address range with an expected value of 0 and a fourth address range with an expected value of 1.
The ready signal generator is
The address signal input from the processing device is an address in the third address range, and the value of the bit corresponding to the address signal input from the processing device in the read data signal input from the peripheral circuit is 0. In this case, the same ready signal input from the peripheral circuit is output to the processing device,
The address signal input from the processing device is an address in the fourth address range, and the value of the bit corresponding to the address signal input from the processing device in the read data signal input from the peripheral circuit is 1. 6. The processing system according to claim 1, wherein a ready signal that is the same as a ready signal input from the peripheral circuit is output to the processing device.
前記アドレス信号生成部は、前記処理装置から入力したアドレス信号を前記第2のアドレス範囲のアドレスに変換したアドレスを保持するアドレス保持部を有することを特徴とする請求項1〜6のいずれか1項に記載の処理システム。   The address signal generation unit includes an address holding unit that holds an address obtained by converting an address signal input from the processing device into an address in the second address range. The processing system according to item. 前記レディ信号生成部は、前記処理装置に入力される割り込み信号が活性化状態になった場合には、前記周辺回路から入力したレディ信号と同じレディ信号を前記処理装置に出力することを特徴とする請求項1〜7のいずれか1項に記載の処理システム。   The ready signal generation unit outputs the same ready signal as the ready signal input from the peripheral circuit to the processing device when an interrupt signal input to the processing device is activated. The processing system according to any one of claims 1 to 7. 前記リードデータ信号生成部は、前記周辺回路から入力したリードデータ信号のうちの前記処理装置から入力したアドレス信号に対応するビットの信号を保持するビット信号保持部を有することを特徴とする請求項4又は5記載の処理システム。   The read data signal generation unit includes a bit signal holding unit that holds a signal of a bit corresponding to an address signal input from the processing device among read data signals input from the peripheral circuit. The processing system according to 4 or 5. さらに、前記ポーリング回路及び前記周辺回路の間に接続されるバスを有することを特徴とする請求項1〜9のいずれか1項に記載の処理システム。   The processing system according to claim 1, further comprising a bus connected between the polling circuit and the peripheral circuit.
JP2014066182A 2014-03-27 2014-03-27 Processing system Expired - Fee Related JP6260394B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014066182A JP6260394B2 (en) 2014-03-27 2014-03-27 Processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014066182A JP6260394B2 (en) 2014-03-27 2014-03-27 Processing system

Publications (2)

Publication Number Publication Date
JP2015191279A true JP2015191279A (en) 2015-11-02
JP6260394B2 JP6260394B2 (en) 2018-01-17

Family

ID=54425760

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014066182A Expired - Fee Related JP6260394B2 (en) 2014-03-27 2014-03-27 Processing system

Country Status (1)

Country Link
JP (1) JP6260394B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009238001A (en) * 2008-03-27 2009-10-15 Texas Instr Japan Ltd Computer system
JP2011013914A (en) * 2009-07-01 2011-01-20 Toshiba Storage Device Corp Power-saving controller and power-saving control method
JP2011034385A (en) * 2009-08-03 2011-02-17 Renesas Electronics Corp Semiconductor device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009238001A (en) * 2008-03-27 2009-10-15 Texas Instr Japan Ltd Computer system
JP2011013914A (en) * 2009-07-01 2011-01-20 Toshiba Storage Device Corp Power-saving controller and power-saving control method
JP2011034385A (en) * 2009-08-03 2011-02-17 Renesas Electronics Corp Semiconductor device

Also Published As

Publication number Publication date
JP6260394B2 (en) 2018-01-17

Similar Documents

Publication Publication Date Title
US10649935B2 (en) Deferred inter-processor interrupts
JP5102789B2 (en) Semiconductor device and data processor
US10997100B2 (en) Communications interface between host system and state machine
US12072833B2 (en) Executing functions in response to reading event indices on an event queue by a state machine
CN105988400B (en) Microcontroller unit
KR20150112660A (en) System on chip, method thereof, and device including the same
JPWO2011117987A1 (en) Multi-core system and startup method
JP2001067235A (en) Interruption controller and microcomputer
JP5981004B2 (en) Semiconductor device
JP2008041059A (en) Multiprocessor controller and information processor
JP6260394B2 (en) Processing system
JP5561374B2 (en) Information processing system
JP5805546B2 (en) Semiconductor device
JP2007052685A (en) Microcontroller
JP2008021040A (en) Bus master circuit, bus control method and computer program
US20200293429A1 (en) Semiconductor Apparatus and Debug System
JP4580879B2 (en) Reconfigurable circuit
JPH10154124A (en) Microprocessor and multiprocessor system
JP2013041534A (en) Semiconductor integrated circuit and interruption generation method
JP2009163338A (en) Information processor
JP2013123125A (en) Configuration device
JP2013143075A (en) Semiconductor device
JP2006236060A (en) Bus interface circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171017

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: 20171114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171127

R150 Certificate of patent or registration of utility model

Ref document number: 6260394

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees