JP2019114303A - Control chip and game machine using the same - Google Patents

Control chip and game machine using the same Download PDF

Info

Publication number
JP2019114303A
JP2019114303A JP2019079419A JP2019079419A JP2019114303A JP 2019114303 A JP2019114303 A JP 2019114303A JP 2019079419 A JP2019079419 A JP 2019079419A JP 2019079419 A JP2019079419 A JP 2019079419A JP 2019114303 A JP2019114303 A JP 2019114303A
Authority
JP
Japan
Prior art keywords
register
memory
address space
instruction
address
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
JP2019079419A
Other languages
Japanese (ja)
Inventor
井之川 晋一
Shinichi Inokawa
晋一 井之川
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 JP2019079419A priority Critical patent/JP2019114303A/en
Publication of JP2019114303A publication Critical patent/JP2019114303A/en
Pending legal-status Critical Current

Links

Images

Abstract

To solve a conventional problem caused by separately providing an address space of a memory and an address space of an input/output part (I/O).SOLUTION: While an address space for an I/O is independently provided in a conventional manner, a U register as hardware for designating an address of upper 8 bits to access to an incorporated device connected to the I/O is provided, and an upper address of 8 bits is designated in advance therein. Thus, it is possible to integrate an I/O address space provided separately from an address space for a memory with the address space for the memory into one address space.SELECTED DRAWING: Figure 4

Description

本発明は、遊技機を制御するセキュリティチップ及びこのセキュリティチップを組み込んだ遊技機に関する。   The present invention relates to a security chip for controlling a gaming machine and a gaming machine incorporating the security chip.

遊技機を制御するためのセキュリティチップにマイコンが採用された当初には、インテル社の80系CPU(以下「80系CPU」という)及びモトローラ社の68系CPU(以下「68系CPU」という)が存在しおり、各遊技機メーカはその設計思想や使い易さ等を考慮して、いずれかを選択して使用していたが、現在では遊技機を制御するセキュリティチップとしては、80系CPUが主流となっている。   Initially, when a microcomputer was adopted as a security chip for controlling a gaming machine, Intel's 80 series CPU (hereinafter referred to as "80 series CPU") and Motorola's 68 series CPU (hereinafter referred to as "68 series CPU") Although each game machine maker has selected one of them in consideration of its design concept and ease of use, at present, 80 series CPUs are used as security chips for controlling game machines. It is mainstream.

遊技機では、使用できるメモリ容量が法令により制限されており、さらにユーザプログラムと呼ばれる遊技機メーカが書き込むことができるプログラムの容量も制限されている。そのため、限られたプログラム容量をより有効に活用できるように、現在では80系CPUを踏襲しつつも、より効率の良い命令を追加した80系CPU上位互換のCPUが多く採用されている。このような効率の良い命令の追加は、CPU開発技術の向上により実現可能になった。   In the gaming machine, the memory capacity that can be used is restricted by a law, and the capacity of a program that can be written by a gaming machine maker called a user program is also restricted. Therefore, in order to utilize the limited program capacity more effectively, many 80 series CPU upper compatible CPUs are adopted now that follow the 80 series CPU but add more efficient instructions. The addition of such efficient instructions has become feasible due to the improvement of CPU development technology.

通常2バイト必要なアドレスの指定において、上位1バイトのアドレス値を予め特定のレジスタ(「上位アドレスレジスタ」という)に記憶しておき、メモリにアクセスする際には予めレジスタに記憶されているこの上位アドレスを用いつつ下位1バイトのみを指定することで、メモリにアクセスできるようにした遊技機用のセキュリティチップが従来から知られている。例えば、上位アドレスレジスタに1バイトのF0hを記憶しておき、下位アドレスとして、1バイトの00h〜FFhを指定することにすれば、F000hからF0FFhまでを2バイトで指定できるようになり、この範囲で2バイトアドレスのユーザRAM領域にアクセスすることができるが、実質的には下位1バイトでアドレスを指定していることになる。   Usually, when specifying addresses that require 2 bytes, the upper 1-byte address value is stored in advance in a specific register (referred to as “upper address register”), and this is stored in advance when accessing memory. Conventionally, a security chip for a gaming machine has been known which can access a memory by specifying only one lower byte while using the upper address. For example, if F0h of 1 byte is stored in the upper address register and 00h to FFh of 1 byte is specified as the lower address, F000h to F0FFh can be specified by 2 bytes, and this range Although the user RAM area of the 2-byte address can be accessed with the address, the address is practically designated by the lower 1 byte.

図9は、従来から知られている80系CPUに基づいた遊技機制御用のセキュリティチップのメモリ及び入出力部(I/O)に関連する部分の回路図である。従来は、図9に示すように、メモリ104のアドレス空間とI/O105のためのアドレス空間とが別々に設けられていた。このため、メモリのアドレス空間にアクセスするかI/Oのアドレス空間にアクセスするかに応じて、セキュリティチップのメモリリクエスト(MREQ)ピン及びI/Oリクエスト(IORQ)ピンからリクエスト信号を出力し、これを論理回路素子(ゲート)107、108、109、110を介してメモリ104及びI/O105の読み出し(RD)端子及び書き込み(WR)端子に送信していた。   FIG. 9 is a circuit diagram of a portion related to a memory and an input / output unit (I / O) of a security chip for gaming machine control based on a conventionally known 80-system CPU. Conventionally, as shown in FIG. 9, the address space of the memory 104 and the address space for the I / O 105 are provided separately. Therefore, depending on whether to access the memory address space or the I / O address space, the request signal is output from the memory request (MREQ) pin and the I / O request (IORQ) pin of the security chip, This is transmitted to the read (RD) terminal and the write (WR) terminal of the memory 104 and the I / O 105 via the logic circuit elements (gates) 107, 108, 109, 110.

アドレスデコーダ(DEC)1061,1062は、アドレスバスからのアドレス信号をデコードするデコーダで、デコードされた信号はメモリ104又はI/O105のチップセレクト端子(CS)に入力される。これによりメモリ104及びI/O105は、チップセレクト端子(CS)が有効である時、読出し信号(RD)が有効であればデータバスに当該データを出力し、書込み信号(WR)が有効であればデータバス上の当該データをメモリ104及びI/O105に書込みを行う。図9に示したメモリ104及びI/O105は模擬的にチップセレクト端子(CS)のみでデバイスを選択しているが、アドレスバスの下位数ビット(不図示)を接続し、デバイス内メモリやI/Oのアドレスを指定しても良い。 Address decoders (DEC) 106 1 and 106 2 are decoders that decode address signals from the address bus, and the decoded signals are input to the chip select terminal (CS) of the memory 104 or I / O 105. Thereby, when the chip select terminal (CS) is valid, the memory 104 and the I / O 105 output the data to the data bus if the read signal (RD) is valid, and the write signal (WR) is valid. For example, the data on the data bus is written to the memory 104 and the I / O 105. Although the memory 104 and I / O 105 shown in FIG. 9 select devices by only the chip select terminal (CS) in simulation, the lower several bits (not shown) of the address bus are connected to You may specify the address of / O.

従来のように、メモリのアドレス空間と入出力部(I/O)のアドレス空間とが別々に設けられていると、どちらのアドレス空間にアクセスするかを選択するための論理動作や、アドレス空間が別々に存在することに関連するハードウェア的な回路が必要となる。さらに、上記の論理動作を実行するためには、セキュリティチップのパッケージにそのためのピンが必要となるが、遊技機用のユーザプログラムを開発する際には、より多くのピンを自由に使うことができれば、それだけ柔軟なハードウェア実装とプログラム開発が可能となる。   If the address space of the memory and the address space of the input / output unit (I / O) are separately provided as in the prior art, a logic operation for selecting which address space is to be accessed, or the address space Hardware-related circuits are required to be related to the separate existence of Furthermore, although the security chip package requires pins for performing the above logic operation, it is possible to freely use more pins when developing a user program for a gaming machine. If possible, more flexible hardware implementation and program development will be possible.

本発明は、上記事情に基づいてなされたものであり、メモリのアドレス空間と入出力部(I/O)のアドレス空間とが別々に設けられていたことに伴う従来の問題を解決することを目的とする。   The present invention has been made based on the above circumstances, and solves the conventional problem associated with the memory address space and the input / output unit (I / O) address space being provided separately. To aim.

上記の課題を解決するために、本発明に係る遊技機用のセキュリティチップは、メモリ用のアドレス空間と入出力部(I/O)用のアドレス空間とを備え、それぞれの空間をアクセスする命令を備えるCPUと上位互換性を有する遊技機用のセキュリティチップであって、前記入出力部用のアドレス空間を前記メモリ用のアドレス空間に統合した。   In order to solve the above problems, a security chip for a gaming machine according to the present invention includes an address space for memory and an address space for input / output units (I / O), and an instruction to access each space. A security chip for a gaming machine having upward compatibility with a CPU including the above, and the address space for the input / output unit is integrated into the address space for the memory.

前記入出力部用のアドレス空間を指定するアドレスの上位ビットは、データ記憶デバイスに予め記憶されており、入出力アドレス空間を指定する際に前記データ記憶デバイスから前記上位ビットのデータを読み出してアドレスを指定する上位ビットとして使用することができる。   The upper bits of the address specifying the address space for the input / output unit are stored in advance in the data storage device, and when specifying the input / output address space, the data of the upper bits is read from the data storage device Can be used as the upper bits to specify.

前記メモリ用のアドレス空間をアクセスする命令及び前記入出力用のアドレス空間をアクセスする命令により、統合されたメモリ用のアドレス空間のすべてをアクセス可能とすることができる。   The instruction for accessing the address space for the memory and the instruction for accessing the address space for the input / output can make all of the address space for integrated memory accessible.

前記データ記憶デバイスは、CPU内の専用レジスタとすることができる。   The data storage device may be a dedicated register in the CPU.

上記の課題を解決するために、本発明に係る遊技機用のセキュリティチップは、アドレスの上位を示す第1のレジスタ及び第2のレジスタを備え、前記第1のレジスタが第1の命令に対応し、前記第2のレジスタが第2の命令に対応し、CPUが前記第1の命令と前記第2の命令ですべてのメモリ空間をアクセスするようにする。   In order to solve the above problems, a security chip for a gaming machine according to the present invention includes a first register and a second register indicating higher ranks of addresses, and the first register corresponds to a first instruction. And the second register corresponds to a second instruction, and the CPU accesses all the memory space with the first instruction and the second instruction.

前記第1のレジスタには、対応する裏レジスタが設けられている。   The first register is provided with a corresponding back register.

実施の一形態に係る遊技機制御用のセキュリティチップの主要部分であるCPUとメモリユニットの構成を示したブロック図である。FIG. 2 is a block diagram showing a configuration of a CPU and a memory unit which are main parts of a security chip for gaming machine control according to one embodiment. 図1に示したCPUコアの内部の構成を示したブロック図である。FIG. 2 is a block diagram showing an internal configuration of a CPU core shown in FIG. 1; 実施の一形態に係るCPUの内部状態遷移の様子を示した図である。FIG. 6 is a diagram showing an internal state transition of a CPU according to an embodiment. 実施の一形態に係るレジスタユニットに含まれる各種レジスタを詳細に示した図である。It is the figure which showed in detail various registers contained in the register unit concerning one embodiment. 実施の一形態に係るI/O用のアドレス空間を含むアドレス空間のメモリマップである。6 is a memory map of an address space including an address space for I / O according to an embodiment. 実施の一形態に係る遊技機制用のセキュリティチップの平面図である。FIG. 1 is a plan view of a security chip for gaming machine control according to one embodiment. 図6に示したセキュリティチップの各ピンの名称及びその説明を表にして示した図である。FIG. 7 is a table showing names of respective pins of the security chip shown in FIG. 6 and descriptions thereof. 実施の一形態に係る遊技機制御用のセキュティチップのCPUとメモリ及び入出力部(I/O)とに関連する部分の回路図である。FIG. 2 is a circuit diagram of a portion related to a CPU, a memory and an input / output unit (I / O) of a security chip for controlling a gaming machine according to an embodiment. 従来の遊技機制御用のセキュティチップのCPUとメモリ及び入出力部(I/O)とに関連する部分の回路図である。FIG. 10 is a circuit diagram of a portion related to a CPU, a memory, and an input / output unit (I / O) of a conventional security chip for controlling a gaming machine.

以下に、本発明の実施の一形態について説明する。図1は、遊技機制御用のセキュリティチップの主要部分であるCPU1とメモリユニット4の構成を示したブロック図である。CPU1は、CPUコア2とバスコントローラ3を含み、CPUコア2はバス制御信号(Bus Cont)でバスコントローラ3を制御し、メモリユニット4との間でリード/ライト(R/W)信号や入出力データ(Data)のやり取りをする。CPUコア2に対しては割り込み/待ち(INT/WAIT)信号が入力可能な状態となっており、CPUコア2及びバスコントローラ3に対してリセット(RESET)信号が入力可能な状態となっている。ここでメモリユニット4は、CPU1の実行するプログラムを格納するROM、CPU1の実行時に使われるRAM、入出力部(I/O)を含むCPU1がアクセスする対象のものを示す。   Hereinafter, an embodiment of the present invention will be described. FIG. 1 is a block diagram showing the configuration of a CPU 1 and a memory unit 4 which are main parts of a security chip for gaming machine control. The CPU 1 includes a CPU core 2 and a bus controller 3. The CPU core 2 controls the bus controller 3 with a bus control signal (Bus Cont), and reads / writes (R / W) signals and inputs / outputs with the memory unit 4. Exchange output data (Data). An interrupt / wait (INT / WAIT) signal can be input to CPU core 2, and a reset (RESET) signal can be input to CPU core 2 and bus controller 3. . Here, the memory unit 4 indicates a ROM to which a program executed by the CPU 1 is stored, a RAM used when the CPU 1 is executed, and an object to be accessed by the CPU 1 including an input / output unit (I / O).

図2は、図1に示したCPUコア2の内部の構成を示したブロック図である。同図において、外部入力ユニット10は、外部信号(例えば、RESET、INT、WAIT、BUSREQ等)を受け取って、状態制御ユニット11に渡す。このとき、RESET信号は中央制御ユニット12を含む各ユニットのための初期化信号として渡される。   FIG. 2 is a block diagram showing an internal configuration of CPU core 2 shown in FIG. In the figure, the external input unit 10 receives an external signal (for example, RESET, INT, WAIT, BUSREQ, etc.) and passes it to the state control unit 11. At this time, the RESET signal is passed as an initialization signal for each unit, including the central control unit 12.

状態制御ユニット11は、図3に示す内部状態遷移を管理してCPUコア2の動作状態を決定するとともに、中央制御ユニット12へ実際の動作指示を行う。各命令に関する内部状態遷移は、図3に示す命令フェッチ状態(1)から始まり、中央制御ユニット12で行われる命令デコードの結果に応じて次の内部状態遷移が決定され(例えば、演算処理、メモリロード、メモリ記憶等)、したがって各命令ごとに異なる内部状態遷移をもつことになる。なお、各命令の状態遷移の情報は、状態制御ユニット11内に格納されている。   The state control unit 11 manages the internal state transition shown in FIG. 3 to determine the operation state of the CPU core 2 and issues an actual operation instruction to the central control unit 12. The internal state transition for each instruction starts from the instruction fetch state (1) shown in FIG. 3 and the next internal state transition is determined according to the result of instruction decoding performed by central control unit 12 (for example, arithmetic processing, memory Loading, memory storage, etc.) and therefore have different internal state transitions for each instruction. Information on the state transition of each instruction is stored in the state control unit 11.

再び図2に戻ると、中央制御ユニット12は、バスコントローラ3を経由してメモリユニット4より入力された入力データDIを読み込んで命令デコーダ13に渡し、命令デコーダ13により命令解析を行う。命令デコーダ13で命令解析が終了して、中央制御ユニット12が命令デコードの結果を状態制御ユニット11に渡すと、状態制御ユニット11内で決定される内部状態遷移による次の動作指示に従い、データパスユニット14に命令動作を順次実行させる。なお、命令デコードの結果と状態制御ユニット11から指示される状態により各命令がどのような動作を行うかのシーケンス情報は、中央制御ユニット12内に格納されている。   Referring back to FIG. 2 again, the central control unit 12 reads the input data DI input from the memory unit 4 via the bus controller 3 and passes it to the instruction decoder 13, and the instruction decoder 13 analyzes the instruction. When the instruction analysis is completed by the instruction decoder 13 and the central control unit 12 passes the result of instruction decoding to the state control unit 11, the data path is executed according to the next operation instruction by the internal state transition determined in the state control unit 11. The unit 14 executes instruction operations sequentially. The sequence information of what kind of operation each instruction performs according to the result of the instruction decoding and the state instructed from the state control unit 11 is stored in the central control unit 12.

データパスユニット14は、レジスタユニット15を含んでいる。レジスタユニット15には、本実施形態の場合、レジスタバンク0及びレジスタバンク1という2つのレジスタバンクの他に、8ビットの割込みベクタレジスタI、リフレッシュレジスタR、16ビットのプログラムカウンタPC、バンクセレクタDST、バンクセレクタSRCが含まれる。2つのレジスタバンク0及びレジスタバンク1の切り替えは、後述の図4に示したフラグレジスタFに含まれるレジスタバンク指定レジスタRBの指示(1ビット)を参照することにより現在使用中のレジスタバンクを知ることができる。すなわち、バンクセレクタDSTが算術論理演算ユニット(ALU)16の演算結果をストアするのがレジスタバンク0かレジスタバンク1かを指定し、バンクセレクタSRCが、ALU16に入力するソースレジスタをバンクレジスタ0かバンクレジスタ1かを選択する。   Data path unit 14 includes a register unit 15. In the case of this embodiment, the register unit 15 has an 8-bit interrupt vector register I, a refresh register R, a 16-bit program counter PC, and a bank selector DST in addition to the two register banks of register bank 0 and register bank 1. , Bank selector SRC is included. Switching between the two register banks 0 and 1 can be made known by referring to the instruction (1 bit) of the register bank designating register RB included in the flag register F shown in FIG. 4 described later. be able to. That is, bank selector DST specifies that register bank 0 or register bank 1 stores the operation result of arithmetic logic operation unit (ALU) 16 and bank selector SRC selects source register to be input to ALU 16 as bank register 0 Select bank register 1.

図4は、レジスタユニット15に含まれる各種レジスタをより詳細に示している。上述のようにレジスタユニット15には2つのレジスタバンク0及びレジスタバンク1が含まれており、各レジスタバンクには、メモリにアクセスするための16ビットアドレスの上位8ビットアドレスを指定するアドレスレジスタQ(以下「Qレジスタ」ともいう)、I/O(入出力部)に接続された内蔵デバイス(タイマ、乱数回路、外部入出力回路等)にアクセスするための16ビットアドレスの上位8ビットアドレスを指定するレジスタU(以下「Uレジスタ」ともいう)、8ビットの演算レジスタA、フラグレジスタF(その具体的内容は、図4に示してある)、汎用レジスタB、C、D、E、H、Lと、16ビットのインデックスレジスタIX、IY、スタックポインタSP、プログラムカウンタPCが含まれる。8ビットのレジスタのうち、汎用レジスタBC、DE、HLは、ペアレジスタとして16ビットのレジスタとして扱うこともできる。   FIG. 4 shows the various registers included in the register unit 15 in more detail. As described above, register unit 15 includes two register bank 0 and register bank 1 and each register bank is an address register Q for designating the upper 8 bits of the 16 bit address for accessing the memory. (Hereinafter referred to as "Q register"), upper 8-bit address of 16-bit address for accessing built-in devices (timer, random number circuit, external input / output circuit etc.) connected to I / O (input / output unit) Register U to be specified (hereinafter also referred to as "U register"), 8-bit operation register A, flag register F (whose specific contents are shown in FIG. 4), general purpose registers B, C, D, E, H , L, 16-bit index register IX, IY, stack pointer SP, and program counter PC. Among the 8-bit registers, general-purpose registers BC, DE and HL can also be treated as 16-bit registers as a pair register.

さらに、各レジスタバンク内のレジスタA、F、B、C、D、E、H、L、IX、IY、Qについては、これらを表レジスタとして同一構成の裏レジスタが設けられている。各表レジスタに対応する裏レジスタには、表レジスタと同じアルファベットに記号「’」を付してある。表レジスタ及び裏レジスタは、入れ替え命令などによって互いにどちらかのレジスタを瞬間的に選択して入れ替えて使用することができる。一方、レジスタU、レジスタSPについては、単一の(裏レジスタを持たない)構成とされている。CPUは、レジスタバンク指定レジスタRBの示すレジスタバンクの表レジスタのみを動作対象とし、裏レジスタについては動作対象とはしない。   Furthermore, for the registers A, F, B, C, D, E, H, L, IX, IY, and Q in each register bank, these are used as front side registers, and back registers of the same configuration are provided. In the back register corresponding to each table register, the symbol “'” is attached to the same alphabet as the table register. The front side register and the back side register can be used by instantaneously selecting and replacing either of the registers with each other by a replacement instruction or the like. On the other hand, the register U and the register SP have a single configuration (without the back register). The CPU operates only on the front register of the register bank indicated by the register bank designation register RB and does not operate on the back register.

従来は、図9のように、メモリ用のアドレス空間(メモリマップ)とは別に、I/O(入出力部)に接続された内蔵デバイスにアクセスするための256バイト(8ビットで指定される)のI/Oアドレス空間(I/Oマップ)が独立して設けられていた。また、メモリ用のアドレス空間をアクセスする命令としてLD命令が具備され、16ビットのメモリ空間をアクセスしていた。さらにメモリ空間の16ビットアドレスの上位8ビットについてQレジスタを使用してアクセスするLDQ命令が具備され、LDQ命令のオペランド8ビットを下位アドレスとしてメモリ空間をアクセスすることができた。   Conventionally, as shown in FIG. 9, 256 bytes (specified by 8 bits) for accessing a built-in device connected to I / O (input / output unit) separately from the address space (memory map) for memory ) I / O address space (I / O map) was provided independently. Also, the LD instruction is provided as an instruction to access the address space for memory, and the 16-bit memory space is accessed. Furthermore, the LDQ instruction is used to access the upper 8 bits of the 16-bit address of the memory space using the Q register, and the memory space can be accessed using the 8 bits of the operand of the LDQ instruction as the lower address.

さらに従来は、I/Oアドレス空間をアクセスするための専用命令としてIN命令、OUT命令が具備され、この命令が実行されるとIORQ信号によりI/Oアドレス空間のアクセスが行われていた。   Furthermore, conventionally, IN and OUT instructions are provided as dedicated instructions for accessing the I / O address space, and when this instruction is executed, access to the I / O address space is performed by the IORQ signal.

これに対し、本実施形態では、MREQ、IORQの信号をなくしメモリ、I/O(入出力部)へのアクセスをRD、WR信号で行うことと、I/O(入出力部)に接続された内蔵デバイスにアクセスするための上位8ビットのアドレスを指定するハードウェアとしてのUレジスタを設け、ここに予め8ビットの上位アドレスを指定しておく。これにより、メモリ用のアドレス空間とは別々に設けられていたI/Oアドレス空間を、メモリ用のアドレス空間に統合して一つのアドレス空間とし、従来具備されていたIN命令、OUT命令を実行するとメモリ空間に実装されたI/Oに対し、上位8ビットをUレジスタで指定し下位8ビットはIN命令、OUT命令のオペランドで指定した下位8ビットを用いてアクセス可能とした。   On the other hand, in the present embodiment, the signals of MREQ and IORQ are eliminated and access to the memory, I / O (input / output unit) is performed by RD and WR signals, and is connected to the I / O (input / output unit). A U register is provided as hardware for specifying the upper 8-bit address for accessing the built-in device, and the upper 8-bit address is specified in advance here. As a result, the I / O address space provided separately from the memory address space is integrated into the memory address space to form one address space, and the IN instruction and OUT instruction conventionally provided are executed. Then, the upper 8 bits of the I / O mounted in the memory space are specified by the U register, and the lower 8 bits can be accessed using the lower 8 bits specified by the IN instruction and the OUT instruction operand.

上記のように、本実施形態では、LDQ命令ではQレジスタを用いてメモリ空間(主にデータエリア、ワークエリア)をアクセスし、IN命令、OUT命令ではUレジスタを用いて内蔵デバイス(タイマ、乱数回路、外部入出力回路等)のI/Oをアクセスするようにプログラムを記述できるようになる。これにより、プログラムが見やすくなるという効果の他に、メモリ空間に置かれたメモリとI/Oを本来命令のオペランドとして16ビットのアドレスでアクセスしていたものを下位8ビットのオペランドでアクセスすることが可能になり、プログラム容量を圧縮することができる。さらにQレジスタ、Q’レジスタ、Uレジスタと複数の上位指定レジスタを持つことにより、上位レジスタが1つだけの時よりも上位レジスタの使い回しによる入れ替えの回数が少なくなり、プログラム容量をさらに圧縮することができる。   As described above, in the present embodiment, the memory space (mainly data area, work area) is accessed using the Q register in the LDQ instruction, and the internal device (timer, random number using the U register in the IN instruction and the OUT instruction). Programs can be written to access I / O of circuits, external input / output circuits, etc.). As a result, in addition to the effect of making the program easy to view, accessing the memory and I / Os located in the memory space that were originally accessing with 16-bit addresses as instruction operands with lower 8-bit operands The program capacity can be compressed. Furthermore, by having Q register, Q 'register, U register and a plurality of high-order specification registers, the number of times of replacement due to the use of high-order registers becomes smaller than when only one high-order register is used, and program capacity is further compressed. be able to.

上記の例ではIN命令、OUT命令でI/Oをアクセスしたが、IN命令、OUT命令でメモリ空間をアクセスしても良い。このことは、例えばメモリ上の3つの256バイト領域をアクセスする場合にQレジスタ、Q’レジスタ、Uレジスタにそれぞれの上位8ビットを指定しておき、LDQ命令とIN命令OUT命令でそれぞれの領域をアクセスしても良い。   In the above example, the I / O is accessed by the IN instruction and the OUT instruction, but the memory space may be accessed by the IN instruction and the OUT instruction. This means that, for example, when accessing three 256-byte areas on memory, the upper 8 bits of each are designated in the Q register, Q 'register, and U register, and each area is specified by the LDQ instruction and the IN instruction OUT instruction. You may access

図5は、本実施形態のアドレス空間を示した、I/O用のアドレス空間を含むメモリマップである。この1つのメモリマップの中に、メモリのためのアドレス空間の他にI/Oに接続された内蔵デバイスにアクセスするための制御エリア37が設けられている。この制御エリア37を指定する16ビットのうちの上位8ビットは、Uレジスタに予め指定されているデータである。したがって、実際の内蔵デバイスのアドレスは、実質的には下位8ビットによって指定される。   FIG. 5 is a memory map including an address space for I / O, showing the address space of this embodiment. In this one memory map, in addition to the address space for the memory, a control area 37 for accessing the built-in device connected to the I / O is provided. The upper 8 bits of the 16 bits specifying the control area 37 are data previously specified in the U register. Therefore, the address of the actual built-in device is substantially designated by the lower 8 bits.

さらに、図5のメモリマップに示したメモリ領域には、遊技機用プログラムが配置される「使用領域」と、遊技機用プログラムとは関係なく、法令で定められているチップの試験に必要な処理及び不正防止を目的としたプログラムが配置される「使用領域外」とが含まれる。使用領域には、0000hから始まるユーザプログラムエリア30(Y1バイト)、ユーザデータエリア31(Y2バイト)、アドレスがXXXX7から始まるY4バイトの第1ユーザRAM32、アドレスがXXXX9から始まるY5バイトの第2ユーザRAM33が含まれる。ユーザプログラムエリア30及びユーザデータエリア31は、ROMなどの書き換え不能なメモリで構成され、第1ユーザRAM32、第2ユーザRAM33は、RAMなどの書き換え可能なメモリで構成される。 Furthermore, in the memory area shown in the memory map of FIG. 5, the "use area" in which the program for the gaming machine is arranged and the program for the gaming machine are necessary for the testing of chips defined by law. It includes "out of use area" in which a program for processing and fraud prevention is arranged. In the used area, user program area 30 (Y 1 byte) starting from 0000h, user data area 31 (Y 2 byte), Y 4- byte first user RAM 32 whose address starts from XXXX 7 and Y starting with address XXXX 9 A 5- byte second user RAM 33 is included. The user program area 30 and the user data area 31 are composed of a non-rewritable memory such as a ROM, and the first user RAM 32 and the second user RAM 33 are composed of a rewritable memory such as a RAM.

ユーザプログラムエリア30には、各遊技機メーカがそれぞれの遊技機ごとに開発した遊技機制御用のプログラムが格納される。ユーザデータエリア31には、ユーザプログラムエリア30に格納されている遊技機制御用のプログラムの実行時に参照するデータテーブルが格納される。第1ユーザRAM32及び第2ユーザRAM33は、ユーザプログラムエリア30に格納されている遊技機制御用のプログラムの実行中におけるワークエリアとして使用される。パチンコのプログラムの場合は第1ユーザRAM32のみを使用し、パチスロのプログラムの場合は第1ユーザRAM32と第2ユーザRAM33の両方を使用する。遊技機制御用のプログラムは、通常、遊技機の制御プログラムと割込みプログラムが実行される。第1ユーザRAM32及び第2ユーザRAM33は、ワークエリアの他に、レジスタ退避やサブルーチン、割込み処理の復帰アドレスを一時的に格納するスタックエリアとしても使用される。Qレジスタの初期値はXXXX7の上位8ビットとし、第1ユーザRAM32の上位バイトを示し、Q’レジスタの初期値はXXXX9の上位8ビットとし、第2ユーザRAM33の上位バイトを示している。 The user program area 30 stores a program for controlling a gaming machine developed by each gaming machine maker for each gaming machine. The user data area 31 stores a data table to be referred to when the program for controlling gaming machines stored in the user program area 30 is executed. The first user RAM 32 and the second user RAM 33 are used as work areas during execution of the game machine control program stored in the user program area 30. In the case of a pachinko program, only the first user RAM 32 is used, and in the case of a pachislot program, both the first user RAM 32 and the second user RAM 33 are used. Generally, a control program for a gaming machine and an interrupt program are executed as a program for controlling the gaming machine. The first user RAM 32 and the second user RAM 33 are also used as stack areas for temporarily storing return addresses of register saving, subroutines, and interrupt processing, in addition to work areas. The initial value of the Q register is the upper 8 bits of XXXX 7 and indicates the upper byte of the first user RAM 32, and the initial value of the Q 'register is the upper 8 bits of XXXX 9 and indicates the upper byte of the second user RAM 33. .

使用領域外は、アドレスがXXXX5から始まる外部プログラムエリア34(Y9バイト)と、アドレスがXXXX11から始まる外部ユーザRAM35(Y6バイト)が含まれる。外部プログラムエリア34はROMで構成され、外部ユーザRAM35は、使用領域外で更新可能なメモリで構成される。外部ブログラムエリア34には、遊技機の制御以外の、チップの試験に必要な処理及び不正防止を目的としたプログムが配置され、外部ユーザRAM35は、外部プログラムエリア34のプログラムが実行中にワークエリアとしてレジスタ退避やサブルーチンの復帰アドレスを一時的に格納するスタックエリアとして使用される。 Outside the use area, an external program area 34 (Y 9 bytes) whose address starts from XXXX 5 and an external user RAM 35 (Y 6 bytes) whose address starts from XXXX 11 are included. The external program area 34 is configured by a ROM, and the external user RAM 35 is configured by a memory that can be updated outside the use area. In the external program area 34, programs other than the control of the gaming machine for processing required for chip testing and for the purpose of preventing fraud are arranged, and the external user RAM 35 works while the program in the external program area 34 is being executed. It is used as a stack area for temporarily storing the return address of register save and subroutine as an area.

内蔵デバイス設定エリア36は、遊技機制御用チップの内蔵デバイス(タイマ、乱数回路、外部入出力回路等)の設定のためのレジスタが配置されたエリアである。内蔵デバイス制御エリア37は、遊技機制御用の内蔵デバイスのアクセス制御を行うためのエリアである。前述のように、このエリアにアクセスするための16ビットのアドレスのうち上位8ビットはUレジスタに予め初期値として設定された例えばXXXX15の上位8ビットとされている。 The built-in device setting area 36 is an area in which a register for setting a built-in device (timer, random number circuit, external input / output circuit, etc.) of the gaming machine control chip is arranged. The built-in device control area 37 is an area for performing access control of a built-in device for gaming machine control. As described above, the upper 8 bits of the 16-bit address for accessing this area are, for example, the upper 8 bits of XXXX 15 set in advance as initial values in the U register.

図6は、本実施形態に係る遊技機制用のセキュリティチップ50の平面図であり、図7は、図6に示したセキュリティチップ50の各ピンの名称及びその説明を表にして示している。図6に示すように、セキュリティチップ50には、パッケージ本体の左側に35本、右側に36本、計71本のピンが設けられている。セキュリティチップ50が基板に実装される際に、これらのピンが基板に設けられた各種信号線や電源線と接続される。遊技機制御用のセキュリティチップは、規則上、表面実装部品や多層基板を採用できないことになっており、図6に示すようなDIP形状のパッケージとしなければならない。このため、パッケージの強度と製造工程を考慮すると現状のピン数71本が設けうる最大のピン数である。   FIG. 6 is a plan view of the security chip 50 for gaming machine control according to the present embodiment, and FIG. 7 is a table showing names of the respective pins of the security chip 50 shown in FIG. As shown in FIG. 6, the security chip 50 is provided with 35 pins on the left side and 36 pins on the right side of the package body, for a total of 71 pins. When the security chip 50 is mounted on a substrate, these pins are connected to various signal lines and power supply lines provided on the substrate. A security chip for controlling a gaming machine can not regularly adopt a surface mounting part or a multilayer substrate, and it must be a DIP-shaped package as shown in FIG. Therefore, considering the strength of the package and the manufacturing process, it is the maximum number of pins that can be provided by the current 71 pins.

遊技機用メーカは、それぞれに自社の遊技機用のプログラムを開発するが、その際に自由に使うことのできるピンの数が多ければそれだけ開発の自由度も高くなる。しかし、実際のセキュリティチップは、図6に示すように、非常に狭い間隔で多数(71本)のピンが設けられている。この中で、前述のように検査のために使用されるピンを除いたピンが、遊技機メーカが独自の演出等のために使用できるピンとなる。このため、遊技機の演出等に自由に使うことのできるピンの数を増やしてほしいという要請が以前からあった。   Each maker of game machines develops a program for their own game machines, but the more pins that can be freely used at that time, the higher the freedom of development. However, in an actual security chip, as shown in FIG. 6, a large number (71) of pins are provided at very narrow intervals. Among these, as described above, the pins other than the pins used for the inspection become pins that can be used by game machine makers for their own effects and the like. For this reason, there has been a demand for increasing the number of pins that can be used freely for directing game machines and the like.

図8は、本実施形態に係る遊技機制御用のセキュティチップのメモリ及び入出力部(I/O)に関連する部分のハードウェア的な回路図である。本実施形態では、図5に示したよう、I/O(入出力部)に接続された内蔵デバイスのためのアドレス空間をメモリアドレス空間と一体化したことによって、I/Oアドレス空間とメモリアドレス空間とが別々だったこれまでの遊技機用のセキュリティチップにおいて必要とされたメモリリクエスト(MREQ)及びI/Oリクエスト(IORQ)という2つのピンが不要となる。そのため従来メモリリクエスト(MREQ)及びI/Oリクエスト(IORQ)が割り振られていた2つのピンを、遊技機メーカが自由に使うことのできるピンとして解放できる。これにより、遊技機メーカでプログラム開発の自由度が高まり、より高度な遊技機用のプログラムを開発する上で有益となる。   FIG. 8 is a hardware circuit diagram of a portion related to the memory and the input / output unit (I / O) of the security chip for gaming machine control according to the present embodiment. In the present embodiment, as shown in FIG. 5, the I / O address space and the memory address are integrated by integrating the address space for the built-in device connected to the I / O (input / output unit) with the memory address space. The two pins of the memory request (MREQ) and the I / O request (IORQ), which are required in the conventional security chips for gaming machines, which are separate from the space, are not necessary. Therefore, two pins to which a conventional memory request (MREQ) and an I / O request (IORQ) have been allocated can be released as pins which can be used freely by a game machine maker. This increases the degree of freedom in program development among gaming machine manufacturers, and is useful for developing more advanced gaming machine programs.

さらに、本実施形態のように、I/Oアドレス空間をメモリアドレス空間と一体化したことによって、図9に示したような論理回路素子(ゲート)107、108、109、110は不要となり、ハードウェアが簡素化されコストも低減される。   Furthermore, as in the present embodiment, by integrating the I / O address space with the memory address space, the logic circuit elements (gates) 107, 108, 109, 110 as shown in FIG. Wear is simplified and costs are reduced.

以上、本発明の実施の形態について説明したが、これらのあくまでも実施の一形態であり、本発明の技術的範囲は上述の実施の形態に限定されず、特許請求の範囲に記載に基づいて判断されるべきである。   As mentioned above, although embodiment of this invention was described, these are one embodiment to the last, the technical scope of this invention is not limited to the above-mentioned embodiment, It judges based on a statement to a claim. It should be.

1 :CPU
2 :CPUコア
3 :バスコントローラ
4 :メモリ(ユニット)
5 :入出力部(I/O)
1,62:アドレスデコーダ(DEC)
10 :外部入力ユニット
11 :状態制御ユニット
12 :中央制御ユニット
13 :命令デコーダ
14 :データパスユニット
15 :レジスタユニット
30 :ユーザプログラムエリア
31 :ユーザデータエリア
32 :第1ユーザRAM
33 :第2ユーザRAM
34 :外部プログラムエリア
35 :外部ユーザRAM
36 :内蔵デバイス設定エリア
37 :内蔵デバイス制御エリア
50 :セキュリティチップ
53 :第2ユーザRAM
57 :制御エリア
101 :CPU
104 :メモリユニット
105 :入出力部(I/O)1061,1062:アドレスデコーダ(DEC)
107,108,109,110:論理回路素子
1: CPU
2: CPU core 3: Bus controller 4: Memory (unit)
5: Input / output unit (I / O)
6 1 , 6 2 : Address decoder (DEC)
10: external input unit 11: state control unit 12: central control unit 13: instruction decoder 14: data path unit 15: register unit 30: user program area 31: user data area 32: first user RAM
33: Second user RAM
34: External program area 35: External user RAM
36: built-in device setting area 37: built-in device control area 50: security chip 53: second user RAM
57: Control area 101: CPU
104: memory unit 105: output unit (I / O) 106 1, 106 2: an address decoder (DEC)
107, 108, 109, 110: logic circuit elements

Claims (7)

メモリ用のアドレス空間と入出力部(I/O)用のアドレス空間とを備え、それぞれの空間をアクセスする命令を備えるCPUと上位互換性を有する遊技機用のセキュリティチップであって、
前記入出力部用のアドレス空間を前記メモリ用のアドレス空間に統合した遊技機用のセキュリティチップ。
A security chip for a gaming machine having a host address space for memory and an address space for input / output unit (I / O) and having upward compatibility with a CPU having an instruction to access each space,
A security chip for a gaming machine, wherein an address space for the input / output unit is integrated into an address space for the memory.
前記入出力部用のアドレス空間を指定するアドレスの上位ビットは、データ記憶デバイスに予め記憶されており、入出力アドレス空間を指定する際に前記データ記憶デバイスから前記上位ビットのデータを読み出してアドレスを指定する上位ビットとして使用する、請求項1に記載のセキュリティチップ。   The upper bits of the address specifying the address space for the input / output unit are stored in advance in the data storage device, and when specifying the input / output address space, the data of the upper bits is read from the data storage device The security chip according to claim 1, wherein the security chip is used as an upper bit for designating. 前記メモリ用のアドレス空間をアクセスする命令及び前記入出力用のアドレス空間をアクセスする命令により、統合されたメモリ用のアドレス空間のすべてをアクセス可能とした請求項1又は2に記載のセキュリティチップ。   The security chip according to claim 1 or 2, wherein all of the integrated memory address spaces can be accessed by an instruction to access the memory address space and an instruction to access the input / output address space. 前記データ記憶デバイスは、CPU内の専用レジスタである、請求項2に記載のセキュリティチップ。   The security chip according to claim 2, wherein the data storage device is a dedicated register in a CPU. アドレスの上位を示す第1のレジスタ及び第2のレジスタを備え、前記第1のレジスタが第1の命令に対応し、前記第2のレジスタが第2の命令に対応し、CPUが前記第1の命令と前記第2の命令ですべてのメモリ空間をアクセスする、遊技機用のセキュリティチップ。   A first register indicating a high order of an address and a second register are provided, the first register corresponds to a first instruction, the second register corresponds to a second instruction, and the CPU generates the first instruction. A security chip for a gaming machine, which accesses all the memory space with the second command and the second command. 前記第1のレジスタには、対応する裏レジスタが設けられている、請求項5に記載のセキュティチップ。   The security chip according to claim 5, wherein the first register is provided with a corresponding back register. 請求項1乃至6のいずれか一項に記載のセキュリティチップを搭載した遊技機。   A gaming machine equipped with the security chip according to any one of claims 1 to 6.
JP2019079419A 2019-04-18 2019-04-18 Control chip and game machine using the same Pending JP2019114303A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019079419A JP2019114303A (en) 2019-04-18 2019-04-18 Control chip and game machine using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019079419A JP2019114303A (en) 2019-04-18 2019-04-18 Control chip and game machine using the same

Publications (1)

Publication Number Publication Date
JP2019114303A true JP2019114303A (en) 2019-07-11

Family

ID=67222781

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019079419A Pending JP2019114303A (en) 2019-04-18 2019-04-18 Control chip and game machine using the same

Country Status (1)

Country Link
JP (1) JP2019114303A (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62131351A (en) * 1985-12-04 1987-06-13 Nec Corp Effective address calculating device
JPS63116236A (en) * 1986-11-05 1988-05-20 Hitachi Ltd Information processor
JPH03122740A (en) * 1989-10-05 1991-05-24 Nec Corp Input/output instruction extending system
JPH0540694A (en) * 1991-08-02 1993-02-19 Mitsubishi Electric Corp Cache memory device
JPH0836485A (en) * 1994-05-17 1996-02-06 Seiko Epson Corp Information processor and method for controlling information processor
JPH0969072A (en) * 1995-08-31 1997-03-11 Nec Corp Memory mapped i/o control circuit
JP2009000348A (en) * 2007-06-22 2009-01-08 Le Tekku:Kk Chip for game machine
JP2009183500A (en) * 2008-02-07 2009-08-20 Daito Giken:Kk Game stand
JP2012223334A (en) * 2011-04-19 2012-11-15 Daito Giken:Kk Game machine

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62131351A (en) * 1985-12-04 1987-06-13 Nec Corp Effective address calculating device
JPS63116236A (en) * 1986-11-05 1988-05-20 Hitachi Ltd Information processor
JPH03122740A (en) * 1989-10-05 1991-05-24 Nec Corp Input/output instruction extending system
JPH0540694A (en) * 1991-08-02 1993-02-19 Mitsubishi Electric Corp Cache memory device
JPH0836485A (en) * 1994-05-17 1996-02-06 Seiko Epson Corp Information processor and method for controlling information processor
JPH0969072A (en) * 1995-08-31 1997-03-11 Nec Corp Memory mapped i/o control circuit
JP2009000348A (en) * 2007-06-22 2009-01-08 Le Tekku:Kk Chip for game machine
JP2009183500A (en) * 2008-02-07 2009-08-20 Daito Giken:Kk Game stand
JP2012223334A (en) * 2011-04-19 2012-11-15 Daito Giken:Kk Game machine

Similar Documents

Publication Publication Date Title
US4450519A (en) Psuedo-microprogramming in microprocessor in single-chip microprocessor with alternate IR loading from internal or external program memories
CN107548492B (en) Central processing unit with enhanced instruction set
US4087854A (en) Minicomputer system with an arithmetic control unit integrated on a one-chip semiconductor device
JP4226085B2 (en) Microprocessor and multiprocessor system
US4130869A (en) Microprogram controlled system
TWI803596B (en) Electronic apparatus, memory managing method, and non-transitory machine-readable medium
US20240028338A1 (en) Histogram operation
EP2396723B1 (en) Microcontroller with special banking instructions and method therefor
JP4988082B2 (en) Microprocessor and data processing system
JPH03216776A (en) Integrated circuit device and microprocessor consisting of this circuit device
JPH01119828A (en) Microprocessor
US5680632A (en) Method for providing an extensible register in the first and second data processing systems
KR920006615B1 (en) Method and apparatus having both the direct mapping and bank mapping schemes
KR20010072491A (en) Data processor with an arithmetic logic unit and a stack
JP2019114303A (en) Control chip and game machine using the same
CN107851015B (en) Vector operation digit size control
US7085973B1 (en) Testing address lines of a memory controller
JPH04305735A (en) Microprogram control circuit
US5187782A (en) Data processing system
JPH0628177A (en) Microprocessor
WO2000062162A2 (en) Method and system for updating user memory in emulator systems
JPS59206970A (en) Microprocessor
JP2731618B2 (en) emulator
JPH10254725A (en) Processor, and its bug adoiding method
JPH0683986A (en) Single chip microcomputer

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20190423

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220404

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230320

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231116

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240215