JP7064969B2 - Pachinko machine - Google Patents
Pachinko machine Download PDFInfo
- Publication number
- JP7064969B2 JP7064969B2 JP2018109369A JP2018109369A JP7064969B2 JP 7064969 B2 JP7064969 B2 JP 7064969B2 JP 2018109369 A JP2018109369 A JP 2018109369A JP 2018109369 A JP2018109369 A JP 2018109369A JP 7064969 B2 JP7064969 B2 JP 7064969B2
- Authority
- JP
- Japan
- Prior art keywords
- serial
- data
- image
- register
- command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Description
本発明は、遊技動作に起因する抽選処理を行い、その抽選結果に対応する画像演出を実行する遊技機に関する。 The present invention relates to a gaming machine that performs a lottery process due to a gaming operation and executes an image effect corresponding to the lottery result.
パチンコ機などの弾球遊技機は、遊技盤に設けた図柄始動口と、複数の表示図柄による一連の図柄変動態様を表示する図柄表示部と、開閉板が開閉される大入賞口などを備えて構成されている。そして、図柄始動口に設けられた検出スイッチが遊技球の通過を検出すると入賞状態となり、遊技球が賞球として払出された後、図柄表示部では表示図柄が所定時間変動される。その後、7・7・7などの所定の態様で図柄が停止すると大当り状態となり、大入賞口が繰返し開放されて、遊技者に有利な遊技状態を発生させている。 A ball game machine such as a pachinko machine is equipped with a symbol start port provided on the game board, a symbol display unit that displays a series of symbol variation modes by a plurality of display symbols, and a large winning opening for opening and closing the opening / closing plate. It is composed of. Then, when the detection switch provided at the symbol start port detects the passage of the game ball, the winning state is set, and after the game ball is paid out as the prize ball, the displayed symbol is changed for a predetermined time on the symbol display unit. After that, when the symbol is stopped in a predetermined mode such as 7, 7, 7, a big hit state is reached, and the big winning opening is repeatedly opened to generate a game state advantageous to the player.
このような遊技状態を発生させるか否かは、図柄始動口に遊技球が入賞したことを条件に実行される大当り抽選で決定されており、上記の図柄変動動作は、この抽選結果を踏まえたものとなっている。例えば、抽選結果が当選状態である場合には、リーチアクションなどと称される演出動作を20秒前後実行し、その後、特別図柄を整列させている。一方、ハズレ状態の場合にも、同様のリーチアクションが実行されることがあり、この場合には、遊技者は、大当り状態になることを強く念じつつ演出動作の推移を注視することになる。そして、図柄変動動作の終了時に、停止ラインに所定図柄が揃えば、大当り状態であることが遊技者に保証されたことになる。 Whether or not to generate such a game state is determined by a big hit lottery executed on the condition that the game ball wins at the symbol start opening, and the above symbol variation operation is based on this lottery result. It has become a thing. For example, when the lottery result is in the winning state, an effect operation called a reach action or the like is executed for about 20 seconds, and then special symbols are arranged. On the other hand, the same reach action may be executed even in the case of a lost state, and in this case, the player pays close attention to the transition of the staging operation while strongly paying attention to the big hit state. Then, if the predetermined symbols are aligned on the stop line at the end of the symbol variation operation, the player is guaranteed to be in the big hit state.
この種の遊技機では、各種の演出を豊富化したい一方で、機器構成を簡素化し、CPUの制御負担を軽減化したい要請が強い。 In this type of gaming machine, while it is desired to enrich various effects, there is a strong demand for simplifying the device configuration and reducing the control load on the CPU.
この発明は、上記の課題に鑑みてなされたものであって、機器構成を極限的に簡素化し、また、CPUの制御負担を軽減化した遊技機を提供することを目的とする。 The present invention has been made in view of the above problems, and an object of the present invention is to provide a gaming machine in which the device configuration is extremely simplified and the control burden on the CPU is reduced.
上記の目的を達成するため、本発明は、画像演出と、ランプ演出及び/又は役物演出を、統一的に制御するホストCPUを有する演出制御手段(50)と、前記演出制御手段から受けるコマンドリストに基づいて、一又は複数の表示装置の各1フレーム分の画像データを生成して画像演出を実行する画像生成手段(51)と、ランプ演出又は役物演出を実効化する一群のドライバ素子に対して、シリアル信号をシリアル送信するシリアル出力手段(55)と、前記ホストCPUを経由しないデータ転送動作を実現するデータ転送手段(53)と、が内蔵された複合チップと、ランプ演出又は役物演出の基礎データとなる不揮発データ(LMP/MOT)を記憶する不揮発性メモリと、を有して構成された遊技機であって、前記演出制御手段は、前記不揮発性メモリから前記データ転送手段への読出し動作に関する読出し動作パラメータを、複合チップの所定レジスタに設定する第1処理と、前記データ転送手段から前記シリアル出力手段の送信バッファへの書込み動作に関する書込み動作パラメータを、複合チップの所定レジスタに設定する第2処理と、前記各動作パラメータに基づいたデータ転送動作の動作開始をデータ転送手段に指示すると共に、送信バッファのデータのシリアル送信の開始をシリアル出力手段に指示する第3処理と、を実行している。 In order to achieve the above object, the present invention has an effect control means (50) having a host CPU that uniformly controls an image effect, a lamp effect, and / or an accessory effect, and a command received from the effect control means. An image generation means (51) that generates image data for each frame of one or a plurality of display devices based on a list to execute an image effect, and a group of driver elements for effective a lamp effect or an accessory effect. On the other hand, a composite chip having a built-in serial output means (55) for serially transmitting a serial signal and a data transfer means (53) for realizing a data transfer operation without going through the host CPU, and a lamp effect or a role. A gaming machine configured to have a non-volatile memory (LMP / MOT) that stores non-volatile data (LMP / MOT) that is basic data for producing an object, and the effect control means is a data transfer means from the non-volatile memory. The first process of setting the read operation parameter related to the read operation to the predetermined register of the composite chip, and the write operation parameter related to the write operation from the data transfer means to the transmission buffer of the serial output means are set to the predetermined register of the composite chip. The second process of instructing the data transfer means to start the operation of the data transfer operation based on each of the operation parameters, and the third process of instructing the serial output means to start the serial transmission of the data in the transmission buffer. , Is running.
上記した本発明の遊技機によれば、演出制御手段、画像生成手段、及び音声制御手段を内蔵する複合チップを有するので、機器構成が簡素化され、また、演出制御手段は、第1処理~第3処理を実行するだけで良いので、ランプ演出や役物演出の制御負担が大幅に軽減される。 According to the gaming machine of the present invention described above, since the composite chip incorporating the staging control means, the image generation means, and the voice control means is provided, the device configuration is simplified, and the staging control means is the first process to be performed. Since it is only necessary to execute the third process, the control burden of the lamp effect and the character effect is greatly reduced.
以下、実施例に基づいて本発明を詳細に説明する。図1は、本実施例のパチンコ機GMを示す斜視図である。このパチンコ機GMは、島構造体に着脱可能に装着される矩形枠状の木製外枠1と、外枠1に固着されたヒンジ2を介して開閉可能に枢着される前枠3とで構成されている。この前枠3には、遊技盤5が、裏側からではなく、表側から着脱自在に装着され、その前側には、ガラス扉6と前面板7とが夫々開閉自在に枢着されている。
Hereinafter, the present invention will be described in detail based on examples. FIG. 1 is a perspective view showing the pachinko machine GM of this embodiment. This pachinko machine GM consists of a rectangular frame-shaped wooden
ガラス扉6の外周には、LEDランプなどによる電飾ランプが、略C字状に配置されている。一方、ガラス扉6の上部左右位置と下側には、全3個のスピーカが配置されている。上部に配置された2個のスピーカは、各々、左右チャネルR,Lの音声を出力し、下側のスピーカは重低音を出力するよう構成されている。
Illuminations lamps such as LED lamps are arranged in a substantially C shape on the outer periphery of the
前面板7には、発射用の遊技球を貯留する上皿8が装着され、前枠3の下部には、上皿8から溢れ出し又は抜き取った遊技球を貯留する下皿9と、発射ハンドル10とが設けられている。発射ハンドル10は発射モータと連動しており、発射ハンドル10の回動角度に応じて動作する打撃槌によって遊技球が発射される。
An
上皿8の外周面には、チャンスボタン11が設けられている。このチャンスボタン11は、遊技者の左手で操作できる位置に設けられており、遊技者は、発射ハンドル10から右手を離すことなくチャンスボタン11を操作できる。このチャンスボタン11は、通常時には機能していないが、ゲーム状態がボタンチャンス状態となると内蔵ランプが点灯されて操作可能となる。なお、ボタンチャンス状態は、必要に応じて設けられるゲーム状態である。
A
上皿8の右部には、カード式球貸し機に対する球貸し操作用の操作パネル12が設けられ、カード残額を3桁の数字で表示する度数表示部と、所定金額分の遊技球の球貸しを指示する球貸しスイッチと、ゲーム終了時にカードの返却を指令する返却スイッチとが設けられている。
On the right side of the
図2に示すように、遊技盤5の表面には、金属製の外レールと内レールとからなるガイドレール13が環状に設けられ、その略中央には、中央開口HOが設けられている。そして、中央開口HOの下方には、不図示の可動演出体が隠蔽状態で収納されており、可動予告演出時には、その可動演出体が上昇して露出状態となることで、所定の信頼度の予告演出を実現している。ここで、予告演出とは、遊技者に有利な大当り状態が招来することを不確定に報知する演出であり、予告演出の信頼度とは、大当り状態が招来する確率を意味している。
As shown in FIG. 2, on the surface of the
中央開口HOには、大型の液晶カラーディスプレイ(LCD)で構成されたメイン表示装置DS1が配置され、メイン表示装置DS1の右側には、小型の液晶カラーディスプレイで構成された可動式のサブ表示装置DS2が配置されている。メイン表示装置DS1は、大当り状態に係わる特定図柄を変動表示すると共に背景画像や各種のキャラクタなどをアニメーション的に表示する装置である。この表示装置DS1は、中央部に特別図柄表示部Da~Dcと右上部に普通図柄表示部19とを有している。そして、特別図柄表示部Da~Dcでは、大当り状態の招来を期待させるリーチ演出が実行されることがあり、特別図柄表示部Da~Dc及びその周りでは、適宜な予告演出などが実行される。
A main display device DS1 composed of a large liquid crystal color display (LCD) is arranged in the central opening HO, and a movable sub display device composed of a small liquid crystal color display is arranged on the right side of the main display device DS1. DS2 is arranged. The main display device DS1 is a device that displays a specific symbol related to a jackpot state in a variable manner and displays a background image, various characters, and the like in an animation manner. The display device DS1 has a special symbol display unit Da to Dc in the central portion and a normal
遊技球が落下移動する遊技領域には、第1図柄始動口15a、第2図柄始動口15b、第1大入賞口16a、第2大入賞口16b、普通入賞口17、及び、ゲート18が配設されている。これらの入賞口15~18は、それぞれ内部に検出スイッチを有しており、遊技球の通過を検出できるようになっている。
In the game area where the game ball falls and moves, the first symbol start opening 15a, the second symbol start opening 15b, the first big winning
第1図柄始動口15aの上部には、導入口INから進入した遊技球がシーソー状又はルーレット状に移動した後に、第1図柄始動口15に入賞可能に構成された演出ステージ14が配置されている。そして、第1図柄始動口15に遊技球が入賞すると、特別図柄表示部Da~Dcの変動動作が開始されるよう構成されている。
At the upper part of the first
第2図柄始動口15bは、左右一対の開閉爪を備えた電動式チューリップで開閉されるように構成され、普通図柄表示部19の変動後の停止図柄が当り図柄を表示した場合には、所定時間だけ、若しくは、所定個数の遊技球を検出するまで、開閉爪が開放されるようになっている。
The second
なお、普通図柄表示部19は、普通図柄を表示するものであり、ゲート18を通過した遊技球が検出されると、普通図柄が所定時間だけ変動し、遊技球のゲート18の通過時点において抽出された抽選用乱数値により決定される停止図柄を表示して停止する。
The normal
第1大入賞口16aは、前後方向に進退するスライド盤を有して構成され、第2大入賞口16bは、下端が軸支されて前方に開放する開閉板を有して構成されている。第1大入賞口16aや第2大入賞口16bの動作は、特に限定されないが、この実施例では、第1大入賞口16aは、第1図柄始動口15aに対応し、第2大入賞口16bは、第1図柄始動口15bに対応するよう構成されている。
The first big winning
すなわち、第1図柄始動口15aに遊技球が入賞すると、特別図柄表示部Da~Dcの変動動作が開始され、その後、所定の大当り図柄が特別図柄表示部Da~Dcに整列すると、第1大当りたる特別遊技が開始され、第1大入賞口16aのスライド盤が、前方に開放されて遊技球の入賞が容易化される。
That is, when the game ball wins in the first symbol start opening 15a, the variable operation of the special symbol display units Da to Dc is started, and then when the predetermined jackpot symbols are aligned with the special symbol display portions Da to Dc, the first jackpot The barrel special game is started, and the slide board of the first large winning
一方、第2図柄始動口15bへの遊技球の入賞によって開始された変動動作の結果、所定の大当り図柄が特別図柄表示部Da~Dcに整列すると、第2大当りたる特別遊技が開始され、第2大入賞口16bの開閉板が開放されて遊技球の入賞が容易化される。特別遊技(大当り状態)の遊技価値は、整列する大当り図柄などに対応して種々相違するが、何れの遊技価値が付与されるかは、遊技球の図柄始動口15a,15bへの入賞時に実行される大当り抽選の抽選結果に基づいて予め決定される。
On the other hand, as a result of the variable operation started by winning the game ball to the second symbol start opening 15b, when the predetermined jackpot symbols are aligned with the special symbol display units Da to Dc, the second jackpot special game is started and the second jackpot is started. The opening / closing plate of the two major winning
典型的な大当り状態では、大入賞口16の開閉板が開放された後、所定時間が経過し、又は所定数(例えば10個)の遊技球が入賞すると開閉板が閉じる。このような動作は、最大で例えば15回まで継続され、遊技者に有利な状態に制御される。なお、特別図柄表示部Da~Dcの変動後の停止図柄が特別図柄のうちの特定図柄であった場合には、特別遊技の終了後のゲームが高確率状態(確変状態)となるという特典が付与される。
In a typical big hit state, the opening / closing plate closes when a predetermined time elapses after the opening / closing plate of the large winning
ところで、本実施例では、大当り状態を決定する大当り抽選や、その他の抽選確率を、係員の設定操作に基づいて、複数段階の何れかに設定できるようになっている。係員による抽選確率の設定操作は、特別な設定キーSET(図3)によって電源投入時に限り許可される。 By the way, in this embodiment, the jackpot lottery for determining the jackpot state and other lottery probabilities can be set to any of a plurality of stages based on the setting operation of the staff. The operation of setting the lottery probability by the staff is permitted only when the power is turned on by the special setting key SET (FIG. 3).
図3は、上記した各動作を実現するパチンコ機GMの全体回路構成を示すブロック図であり、図4は、演出制御基板22について、やや詳細に記載したブロック図である。
FIG. 3 is a block diagram showing the overall circuit configuration of the pachinko machine GM that realizes each of the above operations, and FIG. 4 is a block diagram showing the
図3に示す通り、このパチンコ機GMは、AC24Vを受けて各種の直流電圧や、電源異常信号ABN1、ABN2やシステムリセット信号(電源リセット信号)SYSなどを出力する電源基板20と、遊技制御動作を中心統括的に担う主制御基板21と、主制御基板21から受けた制御コマンドCMDに基づいて各種の演出動作を統一的に実行する演出制御基板22と、主制御基板21から受けた制御コマンドCMD’に基づいて払出モータMを制御して遊技球を払い出す払出制御基板23と、遊技者の操作に応答して遊技球を発射させる発射制御基板24と、を中心に構成されている。
As shown in FIG. 3, this pachinko machine GM has a
上記の構成に対応して、主制御部基板21は、遊技盤中継基板31を経由して、遊技盤5の各遊技部品に接続されている。そして、遊技盤上の各入賞口16~18に内蔵された検出スイッチのスイッチ信号を受けて、必要な抽選処理を実行すると共に、電動式チューリップなどのソレノイド類を適宜に駆動している。
Corresponding to the above configuration, the main
演出制御基板22には、表示装置DS1,DS2に伝送される画像信号を中継する液晶インタフェイス基板(液晶IF基板)25が、配線ケーブルを使用することなく、雄雌コネクタで直結されている。また、液晶IF基板25には、遊技実績情報などを不揮発的に記憶する不揮発性メモリ26(強誘電体メモリFeRAM:Ferroelectric Random Access Memory)と、現在時刻を計時可能な時計回路27(RTCリアルタイムクロック)とが搭載されている。
A liquid crystal interface board (liquid crystal IF board) 25 that relays image signals transmitted to the display devices DS1 and DS2 is directly connected to the
なお、主制御基板21が出力する制御コマンドCMDは、直接的に、演出制御基板22に伝送されるが、制御コマンドCMD’は、主基板中継基板32を経由して、払出制御基板23に伝送される。これらの制御コマンドCMD,CMD’は、何れも16ビット長であるが、8ビット長毎に2回に分けてパラレル送信されている。
The control command CMD output by the
主制御基板21、演出制御基板22と払出制御基板23には、ワンチップマイコンによるコンピュータ回路が搭載されている。一方、演出制御基板22には、画像プロセッサ51、音声プロセッサ52、及び、ホストCPU50などを内蔵する単一電子素子(複合チップ40)たるコンピュータ回路が搭載されており、ホストCPU50が、音声演出と、ランプ演出と、役物演出と、画像演出を一元的に制御している(図4参照)。なお、音声プロセッサ52が複合チップ40に内蔵されているので、以下の説明では、音声プロセッサ52を、特に、サウンドエンジン52と呼ぶことがある。また、画像プロセッサ51は、この機能を実現する複数の回路ブロック60~63によって実現される(図5参照)。
A computer circuit using a one-chip microcomputer is mounted on the
また、以下の説明において、制御基板21~23と液晶IF基板25に搭載された回路、及びその回路によって実現される動作を機能的に総称して、主制御部21、演出制御部22、及び払出制御部23と言う。なお、主制御部21に対して、演出制御部22と払出制御部23の全部又は一部がサブ制御部となる。
Further, in the following description, the circuits mounted on the
ところで、このパチンコ機GMは、図3の破線で囲む枠側部材GM1と、遊技盤5の背面に固定された盤側部材GM2とに大別されている。枠側部材GM1には、ガラス扉6や前面板7が枢着された前枠3と、その外側の木製外枠1とが含まれており、機種の変更に拘わらず、長期間にわたって遊技ホールに固定的に設置される。一方、盤側部材GM2は、機種変更に対応して交換され、新たな盤側部材GM2が、元の盤側部材の代わりに枠側部材GM1に取り付けられる。なお、枠側部材1を除く全てが、盤側部材GM2である。
By the way, this pachinko machine GM is roughly classified into a frame-side member GM1 surrounded by a broken line in FIG. 3 and a board-side member GM2 fixed to the back surface of the
図3の破線枠に示す通り、枠側部材GM1には、電源基板20と、払出制御基板23と、発射制御基板24と、枠中継基板35と、CチャンネルのLEDランプ群を駆動するランプ駆動基板36と、Eチャンネルの役物モータ群を駆動するモータ駆動基板37と、が含まれており、これらの回路基板が、前枠3の適所に各々固定されている。
As shown in the broken line frame in FIG. 3, the frame-side member GM1 includes a
一方、遊技盤5の背面には、盤側部材GM2として、主制御基板21、演出制御基板22、及び、液晶IF基板25が、表示装置DS1,DS2やその他の回路基板と共に固定されている。ここで、その他の回路基板には、DチャンネルのLEDランプ群を駆動するランプ駆動基板29と、Fチャンネルの役物モータ群を駆動するモータ駆動基板30と、枠中継基板34と、が含まれている。
On the other hand, on the back surface of the
枠側のモータ駆動基板37や、盤側のモータ駆動基板30には、役物モータを駆動する複数のモータドライバDVjが配置される他、複数ビット長のパラレル信号を受けて、シリアル信号に変換して出力する信号取得回路GETが各々配置されている。そして、モータ駆動基板37の信号取得回路GETには、チャンスボタン11のスイッチ信号や、役物モータ毎に配置された原点センサのセンサ信号が、複数ビット長のパラレル信号として供給される。
A plurality of motor drivers DVj for driving accessory motors are arranged on the
モータ駆動基板30についても同様であり、モータ駆動基板30の信号取得回路GETには、役物モータ毎に配置された原点センサのセンサ信号が、複数ビット長のパラレル信号として供給されるよう構成されている。
The same applies to the
詳しくは後述するが、本実施例の場合、CチャンネルのLEDランプ群、DチャンネルのLEDランプ群、Eチャンネルの役物モータ群、及び、Fチャンネルの役物モータ群は、全て、演出制御基板22のシリアルポート55からシリアル伝送される駆動データに基づいて駆動されている。ここで、Cチャンネル~Fチャンネルの称呼は、複合チップ40に内蔵されたシリアルポート55のチャネル番号#C~#Fに対応している。
Although details will be described later, in the case of this embodiment, the C channel LED lamp group, the D channel LED lamp group, the E channel accessory motor group, and the F channel accessory motor group are all effect control boards. It is driven based on the drive data serially transmitted from the
上記した駆動基板36,37を含んだ枠側部材GM1と、駆動基板29,30を含んだ盤側部材GM2とは、一箇所に集中配置された接続コネクタC1~C4によって電気的に接続されている。したがって、枠側部材GM1と盤側部材GM2は、一の操作で電気接続が完了し、一の操作で電気接続が遮断されることになる。
The frame-side member GM1 including the
電源基板20は、接続コネクタC2を通して、主基板中継基板32に接続され、接続コネクタC3を通して、電源中継基板33に接続されている。電源基板20には、交流電源の投入と遮断とを監視する電源監視部MNTが設けられている。電源監視部MNTは、交流電源が投入されたことを検知すると、所定時間だけシステムリセット信号SYSをLレベルに維持した後に、これをHレベルに遷移させる。
The
また、電源監視部MNTは、交流電源の遮断を検知すると、電源異常信号ABN1,ABN2を、直ちにLレベルに遷移させる。電源異常信号ABN1,ABN2は、電源投入後に速やかにHレベルとなる。 Further, when the power supply monitoring unit MNT detects that the AC power supply is cut off, the power supply abnormality signals ABN1 and ABN2 are immediately transitioned to the L level. The power supply abnormality signals ABN1 and ABN2 immediately reach the H level after the power is turned on.
本実施例のシステムリセット信号は、交流電源に基づく直流電源によって生成されている。そのため、交流電源の投入(通常は電源スイッチのON)を検知してHレベルに増加した後は、直流電源電圧が異常レベルまで低下しない限り、Hレベルを維持する。したがって、直流電源電圧が維持された状態で、交流電源が瞬停状態となっても、システムリセット信号SYSがCPUをリセットすることはない。なお、電源異常信号ABN1,ABN2は、交流電源の瞬停状態でも出力される。 The system reset signal of this embodiment is generated by a DC power source based on an AC power source. Therefore, after the AC power supply is detected (usually the power switch is turned on) and increased to the H level, the H level is maintained unless the DC power supply voltage drops to an abnormal level. Therefore, even if the AC power supply is in a momentary power failure state while the DC power supply voltage is maintained, the system reset signal SYS does not reset the CPU. The power supply abnormality signals ABN1 and ABN2 are output even in the momentary power failure state of the AC power supply.
主基板中継基板32は、電源基板20から出力される電源異常信号ABN1、バックアップ電源BAK、及びDC5V,DC12V,DC32Vを、そのまま主制御部21に出力している。一方、電源中継基板33は、電源基板20から受けたシステムリセット信号SYSや、交流及び直流の電源電圧を、そのまま演出制御部22に出力している。そして、演出制御部22は、受けたシステムリセット信号SYSに基づいて、基板各部に配置された電子素子を電源リセットしている。
The main
一方、払出制御基板24は、中継基板を介することなく、電源基板20に直結されており、主制御部21が受けると同様の電源異常信号ABN2や、バックアップ電源BAKを、その他の電源電圧と共に直接的に受けている。
On the other hand, the
電源基板20が出力するシステムリセット信号SYSは、電源基板20に交流電源24Vが投入されたことを示す電源リセット信号であり、この電源リセット信号に基づいて、演出制御部22を構成する各回路素子が電源リセットされるようになっている。
The system reset signal SYS output by the
但し、このシステムリセット信号SYSは、主制御部21と払出制御部23には、供給されておらず、各々の回路基板21,24のリセット回路RSTにおいて電源リセット信号(CPUリセット信号)が生成されている。そのため、例えば、接続コネクタC2がガタついたり、或いは、配線ケーブルにノイズが重畳しても、主制御部21や払出制御部23のCPUが異常リセットされるおそれはない。
However, this system reset signal SYS is not supplied to the
主制御部21や払出制御部23に設けられたリセット回路RSTは、各々ウォッチドッグタイマを内蔵しており、各制御部21,24のCPUから、定時的なクリアパルスを受けない限り、各CPUは強制的にリセットされる。
The reset circuit RST provided in the
また、この実施例では、RAMクリア信号CLRは、主制御部21で生成されて主制御部21と払出制御部23のワンチップマイコンに伝送されている。ここで、RAMクリア信号CLRは、各制御部21,24のワンチップマイコンの内蔵RAMの全領域を初期設定するか否かを決定する信号であって、係員が操作する初期化スイッチSWのON/OFF状態に対応した値を有している。
Further, in this embodiment, the RAM clear signal CLR is generated by the
図3に示す通り、初期化スイッチSWは、抽選確率などを規定する設定キーSETと同様に、主制御部21に供給されている。これら初期化スイッチSWや設定キーSETの操作は、電源投入直後に実行される主制御部21の初期処理で認識され、抽選確率などの設定処理や内蔵RAMの初期化処理が実行される。
As shown in FIG. 3, the initialization switch SW is supplied to the
その後、抽選確率などの設定値は、CPU割込み許可状態で開始される主制御部21の定常処理において、所定の制御コマンドの形式で演出制御部22に通知され、通知された設定値は、液晶IF基板25の不揮発性メモリ26に記憶される。先に説明した通り、設定キーSETは、大当り抽選などの当選確率を、複数段階の何れかに設定する用途で使用される。そして、設定キーSETの設定内容は、時計回路27から読み取った時刻情報と共に、不揮発性メモリ26に記憶される。
After that, the set value such as the lottery probability is notified to the
以上の通り、抽選確率などの設定処理や、内蔵RAMの初期化処理は、電源投入直後に限り許容され、その後に開始される定常処理で実行されることはない。但し、主制御部21の定常処理中に、係員が設定キーSETを操作した場合には、その事実が主制御部21から演出制御部22に通知されるようになっている。
As described above, the setting process such as the lottery probability and the initialization process of the built-in RAM are allowed only immediately after the power is turned on, and are not executed in the steady process started after that. However, if the person in charge operates the setting key SET during the steady processing of the
そして、設定キーSETの操作通知を受けた演出制御部22では、不揮発性メモリ26に記憶内容を読み出して、表示装置DS1に画面表示するようになっている。定常処理中における設定キーSETの操作は、係員が、営業開始前に、抽選確率の設定履歴や、遊技実績履歴を確認したい採られる操作であり、不正行為の痕跡がないことを確認したい場合などに活用される。
Then, the
そして、この設定キーSETの操作に対応して、初期化スイッチSWが操作された場合には、この通知を受けた演出制御部22では、不揮発性メモリ26の記憶内容を全て消去するようになっている。これは、例えば、その遊技機を転売するような場合に、営業秘密ともいうべき、抽選確率の設定履歴や、遊技実績履歴を消去するためである。
Then, when the initialization switch SW is operated in response to the operation of the setting key SET, the
主制御部21及び払出制御部23は、電源基板20から電源異常信号ABN1,ABN2を受けることによって、停電や営業終了に先立って、必要な終了処理を開始するようになっている。また、バックアップ電源BAKは、営業終了や停電により交流電源24Vが遮断された後も、主制御部21と払出制御部23のワンチップマイコンの内蔵RAMのデータを保持するDC5Vの直流電源である。したがって、主制御部21と払出制御部23は、電源遮断前の遊技動作を電源投入後に再開できることになる(電源バックアップ機能)。このパチンコ機では少なくとも数日は、各ワンチップマイコンのRAMの記憶内容が保持されるよう設計されている。
By receiving the power supply abnormality signals ABN1 and ABN2 from the
先に説明した通り、演出制御基板22と液晶IF基板25とはコネクタ連結によって一体化されており、演出制御部22は、電源中継基板33を経由して、電源基板20から各レベルの直流電圧(5V,12V,32V)と、システムリセット信号SYSを受けている(図3及び図4参照)。
As described above, the
また、演出制御部22は、主制御部21から制御コマンドCMDとストローブ信号STBとを受けている。そして、演出制御部22は、ランプ駆動基板29やランプ駆動基板36に搭載された多数のランプドライバDR1~DRn(図10(a)参照)に、ランプ駆動データSPOc,SPCdをシリアル伝送することで、Cチャンネルのランプ群と、Dチャンネルのランプ群を駆動して、制御コマンドCMDに基づくランプ演出を実現している。
Further, the
また、演出制御部22は、モータ駆動基板30やモータ駆動基板37に搭載された多数のモータドライバDV1~DVm(図11(a)参照)に、モータ駆動データSOe,SOfをシリアル伝送することで、Eチャンネルのモータ群と、Fチャンネルのモータ群を駆動して、制御コマンドCMDに基づく役物演出を実現している。
Further, the
特に限定されないが、本実施例の場合、クロック同期式のシリアル伝送方式を採っており、ランプ駆動基板36とランプ駆動基板29のランプドライバDRiは、クロック信号SPCKc,SPCKdに同期してランプ駆動信号SPOc,SPOdを受けている。また、モータ駆動基板37とモータ駆動基板30のモータドライバDVjは、シリアルクロックSCKe,SCKfに同期してモータ駆動信号SOe,SOfを受けている(図4参照)。
Although not particularly limited, in the case of this embodiment, a clock-synchronized serial transmission method is adopted, and the lamp driver DRi of the lamp drive board 36 and the
図4は、演出制御部22の内部構成をやや詳細に示すブロック図、図5は、複合チップの内部構成を示すブロック図である。図3や図4に示す通り、演出制御部22は、画像演出、音声演出、ランプ演出、及び、役物演出を一元的に制御する複合チップ40と、複合チップ40による演出制御動作の作業領域などとして機能するDDR3SDRAM(Double-Data-Rate3 Synchronous Dynamic Random Access Memory)41と、一元的な演出動作を実現する制御プログラム、圧縮状態の音声データSND、及び圧縮状態の画像データIMGなどを不揮発的に記憶するCGROM42と、複合チップ40から受ける音声信号を増幅してスピーカSPを駆動するデジタルアンプ43と、入力バッファ44,45A,45Bと、出力バッファ46A,46Bと、信号切換部47A,47Bと、を中心に構成されている。
FIG. 4 is a block diagram showing the internal configuration of the
なお、以下の説明では、便宜上、DDR3SDRAM41を、DDRメモリ又は外付けRAM(Random Access Memory)41と称し、CGROM42を、外付けROM(Read Only Memory)42と称することがある。
In the following description, for convenience, the
本実施例の複合チップ40に接続可能なDDRメモリ41は、最高、8Gバイト長であるが、複合チップ40(ホストCPU50)から直接アクセス可能な領域は256Mバイトである。そこで、本実施例では、この256MバイトのDDRメモリ41の直接アクセス領域に、表示装置DS1,DS2の各一フレーム分の画像データを一時保存するフレームバッファFBを確保している。また、本実施例では、外付けROM42に記憶されている音声データSNDを、電源投入時に、DDRメモリ41の直接アクセス可能領域にコピーして、複合素子40からの高速アクセスを可能にしている。
The
また、複合チップ40に接続可能な外付けROM42は、最高1Tバイト長(1,099,511,627,776 バイト=1,024 Gバイト)であるが、複合チップ40(ホストCPU50)から直接アクセス可能な領域は1Gバイトである。そこで、本実施例では、この1GMバイトの外付けROM42の直接アクセス領域に、演出動作を一元的に制御する演出制御プログラムと、演出制御プログラムが参照する演出制御データと、音声演出の基礎データである音声データSNDと、を不揮発的に記憶している。なお、演出制御データには、ランプ演出や役物演出を実現するための駆動データが含まれている。また、先に説明した通り、外付けROM42の音声データSNDは、電源投入時に、外付けROM42からDDRメモリ41に転送される。
The
図4や図5に示す通り、複合チップ40は、ホストCPU50と、表示装置DS1,DS2を駆動して画像演出を実現する画像プロセッサ51と、スピーカを駆動して音声演出を実現する音声プロセッサ52と、ホストCPU50を経由しない直接的なデータ伝送を実現するDMA(Direct Memory Access)コントローラ53と、パラレル信号を入出力するパラレルポート(PIO)54と、シリアル信号を入出力するシリアルポート(SIO)55と、メインメモリ(M1)56と、内蔵DRAM(M2)57などを中心的に内蔵している。なお、便宜上、パラレルポートと称するが、実際には、パラレル出力ポート(PO)と、パラレル入力ポート(PI)が含まれている。
As shown in FIGS. 4 and 5, the
本実施例のシリアルポート55は、チャネル#Aからチャネル#Fまで、合計6チャネル存在するが、動作モードの設定に基づいて、シリアル出力ポートか又はシリアル入力ポートとして機能させることができる。そこで、本実施例では、チャネル#Cとチャネル#Dを、ランプ演出用のシリアル出力ポートとして使用している。一方、シリアルポート55のチャネル#Eと、チャネル#Fについては、モータ演出用のシリアル出力ポートとして機能させた後、動作モードを切換え、シリアル信号を受信するシリアル入力ポートとして使用している。
The
このような内部構成を有する複合チップ40に対応して、入力バッファ44は、主制御部21から制御コマンドCMDとストローブ信号STBを受けると共に、電源基板20からシステムリセット信号SYSを受けている。そして、制御コマンドCMDとストローブ信号STBは、複合チップ40のパラレルポート54に伝送され、ストローブ信号STBに起因する割込み処理に基づいて、ホストCPU50が制御コマンドCMDを取得している。
Corresponding to the
また、枠側入力バッファ45Aは、枠中継基板34を経由して、チャネル#Eのシリアル信号SNiを受け、盤側入力バッファ45Bは、モータ駆動基板30から、チャネル#Fのシリアル信号SNjを受けるよう構成され、各入力バッファ45A,45Bは、各シリアル信号SNi,SNjを複合チップ40のシリアルポート55に伝送している。なお、各シリアル信号SNi,SNjは、出力バッファ46A,46Bを経由して伝送されるチャネル#Eと、チャネル#FのシリアルクロックSCKe,SCKfに同期して、クロック同期式でシリアル伝送される。
Further, the frame-
ここで、シリアル信号SNiには、枠側に配置された役物モータの回転位置を特定する原点信号と、チャンスボタン11が押下されたことを示すスイッチ信号とが含まれている。一方、シリアル信号SNjには、盤側に配置された役物モータの回転位置を特定する原点信号が含まれている。
Here, the serial signal SNi includes an origin signal that specifies the rotational position of the accessory motor arranged on the frame side, and a switch signal that indicates that the
次に、枠側出力バッファ46Aと盤側出力バッファ46Bは、複合チップ40のシリアルポート55やパラレルポート54から受ける各種の信号を、各々、枠中継基板34とランプ駆動基板29に出力している。
Next, the frame-
図示の通り、枠側出力バッファ46Aは、シリアルポート55からランプ駆動基板36に伝送されるチャネル#Cの信号群SPOc,SPCKc,OEcと、シリアルポート55からモータ駆動基板37に伝送されるチャネル#Eの信号群SOe,SCKe,SCKeと、パラレルポート54からモータ駆動基板37に伝送されるチャネル#EのラッチパルスLTeと、を中継している。
As shown in the figure, the frame-
一方、盤側出力バッファ46Bは、シリアルポート55からランプ駆動基板29に伝送されるチャネル#Dの信号群SPOd,SPCKd,OEdと、シリアルポート55からモータ駆動基板30に伝送されるチャネル#Fの信号群SOf,SCKf,SCKfと、パラレルポート54からモータ駆動基板30に伝送されるチャネル#FのラッチパルスLTfと、を中継している。
On the other hand, the board-
信号切換器47は、モータ駆動基板37に伝送されるチャネル#EのシリアルクロックSCKeの最終伝送先を切り換える枠側切換器47Aと、モータ駆動基板30に伝送されるチャネル#FのシリアルクロックSCKfの最終伝送先を切り換える盤側切換器47Bとに区分される。枠側切換器47Aと、盤側切換器47Bは、各々、パラレルポート54から切換制御信号CTLe,CTfを受けて、シリアルクロックSCKe,SCKfの伝送先を切り換えている。
The signal switch 47 is a frame-
本実施例では、チャネル#Eとチャネル#FのシリアルクロックSCKe,SCKfは、各々、モータ駆動基板37とモータ駆動基板30に伝送されが、切換制御信号CTLe,CTfが第1レベルであれば、各モータ駆動基板37,30において、モータドライバDVに供給され、切換制御信号CTLe,CTfが第2レベルであれば、信号取得回路GETに供給されるようになっている。
In this embodiment, the serial clocks SCKe and SCKf of the channel #E and the channel #F are transmitted to the
次に、液晶IF基板25について説明すると、液晶IF基板25には、不揮発性メモリ(FeRAM)26と、時計回路27の他に、画像プロセッサ51から第1のLVDS(Low voltage differential signaling)信号を受ける信号分配器28Aと、画像プロセッサ51から第2のLVDS信号を受ける信号変換器28Bとが搭載されている。第1のLVDS信号と、第2のLVDS信号は、メイン表示装置DS1やサブ表示装置DS2の各一フレームを構築する画像信号であり、一のピクセルについて、RGB各8ビットのピクセルデータを、水平/垂直同期信号やピクセルクロック(ドットクロック)を含んで、各々、五対の差動信号線に対して複合チップ40から出力される。
Next, the liquid crystal IF
信号分配器28Aは、メイン表示装置DS1に伝送すべき第1のLVDS信号LVDS1を受けてRGB信号を復元した後、偶数ピクセル用の画像信号と、奇数ピクセル用のRGB信号に分配した後、各々を各五対のLVDSo,LVDSe信号に変換してメイン表示装置DS1に出力する回路である(図5参照)。 The signal distributor 28A receives the first LVDS signal LVDS1 to be transmitted to the main display device DS1, restores the RGB signal, distributes the RGB signal to an even-numbered pixel image signal, and distributes the RGB signal to an odd-numbered pixel, respectively. Is a circuit that converts each of the five pairs of LVDSo and LVDSe signals and outputs them to the main display device DS1 (see FIG. 5).
この信号分配器28Aの動作に基づき、メイン表示装置DS1に伝送されるLVDS信号(LVDSo,LVDSe)のドットクロックは、元のLVDS信号のドットクロックの周波数Fdが1/2に抑制され大幅に耐ノイズ性が向上するので、高画質(高解像度)で大型の表示装置を安定して駆動することができる。なお、メイン表示装置DS1には、LVDSo,LVDSe信号に基づいて、本来のドットクロック周波数FdのRGBデジタル信号を復元する第1復元回路38Aが内蔵されており、メイン表示装置DS1の表示画面には、画像プロセッサ51が生成した高画質の一フレーム画像が表示される。
Based on the operation of the signal distributor 28A, the dot clock of the LVDS signal (LVDSo, LVDSe) transmitted to the main display device DS1 is significantly tolerated by suppressing the frequency Fd of the dot clock of the original LVDS signal to 1/2. Since the noise property is improved, it is possible to stably drive a large display device with high image quality (high resolution). The main display device DS1 has a built-in
一方、信号変換器28Bは、サブ表示装置DS2に伝送すべき第2のLVDS信号LVDS2を五対の差動信号線で受け、これを一対の差動信号線に纏めて出力する回路である。これは、サブ表示装置DS2の縦横寸法が、メイン表示装置DS1より大幅に小型である一方で、垂直同期信号の周波数(1/60Hz)が共通するので、ピクセルクロックの周波数が低いことを考慮して、配線数を大幅に減少させるためである。 On the other hand, the signal converter 28B is a circuit that receives the second LVDS signal LVDS2 to be transmitted to the sub-display device DS2 by five pairs of differential signal lines and outputs them together in a pair of differential signal lines. This is because the vertical and horizontal dimensions of the sub-display device DS2 are significantly smaller than those of the main display device DS1, but the frequency of the vertical synchronization signal (1 / 60Hz) is common, so the frequency of the pixel clock is low. This is to significantly reduce the number of wires.
本実施例では、一ピクセルを構成するRGBデータを各々8ビットで特定するので、ピクセルクロック一周期の第2のLVDS信号には、3×8ビットのRGBデータ、垂直同期信号VS、水平同期信号HS、及びデータイネーブル信号DEなどを含め合計28ビットのデータが含まれるが、信号変換器28Bでは、これら28ビットに、DCバランス用の制御データなどを加えた、合計36ビットを、一対の差動信号線に出力している。本実施例では、このような構成を採ることで、五対の信号線を、一対の信号線に大幅に抑制することができる。 In this embodiment, since the RGB data constituting one pixel is specified by 8 bits each, the second LVDS signal in one cycle of the pixel clock includes 3 × 8 bit RGB data, vertical synchronization signal VS, and horizontal synchronization signal. A total of 28 bits of data including HS and data enable signal DE are included, but in the signal converter 28B, a total of 36 bits, which is obtained by adding control data for DC balance to these 28 bits, is a pair difference. It is output to the dynamic signal line. In this embodiment, by adopting such a configuration, the five pairs of signal lines can be significantly suppressed to a pair of signal lines.
一対の信号線で伝送された複合画像信号は、サブ表示装置DS2に近接して配置された第2復元回路38Bにおいてパラレル変換された後、RGBデジタル信号に復元されて、サブ表示装置DS2に供給される。
The composite image signal transmitted by the pair of signal lines is parallel-converted by the
図5は、画像演出、音声演出、ランプ演出、及び役物演出を一元的に制御する複合チップ40の内部構造を、これに関連する外付けROM42やDDRメモリ41などと共に図示したものである。先に説明した通り、DDRメモリ41の直接アクセス可能な記憶領域には、フレームバッファFBが確保されると共に、電源投入時に、外付けROM42から転送された音声データSNDが記憶されている。
FIG. 5 illustrates the internal structure of the
ここで、フレームバッファFBは、各表示装置DS1,DS2の表示画面を特定する完成状態の画像データが一時保存される記憶領域である。本実施例のフレームバッファFBは、各表示装置DS1,DS2用に、各々、第1バッファと第2バッファのダブルバッファ構造になっており、各バッファは、垂直同期信号60Hzに基づき規定される所定の切換え周期(1/30秒)毎に、描画バンクと表示バンクに切換るよう構成されている。 Here, the frame buffer FB is a storage area in which image data in a completed state that specifies the display screens of the display devices DS1 and DS2 is temporarily stored. The frame buffer FB of this embodiment has a double buffer structure of a first buffer and a second buffer, respectively, for each display device DS1 and DS2, and each buffer is a predetermined value defined based on a vertical synchronization signal of 60 Hz. It is configured to switch between the drawing bank and the display bank every switching cycle (1/30 second).
すなわち、ある動作周期で描画バンクとして機能する第1バッファに生成された画像データは、次の動作周期では表示バンクとして機能する第1バッファから表示装置DS1,DS2に出力される。但し、このような構成のフレームバッファFBの配置位置は、何ら、DDRメモリ41に限定されず、メインメモリ56や内蔵DRAM57に配置しても良い。
That is, the image data generated in the first buffer that functions as a drawing bank in a certain operation cycle is output to the display devices DS1 and DS2 from the first buffer that functions as a display bank in the next operation cycle. However, the arrangement position of the frame buffer FB having such a configuration is not limited to the
次に、外付けROM42には、演出制御プログラムと、演出制御データと、画像データIMGと、音声データSNDと、が不揮発的に記憶されている。なお、音声データSNDには、一単位の音声演出を実現する多数の音声フレーズデータの他に、図8に示す一群のSEQコードや一群のSACコードも含まれているが、これらについては、後で説明する。
Next, the effect control program, the effect control data, the image data IMG, and the voice data SND are non-volatilely stored in the
ところで、外付けROM42のアクセス速度が問題になる場合には、別途、プログラムROM58を配置して、ここに演出制御プログラムや演出制御データを配置しても良い。この場合には、複合チップ40のCPUインタフェイス回路66を経由して、プログラムROM58がアクセスされる。
By the way, when the access speed of the
また、更に多くのデータを記憶可能な安価な素子として、NAND型フラッシュメモリで構成されたフラッシュSSD(solid state drive )などのSATA(Serial Advanced Technology Attachment )モジュール(HSSデバイス)59を使用しても良く、HSSデバイス59を、SerialATAに準拠したHSS(High Speed Serial )方式で高速アクセスする構成を採るのも好適である。この場合には、複合チップ40のHSSコントロータ70を経由して、HSSデバイス59がアクセスされる。
Further, as an inexpensive element capable of storing more data, a SATA (Serial Advanced Technology Attachment) module (HSS device) 59 such as a flash SSD (solid state drive) composed of a NAND flash memory may be used. It is also preferable to adopt a configuration in which the HSS device 59 is accessed at high speed by the HSS (High Speed Serial) method compliant with Serial ATA. In this case, the HSS device 59 is accessed via the HSS controller 70 of the
図5に示す通り、複合チップ40は、図4に示した内部回路などが内蔵されており、全ての演出動作を一元的に制御するホストCPU50と、全体として画像プロセッサ51として機能する各部60~63と、音声プロセッサ52として機能するサウンドエンジン52と、外付けROM42やDDRメモリ41などの外部素子と内部回路との間、及び、内部回路同士のDMA転送を実現するDMAコントローラ53と、パラレルデータの送受信を実現するパラレル入出力ポート(PIO)54と、シリアルデータの送受信を実現するシリアル入出力ポート(SIO)55と、3Mバイト程度の記憶容量を有するメインメモリ56と、256Mバイト程度の記憶容量を有する内蔵DRAM57と、画像コマンドリストLTの発行先として専用的に使用されるFIFO(First In First Out)構造の画像コマンドバッファ71と、画像コマンドバッファ71への中継レジスタであるコマンドライトレジスタCMwなどが内蔵されている。
As shown in FIG. 5, the
これら、複合チップ40の内部回路は、リセット制御回路67の動作に基づいて、各々、最適なタイミングで電源リセットされ、その後、クロック制御回路65が出力する動作クロックに基づいた速度で動作している。また、ホストCPU50の設定に基づいて機能する割込みコントローラ64によって、各種の割込み処理が実現される。なお、DDRメモリ41は、DDR3メモリコントローラ68を経由してアクセスされ、外付けROM42は、CGメモリコントローラ69を経由してアクセスされる。
The internal circuits of the
複合チップ40に内蔵されたメインメモリ56は、高速なランダムアクセスが可能であって、ホストCPU50のプログラム処理で必要となるスタック領域や、その他の作業領域として使用される。また、メインメモリ56の記憶領域(3Mバイト)の一部は、ホストCPUが発行する画像コマンドリストLTを記憶可能なコマンドメモリ56としても使用可能である。
The
複合チップ40に内蔵された画像プロセッサ51は、詳細には、第1と第2のLDVS信号を、信号分配器28Aや信号変換器28Bに出力するディスプレイコントローラ63と、各表示装置DS1,DS2の一フレーム分の画像データを生成するレンダリングエンジン61と、圧縮状態の画像データを外付けROM42から読み出してデコードするCGデータデコーダ62と、ホストCPU50からの動作指示に基づき、画像プロセッサ51の各部を制御するVDPコントローラ60とを有して構成されている。
The
そして、CGデータデコータ62によるデコード出力は、内蔵DRAM57に一時記憶されるよう構成されている。また、VDPコントローラに内蔵されたプリローダが機能して、圧縮状態の画像圧縮データ(以下、CGデータという)を、外付けROM42から先読み(プリロード)する場合には、先読みされたCGデータ(プリロードデータ)は、内蔵DRAM57に確保されたプリロードバッファ(図7、図18参照)に一時記憶される。
The decoded output by the CG data decorator 62 is configured to be temporarily stored in the built-in DRAM 57. Further, when the preloader built in the VDP controller functions to pre-read (preload) the compressed image compressed data (hereinafter referred to as CG data) from the
図5に示す通り、VDPコントローラ60は、ホストCPU50からREAD/WRITE可能な各種の制御レジスタCRG(R/W)を有して構成され、書込み用の制御レジスタ(CRGW)に受ける動作指示に基づいて動作し、内部動作状態をステイタス情報として、読出し用の制御レジスタ(CRGR)に保持している。
As shown in FIG. 5, the
本実施例では、画像コマンドリストLTの発行先は、基本的に画像コマンドバッファ71であるが、追加的に、メインメモリ(コマンドメモリ)56や、内蔵DRAM57や、DDRメモリ41に、画像コマンドリストLT(後述する補助リストLT’)を発行することもできる。また、定型的な画像コマンドリストLT(補助リストLT’)について、予め、外付けROM42に記憶させておくこともできる。
In this embodiment, the issue destination of the image command list LT is basically the image command buffer 71, but additionally, the image command list is added to the main memory (command memory) 56, the built-in DRAM 57, and the
但し、何れの場合でも、VDPコントローラ60は、先ず、画像コマンドバッファ71から画像コマンドリストLTを読出し、そこに記載されているJUMP命令などに基づいて、メインメモリ56、内蔵DRAM57、DDRメモリ41、又は外付けROM42に記載されている画像コマンドリストLTの処理に移行することになる。
However, in any case, the
何れにしても、画像コマンドリストLTとは、各表示装置DS1,DS2の各一フレームを特定する一群の描画コマンドなどを列記した指示リストである。本実施例の場合、画像コマンドリストLTに列記されるコマンド列は、(a) VDPコントローラ60の割込み動作などのVDP(Video Display Processor )制御に関する制御コマンドと、(b) レンダリングエンジン61の描画動作に関する描画コマンドと、(c) CGデータデコーダ62のデコード動作に関するデコードコマンドとに区分されるが、以下、これら三種類(a) ~(c) のコマンドを総称する場合には画像コマンドと称することにする。
In any case, the image command list LT is an instruction list in which a group of drawing commands for specifying each frame of each display device DS1 and DS2 are listed. In the case of this embodiment, the command sequences listed in the image command list LT are (a) control commands related to VDP (Video Display Processor) control such as interrupt operation of the
これら何れの画像コマンドも32ビットの整数倍の可変長であり、上記した三種類(a) ~(c) の画像コマンドが、適宜な順番で列記されて画像コマンドリストLTが完成状態となる。ホストCPU50が完成させた画像コマンドリストLTを、例えば、画像コマンドバッファ71に発行する場合には、ホストCPU50は、画像コマンドリストLTを構成するコマンド列について、一画像コマンドずつ順番に、コマンドライトレジスタCMwに書込むことになる。すると、コマンドライトレジスタCMwに書込まれた可変長の一画像コマンドは、内部構成に基づき、自動的に、FIFO(First In First Out)の形式で画像コマンドバッファ71に蓄積されるようになっている。
All of these image commands have a variable length that is an integral multiple of 32 bits, and the above-mentioned three types of image commands (a) to (c) are listed in an appropriate order to complete the image command list LT. When issuing the image command list LT completed by the
このような内部動作に対応して、VDPコントローラ6は、画像コマンドバッファ71(画像コマンドFIFO)の管理機能を有しており、画像コマンドバッファ71の使用状態などのステイタス情報が、読出し用の制御レジスタ(CRGR)に保持されるよう構成されている。したがって、ホストCPUは、画像コマンドバッファ71(画像コマンドFIFO)がフル状態でないことを確認した上で、コマンドライトレジスタCMwに画像コマンドを書込むことになる。
In response to such internal operation, the
このようにして、画像コマンドバッファ71に蓄積された画像コマンド列は、VDPコントローラ60によって、FIFO(First In First Out)方式で自動的に読み出され、各画像コマンドの種別に応じて、(a) 制御コマンドは、VDPコントローラ60に配布され、(b) 描画コマンドは、レンダリングエンジン61に配布され、(c) デコードコマンドは、CGデータデコーダ62に配布される。
In this way, the image command sequence stored in the image command buffer 71 is automatically read by the
そして、VDPコントローラ60、レンダリングエンジン61、及び、CGデータデコーダ62は、配布された画像コマンドリストLTに記載された画像コマンドに基づいた各々の動作を開始する。すなわち、VDPコントローラ60の制御動作に基づき、CGデータデコーダ62やレンダリングエンジン61によって、画像データの生成動作が開始され、最終的な画像データがフレームバッファFBに完成される。
Then, the
後述するように、本実施例のホストCPU50は、上記したバンク切換え周期と同じ動作周期Δ(=1/30秒)で間欠的に動作するが、上記した一連の動作は、ホストCPU50が、画像コマンドバッファ71に画像コマンドリストLTを発行した、その動作周期において実行される。
As will be described later, the
以上、画像コマンドリストLTが画像コマンドバッファ71に発行される場合を説明したが、先に説明した通り、ホストCPU50は、メインメモリ(コマンドメモリ)56、内蔵DRAM57、又はDDRメモリ41に画像コマンドリストLTを発行することもできる。但し、この場合には、ある動作周期で発行した画像コマンドリストLTは、一又はそれ以上遅れた動作周期において実効化される。
The case where the image command list LT is issued to the image command buffer 71 has been described above, but as described above, the
例えば、コマンドメモリ56を使用する場合には、図6に示すように、書込み用と読み出し用に切り替えて使用する一対のリストバッファBUFa,BUFbを、コマンドメモリ56に確保する必要がある。そして、一方のリストバッファBUFa/BUFbに、次サイクルの画像コマンドリストLTを発行し、一動作周期後には、一対のリストバッファBUFa,BUFbの用途を切換えるようにしている。
For example, when the
リストバッファBUFa,BUFbの切換え動作は、ホストCPU50が、画像コマンドバッファ71に発行する制御コマンドリストLTcによって実行され、ある動作周期(T)に発行される制御コマンドリストLTcは、第1リストバッファBUFaの画像コマンドリストLTを実行すべきことを特定するJUMP命令(JUMP_BUFa )と、制御コマンドリストLTcの最終行となるバンクフリップ待ち命令(WAIT_BANKFLIP )とで構成される。なお、このJUMP命令は、いわゆるCALL命令と同じであり、JUMP命令の実行後は、バンクフリップ待ち命令(WAIT_BANKFLIP )が実行される。
The switching operation of the list buffer BUFa and BUFb is executed by the control command list LTc issued by the
バンクフリップ(Bank Flip )とは、フレームバッファFBにおける描画バンクと表示バンクの切換えを意味し、バンクフリップ待ち命令の実行によって、VDPコントローラ60の動作は、次のバンク切換えタイミングまで待機状態となる。バンクフリップ周期(=バンク切換え周期)は、垂直同期信号の周波数60Hzに対応して、1/60秒としても良いが、本実施例では、複合チップ40の各内部回路の動作時間を十分に確保するため、バンクフリップ周期を敢えて1/30秒(垂直同期信号の2回分)としている。先に説明した通り、このバンクフリップ周期(バンク切換え周期)は、ホストCPU50の動作周期Δと同じである。
Bank Flip means switching between a drawing bank and a display bank in the frame buffer FB, and by executing a bank flip waiting instruction, the operation of the
本実施例では、上記の構成を採るので、次の動作周期(T+Δ)は、1/30秒後となるが、次の動作周期(T+Δ)に発行される制御コマンドリストLTcは、第2リストバッファBUFaの画像コマンドリストLTを実行すべきことを指示するJUMP命令(JUMP_BUFb )と、制御コマンドリストLTcの最終行に記載されるバンクフリップ待ち命令(WAIT_BANKFLIP )とで構成される。したがって、この動作周期(T+Δ)では、前サイクルに発行された第2リストバッファBUFbの画像コマンドリストLTが実効化されることになる。 In this embodiment, since the above configuration is adopted, the next operation cycle (T + Δ) is 1/30 second later, but the control command list LTc issued in the next operation cycle (T + Δ) is the second list. It is composed of a JUMP instruction (JUMP_BUFb) instructing that the image command list LT of the buffer BUFa should be executed, and a bank flip wait instruction (WAIT_BANKFLIP) described in the last line of the control command list LTc. Therefore, in this operation cycle (T + Δ), the image command list LT of the second list buffer BUFb issued in the previous cycle is activated.
以下、同じであり、リストバッファBUFa,BUFbの一方に、次サイクルの画像コマンドリストLTを発行すると共に、画像コマンドバッファ71にリストバッファBUFa,BUFbを切換える制御コマンドリストLTcを発行して画像演出動作が進行させる。この構成によれば、画像コマンドリストLTの発行処理と、画像コマンドリストLTに基づいた画像データの生成処理とを、一の動作周期(Δ)で終える必要がなくなり、画像データの生成処理時間に時間的な余裕が生じるので、表示装置の大型化や高画質化に対応することができる。 Hereinafter, the same applies, and the image command list LT of the next cycle is issued to one of the list buffers BUFa and BUFb, and the control command list LTc for switching the list buffers BUFa and BUFb is issued to the image command buffer 71 to produce an image effect. To proceed. According to this configuration, it is not necessary to finish the image command list LT issuance process and the image data generation process based on the image command list LT in one operation cycle (Δ), and the image data generation process time is increased. Since there is time to spare, it is possible to cope with the increase in size and image quality of the display device.
なお、画像コマンドリストLTの最後には、画像コマンドバッファ71に記載されているバンクフリップ待ち命令(WAIT_BANKFLIP )への復帰を意味するJUMP命令(JUMP_CFIFO)が記載されており、図6の矢印で示す動作が実現される。 At the end of the image command list LT, a JUMP instruction (JUMP_CFIFO) meaning a return to the bank flip wait instruction (WAIT_BANKFLIP) described in the image command buffer 71 is described, and is indicated by an arrow in FIG. The operation is realized.
また、表示装置の大型化や高画質化により有効に対応するには、デコード動作に先行してプリローダを機能させて、外付けROM42のCGデータ(圧縮状態の画像圧縮データ)をプリロード動作するのも好適である。なお、プリロード動作を実現するには、後述するCGデータの転送期間(Δ~3Δ)などを特定した上で、VDPコントローラ60を先読み動作モードに設定する必要がある。また、画像コマンドリストLTには、プリロード転送を指示する特別なデコードコマンドDCpを記載する必要がある。
Further, in order to effectively cope with the increase in size and image quality of the display device, the preloader is operated prior to the decoding operation, and the CG data (compressed image data in the compressed state) of the
この先読み動作モードでは、画像コマンドリストLTの発行先は、例えば、DDRメモリ41など、十分な記憶容量を有するメモリとし、複数N個のバッファ領域を確保する必要がある。以下、画像コマンドリストLTの発行先を、例えば、DDRメモリ41として、バッファ領域を3個とする場合(トリプルバッファBUFa~BUFc)について図7に基づいて説明する。
In this look-ahead operation mode, the issue destination of the image command list LT is, for example, a memory having a sufficient storage capacity such as a
この場合は、トリプルバッファBUFa~BUFcを循環的に使用して、何れかの領域(BUFa~BUFc)に、次々回サイクル用の画像コマンドリストLTが発行され、画像コマンドバッファ71には、バンクフリップ待ち命令(WAIT_BANKFLIP )だけで構成された制御コマンドリストLTcが発行される。 In this case, the triple buffers BUFa to BUFc are used cyclically, and the image command list LT for the next cycle is issued to any region (BUFa to BUFc), and the image command buffer 71 waits for a bank flip. A control command list LTc consisting only of instructions (WAIT_BANKFLIP) is issued.
例えば、動作周期(T)では、次々回(T+2Δ)に実効化される画像コマンドリストLTが第1バッファBUFaに発行され、動作周期(T+Δ)では、T+3Δに実効化される画像コマンドリストLTが第2バッファBUFbに発行され、動作周期(T+2Δ)では、T+4Δに実効化される画像コマンドリストLTが第3バッファBUFbに発行される。そして、これらの画像コマンドリストLTの最終行は、画像コマンドバッファ71の先頭アドレスへのジャンプ命令(JUMP_CFIFO)となっている。 For example, in the operation cycle (T), the image command list LT that is activated one after another (T + 2Δ) is issued to the first buffer BUFa, and in the operation cycle (T + Δ), the image command list LT that is activated in T + 3Δ is the first. In the operation cycle (T + 2Δ), the image command list LT issued to the 2 buffer BUFb and activated at T + 4Δ is issued to the 3rd buffer BUFb. The last line of these image command list LTs is a jump instruction (JUMP_CFIFO) to the start address of the image command buffer 71.
また、ホストCPU50は、各動作周期において、実行されるべき画像コマンドリストLTの先頭アドレスを、VDPコントローラ60に指定する必要があり、具体的には、動作周期(T)では、画像コマンドリストLTが第1バッファBUFbに存在すると指定し、動作周期(T+Δ)では、画像コマンドリストLTが第3バッファBUFcに存在すると指定し、動作周期(T+2Δ)では、画像コマンドリストLTが第1バッファBUFaに存在すると指定している。
Further, the
先に説明した通り、何れの画像コマンドリストLTも、その最終行は、画像コマンドバッファ71の先頭アドレスへのジャンプ命令(JUMP_CFIFO)であり、画像コマンドバッファ71には、毎回、バンクフリップ待ち命令(WAIT_BANKFLIP )だけで構成された制御コマンドリストLTcが発行される。そのため、VDPコントローラ60は、トリプルバッファBUFa~BUFcを循環的に読み出して、必要な処理を実行した後、バンクフリップ待ち命令(WAIT_BANKFLIP )によって処理を終えることになる。なお、制御コマンドリストLTcは、常に同一内容であるので、必ずしも、毎回発行する必要はなく、一度だけ発行したのでも良い。
As explained above, the last line of any image command list LT is a jump instruction (JUMP_CFIFO) to the start address of the image command buffer 71, and the image command buffer 71 is instructed to wait for a bank flip every time. A control command list LTc consisting only of WAIT_BANKFLIP) is issued. Therefore, the
ところで、先に説明した通り、画像コマンドリストLTには、プリロード転送を指示する特別なデコードコマンドDCpが記載されている場合がある。そして、先読み動作モードでは、新規に書込まれた画像コマンドリストLTは、その次の動作周期で解釈されるようになっている。 By the way, as described above, the image command list LT may include a special decoding command DCp instructing preload transfer. Then, in the look-ahead operation mode, the newly written image command list LT is interpreted in the next operation cycle.
したがって、動作周期(T)に書込まれた画像コマンドリストLTは、動作周期(T+Δ)において、VDPコントローラ60によって解釈されるが、この画像コマンドリストLTにプリロード転送を指示するデコードコマンドDCpが検出される場合には、VDPコントローラ60に内蔵されたプリローダは、動作周期(T+Δ)において、必要なCGデータを外付けROMから読出し、読み出したCGデータを、内蔵DRAM57に確保されたプリロードバッファBUFpに格納する(CGデータの転送期間Δ)。
Therefore, the image command list LT written in the operation cycle (T) is interpreted by the
そして、プリロードバッファBUFpに読み出したCGデータは、トリプルバッファ(BUFa~BUFc)形式を採る場合には、次の動作周期(T+2Δ)で、プリロードバッファBUFpのCGデータが、CGデータデコーダ62によって伸張され、レンダリングエンジン61の画像生成処理に使用される。 When the CG data read into the preload buffer BUFp is in the triple buffer (BUFa to BUFc) format, the CG data of the preload buffer BUFp is decompressed by the CG data decoder 62 in the next operation cycle (T + 2Δ). , Used in the image generation process of the rendering engine 61.
なお、3個のバッファ領域(トリプルバッファ)ではなく、4個のバッファ領域(クアドラブルバッファ)を確保した場合には、動作周期(T+Δ)から動作周期(T+2Δ)までがCGデータの先読み期間(転送期間2Δ)であり、5個のバッファ領域(クインティブルバッファ)を確保した場合には、動作周期(T+Δ)から動作周期(T+3Δ)までが先読み期間(転送期間3Δ)でとなる。 When four buffer areas (quadrable buffer) are secured instead of three buffer areas (triple buffer), the CG data look-ahead period (T + 2Δ) is from the operation cycle (T + Δ) to the operation cycle (T + 2Δ). The transfer period is 2Δ), and when five buffer areas (quintible buffers) are secured, the read-ahead period (transfer period 3Δ) is from the operation cycle (T + Δ) to the operation cycle (T + 3Δ).
以上の通り、先読み動作モードを採る場合には、一動作周期以上のCGデータ転送時間を確保できるので、アクセス速度に劣る外付けROM42を採用した場合でも、表示装置一フレーム用に大量のCGデータを転送することができ、表示装置の大型化や高画質化、及び、画像演出の高度化を実現することができる。また、表示装置の個数を3個以上に増やし、それぞれ異なる画像演出を実行する場合にも効果的である。
As described above, when the look-ahead operation mode is adopted, the CG data transfer time of one operation cycle or more can be secured. Therefore, even if an
続いて、図8に基づいて、複合チップ40に内蔵されたサウンドエンジン(音声プロセッサ)52について説明する、図8に示す通り、サウンドエンジン52は、ホストCPU50やVDPコントローラ60からアクセス可能な複数のコマンドレジスタ(RGi)80と、間欠的に動作して内部動作を制御するサウンドコントールモジュール81と、DDRメモリ41から読み出した圧縮状態の音声フレーズデータを伸張して、一又は複数チャンネルのデジタル音声(PCMデータ)を生成するメインジェネレータ84と、メインジェネレータ84が生成した複数チャンネルのデジタル音声をミキシングすると共に音声加工するマルチエフェクタ85と、マルチエフェクタ85の出力を受けて3本の伝送線に必要な音声情報をデジタルアンプ43に出力するオーディオインタフェイス86と、を有して構成され、各コマンドレジスタRGiへのアクセス動作を中継する中継レジスタ82及びコマンドインタフェイス部83を経由してホストCPU50などに接続されている。
Subsequently, based on FIG. 8, the sound engine (voice processor) 52 built in the
ここで、サウンドコントールモジュールSCM(以下、SCM81と略すことがある)には、一群のコマンドレジスタRGi~RGjに対する、一連の設定動作を自動的に実行するシーケンサSEQj(Sequencer )と、シンプルアクセスコントローラSACi(simple Access Controller)とが、各々、複数個設けられている。一群のコマンドレジスタRGi~RGjへの設定値を自動的に設定する点では、何れの動作も同じであるが、一まとまりの設定動作(ステップ動作)を終えた後、所定時間を待機して、次の一まとまりの設定動作(ステップ動作)に移行する間欠設定動作や、一連の設定動作を任意回数だけ繰返す反復設定動作などが可能である点で、シーケンサSEQの設定動作の方が、サウンドコントールモジュールSCMよりやや高度化されている。 Here, the sound control module SCM (hereinafter, may be abbreviated as SCM81) includes a sequencer SEQj (Sequencer) that automatically executes a series of setting operations for a group of command registers RGi to RGj, and a simple access controller SACi. A plurality of (simple access controllers) are provided for each. All operations are the same in that the setting values for a group of command registers RGi to RGj are automatically set, but after completing a set of setting operations (step operations), a predetermined time is waited for. The sequencer SEQ setting operation is sound control in that it is possible to perform intermittent setting operation that shifts to the next set operation (step operation) and repeated setting operation that repeats a series of setting operations an arbitrary number of times. It is a little more sophisticated than the module SCM.
但し、シンプルアクセスコントローラSACは、外付けROM42に規定されている所定の定期SAC動作を、SCM81の動作周期の整数倍の周期で、定期的に繰り返し実行することができる。後述するように、シンプルアクセスコントローラSACの動作内容は、0~NのSACコード番号で特定されるが、最終のSACコード番号(N)で特定される定期SAC動作については、所定時間毎に、定期的に繰り返し実行されるよう内部制御される。
However, the simple access controller SAC can periodically and repeatedly execute a predetermined periodic SAC operation specified in the
そこで、本実施例では、この定期SAC動作によって、マルチエフェクタ85におけるイコライザ機能やコンプレッサ機能を繰り返し再設定するようにしている。そのため、ノイズなどの影響で、仮に、音質に関する設定内容が変化しても、その後の定期SAC動作に基づいて、開発者の意図した音質が確実に復元されることになる。なお、後述するように、本実施例では、SCM81の動作周期は32/48mSであり、この動作周期の512回毎に、定期SAC動作が実行される。 Therefore, in this embodiment, the equalizer function and the compressor function of the multi-effect unit 85 are repeatedly reset by this periodic SAC operation. Therefore, even if the setting contents related to the sound quality are changed due to the influence of noise or the like, the sound quality intended by the developer is surely restored based on the subsequent periodic SAC operation. As will be described later, in this embodiment, the operation cycle of the SCM81 is 32/48 mS, and the periodic SAC operation is executed every 512 times of this operation cycle.
このような定期SAC動作も可能なシンプルアクセスコントローラSACiや、設定動作がやや高度なシーケンサSEQjを、各々、有効に機能させるため、外付けROM42には、シンプルアクセスコントローラSACの動作(定期SAC動作を含む)を規定するSACコードや、シーケンサSEQの動作を規定するSEQコードが、各々、複数種類、記憶されている。なお、電源投入時のDMA転送動作により、DDRメモリ41は、外付けROM42と同じデータがコピーされるので、図8では、この状態を図示している。
In order to make the simple access controller SACi capable of such periodic SAC operation and the sequencer SEQj with a slightly advanced setting operation function effectively, the
SEQコードとSACコードは、何れも、コマンドレジスタRGiを特定する1バイト長のレジスタ番号と、そのコマンドレジスタRGiへの1バイト長の設定値とで一組となる一連2バイト長のデータ列であり、所定の終了コード(FFFFh)で完結している。但し、SEQコードについては、上記した間欠設定動作や反復設定動作を実現するため、一まとまりの設定動作(ステップ動作)の完了を示す中断コード(FFFEh)が含まれている。 Both the SEQ code and the SAC code are a series of 2-byte length data strings that are a set of a 1-byte length register number that specifies the command register RGi and a 1-byte length setting value for the command register RGi. Yes, it is completed with a predetermined end code (FFFFh). However, the SEQ code includes an interruption code (FFFEh) indicating the completion of a set of setting operations (step operations) in order to realize the above-mentioned intermittent setting operation and repetitive setting operation.
SEQコードは、一連M個のSEQデータで構成され(SEQコード=M×SEQデータ)、SACコードは、一連N個のSACコードで構成されている(SACコード=N×SACデータ)。そして、SEQコードやSACコードの一単位であるSEQデータやSACデータは、何れも、コマンドレジスタRGiを特定する1バイト長のレジスタ番号と、コマンドレジスタRGiへの1バイト長の設定値の一組である。先に説明した通り、外付けROM41には、このような構成のSEQコードやSACコードが、各々、複数種類記憶されており、本明細書では、これらを、SACコード群(一群のSEQコード)、SEQコード群(一群のSACコード)と称することがある。
The SEQ code is composed of a series of M SEQ data (SEQ code = M × SEQ data), and the SAC code is composed of a series of N SAC codes (SAC code = N × SAC data). The SEQ data and SAC data, which are one unit of the SEQ code and SAC code, are a set of a 1-byte length register number that specifies the command register RGi and a 1-byte length setting value for the command register RGi. Is. As described above, the
図5に示す通り、外付けROM42に格納されている音声データSNDには、一単位の音声演出を実現する音声フレーズデータの他に、上記したSACコード群やSEQコード群が含まれる。そして、一単位の音声演出を実現する音声フレーズデータは、一のフレーズ番号で特定され、終了コード(FFFFh)で完結する一のSACコードや一のSEQコードも、各々、一のSACコード番号や一のSEQコード番号で特定されるようになっている。
As shown in FIG. 5, the voice data SND stored in the
そして、SEQj起動用の一群のコマンドレジスタRGjに、SEQコード番号やその他の動作条件を設定すれば、シーケンサSEQjを起動させることができる。また、SACi起動用の一群のコマンドレジスタRGiに、SACコード番号やその他の動作条件を設定すれば、シンプルアクセスコントローラSACiを起動させることができる。但し、定期SAC動作については、自動的に起動するので、SAC起動処理が不要である。 Then, if the SEQ code number and other operating conditions are set in the group of command registers RGj for starting SEQj, the sequencer SEQj can be started. Further, the simple access controller SACi can be started by setting the SAC code number and other operating conditions in a group of command registers RGi for starting SACi. However, since the periodic SAC operation is automatically started, the SAC start process is unnecessary.
先に説明した通り、一単位の音声演出を実現する多数の音声フレーズデータは、他のSACコード群やSEQコード群と共に、電源投入時に、外付けROM42からDDRメモリ41に転送される。そして、本実施例の場合、DDRメモリ41は、高速アクセスが可能なDDR3SDRAMで構成されているので、音声フレーズデータの高速アクセスが可能となり、サンプリング周波数を48kHz又はそれ以上とする高音質の音声フレーズデータを扱うことができる。
As described above, a large number of voice phrase data that realizes one unit of voice effect are transferred from the
以上を踏まえて、次に、サウンドコントールモジュール81(SCM81)について説明する。実施例のSCM81は、間欠的に動作を開始して、サウンドエンジン52の内部動作を制御している。具体的には、SCM81は、音声フレーズデータのサンプリング周波数(48kHz)に対応して、例えば、サンプリング周期(1/48kHz)の32倍であるサウンドエンジン動作周期(32/48mS)毎に、コマンドレジスタRGiの設定値を更新可能に構成されており、もし設定値が更新されると、更新後のコマンドレジスタRGiの設定値に基づいた内部動作が開始される。
Based on the above, next, the sound control module 81 (SCM81) will be described. The
このSCM81が参照するコマンドレジスタRGiは、各々、1バイト長のレジスタ番号で特定されるよう構成されており、各コマンドレジスタRGiには、シーケンサSEQやシンプルアクセスコントローラSACを含んだ、サウンドエンジン52の内部動作を規定する設定値が設定されるか、或いは、サウンドエンジン52の内部動作状態を示すステイタス情報が記憶されるになっている。なお、先に説明したシーケンサSEQやシンプルアクセスコントローラSACの起動時のように、複数のコマンドレジスタRGi~RGjへの設定値に基づいて内部動作が規定される場合もあり、また、1バイト長のステイタス情報の1ビット又は複数ビットのフラグ値によって内部動作状態が特定される。
The command register RGi referred to by the
次に、メインジェネレータ84には、DDRメモリ41から読み出した複数の圧縮状態のフレーズデータを独立的に伸張可能な複数チャンネルの音声デコーダと、音声デコーダの複数チャンネルのデコード出力を受けて、伸張状態の各フレーズデータについて、ボリューム設定や音量パン設定などを実行可能なトーンジェネレータが含まれている。
Next, the main generator 84 receives a plurality of channel audio decoders capable of independently decompressing a plurality of compressed phrase data read from the
また、マルチエフェクタ85には、トーンジェネレータが生成した複数チャンネルのデジタル音声を、最高3チャンネル(R0/L1 +R1/L1 +SUB0/SUB1 )のデジタル音声にミキシングするミキサと、デジタルフィルタ処理によって所望の周波数特性を実現するイコライザ機能や入出力ゲイン特性を変化させるコンプレッサ機能を実現するエフェクタと、最終音量を規定するトータルボリュームとが含まれている。 In addition, the multi-effect unit 85 has a mixer that mixes the multi-channel digital audio generated by the tone generator into digital audio of up to 3 channels (R0 / L1 + R1 / L1 + SUB0 / SUB1), and a desired frequency by digital filter processing. It includes an equalizer function that realizes the characteristics, an effector that realizes a compressor function that changes the input / output gain characteristics, and a total volume that defines the final volume.
一方、オーディオインタフェイス86は、最高3チャンネル(R0/L1 +R1/L1 +SUB0/SUB1 )のデジタル音声について、各チャンネルの左右チャンネル(R/L )を纏めた音声信号線SD0~SD2と、クロック信号線SCLKと、左右チャンネル(R/L )の何れを伝送中かを特定する制御信号線LROとの3線に出力する。例えば、第1チャンネル(R0/L0 )と、第2チャンネル(R1/L1 )と、第3チャンネル(SUB0/SUB1 )の音声信号を受ける3個のデジタルアンプ43が存在する場合には、オーディオインタフェイス86とデジタルアンプ43との伝送路は、各々、3線となる。但し、本実施例では、第3チャンネル(SUB0/SUB1 )の音声信号を使用しておらず、また、第2チャンネルはモノラル音声としている(R1=L1 )。
On the other hand, the audio interface 86 has audio signal lines SD0 to SD2 and clock signals that summarize the left and right channels (R / L) of each channel for digital audio of up to 3 channels (R0 / L1 + R1 / L1 + SUB0 / SUB1). It is output to three lines, the line SCLK and the control signal line LRO that specifies which of the left and right channels (R / L) is being transmitted. For example, if there are three
次に、図9は、中継レジスタ82と、コマンドインタフェイス部(音声コマンドFIFO)83の構成を示す図面である。この実施例では、ホストCPU50が、サウンドエンジン52の内部動作を規定するべく所定のコマンドレジスタRGiをWRITEアクセスする場合も、コマンドレジスタRGiからステイタス情報をREADアクセスする何れの場合も、中継レジスタ82を経由する間接アクセス方式を採っている。
Next, FIG. 9 is a drawing showing the configuration of the
また、WRITEアクセス時には、後述するシステム制御アクセス時を除き、コマンドレジスタRGiへの書込みデータ(設定値)が、WRポインタとRDポインタで制御されるFIFO構造の音声コマンドバッファ83(音声コマンドFIFO)に自動的に蓄積されるようになっている。 Further, at the time of WRITE access, except for the system control access described later, the data (set value) written to the command register RGi is stored in the voice command buffer 83 (voice command FIFO) having a FIFO structure controlled by the WR pointer and the RD pointer. It is designed to be automatically accumulated.
以下、この点を図9(a)に基づいて更に説明すると、中継レジスタ82は、詳細には、アクセス対象となるコマンドレジスタRGiを特定する1バイト長のレジスタ番号を書込む第1中継レジスタMCRと、そのレジスタ番号のコマンドレジスタRGiに設定すべき設定値を書込む第2中継レジスタMCDと、第1中継レジスタMCRと第2中継レジスタMCDの各1バイトの要部データが転記される転記レジスタTRNと、に区分されている。
Hereinafter, this point will be further described with reference to FIG. 9A. In detail, the
ここで、転記レジスタTRNは2バイト長であり、第1と第2の中継レジスタMCR,MCDは、各々4バイト長である。そして、各中継レジスタMCR,MCDの要部である各1バイト部分(レジスタ番号/設定値)は、全体として2バイト長の転記レジスタTRNに接続されており、中継レジスタMCR,MCDへの書込み信号(WR*CS)に基づいて、自動的に転記されるよう構成されている。なお、WR*CSは、ホストCPU50から出力される書込み制御信号WRと、中継レジスタMCR,MCDを選択する内部チップセレクト信号CSの論理AND値を意味する。
Here, the posting register TRN is 2 bytes long, and the first and second relay registers MCR and MCD are 4 bytes long, respectively. Each 1-byte portion (register number / set value), which is a main part of each relay register MCR and MCD, is connected to a transfer register TRN having a length of 2 bytes as a whole, and is a write signal to the relay registers MCR and MCD. It is configured to be automatically posted based on (WR * CS). Note that WR * CS means the logical AND value of the write control signal WR output from the
図9(b)は、この転記動作を説明する図面であり、第1中継レジスタMCRへのWRITEアクセスを示す第1書込み信号(WR*CS)と、第2中継レジスタMCDへのWRITEアクセスを示す第2書込み信号(WR*CS)と、第1書込み信号と第2書込み信号の論理OR信号とが示されている。そして、この実施例では、第1書込み信号か第2書込み信号のうち、先に発生した先行書込み信号(WR*CS)に基づいて、転記レジスタTRNへの1バイト(レジスタ番号又は設定値)の転記動作が実行されると共に、WRポインタが更新される。 FIG. 9B is a drawing illustrating this posting operation, showing a first write signal (WR * CS) indicating WRITE access to the first relay register MCR and WRITE access to the second relay register MCD. A second write signal (WR * CS) and a logical OR signal of the first write signal and the second write signal are shown. Then, in this embodiment, one byte (register number or set value) to the posting register TRN based on the previously generated preceding write signal (WR * CS) of the first write signal or the second write signal. The WR pointer is updated as the posting operation is executed.
そして、その後に発生する後続書込み信号(WR*CS)に基づいて、転記レジスタTRNへの残り1バイト(レジスタ番号又は設定値)の転記動作が実行されると共に、後続書込み信号(WR*CS)の後段エッジに同期して、転記レジスタTRNの2バイトデータ(レジスタ番号+設定値)が、リングバッファ構造の音声コマンドバッファ83に書込まれるようになっている。なお、音声コマンドバッファ83の書込み先は、WRポインタで特定され、読出し先は、RDポインタで特定される。そして、音声コマンドバッファ(音声コマンドFIFO)83の段数は、例えば、511段(2バイト×511)である。 Then, based on the subsequent write signal (WR * CS) generated thereafter, the transfer operation of the remaining 1 byte (register number or set value) to the transfer register TRN is executed, and the subsequent write signal (WR * CS) is executed. The 2-byte data (register number + set value) of the posting register TRN is written to the voice command buffer 83 having a ring buffer structure in synchronization with the subsequent edge. The writing destination of the voice command buffer 83 is specified by the WR pointer, and the reading destination is specified by the RD pointer. The number of stages of the voice command buffer (voice command FIFO) 83 is, for example, 511 stages (2 bytes × 511).
本実施例は、上記の通りに構成されているので、ホストCPU50が、中継レジスタMCR,MCDに必要情報(レジスタ番号と設定値)を書込む毎に、その必要情報が自動的に音声コマンドバッファ(音声コマンドFIFO)83に蓄積されることになる。したがって、ホストCPU50は、サウンドエンジン52の内部動作を特に気にすることなく、自らのタイミングで中継レジスタMCR,MCDへの書込み動作を繰り返すことができる。但し、音声コマンドバッファ83の段数が511段であること、及び、サウンドエンジン動作周期(32/48mS)に対応して、音声コマンドバッファ83の読み出し周期が32/48mSであることを考慮すべきことは当然である。
Since this embodiment is configured as described above, every time the
なお、ホストCPUは、任意のコマンドレジスタRGiに、任意の設定値を書込む直接WRITEアクセスだけでなく、SACi起動用の一群のコマンドレジスタRGiに、SACコード番号やその他の動作条件を設定するSAC起動動作や、SEQj起動用の一群のコマンドレジスタRGjに、SEQコード番号やその他の動作条件を設定すれSEQ起動動作も可能である。但し、何れの場合も、原則として、中継レジスタ82や音声コマンドバッファ83を経由する間接アクセス方式を採る必要がある。
The host CPU not only directly writes WRITE access to write an arbitrary setting value to an arbitrary command register RGi, but also sets a SAC code number and other operating conditions to a group of command registers RGi for starting SACi. It is also possible to set the SEQ code number and other operating conditions in the start operation and the group of command registers RGj for starting the SEQj, and then to start the SEQ. However, in either case, as a general rule, it is necessary to adopt an indirect access method via the
図9(c)に示す通り、音声コマンドバッファ83に蓄積された2バイト(レジスタ番号+設定値)単位のデータ群は、サウンドエンジン動作周期(32/48mS)で、SCM81によって読み出され、レジスタ番号で特定される所定のコマンドレジスタRGiに、所定の設定値が設定されることで、サウンドエンジン52内部動作が変化する。
As shown in FIG. 9 (c), the data group in units of 2 bytes (register number + set value) stored in the voice command buffer 83 is read out by the
具体的には、例えば、所定のコマンドレジスタRGiに、特定の音声フレーズ番号が設定されることで、特定一単位の音声演出が開始される。また、所定のコマンドレジスタRGiに、音声ボリュームや音量パンを規定する設定値が設定されることで、その後の音声演出の音量や音量バランスが変化する場合もある。 Specifically, for example, by setting a specific voice phrase number in a predetermined command register RGi, a specific unit of voice production is started. Further, by setting a set value that defines the voice volume and the volume pan in the predetermined command register RGi, the volume and the volume balance of the subsequent voice effect may change.
更にまた、所定のコマンドレジスタRGiに、SACコード番号やSEQコード番号などを設定することで、シンプルアクセスコントローラSACやシーケンサSEQが、一連のSACデータや一連のSEQデータに基づいた設定動作を開始する場合もある。 Furthermore, by setting the SAC code number, the SEQ code number, and the like in the predetermined command register RGi, the simple access controller SAC and the sequencer SEQ start the setting operation based on the series of SAC data and the series of SEQ data. In some cases.
以上の通り、コマンドレジスタRGiに設定値を書込む動作は、原則として、音声コマンドバッファ83を経由させ、SCM81に実行させている。しかし、SCM81は、サウンドエンジン動作周期(32/48mS)で間欠的に動作するので、迅速性に欠ける点に問題がある。そこで、サウンドエンジン52の内部エラーなどのステイタス情報の読出し動作(READアクセス)や、割込み制御など、サウンドエンジンの制御動作に関する設定(システム制御アクセス)については、音声コマンドバッファ83やSCM81を介在させることなく、ホストCPU50が直接アクセスする方式を採っている。
As described above, in principle, the operation of writing the set value to the command register RGi is executed by the
すなわち、ホストCPU50が、サウンドエンジンの制御動作に関するコマンドレジスタRGiのレジスタ番号を、第1中継レジスタMCRに書き、システム制御設定値を第2中継レジスタMCDに書いた場合には(システム制御アクセス)、システム制御設定値が即座に該当するコマンドレジスタRGiに書込まれる。また、ホストCPU50が、所定のコマンドレジスタRGiをREADアクセスした場合は、第1中継レジスタMCRに書き込んだコマンドレジスタRGiから読み出されたステイタス情報が、第2中継レジスタMCDに取得される。
That is, when the
以上、SCM81が機能してコマンドレジスタRGiの設定動作を実行する第1動作モード(通常制御モード)について説明したが、本実施例では、SCM81の動作をVDPコントローラ60が代用する第2動作モード(簡易制御モード)も可能である。この第2動作モードでは、サウンドエンジン52を第2動作モードに設定した状態で、ホストCPU50は、音声リストバッファLBUFに、コマンドレジスタRGiへの設定動作を規定した音声コマンドリストSLTを発行することになる。
The first operation mode (normal control mode) in which the SCM81 functions to execute the setting operation of the command register RGi has been described above, but in this embodiment, the second operation mode in which the operation of the SCM81 is substituted by the VDP controller 60 (normal control mode). Simple control mode) is also possible. In this second operation mode, with the sound engine 52 set to the second operation mode, the
なお、音声リストバッファLBUFは、メインメモリ56、内蔵DRAM57、又はDDRメモリ41に予め確保されている必要がある。また、音声コマンドリストSLTは、コマンドレジスタRGiへの設定動作が必要となるタイミングで発行される。
The audio list buffer LBUF needs to be reserved in advance in the
図8の上部に記載した音声リストバッファLBUFに示す通り、音声コマンドリストSLTは、コマンドレジスタRGiのレジスタ番号(1バイト)と、そのコマンドレジスタRGiへの設定値(1バイト)を組み合わせた2バイト長の音声コマンドを列記した音声コマンド列であり、その先頭には、列記されている音声コマンドのコマンド数が規定されている。 As shown in the voice list buffer LBUF described in the upper part of FIG. 8, the voice command list SLT is 2 bytes in which the register number (1 byte) of the command register RGi and the set value (1 byte) in the command register RGi are combined. It is a voice command sequence in which long voice commands are listed, and the number of commands of the listed voice commands is specified at the head of the voice command sequence.
そして、第2動作モード(簡易制御モード)では、音声リストバッファLBUFに発行された音声コマンドリストSLTは、VCPコントローラ60によって解読され、各音声コマンドが規定するレジスタ番号のコマンドレジスタRGiに、その音声コマンドが規定する設定値が設定される。すなわち、第2動作モードでは、SCM81の動作をVDPコントローラ60が代用するので、シンプルアクセスコントローラSACやシーケンサSEQが機能することがない。
Then, in the second operation mode (simple control mode), the voice command list SLT issued to the voice list buffer LBUF is decoded by the
そのため、SAC起動動作を規定する音声コマンドや、SEQ起動動作を規定する音声コマンドを検出したVCPコントローラ60は、SACコード番号で規定される一群のSACデータや、SEQコード番号で規定される一群のSEQデータを、DDRメモリ41から読み出して、対応するコマンドレジスタRGi~RGjに設定することになる。なお、このVCPコントローラ60による設定動作でも、中継レジスタ82と音声コマンドバッファ83が使用される。
Therefore, the
以上説明した第2動作モード(簡易制御モード)を使用する場合には、ホストCPU50は、画像コマンドリストLTの発行と同様の手順で、コマンドリストバッファLBUFに音声コマンドリストSLTを発行することになる。そして、発行された音声コマンドリストは、バンクフリップ周期である一動作周期(Δ=1/30秒)後に、VDPコントローラ60に読み出されて、上記したコマンドレジスタRGiへの設定動作が実行される。
When the second operation mode (simple control mode) described above is used, the
一方、第1動作モードによる設定動作は、サウンドエンジン動作周期(32/48mS)毎に実行されるので、第2動作モードによる設定動作は、その簡易性の反面、迅速性に劣る欠点がある。そこで、この時間遅れが問題になる場合には、コマンドリストバッファLBUFに代えて、VDPコントローラ60に内蔵された制御レジスタCRGの音声コマンドリストレジスタCRGWSLに、一群の音声コマンド列(音声コマンドリストSLT)を書き込んで、第2動作モードを実行するのが好適である。 On the other hand, since the setting operation in the first operation mode is executed every sound engine operation cycle (32 / 48 mS), the setting operation in the second operation mode has a drawback that it is inferior in speed, although it is simple. Therefore, when this time delay becomes a problem, instead of the command list buffer LBUF, a group of voice command strings (voice command list SLT) are stored in the voice command list register CRG WSL of the control register CRG built in the VDP controller 60. ) Is written to execute the second operation mode.
実施例の音声コマンドリストレジスタCRGWSLは、1040バイト長であり、音声コマンド(2バイト)を、511個程度列記することができる。先に説明した通り、サウンドエンジン52に内蔵された音声コマンドバッファ(音声コマンドFIFO)83の段数は、例えば、511段(2バイト×511)であるので、ホストCPU50の書込み用の制御負担という意味では、音声コマンドリストレジスタCRGWSLと、音声コマンドバッファ83とは同等である。
The voice command list register CRG WSL of the embodiment has a length of 1040 bytes, and about 511 voice commands (2 bytes) can be listed. As described above, the number of stages of the voice command buffer (voice command FIFO) 83 built in the sound engine 52 is, for example, 511 stages (2 bytes x 511), which means a control load for writing to the
しかし、ホストCPU50が、音声コマンドリストレジスタCRGWSLに音声コマンドリストSLTを発行した後、VDPコントローラ60が、サウンドエンジン52へのWRITEアクセスを開始するに過ぎないので、迅速性においては、ホストCPU50による音声コマンドバッファ83のWRITEアクセスの方が優れている。
However, since the
続いて、図10に基づいて、DMAコントローラ53について説明する。図10(a)は、電源投入時の動作、図10(b)は、ランプ演出や役物演出の駆動データ更新時の動作を示している。実施例のDMAコントローラ53は、独立して動作可能な14チャンネル(DMAチャネル#0~DMAチャネル#13)を有しているが、本実施例では、電源投入時にチャネル#0を機能させて、外付けROM42の音声データSNDを、DDRメモリ41にDMA転送している。
Subsequently, the DMA controller 53 will be described with reference to FIG. FIG. 10A shows an operation when the power is turned on, and FIG. 10B shows an operation when the drive data of the lamp effect and the accessory effect is updated. The DMA controller 53 of the embodiment has 14 channels (
具体的には、ホストCPU50は、DMAの使用チャンネルとしてDMAチャネル#0を特定した状態で、(1)転送元の先頭アドレス、(2)転送元からDMAコントローラ53に対する一回の読出しサイズ(バイト長)、(3)DMAコントローラ53へのREAD転送回数、(4)転送先の先頭アドレス、(5)DMAコントローラ53から転送先に対する一回の書込みサイズ(バイト長)、(6)転送先へのWRITE転送回数、などの動作内容を、先ずDMAコントローラ53の該当レジスタに特定する。
Specifically, the
次に、ホストCPU50が、DMAコントローラ53の該当レジスタ(チャネル0コントロールレジスタ)に動作開始を指示すると、上記した(1)~(6)の動作条件でDMA転送が開始され、転送元と転送先のアドレスが適宜に更新されつつ、読出しサイズと書込みサイズの転送動作が繰り返され、全ての転送動作が終わると、DMAコントローラ53の該当レジスタ(DMA割り込みステータスレジスタ)の完了フラグがセット状態になるようになっている。
Next, when the
したがって、ホストCPU50は、(1)~(6)などの動作内容を指示して、動作開始を指示した後は、転送動作をDMAコントローラ53に任せ、全く別の処理を実行することができる。また、本実施例では、DMAコントローラ53に、一回の読出しサイズ、READ転送回数、一回の書込みサイズ、及び、書込み転送回数を各々設定できるので、転送元と転送先のアクセス速度の差を円滑に吸収することができ、また、転送元の読出し単位や、転送先の書込み単位が限定されている場合でも、適切な転送動作が実現される。
Therefore, after instructing the operation contents such as (1) to (6) and instructing the start of the operation, the
次に、図10(b)は、ランプ演出や役物演出の駆動データ更新時におけるDMAコントローラ53の動作を説明する図面である。本実施例では、ランプ演出は、3mS毎にランプ駆動データが更新されることで進行し、役物演出は、1mS毎にモータ駆動データが更新されることで進行するよう構成されている。そして、ランプ駆動データやモータ駆動データは、各々、外付けROM42のランプ駆動データテーブルLMPc,LMPdや、モータ駆動データテーブルMOTe,MOTfに不揮発的に格納されており、これらのデータテーブルLMP,MOTが、DMAコントローラ53の転送元となる。
Next, FIG. 10B is a drawing illustrating the operation of the DMA controller 53 at the time of updating the drive data of the lamp effect and the accessory effect. In this embodiment, the lamp effect is configured to proceed by updating the lamp drive data every 3 mS, and the accessory effect is configured to proceed by updating the motor drive data every 1 mS. The lamp drive data and the motor drive data are non-volatilely stored in the lamp drive data tables LMPc and LMPd of the
先に説明した通り、本実施例では、シリアルポート55のチャネル#C~チャネル#Fを、シリアル出力ポートに設定して、ランプ演出と役物演出を実現しているので、シリアルポート55のチャネル#C~チャネル#Fが、DMAコントローラ53にとっての転送先となる。
As described above, in this embodiment, the channels # C to channel # F of the
また、シリアルポート55のチャネル#C~チャネル#Fには、16ビット単位の記憶領域64段で構成された送信FIFOc~送信FIFOfが各々設けられており、送信FIFOc~送信FIFOfに蓄積された駆動データが、FIFO(First In First Out)方式で自動的に読み出され、チャネル#C~チャネル#Fのシリアル出力ポートからシリアル送信されるようになっている。
Further, each of channel # C to channel # F of the
ここで、送信FIFOc~送信FIFOfへのデータ蓄積は、各チャネル#C~#Fのインタフェイス部に配置された中継レジスタITM(データレジスタ)を経由するようになっており、中継レジスタへの書込みデータが、送信FIFOに自動的に蓄積される構成を採っている。したがって、この実施例では、DMAコントローラ53にとってWRITE転送の転送先は、シリアルポート55のチャネル#C~チャネル#Fに配置されている中継レジスタITMとなり、READ転送の転送元が、駆動データテーブルLMP,MOTとなる。
Here, the data accumulation in the transmission FIFOc to the transmission FIFOf is via the relay register ITM (data register) arranged in the interface portion of each channel # C to #F, and is written to the relay register. The data is automatically stored in the transmission FIFO. Therefore, in this embodiment, for the DMA controller 53, the transfer destination of the WRITE transfer is the relay register ITM arranged in the channel # C to the channel # F of the
そして、データテーブルLMPcとデータテーブルLMPdのランプ駆動データ、及び、データテーブルMOTeとデータテーブルMOTeのモータ駆動データは、各々、DMAチャネル#10~DMAチャネル#13を経由して、外付けROM42からシリアルポート55のチャネル#C~#Fの中継レジスタITMにDMA転送されるよう構成されている。
The lamp drive data of the data table LMPc and the data table LMPd, and the motor drive data of the data table MOTe and the data table MOTe are serialized from the
なお、データテーブルLMP,MOTからDMAコントローラ53(#10~#13)への転送は、32バイト毎に実行される一方、DMAコントローラ53(#10~#13)からシリアルポート55(#C~#F)の中継レジスタITMへの転送は、2バイト毎に実行される。すなわち、DMAコントローラ53(#10~#13)は、一の転送で受けた32バイトを、16回に分けて転送している。 The transfer from the data tables LMP and MOT to the DMA controller 53 (# 10 to # 13) is executed every 32 bytes, while the serial port 55 (# C to) is executed from the DMA controller 53 (# 10 to # 13). The transfer of # F) to the relay register ITM is executed every two bytes. That is, the DMA controller 53 (# 10 to # 13) transfers the 32 bytes received in one transfer in 16 times.
また、書込み転送の実行タイミングを規定する閾値が、予め、ホストCPU50によって各シリアルポート55(#C~#F)に設定されており、送信FIFO(送信FIFOc~送信FIFOf)の蓄積データ量が所定の閾値以下になると、シリアルポート55からDMAコントローラ53にDMA_Request信号が出力され、DMAコントローラ53は、DMA_Acknowledge信号を返信して、一単位(2バイト長)の書込み転送を実行している。なお、これらのHandshake 動作に、ホストCPU50が関与する必要がないので、DMAコントローラの転送動作を開始させたホストCPU50は、その転送動作を待機するだけで足りる。
Further, a threshold value that defines the execution timing of write transfer is set in advance in each serial port 55 (# C to # F) by the
続いて、図11~図13に基づいて、シリアルポート55(#C~#F)と、シリアルポート55(#C~#F)を使用したシリアル伝送について説明する。先ず、シリアルポートの内部構成を示す図11(a)に基づいて説明すると、シリアルポート55のチャネル#Eと#Fは、SPI通信モードで動作する一方、シリアルポート55のチャネル#Cと#Dは、LED駆動モードで動作するように設定されている。
Subsequently, serial transmission using the serial ports 55 (# C to # F) and the serial ports 55 (# C to # F) will be described with reference to FIGS. 11 to 13. First, to explain based on FIG. 11A showing the internal configuration of the serial port, the channels # E and #F of the
ここで、SPI通信モードとは、Motorola SPIに準拠して、マスター機器とスレーブ機器とのシリアル通信を可能にする動作モードであり、SPIモジュールが機能することで、チップセレクト(CS)と、シリアルクロック(SCK)と、シリアル入力データ(SI)と、シリアル出力データ(SO)とが使用可能となっている。但し、本実施例では、スレーブ機器を選択するチップセレクト信号(CS)を使用しない。また、以下の説明では、SPI通信モードでシリアル送信動作を実行する場合をSPI送信モードと称し、SPI通信モードでシリアル受信動作を実行する場合をSPI受信モードと称する。 Here, the SPI communication mode is an operation mode that enables serial communication between a master device and a slave device in accordance with Motorola SPI. By functioning the SPI module, chip select (CS) and serial are performed. The clock (SCK), serial input data (SI), and serial output data (SO) can be used. However, in this embodiment, the chip select signal (CS) for selecting the slave device is not used. Further, in the following description, the case where the serial transmission operation is executed in the SPI communication mode is referred to as the SPI transmission mode, and the case where the serial reception operation is executed in the SPI communication mode is referred to as the SPI reception mode.
SPI送信モードで機能するシリアルポート55のチャネル#Eと#Fでは、各チャネル(#E,#F)の送信FIFOに蓄積されたシリアル出力データ(モータ駆動データ)が、シリアルクロックSCKに同期して、シリアル送信される。そして、送信FIFOの全てのモータ駆動データがシリアル送信され終わると、各チャネル(#E,#F)のステイタスレジスタ(不図示)が送信完了状態にセットされるようになっている。なお、図10に関して説明した通り、送信FIFOには、Handshake 方式で、モータ駆動データテーブルMOTe,MOTfのモータ駆動データが自動的に転送される。
In the channels #E and #F of the
一方、LED駆動モードは、上記したSPIモジュールに加えて、LEDドライバ用の追加モジュール(DR IF Moduleと表記)が機能する動作モードである。このLED駆動モードでは、シリアルクロック(SPCK)と、シリアル出力データ(SPO)と、OE信号(output enable )とが出力されるよう構成されている。OE信号は、一群のシリアル出力データ(ランプ駆動データSPO)がシリアル送信中であることを示す信号である。なお、このLED駆動モードでは、一ブロックのデータ送信完了毎にラッチ信号(LD)を出力させる動作も可能であるが、本実施例では、そのような動作態様を採っていない。 On the other hand, the LED drive mode is an operation mode in which an additional module for the LED driver (denoted as DR IF Module) functions in addition to the SPI module described above. In this LED drive mode, the serial clock (SPCK), the serial output data (SPO), and the OE signal (output enable) are configured to be output. The OE signal is a signal indicating that a group of serial output data (lamp drive data SPO) is being serially transmitted. In this LED drive mode, it is possible to output a latch signal (LD) every time one block of data transmission is completed, but in this embodiment, such an operation mode is not adopted.
LED駆動モードで機能するシリアルポート55のチャネル#Cと#Dでは、各チャネル(#C,#D)の送信FIFOに蓄積されたシリアル出力データ(ランプ駆動データ)が、シリアルクロックSCKに同期して、順次シリアル送信され、このシリアル送信中は、OE信号がアクティブレベルを維持する。
In channels # C and #D of the
また、このLED駆動モードの動作態様でも、送信FIFOの全てのモータ駆動データがシリアル送信され終わると、各チャネル(#C,#D)のステイタスレジスタ(不図示)が送信完了状態にセットされるようになっている。なお、チャネル#Cと#Dの送信FIFOには、Handshake 方式で、ランプ駆動データテーブルLMPc,LMPdのランプ駆動データが自動的に転送される。 Further, even in the operation mode of this LED drive mode, the status registers (not shown) of each channel (# C, # D) are set to the transmission completion state when all the motor drive data of the transmission FIFO is serially transmitted. It has become like. The lamp-driven data of the lamp-driven data tables LMPc and LMPd are automatically transferred to the transmission FIFOs of channels # C and #D by the Handshake method.
以上を踏まえて、モータ駆動データのシリアル伝送について説明を追加する。図11(c)は、モータ駆動データテーブルMOTe,MOTfの構造を図示しており、図11(d)と図11(e)は、モータ駆動を説明する図面である。 Based on the above, a description of serial transmission of motor drive data will be added. 11 (c) illustrates the structure of the motor drive data tables MTe and MOTf, and FIGS. 11 (d) and 11 (e) are drawings for explaining the motor drive.
先に説明した通り、本実施例では、枠側と盤側のモータ駆動基板37,30に配置されたモータドライバDV(図12(a)参照)に対して、モータ駆動データをシリアル送信する。モータ駆動基板37,30には、各々、複数のモータドライバDV1~DVnが配置されているが、図12(a)~図12(b)に示す通り、各モータドライバDViは、直列接続された4個のシフトレジスタSR1~SRE4と、各シフトレジスタの出力を受けて役物モータMiを駆動するドライバOUT1~OUT4と、を有して構成されている。
As described above, in this embodiment, the motor drive data is serially transmitted to the motor driver DV (see FIG. 12A) arranged on the
そのため、シリアルポート(#E,#F)から、シリアルクロックSCKに同期して、モータ駆動データSOを出力すると、モータ駆動データSOが、順次、シフトレジスタSRiに転送されることなる。本実施例では、モータドライバDViの個数Nに対応するモータ駆動データが、モータ駆動テーブルMOTに記憶されており、全てのモータ駆動データの送信完了後に、パラレルポート54からラッチパルスLTe,LTfを出力することで、全てのモータドライバDVにモータ駆動データを取得させ、役物モータM1~Mnを歩進させている。
Therefore, when the motor drive data SO is output from the serial ports (#E, #F) in synchronization with the serial clock SCK, the motor drive data SO is sequentially transferred to the shift register SRi. In this embodiment, the motor drive data corresponding to the number N of the motor driver DVi is stored in the motor drive table MOT, and after the transmission of all the motor drive data is completed, the latch pulses LTe and LTf are output from the
役物モータM1~Mnは、例えば、ステッピングモータで構成されており、図11(d)と図11(e)には、ユニポーラ型ステッピングモータを、例えば、2相励磁する場合が示されている。このような構成の場合、役物モータMiの一個に伝送されるべきモータ駆動データは4ビットであり、枠側のモータ駆動基板37にK個の役物モータが配置される本実施例では、モータ駆動データ全体で4×Kビットとなる。また、盤側のモータ駆動基板30にL個の役物モータが配置される本実施例では、モータ駆動データ全体で4×Lビットとなる。
The accessory motors M1 to Mn are composed of, for example, a stepping motor, and FIGS. 11 (d) and 11 (e) show a case where the unipolar stepping motor is excited, for example, in two phases. .. In the case of such a configuration, the motor drive data to be transmitted to one of the accessory motors Mi is 4 bits, and in this embodiment, K accessory motors are arranged on the
ところで、本実施例では、DMA転送を採用するので、モータ駆動テーブルMOTe,MOTfからDMAコントローラ63(チャネル#12,#13)へのデータ転送、及び、DMAコントローラ63(チャネル#12,#13)からシリアルポート55(チャネル#E,#F)へのデータ転送は、何れも所定バイトを一単位として行う必要がある。
By the way, in this embodiment, since DMA transfer is adopted, data transfer from the motor drive tables MTe, MOTf to the DMA controller 63 (
本実施例では、例えば、2バイト単位にDMA転送を繰り返しており、DMA転送されるモータ駆動データの総ビット数は、16ビットの整数倍である必要がある。そこで、本実施例では、モータ駆動データテーブルMOTe,MOTfの先頭に、必要ビット(X,Y)のダミーデータDUMMY を追加することで、4×K+Xの値や、4×L+Yの値を16ビットの整数倍にしている。 In this embodiment, for example, DMA transfer is repeated in 2-byte units, and the total number of bits of the motor drive data to be DMA-transferred needs to be an integral multiple of 16 bits. Therefore, in this embodiment, by adding the dummy data DUMMY of the necessary bits (X, Y) to the head of the motor drive data tables MTe and MOTf, the value of 4 × K + X and the value of 4 × L + Y are 16 bits. It is an integral multiple of.
図11(c)は、この状態を図示しており、モータ駆動データテーブルMOTe,MOTfの先頭には、必要個数(X,Y)のダミーデータDUMMY が付加されている。そのため、シリアルポート(#E,#F)が出力するシリアルクロックSCKの個数は、4×K+X個、又は4×L+Y個となるが、先頭に送信されるX個又はY個のダミーデータDUMMY は、これを受け取るモータドライバが存在せず消滅するので何の問題も生じない。 FIG. 11C illustrates this state, and the required number (X, Y) of dummy data DUMMY is added to the heads of the motor drive data tables MTe and MOTf. Therefore, the number of serial clock SCKs output by the serial ports (#E, #F) is 4 × K + X or 4 × L + Y, but the X or Y dummy data DUMMY transmitted at the beginning is , There is no motor driver to receive this and it disappears, so no problem occurs.
なお、4×K+Xビット、又は、4×L+Yビットのモータ駆動データは、ステッピングモータの一動作態様を特定するので、ユニポーラ型ステッピングモータを2相励磁する本実施例では、最低でも、第一動作態様から第四動作態様までの四態様が存在することになり(図11(e)参照)、モータ駆動データテーブルMOTは、最低でも、この四態様を特定する第一区分データ~第四区分データが必要となり、これらが順番に送信されることになる(図11(c)参照)。 Since the 4 × K + X bit or 4 × L + Y bit motor drive data specifies one operation mode of the stepping motor, in this embodiment in which the unipolar stepping motor is excited in two phases, at least the first operation is performed. There are four modes from the mode to the fourth operation mode (see FIG. 11 (e)), and the motor drive data table MOT has at least the first division data to the fourth division data that specify these four modes. Will be required, and these will be transmitted in order (see FIG. 11 (c)).
もっとも、このような動作は、複数個の役物モータが、規則的に同期回転する単純な動作に過ぎず、実際の役物演出では、特定の役物モータだけが不規則に移動する場合も多い。したがって、実際には、役物演出の種類毎に、多数のモータ駆動データテーブルMOTiが用意されており、ホストCPU50は、その時の役物演出に対応して、参照すべきモータ駆動テーブルMOTiを選択し、シリアル出力すべき一区分のモータ駆動データ(4×K+Xビット、又は、4×L+Yビット)を特定して、DMA転送動作とシリアル送信動作を開始させることになる。
However, such an operation is merely a simple operation in which a plurality of accessory motors rotate in synchronization with each other regularly, and in an actual accessory effect, only a specific accessory motor may move irregularly. many. Therefore, in reality, a large number of motor drive data tables MOTi are prepared for each type of accessory effect, and the
以上、SPI送信モードについて説明したが、シリアルポート55のチャネル#Eと#Fは、SPI受信モードで機能するタイミングもある。この場合は、シリアルデータの受信個数を、予めチャネル#Eと#Fの該当レジスタに設定した状態で、受信モードの動作を開始する。すると、受信データ個数に対応するシリアルクロックSCKが送信されるので、シリアルクロックSCKに同期してシリアルデータ(センサ信号など)を受信し、所定単位毎に、パラレルデータとしてホストCPU50が取得することになる。
Although the SPI transmission mode has been described above, the channels #E and #F of the
図11(d)は、シリアル受信動作を説明する図面であり、信号取得回路GETの回路構成も示されている。なお、図示した構成の信号取得回路GETが、枠側及び盤側には、一個又は複数個が連設して配置されている。何れにしても、一の信号取得回路GETは、8個のシフトレジスタを有して構成され、各シフトレジスタのパラレル端子ODには、8ビットのパラレル信号(A~H)が供給されている。そして、各シフトレジスタが、共通的に取得パルスLT(LTe,LTf)を受けることで、8ビット長のパラレル信号が8個のシフトレジスタに取得される。図示の通り、8個のシフトレジスタは、直列接続されているので、シリアルクロックSCKを受ける毎に、自己の保持データを下流側のシフトレジスタに転送することになる。 FIG. 11D is a drawing illustrating a serial reception operation, and also shows a circuit configuration of a signal acquisition circuit GET. In addition, one or a plurality of signal acquisition circuit GETs having the illustrated configuration are arranged in series on the frame side and the board side. In any case, one signal acquisition circuit GET is configured to have eight shift registers, and an 8-bit parallel signal (A to H) is supplied to the parallel terminal OD of each shift register. .. Then, each shift register receives the acquisition pulse LT (LTe, LTf) in common, so that a parallel signal having an 8-bit length is acquired in the eight shift registers. As shown in the figure, since the eight shift registers are connected in series, each time the serial clock SCK is received, the self-held data is transferred to the shift register on the downstream side.
枠側及び盤側の信号取得回路GETは、何れも上記の通りに動作をするので、本実施例では、パラレルポート54から、枠側又は盤側の全ての信号取得回路GETに対して、先ず、取得パルスLTe,LTfを出力し、その後、必要個数のシリアルクロックSCKを出力することで、必要なデータをシリアル受信している。
Since the signal acquisition circuit GETs on the frame side and the board side both operate as described above, in this embodiment, first, for all the signal acquisition circuit GETs on the frame side or the board side from the
なお、この実施例では、シリアルポート55のチャネル#Eと#FをSPI送信モードと、SPI受信モードで使用するので、パラレルポート54から枠側と盤側の切換器47A,47Bに対して、切換制御信号CTLe,CTfを出力して、シリアルクロックSCKe,SCKfの伝送先を切り換えている。
In this embodiment, since the channels # E and #F of the
すなわち、切換制御信号CTLe,CTfによって切換器47A,47Bの内部回路が切換ることで、SPI送信モードで機能するチャネル#Eと#FのシリアルクロックSCKe,SCKfは、モータドライバDVに伝送され、SPI受信モードで機能するチャネル#Eと#FのシリアルクロックSCKe,SCKfは、枠側と盤側の信号取得回路GET,GETに伝送される。
That is, by switching the internal circuits of the
続いて、図13に基づいて、LED駆動モードで機能するシリアルポート55のチャネル#Cと#Dについて、図13に基づいて説明する。この実施例では、枠側と盤側のランプ駆動基板3629には、図13(b)に示すランプドライバDRが各々複数個搭載されている。
Subsequently, based on FIG. 13, channels # C and # D of the
このランプドライバDRは、RGB三色のLEDランプを各8個(合計24個)駆動できるよう構成されており、図13(b)に示す通り、合計24個の出力端子(LEDR_1-8,LEDG_1-8,LEDB_1-8)と、各素子に固有のスレーブアドレスを規定する5ビットのアドレス端子(A0~A4)と、シリアルクロックSPCKc/SPCKdを受けるクロック端子SCLKと、ランプ駆動データSPOc/SPOdを受けるシリアル端子SDATAと、動作制御信号OEc/OEdを受ける制御端子SDENとを有して構成されている。 This lamp driver DR is configured to drive eight RGB three-color LED lamps (24 in total), and as shown in FIG. 13 (b), a total of 24 output terminals (LEDR_1-8, LEDG_1). -8, LEDB_1-8), a 5-bit address terminal (A0 to A4) that defines a slave address unique to each element, a clock terminal SCLK that receives the serial clock SPCKc / SPCKd, and lamp drive data SPOc / SPOd. It is configured to have a serial terminal SDAT for receiving and a control terminal SDEN for receiving operation control signals OEc / OEd.
図13(a)に示す通り、クロック端子SCLKとシリアル端子SDATAと制御端子SDENは、全てのランプドライバDR1~DRnに共通的に供給されている。また、図13(a)には、32個のランプドライバDRiのアドレス端子(A0~A4)に、00000b~11111bのアドレス信号が供給されており、32個のランプドライバDRiのスレーブアドレスが、0~31である実施例が示されている。したがって、この構成では、RGB各色のLEDランプが、各々、256個(=32×8)配置できることになる。 As shown in FIG. 13A, the clock terminal SCLK, the serial terminal SDAT, and the control terminal SDEN are commonly supplied to all the lamp drivers DR1 to DRn. Further, in FIG. 13A, the address signals of 000000b to 11111b are supplied to the address terminals (A0 to A4) of the 32 lamp drivers DRi, and the slave addresses of the 32 lamp drivers DRi are 0. Examples of ~ 31 are shown. Therefore, in this configuration, 256 (= 32 × 8) LED lamps of each RGB color can be arranged.
また、このランプドライバDRは、24個(RGB各色が8個)のLEDランプについて、各々、発光輝度を階調制御(Brightness Control)できるよう構成されており、8ビットで規定されるデューティ比を設定可能な24個を含め、合計で30個の内蔵レジスタ(R1~R30)が内蔵されている。各内蔵レジスタ(R1~R30)には、階調を規定するデューティ比など、8ビット長の設定データが設定される必要があり、各内蔵レジスタには、8ビット長のレジスタアドレス(00h~1Dh)が付与されている。 Further, this lamp driver DR is configured so that the emission brightness of each of the 24 LED lamps (8 for each color of RGB) can be controlled by gradation (Brightness Control), and the duty ratio defined by 8 bits is set. A total of 30 built-in registers (R1 to R30) are built-in, including 24 configurable ones. It is necessary to set 8-bit length setting data such as the duty ratio that defines the gradation in each built-in register (R1 to R30), and each built-in register has an 8-bit length register address (00h to 1Dh). ) Is given.
したがって、ランプドライバDRが駆動対象とする24個のLEDランプの発光輝度を制御するには、そのランプドライバDRのスレーブアドレスを特定した状態で、合計30個の内蔵レジスタ(R1~R30)に、必要な設定データを伝送する必要がある。 Therefore, in order to control the emission brightness of the 24 LED lamps to be driven by the lamp driver DR, a total of 30 built-in registers (R1 to R30) are stored with the slave address of the lamp driver DR specified. It is necessary to transmit the necessary setting data.
図13(c)は、ランプドライバDRの所定の内蔵レジスタに、8ビット長の設定データを書込む場合の動作手順を示すタイムチャートである。図示の通り、制御端子SDENをアクティブレベルに維持した状態で、クロック端子SCLKに供給されるシリアルクロックに同期して、スレーブアドレスをシリアル伝送し、その後、内蔵レジスタを特定するレジスタアドレスをシリアル伝送する必要がある。 FIG. 13C is a time chart showing an operation procedure when writing 8-bit length setting data to a predetermined built-in register of the lamp driver DR. As shown in the figure, with the control terminal SDEN maintained at the active level, the slave address is serially transmitted in synchronization with the serial clock supplied to the clock terminal SCLK, and then the register address specifying the built-in register is serially transmitted. There is a need.
以上の動作の後、特定された内蔵レジスタに設定すべき設定データをシリアル伝送することになるが、このランプドライバDRでは、制御端子SDENがアクティブレベルである状態で、24個目のシリアルクロックの立ち上がりエッジで、それ以前に特定されている内蔵レジスタに、3番目に伝送された設定データが書込まれるよう構成されている(制御端子SDENへの信号を必要とする3線伝送方式)。 After the above operation, the setting data to be set in the specified built-in register will be serially transmitted. In this lamp driver DR, the 24th serial clock of the control terminal SDEN is in the active level. At the rising edge, the built-in register specified before that is configured to write the third transmitted setting data (three-wire transmission method that requires a signal to the control terminal SDEN).
以上、特定の内蔵レジスタに設定データを設定する場合を説明したが、全ての内蔵レジスタ(R1~R30)に設定データを設定する場合は、図13(e)の動作となる。すなわち、制御端子SDENをアクティブレベルに設定した状態で、スレーブアドレスをシリアル伝送し、その後、先頭のレジスタアドレス(00h)をシリアル伝送した上で、その内蔵レジスタへの設定データをシリアル送信する。 The case where the setting data is set in the specific built-in register has been described above, but when the setting data is set in all the built-in registers (R1 to R30), the operation shown in FIG. 13 (e) is performed. That is, with the control terminal SDEN set to the active level, the slave address is serially transmitted, then the first register address (00h) is serially transmitted, and then the setting data to the built-in register is serially transmitted.
これらの動作によって、先頭の内蔵レジスタ(R0)への設定動作は完了するが、その後もシリアル伝送を継続すると、スレーブアドレスが内部動作よってインクリメントされ、その後、シリアル伝送された設定データが8ビットに達する毎に、各内蔵レジスタ(R1~R29)に、設定データが設定されることになる。 By these operations, the setting operation to the first built-in register (R0) is completed, but if serial transmission is continued after that, the slave address is incremented by the internal operation, and then the serially transmitted setting data becomes 8 bits. Each time it reaches, the setting data is set in each of the built-in registers (R1 to R29).
実施例のランプドライバDRは、上記の通りに動作するので、1個のランプドライバDRに設定データを書込むには、合計で、256個のシリアルクロックを伝送すべきことになる。なお、この256個は、伝送データのビット数と同じであり、スレーブアドレス8ビット分と、レジスタアドレス8ビット分と、30個の内蔵レジスタに対する30×8ビット分の総数である。以上の動作に対応して、シリアルポート55のチャネル#Cとチャネル#Dは、図13(d)のように動作する必要がある。
Since the lamp driver DR of the embodiment operates as described above, a total of 256 serial clocks should be transmitted in order to write the setting data to one lamp driver DR. The 256 bits are the same as the number of bits of the transmission data, and are the total number of 8 bits for the slave address, 8 bits for the register address, and 30 × 8 bits for 30 built-in registers. Corresponding to the above operation, the channel # C and the channel # D of the
ところで、実施例の複合チップでは、LED駆動モードで動作するシリアルポート55は、シリアル送信の一単位である1サンプルのビット長を規定する必要がある。また、LED駆動モードでは、上記した3線伝送方式に対応するべく、1フレームの単位で、Output Enable 信号として、OEc/OEd信号が出力されるよう構成されているので、1フレームを構成するサンプル数を特定する必要がある。
By the way, in the composite chip of the embodiment, the
図13(a)に示す通り、OEc/OEd信号は、ランプドライバDRの制御端子SDENに供給されており、このSDEN端子がHレベルであることが、ランプドライバDRの動作可能条件となる。そして、先に説明した通り、1個のランプドライバDRに伝送されるべきデータの総量は、256ビットである。 As shown in FIG. 13A, the OEc / Oed signal is supplied to the control terminal SDEN of the lamp driver DR, and it is an operable condition of the lamp driver DR that the SDEN terminal is H level. And, as described above, the total amount of data to be transmitted to one lamp driver DR is 256 bits.
そこで、以上の点を考慮して、本実施例では、1サンプルを16ビット長と、16個のサンプル(各16ビット長)で1フレームを構成している。図11(b)は、この関係を図示したものであり、ランプ駆動データテーブルLMPc,LMPdには、16×16ビットの単位で、各ランプドライバDRに伝送すべきランプ駆動データが保存されている。なお、ランプ演出は、時間経過と共に進行するので、最低でも動作態様に対応するランプ駆動データテーブルLMPc,LMPdが用意されている。 Therefore, in consideration of the above points, in this embodiment, one sample is 16-bit length and 16 samples (16-bit length each) form one frame. FIG. 11B illustrates this relationship, and the lamp drive data tables LMPc and LMPd store lamp drive data to be transmitted to each lamp driver DR in units of 16 × 16 bits. .. Since the lamp effect progresses with the passage of time, lamp drive data tables LMPc and LMPd corresponding to at least the operation mode are prepared.
役物演出の場合と同様、ランプ演出においても、全てのLEDランプが同期的に点灯/消灯するとは限らず、特定一群のLEDランプだけが点灯/消灯する場合もある。そのため、実際には、多数のランプ駆動データテーブルLMPc,LMPdが用意されている。但し、何れのランプ駆動データテーブルLMPc,LMPdでも、1個のランプドライバDRに伝送すべきランプ駆動データは16×16ビット(32バイト)であり、モータ駆動データテーブルMOTe,MOTfの場合のようなダミーデータDUMMY は不要である。 Similar to the case of the accessory effect, in the lamp effect, not all the LED lamps are turned on / off synchronously, and only a specific group of LED lamps may be turned on / off. Therefore, in reality, a large number of lamp drive data tables LMPc and LMPd are prepared. However, in any of the lamp drive data tables LMPc and LMPd, the lamp drive data to be transmitted to one lamp driver DR is 16 × 16 bits (32 bytes), as in the case of the motor drive data tables MTe and MOTf. Dummy data DUMMY is not required.
すなわち、モータ駆動データテーブルMOTe,MOTfからDMAコントローラ63(チャネル#10、#11)には、32バイト単位でDMA転送動作が実行され、DMAコントローラ63(チャネル#10、#11)からシリアルポート55(チャネル#C、#D)の送信FIFOに対しては、2バイト単位で、DMA転送動作が実行される。そして、送信FIFOのランプ駆動データのシリアル送信が完了すれば、各チャネル(#C,#D)のステイタスレジスタ(不図示)が送信完了状態にセットされる。
That is, a DMA transfer operation is executed in units of 32 bytes from the motor drive data tables MTe and MOTf to the DMA controller 63 (
以上、1個のモータドライバへの転送データ数が16×16ビットの場合を説明したが、モータ駆動データテーブルMOTe,MOTfからDMAコントローラ63へのデータ転送単位や、DMAコントローラ63から送信FIFOへのデータ転送単位に整合しない場合には、転送単位に整合するよう適宜なダミーデータDUMMY を付加すれば良い。 The case where the number of data transferred to one motor driver is 16 × 16 bits has been described above, but the data transfer unit from the motor drive data tables MTe, MOTf to the DMA controller 63 and the data transfer unit from the DMA controller 63 to the transmission FIFA If it does not match the data transfer unit, appropriate dummy data DUMMY may be added so that it matches the transfer unit.
また、図13では、3線伝送方式について使用したが、ランプドライバの制御端子SDENを使用しない2線伝送方式を採用するのも好適である。この場合には、制御端子SDENを使用しないので、図14(a)に示す通り、OEc/OEd信号は活用されない。 Further, although the 3-wire transmission method is used in FIG. 13, it is also preferable to adopt a 2-wire transmission method that does not use the control terminal SDEN of the lamp driver. In this case, since the control terminal SDEN is not used, the OEc / OEd signal is not utilized as shown in FIG. 14 (a).
この2線伝送方式では、伝送されるシリアルビット列が、図14(c)に示すビット態様のスタート条件を満たすと、各ランプドライバDRiがアクティブ状態となる。但し、スタート条件(9ビット)、スレーブアドレス(8ビット)、レジスタアドレス(8ビット)、設定データ(8ビット)の区切り毎にBLANK ビットを出力する必要がある。そして、BLANK ビットの立ち上がりエッジで、各ビット列がランプドライバDRiに把握され、30個の内蔵レジスタの何れかにに設定データが取得される、 In this two-wire transmission method, each lamp driver DRi becomes active when the transmitted serial bit string satisfies the start condition of the bit aspect shown in FIG. 14 (c). However, it is necessary to output the BLANK bit for each delimiter of the start condition (9 bits), slave address (8 bits), register address (8 bits), and setting data (8 bits). Then, at the rising edge of the BLANK bit, each bit string is grasped by the lamp driver DRi, and the setting data is acquired in any of the 30 built-in registers.
この2線伝送方式の動作態様でも、先頭の内蔵レジスタのレジスタアドレスを送信した後は、レジスタアドレスが内部動作によって自動的にインクリメントされるので、一個のランプドライバDRの全ての内蔵レジスタ(30個)に設定データを設定するには、10+9+9+9×30=298ビットのシリアルデータの送信が必要となる。このように2線伝送方式の場合には、1個のランプドライバDRへの送信データ数が、スタートビット(9ビット)と、BLANK ビットの分だけ増加するが、複数のランプドライバに対して、一気にシリアルデータの伝送を終えることができる利点がある。 Even in the operation mode of this two-wire transmission method, after the register address of the first built-in register is transmitted, the register address is automatically incremented by the internal operation, so that all the built-in registers (30) of one lamp driver DR are used. ), It is necessary to transmit 10 + 9 + 9 + 9 × 30 = 298-bit serial data. In this way, in the case of the 2-wire transmission method, the number of data transmitted to one lamp driver DR increases by the start bit (9 bits) and the BLANK bit, but for a plurality of lamp drivers, There is an advantage that the transmission of serial data can be completed at once.
すなわち、3線伝送方式の場合には、1個のランプドライバDRへの256ビットのシリアル伝送毎に、OE信号を出力し直す必要があるが、2線伝送方式では、N個のランプドライバDR1~DRnに対して、合計298×Nビットのデータを一気に出力することができるので、ホストCPU50の制御負担が軽減される。
That is, in the case of the 3-wire transmission method, it is necessary to re-output the OE signal for each 256-bit serial transmission to one lamp driver DR, but in the 2-wire transmission method, N lamp drivers DR1 Since a total of 298 × N bits of data can be output at once for ~ DRn, the control load on the
図14(d)は、LED駆動モードで機能するシリアルポート55のチャネル#Cや#Dにおいて、例えば、32個のランプドライバDR1~DR32を駆動する場合を図示しており、合計9536ビットのデータが、1サンプルを構成する16ビット毎に、596個のサンプルデータとして、シリアル伝送される状態を示している。
FIG. 14D illustrates a case where, for example, 32 lamp drivers DR1 to DR32 are driven in channels # C and # D of the
この実施例の場合、1サンプルは、DMA転送の転送単位に一致しており(図11(a)参照)、DMAコントローラ63からシリアルポート55の送信FIFOへの転送回数が596回である。なお、2線伝送方式では、OEc/OEd信号を活用しないことは先に説明した通りである。
In the case of this embodiment, one sample corresponds to the transfer unit of DMA transfer (see FIG. 11A), and the number of transfers from the DMA controller 63 to the transmission FIFO of the
以上、シリアルポート55のチャネル#Cや#Dを、LED駆動モードで機能させる場合について説明したが、特に限定されず、SPI通信モードを使用することもできる。図14(e)は、シリアルポート55のチャネル#Cや#Dを、SPI通信モードで機能させ、例えば、10個のランプドライバDR1~DR10を駆動する場合を図示している。
The case where the channels # C and #D of the
この場合には、シリアル伝送すべき全データ数は、298×10ビットであるが、DMAコントローラ63からシリアルポート55の送信FIFOへの転送単位が16ビットであるので、12ビットのダミービットDUMMY を付加して、合計2992ビットとしている。
In this case, the total number of data to be serially transmitted is 298 × 10 bits, but since the transfer unit from the DMA controller 63 to the transmission FIFA of the
そして、DMAコントローラ63からシリアルポート55の送信FIFOに対して、187回(=2992/16)のデータ転送が繰り返されつつ、合計2992ビットのシリアル伝送が一気に実行される。以上の通り、ダミービットDUMMY を付加することで、ランプドライバDRの配置個数に拘らず、シリアルポート55の送信FIFOへのDMA転送を活用したシリアル伝送が可能となる。なお、この点は、LED駆動モードであるか、SPI通信モードであるかを問わない。また、ダミービットDUMMY は、スタート条件を満たさないビット列であれば任意である。
Then, data transfer of 187 times (= 2992/16) is repeated from the DMA controller 63 to the transmission FIFO of the
以上、演出制御部22の回路構成や回路動作を中心に説明したので、続いて、図15~図16に基づいて、演出制御部22の制御動作について説明する。演出制御部22の処理は、電源投入後に実行されるメイン処理(図15(a))と、主制御部21から制御コマンドCMDを受けると起動される受信割込み処理(図15(b)と、1mS毎に繰り返し起動されるタイマ割込み処理(図6(a))と、を有して構成されている
Since the circuit configuration and circuit operation of the
図15(a)は、電源投入後のホストCPU50の動作を示しており、先ず、複合チップ40の内蔵レジスタについて初期設定処理を実行して、その後の演出制御の準備を完了させる(ST10)。図15(b)は、初期設定処理の一部を図示したものであり、先ず、DMAコントローラ63(チャネル#0)を使用して、外付けROM42に保存されている音声データSNDを、DDRメモリ41にDMA転送している。
FIG. 15A shows the operation of the
具体的には、図10(a)に関して説明した通りであり、音声データSNDのDMA転送について、先ず、DMAの使用チャンネルとしてDMAチャネル#0を特定すると共に、MDA転送に必要な動作パラメータをDMAコントローラ63の該当レジスタに設定する(ST1)。設定される動作パラメータには、(1)外付けROM42における転送元の先頭アドレス、(2)転送元からDMAコントローラ53に対する一回の読出しサイズ(バイト長)、(3)外付けROM42からDMAコントローラ53へのREAD転送回数、(4)DDRメモリ41における転送先の先頭アドレス、(5)DMAコントローラ53から転送先に対する一回の書込みサイズ(バイト長)、(6)DMAコントローラ53からDDRメモリ41へのWRITE転送回数が含まれている。
Specifically, as described with respect to FIG. 10A, regarding the DMA transfer of the voice data SND, first, the
次に、ホストCPU50は、DMAコントローラ53の該当レジスタに動作開始を指示すると(ST2)、その後は、ステップST1の処理で設定した動作条件でDMA転送が開始され、転送元と転送先のアドレスが適宜に更新されつつ、読出しサイズと書込みサイズの転送動作が繰り返される。
Next, when the
このDMA転送に、ホストCPU50が関与する必要はないので、続いて、外付けROMからCGデータの先読み動作(プリロード)を実行する場合には、ホストCPU50は、VDPコントローラ60の該当レジスタにその旨を設定する(ST2)。次に、ホストCPU50は、サウンドエンジン52に対して、定期SAC動作を指示する(ST4)。
Since it is not necessary for the
先に説明した通り、本実施例で実行される定期SAC動作は、マルチエフェクタ85におけるイコライザ機能やコンプレッサ機能を繰り返し再設定する動作であり、ステップST4の設定を受けたサウンドエンジン52は、この後、32/48×512mS毎に音質設定動作を繰り返すことになる。なお、サウンドエンジン52には複数のシンプルアクセスコントローラSACが内蔵されているので、複数種類の定期SAC動作を設定するのも好適である。 As described above, the periodic SAC operation executed in this embodiment is an operation of repeatedly resetting the equalizer function and the compressor function in the multi-effect unit 85, and the sound engine 52 receiving the setting in step ST4 is subsequently performed. , The sound quality setting operation is repeated every 32/48 × 512 mS. Since the sound engine 52 has a plurality of simple access controllers SAC built-in, it is also preferable to set a plurality of types of periodic SAC operations.
初期設定処理(ST10)には、その他、バンクフリップ周期(1/30秒)など、VDPコントローラ60に関する動作パラメータの設定(ST5)が含まれているが、これらについては、図17~図19に関連して後述する。そして、最後に、電源投入後に開始される初期演出用の演出シナリオを特定して初期処理が終了する(ST6)。
The initial setting process (ST10) also includes setting of operation parameters (ST5) related to the
このような初期設定処理(ST10)が終わると、その後は、バンクフリップ周期(1/30秒)毎に、ステップST11~ST20の処理が無限ループ状に繰り返し実行される。そして、この無限ループ処理(ステップST11~ST20)の間に、主制御部21から制御コマンドCMDを受けることがあり、この場合には、受信割込み処理として、図15(b)の処理が実行される。
After such initial setting processing (ST10) is completed, the processing of steps ST11 to ST20 is repeatedly executed in an infinite loop every bank flip cycle (1/30 second) thereafter. Then, during the infinite loop processing (steps ST11 to ST20), the control command CMD may be received from the
受信割込み処理では、受信した制御コマンドCMDが、先ず、受信バッファに格納される(ST22)。そして、格納された制御コマンドCMDは、無限ループ処理のステップST19の処理で読み出され、制御コマンドCMDに基づいた演出動作が開始される。また、制御コマンドCMDが抽選処理の結果を当選状態と特定している場合(ST23)には、その当選情報を時刻情報と共に、液晶IF基板25に配置されている不揮発性メモリ26に記憶する(ST24)。
In the receive interrupt process, the received control command CMD is first stored in the receive buffer (ST22). Then, the stored control command CMD is read out in the process of step ST19 of the infinite loop process, and the effect operation based on the control command CMD is started. When the control command CMD specifies the result of the lottery process as the winning state (ST23), the winning information is stored together with the time information in the
なお、設定キーSETが操作されたことを示す制御コマンドCMDを受けた場合には、不揮発性メモリ26に記憶されている遊技実績履歴を、表示装置DSP1に画面表示する履歴表示動作を起動させる。具体的には、履歴表示用の指令フラグFGを1にセットする(ST25)。
When the control command CMD indicating that the setting key SET has been operated is received, the history display operation of displaying the game record history stored in the
この指令フラグFGは、ステップST19の処理で参照され、ステップST20などの処理を経て、必要な画像制御動作が実行される。また、この画像制御動作中に、初期化スイッチSWが操作されたことを示す制御コマンドCMDを受けた場合には、指令フラグFGが2にセットされ、その後、チャンスボタン11の押下を条件に、不揮発性メモリ26の記憶内容を全て消去する。なお、チャンスボタンの押下は、1mS毎のタイマ割込み処理において、リアルタイムに把握される(図16のST42)。
This command flag FG is referred to in the process of step ST19, and the necessary image control operation is executed through the process of step ST20 and the like. Further, when the control command CMD indicating that the initialization switch SW has been operated is received during this image control operation, the command flag FG is set to 2, and then, on condition that the
続いて、図15(a)の無限ループ処理について説明する。無限ループ処理では、先ず、ステップST6の処理や、ステップST19の処理で特定された演出シナリオに基づいて、画像演出用の処理(ST11)が実行されるが、このコマンドリスト処理については、図17において後述する。 Subsequently, the infinite loop processing of FIG. 15A will be described. In the infinite loop process, first, the image effect process (ST11) is executed based on the process of step ST6 and the effect scenario specified in the process of step ST19. Regarding this command list process, FIG. 17 Will be described later.
次に、演出開始からの経過時間と、ステップST20の処理で更新された演出シナリオとを対比して、音声演出の更新タイミングか否かが判定され(ST12)、音声演出の更新タイミングに達している場合には、音声コマンド列を、図5や図9に示す中継バッファ82に書き込む(ST13)。なお、この実施例では、音声コマンドリストSLTを使用しないので、ホストCPU50が中継バッファ82(MCR,MCD)を直接WRITEアクセスする。
Next, the elapsed time from the start of the effect is compared with the effect scenario updated in the process of step ST20, and it is determined whether or not it is the update timing of the audio effect (ST12), and the update timing of the audio effect is reached. If so, the voice command sequence is written to the
先に説明した通り、音声コマンドは、サウンドエンジン52のコマンドレジスタRGiのレジスタ番号(1バイト)と、そのレジスタRGiへの設定値(1バイト)を一組とする2バイト長である。そして、図9に関して説明した通り、ホストCPU50は、レジスタ番号を含んだ4バイト長を第1中継レジスタMCRに書込むと共に、設定値を含んだ4バイト長を第2中継レジスタMCDに書込む。
As described above, the voice command has a length of 2 bytes, which is a set of the register number (1 byte) of the command register RGi of the sound engine 52 and the set value (1 byte) in the register RGi. Then, as described with respect to FIG. 9, the
すると、中継レジスタ82から抽出された2バイト長(レジスタ番号+設定値)は、自動的に音声コマンドFIFOに蓄積されるので(図9参照)、ホストCPU50は、一群の音声コマンド(音声コマンド列)を、同じ中継レジスタ82に繰り返し書込めば良いことなる。先に説明した通り、音声コマンドFIFOに蓄積された音声コマンド列は、サウンドエンジン52の動作周期(32/48mS)毎に、図8に示すSCM(サウンドコントールモジュール)81によってFIFO方式で読み出され、コマンドレジスタRGiへの設定動作が実行される。
Then, the 2-byte length (register number + set value) extracted from the
以上のようにして音声演出を進行させた後、ランプ演出の更新タイミングか否かが判定され(ST14)、更新タイミングであれば、ホストCPU50は、ランプ駆動データテーブルLMPc,LMPdの参照位置を更新する(ST15)。なお、枠側と盤側のランプ演出の更新タイミングは必ずしも一致しないので、該当するランプ駆動データテーブルLMPc/LMPdの参照位置だけが更新される場合もある。また、図11(b)に示すような規則的な更新に限らず、特定のLEDランプだけが点灯/消灯する場合があることも先に説明した通りである。
After advancing the audio effect as described above, it is determined whether or not the lamp effect is updated (ST14), and if it is the update timing, the
次に、ホストCPU50は、ランプ駆動データテーブルLMPc/LMPdの参照位置で特定される一群のデータを、シリアルポート55のチャネル#C/#Dからシリアル送信するべく各部を制御する(ST16)。具体的な動作は、図15(d)に示す通りであり、ランプドライバDR毎に、ランプ駆動データテーブルLMPの参照位置を特定し(ST33)、DMA転送に関し、必要な動作パラメータをDMAコントローラの該当レジスタに設定する(ST34)。
Next, the
図10(b)に関し説明した通り、必要な動作パラメータには、(1)ランプ駆動データテーブルLMPc/LMPdにおける転送元の先頭アドレス、(2)転送元からDMAコントローラ53(#10/#11)に対する一回の読出しサイズ(実施例では32バイト長)、(3)ランプ駆動データテーブルLMPc/LMPdからDMAコントローラ53(#10/#11)へのREAD転送回数(図10(b)では1回)、(4)シリアルポート55のチャネル#C/#Dにおける転送先のアドレス(実施例では中継レジスタITMのアドレス)、(5)DMAコントローラ53(#10/#11)から転送先に対する一回の書込みサイズ(実施例では2バイト)、(6)DMAコントローラ53からシリアルポート55のチャネル#C/#DへのWRITE転送回数(図10(b)では16回)が含まれている。 As described with respect to FIG. 10B, the necessary operating parameters include (1) the start address of the transfer source in the lamp drive data table LMPc / LMPd, and (2) the DMA controller 53 (# 10 / # 11) from the transfer source. One read size (32 bytes in the embodiment), (3) Number of READ transfers from the lamp drive data table LMPc / LMPd to the DMA controller 53 (# 10 / # 11) (once in FIG. 10 (b)). ), (4) Forwarding destination address in channel # C / # D of serial port 55 (address of relay register ITM in the embodiment), (5) Once from DMA controller 53 (# 10 / # 11) to the forwarding destination. (2 bytes in the embodiment), and (6) the number of WRITE transfers from the DMA controller 53 to the channel # C / # D of the serial port 55 (16 times in FIG. 10B).
また、ランプ駆動データのDMA転送に必要な動作パラメータには、図10(b)に関して説明したシリアルポート55のチャネル#C/#Dの送信FIFOと、DMAコントローラ53(#10/#11)との間のHand Shake動作を実現する、送信FIFOの蓄積データ量に関する閾値も含まれる。
The operation parameters required for DMA transfer of the lamp drive data include the transmission FIFO of the channel # C / # D of the
そして、DMAコントローラの該当レジスタに所定値を設定して、DMAコントローラ53(#10/#11)の動作を開始させると共に(ST34)、シリアルポート55(チャネル#C/#D)の該当レジスタに所定値を設定することで、シリアル送信動作を開始させる(ST35)。なお、図15(d)の実施例では、シリアルポート55(チャネル#C/#D)は、LED駆動モードで起動するよう、予め、該当レジスタが設定される必要がある(ST35)。 Then, a predetermined value is set in the corresponding register of the DMA controller to start the operation of the DMA controller 53 (# 10 / # 11) (ST34), and at the same time, in the corresponding register of the serial port 55 (channel # C / # D). By setting a predetermined value, the serial transmission operation is started (ST35). In the embodiment of FIG. 15D, the corresponding register needs to be set in advance so that the serial port 55 (channel # C / # D) is activated in the LED drive mode (ST35).
その後の動作は、図13(d)や、図14(d)に示す通りであり、シリアルポート55(チャネル#C/#D)の送信FIFOが空になるまで、シリアル送信処理が実行される。ホストCPU50は、このシリアス送信処理に全く関与する必要がないので、その後、ホストCPU50は、所定のステイタスレジスタを参照して、シリアルポート55(チャネル#C/#D)の送信終了を待つことになる(ST36)。
Subsequent operations are as shown in FIGS. 13 (d) and 14 (d), and the serial transmission process is executed until the transmission FIFO of the serial port 55 (channel # C / # D) becomes empty. .. Since the
先に説明した通り、LED駆動モードでは、一フレーム(実施例では16サンプル=256ビット)の単位でOE信号が出力され、この一フレーム(256ビット)の処理で、一のランプドライバDRへのシリアル伝送処理が終わる。そこでホストCPUは、全ての処理が終わったか否かを判定し(ST37)、次のランプドライバDRへのシリアル伝送処理に移行すべき場合は、ステップST33の処理を実行する。 As described above, in the LED drive mode, the OE signal is output in units of one frame (16 samples = 256 bits in the embodiment), and the processing of this one frame (256 bits) transfers to one lamp driver DR. The serial transmission process ends. Therefore, the host CPU determines whether or not all the processes have been completed (ST37), and if it should move to the serial transmission process to the next lamp driver DR, the host CPU executes the process of step ST33.
以上、3線伝送方式におけるLED駆動モードについて説明したが、2線伝送方式を採る場合には、シリアルポート55(チャネル#C/#D)を、LED駆動モードで使用するか、SPI通信モードで使用するかに拘らず、全てのランプドライバDRに対して、必要なシリアルデータを一気にシリアル伝送するので、ステップST37の処理は不要である。 The LED drive mode in the 3-wire transmission method has been described above, but when the 2-wire transmission method is adopted, the serial port 55 (channel # C / # D) is used in the LED drive mode or in the SPI communication mode. Regardless of whether it is used or not, the necessary serial data is serially transmitted to all the lamp driver DRs at once, so that the process of step ST37 is unnecessary.
但し、この場合には、ステップST34の処理において、(2)転送元からDMAコントローラ53(#10/#11)に対する一回の読出しサイズや、(5)DMAコントローラ53(#10/#11)から転送先に対する一回の書込みサイズが、例えば2バイト長とされる(図10(c)参照)。 However, in this case, in the process of step ST34, (2) the read size from the transfer source to the DMA controller 53 (# 10 / # 11) once, and (5) the DMA controller 53 (# 10 / # 11). The size of one write to the transfer destination is, for example, 2 bytes (see FIG. 10 (c)).
そして、この設定に対応して、図14(d)に示すLED駆動モードのランプ駆動では、(3)ランプ駆動データテーブルLMPc/LMPdからDMAコントローラ53(#10/#11)へのREAD転送回数や、(6)DMAコントローラ53からシリアルポート55のチャネル#C/#DへのWRITE転送回数が、各々、596回となり、全体で、2×596×8=9536ビットとなる(図10(c)参照)。
Then, in correspondence with this setting, in the lamp drive of the LED drive mode shown in FIG. 14 (d), (3) the number of READ transfers from the lamp drive data table LMPc / LMPd to the DMA controller 53 (# 10 / # 11). (6) The number of LED transfers from the DMA controller 53 to the channels # C / # D of the
なお、図14(e)に示すSPI通信モードのランプ駆動では、(3)READ転送回数と、(6)WRITE転送回数が、各々、187回となり、全体で、2×187×8=2992ビットとなる(図10(c)参照)。 In the lamp drive of the SPI communication mode shown in FIG. 14 (e), (3) the number of READ transfers and (6) the number of WRITE transfers are 187 times, respectively, and 2 × 187 × 8 = 2992 bits in total. (See FIG. 10 (c)).
以上のようにして、ステップST16の処理が終わると、次に、役物演出の更新タイミングか否かが判定される(ST17)。そして、更新タイミングに達している場合には、モータ駆動データテーブルMOTの参照位置が更新される(ST18)。但し、役物演出の進行は、1mS毎のタイマ割込みで実行されるので(図16)、ホストCPU50は、次に、受信割込み処理で受信された制御コマンドを解析する(ST19)。
As described above, when the processing of step ST16 is completed, it is next determined whether or not it is the update timing of the character effect (ST17). Then, when the update timing is reached, the reference position of the motor drive data table MOT is updated (ST18). However, since the progress of the accessory effect is executed by a timer interrupt every 1 mS (FIG. 16), the
そして、大当り抽選処理の結果を特定する変動パターンコマンドを受けた場合には、演出抽選などを経て、変動パターンコマンドの種類に応じた演出シナリオを特定する(ST19)。なお、この演出シナリオは、画像演出、ランプ演出、役物演出、及び音声演出の全てを、演出進行の時間情報と共に一元的に特定するものである。 Then, when a variable pattern command for specifying the result of the big hit lottery process is received, an effect scenario corresponding to the type of the variable pattern command is specified through an effect lottery or the like (ST19). In this staging scenario, all of the image staging, the lamp staging, the character staging, and the audio staging are centrally specified together with the time information of the staging progress.
次に、演出開始からの経過時間に基づいて、演出シナリオの参照位置を更新した上で(ST20)、バンクフリップを待つ(ST21)。先に説明したように、本実施例では、バンプフリップタイミングを、表示装置の垂直同期信号の周期の2倍に設定しており、ステップST11の実行開始から1/30秒以内にステップST20までの処理が終わっていれば良いので、ステップST11~ST20の処理を適宜に複雑化することができる。また、本実施例では、バンプフリップ後、直ちにコマンドリスト処理(ST11)を実行して、画像コマンドリストを発行するので、VDPコントローラには、約1/30秒の処理時間が確保されることになる。 Next, after updating the reference position of the production scenario based on the elapsed time from the start of the production (ST20), the bank flip is waited (ST21). As described above, in this embodiment, the bump flip timing is set to twice the period of the vertical synchronization signal of the display device, and the period from the start of execution of step ST11 to step ST20 within 1/30 second. Since it is sufficient that the processing is completed, the processing of steps ST11 to ST20 can be appropriately complicated. Further, in this embodiment, since the command list processing (ST11) is executed immediately after the bump flip and the image command list is issued, the processing time of about 1/30 second is secured for the VDP controller. Become.
続いて、図16に基づいて、タイマ割込み処理について説明する。タイマ割込み処理では、各種のセンサ信号を繰り返し取得すると共に、必要時には役物演出を進行させている。そこで、先ず、モータ駆動データを更新すべきか否かが判定される(ST30)。そして、役物演出中でない場合には、ステップST31~ST36の処理がスキップされる。 Subsequently, the timer interrupt processing will be described with reference to FIG. In the timer interrupt process, various sensor signals are repeatedly acquired, and when necessary, the character effect is advanced. Therefore, first, it is determined whether or not the motor drive data should be updated (ST30). Then, when the character is not being produced, the processes of steps ST31 to ST36 are skipped.
一方、何れか一以上の役物モータを移動させるべきタイミングであれば、先ず、シリアルポート55のチャネル#Eと#FをSPI送信モードに設定する。なお、実際には、枠側のモータ駆動基板37と、盤側のモータ駆動基板30の何れか一方だけが動作する場合も多く、以下に説明するステップST31~ST37の処理が、モータ駆動基板37かモータ駆動基板30に関して、何れか一方だけに実行されるか、或いは、ステップST31~ST37の処理が2回繰り返される。
On the other hand, if it is the timing to move any one or more accessory motors, first, the channels # E and #F of the
但し、以下の説明では、便宜上、モータ駆動基板37とモータ駆動基板30の全てのモータドライバDV~DVが同期的に機能すると簡略化し、全てのモータドライバDV~DVが纏めて制御される仮想事例について説明を続けることにする。
However, in the following description, for convenience, it is simplified that all the motor drivers DV to DV of the
このような仮想事例においては、ホストCPU50は、次に、パラレルポート54から第1レベルの切換制御信号CTLe,CTLfを出力する(ST32)。これは、その後に出力されるシリアルクロックSCKe,SCKfの伝送先を、モータ駆動基板37,30に搭載されているモータドライバDVとするためである。
In such a virtual case, the
次に、役物モータを歩進させるべきタイミングであれば、モータ駆動データテーブルMOTe,MOTfの参照位置を更新する(ST33)。そして、モータ駆動データのDMA転送に必要な動作パラメータを、DMAコントローラ53(#12/#13)の該当レジスタに設定する(ST34)。 Next, if it is the timing to advance the accessory motor, the reference positions of the motor drive data tables MTe and MOTf are updated (ST33). Then, the operation parameters required for the DMA transfer of the motor drive data are set in the corresponding registers of the DMA controller 53 (# 12 / # 13) (ST34).
ここで必要な動作パラメータには、(1)モータ駆動データテーブルMOTe/MOTfにおける転送元の先頭アドレス、(2)転送元からDMAコントローラ53(#12/#13)に対する一回の読出しサイズ(例えば2バイト長)、(3)モータ駆動データテーブルMOTe/MOTfからDMAコントローラ53(#12/#13)へのREAD転送回数、(4)シリアルポート55のチャネル#E/#Fにおける転送先のアドレス(実施例では中継レジスタITMのアドレス)、(5)DMAコントローラ53(#12/#13)から転送先に対する一回の書込みサイズ(例えば2バイト)、(6)DMAコントローラ53からシリアルポート55のチャネル#E/#FへのWRITE転送回数が含まれている。
The operation parameters required here include (1) the start address of the transfer source in the motor drive data table MTe / MOTf, and (2) the one-time read size from the transfer source to the DMA controller 53 (# 12 / # 13) (for example). 2 bytes long), (3) READ transfer count from motor drive data table MTe / MOTf to DMA controller 53 (# 12 / # 13), (4) transfer destination address in channel # E / # F of
また、モータ駆動データのDMA転送に必要な動作パラメータには、図10(b)に関して説明したシリアルポート55のチャネル#E/#Fの送信FIFOと、DMAコントローラ53(#12/#13)との間のHand Shake動作を実現する、送信FIFOの蓄積データ量に関する閾値も含まれる。
The operation parameters required for DMA transfer of the motor drive data include the transmission FIFO of the channel # E / # F of the
以上の動作パラメータを設定した後、ホストCPU50は、DMAコントローラ53(#12/#13)を起動させると共に(ST34)、シリアルポート55のチャネル#E/#Fのシリアル送信を開始させる(ST35)。すると、その後は、DMAコントローラ53(#12/#13)のHand Shake動作に基づき、チャネル#E/#Fの送信FIFOにモータ駆動データが転送され、シリアル送信動作が繰り返される。
After setting the above operation parameters, the
そこで、ホストCPU50は、所定のステイタスレジスタを参照して、全てのモータ駆動データが転送され終わるのを待つ(ST36)。そして、送信完了が確認されたタイミングで、ホストCPU50は、パラレルポート54を通して各モータドライバに対してラッチパルスLTe,LTfを出力する(ST37)。モータドライバDV1~DVnは、ラッチパルスLTe,LTfを受けることで、取得したモータ駆動データを、役物モータM1~Mnに出力するので、役物モータM1~Mnが歩進することになる(図12(a)、図12(b)参照)。
Therefore, the
以上の処理が終わると、ホストCPU50は、シリアルポート55のチャネル#Eと#Fを、SPI受信モードに設定すると共に(ST38)、パラレルポート54から第2レベルの切換制御信号CTLe,CTLfを出力する(ST39)。これは、その後に出力されるクロック信号の伝送先を、モータ駆動基板37,30に搭載されている信号取得回路GET,GETとするためである。
When the above processing is completed, the
役物モータの駆動動作(ST30~ST37)の場合とは異なり、以下に説明するシリアル受信処理は、役物演出中であるか否かを問わず、1mS毎に、必ず実行される。そのため、本実施例では、信号取得回路GET,GETに供給されている各種のセンサ信号を、ほぼリアルタイムに把握できることになる。 Unlike the case of the driving operation of the accessory motor (ST30 to ST37), the serial reception process described below is always executed every 1 mS regardless of whether or not the accessory motor is being produced. Therefore, in this embodiment, various sensor signals supplied to the signal acquisition circuits GET and GET can be grasped in almost real time.
ステップST39の処理が終われば、ホストCPU50は、パラレルポート54を通して、各信号取得回路GET,GETに対して、取得パルスLTe,LTfを出力する(ST40)。図12(c)に関して説明した通り、信号取得回路GET,GETは、取得パルスLTe,LTfに基づいて、各種のセンサ信号SNi,SNjを取得することになる。
When the processing of step ST39 is completed, the
そこで、次に、ホストCPU50は、シリアルポート55(チャネル#Eと#F)のシリアル入力処理を開始させる(ST41)。具体的には、図16(b)に示す通りであり、先ず、出力すべきシリアルクロックSCKe,SCKfの個数を特定した上で(ST43)、1ビットのダミーデータを、シリアルポート55(チャネル#Eと#F)の送信シフトレジスタに書込む(ST44)。
Therefore, next, the
すると、この書込み動作を契機として、シリアルポート55(チャネル#Eと#F)からは、指定された個数のシリアルクロックSCKe,SCKfの出力動作が開始される。図12(d)に関し説明した通り、信号取得回路GET,GETは、シリアルクロックSCKe,SCKfに同期して、センサ信号SNi,SNjを1ビット毎に転送するので、シリアルポート55(チャネル#Eと#F)では、これを取得することになる。なお、シリアル受信されたセンサ信号は、1バイト又は2バイト単位で、チャネル#Eと#Fの受信バッファに一時保存される。 Then, with this write operation as an opportunity, the output operation of the specified number of serial clocks SCKe and SCKf is started from the serial ports 55 (channels # E and #F). As described with respect to FIG. 12 (d), the signal acquisition circuits GET and GET transfer the sensor signals SNi and SNj bit by bit in synchronization with the serial clocks SCKe and SCKf, so that the serial port 55 (channel # E and the like) In # F), this will be acquired. The serially received sensor signal is temporarily stored in the reception buffers of channels # E and #F in 1-byte or 2-byte units.
そして、指定された個数のシリアルクロックSCKe,SCKfの出力処理の完了は、シリアルポート55(チャネル#Eと#F)の該当ステイタスレジスタによって確認されるので(ST45)、シリアル受信処理の完了を把握したホストCPU50は、受信バッファに一時保存されたセンサ信号SNi,SNjを、所定のバッファ領域に転記する(ST42)。そして、バッファ領域に転記されたセンサ信号SNi,SNjは、その後の画像演出、音声演出、役物演出において適宜に活用されることになる。
Then, the completion of the output processing of the specified number of serial clocks SCKe and SCKf is confirmed by the corresponding status registers of the serial ports 55 (channels # E and # F) (ST45), so that the completion of the serial reception processing is grasped. The
続いて、図17に基づいて、画像演出用のコマンドリスト処理(ST11)について説明する。図17(a)は、コマンドリストをDDRメモリ41に発行する場合の画像制御を説明するフローチャートであり、画像演出に関する初期設定処理(ST10)についても補足的に記載している。なお、この実施例では、プリローダを使用しないので、図15(c)のステップST3の処理は実行されない。
Subsequently, the command list processing (ST11) for image production will be described with reference to FIG. FIG. 17A is a flowchart illustrating image control when the command list is issued to the
以上を踏まえて説明すると、ホストCPU50は、電源投入後の初期設定処理(ST10)として、バンクフリップ周期を1/30秒とするべく、VDPコントローラ60の該当レジスタに、所定の設定値を書込む(ST50)。また、画像コマンドリストLTの開始アドレスを設定する(ST51)。
Explaining based on the above, the
先に説明した通り、本実施例では、画像コマンドリストLTを、コマンドメモリ56や、内蔵DRAM57や、DDRメモリ41に発行することもできるが、基本的な発行先は、必ず、画像コマンドバッファ71としている。
As described above, in this embodiment, the image command list LT can be issued to the
そこで、ホストCPU50は、画像コマンドリストLTの発行先を規定する該当レジスタに、画像コマンドバッファ71の先頭アドレスに関するCBA情報とCBM情報を設定し(ST51)、これに続いて、コマンドリストの処理開始を、該当レジスタに許可設定する(ST52)。なお、CBM情報は、画像コマンドリストの発行先が、画像コマンドバッファ(内蔵レジスタ)71であるか、或いは、メインメモリ56、内蔵DRAM57、DDRメモリ41、又は外付けROM42の何れかであるかを特定するメモリ情報であり、CBA情報とは、特定されたメモリにおける相対アドレス値である。
Therefore, the
以上の設定処理(ST50~ST52)の結果、その後、バンクフリップが生じる毎に、VDPコントローラ60などの動作が初期化され、ホストCPU50が画像コマンドバッファ71に発行した画像コマンドリストLTについて、CBA情報/CBM情報に基づいて、VDPコントローラ60による読出し動作が繰り返されることになる。
As a result of the above setting processing (ST50 to ST52), every time a bank flip occurs thereafter, the operation of the
次に、ホストCPU50は、今サイクルの画像コマンドリストLTを作成する(ST53)。この画像コマンドリストLTは、画像演出の進行に応じて種々変化するが、何れの場合も、図17(b)に示す通り、バンクフリップ待ちを意味するWAIT_BANKFLIP 命令で終了する。
Next, the
ところで、この画像コマンドリストLTの途中には、JUMP_DDR命令が記載されている場合がある。ここで、JUMP_DDR命令は、その後に処理を移行すべきDDRメモリ41の先頭アドレスと、先頭アドレス以降に記載されている画像コマンドリストLT’(以下、補助リストLT’と称する)のデータサイズを特定したJUMP命令であり(図17(c)参照)、実質的には、RETURN命令を記載する必要のないSUBROUTINE_CALL 命令を意味する。なお、以下に説明するJUMP_BUFa 命令や、JUMP_BUFb 命令や、JUMP_CFIFO命令についても同様であり、ゼロの場合も含むデータサイズを特定して、JUMP先アドレスを具体的に特定している。
By the way, the JUMP_DDR instruction may be described in the middle of this image command list LT. Here, the JUMP_DDR instruction specifies the start address of the
この補助リストLT’は、画像演出の進行に拘らず、一定期間、繰り返される処理を記載したものであり、演出進行の所定タイミングで、DDRメモリ41に発行された後は、JUMP_DDR命令を経由して、繰り返し読み出されるようになっている。また、その後のタイミングで、DDRメモリ41に新たに発行された補助リストLT’についても、JUMP_DDR命令を経由して、繰り返し読み出されるようになっている。
This auxiliary list LT'describes processing that is repeated for a certain period of time regardless of the progress of the image production, and after being issued to the
したがって、ステップST53の処理では、画像コマンドリストLTの作成に加えて、補助リストLT’が作成される場合や、作成した画像コマンドリストLTにJUMP_DDR命令が記載されている場合がある。何れにしても、ステップST53に続いて、ホストCPU50は、コマンドバッファ71に画像コマンドリストLTを発行し、必要に応じて、DDRメモリ41に補助リストLT’を発行して(ST54)、今サイクルの処理を終え、次回のバンクフリップを待つことになる(ST21)。
Therefore, in the process of step ST53, in addition to the creation of the image command list LT, the auxiliary list LT'may be created, or the created image command list LT may contain the JUMP_DDR instruction. In any case, following step ST53, the
一方、VDPコントローラ60は、今サイクルに発行された画像コマンドリストLTを、画像コマンドバッファ71から順番に読出し、CGデータデコーダ62やレンダリングエンジン61を機能させて、表示装置DS1,DS2の各一フレームを特定する画像データをフレームバッファFBの描画バンクに完成させる。そして、WAIT_BANKFLIP 命令に基づき、次回のバンクフリップを待つ。先に説明した通り、次回のバンクフリップでは、フレームバッファFBの描画バンクと表示バンクが切換るので、今回完成させた画像データは、次回のバンクフリップ後に表示装置DS1,DS2に表示されることになる。
On the other hand, the
以上の通り、図17(a)の実施例では、画像演出進行の一定期間、繰り返し使用される処理を、補助リストLT’に記載してDDRメモリ41に保存し、画像演出の進行に対応して、反復して活用するので、画像コマンドリストLTを作成するホストCPUの制御負担が軽減される。なお、ここでは、DDRメモリ41を例示したが、DDRメモリ41に替えて、コマンドメモリ56や、内蔵DRAM57や、外付けROM42を使用しても良いのは先に説明した通りである。なお、外付けROM42には、固定的な補助リストLT’が予め記憶されている必要がある。
As described above, in the embodiment of FIG. 17A, the process that is repeatedly used for a certain period of the progress of the image effect is described in the auxiliary list LT'and stored in the
以上、発行した画像コマンドリストLTが、そのサイクルで読み出される実施例について説明したが、VDPコントローラ60に対する処理時間を確保するため、図6に示した動作を実行する場合について図17(b)に基づいて説明する。
The embodiment in which the issued image command list LT is read out in the cycle has been described above. However, in order to secure the processing time for the
この場合には、初期設定処理(ST10)においてコマンドメモリ56に、一対のバッファ領域(BUFa,BUFb)を確保する必要がある(ST51’)。なお、バンクフリップ周期を1/30秒に設定すること(ST50)、画像コマンドリストLTの発行先として、画像コマンドバッファ71の先頭アドレスを設定すること(ST51)、及び、コマンドリストの処理開始を許可設定すること(ST52)については、図17(a)の場合と同じである。
In this case, it is necessary to secure a pair of buffer areas (BUFa, BUFb) in the
以上の処理が終われば、ホストCPU50は、先ず、今サイクルで参照されるバッファ領域BUFa/BUFbに関して、今サイクルの画像コマンドリストLTを作成し、これを画像コマンドバッファ71に発行する(ST56)。この画像コマンドリストLTは、図6の説明では、制御コマンドリストLTcと称したものであり、今回参照されるべきコマンドメモリ56のバッファ領域を特定したJUMP命令(JUMP_BUFa /JUMP_BUFb )と、バンクフリップ待ち命令(WAIT_BANKFLIP )だけが記載されものである。
When the above processing is completed, the
ステップST56の処理によって画像コマンドバッファ71に発行された画像コマンドリストLT(制御コマンドリストLTc)は、VDPコントローラ71によって、直ちに読み出され、前回サイクルで発行済みの画像コマンドリストLTの処理が開始される(図5参照)。したがって、VDPコントローラ71に、十分な処理時間が確保される意味において、図17(b)の処理は、図17(a)の処理より優れている。 The image command list LT (control command list LTc) issued to the image command buffer 71 by the processing of step ST56 is immediately read by the VDP controller 71, and the processing of the image command list LT issued in the previous cycle is started. (See Fig. 5). Therefore, the process of FIG. 17B is superior to the process of FIG. 17A in the sense that the VDP controller 71 secures a sufficient processing time.
次に、ホストCPU50は、次サイクルで処理される画像コマンドリストLTを作成する(ST57)。なお、図5に関し説明した通り、この画像コマンドリストLTの最終行は、画像コマンドバッファ71のWAIT_BANKFLIP 命令への復帰を意味するJUMP命令(JUMP_CFIFO)である。
Next, the
次に、ホストCPU50は、画像コマンドリストLTの発行先をトグル的に切換え(ST58)、その発行先に、ステップST57の処理で作成した画像コマンドリストLTを発行する(ST59)。すなわち、一対のバッファ領域(BUFa,BUFb)の先頭アドレスの何れか一方を、今回の画像コマンドリストLTの発行先として選択し(ST58)、選択されたバッファ領域に画像コマンドリストLTを発行する(ST59)。
Next, the
なお、トグル的に切換えられたバッファ領域は、次サイクルのステップST56の処理で使用される(図5参照)。また、ステップST59の処理で発行された画像コマンドリストLTが実効化されるのは、次サイクルである。そして、その後の処理は、図17(a)の場合と同じであり、他の必要な処理(ST12~ST20)を実行した後、次回のバンクフリップを待つことになる(ST21)。 The buffer area switched in a toggle manner is used in the process of step ST56 in the next cycle (see FIG. 5). Further, the image command list LT issued in the process of step ST59 is activated in the next cycle. The subsequent processing is the same as in the case of FIG. 17A, and after executing other necessary processing (ST12 to ST20), the next bank flip is waited for (ST21).
続いて、図7に関し先に説明した動作を実現する制御動作について、図18(a)に基づいて説明する。なお、この実施例では、プリローダを機能させるので、図15(c)のステップST3の処理が実行される。また、以下に説明する画像コマンドリストLTには、プリロード転送を指示する特別なデコードコマンドDCpが記載されている。 Subsequently, the control operation for realizing the operation described above with respect to FIG. 7 will be described with reference to FIG. 18A. In this embodiment, since the preloader is made to function, the process of step ST3 in FIG. 15C is executed. Further, in the image command list LT described below, a special decoding command DCp instructing preload transfer is described.
そして、図17の実施例と同様、バンクフリップ周期を1/30秒に設定するが(ST60)、DDRメモリ41に、画像コマンドリストLTを一時保存すための適当個数のリストバッファTG(#0,#1,・・・,#N)が確保される必要がある(ST61)。なお、図7では、リストバッファTGを、BUFa、BUFb、BUFcと表記しているが、図18(c)には、リストバッファTGの個数NがN=2のトリプルバッファTGについて、#0,#1,#2と図示している。なお、この実施例では、図17のステップST51、及びステップST52の処理が、初期設定時において実行されることはなく、定常処理において個々的に実行される。
Then, as in the embodiment of FIG. 17, the bank flip period is set to 1/30 second (ST60), but an appropriate number of list buffer TGs (# 0) for temporarily storing the image command list LT in the
定常処理では、最初に、WAIT_BANKFLIP コマンドのみで構成された画像コマンドリストである制御コマンドリストLTcを、コマンドバッファ71に発行する(ST62)。次に、ホストCPU50は、今サイクルで実効化されるべき画像コマンドリストLTについて、コマンドリスト開始アドレス(つまり、画像コマンドリストLTの先頭アドレス)を設定する(ST63)。
In the steady processing, first, the control command list LTc, which is an image command list composed of only the WAIT_BANKFLIP command, is issued to the command buffer 71 (ST62). Next, the
具体的には、メモリ種別を特定するCBM情報として、DDRメモリ41であることを特定し、DDRメモリ41における相対アドレスを特定するCBA情報として、該当するリストバッファTGの先頭アドレスを特定する。なお、このステップST63の処理の容易化ため、リストバッファTG(#0,#1,・・・,#N)の先頭アドレスを記憶した先頭アドレスバッファ(図18(c)参照)が用意されており、この先頭アドレスバッファを順番に読み出すことで、CBA/CBM情報が特定される。
Specifically, the
そして、画像コマンドリストLTの処理開始を許可することで(ST64)、ステップST63で特定された先頭アドレス以降の画像コマンドリストLTの処理が開始される(図7参照)。例えば、ステップST63の処理で、リストバッファTG#1が選択されている場合には、VDPコントローラ71は、リストバッファTG#1に記載されている画像コマンドリストLTに基づいて、デコード及び描画の処理を実行し、JUMP_CFIFOの実行後、コマンドバッファ71に格納されている制御コマンドリストLTcのWAIT_BANKFLIP を実行して、バンクフリップを待つことになる(図18(f)参照)。
Then, by permitting the start of processing of the image command list LT (ST64), the processing of the image command list LT after the start address specified in step ST63 is started (see FIG. 7). For example, when the list
次に、ホストCPU50は、Nサイクル後に実効化されるべき画像コマンドリストLTを作成する(ST65)。なお、この画像コマンドリストLTの最後は、常に、コマンドバッファ71の制御コマンドリストLTcのWAIT_BANKFLIP 命令への復帰を意味するJUMP命令(JUMP CFIFO)が記載されている。
Next, the
次に、画像コマンドリストLTの発行先を更新し(ST65)、そのリストバッファTG(例えばTG#0)に、ステップST64の処理で作成した画像コマンドリストLTを発行する(ST66)。図7に関して説明した通り、ステップST66の処理で、例えばリストバッファTG#0に発行された画像コマンドリストLTは、バンクフリップ後の次サイクルの処理で解釈され、デコードコマンドDCpが検出された場合には、必要なCGデータを内蔵DRAM57に確保されたプリロードバッファにプリロードする。そして、プリロードされたCGデータは、更にその次サイクルの処理で、CGデータデコーダ62によってデコードされ、レンダリングエンジン61による描画動作に活用される。
Next, the issue destination of the image command list LT is updated (ST65), and the image command list LT created in the process of step ST64 is issued to the list buffer TG (for example, TG # 0) (ST66). As described with respect to FIG. 7, in the process of step ST66, for example, the image command list LT issued to the list
ホストCPU50は、ステップST66の処理に続いて、次回サイクルの表示画面を特定する画像コマンドリストLTを作成し、ステップST66の処理で選択した発行先に発行する(ST67)。なお、図7で説明した通り、この画像コマンドリストLTの最後には、JUMP_CFIFO命令が記載されている。したがって、JUMP_CFIFO命令の実行の後は、画像コマンドバッファ71の先頭アドレスに記載されているWAIT_BANKFLIP 命令が実行されバンクフリップを待つことになる。以上の通り、この実施例では、プリロード処理を有効活用することで、表示装置の大型化や高画質化に効果的に対応することができる。
Following the process of step ST66, the
続いて、図19に基づいて、サウンドエンジン52を簡易制御モード(第2動作モード)で機能させる場合について説明する。先に説明した通り、簡易制御モードでは、VDPコントローラ71が音声コマンドリストSLTに基づいて、サウンドエンジン52のコマンドレジスタRGiに対する設定動作を実行する。 Subsequently, a case where the sound engine 52 is made to function in the simple control mode (second operation mode) will be described with reference to FIG. As described above, in the simple control mode, the VDP controller 71 executes a setting operation for the command register RGi of the sound engine 52 based on the voice command list SLT.
先ず、初期設定動作として、VDPコントローラ71の該当レジスタに、サウンドエンジン52を簡易制御モード(第2動作モード)で機能させることを設定した上で(ST10)、ステップST11~ST20の定常処理が繰り返される。 First, as an initial setting operation, the sound engine 52 is set to function in the simple control mode (second operation mode) in the corresponding register of the VDP controller 71 (ST10), and then the steady processing of steps ST11 to ST20 is repeated. Is done.
図示の通り、定常処理では、ホストCPU50は、適宜な画像コマンドリストを作成し、適宜な発行先に発行した後(ST11)、音声演出の更新タイミングか否かを判定する(ST12)。そして、サウンドエンジン52のコマンドレジスタRGiへの設定動作を実行すべきタイミングであれば、設定動作を特定する音声コマンドリストSLTを作成する。
As shown in the figure, in the steady processing, the
図8の右上部に示す通り音声コマンドリストSLTは、一連の音声コマンドを列記したものであり、各音声コマンドは、1バイト長のレジスタ番号と、1バイト長の設定値とで構成されている。そして、音声コマンドリストSLTの先頭には、それ以降に列記される音声コマンドのコマンド数が記載されている。 As shown in the upper right part of FIG. 8, the voice command list SLT is a list of a series of voice commands, and each voice command is composed of a register number having a length of 1 byte and a set value having a length of 1 byte. .. At the head of the voice command list SLT, the number of voice command commands listed after that is described.
このような構成の音声コマンドリストSLTを完成させた後、ホストCPU50は、この音声コマンドリストSLTを、VDPコントローラ71の音声コマンドリストレジスタCRGWSLに発行する(ST71)。すると、図8に関して先に説明した通り、VDPコントローラ71は、音声コマンドリストSLTに基づいて、所定の音声レジスタに所定の設定値を設定することになる。
After completing the voice command list SLT having such a configuration, the
また、SACコード番号やSEQコード番号が認められる場合には、シンプルアクセスコントローラSACやシーケンサSEQに代わって、DDRメモリ41をアクセスして、中継レジスタ82を経由して、一連の設定動作を実行する。したがって、やや迅速性に欠けるものの、ホストCPU50は、音声演出を簡易に制御できることになる。
If the SAC code number or SEQ code number is recognized, the
以上、実施例について詳細に説明したが、具体的な記載内容は、特に本発明を限定するものではなく、適宜に修正変更される。また、上記した各実施例では、もっぱら弾球遊技機について説明したが、回胴遊技機など、画像演出を伴う他の遊技機においても好適に活用されることは勿論である。 Although the examples have been described in detail above, the specific description content is not particularly limited to the present invention, and amendments and changes are made as appropriate. Further, in each of the above-described embodiments, the ball-and-ball gaming machine has been described exclusively, but it is needless to say that it is also suitably used in other gaming machines with image effects such as a rotating body gaming machine.
GM 遊技機
DS1、DS2 表示装置
50 画像演出制御手段
42 データ記憶手段
51 画像生成手段
55 シリアル出力手段
53 データ転送手段
LMP/MOT 不揮発データ
GM gaming machines DS1,
Claims (11)
ランプ演出又は役物演出の基礎データとなる不揮発データ(LMP/MOT)を記憶する不揮発性メモリと、を有して構成された遊技機であって、
前記演出制御手段は、
前記不揮発性メモリから前記データ転送手段への読出し動作に関する読出し動作パラメータを、複合チップの所定レジスタに設定する第1処理と、
前記データ転送手段から前記シリアル出力手段の送信バッファへの書込み動作に関する書込み動作パラメータを、複合チップの所定レジスタに設定する第2処理と、
前記各動作パラメータに基づいたデータ転送動作の動作開始をデータ転送手段に指示すると共に、送信バッファのデータのシリアル送信の開始をシリアル出力手段に指示する第3処理と、
を実行していることを特徴とする遊技機。 An effect control means (50) having a host CPU that uniformly controls an image effect, a lamp effect, and / or an accessory effect, and one or more display devices based on a command list received from the effect control means. A serial output that serially transmits a serial signal to an image generation means (51) that generates image data for each frame and executes an image effect, and a group of driver elements that activate a lamp effect or an accessory effect. A composite chip incorporating a means (55) and a data transfer means (53) that realizes a data transfer operation that does not go through the host CPU.
It is a gaming machine configured to have a non-volatile memory for storing non-volatile data (LMP / MOT) which is basic data for a lamp effect or a character effect.
The staging control means
The first process of setting the read operation parameters related to the read operation from the non-volatile memory to the data transfer means in a predetermined register of the composite chip, and
A second process of setting a write operation parameter related to a write operation from the data transfer means to the transmission buffer of the serial output means in a predetermined register of the composite chip, and
A third process of instructing the data transfer means to start the operation of the data transfer operation based on each of the operation parameters and instructing the serial output means to start the serial transmission of the data in the transmission buffer.
A gaming machine characterized by running.
前記不揮発性メモリには、一の動作周期でシリアル送信される単位データ群が、複数種類記憶されており、
前記読出し動作パラメータには、その動作周期でシリアル伝送すべき単位データ群の先頭アドレス情報が含まれている請求項1に記載の遊技機。 The serial output means is functioning intermittently at a predetermined operation cycle.
In the non-volatile memory, a plurality of types of unit data groups serially transmitted in one operation cycle are stored.
The gaming machine according to claim 1, wherein the read operation parameter includes start address information of a unit data group to be serially transmitted in the operation cycle.
第3処理の後、前記送信バッファの書込みデータがシリアル送信されて蓄積データが所定の閾値を下回ると、前記シリアル出力手段から前記データ転送手段に書込み要求が出力され、所定の書込み動作が実行されるよう構成されている請求項2~5の何れかに記載の遊技機。 The transmission buffer has a storage capacity of a predetermined byte length, and is configured to store write data by the data transfer means.
After the third process, when the write data in the transmission buffer is serially transmitted and the accumulated data falls below a predetermined threshold value, a write request is output from the serial output means to the data transfer means, and a predetermined write operation is executed. The gaming machine according to any one of claims 2 to 5, which is configured to be the same.
第1の動作周期で、シリアル送信動作を繰り返す第1群のシリアルポートと、第1の動作周期より短い第2の動作周期で、シリアル送信動作を繰り返す第2群のシリアルポートと、を有して構成され、
第1群のシリアルポートは、一のドライバ素子に対するシリアル送信動作が完了するまで所定レベルを維持する制御信号を出力している請求項1~6の何れかに記載の遊技機。 The serial output means (55) is
It has a serial port of the first group that repeats the serial transmission operation in the first operation cycle, and a serial port of the second group that repeats the serial transmission operation in the second operation cycle shorter than the first operation cycle. Is composed of
The gaming machine according to any one of claims 1 to 6, wherein the serial port of the first group outputs a control signal that maintains a predetermined level until the serial transmission operation for one driver element is completed.
第1の動作周期で、シリアル送信動作を繰り返す第1群のシリアルポートと、第1の動作周期より短い第2の動作周期で、シリアル送信動作を繰り返す第2群のシリアルポートと、を有して構成され、
第1群のシリアルポートは、一群のドライバ素子に対するシリアル送信動作を連続的に実行している請求項1~6の何れかに記載の遊技機。 The serial output means (55) is
It has a serial port of the first group that repeats the serial transmission operation in the first operation cycle, and a serial port of the second group that repeats the serial transmission operation in the second operation cycle shorter than the first operation cycle. Is composed of
The gaming machine according to any one of claims 1 to 6, wherein the serial port of the first group continuously executes a serial transmission operation to a group of driver elements.
第1の動作周期で、シリアル送信動作を繰り返す第1群のシリアルポートと、第1の動作周期より短い第2の動作周期で、シリアル送信動作を繰り返す第2群のシリアルポートと、を有して構成され、
第2群のシリアルポートは、必要に応じてダミーデータを含んだ、整数バイト長のデータが出力している請求項1~6の何れかに記載の遊技機。 The serial output means (55) is
It has a serial port of the first group that repeats the serial transmission operation in the first operation cycle, and a serial port of the second group that repeats the serial transmission operation in the second operation cycle shorter than the first operation cycle. Is composed of
The gaming machine according to any one of claims 1 to 6, wherein the serial port of the second group outputs data having an integer byte length including dummy data as needed.
クロック信号の出力に同期して、シリアル信号を入力するシリアル入力ポートとして機能するタイミングがある請求項10に記載の遊技機。 The second group of serial ports not only functions as a serial output port for outputting integer byte length data, but also.
The gaming machine according to claim 10, wherein the gaming machine has a timing that functions as a serial input port for inputting a serial signal in synchronization with the output of a clock signal.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018109369A JP7064969B2 (en) | 2018-06-07 | 2018-06-07 | Pachinko machine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018109369A JP7064969B2 (en) | 2018-06-07 | 2018-06-07 | Pachinko machine |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019208977A JP2019208977A (en) | 2019-12-12 |
JP7064969B2 true JP7064969B2 (en) | 2022-05-11 |
Family
ID=68844250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018109369A Active JP7064969B2 (en) | 2018-06-07 | 2018-06-07 | Pachinko machine |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7064969B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7178382B2 (en) * | 2020-03-13 | 2022-11-25 | 株式会社平和 | game machine |
CN117290154A (en) * | 2023-10-17 | 2023-12-26 | 无锡摩芯半导体有限公司 | AXI_DMA redundancy design method based on automobile function safety |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013226449A (en) | 2013-07-09 | 2013-11-07 | Fujishoji Co Ltd | Game machine |
JP2014223177A (en) | 2013-05-16 | 2014-12-04 | 株式会社藤商事 | Game machine |
JP2017217089A (en) | 2016-06-03 | 2017-12-14 | 株式会社藤商事 | Game machine |
JP2018051004A (en) | 2016-09-29 | 2018-04-05 | 株式会社サンセイアールアンドディ | Game machine |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6387598B2 (en) * | 2013-10-16 | 2018-09-12 | 株式会社三洋物産 | Game machine |
JP6268138B2 (en) * | 2015-10-27 | 2018-01-24 | 株式会社藤商事 | Game machine |
-
2018
- 2018-06-07 JP JP2018109369A patent/JP7064969B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014223177A (en) | 2013-05-16 | 2014-12-04 | 株式会社藤商事 | Game machine |
JP2013226449A (en) | 2013-07-09 | 2013-11-07 | Fujishoji Co Ltd | Game machine |
JP2017217089A (en) | 2016-06-03 | 2017-12-14 | 株式会社藤商事 | Game machine |
JP2018051004A (en) | 2016-09-29 | 2018-04-05 | 株式会社サンセイアールアンドディ | Game machine |
Also Published As
Publication number | Publication date |
---|---|
JP2019208977A (en) | 2019-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5909569B1 (en) | Game machine | |
JP5989825B2 (en) | Game machine | |
JP7064969B2 (en) | Pachinko machine | |
JP7214392B2 (en) | game machine | |
JP5989823B2 (en) | Game machine | |
JP7138485B2 (en) | game machine | |
JP7051229B2 (en) | Pachinko machine | |
JP7166078B2 (en) | game machine | |
JP6302962B2 (en) | Game machine | |
JP5909570B1 (en) | Game machine | |
JP7427059B2 (en) | gaming machine | |
JP2016187663A (en) | Game machine | |
JP6262297B2 (en) | Game machine | |
JP6262295B2 (en) | Game machine | |
JP6262294B2 (en) | Game machine | |
JP6262296B2 (en) | Game machine | |
JP6262299B2 (en) | Game machine | |
JP6262298B2 (en) | Game machine | |
JP5989826B2 (en) | Game machine | |
JP5989824B2 (en) | Game machine | |
JP5989830B2 (en) | Game machine | |
JP6532421B2 (en) | Gaming machine | |
JP5989829B2 (en) | Game machine | |
JP5989827B2 (en) | Game machine | |
JP5989828B2 (en) | Game machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210423 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220228 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220329 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220425 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7064969 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |