JP2016168106A - Game machine control chip - Google Patents

Game machine control chip Download PDF

Info

Publication number
JP2016168106A
JP2016168106A JP2015048469A JP2015048469A JP2016168106A JP 2016168106 A JP2016168106 A JP 2016168106A JP 2015048469 A JP2015048469 A JP 2015048469A JP 2015048469 A JP2015048469 A JP 2015048469A JP 2016168106 A JP2016168106 A JP 2016168106A
Authority
JP
Japan
Prior art keywords
check data
data
ram
program
gaming machine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015048469A
Other languages
Japanese (ja)
Inventor
勝紀 渡辺
Masaki Watanabe
勝紀 渡辺
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.)
LETech Co Ltd
Original Assignee
LETech 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 LETech Co Ltd filed Critical LETech Co Ltd
Priority to JP2015048469A priority Critical patent/JP2016168106A/en
Publication of JP2016168106A publication Critical patent/JP2016168106A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Pinball Game Machines (AREA)

Abstract

PROBLEM TO BE SOLVED: To reliably generate check data of data in a backup area of a RAM without unnecessarily increasing a program capacity.SOLUTION: A game machine control chip includes: a ROM storing a program for controlling a game machine; a central processing unit performing information processing according to the program; a RAM accessed by the central processing unit; a bus connecting the ROM, the central processing unit, and the RAM; and a check data generation circuit which is connected to the bus, generates check data of all data within a prescribed address range of the RAM in response to a prescribed start trigger, and stores the data to a calculation result storage part.SELECTED DRAWING: Figure 2

Description

本発明は遊技機制御用チップに関し、より詳しくは、RAMのバックアップ領域のチェックデータを自動的に生成する遊技機制御用チップに関する。   The present invention relates to a gaming machine control chip, and more particularly to a gaming machine control chip that automatically generates check data for a backup area of a RAM.

従来、パチンコ遊技機などの遊技機には遊技機制御用チップが搭載され、当該遊技機は遊技機制御用チップ内のプログラムの実行により制御されている。遊技機制御用チップは、電源断時に処理中のデータを失わないようにするため、バックアップメモリやRAMのバックアップエリア等にデータをバックアップのために保存する。データをバックアップするときは、データの異常の有無を確認するためにCPUがプログラムに従ってチェックデータを計算し、データとチェックデータを併せて保存する。バックアップしたデータを読み出すときも、読み出したデータのチェックデータをCPUがプログラムに従って計算し、それと保存されたチェックデータとの比較を行い、比較結果が同じであった場合にバックアップされたデータに異常がないものと判断している。   Conventionally, a gaming machine control chip is mounted on a gaming machine such as a pachinko gaming machine, and the gaming machine is controlled by executing a program in the gaming machine control chip. The gaming machine control chip stores data for backup in a backup memory, a backup area of a RAM, or the like so as not to lose data being processed when the power is turned off. When data is backed up, the CPU calculates check data according to a program in order to confirm whether there is an abnormality in the data, and stores the data and the check data together. When reading backed up data, the CPU calculates the check data of the read data according to the program, compares it with the stored check data, and if the comparison result is the same, there is an error in the backed up data. Judge that there is no.

通常、データのバックアップ時や読み出し時に行うチェックデータの計算は、CPUがプログラムに従って実行する。このような遊技の制御に関するプログラムやこれに関する初期データ等は遊技機制御用チップに内蔵されたROMに格納される。   Normally, the calculation of check data performed at the time of data backup or reading is executed by the CPU according to a program. Such a program relating to game control, initial data relating thereto, and the like are stored in a ROM built in the gaming machine control chip.

種々の法律により遊技機制御用チップの内蔵ROM内にプログラムやデータ等を格納する記憶容量は規定されている。したがって、限られた記憶容量の内蔵ROM内では、ユーザプログラムに使用可能な容量は制約を受ける。遊技機のゲーム内容の多様化に伴い、プログラムで使用したい容量は増えているのに対して、ユーザプログラムが制約されると、ゲーム内容も制約されることとなるのでゲームの興趣が低下してしまう恐れがある。   A storage capacity for storing programs, data, and the like in the built-in ROM of the gaming machine control chip is regulated by various laws. Therefore, in a built-in ROM having a limited storage capacity, the capacity usable for the user program is restricted. With the diversification of game content on gaming machines, the amount of capacity you want to use in the program has increased. However, if the user program is restricted, the game content will also be restricted, so the interest of the game will decline. There is a risk.

また、バックアップされるデータのチェックデータの計算は、プログラムによりCPUに指示することによって開始される。しかし、例えば電源断時などにおいては適切なタイミングでチェックデータの計算の開始が指示されなければ、チェックデータの計算が正常に行われない可能性もある。   The calculation of the check data of the data to be backed up is started by instructing the CPU by a program. However, for example, when the power is turned off, the check data calculation may not be performed normally unless the start of the check data calculation is instructed at an appropriate timing.

従って、データバックアップ処理におけるチェックデータの生成処理をプログラムに従ってCPUが実行することにより、ユーザプログラムの容量の制限が大きくなり、ゲームの興趣も低下するという問題やチェックデータの計算が正常に行われない可能性があるという問題があった。   Therefore, when the CPU executes the check data generation process in the data backup process according to the program, there is a problem that the capacity of the user program is limited and the interest of the game is reduced, and the check data is not normally calculated. There was a problem that there was a possibility.

上記の課題を解決するため、本発明に係る遊技機制御用チップは、遊技機を制御するプログラムを格納するROMと、当該プログラムに従って情報処理を実行する中央処理部と、当該中央処理部にアクセスされるRAMと、当該ROM、当該中央処理部、及び当該RAMを接続するバスと、当該バスに接続され、所定の開始トリガに応答して当該RAMの所定のアドレス範囲内のすべてのデータのチェックデータを生成して計算結果格納部に格納するチェックデータ生成回路と、を備える。   In order to solve the above problems, a gaming machine control chip according to the present invention is accessed by a ROM that stores a program for controlling a gaming machine, a central processing unit that executes information processing according to the program, and the central processing unit. RAM, the ROM, the central processing unit, the bus connecting the RAM, and the check data of all data connected to the bus and in a predetermined address range of the RAM in response to a predetermined start trigger And a check data generation circuit that stores the result in the calculation result storage unit.

チェックデータ生成回路は、チェックデータを生成して計算結果格納部に格納すると共に、中央処理部にチェックデータの生成が完了した旨を示す信号を伝達するように構成できる。   The check data generation circuit can be configured to generate check data and store the check data in the calculation result storage unit, and to transmit a signal indicating that the generation of the check data is completed to the central processing unit.

当該チェックデータ生成回路は、当該チェックデータの生成時に当該RAMの当該所定のアドレス範囲の一方の端である読出し開始アドレスから他方の端である読出し終了アドレスに向かってデータの読み出しがなされる場合に、読出し開始アドレスを特定する読出し開始アドレス特定情報、及び読出し終了アドレスを特定する読出し終了アドレス特定情報をそれぞれ記憶する読出し開始アドレス特定情報記憶手段及び読出し終了アドレス特定情報記憶手段を有するように構成できる。   When the check data is generated, the check data generation circuit reads data from the read start address that is one end of the predetermined address range of the RAM toward the read end address that is the other end. The read start address specifying information for specifying the read start address and the read end address specifying information storing means for storing the read end address specifying information for specifying the read end address, respectively, can be configured. .

ROMに記憶されたプログラムは、ユーザによって定義されるユーザプログラムを含み、ユーザプログラムは、中央処理部がユーザプログラムを実行することによって、開始トリガをチェックデータ生成回路に与えるとともに、RAMの所定のアドレス範囲内のデータの順次読み出し又は順次書込みを開始させるものであり、チェックデータ生成回路は、中央処理部がRAMの所定のアドレス範囲内のデータの読み出し又は書込みを行うタイミングでデータバスからデータを取得することによってチェックデータを生成するように構成できる。   The program stored in the ROM includes a user program defined by the user, and the user program gives a start trigger to the check data generation circuit by the central processing unit executing the user program, and a predetermined address of the RAM. Sequential reading or sequential writing of data within the range is started, and the check data generation circuit acquires data from the data bus at the timing when the central processing unit reads or writes data within the predetermined address range of the RAM. By doing so, it can be configured to generate check data.

チェックデータ生成回路は、開始トリガの受信後に、RAMの読出し開始アドレスから読出し終了アドレスまでのデータを中央処理部がRAMにアクセスしていないタイミングで順次読み出してチェックデータを生成するように構成できる。読出し開始アドレス特定情報は読出し開始アドレスの値であり、読出し終了アドレス特定情報は読出し終了アドレスの値であるように構成できる。読出し開始アドレス特定情報は開始アドレスの値であり、読出し終了アドレス特定情報は読出し開始アドレスから読出し終了アドレスまでの範囲長を示す情報であるように構成できる。チェックデータ生成回路の開始トリガは、中央処理部がRAMの読出し終了アドレスへデータを書き込んだことの検知であるように構成できる。   The check data generation circuit can be configured to generate check data by sequentially reading data from the read start address to the read end address of the RAM at a timing when the central processing unit does not access the RAM after receiving the start trigger. The read start address specifying information can be configured to be the value of the read start address, and the read end address specifying information can be the value of the read end address. The read start address specifying information is a value of the start address, and the read end address specifying information can be configured to be information indicating a range length from the read start address to the read end address. The start trigger of the check data generation circuit can be configured to detect that the central processing unit has written data to the read end address of the RAM.

ROMに記憶されたプログラムは、ユーザによって定義されるユーザプログラムを含み、中央処理部がユーザプログラムを実行することによって、読出し開始アドレス特定情報及び読出し終了アドレス特定情報をそれぞれチェックデータ生成回路の読出し開始アドレス特定情報記憶手段及び読出し終了アドレス特定情報記憶手段に記憶させるように構成できる。ROMに記憶されたプログラムは、電源オン時に実行されるブートプログラムを含み、ROMは、ブートプログラムによって参照される設定値を記憶するプログラム管理領域を含み、プログラム管理領域は、読出し開始アドレス特定情報及び読出し終了アドレス特定情報を記憶しており、電源オン時に中央処理部がブートプログラムを実行することによって、プログラム管理領域に記憶された読出し開始アドレス特定情報及び読出し終了アドレス特定情報をそれぞれチェックデータ生成回路の読出し開始アドレス特定情報記憶手段及び読出し終了アドレス特定情報記憶手段に記憶させるように構成できる。   The program stored in the ROM includes a user program defined by the user. When the central processing unit executes the user program, the read start address specifying information and the read end address specifying information are read from the check data generation circuit, respectively. The address specifying information storage means and the read end address specifying information storage means can be stored. The program stored in the ROM includes a boot program that is executed when the power is turned on. The ROM includes a program management area that stores a setting value that is referred to by the boot program. The program management area includes read start address specifying information and The read end address specifying information is stored, and when the power is turned on, the central processing unit executes the boot program, whereby the read start address specifying information and the read end address specifying information stored in the program management area are respectively checked data generation circuits The read start address specifying information storage means and the read end address specifying information storage means can be stored.

ROMに記憶されたプログラムは、ユーザによって定義されるユーザプログラムを含み、中央処理部は、ユーザプログラムを実行することによって、生成されたチェックデータを計算結果格納部から読み出して、RAM上の所定の位置にあるチェックデータ格納領域に記憶させるように構成できる。チェックデータ格納領域は、RAMの所定のアドレス範囲の直前あるいは直後であるように構成できる。   The program stored in the ROM includes a user program defined by the user, and the central processing unit reads the generated check data from the calculation result storage unit by executing the user program, and executes a predetermined program on the RAM. The check data storage area at the position can be stored. The check data storage area can be configured to be immediately before or immediately after a predetermined address range of the RAM.

ROMに記憶されたプログラムは、電源オン時に実行されるブートプログラムを含み、電源オン時に中央処理部がブートプログラムを実行することによって、チェックデータ生成回路に開始トリガを与えることでRAMの所定のアドレス範囲の新たなチェックデータを生成させて計算結果格納部に格納させると共に、チェックデータ格納領域に記憶された前回生成されたチェックデータを読出し、前回生成されたチェックデータと計算結果格納部に格納された新たなチェックデータとを比較し、その比較結果をユーザプログラムからアクセス可能な所定の領域に記憶させるように構成できる。   The program stored in the ROM includes a boot program that is executed when the power is turned on, and the central processing unit executes the boot program when the power is turned on to give a start trigger to the check data generation circuit, thereby giving a predetermined address in the RAM. Generate new check data in the range and store it in the calculation result storage unit, read the previously generated check data stored in the check data storage area, and store it in the previously generated check data and calculation result storage unit The new check data can be compared, and the comparison result can be stored in a predetermined area accessible from the user program.

RAMの所定のアドレス範囲は、データ送信のためのバッファ領域として使用されているように構成できる。   The predetermined address range of the RAM can be configured to be used as a buffer area for data transmission.

RAMの所定のアドレス範囲は、データ受信のためのバッファ領域として使用されているように構成できる。受信データはRAMの所定のアドレス範囲のバッファリング開始アドレスから順次バッファリングさせ、それがバッファリング終了アドレスまで達すると、チェックデータ生成回路に対して所定の開始トリガを発生させられるように構成できる。受信データをRAMの所定のアドレス範囲のバッファリング開始アドレスから順次バッファリングさせ、受信データにバッファリングの終了を示すコードが検出されると、チェックデータ生成回路に対して所定の開始トリガを発生させられるように構成できる。   The predetermined address range of the RAM can be configured to be used as a buffer area for data reception. The received data is sequentially buffered from a buffering start address in a predetermined address range of the RAM, and when it reaches the buffering end address, a predetermined start trigger can be generated for the check data generation circuit. The received data is sequentially buffered from the buffering start address in a predetermined address range of the RAM, and when a code indicating the end of buffering is detected in the received data, a predetermined start trigger is generated for the check data generation circuit. Can be configured.

本発明は、上記の遊技機制御用チップを組み込んだ基板とすることもできる。本発明は、上記の遊技機制御用チップと、電源電圧を監視し、電源電圧が規定値より下がった場合に、チェックデータ生成回路に開始トリガを与える電源断監視回路と、を有するように構成できる。本発明は、上記の基板を含む遊技機とすることもできる。   The present invention can also be a substrate incorporating the gaming machine control chip described above. The present invention can be configured to include the gaming machine control chip described above and a power-off monitoring circuit that monitors the power supply voltage and provides a start trigger to the check data generation circuit when the power supply voltage falls below a specified value. . The present invention may be a gaming machine including the above board.

本発明に係る遊技機制御用チップは、本発明に係る遊技機制御用チップは、所定の開始トリガに応答してRAMの所定のアドレス範囲内のすべてのデータのチェックデータを生成して計算結果格納部に格納するチェックデータ生成回路を備えるため、プログラム容量を不必要に増やすことなく、所定の開始トリガを与えるだけで、RAMの所定のアドレス範囲内のすべてのデータのチェックデータを確実に生成させることができる。   The gaming machine control chip according to the present invention, the gaming machine control chip according to the present invention generates check data of all data within a predetermined address range of the RAM in response to a predetermined start trigger, and a calculation result storage unit Since the check data generation circuit for storing data is stored in the memory, the check data for all the data within the predetermined address range of the RAM can be generated reliably only by giving a predetermined start trigger without unnecessarily increasing the program capacity. Can do.

チェックデータ生成回路は、中央処理部にチェックデータの生成が完了した旨を示す信号を伝達するように構成できるため、チェックデータの生成が完了すると直ちに中央処理部に後続の処理を行わせることができる。   Since the check data generation circuit can be configured to transmit a signal indicating that the generation of the check data is completed to the central processing unit, it is possible to cause the central processing unit to perform subsequent processing as soon as the generation of the check data is completed. it can.

チェクデータ生成回路をCPUと別ロジックで構成することによりプログラムで実行するよりも実行時間が短くなりバックアップに掛かる処理時間が短くなりシステムの安定性が向上する。また、送受信データのBCCに使用することにより、送信、受信時の応答速度が向上する。   By configuring the check data generation circuit with a logic different from that of the CPU, the execution time is shorter than that executed by the program, the processing time required for backup is shortened, and the stability of the system is improved. Moreover, the response speed at the time of transmission and reception improves by using it for BCC of transmission / reception data.

チェックデータ生成回路は、読出し開始アドレス特定情報記憶手段及び読出し終了アドレス特定情報記憶手段を有するように構成できるため、そこにアドレスを書き込むことにより、チェックデータ生成のために読み出す範囲をチェックデータ生成回路に伝達することができる。   Since the check data generation circuit can be configured to have a read start address specification information storage unit and a read end address specification information storage unit, a range to be read for generating check data can be set by writing an address therein. Can be communicated to.

中央処理部がユーザプログラムの実行によって開始トリガをチェックデータ生成回路に与えるとともに、チェックデータ生成領域のデータの順次読み出し又は順次書込みを開始させ、チェックデータ生成回路が読み出し又は書込みを行うタイミングでデータバスからデータを取得することによってチェックデータを生成するように構成できるため、チェックデータ生成の際にチェックデータ生成回路自体がRAMのアドレス指定をする必要がなく、チェックデータ生成回路の構成を単純にできる。   The central processing unit gives a start trigger to the check data generation circuit by execution of the user program, starts reading or writing data in the check data generation area sequentially, and the check data generation circuit reads or writes data bus Since the check data can be generated by acquiring data from the check data, the check data generation circuit itself does not need to address the RAM when generating the check data, and the configuration of the check data generation circuit can be simplified. .

チェックデータ生成回路は、開始トリガの受信後に、RAMの読出し開始アドレスから読出し終了アドレスまでのデータを中央処理部がRAMにアクセスしていないタイミングで順次読み出してチェックデータを生成するように構成できるため、チェックデータの生成が開始されると、中央処理部の動作を妨げることなく、プログラムの実行状態にかかわらず確実にチェックデータを生成することができる。チェックデータ生成回路の開始トリガを中央処理部がRAMの読出し終了アドレスへデータを書き込んだことの検知とすることができるため、バックアップエリア全体のデータの更新が完了するとチェックデータの生成を開始させ、更新されたデータに対して最新のチェックデータを即時生成することが可能となる。   Since the check data generation circuit can be configured to sequentially read data from the read start address of the RAM to the read end address at a timing when the central processing unit does not access the RAM after receiving the start trigger, and generate check data. When the generation of check data is started, the check data can be reliably generated regardless of the execution state of the program without interfering with the operation of the central processing unit. Since the start trigger of the check data generation circuit can be a detection that the central processing unit has written data to the read end address of the RAM, generation of check data is started when the update of the entire backup area is completed, It is possible to immediately generate the latest check data for the updated data.

中央処理部がユーザプログラムを実行することによって、チェックデータ生成回路の読出し開始アドレス特定情報記憶手段及び読出し終了アドレス特定情報記憶手段に適切な値を記憶させるように構成できるため、チェックデータ生成エリアの柔軟な設定が可能となる。電源オン時に中央処理部がブートプログラムを実行することによって、プログラム管理領域に記憶されたデータをチェックデータ生成回路の読出し開始アドレス特定情報記憶手段及び読出し終了アドレス特定情報記憶手段に記憶させるように構成できるため、そのデータをユーザプログラムが扱わないようにしてセキュリティを確保できる。   Since the central processing unit executes the user program, it can be configured to store appropriate values in the read start address specifying information storage unit and the read end address specifying information storage unit of the check data generation circuit. Flexible setting is possible. The central processing unit executes the boot program when the power is turned on, and the data stored in the program management area is stored in the read start address specifying information storage unit and the read end address specifying information storage unit of the check data generation circuit. Therefore, security can be ensured by preventing the user program from handling the data.

中央処理部はユーザプログラムを実行することによって、生成されたチェックデータをチェックデータ生成回路から読み出して、RAM上に記憶させるように構成できるため、生成されたチェックデータが必要なときにユーザプログラムがそれを読み出して利用できる。チェックデータ格納領域は、RAMの所定のアドレス範囲の直前あるいは直後であるように構成できるため、チェックデータ格納領域の位置をRAM上で簡単に特定できる。   The central processing unit can be configured to read the generated check data from the check data generation circuit and store it in the RAM by executing the user program, so that the user program can be used when the generated check data is required. It can be read and used. Since the check data storage area can be configured immediately before or after a predetermined address range of the RAM, the position of the check data storage area can be easily specified on the RAM.

電源オン時に中央処理部がブートプログラムを実行することによって、チェックデータ生成回路に開始トリガを与えることでRAMの所定のアドレス範囲の新たなチェックデータを生成させて計算結果格納部に格納させると共に、チェックデータ格納領域に記憶された前回生成されたチェックデータを読出し、前回生成されたチェックデータと計算結果格納部に格納された新たなチェックデータとを比較し、その比較結果をユーザプログラムからアクセス可能な所定の領域に記憶させるように構成できるため、パワーオン時に、バックアップエリアのデータに異常があったかどうかを簡単かつ確実に確認し、その確認結果をユーザプログラムに伝達できる。   The central processing unit executes a boot program when the power is turned on to generate a new check data in a predetermined address range of the RAM by giving a start trigger to the check data generation circuit and store it in the calculation result storage unit. The previously generated check data stored in the check data storage area can be read, the previously generated check data can be compared with new check data stored in the calculation result storage, and the comparison result can be accessed from the user program. Therefore, it is possible to easily and surely check whether there is an abnormality in the data in the backup area when the power is turned on, and to transmit the confirmation result to the user program.

RAMのバックアップエリアをデータ送信のためのバッファ領域として使用することにより、送信データのチェックデータを簡単かつ確実に生成できる。   By using the RAM backup area as a buffer area for data transmission, check data for transmission data can be generated easily and reliably.

RAMのバックアップエリアをデータ受信のためのバッファ領域として使用することにより、受信データのチェックデータを簡単かつ確実に生成でき、受信データの異常の有無を確認できる。受信データがバッファリング終了アドレスまでバッファリングされるとチェックデータ生成を開始させるように構成できるため、バッファ領域全体のデータ受信がなされると直ちにチェックデータ生成を行わせることができる。受信データにバッファリングの終了を示すコードが検出されるとチェックデータ生成を開始させるように構成できるため、データ受信が終了すると直ちにチェックデータ生成を行わせることができる。   By using the backup area of the RAM as a buffer area for data reception, check data for the received data can be generated easily and reliably, and whether there is an abnormality in the received data can be confirmed. Since the check data generation can be started when the received data is buffered up to the buffering end address, the check data generation can be performed immediately when the data reception of the entire buffer area is performed. Since the check data generation can be started when the code indicating the end of buffering is detected in the received data, the check data generation can be performed immediately after the data reception is completed.

上記の遊技機制御用チップを組み込んだ基板を使用することにより、遊技機能を実現する基板に、上記の各種の効果を付与することができる。電源電圧を監視し、電源電圧が規定値より下がった場合に、チェックデータ生成を開始させる電源断監視回路を基板に組み込むことにより、不意の電源断の際においても確実にチェックデータを生成させることができる。   By using the board in which the gaming machine control chip is incorporated, the various effects described above can be imparted to the board for realizing the gaming function. By installing a power-off monitoring circuit that monitors the power supply voltage and starts check data generation when the power supply voltage drops below the specified value, check data can be generated even in the event of an unexpected power failure. Can do.

本発明の第1及び第2の実施形態に係る遊技機システムの外観を示す図である。It is a figure which shows the external appearance of the game machine system which concerns on the 1st and 2nd embodiment of this invention. 本発明の第1及び第2の実施形態に係る遊技機制御用チップの構成を示したブロック図である。It is the block diagram which showed the structure of the gaming machine control chip which concerns on the 1st and 2nd embodiment of this invention. 本発明の第1及び第2の実施形態に係る遊技機制御用チップが有するユーザROMのメモリマップ図である。It is a memory map figure of user ROM which the gaming machine control chip concerning the 1st and 2nd embodiments of the present invention has. 本発明の第1及び第2の実施形態に係る遊技機制御用チップが有するユーザRAMのメモリマップ図である。It is a memory map figure of user RAM which the chip for game machine control concerning the 1st and 2nd embodiment of the present invention has. 本発明の第1及び第2の実施形態に係る遊技機制御用チップのパワーダウン時の動作フロー図である。It is an operation | movement flowchart at the time of the power-down of the chip for gaming machine control which concerns on the 1st and 2nd embodiment of this invention. 本発明の第1及び第2の実施形態に係る遊技機制御用チップのパワーオン時の動作フロー図である。It is an operation | movement flowchart at the time of the power-on of the chip for gaming machine control which concerns on the 1st and 2nd embodiment of this invention. 本発明の第1の実施形態に係るCPUコア及びチェックデータ生成回路によるチェックデータ生成時の動作フロー図である。It is an operation | movement flowchart at the time of the check data generation by the CPU core and check data generation circuit which concern on the 1st Embodiment of this invention. 本発明の第2の実施形態に係るチェックデータ生成回路によるチェックデータ生成時の動作フロー図である。It is an operation | movement flowchart at the time of the check data generation by the check data generation circuit which concerns on the 2nd Embodiment of this invention.

これより図面を参照して、本発明に係る遊技機制御用チップの構成について説明する。本発明は、CPUコアとチェックデータ生成回路が協働してチェックデータを生成する第1の実施形態、及びCPUコアを使用せずにチェックデータ生成回路によってチェックデータを生成する第2の実施形態がある。以下、特に言及しない限り、第1及び第2の実施形態において共通する構成や動作の説明を行う。まず当該チップに関係する遊技システムの構成、遊技システムにおける各チップの構成を説明する。   The configuration of the gaming machine control chip according to the present invention will be described with reference to the drawings. The present invention relates to a first embodiment in which a CPU core and a check data generation circuit cooperate to generate check data, and a second embodiment in which check data is generated by the check data generation circuit without using the CPU core. There is. Hereinafter, unless otherwise specified, the configuration and operation common to the first and second embodiments will be described. First, the configuration of the gaming system related to the chip and the configuration of each chip in the gaming system will be described.

遊技機システムの構成
図1に、本発明の実施形態に係るパチンコシステム100の外観を示す。本実施例では、遊技機の一例としてパチンコ機を用いて説明するが、パチスロ機などの他の遊技機に置き換えてもよい。図1において、パチンコシステム100は、2台のパチンコ機105、110、及び抽選媒体供給装置(玉貸し装置又はサンドとも呼ばれる)115を備える。
Configuration Figure 1 of the gaming machine system, showing an appearance of a pachinko system 100 according to an embodiment of the present invention. In this embodiment, a pachinko machine will be described as an example of a gaming machine, but it may be replaced with another gaming machine such as a pachislot machine. In FIG. 1, the pachinko system 100 includes two pachinko machines 105 and 110 and a lottery medium supply device (also called a ball lending device or a sand) 115.

パチンコ機105は、抽選の実行及び抽選結果の表示を行う遊技盤部120、抽選結果に応じて払出を行う払出部125、及び、ハンドル部130を備える。パチンコ機110は、パチンコ機105と同様な構成を備えている。パチンコ機105、110は、払出部125から実際の玉を排出する。   The pachinko machine 105 includes a game board unit 120 that executes a lottery and displays a lottery result, a payout unit 125 that makes a payout according to the lottery result, and a handle unit 130. The pachinko machine 110 has the same configuration as the pachinko machine 105. The pachinko machines 105 and 110 discharge the actual balls from the payout unit 125.

抽選媒体供給装置115は、遊技者が購入したパチンコ玉をパチンコ機105に供給する装置である。抽選媒体供給装置115は、コイン投入部135を有し、遊技者によるコインの投入に応じて、抽選媒体であるパチンコ玉をパチンコ機105に供給する。コイン投入部135は、紙幣やプリペイドカードなどの投入部とすることもでき、この場合、抽選媒体は紙幣やプリペイドカードなどの投入に応じて供給される。遊技者が抽選媒体供給装置115にコイン等を投入することによって、抽選媒体供給装置115は、投入されたコイン等の金額に対応する個数の抽選媒体をパチンコ機105に供給する。パチンコ機105は、抽選媒体を使用することによって遊技者にパチンコゲームを行わせる。ハンドル部130は、遊技者がパチンコ玉をパチンコ機105に打ち出すのに使用される。   The lottery medium supply device 115 is a device that supplies a pachinko ball purchased by a player to the pachinko machine 105. The lottery medium supply device 115 includes a coin insertion unit 135 and supplies a pachinko ball, which is a lottery medium, to the pachinko machine 105 in accordance with the coin insertion by the player. The coin insertion unit 135 may be an insertion unit such as a bill or a prepaid card. In this case, the lottery medium is supplied in response to the insertion of a bill or a prepaid card. When the player inserts coins or the like into the lottery medium supply device 115, the lottery medium supply device 115 supplies the number of lottery media corresponding to the amount of coins inserted into the pachinko machine 105. The pachinko machine 105 causes a player to play a pachinko game by using a lottery medium. The handle portion 130 is used by a player to launch a pachinko ball into the pachinko machine 105.

遊技機システムにおいて、遊技盤部120、払出部125は、それぞれ独立した基板に搭載された遊技機制御用チップ、払出制御用チップによって制御される。遊技機制御用チップは、玉の検出、抽選、入賞時の払出の通知、画像や音などの演出制御などを行う。具体的には例えば、入賞時などの玉の払出しが必要なときに払出制御用チップに対し払出命令を送信したり、遊技機に搭載される液晶画面の制御を行うときに画像制御用チップに画像制御命令を送信したりすることで遊技の制御を行う。払出制御用チップは、遊技機制御用チップが制御する処理以外である払出などの制御を行う。具体的には例えば、遊技機制御用チップからの払出命令を受けて、パチンコ玉の払い出しを行う。本発明は、それらのいずれのチップにも適用可能であり、また、データをバックアップする必要がある他の種類のチップにも適用可能である。以下においては、遊技機制御用チップを例にして説明する。   In the gaming machine system, the gaming board unit 120 and the payout unit 125 are controlled by a gaming machine control chip and a payout control chip mounted on independent boards, respectively. The gaming machine control chip performs ball detection, lottery, payout notification at the time of winning a prize, production control of images and sounds, and the like. Specifically, for example, when a ball payout is required, such as when winning a prize, a payout command is sent to the payout control chip, or when the liquid crystal screen mounted on the gaming machine is controlled, the image control chip The game is controlled by sending an image control command. The payout control chip performs control such as payout other than the processing controlled by the gaming machine control chip. Specifically, for example, a pachinko ball is paid out in response to a payout command from the gaming machine control chip. The present invention is applicable to any of those chips, and is also applicable to other types of chips that require data backup. In the following, a gaming machine control chip will be described as an example.

遊技機制御用チップの構成
図2は、遊技機制御用チップ200のブロック図である。本発明の第1の実施形態においては、遊技機制御用チップ200は、CPUコア211と、クロック回路212と、リセットモード制御回路213と、メモリ(ブートROM214、ユーザROM215、ブートRAM216、ユーザRAM217から構成される)、チェックデータ生成回路221と、セキュリティチェック回路251と、指定エリア外走行禁止(IAT)回路252と、ウォッチドッグタイマ(WDT)回路253と、固有データ格納回路254と、乱数回路255と、照合回路256と、これらを接続するバス261と、を備える。本発明の第1の実施形態におけるチェックデータ生成回路221は、チェックデータを生成する対象のデータをRAMからCPUコア211が読み出す態様の場合の構成であり、機能指示レジスタ222、RAMチェックデータ計算回路223、RAMチェック開始アドレスレジスタ224、RAMチェック終了アドレスレジスタ225、ステータスレジスタ226、計算結果格納レジスタ227から構成されるものである。機能指示レジスタ222はCPUコア211からの機能指示コマンドなどを受け付けるレジスタであり、RAMチェックデータ計算回路223はチェックサムやCRCなどのチェックデータを計算して生成する回路であり、RAMチェック開始アドレスレジスタ224はバックアップエリア402のバックアップ開始アドレスを記憶するレジスタであり、RAMチェック終了アドレスレジスタ225はバックアップエリア402のバックアップ終了アドレスを記憶するレジスタであり、ステータスレジスタ226はチェックデータ生成回路221の実行状態(初期化完了、計算中、計算完了等)を示す値が格納されるレジスタであり、計算結果格納レジスタ227は計算したチェックデータを格納するレジスタである。
Configuration of Game Machine Control Chip FIG. 2 is a block diagram of a game machine control chip 200. In the first embodiment of the present invention, the gaming machine control chip 200 includes a CPU core 211, a clock circuit 212, a reset mode control circuit 213, and memory (a boot ROM 214, a user ROM 215, a boot RAM 216, and a user RAM 217). A check data generation circuit 221, a security check circuit 251, an out-of-designated area prohibition (IAT) circuit 252, a watchdog timer (WDT) circuit 253, a unique data storage circuit 254, and a random number circuit 255. , A verification circuit 256 and a bus 261 connecting them. The check data generation circuit 221 according to the first embodiment of the present invention has a configuration in a case where the CPU core 211 reads data to be generated from the RAM from the RAM. The function instruction register 222, the RAM check data calculation circuit 223, a RAM check start address register 224, a RAM check end address register 225, a status register 226, and a calculation result storage register 227. The function instruction register 222 is a register that receives a function instruction command from the CPU core 211, and the RAM check data calculation circuit 223 is a circuit that calculates and generates check data such as a checksum and CRC, and a RAM check start address register. 224 is a register for storing the backup start address of the backup area 402, RAM check end address register 225 is a register for storing the backup end address of the backup area 402, and the status register 226 is an execution state of the check data generation circuit 221 ( The calculation result storage register 227 is a register for storing calculated check data.

本発明の第2の実施形態においては、図2において、チェックデータ生成回路221に代えてチェックデータ生成回路231を構成に有する。第2の実施形態では、チェックデータを生成する対象のデータを、CPUコアを使用せずに、RAMからチェックデータ生成回路231が読み出す。チェックデータ生成回路231は、機能指示レジスタ232、RAMチェックデータ計算回路233、RAMチェック開始アドレスレジスタ234、ステータスレジスタ236、計算結果格納レジスタ237、データポインタ241、RAMチェックバイト数カウンタ242から構成される。機能指示レジスタ232はCPUコア211からの機能指示コマンドなどを受け付けるレジスタであり、RAMチェックデータ計算回路233はチェックサムやCRCなどのチェックデータを計算して生成する回路であり、RAMチェック開始アドレスレジスタ234はバックアップエリア402の先頭アドレスを記憶するレジスタであり、ステータスレジスタ236はチェックデータ生成回路221の実行状態(初期化完了、計算中、計算完了等)を示す値が格納されるレジスタであり、計算結果格納レジスタ237は計算したチェックデータを格納するレジスタであり、データポインタ241は、チェックデータ生成回路221がユーザRAM217にアクセスする際のアドレスを保持するポインタであり、RAMチェックバイト数カウンタ242は、バックアップエリア402の範囲長を示す値を記憶するレジスタであり、好適にはチェックデータ計算の際のユーザRAM217へのアクセスの回数に応じて減算され、残ったアクセスすべき領域の範囲長を示すものである。   The second embodiment of the present invention has a check data generation circuit 231 in place of the check data generation circuit 221 in FIG. In the second embodiment, the check data generation circuit 231 reads the data for which the check data is to be generated from the RAM without using the CPU core. The check data generation circuit 231 includes a function instruction register 232, a RAM check data calculation circuit 233, a RAM check start address register 234, a status register 236, a calculation result storage register 237, a data pointer 241, and a RAM check byte number counter 242. . The function instruction register 232 is a register that receives a function instruction command from the CPU core 211, and the RAM check data calculation circuit 233 is a circuit that calculates and generates check data such as a checksum and CRC, and a RAM check start address register. 234 is a register for storing the head address of the backup area 402, and the status register 236 is a register for storing a value indicating an execution state (initialization completed, calculation in progress, calculation completed, etc.) of the check data generation circuit 221. The calculation result storage register 237 is a register for storing calculated check data, and the data pointer 241 is a pointer for holding an address when the check data generation circuit 221 accesses the user RAM 217, and the RAM check byte count is counted. The register 242 is a register for storing a value indicating the range length of the backup area 402, and is preferably subtracted according to the number of accesses to the user RAM 217 at the time of check data calculation, and the range of the remaining area to be accessed Indicates length.

以下、本発明の第1及び第2の実施形態に共通する構成の説明に戻る。CPUコア211は、メモリに記憶されたプログラムを実行する中央処理部として機能するものであり、メモリに記憶されたプログラムのフェッチ、デコード、実行を行うことにより、プログラムの目的に応じた情報処理を行う構成である。   The description returns to the configuration common to the first and second embodiments of the present invention. The CPU core 211 functions as a central processing unit that executes a program stored in the memory, and performs information processing according to the purpose of the program by fetching, decoding, and executing the program stored in the memory. It is the structure to perform.

クロック回路212は、遊技機制御用チップ200内の各要素を同期させて動作させるためのシステムクロック信号を生成する回路である。クロック回路212は、所定の基準クロックを分周し、CPUコア211や内部の各回路にシステムクロックとして供給する。   The clock circuit 212 is a circuit that generates a system clock signal for operating each element in the gaming machine control chip 200 in synchronization. The clock circuit 212 divides a predetermined reference clock and supplies it as a system clock to the CPU core 211 and internal circuits.

リセットモード制御回路213は、システムリセット端子から入力された外部システムリセット、内部システムリセット、及び内部ユーザリセットを制御する回路である。内部システムリセット及び内部ユーザリセットは、ウォッチドッグタイマタイムアウト信号又は指定エリア外走行禁止(IAT)発生信号に応じて発生させられる。システムリセットの要求がなされると、CPUコア211を含むすべての内部回路が初期化される。ユーザリセットの要求がなされるとCPUコア211と一部の内部回路が初期化される。内部システムリセットと内部ユーザリセットの動作は、プログラム管理エリア内のデータで選択して設定される。   The reset mode control circuit 213 is a circuit that controls an external system reset, an internal system reset, and an internal user reset input from the system reset terminal. The internal system reset and the internal user reset are generated in response to a watchdog timer time-out signal or an out-of-designated area running prohibition (IAT) generation signal. When a system reset request is made, all internal circuits including the CPU core 211 are initialized. When a user reset request is made, the CPU core 211 and some internal circuits are initialized. Internal system reset and internal user reset operations are selected and set by data in the program management area.

リセットモード制御回路213は、モードの制御も実行する。リセットモード制御回路213は、システムリセットの入力やPROMモードを要求する信号の入力やセキュリティチェックの結果により、遊技機制御用チップのモードをPROMモード、セキュリティモード、ユーザモードに切り替える回路である。ここで各モードについて説明する。
遊技機制御用チップは、電源投入後、システムリセット信号が入力され、PROMモード信号の入力があると、PROMモードに移行し、PROMモード信号の入力がなければ、セキュリティモードに移行する。
PROMモードは、ユーザROM215にユーザがプログラムを書き込むためのモードで、開発時に使用される開発用の遊技機制御用チップでは再書込みが可能だが、市販される遊技機に搭載される量産用の遊技機制御用チップにおいては、書き込みは一度だけ可能になっている。
セキュリティモードは、ブートROM214により実行されるモードであり、チップの初期化を行った後、遊技機制御用チップのユーザROM215内のプログラムが改ざんされていないかを判定するセキュリティチェックを行うモードである。セキュリティチェックの演算は、後述のセキュリティチェック回路251が行う。
ユーザモードは、ユーザROM215内のユーザプログラムに従い、遊技機を動作させるモードである。
The reset mode control circuit 213 also executes mode control. The reset mode control circuit 213 is a circuit for switching the mode of the gaming machine control chip between the PROM mode, the security mode, and the user mode based on the input of a system reset, the input of a signal requesting the PROM mode, and the result of the security check. Here, each mode will be described.
When the system reset signal is input after the power is turned on and the PROM mode signal is input, the gaming machine control chip shifts to the PROM mode. If the PROM mode signal is not input, the gaming machine control chip shifts to the security mode.
The PROM mode is a mode for the user to write a program to the user ROM 215. Although it can be rewritten by a development gaming machine control chip used at the time of development, it is a mass production gaming machine system mounted on a commercially available gaming machine. In the control chip, writing is possible only once.
The security mode is a mode executed by the boot ROM 214, and is a mode for performing a security check to determine whether or not the program in the user ROM 215 of the gaming machine control chip has been tampered with after the chip is initialized. The security check calculation is performed by a security check circuit 251 described later.
The user mode is a mode for operating the gaming machine according to the user program in the user ROM 215.

ブートROM214は、システムリセット時やパワーオン時などにおいて、セキュリティチェックやチップの初期化動作を実行させるためのブートプログラムを格納したROMである。セキュリティのため、セキュリティモード以外ではブートROM214はアクセスできないように制限されている。   The boot ROM 214 is a ROM that stores a boot program for executing a security check and a chip initialization operation at the time of system reset or power-on. For security, the boot ROM 214 is restricted so that it cannot be accessed except in the security mode.

ユーザROM215は、遊技機メーカが遊技機の動作を制御するための遊技制御用プログラムや遊技機制御用データなどからなるユーザプログラムを記憶させるためのROMである。   The user ROM 215 is a ROM for storing a user program including a game control program and game machine control data for the gaming machine manufacturer to control the operation of the gaming machine.

ブートRAM216は、ブートプログラムが初期化動作を実行する際に使用されるRAMである。セキュリティのため、セキュリティモード以外ではブートRAM216はアクセスできないように制限されている。   The boot RAM 216 is a RAM used when the boot program executes an initialization operation. For security reasons, the boot RAM 216 is restricted so that it cannot be accessed except in the security mode.

ユーザRAM217は、ユーザプログラムの実行時に使用するためのRAMである。ユーザRAM217の一領域に、バックアップエリア402とバックアップエリアのデータが正常に格納されているかをチェックするためのチェックデータ217bを格納するためのチェックデータ格納エリア217aが設けられている。   The user RAM 217 is a RAM for use when executing a user program. A check data storage area 217a is provided in one area of the user RAM 217 for storing the backup area 402 and check data 217b for checking whether the data in the backup area is normally stored.

セキュリティチェック回路251は、セキュリティモードにおいて、ユーザROM215内のプログラム等の情報が正規のものであるか否かを検査する回路で、ユーザROM215内のプログラムコード等にハッシュ演算等の所定の演算を行って得たコードと、プログラム管理エリア302内のセキュリティコードを比較することで、適合を受けたプログラムが改変されていないかを確認する回路である。この時、上記のプログラムに改ざんがないかを確認する行為をセキュリティチェックという。ここでセキュリティコードとは、ユーザROM215内に格納されているプログラムのコードなどにセキュリティチェック時と同様な所定の演算を行って求めた結果をあらかじめ書込んだコードである。上記セキュリティチェックの結果、演算結果のコードとセキュリティコードが一致していれば、正規のプログラムであると判断し、ユーザモードに移行する。一致しなければ、正規のプログラムではないと判断し、遊技機制御用チップ200を停止させ、遊技機を動作させない。   The security check circuit 251 is a circuit for checking whether or not the information such as the program in the user ROM 215 is authentic in the security mode, and performs a predetermined operation such as a hash operation on the program code in the user ROM 215. This circuit compares the obtained code with the security code in the program management area 302 to confirm whether the adapted program has been altered. At this time, the act of confirming whether the above program has been tampered with is called a security check. Here, the security code is a code in which a result obtained by performing a predetermined operation similar to that at the time of the security check on a code of a program stored in the user ROM 215 is written in advance. As a result of the security check, if the code of the operation result matches the security code, it is determined that the program is a legitimate program, and the user mode is entered. If they do not match, it is determined that the program is not a legitimate program, the gaming machine control chip 200 is stopped, and the gaming machine is not operated.

指定エリア外走行禁止(IAT)回路252は、ユーザプログラムがプログラム管理エリアで設定された指定エリア内で正しく実行されているかどうかを監視する回路である。指定エリア外でユーザプログラムが実行されると、IAT発生信号を出力しCPUコア211をリセットする。   The out-of-designated-area travel prohibition (IAT) circuit 252 is a circuit that monitors whether the user program is correctly executed in the designated area set in the program management area. When the user program is executed outside the designated area, an IAT generation signal is output and the CPU core 211 is reset.

ウォッチドッグタイマ(WDT)回路253は、チップの暴走を監視するタイマであり、チップからの定期的なアクセスの有無を監視しており、一定時間内にアクセスがないとチップが暴走したと判断し、タイムアウト信号によってCPUコア211にリセットの要求を発生させる回路である。前述したプログラム管理エリア302は、ユーザROM215内において、ユーザプログラムを実行するのに必要な情報を格納するエリアであるが、プログラム管理エリア302にタイムアウト時間を設定することやIAT、WDTのリセットについてシステムリセットを行うかユーザリセットを行うかの選択の設定ができる。   The watchdog timer (WDT) circuit 253 is a timer for monitoring the runaway of the chip. The watchdog timer (WDT) circuit 253 monitors the presence or absence of regular access from the chip, and determines that the chip has runaway if there is no access within a certain time. This is a circuit for causing the CPU core 211 to generate a reset request in response to a timeout signal. The above-described program management area 302 is an area for storing information necessary for executing the user program in the user ROM 215. A system for setting a timeout time in the program management area 302 and resetting the IAT and WDT is provided. It is possible to set whether to perform a reset or a user reset.

固有データ格納回路254は、複数の固有データ(ID)を格納するものであり、その中の特定の情報は、ユーザプログラム及び外部の照合機から読み取ることが可能である。   The unique data storage circuit 254 stores a plurality of unique data (ID), and specific information therein can be read from the user program and an external collator.

乱数回路255は、乱数を発生させる回路であり、例えば8ビット乱数を6チャネル、16ビット乱数を4チャネルなどで乱数を発生させることができる。発生させた乱数は、ゲームの抽選などに使用される。   The random number circuit 255 is a circuit that generates a random number. For example, the random number circuit 255 can generate a random number using 6 channels of 8-bit random numbers and 4 channels of 16-bit random numbers. The generated random number is used for game lottery and the like.

照合回路256は、外部の照合機と接続し、チップを所定の手順で照合することによってチップの真がんについてのチェックを行うための回路である。照合回路256は、固有データ格納回路254に格納された固有データを特定の条件の下で外部に出力することが可能である。   The verification circuit 256 is a circuit for connecting to an external verification machine and checking the chip for true cancer by verifying the chip in a predetermined procedure. The collation circuit 256 can output the unique data stored in the unique data storage circuit 254 to the outside under specific conditions.

バス261はCPUコア211と遊技機制御用チップ200内の他の要素とを接続するものであって、データバス、アドレスバス、制御信号線等を含むものである。   The bus 261 connects the CPU core 211 and other elements in the gaming machine control chip 200, and includes a data bus, an address bus, a control signal line, and the like.

メモリマップ
図3に、ユーザROM215のメモリマップを示す。プログラムコードエリア/プログラムデータエリア301は、示されたアドレス範囲(0000hから2FBFh)の中で自由に設定することができる。遊技機メーカ等のユーザは、遊技機のソフトウェアの開発を実行する際に、プログラムコードエリア及びプログラムデータエリアに自社の遊技機を制御するプログラムを書き込む。ユーザROM215の下位の64バイトは遊技機制御用チップ200がユーザプログラムを実行するために必要な情報を格納するプログラム管理エリア302であり、各種コード、チップ内の内部機能設定のためのデータ、不正改造を防止するための情報等を格納する。なお前述した遊技機に関する規則の制約とは、具体的にはユーザROM215の記憶容量、制御領域の容量、データ領域の容量等の制限である。上記プログラム管理エリア302はユーザプログラムからは読み出せない構造となっている。
Memory Map FIG. 3 shows a memory map of the user ROM 215. The program code area / program data area 301 can be freely set within the indicated address range (0000h to 2FBFh). A user such as a gaming machine manufacturer writes a program for controlling his / her gaming machine in the program code area and the program data area when developing software for the gaming machine. The lower 64 bytes of the user ROM 215 are a program management area 302 for storing information necessary for the gaming machine control chip 200 to execute the user program. Various codes, data for setting internal functions in the chip, illegal modification The information etc. for preventing are stored. Note that the above-mentioned rule restrictions relating to gaming machines are specifically restrictions on the storage capacity of the user ROM 215, the capacity of the control area, the capacity of the data area, and the like. The program management area 302 has a structure that cannot be read from the user program.

図4に、ユーザRAM217のメモリマップを示す。ユーザRAM217は、CPUコア211が主にユーザプログラムなどを実行する際に用いられるワークエリア401、電源断後も使用するためにバックアップするデータを記憶する所定のアドレス範囲の領域であるバックアップエリア402、バックアップエリア402に記憶されているデータのチェックデータを格納するチェックデータ格納エリア217aを含んでいる。バックアップされるデータは、CPUコア211のレジスタに保存されている情報や遊技機制御に必要な情報、遊技結果を示す情報などとすることができる。電源断時にこれらのデータをバックアップしていれば、再起動時に電源断前の状態に復帰させて遊技機を起動し、電源断の前の状態から遊技の継続を行うことができる。そしてチェックデータは、そのバックアップされるデータがバックアップ中にデータ化けなどの異常を起こしていないかどうかを確認するために使用される。ユーザRAM217は好適には電源がバッテリ、スーパーキャパシタ等によりバックアップされており、電源切断後もRAM内のデータが保持されている。   FIG. 4 shows a memory map of the user RAM 217. The user RAM 217 includes a work area 401 used when the CPU core 211 mainly executes a user program and the like, a backup area 402 that is an area of a predetermined address range for storing data to be backed up for use even after the power is turned off, A check data storage area 217 a for storing check data of data stored in the backup area 402 is included. The data to be backed up can be information stored in a register of the CPU core 211, information necessary for game machine control, information indicating a game result, or the like. If these data are backed up when the power is turned off, the game machine can be started by returning to the state before the power is turned off at the time of restart, and the game can be continued from the state before the power is turned off. The check data is used to check whether the data to be backed up has an abnormality such as data corruption during the backup. The user RAM 217 is preferably backed up by a battery, a super capacitor, or the like, and retains data in the RAM even after the power is turned off.

チェックデータ生成の開始トリガ
次に、本発明に係る遊技機制御用チップ200のチェックデータ生成の動作について説明する。バックアップエリア402内のデータのチェックデータ生成処理は所定の開始トリガによって計算が開始される。所定の開始トリガとしては、まず、電源監視回路(図示せず)が電源断を検出した場合が考えられる。遊技機制御用チップ200等の電源は、通常、AC電源を整流したDC入力をレギュレータにより5V等に変換したものが供給される。電源監視回路は、レギュレータに入るDC入力電圧を監視しており、それが例えば電源断と見なされる規定値以下になった場合には電源断が発生したと判断し、チェックデータ生成回路221に開始トリガをかける。実際の電源断時には、レギュレータへの入力電圧は迅速に降下するが、それが電源断と見なされる規定値以下からレギュレータが5Vを出力できるための最低電圧に降下するまではレギュレータは5Vの電圧を遊技機制御用チップ200に供給できるため、遊技機制御用チップ200が動作不能になるまでには電源断から短時間ではあるが時間的余裕がある。この時間的余裕の間にチェックデータを生成させると好適である。開始トリガは、例えばノンマスカブルな割り込み(NMI)信号等をCPUコア211に伝達することなどによってユーザプログラムにより行うことができる。CPUコア211は、プログラム実行によりチェックデータ生成の開始を指示する機能指示コマンドをチェックデータ生成回路221の機能指示レジスタ222に送ることによって、チェックデータの生成を開始させる。また、所定の信号をCPU211を介さず直接チェックデータ生成回路221に送ることによって、チェックデータ生成を開始させることも可能である。
上述のNMI信号とは割込み禁止にできない最優先の割込み処理を起動する一般のCPUコアには実装されている信号であるが、電源断の検出信号をCPUコア周辺からのI/Oポート等の入力信号に割付けてタイマー割込み等の常時実行するプログラムで監視し、電源断信号を検出すると割込み禁止の最優先の処理としてパワーダウン時のバックアップ処理を行うこともできる。
Check Data Generation Start Trigger Next, the check data generation operation of the gaming machine control chip 200 according to the present invention will be described. The check data generation processing for the data in the backup area 402 is started by a predetermined start trigger. As the predetermined start trigger, first, a case where a power supply monitoring circuit (not shown) detects a power-off is considered. The power source for the gaming machine control chip 200 or the like is usually supplied by converting a DC input obtained by rectifying an AC power source to 5 V or the like by a regulator. The power supply monitoring circuit monitors the DC input voltage that enters the regulator. If the voltage drops below a specified value that is considered to be, for example, a power failure, the power monitoring circuit determines that a power failure has occurred and starts the check data generation circuit 221. Apply a trigger. When the power is actually turned off, the input voltage to the regulator drops quickly, but the regulator keeps the voltage of 5V until it drops below the specified value that is considered to be a power cut to the lowest voltage that the regulator can output. Since the gaming machine control chip 200 can be supplied to the gaming machine control chip 200, there is a time margin from the power-off until the gaming machine control chip 200 becomes inoperable. It is preferable to generate check data during this time margin. The start trigger can be performed by a user program by transmitting a non-maskable interrupt (NMI) signal or the like to the CPU core 211, for example. The CPU core 211 starts generation of check data by sending a function instruction command for instructing start of check data generation to the function instruction register 222 of the check data generation circuit 221 by executing a program. It is also possible to start generating check data by sending a predetermined signal directly to the check data generating circuit 221 without passing through the CPU 211.
The above-mentioned NMI signal is a signal mounted on a general CPU core that activates the highest-priority interrupt processing that cannot be interrupt prohibited, but a power-off detection signal is sent to an I / O port or the like from the CPU core periphery. Monitoring with a program that is always executed such as timer interrupt assigned to an input signal, and when a power-off signal is detected, backup processing during power-down can be performed as the highest priority processing for interrupt inhibition.

他の開始トリガとしては、例えば、ユーザプログラムの指示によって、必要なときに、CPUコア211がチェックデータ生成の開始を指示する機能指示コマンドをチェックデータ生成回路221の機能指示レジスタ222に送ることによって、チェックデータの生成を開始させるように構成することも可能である。この場合、通信データの送受信のチェックデータの生成などの、電源断時のデータ保持の正確性の確認以外の目的で、チェックデータを動的にユーザプログラムで使用することが可能となる。   As another start trigger, for example, the CPU core 211 sends a function instruction command for instructing start of check data generation to the function instruction register 222 of the check data generation circuit 221 when necessary according to an instruction of the user program. It is also possible to configure to start generating check data. In this case, the check data can be dynamically used in the user program for purposes other than confirmation of data retention accuracy when the power is turned off, such as generation of check data for transmission / reception of communication data.

他の開始トリガとしては、例えば、チェックデータ生成回路221がCPUコア211のユーザRAM217への書込みなどのメモリアクセスを監視しており、バックアップエリア402の読出し終了アドレスであるチェックデータ計算終了アドレス402bに書込みが行われた場合に、バックアップエリア402全体のデータの更新が完了したものと判断して、チェックデータ生成回路221がチェックデータの生成を開始するようにすることもできる。このようにすることによって、更新されたデータに対して最新のチェックデータを即時生成することが可能となる。   As another start trigger, for example, the check data generation circuit 221 monitors memory access such as writing to the user RAM 217 of the CPU core 211, and the check data calculation end address 402b, which is the read end address of the backup area 402, is displayed. When writing is performed, it can be determined that the update of the data in the entire backup area 402 has been completed, and the check data generation circuit 221 can start generating check data. By doing so, it is possible to immediately generate the latest check data for the updated data.

パワーダウン時の動作
図5は遊技機制御用チップ200のパワーダウン時の動作フロー図である。電源監視回路が電源断(パワーダウン)を検出すると、NMI信号等をCPUコア211及び/又はチェックデータ生成回路221に伝達する。これに応じてチェックデータ生成回路221がバックアップエリアのデータのチェックデータの計算を実行する(ステップS501)。なお、チェックデータの計算の詳細な動作フローは後述する。チェックデータの計算が終了すると、チェックデータ生成回路221が計算したチェックデータをチェックデータ格納エリア217aに書き込む(ステップS502)。なお、チェックデータ格納エリア217aを、ユーザRAM217の一領域に代えて、チェックデータ生成回路221内のレジスタなどとすることも可能である。
Operation Figure 5 during power-down is an operation flowchart of the power-down the gaming machine control chip 200. When the power monitoring circuit detects a power-off (power-down), it transmits an NMI signal or the like to the CPU core 211 and / or the check data generation circuit 221. In response to this, the check data generation circuit 221 calculates check data of the backup area data (step S501). The detailed operation flow for calculating check data will be described later. When the check data calculation is completed, the check data calculated by the check data generation circuit 221 is written in the check data storage area 217a (step S502). The check data storage area 217a may be a register in the check data generation circuit 221 instead of one area of the user RAM 217.

パワーオン時の動作
図6は、遊技機制御用チップのパワーオン時の動作フロー図である。遊技機制御用チップ200がパワーオンすると、以前に計算されて保存されていたチェックデータ217bを読み出す(ステップS601)。読み出しはCPUコア211によって行われてもよく、チェックデータ生成回路221によって行われてもよい。次に、チェックデータ生成回路221は、ステップS501と同様の動作でバックアップエリアのデータのチェックデータを計算する(ステップS602)。なお、ステップS602の後にステップS601を実行することもできる。次にCPUコア211は、ステップS601で読み出した以前のチェックデータ217bと、パワーオン直後にステップS602で計算されたチェックデータとを比較する(ステップS603)。それらの2つのチェックデータが同じであれば、バックアップエリアに保存されていたデータには異常がないことが確認されたことになる。その場合、ステップS604に移行し、バックアップエリアに保存されていたデータやワークに基づいて、電源断時に実行していた状態に復帰する処理を行う。一方、それらの2つのチェックデータが異なっていれば、バックアップエリアに保存されていたデータに異常があり、データ化けを起こしているということになる。従って、RAMのワークエリア401などを初期状態に戻す処理を行う(ステップS605)。
Operation at power-on FIG. 6 is an operation flow diagram at power-on of the gaming machine control chip. When the gaming machine control chip 200 is powered on, the check data 217b previously calculated and stored is read (step S601). Reading may be performed by the CPU core 211 or the check data generation circuit 221. Next, the check data generation circuit 221 calculates the check data of the backup area data by the same operation as step S501 (step S602). Note that step S601 may be executed after step S602. Next, the CPU core 211 compares the previous check data 217b read in step S601 with the check data calculated in step S602 immediately after power-on (step S603). If the two check data are the same, it is confirmed that there is no abnormality in the data stored in the backup area. In that case, the process moves to step S604, and a process of returning to the state executed when the power is turned off is performed based on the data and work stored in the backup area. On the other hand, if the two check data are different from each other, it means that the data stored in the backup area is abnormal and garbled. Accordingly, the RAM work area 401 and the like are returned to the initial state (step S605).

チェックデータ生成の詳細動作フロー(第1の実施形態:CPU読み出し)
次に、ステップS501やステップS602で実行されるチェックデータ生成の詳細な動作フローを説明する。図7は、本発明の第1の実施形態に係る、CPUコア211とチェックデータ生成回路221が協働してチェックデータを生成する場合の動作フロー図である。第1の実施形態は、チェックデータ生成対象のバックアップエリア402のデータをCPUコア211がプログラムに従って順番に読出し、その時にデータバスに現れるデータをチェックデータ生成回路221が取得してチェックデータを生成するものである。第1の実施形態では、チェックデータ生成の際にチェックデータ生成回路221自体がRAMのバックアップエリア402のアドレス指定をする必要がなくアドレスバスを監視しながら順次データバスに現れるRAMデータについて積算処理すれば良いため、チェックデータ生成回路221の回路の構成を単純にできると共にCPUによる演算処理を行わないためチェックデータの生成が高速に行われる。
Detailed operation flow of check data generation (first embodiment: CPU read)
Next, a detailed operation flow of check data generation executed in step S501 and step S602 will be described. FIG. 7 is an operation flowchart when the CPU core 211 and the check data generation circuit 221 cooperate to generate check data according to the first embodiment of the present invention. In the first embodiment, the CPU core 211 sequentially reads the data in the backup area 402 that is the check data generation target according to the program, and the check data generation circuit 221 acquires the data that appears on the data bus at that time to generate the check data. Is. In the first embodiment, when the check data is generated, the check data generation circuit 221 itself does not need to specify the address of the RAM backup area 402, and the RAM data sequentially appearing on the data bus is monitored while monitoring the address bus. Therefore, the circuit configuration of the check data generation circuit 221 can be simplified, and the calculation processing by the CPU is not performed, so that the check data is generated at high speed.

まず、チェックデータを生成できるようにするための準備を実行する。パワーオン時に、チェックデータ生成回路221の初期化を実行する(ステップS701)。初期化は、CPU211がブートROM214に記憶されたブートプログラムに従って実行すると好適であるが、CPU211がユーザROM215に記憶されたユーザプログラムに従って実行することも可能である。また、初期化の一部あるいは全部をチェックデータ生成回路221がCPU211に代わって実行してもよい。チェックデータ生成回路221の初期化では、RAMチェック開始アドレスレジスタ224にバックアップエリア402の読出し開始アドレスであるチェックデータ計算開始アドレス402aを記憶させ、RAMチェック終了アドレスレジスタ225にバックアップエリア402の読出し終了アドレスであるチェックデータ計算終了アドレス402bを記憶させる。ここで、通常は、チェックデータ計算開始アドレス402aの値よりチェックデータ計算終了アドレス402bの値の方が大きく、チェックデータの生成時に、チェックデータ計算開始アドレス402aからチェックデータ計算終了アドレス402bへとアドレスをインクリメントしながらCPUコア211のデータの読出しがなされることによりチェックデータの生成が行われる。しかし、チェックデータ計算開始アドレス402aの値よりチェックデータ計算終了アドレス402bの値の方が小さく、チェックデータの生成時に、チェックデータ計算開始アドレス402aからチェックデータ計算終了アドレス402bへとアドレスをデクリメントしながらCPUコア211のデータの読出しを行うことによりチェックデータの生成が行われるようにすることもできる。また、RAMチェック開始アドレスレジスタ224及びRAMチェック終了アドレスレジスタ225に記憶されるデータは、バックアップエリア402の範囲を特定することができる情報であればよく、例えば、チェックデータ計算開始アドレス402a(アドレス値としての読出し開始アドレス特定情報)と、チェックデータ計算開始アドレス402aからチェックデータ計算終了アドレス402bまでの範囲長(アドレスを特定することができる情報としての読出し終了アドレス特定情報)の2つの種類のデータを使用することも可能である。初期化完了後、チェックデータ生成回路221がステータスレジスタ226に初期化完了を示す値を格納するように構成すると好適である。   First, preparation is performed so that check data can be generated. At power-on, initialization of the check data generation circuit 221 is executed (step S701). The initialization is preferably performed by the CPU 211 in accordance with a boot program stored in the boot ROM 214, but the CPU 211 may be performed in accordance with a user program stored in the user ROM 215. The check data generation circuit 221 may execute part or all of the initialization instead of the CPU 211. In the initialization of the check data generation circuit 221, the RAM check start address register 224 stores the check data calculation start address 402a that is the read start address of the backup area 402, and the RAM check end address register 225 stores the read end address of the backup area 402. The check data calculation end address 402b is stored. Here, normally, the value of the check data calculation end address 402b is larger than the value of the check data calculation start address 402a, and the address from the check data calculation start address 402a to the check data calculation end address 402b is generated when the check data is generated. The check data is generated by reading the data of the CPU core 211 while incrementing. However, the value of the check data calculation end address 402b is smaller than the value of the check data calculation start address 402a, and the address is decremented from the check data calculation start address 402a to the check data calculation end address 402b when generating check data. It is also possible to generate check data by reading data from the CPU core 211. The data stored in the RAM check start address register 224 and the RAM check end address register 225 may be information that can specify the range of the backup area 402. For example, the check data calculation start address 402a (address value) Read start address specifying information) and a range length from the check data calculation start address 402a to the check data calculation end address 402b (read end address specifying information as information that can specify an address). Can also be used. It is preferable to configure the check data generation circuit 221 to store a value indicating the completion of initialization in the status register 226 after the initialization is completed.

ユーザプログラムに従ってCPU211がチェックデータ生成回路221の初期化を実行する場合、ユーザプログラム中のデータなどに従って、RAMチェック開始アドレスレジスタ224及びRAMチェック終了アドレスレジスタ225に適切な値が設定される。この場合は、ユーザプログラムが柔軟にそれらのアドレスを設定することが可能である。   When the CPU 211 executes initialization of the check data generation circuit 221 according to the user program, appropriate values are set in the RAM check start address register 224 and the RAM check end address register 225 according to data in the user program. In this case, the user program can flexibly set these addresses.

ブートプログラムに従ってCPU211がチェックデータ生成回路221の初期化を実行する場合、ユーザROM215あるいはブートROM214に記憶されたデータを使用して、RAMチェック開始アドレスレジスタ224及びRAMチェック終了アドレスレジスタ225に適切な値が設定される。この場合、ユーザROM215のプログラム管理エリア302に、それらのデータを記憶させておくことができる。この場合は、プログラム管理エリア302はユーザプログラムからアクセスできないため、セキュリティを保ちつつ、簡便にそれらのデータを管理することが可能である。   When the CPU 211 executes initialization of the check data generation circuit 221 in accordance with the boot program, appropriate values are stored in the RAM check start address register 224 and the RAM check end address register 225 using the data stored in the user ROM 215 or the boot ROM 214. Is set. In this case, those data can be stored in the program management area 302 of the user ROM 215. In this case, since the program management area 302 cannot be accessed from the user program, it is possible to easily manage the data while maintaining security.

初期化の一部あるいは全部をチェックデータ生成回路221が実行する場合には、CPUコア211から初期化開始コマンドを機能レジスタ222に書き込んで初期化開始の指示を行うようにするとよい。   When the check data generation circuit 221 executes part or all of the initialization, it is preferable to write an initialization start command from the CPU core 211 to the function register 222 to instruct the start of initialization.

次に、パワーダウン時などにチェックデータを生成する際の動作の説明をする。パワーダウンを検出した電源監視回路がNMI信号等をCPUコア211に入力し、それを開始トリガとしてチェックデータの生成を開始させる。開始トリガとしては、前述のように、ユーザプログラムからの指示やCPUコア211の所定のアドレスのアクセスなどを使用することもできる。   Next, an operation for generating check data at the time of power-down will be described. The power supply monitoring circuit that has detected the power down inputs an NMI signal or the like to the CPU core 211, and uses it as a start trigger to start generating check data. As the start trigger, as described above, an instruction from the user program, access to a predetermined address of the CPU core 211, or the like can also be used.

CPUコア211は、NMI信号等によってユーザプログラムなどのチェックデータ作成のルーチンの実行を開始し、以下に説明する処理を行う。CPUコア211は、バックアップすべきデータを作成あるいは更新し、それをバックアップエリア402に保存する(ステップS751)。バックアップすべきデータとしては、遊技の進行状況、抽選や入賞に関するデータなどの、電源断にも関わらず遊技機が引き継ぐべき遊技情報などが挙げられる。なお、CPUコア211は、ユーザプログラムによる通常動作時に適宜バックアップすべきデータの作成、保存、更新などを周期的に行うようにすることもできる。そのような場合には、ステップS751を省略することも可能である。次に、CPUコア211は、機能指示レジスタ222にチェックデータの生成を指示するコマンドを書き込む(ステップS752)。このコマンドを検知したチェックデータ生成回路221は、計算結果格納レジスタ227に格納された計算結果を初期化し、CPUが読み出すデータを取得するため、データバスの監視を開始する。チェックデータ生成回路221は、ステータスレジスタ226に計算中を示す値を格納する。CPUコア211は、バックアップエリア402のデータ計算開始アドレス402a及びチェックデータ計算終了アドレス402bの値を取得して、それらをループの開始アドレス及び終了アドレスとして機能するように設定する(ステップS753)。それらの値は、RAMチェック開始アドレスレジスタ224及びRAMチェック終了アドレスレジスタ225から取得しても良い。   The CPU core 211 starts execution of a check data creation routine such as a user program by an NMI signal or the like, and performs processing described below. The CPU core 211 creates or updates data to be backed up and stores it in the backup area 402 (step S751). The data to be backed up includes game information that should be taken over by the gaming machine regardless of the power interruption, such as game progress status, lottery and winning data. Note that the CPU core 211 can periodically create, save, and update data to be backed up as appropriate during normal operation by the user program. In such a case, step S751 can be omitted. Next, the CPU core 211 writes a command for instructing generation of check data in the function instruction register 222 (step S752). The check data generation circuit 221 that has detected this command initializes the calculation result stored in the calculation result storage register 227, and starts monitoring the data bus in order to acquire data to be read by the CPU. The check data generation circuit 221 stores a value indicating that calculation is in progress in the status register 226. The CPU core 211 acquires the values of the data calculation start address 402a and the check data calculation end address 402b of the backup area 402 and sets them to function as the start address and end address of the loop (step S753). These values may be obtained from the RAM check start address register 224 and the RAM check end address register 225.

次に、CPUコア211がチェックデータ計算開始アドレス402aからチェックデータ計算終了アドレス402bまでのバックアップエリア402内のデータを順次読み出すと(ステップS754)同時に、チェックデータ生成回路221が読み出し時にデータバスに現れたデータを取得し、それに基づいてRAMチェックデータ計算回路223がチェックデータ生成のための演算回路を使用してチェックデータを積算していく。好適には、チェックデータ生成回路221はアドレスバスを監視しており、CPUコア211がバックアップエリア402内のアドレスにアクセスしているタイミングでデータバスに現れたデータを取得する。チェックデータはチェックサムや生成多項式を使用したCRCなどとすることができ、また、機能指示レジスタ222にコマンドを入力することにより、いずれかに切り替えることも可能である。   Next, when the CPU core 211 sequentially reads data in the backup area 402 from the check data calculation start address 402a to the check data calculation end address 402b (step S754), the check data generation circuit 221 appears on the data bus at the same time as reading. Based on this data, the RAM check data calculation circuit 223 accumulates check data using an arithmetic circuit for generating check data. Preferably, the check data generation circuit 221 monitors the address bus, and acquires data appearing on the data bus at the timing when the CPU core 211 is accessing an address in the backup area 402. The check data can be a checksum, a CRC using a generator polynomial, or the like, and can be switched to any one by inputting a command to the function instruction register 222.

CPUコア211によってチェックデータ計算終了アドレス402bまでのデータ読み出しが完了し、チェックデータ生成回路221によるチェックデータの生成が完了すると、チェックデータ生成回路221は生成したチェックデータを計算結果格納レジスタ227に格納すると共に、ステータスレジスタ226に計算完了を示す値を格納する。CPUコア211は、ステータスレジスタ226の値を参照して、チェックデータの計算が完了したことを確認すると、計算結果格納レジスタ227より計算結果であるチェックデータを読出してチェックデータ格納エリア217aに記憶させる(ステップS755)。   When the CPU core 211 completes the data reading up to the check data calculation end address 402b and the check data generation circuit 221 completes the generation of the check data, the check data generation circuit 221 stores the generated check data in the calculation result storage register 227. At the same time, a value indicating completion of calculation is stored in the status register 226. When the CPU core 211 refers to the value of the status register 226 and confirms that the calculation of the check data is completed, the CPU core 211 reads the check data as the calculation result from the calculation result storage register 227 and stores it in the check data storage area 217a. (Step S755).

チェックデータ格納エリア217aは、バックアップエリア402とともにバッテリバックアップされており、電源断後も記憶した値を保持し続ける。なお、小さい方のアドレスであるチェックデータ計算開始アドレス402aから大きい方のアドレスであるチェックデータ計算終了アドレス402bに向かって読み出しを実行することに代えて、その逆順に読み出しを実行するようにしてもよい。
上述の例でチェックデータの書込みはチェックデータ生成回路221で計算された結果を計算結果格納レジスタ227からCPUコア211が読出してチェックデータ格納エリア217aに書込んでいるが、チェックデータ格納エリア217aがチェックデータ計算終了アドレス402bに隣接したアドレス(または、任意のアドレス関係にあるアドレス)に置かれる場合は、チェックデータ生成回路221がサイクルスチールで計算結果をチェックデータ格納エリア217aに書込む構成としてもよい。
The check data storage area 217a is backed up by the battery together with the backup area 402, and keeps the stored value even after the power is turned off. In addition, instead of executing reading from the check data calculation start address 402a, which is the smaller address, toward the check data calculation end address 402b, which is the larger address, reading may be performed in the reverse order. Good.
In the above example, the check data is written by the CPU core 211 reading the result calculated by the check data generation circuit 221 from the calculation result storage register 227 and writing it in the check data storage area 217a. When the check data generation end address 402b is placed at an address (or an address having an arbitrary address relationship), the check data generation circuit 221 may write the calculation result in the check data storage area 217a by cycle steal. Good.

上述の例ではCPUコア211の読み出したデータバス上のデータをチェックデータ生成回路221が取得してチェックデータを生成したが、チェックデータ生成回路221が計算対象のデータを取得するためには、データバス上にバックアップエリア402内のデータが順次現れればいいため、CPUコア211が一旦別エリアに編集したバックアップデータをバックアップエリア402内に順次連続して書き込むときに、チェックデータ生成回路221がその値を取得するようにしてもよい。
チェックデータ生成回路221の実行状態(初期化済み、計算中、計算完了等)はCPUコア211よりステータスレジスタ226から読出し可能であり、プログラムはこのステータスレジスタ226をモニタすることによりチェックデータ生成回路221の状態を読取ることができる。なお、チェックデータ生成回路221がCPU211にチェックデータ生成の完了を伝える方法としては、CPU211に割込みをかけ、割込みプログラムを起動する方法もある。これにより、チェックデータ生成が完了すると、CPU211は後続の処理を割込みプログラムによって直ちに実行することができる。
In the above example, the check data generation circuit 221 acquires the data on the data bus read by the CPU core 211 and generates the check data. However, in order for the check data generation circuit 221 to acquire the calculation target data, the data Since the data in the backup area 402 only needs to appear sequentially on the bus, when the backup data once edited by the CPU core 211 is sequentially written in the backup area 402 successively, the check data generation circuit 221 determines the value. May be obtained.
The execution state (initialized, being calculated, calculation completed, etc.) of the check data generation circuit 221 can be read from the status register 226 by the CPU core 211, and the program monitors the status register 226 to check the check data generation circuit 221. Can be read. As a method for the check data generation circuit 221 to notify the CPU 211 of the completion of check data generation, there is a method in which the CPU 211 is interrupted and an interrupt program is started. Thereby, when the check data generation is completed, the CPU 211 can immediately execute the subsequent processing by the interrupt program.

チェックデータ生成の詳細動作フロー(第2の実施形態:回路読み出し)
次に、本発明の第2の実施形態に係る、CPUコア211を使用せずに、チェックデータ生成回路231がチェックデータを生成する場合の説明をする。図8の動作フロー図を参照する。第2の実施形態は、チェックデータ生成対象のバックアップエリア402のデータをチェックデータ生成回路231が取得してチェックデータを生成するものである。チェックデータ生成回路231もメモリにアクセスするため、CPUコア211がメモリにアクセスをしていないときにチェックデータ生成回路221がメモリにアクセスする、サイクルスチールを用いると好適である。第2の実施形態では、チェックデータ生成の際にチェックデータ生成回路231自体がRAMのバックアップエリア402のアドレス指定をする必要があるため、チェックデータ生成回路231の回路の構成はやや複雑になるが、一旦、チェックデータの生成が開始されると、CPUコア211の動作を妨げることなく、CPUコア211のプログラムの実行状態にかかわらず高速で確実にチェックデータを生成することができる。サイクルスチールの動作ではCPUのプログラムリード等の内部処理を介さないためチェックデータの生成がより高速に処理される。
Detailed operation flow of check data generation (second embodiment: circuit reading)
Next, a case where the check data generation circuit 231 generates check data without using the CPU core 211 according to the second embodiment of the present invention will be described. Reference is made to the operational flow diagram of FIG. In the second embodiment, the check data generation circuit 231 acquires the data of the backup area 402 that is the check data generation target, and generates check data. Since the check data generation circuit 231 also accesses the memory, it is preferable to use cycle stealing in which the check data generation circuit 221 accesses the memory when the CPU core 211 is not accessing the memory. In the second embodiment, when the check data is generated, the check data generation circuit 231 itself needs to specify the address of the RAM backup area 402. Therefore, the circuit configuration of the check data generation circuit 231 is slightly complicated. Once the generation of the check data is started, the check data can be generated reliably at high speed regardless of the execution state of the program of the CPU core 211 without interfering with the operation of the CPU core 211. In the operation of cycle steal, the generation of check data is processed at higher speed because it does not involve internal processing such as CPU program read.

まず、チェックデータを生成できるようにするための準備を実行する。パワーオン時に、チェックデータ生成回路231の初期化を実行する(ステップS801)。初期化は、CPU211がブートROM214に記憶されたブートプログラムに従って実行すると好適であるが、CPU211がユーザROM215に記憶されたユーザプログラムに従って実行することも可能である。また、初期化の一部あるいは全部をチェックデータ生成回路231がCPU211に代わって実行してもよい。チェックデータ生成回路231の初期化では、RAMチェック開始アドレスレジスタ234にバックアップエリア402の読出し開始アドレスであるチェックデータ計算開始アドレス402aを記憶させ、RAMチェックバイト数カウンタ242に、バックアップエリア402の読出し開始アドレスから読出し終了アドレスまでの範囲長を示す値を記憶させる。ここで、通常は、チェックデータ計算開始アドレス402aの値よりアドレスをインクリメントしながらデータの読出しがなされる。しかし、チェックデータ計算開始アドレス402aの値よりアドレスをデクリメントしながらデータの読出しを行うようにすることもできる。初期化完了後、ステータスレジスタ236に初期化完了を示す値を格納するように構成すると好適である。   First, preparation is performed so that check data can be generated. At power-on, initialization of the check data generation circuit 231 is executed (step S801). The initialization is preferably performed by the CPU 211 in accordance with a boot program stored in the boot ROM 214, but the CPU 211 may be performed in accordance with a user program stored in the user ROM 215. In addition, the check data generation circuit 231 may execute part or all of the initialization instead of the CPU 211. In the initialization of the check data generation circuit 231, the check data calculation start address 402a that is the read start address of the backup area 402 is stored in the RAM check start address register 234, and the read start of the backup area 402 is started in the RAM check byte number counter 242. A value indicating the range length from the address to the read end address is stored. Here, data is normally read while incrementing the address from the value of the check data calculation start address 402a. However, it is also possible to read data while decrementing the address from the value of the check data calculation start address 402a. It is preferable that a value indicating completion of initialization is stored in the status register 236 after completion of initialization.

ユーザプログラムに従ってCPU211がチェックデータ生成回路231の初期化を実行する場合、ユーザプログラム中のデータなどに従って、RAMチェック開始アドレスレジスタ234及びRAMチェックバイト数カウンタ242に適切な値が設定される。この場合は、ユーザプログラムが柔軟にそれらの値を設定することが可能である。   When the CPU 211 executes initialization of the check data generation circuit 231 according to the user program, appropriate values are set in the RAM check start address register 234 and the RAM check byte number counter 242 according to the data in the user program. In this case, the user program can set those values flexibly.

ブートプログラムに従ってCPU211がチェックデータ生成回路231の初期化を実行する場合、ユーザROM215あるいはブートROM214に記憶されたデータを使用して、RAMチェック開始アドレスレジスタ234及びRAMチェックバイト数カウンタ242に適切な値が設定される。この場合、ユーザROM215のプログラム管理エリア302に、それらのデータを記憶させておくことができる。この場合は、プログラム管理エリア302はユーザプログラムからアクセスできないため、セキュリティを保ちつつ、簡便にそれらのデータを管理することが可能である。   When the CPU 211 executes initialization of the check data generation circuit 231 in accordance with the boot program, appropriate values are stored in the RAM check start address register 234 and the RAM check byte number counter 242 using the data stored in the user ROM 215 or the boot ROM 214. Is set. In this case, those data can be stored in the program management area 302 of the user ROM 215. In this case, since the program management area 302 cannot be accessed from the user program, it is possible to easily manage the data while maintaining security.

次に、パワーダウン時などにチェックデータを生成する際の動作の説明をする。開始トリガとしては、パワーダウンに加え、前述のように、ユーザプログラムからの指示やCPUコア211の所定のアドレスのアクセスなどを使用することもできる。好適には、電源監視回路がNMI信号等をCPUコア211に入力し、バックアップデータの準備をさせる。   Next, an operation for generating check data at the time of power-down will be described. As a start trigger, in addition to power down, as described above, an instruction from a user program, an access to a predetermined address of the CPU core 211, or the like can be used. Preferably, the power supply monitoring circuit inputs an NMI signal or the like to the CPU core 211 to prepare backup data.

CPUコア211は、NMI信号等によってユーザプログラムなどのバックアップデータ作成のルーチンの実行を開始し、以下に説明する処理を行う。CPUコア211は、バックアップすべきデータを作成あるいは更新し、それをバックアップエリア402に保存する(ステップS851)。バックアップすべきデータとしては、遊技の進行状況、抽選や入賞に関するデータなどの、電源断にも関わらず遊技機が引き継ぐべき遊技情報などが挙げられる。なお、CPUコア211は、ユーザプログラムによる通常動作時に適宜バックアップすべきデータの作成、保存、更新などを周期的に行うようにすることもできる。そのような場合には、ステップS851を省略することも可能である。次に、CPUコア211は、機能指示レジスタ232にチェックデータの生成を指示するコマンドを書き込む(ステップS852)。このコマンドを検知したチェックデータ生成回路231は、計算結果格納レジスタ227に格納された計算結果を初期化した後、CPUコア211がメモリリード信号あるいはメモリライト信号を出していないタイミングで、バックアップエリア402内のデータを順次読み出し、それに基づいてRAMチェックデータ計算回路234がチェックデータを生成する。チェックデータ生成回路231は、ステータスレジスタ236に計算中を示す値を格納する。   The CPU core 211 starts execution of a backup data creation routine such as a user program by an NMI signal or the like, and performs processing described below. The CPU core 211 creates or updates data to be backed up and stores it in the backup area 402 (step S851). The data to be backed up includes game information that should be taken over by the gaming machine regardless of the power interruption, such as game progress status, lottery and winning data. Note that the CPU core 211 can periodically create, save, and update data to be backed up as appropriate during normal operation by the user program. In such a case, step S851 can be omitted. Next, the CPU core 211 writes a command for instructing generation of check data in the function instruction register 232 (step S852). The check data generation circuit 231 that has detected this command initializes the calculation result stored in the calculation result storage register 227, and then at the timing when the CPU core 211 does not output the memory read signal or memory write signal. The RAM check data calculation circuit 234 generates check data based on the data sequentially read out. The check data generation circuit 231 stores a value indicating that calculation is in progress in the status register 236.

具体的な動作としては、まず、チェックデータ生成回路231はRAMチェック開始アドレスレジスタ234に記憶されたデータ計算開始アドレス402aの値を、チェックデータ生成回路231がメモリにアクセスする際のアドレスを保持するデータポインタ241に設定する。チェックデータ生成回路231は、データポインタ241に設定されたバックアップエリア402内のアドレスにあるデータを読み出し、RAMチェックデータ計算回路234がチェックデータ生成のための演算回路で、その時までに読み出したデータに対するチェックデータを生成する。次にRAMチェックバイト数カウンタ242の値が1つ減じられ、それがゼロでなければ、データポインタ241の値をインクリメントする。そして新しいデータポインタ241の値に基づいて、前述のデータ読み出し及びチェックデータの生成に戻って処理を継続する。一方、RAMチェックバイト数カウンタ242の値が1つ減じたときにその値がゼロになれば、バックアップエリア402内のすべてのデータに対するチェックデータの生成が完了したと判断し、このステップを終了する。   As a specific operation, first, the check data generation circuit 231 holds the value of the data calculation start address 402a stored in the RAM check start address register 234 and the address when the check data generation circuit 231 accesses the memory. Set to data pointer 241. The check data generation circuit 231 reads data at the address in the backup area 402 set in the data pointer 241, and the RAM check data calculation circuit 234 is an arithmetic circuit for generating check data. Generate check data. Next, the value of the RAM check byte number counter 242 is decremented by 1. If it is not zero, the value of the data pointer 241 is incremented. Based on the value of the new data pointer 241, the process returns to the above-described data reading and check data generation, and the processing is continued. On the other hand, if the value of the RAM check byte counter 242 is decremented by one and the value becomes zero, it is determined that the generation of check data for all data in the backup area 402 is completed, and this step is ended. .

この例は、小さいアドレスから大きいアドレスに向かって読み出す場合の処理であるが、大きいアドレスから小さいアドレスに向かって読み出す方場合は、データポインタ241(読み出しアドレス)をインクリメントしてチェックデータを計算することに代えて、データポインタ241(読み出しアドレス)をデクリメントしてチェックデータを計算する。なお、チェックデータはチェックサムや生成多項式を使用したCRCなどとすることができ、また、機能指示レジスタ232にコマンドを入力することにより、いずれかに切り替えることも可能である。チェックデータ生成回路231によるチェックデータの生成が完了すると、チェックデータ生成回路231は生成したチェックデータを計算結果格納レジスタ237に格納すると共に、ステータスレジスタ236に計算完了を示す値を格納する。CPUコア211は、ステータスレジスタ236の値を参照して、チェックデータの計算が完了したことを確認すると、計算結果格納レジスタ227より計算結果であるチェックデータを読み出してチェックデータ格納エリア217aに記憶させる(ステップS854)。チェックデータ格納エリア217aは、バックアップエリア402とともにバッテリバックアップされており、電源断後も記憶した値を保持し続ける。またチェックデータはチェックデータ生成回路231によりCPUコア211を介さず直接チェックデータ格納エリア217aに格納するように構成しても良い。   This example is processing when reading from a small address toward a large address, but when reading from a large address toward a small address, the check data is calculated by incrementing the data pointer 241 (reading address). Instead, the data pointer 241 (read address) is decremented to calculate check data. The check data can be a checksum or a CRC using a generator polynomial, and can be switched to any one by inputting a command to the function instruction register 232. When the generation of check data by the check data generation circuit 231 is completed, the check data generation circuit 231 stores the generated check data in the calculation result storage register 237 and also stores a value indicating the completion of calculation in the status register 236. When the CPU core 211 refers to the value of the status register 236 and confirms that the calculation of the check data is completed, the CPU core 211 reads the check data as the calculation result from the calculation result storage register 227 and stores it in the check data storage area 217a. (Step S854). The check data storage area 217a is backed up by the battery together with the backup area 402, and keeps the stored value even after the power is turned off. The check data may be directly stored in the check data storage area 217a by the check data generation circuit 231 without using the CPU core 211.

上述の実施例ではデータポインタ241にRAMチェック開始アドレスレジスタ234に記憶された開始アドレスからRAMチェックバイト数カウンタ242に記憶されたカウンタ数に至るまでデータポインタをインクリメント又はデクリメントしその都度カウンタを減算しそれがゼロになるまで処理を行ったが、RAMチェックバイト数カウンタ242の代わりにRAMチェック開始アドレスとデータポインタをインクリメント又はデクリメントの都度比較し一致したら終了するという構成にしても良い。   In the above-described embodiment, the data pointer is incremented or decremented from the start address stored in the RAM check start address register 234 to the number of counters stored in the RAM check byte number counter 242, and the counter is subtracted each time. The processing is performed until it becomes zero, but instead of the RAM check byte number counter 242, the RAM check start address and the data pointer may be compared each time increment or decrement, and the process may be terminated if they match.

上記実施例ではチェックデータ生成回路231の起動はバックアップデータ生成後にCPUコア221のプログラム実行によるトリガで起動しているが、バックアップエリアの生成を常時行っている場合(遊技機制御プログラムでバックアップが必要なデータが発生した時に随時必要なデータをバックアップエリアに書込む場合、またはタイマー割込み処理等で常時バックアップの必要なデータをバックアップエリアに書込む場合等)の場合は、電源断の発生をトリガにチェックデータ生成回路231を起動し、NMI割込処理等で制御処理を中断し、チェックデータの生成完了を待つ構成としても良い。
また、パワーオンの処理ではセキュリティモードでチェックデータ生成回路231の初期化を行い、ユーザーモードでの遊技機制御プラグラム(ユーザプログラム)を実行するが、ユーザーモード起動をトリガにチェックデータ生成回路231の起動を行えば、ユーザプログラムではチェックデータ生成完了を待って、計算されたチェックデータとバックアップ時に保存されたチェックデータを比較することでバックアップデータに異常があるかの判断を行う構成としても良い。
In the above embodiment, the check data generation circuit 231 is activated by a trigger by the program execution of the CPU core 221 after the backup data is generated. However, when the backup area is always generated (backup is required by the gaming machine control program). When necessary data is written to the backup area whenever necessary data is generated, or when data that must be backed up constantly is written to the backup area by timer interrupt processing, etc.) The check data generation circuit 231 may be activated, the control process may be interrupted by an NMI interrupt process or the like, and the check data generation completion may be waited.
In the power-on process, the check data generation circuit 231 is initialized in the security mode, and the gaming machine control program (user program) is executed in the user mode. The check data generation circuit 231 is triggered by the user mode activation. If the activation is performed, the user program may wait for completion of the check data generation, and compare the calculated check data with the check data stored at the time of backup to determine whether there is an abnormality in the backup data.

送受信データのチェックデータ生成
上記では、バックアップエリア402にはバックアップ対象のデータが記憶され、それのチェックデータを生成するものとして説明してきた。しかし、バックアップエリア402にはバックアップ対象のデータを記憶させ、それのチェックデータ生成に本発明を使用することができる。例えば、バックアップエリア402を、通信におけるデータ送受信時のバッファ領域として、バッファリングされる送信データあるいは受信データのチェックデータを生成させることができる。送信時には、そのチェックデータをBCC(block check code)として送信データに付加することができ、受信時には、そのチェックデータを送られてきたBCCと比較してデータ異常の有無を確認することができる。
In the above description, the backup area 402 stores data to be backed up and generates check data for the data to be transmitted / received. However, data to be backed up can be stored in the backup area 402 and the present invention can be used to generate check data for the data. For example, the backup area 402 can be used as a buffer area for data transmission / reception in communication, and check data for buffered transmission data or reception data can be generated. At the time of transmission, the check data can be added to the transmission data as a BCC (block check code), and at the time of reception, the presence or absence of data abnormality can be confirmed by comparing the check data with the transmitted BCC.

バックアップエリア402を送信バッファとして使用する場合の説明をする。チェックデータ生成回路221,231は、バックアップエリア402に送信データがバッファリングされると、バッファリング開始アドレスからそのチェックデータの生成を開始し、バッファリング終了アドレスまでチェックデータの生成が完了すると、データ送信を開始させるためにCPUコア211にステータスレジスタ226又は236を介しその旨を示す信号を伝達する。チェックデータの生成開始は、送信データがバッファリング終了アドレスまでバッファリングされてから行う。生成されたチェックデータはチェックデータ生成回路221,231からCPUコア211に渡されてBCCとして送信データの終了エリアの次に付加され送信される。   A case where the backup area 402 is used as a transmission buffer will be described. When the transmission data is buffered in the backup area 402, the check data generation circuits 221 and 231 start generating the check data from the buffering start address, and when the check data generation is completed up to the buffering end address, In order to start transmission, a signal indicating that is transmitted to the CPU core 211 via the status register 226 or 236. The check data generation is started after the transmission data is buffered up to the buffering end address. The generated check data is transferred from the check data generation circuits 221 and 231 to the CPU core 211 and added as a BCC after the end area of the transmission data and transmitted.

バックアップエリア402を受信バッファとして使用する場合の説明をする。チェックデータ生成回路221,231は、バックアップエリア402に受信データのバッファリングが開始され、バッファリング終了アドレスまでバッファリングされると、そのチェックデータの生成を開始する。また、バッファリングの終了を示すコード(ETX)がバッファリングされる瞬間を検出して、それに応じてチェックデータ生成回路221,231がチェックデータの生成を開始するように構成することも可能である。チェックデータの生成が完了すると、受信したデータを取得させるためにCPUコア211にその旨を示す信号を伝達する。生成されたチェックデータはチェックデータ生成回路221,231からCPUコア211に渡されて受信したデータのBCCと比較し異常の有無を検証するために使用される。   A case where the backup area 402 is used as a reception buffer will be described. The check data generation circuits 221 and 231 start generating check data when buffering of received data is started in the backup area 402 and buffered to the buffering end address. It is also possible to detect the moment when the buffering end code (ETX) is buffered, and the check data generation circuits 221 and 231 start generating check data accordingly. . When the generation of the check data is completed, a signal indicating that is transmitted to the CPU core 211 in order to acquire the received data. The generated check data is passed from the check data generation circuits 221 and 231 to the CPU core 211 and used to verify the presence or absence of an abnormality by comparing with the BCC of the received data.

本発明は、上述の遊技機制御用チップ200と同じ構成のチェックデータ生成機構を有する払出制御用チップ、画像制御用チップなどの他の種類の、バックアップデータや通信データを使用するチップとしても成立する。また本発明は、それらのチップを組み込んだ基板としても成立し、当該基板を含む遊技機としても成立する。   The present invention can also be realized as a chip that uses backup data or communication data of other types such as a payout control chip and an image control chip having a check data generation mechanism having the same configuration as the gaming machine control chip 200 described above. . In addition, the present invention is established as a board in which those chips are incorporated, and is also established as a gaming machine including the board.

以上に説明した処理又は動作において、あるステップにおいて、そのステップではまだ利用することができないはずのデータを利用しているなどの処理又は動作上の矛盾が生じない限りにおいて、処理又は動作を自由に変更することができる。また、後続の処理に影響を与えないようなステップは省略することも可能である。また、動作上の矛盾が生じない限りにおいて、各実施形態からの任意のステップを組み合わせることも可能である。   In the process or operation described above, a process or operation can be freely performed at a certain step as long as there is no inconsistency in the process or operation such as using data that should not be used at that step. Can be changed. Also, steps that do not affect subsequent processing can be omitted. In addition, any step from each embodiment can be combined as long as there is no operational contradiction.

以上に説明してきた各実施例は、本発明を説明するための例示であり、本発明はこれらの実施例に限定されるものではない。例えばこれらの各実施例は組み合わせることが可能であり、これにより、2以上の実施例を組み合わせて1つの実施例にすることができる。本発明は、その要旨を逸脱しない限り、種々の形態で実施することができる。   Each Example described above is an illustration for explaining the present invention, and the present invention is not limited to these Examples. For example, these embodiments can be combined, and two or more embodiments can be combined into one embodiment. The present invention can be implemented in various forms without departing from the gist thereof.

100 パチンコシステム
105、110 パチンコ機
115 抽選媒体供給装置
120 遊技盤部
125 払出部
130 ハンドル部
200 遊技機制御用チップ
211 CPUコア
212 クロック回路
213 リセットモード制御回路
214 ブートROM
215 ユーザROM
216 ブートRAM
217 ユーザRAM217
217a チェックデータ格納エリア
217b チェックデータ
221 チェックデータ生成回路(第1の実施形態)
222 機能指示レジスタ(第1の実施形態)
223 RAMチェックデータ計算回路(第1の実施形態)
224 RAMチェック開始アドレスレジスタ(第1の実施形態)
225 RAMチェック終了アドレスレジスタ(第1の実施形態)
226 ステータスレジスタ(第1の実施形態)
227 計算結果格納レジスタ(第1の実施形態)
231 チェックデータ生成回路(第2の実施形態)
232 機能指示レジスタ(第2の実施形態)
233 RAMチェックデータ計算回路(第2の実施形態)
234 RAMチェック開始アドレスレジスタ(第2の実施形態)
236 ステータスレジスタ(第2の実施形態)
237 計算結果格納レジスタ(第2の実施形態)
241 データポインタ(第2の実施形態)
242 RAMチェックバイト数カウンタ(第2の実施形態)
251 セキュリティチェック回路
252 指定エリア外走行禁止(IAT)回路
253 ウォッチドッグタイマ(WDT)回路
254 固有データ格納回路
255 乱数回路
256 照合回路
261 バス
301 プログラムコードエリア/プログラムデータエリア
302 プログラム管理エリア
401 ワークエリア
402 バックアップエリア
DESCRIPTION OF SYMBOLS 100 Pachinko system 105, 110 Pachinko machine 115 Lottery medium supply apparatus 120 Game board part 125 Payout part 130 Handle part 200 Game machine control chip 211 CPU core 212 Clock circuit 213 Reset mode control circuit 214 Boot ROM
215 User ROM
216 Boot RAM
217 User RAM 217
217a Check data storage area 217b Check data 221 Check data generation circuit (first embodiment)
222 Function instruction register (first embodiment)
223 RAM check data calculation circuit (first embodiment)
224 RAM check start address register (first embodiment)
225 RAM check end address register (first embodiment)
226 Status register (first embodiment)
227 Calculation result storage register (first embodiment)
231 Check data generation circuit (second embodiment)
232 Function instruction register (second embodiment)
233 RAM check data calculation circuit (second embodiment)
234 RAM check start address register (second embodiment)
236 Status register (second embodiment)
237 Calculation result storage register (second embodiment)
241 Data pointer (second embodiment)
242 RAM check byte number counter (second embodiment)
251 Security check circuit 252 Non-designated area travel prohibition (IAT) circuit 253 Watchdog timer (WDT) circuit 254 Specific data storage circuit 255 Random number circuit 256 Verification circuit 261 Bus 301 Program code area / program data area 302 Program management area 401 Work area 402 Backup area

Claims (20)

遊技機を制御するプログラムを格納するROMと、
前記プログラムに従って情報処理を実行する中央処理部と、
前記中央処理部にアクセスされるRAMと、
前記ROM、前記中央処理部、及び前記RAMを接続するバスと、
前記バスに接続され、所定の開始トリガに応答して前記RAMの所定のアドレス範囲内のすべてのデータのチェックデータを生成して計算結果格納部に格納するチェックデータ生成回路と、を備えたことを特徴とする遊技機制御用チップ。
A ROM for storing a program for controlling the gaming machine;
A central processing unit that executes information processing according to the program;
RAM accessed by the central processing unit;
A bus connecting the ROM, the central processing unit, and the RAM;
A check data generation circuit connected to the bus and generating check data of all data within a predetermined address range of the RAM in response to a predetermined start trigger and storing the check data in a calculation result storage unit A gaming machine control chip characterized by
前記チェックデータ生成回路は、前記チェックデータを生成して前記計算結果格納部に格納すると共に、前記中央処理部に前記チェックデータの生成が完了した旨を示す信号を伝達する、請求項1に記載の遊技機制御用チップ。   The check data generation circuit generates the check data, stores the check data in the calculation result storage unit, and transmits a signal indicating that the generation of the check data is completed to the central processing unit. Game machine control chip. 前記チェックデータ生成回路は、前記チェックデータの生成時に前記RAMの前記所定のアドレス範囲の一方の端である読出し開始アドレスから他方の端である読出し終了アドレスに向かってデータの読み出しがなされる場合に、前記読出し開始アドレスを特定する読出し開始アドレス特定情報、及び前記読出し終了アドレスを特定する読出し終了アドレス特定情報をそれぞれ記憶する読出し開始アドレス特定情報記憶手段及び読出し終了アドレス特定情報記憶手段を有する、請求項1又は2に記載の遊技機制御用チップ。   When the check data is generated, the check data generation circuit reads data from a read start address that is one end of the predetermined address range of the RAM toward a read end address that is the other end. A read start address specifying information storage unit for storing the read start address specifying information for specifying the read start address and a read end address specifying information for specifying the read end address, respectively, and a read end address specifying information storing unit for storing the read end address specifying information. Item 3. A gaming machine control chip according to Item 1 or 2. 前記ROMに記憶された前記プログラムは、ユーザによって定義されるユーザプログラムを含み、
前記ユーザプログラムは、前記中央処理部が前記ユーザプログラムを実行することによって、前記開始トリガを前記チェックデータ生成回路に与えるとともに、前記RAMの前記所定のアドレス範囲内のデータの順次読み出し又は順次書込みを開始させるものであり、
前記チェックデータ生成回路は、前記中央処理部が前記RAMの前記所定のアドレス範囲内のデータの読み出し又は書込みを行うタイミングでデータバスから前記データを取得することによって前記チェックデータを生成する、請求項1から3のいずれか1項に記載の遊技機制御用チップ。
The program stored in the ROM includes a user program defined by a user,
The user program, when the central processing unit executes the user program, gives the start trigger to the check data generation circuit and sequentially reads or writes data within the predetermined address range of the RAM. Is to start,
The check data generation circuit generates the check data by acquiring the data from a data bus at a timing when the central processing unit reads or writes data in the predetermined address range of the RAM. The gaming machine control chip according to any one of 1 to 3.
前記チェックデータ生成回路は、前記開始トリガの受信後に、前記RAMの前記読出し開始アドレスから前記読出し終了アドレスまでのデータを前記中央処理部が前記RAMにアクセスしていないタイミングで順次読み出して前記チェックデータを生成する、請求項3に記載の遊技機制御用チップ。   The check data generation circuit sequentially reads data from the read start address to the read end address of the RAM at a timing when the central processing unit does not access the RAM after receiving the start trigger. The gaming machine control chip according to claim 3, wherein: 前記読出し開始アドレス特定情報は前記読出し開始アドレスの値であり、前記読出し終了アドレス特定情報は前記読出し終了アドレスの値である、請求項3又は5に記載の遊技機制御用チップ。   6. The gaming machine control chip according to claim 3, wherein the read start address specifying information is a value of the read start address, and the read end address specifying information is a value of the read end address. 前記読出し開始アドレス特定情報は前記開始アドレスの値であり、前記読出し終了アドレス特定情報は前記読出し開始アドレスから前記読出し終了アドレスまでの範囲長を示す情報である、請求項3又は5に記載の遊技機制御用チップ。   6. The game according to claim 3, wherein the read start address specifying information is a value of the start address, and the read end address specifying information is information indicating a range length from the read start address to the read end address. Chip for machine control. 前記チェックデータ生成回路の前記開始トリガは、前記中央処理部が前記RAMの前記読出し終了アドレスへデータを書き込んだことの検知である、請求項3又は5に記載の遊技機制御用チップ。   The gaming machine control chip according to claim 3 or 5, wherein the start trigger of the check data generation circuit is detection that the central processing unit has written data to the read end address of the RAM. 前記ROMに記憶された前記プログラムは、ユーザによって定義されるユーザプログラムを含み、
前記中央処理部が前記ユーザプログラムを実行することによって、前記読出し開始アドレス特定情報及び前記読出し終了アドレス特定情報をそれぞれ前記チェックデータ生成回路の前記読出し開始アドレス特定情報記憶手段及び前記読出し終了アドレス特定情報記憶手段に記憶させる、請求項3又は5に記載の遊技機制御用チップ。
The program stored in the ROM includes a user program defined by a user,
When the central processing unit executes the user program, the read start address specifying information and the read end address specifying information are respectively stored in the read start address specifying information storage unit and the read end address specifying information of the check data generation circuit. 6. The gaming machine control chip according to claim 3 or 5, which is stored in a storage means.
前記ROMに記憶された前記プログラムは、電源オン時に実行されるブートプログラムを含み、
前記ROMは、前記ブートプログラムによって参照される設定値を記憶するプログラム管理領域を含み、
前記プログラム管理領域は、前記読出し開始アドレス特定情報及び前記読出し終了アドレス特定情報を記憶しており、
電源オン時に前記中央処理部が前記ブートプログラムを実行することによって、前記プログラム管理領域に記憶された前記読出し開始アドレス特定情報及び前記読出し終了アドレス特定情報をそれぞれ前記チェックデータ生成回路の前記読出し開始アドレス特定情報記憶手段及び前記読出し終了アドレス特定情報記憶手段に記憶させる、請求項3又は5に記載の遊技機制御用チップ。
The program stored in the ROM includes a boot program that is executed when the power is turned on,
The ROM includes a program management area for storing setting values referred to by the boot program,
The program management area stores the read start address specifying information and the read end address specifying information,
When the central processing unit executes the boot program when the power is turned on, the read start address specifying information and the read end address specifying information stored in the program management area are respectively set to the read start address of the check data generating circuit. 6. The gaming machine control chip according to claim 3 or 5, which is stored in the specific information storage means and the read end address specific information storage means.
前記ROMに記憶された前記プログラムは、ユーザによって定義されるユーザプログラムを含み、
前記中央処理部は、前記ユーザプログラムを実行することによって、生成された前記チェックデータを前記計算結果格納部から読み出して、前記RAM上の所定の位置にあるチェックデータ格納領域に記憶させる、請求項1又は2に記載の遊技機制御用チップ。
The program stored in the ROM includes a user program defined by a user,
The central processing unit reads the generated check data from the calculation result storage unit by executing the user program, and stores the check data in a check data storage area at a predetermined position on the RAM. 3. A gaming machine control chip according to 1 or 2.
前記チェックデータ格納領域は、前記RAMの前記所定のアドレス範囲の直前あるいは直後である、請求項11に記載の遊技機制御用チップ。   12. The gaming machine control chip according to claim 11, wherein the check data storage area is immediately before or after the predetermined address range of the RAM. 前記ROMに記憶された前記プログラムは、電源オン時に実行されるブートプログラムを含み、
電源オン時に前記中央処理部が前記ブートプログラムを実行することによって、前記チェックデータ生成回路に前記開始トリガを与えることで前記RAMの前記所定のアドレス範囲の新たなチェックデータを生成させて前記計算結果格納部に格納させると共に、前記チェックデータ格納領域に記憶された前回生成されたチェックデータを読出し、前記前回生成されたチェックデータと前記計算結果格納部に格納された前記新たなチェックデータとを比較し、その比較結果を前記ユーザプログラムからアクセス可能な所定の領域に記憶させる、請求項11に記載の遊技機制御用チップ。
The program stored in the ROM includes a boot program that is executed when the power is turned on,
The central processing unit executes the boot program when the power is turned on to generate the new check data in the predetermined address range of the RAM by giving the start trigger to the check data generation circuit, and the calculation result While storing in the storage unit, reading the check data generated last time stored in the check data storage area, and comparing the check data generated last time and the new check data stored in the calculation result storage unit The gaming machine control chip according to claim 11, wherein the comparison result is stored in a predetermined area accessible from the user program.
前記RAMの前記所定のアドレス範囲は、データ送信のためのバッファ領域として使用されている、請求項1又は2に記載の遊技機制御用チップ   The gaming machine control chip according to claim 1 or 2, wherein the predetermined address range of the RAM is used as a buffer area for data transmission. 前記RAMの前記所定のアドレス範囲は、データ受信のためのバッファ領域として使用されている、請求項1又は2に記載の遊技機制御用チップ。   The gaming machine control chip according to claim 1 or 2, wherein the predetermined address range of the RAM is used as a buffer area for data reception. 受信データは前記RAMの前記所定のアドレス範囲のバッファリング開始アドレスから順次バッファリングさせ、それがバッファリング終了アドレスまで達すると、前記チェックデータ生成回路に対して前記所定の開始トリガを発生させられる、請求項15に記載の遊技機制御用チップ。   The received data is sequentially buffered from the buffering start address of the predetermined address range of the RAM, and when it reaches the buffering end address, the predetermined start trigger is generated for the check data generation circuit. The gaming machine control chip according to claim 15. 受信データを前記RAMの前記所定のアドレス範囲のバッファリング開始アドレスから順次バッファリングさせ、前記受信データにバッファリングの終了を示すコードが検出されると、前記チェックデータ生成回路に対して前記所定の開始トリガを発生させられる、請求項15に記載の遊技機制御用チップ。   When the received data is sequentially buffered from the buffering start address in the predetermined address range of the RAM and a code indicating the end of buffering is detected in the received data, the predetermined data is detected by the check data generation circuit. The gaming machine control chip according to claim 15, wherein a start trigger is generated. 請求項1から請求項17のいずれか1項に記載の前記遊技機制御用チップを組み込んだ基板。   A board incorporating the gaming machine control chip according to any one of claims 1 to 17. 請求項1から請求項17のいずれか1項に記載の遊技機制御用チップと、
電源電圧を監視し、前記電源電圧が規定値より下がった場合に、前記チェックデータ生成回路に前記開始トリガを与える電源断監視回路と、を有する基板。
A gaming machine control chip according to any one of claims 1 to 17,
And a power-off monitoring circuit that monitors a power supply voltage and provides the start trigger to the check data generation circuit when the power supply voltage falls below a specified value.
請求項18又は19に記載の基板を含む遊技機。   A game machine comprising the substrate according to claim 18.
JP2015048469A 2015-03-11 2015-03-11 Game machine control chip Pending JP2016168106A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015048469A JP2016168106A (en) 2015-03-11 2015-03-11 Game machine control chip

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015048469A JP2016168106A (en) 2015-03-11 2015-03-11 Game machine control chip

Publications (1)

Publication Number Publication Date
JP2016168106A true JP2016168106A (en) 2016-09-23

Family

ID=56981751

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015048469A Pending JP2016168106A (en) 2015-03-11 2015-03-11 Game machine control chip

Country Status (1)

Country Link
JP (1) JP2016168106A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023026140A (en) * 2021-08-13 2023-02-24 サミー株式会社 game machine
JP2023026135A (en) * 2021-08-13 2023-02-24 サミー株式会社 game machine
JP7329270B1 (en) 2022-02-17 2023-08-18 株式会社ユニバーサルエンターテインメント game machine

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023026140A (en) * 2021-08-13 2023-02-24 サミー株式会社 game machine
JP2023026135A (en) * 2021-08-13 2023-02-24 サミー株式会社 game machine
JP7332926B2 (en) 2021-08-13 2023-08-24 サミー株式会社 game machine
JP7329270B1 (en) 2022-02-17 2023-08-18 株式会社ユニバーサルエンターテインメント game machine
JP2023119965A (en) * 2022-02-17 2023-08-29 株式会社ユニバーサルエンターテインメント game machine

Similar Documents

Publication Publication Date Title
US9147311B2 (en) Gaming machine power fail enhancement
US10585755B2 (en) Electronic apparatus and method for restarting a central processing unit (CPU) in response to detecting an abnormality
JP6111493B2 (en) Game machine
JP4656110B2 (en) Game machine
JP2013158582A (en) Game machine
JP2011147676A5 (en)
JP2014223305A (en) Game machine
JP2016168106A (en) Game machine control chip
JP6121363B2 (en) Game machine
JP6433048B2 (en) Game board chip
JP2012095814A5 (en)
JP2014208100A (en) Game machine
JP6435470B2 (en) Game machine
JP2016123803A (en) Chip for game machine control
JP2011147677A5 (en)
JP2001062046A5 (en)
JP4744591B2 (en) Game machine
JP2003038823A5 (en)
JP5876741B2 (en) Game machine
JP5989350B2 (en) Game machine
JP2011188935A5 (en)
JP2009061344A (en) Game machine
JP2009061348A (en) Game machine
JP2009061347A (en) Game machine
JP6187637B2 (en) Game machine