JP6326671B2 - プロセッサへのwait挿入 - Google Patents

プロセッサへのwait挿入 Download PDF

Info

Publication number
JP6326671B2
JP6326671B2 JP2013208382A JP2013208382A JP6326671B2 JP 6326671 B2 JP6326671 B2 JP 6326671B2 JP 2013208382 A JP2013208382 A JP 2013208382A JP 2013208382 A JP2013208382 A JP 2013208382A JP 6326671 B2 JP6326671 B2 JP 6326671B2
Authority
JP
Japan
Prior art keywords
processor
external
wait
rom
wait state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013208382A
Other languages
English (en)
Other versions
JP2015070954A (ja
Inventor
井之川 晋一
晋一 井之川
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.)
L E Tech CO Ltd
Original Assignee
L E Tech CO 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 L E Tech CO Ltd filed Critical L E Tech CO Ltd
Priority to JP2013208382A priority Critical patent/JP6326671B2/ja
Publication of JP2015070954A publication Critical patent/JP2015070954A/ja
Application granted granted Critical
Publication of JP6326671B2 publication Critical patent/JP6326671B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Pinball Game Machines (AREA)
  • Executing Machine-Instructions (AREA)

Description

本発明は、プロセッサへのWAIT挿入に関する。
近年、プロセッサの動作周波数は高くなってきており、メモリへのアクセス時にアクセス時間が十分に確保できないことがあった。従来のプロセッサを備えた装置(例えば、マイクロコンピュータ)において、アクセス時間を十分に確保するために、メモリへのアクセスをWAIT状態にする、すなわち、プロセッサをWAIT状態にするために外部からの入力端子を設けることによって、プロセッサのWAIT状態が外部から制御されていた。
しかしながら、従来技術では、プロセッサのWAIT状態が外部から制御されていたため、ユーザがコンピュータプログラムの実行を自由に遅らせることができた。ここで、コンピュータプログラムによっては、所定のタイミングでコンピュータプログラムを実行させなければならないものがある。しかし、悪意のあるユーザがプロセッサのWAIT状態を外部から制御することによって、そのタイミングを変更することができた。つまり、プロセッサのWAIT状態を外部から制御することは、コンピュータプログラムのセキュリティを脅かす可能性を有している。
また、パチンコやパチスロなどの遊技機で用いられるマイクロコンピュータは、売り出される前に、所定の検査が行われている。その検査において、遊技機で実行されるコンピュータプログラムの処理時間が一定であることが検査される。そして、コンピュータプログラムの処理時間は、プロセッサのクロック数を用いて計算される。したがって、プロセッサのWAIT状態を外部から制御することを可能にした場合、クロック数に基づいてコンピュータプログラムの処理時間を正しく計算することができない。このような検査の理由などから、遊技機で用いられるマイクロコンピュータにおいて、プロセッサをWAIT状態にするために外部からの入力端子を備えることは禁止されていた。
プロセッサのWAIT状態が外部から制御できない技術において、メモリへのアクセス時にアクセス時間が十分に確保できないという問題が生じていた。
本発明の実施例は、マイクロコンピュータなどの装置の外からプロセッサを直接的にWAIT状態にする手段を設けることなく、プロセッサをWAIT状態にすることを可能にすることによって、外部機器へのアクセスの安定性を向上させることである。
本発明の実施例において、プロセッサが外部機器にアクセスするかを検出し、検出結果に基づいてプロセッサをWAIT状態する。
本発明の実施例による外部機器に接続されている装置は、プロセッサと、プロセッサが外部機器にアクセスすることを検出する外部アクセス検出回路と、プロセッサが外部機器にアクセスすることを検出したことに応じて、プロセッサをWAIT状態にするWAIT挿入回路とを備えることができる。
本発明の実施例による外部機器に接続されている装置は、外部アクセス検出回路及びWAIT挿入回路が装置内に配置させることができる。
本発明の実施例による外部機器に接続されている装置は、WAIT挿入回路が、有効にするか否かが予め設定されるようにすることができる。
本発明の実施例による外部機器に接続されている装置は、プロセッサのWAIT状態の間隔が、プロセッサのクロック数で予め設定されるようにすることができる。
本発明の実施例による外部機器に接続されている装置のプロセッサをWAIT状態にする方法は、外部アクセス検出回路が、プロセッサが外部機器にアクセスすることを検出するステップと、WAIT挿入回路が、プロセッサが外部機器にアクセスすることを検出したことに応じて、プロセッサをWAIT状態にするステップとを含むことができる。
本発明の実施例による方法において、外部アクセス検出回路及びWAIT挿入回路は、装置内に配置されているようにすることができる。
図1は、外部機器が接続された装置を含む本発明の実施例に係るシステムを示した図である。 図2は、送受信される信号のタイミング図を示す。
図1は、外部機器140が接続された装置105を含む本発明の実施例に係るシステム100を示した図である。装置105は、一例では、マイクロコンピュータなどである。装置105は、少なくとも、プロセッサ110、WAIT挿入回路115、外部アクセス検出回路120、ROM125、RAM130、アドレスデコーダ135を含む。
装置105は、外部機器140に接続されている。一例では、外部機器140は、外部に配置されたROMである。当業者であれば明らかなように、外部機器140は、RAMなどどの他の入出力可能な装置とすることができる。また、本実施例において、説明を簡略にするために、外部機器140は一つのみ記載されているが、当業者であれば明らかなように、外部機器140は複数であってもよい。
プロセッサ110は、制御信号バス145、アドレスバス150、データバス155を介してROM125、RAM130、外部ROM140に接続されている。プロセッサ110は、READ命令信号やWRITE命令信号などの制御信号を制御信号バス145を介してROM125、RAM130及び外部ROM140に送信する。プロセッサ110は、アドレス信号をアドレスバス150を介してROM125、RAM130及び外部ROM140に送信する。プロセッサ110は、制御信号に対応するデータをROM125、RAM130又は外部ROM140からデータバス155を介して送受信する。
また、プロセッサ110は、アドレスデコーダ135にアドレスバス150を介して接続されている。アドレスバス150は、プロセッサ110よりアドレス信号を受け、そのアドレスに対応する装置(本実施例では、ROM125、RAM130、外部ROM140のいずれか)にチップセレクト信号を送信する。
ROM125、RAM130及び外部ROM140は、制御信号、アドレス信号及びチップセレクト信号全てを受信すると、制御信号に対応するデータを送受信する。
さらに、プロセッサ110は、WAIT挿入回路115及び外部アクセス検出回路120に接続されており、外部アクセス検出回路120は、プロセッサ110が外部ROM140にアクセスしたことを検出する。WAIT挿入回路115は、外部アクセス検出回路120に接続されており、外部アクセス検出回路120が外部アクセスを検出したことに応じて、プロセッサ110にWAIT信号を送信する。プロセッサ110は、WAIT信号を受信すると、制御をWAIT状態にする。
プロセッサ110が外部ROM140にアクセスしたことを検出する一例としては、プロセッサ110がROM125及びRAM130(装置105内の装置)以外のアドレス、すなわち、外部ROM140のアドレスを指定して、アドレス信号を送信することを外部アクセス検出回路120が検出することによって行われる。ここで、主記憶装置(RAM130)において、ROM125、RAM130及び外部ROM140それぞれで用いられるアドレスは、予め割り当てられている。他の実施例において、外部アクセス検出回路120は、プロセッサ110がデータのフェッチ又は命令のフェッチを行うかを検出してもよい。これにより、外部アクセス検出回路120は、データのフェッチ又は命令のフェッチのいずれかの場合のみ、外部アクセスを検出することができる。
本実施例において、WAIT挿入回路115及び外部アクセス検出回路120は、装置105内に配置される。したがって、プロセッサ110をWAIT状態にするためには、装置105内に配置されるROM125内の命令を書き換えるなどの手段を用いなければならない。これにより、悪意のあるユーザが、明示的にプロセッサ110をWAIT状態にすることは困難となる。したがって、本実施例は、WAIT挿入回路を有するにも関わらず、プロセッサ110をWAIT状態にするには、一定の制限があることから、悪意のあるユーザからセキュリティを確保することができる。
図2は、送受信される信号のタイミング図を示す。まず、時間210において、プロセッサ110は、ROM125のアドレス信号250及び制御信号255を送信する。アドレスデコーダ135は、ROM125のアドレス信号250に基づいて、ROM125のチップセレクト信号260をROM125に送信する。これにより、ROM125は、制御信号、アドレス信号及びチップセレクト信号全てを受信し、データ265を送信する。
時間220において、プロセッサ110は、外部ROM140のアドレス信号270及び制御信号275を送信する。外部アクセス検出回路120は、プロセッサ110がアドレス信号270を送信したこと、すなわち、プロセッサ110が外部ROM140にアクセスすることを検出する。
時間225において、WAIT挿入回路115は、プロセッサ110がアドレス信号270を送信したことの検出に応じて、WIAT信号280をプロセッサ110に送信する。これにより、プロセッサ110は、1クロック分(時間230)WAIT状態になり、外部ROM140のアドレス信号270及び制御信号275を時間230の間も送信する。
アドレスデコーダ135は、外部ROM140のアドレス信号270に基づいて、外部ROM140のチップセレクト信号280を外部ROM140に送信する。これにより、外部ROM140は、制御信号、アドレス信号及びチップセレクト信号全てを受信し、データ285を送信する。これにより、外部機器へのデータの送受信において、回路に遅延などが発生した場合であっても、データの送受信を確実に実行することができる。
本実施例において、WAIT挿入回路115は、プロセッサ110が1クロック分WAIT状態となるようWAIT信号を送信したが、他の実施例において、このWAIT状態となる間隔は、他のクロック数分となるようにしてもよい。
他の実施例において、WAITの挿入を行うか否かを予め設定することができる。すなわち、WAIT挿入回路115を有効にするか否かを予め設定することができる。例えば、RAM130に設定エリアを持たせ、ユーザが設定エリアの値を変更することによって当該設定が実現される。これにより、ユーザは、外部機器の特性によって、WAIT挿入回路115の利用を決定することができる。また、外部機器が複数ある場合、所定の一又は二以上の外部機器に対して、WAIT挿入回路115を有効にするか否かが予め設定されてもよい。
他の実施例において、WAIT状態の間隔を予め設定することができる。例えば、RAM130に設定エリアを持たせ、ユーザが設定エリアの値をプロセッサ110のクロック数で指定することによって当該設定が実現される。これにより、ユーザは、有効なWAIT時間を決定することができる。また、外部機器が複数ある場合、外部機器それぞれに対して、WAIT状態の間隔が予め設定されてもよい。
メカトロニクス、ロボット、パチンコ及びパチスロなどを含む遊技機、アーケードゲームなどを含むゲーム機器、エンジンのコントロール、車両ブレーキのコントロール、エレベーターのコントロールなどの分野において、装置105を用いることができる。
上記の実施例において、ハードウエアで実現するよう説明されたいくつかの要素の一部又は全ては、ソフトウェアで実現することができ、そして、ソフトウェアで実現するよう説明されたいくつかの要素の一部又は全ては、ハードウエアで実現することができることは理解されるであろう。
上記の実施例は、装置105を遊技機に用いるとさらに有効である。遊技機の分野では、装置がプロセッサを外部からWAIT状態にするための端子を有することは禁止されていることから、外部機器へのアクセスが安定させることが困難であったため、上記実施例を用いることによって、外部機器へのアクセスが安定させることできる。
以上に説明した処理又は動作において、あるステップにおいて、そのステップではまだ利用することができないはずのデータを利用しているなどの処理又は動作上の矛盾が生じない限りにおいて、処理又は動作を自由に変更することができる。
以上に説明してきた各実施例は、本発明を説明するための例示であり、本発明はこれらの実施例に限定されるものではない。本発明は、その要旨を逸脱しない限り、種々の形態で実施することができる。
105 装置
110 プロセッサ
115 WAIT挿入回路
120 外部アクセス検出回路
125 ROM
130 RAM
135 アドレスデコーダ
140 外部ROM

Claims (5)

  1. 外部機器に接続されている装置であって、
    プロセッサと、
    前記プロセッサが前記外部機器にアクセスすることを検出する外部アクセス検出回路と、
    前記プロセッサが前記外部機器にアクセスすることを検出したことに応じて、当該プロセッサをWAIT状態にするWAIT挿入回路と、
    を備え
    前記外部機器は、前記装置の前記WAIT状態を制御できず、さらに、前記WAIT挿入回路は、有効にするか否かが予め設定される、装置。
  2. 前記外部アクセス検出回路及び前記WAIT挿入回路は、前記装置内に配置されている、請求項1に記載の装置。
  3. 前記プロセッサのWAIT状態の間隔は、当該プロセッサのクロック数で予め設定される、請求項1又は2に記載の装置。
  4. 外部機器に接続されている装置のプロセッサをWAIT状態にする方法であって、
    外部アクセス検出回路が、前記プロセッサが前記外部機器にアクセスすることを検出するステップと、
    WAIT挿入回路が、前記プロセッサが前記外部機器にアクセスすることを検出したことに応じて、当該プロセッサをWAIT状態にするステップと、
    を含み、
    前記外部機器は、前記装置の前記WAIT状態を制御できず、さらに、前記WAIT挿入回路は、有効にするか否かが予め設定される、方法。
  5. 前記外部アクセス検出回路及び前記WAIT挿入回路は、前記装置内に配置されている、請求項に記載の方法。
JP2013208382A 2013-10-03 2013-10-03 プロセッサへのwait挿入 Active JP6326671B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013208382A JP6326671B2 (ja) 2013-10-03 2013-10-03 プロセッサへのwait挿入

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013208382A JP6326671B2 (ja) 2013-10-03 2013-10-03 プロセッサへのwait挿入

Publications (2)

Publication Number Publication Date
JP2015070954A JP2015070954A (ja) 2015-04-16
JP6326671B2 true JP6326671B2 (ja) 2018-05-23

Family

ID=53013808

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013208382A Active JP6326671B2 (ja) 2013-10-03 2013-10-03 プロセッサへのwait挿入

Country Status (1)

Country Link
JP (1) JP6326671B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3141146B2 (ja) * 1993-07-27 2001-03-05 三菱電機株式会社 ワンチップマイクロコンピュータ
US6356987B1 (en) * 1999-03-10 2002-03-12 Atmel Corporation Microprocessing device having programmable wait states
JP2003036241A (ja) * 2001-07-25 2003-02-07 Matsushita Electric Ind Co Ltd ウェイトサイクル制御装置およびウェイトサイクル制御方法

Also Published As

Publication number Publication date
JP2015070954A (ja) 2015-04-16

Similar Documents

Publication Publication Date Title
US10592671B2 (en) Preventing code modification after boot
KR101740224B1 (ko) 불법 모드 변경처리
JP5703378B2 (ja) アラインメント制御
US9875112B2 (en) Providing a trustworthy indication of the current state of a multi-processor data processing apparatus
US20080244229A1 (en) Information processing apparatus
US20210117109A1 (en) Transparently Attached Flash Memory Security
JP6326671B2 (ja) プロセッサへのwait挿入
EP3782066B1 (en) Nop sled defense
JP7383750B2 (ja) 故障注入攻撃を検出する改善されたシステムと方法
JP2014213020A5 (ja)
US11106478B2 (en) Simulation device, simulation method, and computer readable medium
JP2014213017A5 (ja)
JP2014061355A5 (ja)
JP2014061356A5 (ja)
US20210049261A1 (en) Method for activating sensors in a multi-unit device
JP2014061352A5 (ja)
JP2014087600A5 (ja)
JP2014140651A5 (ja)
US20140325185A1 (en) Method for Operating a Processor
JP2017086418A (ja) 乱数発生器を内部に備えた遊技機用プロセッサ、遊技機用プロセッサ装置、遊技機用基板及び遊技機
JP2014061353A5 (ja)
Bognár Analyzing side-channel leakage in secure DMA solutions
JPH05298880A (ja) データ処理装置とメモリカード
JPH0750446B2 (ja) データ処理装置
JP2008229392A (ja) 弾球遊技機

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161003

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171117

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180327

R150 Certificate of patent or registration of utility model

Ref document number: 6326671

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250