JP7426890B2 - gaming machine - Google Patents

gaming machine Download PDF

Info

Publication number
JP7426890B2
JP7426890B2 JP2020070877A JP2020070877A JP7426890B2 JP 7426890 B2 JP7426890 B2 JP 7426890B2 JP 2020070877 A JP2020070877 A JP 2020070877A JP 2020070877 A JP2020070877 A JP 2020070877A JP 7426890 B2 JP7426890 B2 JP 7426890B2
Authority
JP
Japan
Prior art keywords
circuit
data
display
area
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020070877A
Other languages
Japanese (ja)
Other versions
JP2021166611A5 (en
JP2021166611A (en
Inventor
伸美 柴田
Original Assignee
株式会社藤商事
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社藤商事 filed Critical 株式会社藤商事
Priority to JP2020070877A priority Critical patent/JP7426890B2/en
Publication of JP2021166611A publication Critical patent/JP2021166611A/en
Publication of JP2021166611A5 publication Critical patent/JP2021166611A5/ja
Application granted granted Critical
Publication of JP7426890B2 publication Critical patent/JP7426890B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Pinball Game Machines (AREA)
  • Display Devices Of Pinball Game Machines (AREA)

Description

本発明は、遊技動作に起因する抽選処理を行い、その抽選結果に対応する画像演出を実行する遊技機に関し、特に、迫力ある画像演出を安定して実行できる遊技機に関する。 The present invention relates to a gaming machine that performs a lottery process resulting from a gaming operation and executes an image effect corresponding to the lottery result, and particularly relates to a gaming machine that can stably execute an impressive image effect.

パチンコ機などの弾球遊技機は、遊技盤に設けた図柄始動口と、複数の表示図柄による一連の図柄変動態様を表示する図柄表示部と、開閉板が開閉される大入賞口などを備えて構成されている。そして、図柄始動口に設けられた検出スイッチが遊技球の通過を検出すると入賞状態となり、遊技球が賞球として払出された後、図柄表示部では表示図柄が所定時間変動される。その後、7・7・7などの所定の態様で図柄が停止すると大当り状態となり、大入賞口が繰返し開放されて、遊技者に有利な遊技状態を発生させている。 A pinball game machine such as a pachinko machine is equipped with a symbol start opening provided on the game board, a symbol display section that displays a series of symbol variations based on a plurality of displayed symbols, and a big prize opening that opens and closes an opening/closing board. It is composed of Then, when the detection switch provided at the symbol start opening detects the passing of the game ball, the game enters a winning state, and after the game ball is paid out as a prize ball, the displayed symbols are changed for a predetermined period of time in the symbol display section. Thereafter, when the symbols stop in a predetermined manner such as 7, 7, 7, a jackpot state occurs, and the jackpot opening is repeatedly opened to generate a gaming state advantageous to the player.

このような遊技状態を発生させるか否かは、図柄始動口に遊技球が入賞したことを条件に実行される大当り抽選で決定されており、上記の図柄変動動作は、この抽選結果を踏まえたものとなっている。例えば、抽選結果が当選状態である場合には、リーチアクションなどと称される演出動作を20秒前後実行し、その後、特別図柄を整列させている。一方、ハズレ状態の場合にも、同様のリーチアクションが実行されることがあり、この場合には、遊技者は、大当り状態になることを強く念じつつ演出動作の推移を注視することになる。そして、図柄変動動作の終了時に、停止ラインに所定図柄が揃えば、大当り状態であることが遊技者に保証されたことになる。 Whether or not to generate such a gaming state is determined by a jackpot lottery that is executed on the condition that a game ball enters the symbol starting hole, and the symbol fluctuation operation described above is based on the result of this lottery. It has become a thing. For example, if the lottery result is a winning state, a performance action called a reach action is performed for about 20 seconds, and then the special symbols are arranged. On the other hand, even in the case of a losing state, a similar reach action may be executed, and in this case, the player will watch the progress of the performance action while strongly thinking that the player will be in a jackpot state. If the predetermined symbols line up on the stop line at the end of the symbol variation operation, the player is guaranteed a jackpot.

このような図柄変動動作は、通常、液晶ディスプレイにおいて実行される。液晶ディスプレイは、一般に、横Hドット×縦Vドットの画素で構成されており、H×Vドットの各画素は、各々、RGB三色の基本画素で構成されている。 Such a symbol variation operation is normally performed on a liquid crystal display. A liquid crystal display is generally composed of pixels of H dots horizontally and V dots vertically, and each H×V dot pixel is composed of basic pixels of three colors RGB.

液晶ディスプレイにおける各画素の駆動は、その装置の動作クロックCK(=ドットクロックDCK)に同期して実行されており、水平方向一ライン分に対応するHドットの画素駆動が、水平同期信号HSに同期して繰り返され、Vライン分の駆動が終われば、垂直同期信号VSに同期して、第1ラインの画素駆動に戻るよう構成されている(図40参照)。そのため、外部機器から液晶ディスプレイに対して、解像度H×Vドットに対応する画像信号と共に、水平同期信号HSと、垂直同期信号VSとドットクロックDCKと共に供給される必要がある。 Driving of each pixel in a liquid crystal display is executed in synchronization with the operating clock CK (=dot clock DCK) of the device, and the pixel driving of H dots corresponding to one horizontal line is synchronized with the horizontal synchronization signal HS. This is repeated in synchronization, and when driving for V lines is completed, it is configured to return to pixel driving for the first line in synchronization with the vertical synchronization signal VS (see FIG. 40). Therefore, it is necessary to supply the image signal corresponding to the resolution H×V dots, the horizontal synchronizing signal HS, the vertical synchronizing signal VS, and the dot clock DCK from the external device to the liquid crystal display.

ここで、液晶ディスプレイの表示更新動作(フレーム更新)を円滑に実行するために、各同期信号HS,Vsのパルス幅や、各同期信号HS,Vsと画像信号の送信タイミングとの間には、所定の条件が要求される。例えば、図40(g)は、640×408ドットのVGA(Video Graphics Array)の場合に要求される駆動タイミング条件の一例を図示したものである。 Here, in order to smoothly execute the display update operation (frame update) of the liquid crystal display, the pulse width of each synchronization signal HS, Vs and the timing between each synchronization signal HS, Vs and the transmission timing of the image signal are as follows. Certain conditions are required. For example, FIG. 40(g) illustrates an example of drive timing conditions required for a 640×408 dot VGA (Video Graphics Array).

図示の駆動条件では、先ず、水平同期信号HSのパルス幅PWhは、動作クロックCKの96個分であり、水平同期信号PWhの前後に要求されるフロントポーチFPhと、バックポートBPhは、各々、動作クロックCKの16個分と、48個分と規定されている。 Under the illustrated driving conditions, first, the pulse width PWh of the horizontal synchronization signal HS is equal to 96 operation clocks CK, and the front porch FPh and back port BPh required before and after the horizontal synchronization signal PWh are, respectively. It is defined as 16 operating clocks CK and 48 operating clocks CK.

一方、垂直同期信号VSのパルス幅PWvは、2ライン分であり、垂直同期信号VSの前後に要求されるフロントポーチFPvと、バックポートBPvは、各々、19ライン分と、33ライン分と規定されている。 On the other hand, the pulse width PWv of the vertical synchronization signal VS is 2 lines, and the front porch FPv and back port BPv required before and after the vertical synchronization signal VS are defined as 19 lines and 33 lines, respectively. has been done.

したがって、この液晶ディスプレイでは、1ラインの駆動動作の動作周期は、動作クロックCKでカウントして、16+96+48+640個分(=800)であり、これを垂直方向に10+2+33+480ライン分(=525)繰り返すことで、表示画面一フレーム分の表示が更新されることになる。 Therefore, in this liquid crystal display, the operation cycle of one line driving operation is 16+96+48+640 (=800) counted by the operation clock CK, and by repeating this in the vertical direction for 10+2+33+480 lines (=525). , the display for one frame on the display screen will be updated.

上記の動作周期は、動作クロックCKでカウントして、800×525個分であり、例えば、動作クロックの周波数が25MHzの場合には、一フレームの更新に要する時間は、800×525/(25×10)=16.8mSであり、1/60秒程度の動作周期となる。 The above operating cycle is counted by the operating clock CK and is 800 x 525 times. For example, if the operating clock frequency is 25 MHz, the time required to update one frame is 800 x 525/(25 MHz). ×10 6 )=16.8 mS, and the operation cycle is about 1/60 second.

そして、液晶ディスプレイを制御する外部制御機器は、上記の水平条件(PWh,FPh,BPh)を満たす水平同期信号HSと、上記の垂直条件(PWvh,FPvh,BPvh)を満たす水平同期信号HSと共に、表示画面の画素数に対応した画像信号を、繰り返し、液晶ディスプレイに供給することになる。 The external control device that controls the liquid crystal display receives a horizontal synchronization signal HS that satisfies the above horizontal conditions (PWh, FPh, BPh) and a horizontal synchronization signal HS that satisfies the above vertical conditions (PWvh, FPvh, BPvh). Image signals corresponding to the number of pixels on the display screen are repeatedly supplied to the liquid crystal display.

特開2017-093633号公報JP2017-093633A 特開2017-093632号公報JP2017-093632A 特開2016-159030号公報Japanese Patent Application Publication No. 2016-159030 特開2016-159029号公報JP 2016-159029 Publication

ところで、この種の遊技機では、各種の演出を複雑化かつ豊富化したいところ、特に、液晶ディスプレイを使用する画像演出については、その要請が高い。そこで、出願人は、各種の提案をしているが(引用文献1~引用文献4)、画像演出の更なる高度化や、画像演出制御を中心とした各種の演出制御動作の更なる改善が望まれるところである。 By the way, in this type of gaming machine, there is a strong demand for making various effects more complex and richer, and in particular, there is a strong demand for image effects using a liquid crystal display. Therefore, the applicant has made various proposals (Cited Documents 1 to 4), including further advancement of image presentation and further improvement of various presentation control operations centered on image presentation control. This is what is desired.

本発明は、上記の課題に鑑みてなされたものであり、画像演出制御を中心とした各種の演出制御動作が更に改善された遊技機を提供することを目的とする。 The present invention has been made in view of the above-mentioned problems, and an object of the present invention is to provide a gaming machine in which various performance control operations centering on image performance control are further improved.

上記の目的を達成するため、本発明は、各種の指示コマンドを列記して、表示装置に表示すべき表示内容を特定するディスプレイリストを、所定の更新周期に対応して間欠的に発行する画像制御手段と、前記画像制御手段が設定する所定の内蔵レジスタへの設定値と、前記指示コマンドとに基づいて動作して、所定の画像データを、所定のRWメモリに完成させる画像生成手段と、前記画像データの基礎データとなる各種の圧縮データを記憶するCGメモリと、を有して構成され、前記RWメモリには、所定ビット位置以下の下位ビットが0となる基点アドレスに基づいて、所定のメモリ領域が確保され前記圧縮データは、前記指示コマンドが特定するメモリ領域の所定の展開空間に展開されるよう構成され、静止画の圧縮データを展開可能な第1メモリ領域の展開空間とは別の第2メモリ領域には、複数の動画の圧縮データを、動画ごとに展開可能な複数の展開空間が、前記指示コマンドに含まれる一意情報に基づいて各々確保される。 In order to achieve the above object, the present invention provides an image display system that intermittently issues a display list that lists various instruction commands and specifies display contents to be displayed on a display device in accordance with a predetermined update cycle. a control means; an image generation means that operates based on a set value to a predetermined built-in register set by the image control means and the instruction command to complete predetermined image data in a predetermined RW memory; , a CG memory that stores various types of compressed data that serve as basic data of the image data, and the RW memory stores data based on a base point address where the lower bits below a predetermined bit position are 0. A predetermined memory area is secured , the compressed data is configured to be expanded into a predetermined expansion space of a memory area specified by the instruction command, and the expansion space of a first memory area in which compressed still image data can be expanded. In a second memory area separate from the second memory area, a plurality of expansion spaces in which compressed data of a plurality of moving images can be expanded for each moving image are secured , respectively, based on unique information included in the instruction command .

上記した本発明によれば、画像制御動作が改善される。 According to the present invention described above, image control operation is improved.

本実施例のパチンコ機を示す斜視図である。It is a perspective view showing a pachinko machine of a present example. 図1の遊技機の遊技領域を示す正面図である。2 is a front view showing a gaming area of the gaming machine in FIG. 1. FIG. 図1の遊技機の全体回路構成を示すブロック図である。2 is a block diagram showing the overall circuit configuration of the gaming machine of FIG. 1. FIG. 表示装置の仕様を説明する図面である。It is a drawing explaining the specifications of a display device. 表示装置の内部構成を説明するブロック図である。FIG. 2 is a block diagram illustrating the internal configuration of a display device. 図1の遊技機について、演出制御部の回路構成をやや詳細に示すブロック図である。FIG. 2 is a block diagram showing the circuit configuration of the performance control section in slightly more detail for the gaming machine of FIG. 1. FIG. 演出制御部を構成する複合チップを説明する図面である。It is a drawing explaining a composite chip that constitutes a production control section. 図4に示すCPU回路の内部構成を示すブロック図である。5 is a block diagram showing the internal configuration of the CPU circuit shown in FIG. 4. FIG. CPU回路の内蔵CPU(演出制御CPU)のメモリマップを図示したものである。It is a diagram illustrating a memory map of the built-in CPU (performance control CPU) of the CPU circuit. DMACについて、各種の転送動作モード(a)~(b)と、転送動作手順(c)~(e)を説明する図面である。3 is a diagram illustrating various transfer operation modes (a) to (b) and transfer operation procedures (c) to (e) regarding DMAC; FIG. インデックス空間、インデックステーブル、仮想描画空間、及び、描画領域について説明する図面である。3 is a diagram illustrating an index space, an index table, a virtual drawing space, and a drawing area. データ転送回路の内部構成を、関連する回路構成と共に記載したブロック図である。FIG. 2 is a block diagram illustrating the internal configuration of a data transfer circuit together with related circuit configurations. 表示回路の内部構成を、関連する回路構成と共に記載したブロック図である。FIG. 2 is a block diagram illustrating the internal configuration of a display circuit together with related circuit configurations. VDP回路から出力されるデータ有効信号ENABを説明する図面である。3 is a diagram illustrating a data valid signal ENAB output from a VDP circuit. FIG. CPUリセット後のパワーリセット動作を説明するフローチャートである。It is a flowchart explaining power reset operation after CPU reset. 図15の一部であるメモリセクション初期化処理を説明するフローチャートである。16 is a flowchart illustrating memory section initialization processing that is a part of FIG. 15. FIG. 図15の一部であるメイン制御処理と、割込み処理を説明するフローチャートである。16 is a flowchart illustrating main control processing and interrupt processing that are part of FIG. 15. FIG. メイン制御処理の一部であるCGROMの初期化処理を説明するフローチャートである。3 is a flowchart illustrating a CGROM initialization process that is part of the main control process. 別の割込み処理について、処理内容の一部を説明するフローチャートである。12 is a flowchart illustrating a part of processing contents regarding another interrupt processing. プリローダを使用しない場合について、演出制御CPU63の制御動作を説明するフローチャートである。It is a flowchart explaining the control operation of production control CPU63 about the case where a preloader is not used. ディスプレイリストの構成を説明する図面である。3 is a diagram illustrating the configuration of a display list. ディスプレイリストDLを発行するDL発行処理を示すフローチャートである。12 is a flowchart showing DL issuing processing for issuing a display list DL. 図22の動作にDMACが関与する場合の動作を説明するフローチャートである。23 is a flowchart illustrating the operation when the DMAC is involved in the operation of FIG. 22. FIG. 図23の処理に続く動作を説明するフローチャートである。24 is a flowchart illustrating operations subsequent to the process in FIG. 23. FIG. プリローダを使用する場合について、演出制御CPU63の制御動作を説明するフローチャートである。It is a flowchart explaining the control operation of production control CPU63 about the case where a preloader is used. 図25の一部を説明するフローチャートである。26 is a flowchart explaining a part of FIG. 25. FIG. 図25の別の一部を説明するフローチャートである。26 is a flowchart illustrating another part of FIG. 25. プリローダを使用しない実施例について、VDP各部の動作を示すタイムチャートである。7 is a time chart showing the operation of each part of the VDP in an embodiment that does not use a preloader. プリローダを使用する実施例について、VDP各部の動作を示すタイムチャートである。5 is a time chart showing the operation of each part of the VDP in an embodiment using a preloader. 別の実施例について全体回路構成を示すブロック図である。FIG. 3 is a block diagram showing the overall circuit configuration of another embodiment. 図30の一部をやや詳細に示すブロック図である。31 is a block diagram showing a part of FIG. 30 in slightly more detail; FIG. 別の実施例について、動作内容を説明するフローチャートである。12 is a flowchart illustrating the operation details of another embodiment. 更に別の実施例を説明する図面である。It is a drawing explaining still another example. 設定値を繰り返し設定する実施例を説明する図面である。7 is a diagram illustrating an example in which setting values are repeatedly set. FIG. 内蔵された音声回路を使用する実施例の回路構成を説明する図面である。2 is a diagram illustrating a circuit configuration of an embodiment using a built-in audio circuit. 音声回路の初期設定動作を説明するフローチャートである。5 is a flowchart illustrating the initial setting operation of the audio circuit. CPUリセット後のパワーリセット動作について別の実施例を説明する図面である。7 is a diagram illustrating another embodiment of a power reset operation after a CPU reset. FIG. メモリREAD動作とメモリWRITE 動作の一例を示すタイムチャートである。5 is a time chart showing an example of a memory READ operation and a memory WRITE operation. 別の実施例を説明する図面である。It is a drawing explaining another example. 一般の表示装置の駆動方法を説明する図面である。1 is a diagram illustrating a method for driving a general display device.

以下、実施例に基づいて本発明を詳細に説明する。図1は、本実施例のパチンコ機GMを示す斜視図である。このパチンコ機GMは、島構造体に着脱可能に装着される矩形枠状の木製外枠1と、外枠1に固着されたヒンジ2を介して開閉可能に枢着される内枠3とで構成されている。この内枠3には、遊技盤5が、裏側からではなく、表側から着脱自在に装着され、その前側には、ガラス扉6と前面板7とが夫々開閉自在に枢着されている。なお、本明細書では、ガラス扉6と前面板7を総称して前扉部材と称する。そして、前扉部材(ガラス扉6や前面板7)が枢着された状態の内枠3を遊技枠と称することがある。 Hereinafter, the present invention will be explained 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 wooden outer frame 1 that is removably attached to an island structure, and an inner frame 3 that is pivotally connected to the outer frame 1 so that it can be opened and closed via a hinge 2 that is fixed to the outer frame 1. It is configured. A game board 5 is removably attached to the inner frame 3 not from the back side but from the front side, and a glass door 6 and a front plate 7 are pivotally attached to the front side of the inner frame 3 so as to be openable and closable, respectively. In this specification, the glass door 6 and the front plate 7 are collectively referred to as a front door member. The inner frame 3 to which the front door member (glass door 6 and front plate 7) is pivotally attached may be referred to as a game frame.

ガラス扉6の外周には、LEDランプなどによる電飾ランプが、略C字状に配置されている。一方、ガラス扉6の上部左右位置と下側には、全3個のスピーカが配置されている。上部に配置された2個のスピーカは、各々、左右チャンネルR,Lの音声を出力し、下側のスピーカは低音を出力するよう構成されている。 On the outer periphery of the glass door 6, illuminated lamps such as LED lamps are arranged in a substantially C-shape. On the other hand, a total of three speakers are arranged at the upper right and left positions and the lower side of the glass door 6. The two speakers placed at the top are configured to output left and right channels R and L audio, respectively, and the bottom speaker is configured to output bass.

前面板7には、発射用の遊技球を貯留する上皿8が装着され、内枠3の下部には、上皿8から溢れ出し又は抜き取った遊技球を貯留する下皿9と、発射ハンドル10とが設けられている。発射ハンドル10は発射モータと連動しており、発射ハンドル10の回動角度に応じて動作する打撃槌によって遊技球が発射される。 An upper tray 8 for storing game balls for firing is attached to the front plate 7, and a lower tray 9 for storing game balls overflowing or pulled out from the upper tray 8 and a firing handle are attached to the lower part of the inner frame 3. 10 are provided. The firing handle 10 is interlocked with a firing motor, and a game ball is fired by a hammer that operates according to the rotation angle of the firing handle 10.

上皿8の外周面には、チャンスボタン11が設けられている。このチャンスボタン11は、遊技者の左手で操作できる位置に設けられており、遊技者は、発射ハンドル10から右手を離すことなくチャンスボタン11を操作できる。このチャンスボタン11は、通常時には機能していないが、ゲーム状態がボタンチャンス状態となると内蔵ランプが点灯されて操作可能となる。なお、ボタンチャンス状態は、必要に応じて設けられるゲーム状態である。 A chance button 11 is provided on the outer peripheral surface of the upper plate 8. This chance button 11 is provided at a position where it can be operated with the player's left hand, and the player can operate the chance button 11 without removing his right hand from the firing handle 10. This chance button 11 does not function normally, but when the game state becomes the button chance state, the built-in lamp lights up and becomes operable. Note that the button chance state is a game state that is provided as necessary.

また、チャンスボタン11の下方には、ロータリースイッチ型の音量スイッチVLSWが配置されており、遊技者が音量スイッチVLSWを操作することで、無音レベル(=0)から最高レベル(=7)まで、スピーカ音量を8段階に調整できるようになっている。なお、スピーカの音量は、係員だけが操作可能な設定スイッチ(不図示)によって初期設定されており、遊技者が音量スイッチVLSWを操作しない限り、初期設定音量が維持される。また、異常事態が発生したことを報知する異常報知音は、係員による初期設定音量や、遊技者の設定音量に拘らず最高音量で放音される。 Further, a rotary switch type volume switch VLSW is arranged below the chance button 11, and when the player operates the volume switch VLSW, the sound level changes from the silent level (=0) to the highest level (=7). The speaker volume can be adjusted in 8 levels. Note that the volume of the speaker is initially set by a setting switch (not shown) that can be operated only by an attendant, and the initial setting volume is maintained unless the player operates the volume switch VLSW. Furthermore, the abnormality notification sound that informs that an abnormal situation has occurred is emitted at the highest volume regardless of the initial volume setting by the staff member or the volume setting by the player.

上皿8の右部には、カード式球貸し機に対する球貸し操作用の操作パネル12が設けられ、カード残額を3桁の数字で表示する度数表示部と、所定金額分の遊技球の球貸しを指示する球貸しスイッチと、ゲーム終了時にカードの返却を指令する返却スイッチとが設けられている。 On the right side of the upper tray 8, there is provided an operation panel 12 for ball lending operations for the card-type ball lending machine, including a frequency display section that displays the remaining amount on the card as a 3-digit number, and a display section that displays the remaining amount of game balls for a predetermined amount. A ball lending switch for instructing the ball to be borrowed and a return switch for instructing the return of the cards at the end of the game are provided.

図2に示すように、遊技盤5の表面には、金属製の外レールと内レールとからなるガイドレール13が環状に設けられ、その略中央には、中央開口HOが設けられている。そして、中央開口HOの下方には、不図示の可動演出体が隠蔽状態で収納されており、可動予告演出時には、その可動演出体が上昇して露出状態となることで、所定の信頼度の予告演出を実現している。ここで、予告演出とは、遊技者に有利な大当り状態が招来することを不確定に報知する演出であり、予告演出の信頼度とは、大当り状態が招来する確率を意味している。 As shown in FIG. 2, a guide rail 13 consisting of an outer metal rail and an inner rail is provided in an annular shape on the surface of the game board 5, and a central opening HO is provided approximately in the center thereof. A movable performance element (not shown) is stored in a concealed state below the central opening HO, and when a movable advance notice is given, the movable performance element rises and becomes exposed, thereby achieving a predetermined level of reliability. The preview performance has been realized. Here, the preview performance is a performance that uncertainly informs the player that a jackpot condition advantageous to the player will occur, and the reliability of the preview performance refers to the probability that a jackpot condition will occur.

中央開口HOには、大型(例えば、横1280×縦1024ピクセル)の液晶カラーディスプレイ(LCD)で構成されたメイン表示装置DS1が配置され、メイン表示装置DS1の右側には、小型(例えば、横480×縦800ピクセル)の液晶カラーディスプレイで構成された可動式のサブ表示装置DS2が配置されている。メイン表示装置DS1は、大当り状態に係わる特定図柄を変動表示すると共に背景画像や各種のキャラクタなどをアニメーション的に表示する装置である。この表示装置DS1は、中央部に特別図柄表示部Da~Dcと右上部に普通図柄表示部19とを有している。そして、特別図柄表示部Da~Dcでは、大当り状態の招来を期待させるリーチ演出が実行されることがあり、特別図柄表示部Da~Dc及びその周りでは、適宜な予告演出などが実行される。 A main display device DS1 composed of a large liquid crystal color display (LCD) (for example, 1280 pixels horizontally x 1024 pixels vertically) is arranged in the central opening HO, and a small (for example, horizontally 1024 pixels horizontally A movable sub-display device DS2 configured with a liquid crystal color display (480×800 pixels vertically) is arranged. The main display device DS1 is a device that variably displays a specific symbol related to a jackpot state, and also displays a background image, various characters, etc. in an animated manner. This display device DS1 has special symbol display sections Da to Dc in the center and a normal symbol display section 19 in the upper right corner. Then, in the special symbol display sections Da to Dc, a ready-to-reach effect that makes the player expect a jackpot state may be executed, and in the special symbol display sections Da to Dc and around them, appropriate preview effects and the like are executed.

サブ表示装置DS2は、通常時には、その表示画面が遊技者に見やすい角度に傾斜した静止状態で画像情報を表示している。但し、所定の予告演出時には、遊技者に見やすい角度に傾斜角度を変えながら、図示の左側に移動する共に、所定の予告画像を表示するようになっている。 The sub-display device DS2 normally displays image information in a stationary state with its display screen tilted at an angle that is easy for the player to view. However, at the time of a predetermined preview performance, the tilt angle is changed to an angle that is easy for the player to see, and the predetermined preview image is displayed while moving to the left side in the figure.

すなわち、実施例のサブ表示装置DS2は、単なる表示装置ではなく、予告演出を実行する可動演出体としても機能している。ここで、サブ表示装置DS2による予告演出は、その信頼度が高く設定されており、遊技者は、大きな期待感をもってサブ表示装置DS2の移動動作に注目することになる。 That is, the sub-display device DS2 of the embodiment functions not only as a mere display device but also as a movable presentation body that executes a preview presentation. Here, the reliability of the preview performance by the sub-display device DS2 is set to be high, and the player pays attention to the moving operation of the sub-display device DS2 with great anticipation.

ところで、遊技球が落下移動する遊技領域には、第1図柄始動口15a、第2図柄始動口15b、第1大入賞口16a、第2大入賞口16b、普通入賞口17、及び、ゲート18が配設されている。これらの入賞口15~18は、それぞれ内部に検出スイッチを有しており、遊技球の通過を検出できるようになっている。 By the way, in the game area where the game balls fall and move, there are a first symbol starting opening 15a, a second symbol starting opening 15b, a first big winning opening 16a, a second big winning opening 16b, a normal winning opening 17, and a gate 18. is installed. Each of these winning holes 15 to 18 has a detection switch inside, and can detect the passage of a game ball.

第1図柄始動口15aの上部には、導入口INから進入した遊技球がシーソー状又はルーレット状に移動した後に、第1図柄始動口15に入賞可能に構成された演出ステージ14が配置されている。そして、第1図柄始動口15に遊技球が入賞すると、特別図柄表示部Da~Dcの変動動作が開始されるよう構成されている。 Above the first symbol starting port 15a, a production stage 14 is arranged so that a prize can be won in the first symbol starting port 15 after the game ball that enters from the introduction port IN moves in a seesaw shape or a roulette shape. There is. Then, when a game ball enters the first symbol starting hole 15, the special symbol display sections Da to Dc start varying operations.

第2図柄始動口15bは、左右一対の開閉爪を備えた電動式チューリップで開閉されるように構成され、普通図柄表示部19の変動後の停止図柄が当り図柄を表示した場合には、所定時間だけ、若しくは、所定個数の遊技球を検出するまで、開閉爪が開放されるようになっている。 The second symbol start opening 15b is configured to be opened and closed by an electric tulip equipped with a pair of right and left opening/closing claws, and when the stop symbol after the fluctuation of the normal symbol display section 19 displays a winning symbol, a predetermined symbol is displayed. The opening/closing claw is opened for a certain amount of time or until a predetermined number of game balls are detected.

なお、普通図柄表示部19は、普通図柄を表示するものであり、ゲート18を通過した遊技球が検出されると、普通図柄が所定時間だけ変動し、遊技球のゲート18の通過時点において抽出された抽選用乱数値により決定される停止図柄を表示して停止する。 The normal symbol display section 19 displays normal symbols, and when a game ball passing through the gate 18 is detected, the normal symbol changes for a predetermined period of time and is extracted at the time when the game ball passes through the gate 18. The stop symbol determined by the random number for lottery is displayed and stopped.

第1大入賞口16aは、前後方向に進退するスライド盤を有して構成され、第2大入賞口16bは、下端が軸支されて前方に開放する開閉板を有して構成されている。第1大入賞口16aや第2大入賞口16bの動作は、特に限定されないが、この実施例では、第1大入賞口16aは、第1図柄始動口15aに対応し、第2大入賞口16bは、第1図柄始動口15bに対応するよう構成されている。 The first big prize opening 16a is configured with a sliding board that advances and retreats in the front and back direction, and the second big winning opening 16b is configured with an opening/closing plate whose lower end is pivoted and opens forward. . Although the operation of the first big winning hole 16a and the second big winning hole 16b is not particularly limited, in this embodiment, the first big winning hole 16a corresponds to the first symbol starting hole 15a, and the second big winning hole 16b is configured to correspond to the first symbol starting port 15b.

すなわち、第1図柄始動口15aに遊技球が入賞すると、特別図柄表示部Da~Dcの変動動作が開始され、その後、所定の大当り図柄が特別図柄表示部Da~Dcに整列すると、第1大当りたる特別遊技が開始され、第1大入賞口16aのスライド盤が、前方に開放されて遊技球の入賞が容易化される。 That is, when a game ball enters the first symbol starting hole 15a, the special symbol display sections Da to Dc start varying operations, and then, when predetermined jackpot symbols are aligned in the special symbol display sections Da to Dc, the first jackpot is activated. A special game is started, and the sliding board of the first big prize opening 16a is opened forward to facilitate winning of game balls.

一方、第2図柄始動口15bへの遊技球の入賞によって開始された変動動作の結果、所定の大当り図柄が特別図柄表示部Da~Dcに整列すると、第2大当りたる特別遊技が開始され、第2大入賞口16bの開閉板が開放されて遊技球の入賞が容易化される。特別遊技(大当り状態)の遊技価値は、整列する大当り図柄などに対応して種々相違するが、何れの遊技価値が付与されるかは、遊技球の入賞タイミングに応じた抽選結果に基づいて予め決定される。 On the other hand, when the predetermined jackpot symbols are aligned in the special symbol display sections Da to Dc as a result of the fluctuating motion started by the winning of the game ball into the second symbol start opening 15b, a special game as a second jackpot is started, and the second jackpot is started. The opening/closing plate of the two major winning openings 16b is opened to facilitate winning of game balls. The gaming value of the special game (jackpot state) varies depending on the jackpot symbols arranged, but which gaming value is given is determined in advance based on the lottery result according to the winning timing of the game ball. It is determined.

典型的な大当り状態では、大入賞口16の開閉板が開放された後、所定時間が経過し、又は所定数(例えば10個)の遊技球が入賞すると開閉板が閉じる。このような動作は、最大で例えば15回まで継続され、遊技者に有利な状態に制御される。なお、特別図柄表示部Da~Dcの変動後の停止図柄が特別図柄のうちの特定図柄であった場合には、特別遊技の終了後のゲームが高確率状態(確変状態)となるという特典が付与される。 In a typical jackpot state, after the opening/closing board of the big prize opening 16 is opened, the opening/closing board closes after a predetermined time has elapsed or when a predetermined number (for example, 10) of game balls have won. Such an operation is continued up to, for example, 15 times at maximum, and is controlled to be advantageous to the player. In addition, if the stopped symbol after the change of the special symbol display parts Da to Dc is a specific symbol among the special symbols, there is a benefit that the game after the end of the special game will be in a high probability state (probability variable state). Granted.

図3(a)は、上記した各動作を実現するパチンコ機GMの全体回路構成を示すブロック図である。また、図3(b)は、払出制御基板25に配置された電源モニタ部MNIの回路構成を示す回路図であり、図3(c)は、本実施例で使用するメイン表示装置DS1の仕様を説明する図面である。 FIG. 3(a) is a block diagram showing the overall circuit configuration of the pachinko machine GM that implements each of the above-described operations. Further, FIG. 3(b) is a circuit diagram showing the circuit configuration of the power supply monitor unit MNI arranged on the payout control board 25, and FIG. 3(c) is a circuit diagram showing the specifications of the main display device DS1 used in this embodiment. FIG.

最初に、図3(c)に基づいて、実施例で使用するメイン表示装置DS1の仕様から説明する。先に説明した通り、この表示装置DS1は、横1280×縦1024ピクセルの液晶カラーディスプレイであるが、左右方向に隣接する奇数ピクセル(ODD)と偶数ピクセル(EVEN)を、別々のLVDS(Low Voltage Differential Signaling)伝送路を通して、受信部RV(RVa+RVb)で受ける構成となっている。そこで、本実施例では、この仕様に対応して、第1の伝送路LVDS1を経由してODD信号を伝送し、第2の伝送路LVDS2を経由してEVEN信号を伝送している(図3(a)の右下部)。 First, the specifications of the main display device DS1 used in the embodiment will be explained based on FIG. 3(c). As explained earlier, this display device DS1 is a liquid crystal color display of 1280 horizontal pixels x 1024 vertical pixels, but the odd number pixels (ODD) and even number pixels (EVEN) adjacent to each other in the left and right direction are separated by separate LVDS (Low Voltage The signal is received by the receiving unit RV (RVa+RVb) through the Differential Signaling (Differential Signaling) transmission line. Therefore, in this embodiment, in accordance with this specification, the ODD signal is transmitted via the first transmission line LVDS1, and the EVEN signal is transmitted via the second transmission line LVDS2 (Fig. 3 (bottom right of (a)).

また、この表示装置DS1では、表示装置DS1の内部動作を規定する動作クロックCK(図7参照)は、その周波数が40MHz~70MHzの範囲とするべく規定されている(典型値=54MHz)。この動作クロックCKは、後述するLVDSクロックCLKに対応するが、以下では、説明の便宜上、動作クロックCKの周波数は、典型値の54MHzであるとする。また、54MHzの動作クロックCKにおいて、一フレームの画像更新に要する更新時間FR(Frame Rate)を、ほぼ1/60秒に一致させる構成について説明する。 Further, in this display device DS1, the operating clock CK (see FIG. 7) that defines the internal operation of the display device DS1 is specified to have a frequency in the range of 40 MHz to 70 MHz (typical value=54 MHz). This operating clock CK corresponds to the LVDS clock CLK to be described later, but in the following, for convenience of explanation, it is assumed that the frequency of the operating clock CK is a typical value of 54 MHz. In addition, a configuration will be described in which the update time FR (Frame Rate) required for updating one frame of image is approximately equal to 1/60 seconds at the operating clock CK of 54 MHz.

この表示装置DS1は、その仕様として、第1の伝送路LVDS1から受けたODD信号と、第2の伝送路LVDS2から受けたEVEN信号に基づき、表示画面の左右方向に隣接する2画素を、一の動作クロックCKで同時に処理するよう構成されている。この結果、水平方向一ラインの1280画素の画素データは、640/54MHz=11.85μSの動作時間で更新され、この動作が1024ライン分だけ繰り返されることで、一フレーム分1280×1024ピクセルの画像表示が更新されることになる。なお、第1ライン→第2ライン・・・→第1024ラインのように、一ラインごとにノンインタレース方式で画像が更新される。 As a specification, this display device DS1 aligns two pixels adjacent in the left and right direction of the display screen based on the ODD signal received from the first transmission path LVDS1 and the EVEN signal received from the second transmission path LVDS2. It is configured to simultaneously process the data using the operating clock CK. As a result, the pixel data of 1280 pixels in one horizontal line is updated in an operation time of 640/54MHz = 11.85 μS, and by repeating this operation for 1024 lines, an image of 1280 x 1024 pixels for one frame is created. The display will be updated. Note that the image is updated line by line in a non-interlaced manner, such as from the first line to the second line, . . . , to the 1024th line.

但し、図3(c)に示す通り、表示装置DS1の仕様として、水平方向に、典型値としては、204クロック分の待機時間(ブランク期間)を設けること、及び、垂直方向に、典型値としては、42行分の待機時間(ブランク期間)を設けることが規定されている。したがって、これらのブランク期間を考慮した実際の画面更新周期FRは、上記した典型値に基づく計算において、(204+640)×(42+1024)/54MHz≒16.66mSとなるので、フレームレートFRは約1/60Hzとなる。 However, as shown in FIG. 3(c), the specifications of the display device DS1 include providing a standby time (blank period) of 204 clocks as a typical value in the horizontal direction, and a typical value of 204 clocks in the vertical direction. It is specified that a waiting time (blank period) for 42 lines is provided. Therefore, the actual screen update cycle FR that takes these blank periods into consideration is (204+640) x (42+1024)/54MHz≒16.66mS in calculations based on the above-mentioned typical values, so the frame rate FR is approximately 1/ It becomes 60Hz.

なお、水平方向の待機時間WThと、垂直方向の待機時間WTvには、各々、典型値に対する許容幅が規定されており、実際には、上記した典型値とは異なる値が選択可能である。但し、フレームレートFR=1/60秒とするため、(WTh+640)×(WTv+1024)/54MHz=1/60秒となるよう、水平/垂直方向の待機時間WTh/WTvを正確に設定する必要がある。 Note that for each of the horizontal waiting time WTh and the vertical waiting time WTv, an allowable range with respect to a typical value is defined, and in reality, a value different from the above-described typical value can be selected. However, since the frame rate FR=1/60 seconds, it is necessary to accurately set the horizontal/vertical wait time WTh/WTv so that (WTh+640)×(WTv+1024)/54MHz=1/60 seconds. .

一方、この表示装置DS1では、水平同期信号HSと、垂直同期信号VSの受信が特に不要である一方、ODD信号とEVEN信号の伝送時には、Hレベルのデータ有効信号ENABの伝送が要求される。すなわち、伝送路LVDS1,LVDS2に対して、有意な信号(ODD/EVEN信号)を伝送しているタイミングでは、データ有効信号ENABがアクティブレベル(H)である必要がある。 On the other hand, in this display device DS1, while it is not particularly necessary to receive the horizontal synchronizing signal HS and the vertical synchronizing signal VS, it is required to transmit the H-level data valid signal ENAB when transmitting the ODD signal and the EVEN signal. That is, the data valid signal ENAB needs to be at active level (H) at the timing when a significant signal (ODD/EVEN signal) is being transmitted to the transmission paths LVDS1 and LVDS2.

そこで、本実施例では、上記したメイン表示装置DS1の仕様に基づき、演出制御基板23とメイン表示装置DS1とを、周波数54MHz(=ドットクロックDCKの1/2)のLVDSクロックCLKのデュアルリンク伝送路でLVDS接続している(図5、図13(a))。また、本実施例のVDP回路52では、メイン表示装置DS1の仕様を満たす水平方向ブランク期間WThと、垂直ブランク期間WTvを設けるとともに、画像データ(ODD/EVEN信号)の出力時は、データ有効信号ENABがアクティブレベル(Hレベル)になるようにしている。 Therefore, in this embodiment, based on the specifications of the main display device DS1 described above, the production control board 23 and the main display device DS1 are connected by dual link transmission of the LVDS clock CLK with a frequency of 54 MHz (= 1/2 of the dot clock DCK). LVDS connection is made via the network (Fig. 5, Fig. 13(a)). Further, the VDP circuit 52 of this embodiment provides a horizontal blank period WTh and a vertical blank period WTv that satisfy the specifications of the main display device DS1, and also provides a data valid signal when outputting image data (ODD/EVEN signal). ENAB is set to active level (H level).

すなわち、データ有効信号ENABは、図4(b)に示すように、水平同期周期THのうち、水平表示期間THdだけがHレベルとなるよう構成されている。したがって、データ有効信号ENABは、垂直同期周期TVのうち、垂直表示期間TVd以外は、必ずLレベルとなる。なお、水平方向ブランク期間WThと、垂直ブランク期間WTvは、各々の典型値(WTh=204/WTv=42)とは異なる値を採用しているが、具体的な設計値は、図14に基づいて後述する。 That is, the data valid signal ENAB is configured to be at H level only during the horizontal display period THd of the horizontal synchronization period TH, as shown in FIG. 4(b). Therefore, the data valid signal ENAB is always at the L level during the vertical synchronization period TV except for the vertical display period TVd. Note that the horizontal blank period WTh and the vertical blank period WTv adopt values different from their respective typical values (WTh=204/WTv=42), but the specific design values are based on FIG. will be described later.

何れにしても、データ有効信号ENABは、差動信号ラインRA2/RB2を経由して、LVDSクロックCLKの各動作サイクルにおいて、離散的なDE信号として繰り返し伝送される。図4(b)や図4(c)に示すデータ有効信号ENABは、LVDS伝送された離散データであるDE信号を復調したものであり、離散的なDE信号を時間軸上に連続させたものである。なお、差動信号ラインRA2/RBでは、垂直同期信号VSと、水平同期信号HSについても、DE信号(データ有効信号ENAB)に続いて、繰り返し伝送されているが、実施例で使用するメイン表示装置DS1では、この同期信号VS,HSを活用していない。 In any case, the data valid signal ENAB is repeatedly transmitted as a discrete DE signal in each operating cycle of the LVDS clock CLK via the differential signal line RA2/RB2. The data valid signal ENAB shown in FIG. 4(b) and FIG. 4(c) is a demodulated DE signal that is discrete data transmitted by LVDS, and is a signal in which the discrete DE signal is made continuous on the time axis. It is. Note that on the differential signal line RA2/RB, the vertical synchronization signal VS and the horizontal synchronization signal HS are also repeatedly transmitted following the DE signal (data valid signal ENAB), but the main display used in the embodiment The device DS1 does not utilize these synchronization signals VS and HS.

もっとも、表示装置DS1では、水平同期信号HSや、垂直同期信号VSの伝送を何ら禁止していない。但し、これらの同期信号に規定された内部動作が実行されることはない。すなわち、表示ラインの水平改行タイミングは、受信した水平同期信号HSとは無関係に、データ有効信号ENABの立下りタイミングや、データ有効信号ENABの立上りタイミング後の動作クロックCK(LVDSクロックCLKに対応)の個数(実施例では640個=1280/2)などに基づいて、表示装置DS1の内部回路にとって最適なタイミングに規定される(図4(b)の下向き矢印)。 However, in the display device DS1, transmission of the horizontal synchronization signal HS and the vertical synchronization signal VS is not prohibited at all. However, the internal operations specified by these synchronization signals are not executed. In other words, the horizontal line feed timing of the display line is determined by the falling timing of the data valid signal ENAB or the operating clock CK (corresponding to the LVDS clock CLK) after the rising timing of the data valid signal ENAB, regardless of the received horizontal synchronizing signal HS. (in the example, 640 pieces = 1280/2), etc., is determined to be the optimal timing for the internal circuit of the display device DS1 (downward arrow in FIG. 4(b)).

この点は、一フレーム分の画像表示後の垂直改行タイミングについても同様であり、所定パルス幅のデータ有効信号ENABの連続個数(実施例では1024個)などに基づいて、表示装置DS1の内部回路にとっての最適タイミングに規定され(図4(c)の下向き矢印)、受信した垂直同期信号VSには影響されない。このように、本実施例では、表示装置DS1に水平同期信号HSや垂直同期信号VSを伝送する必要がないので、同期信号HS,VSのパルス幅PWh/PWvや、フロントポートFPh/FPvや、バックポートBPh/BPvを最適に設定する必要がなくなり、演出制御部23やVDP回路52の制御負担が大きく軽減される。 This point also applies to the vertical line feed timing after displaying one frame of image, and the internal circuit of the display device DS1 is determined based on the number of consecutive data valid signals ENAB of a predetermined pulse width (1024 in the embodiment). (downward arrow in FIG. 4(c)), and is not affected by the received vertical synchronization signal VS. In this way, in this embodiment, since there is no need to transmit the horizontal synchronizing signal HS and vertical synchronizing signal VS to the display device DS1, the pulse widths PWh/PWv of the synchronizing signals HS and VS, the front port FPh/FPv, There is no need to optimally set backport BPh/BPv, and the control burden on the production control section 23 and VDP circuit 52 is greatly reduced.

また、表示装置DS1の内部動作としても、自らの内部構成に基づいた最適タイミングで、水平改行や垂直改行の動作が実行されるので、不自然な表示動作のおそれが解消される。因みに、外部から受ける水平同期信号HSや、垂直同期信号VSに基づいて動作する表示装置の場合には、同期信号HS,VSのパルス幅や、同期信号HS,VSに前後するフロントポーチ期間や、バックポーチ期間が不適切な場合には、正常な表示動作が損なわれるおそれがある。 Furthermore, as for the internal operations of the display device DS1, horizontal line feed and vertical line feed operations are executed at optimal timings based on its own internal configuration, thereby eliminating the possibility of unnatural display operations. Incidentally, in the case of a display device that operates based on the horizontal synchronizing signal HS or vertical synchronizing signal VS received from the outside, the pulse width of the synchronizing signals HS and VS, the front porch period before and after the synchronizing signals HS and VS, If the back porch period is inappropriate, normal display operation may be impaired.

ところで、図4(a)において、差動信号ラインRA0~RA3,RACLKを使用する第1の差動信号LVDS1は、奇数番目の画素を伝送しており(AサイドのODD信号)、差動信号ラインRB0~RB3,RBCLKを使用する第2の差動信号LVDS2は、偶数番目の画素を伝送している(BサイドのEVEN信号)。このように、本実施例では、二種類のODD信号とEVEN信号を、デュアルリンク伝送路で伝送することで、ドットクロックDCKの周波数を1/2に低下させることができ、その分だけ耐ノイズ性に優れ、また、伝送距離を上げることもできる。 By the way, in FIG. 4(a), the first differential signal LVDS1 using the differential signal lines RA0 to RA3 and RACLK transmits odd-numbered pixels (ODD signal on A side), and the differential signal LVDS1 uses the differential signal lines RA0 to RA3 and RACLK. The second differential signal LVDS2 using lines RB0 to RB3 and RBCLK transmits even-numbered pixels (B-side EVEN signal). In this way, in this embodiment, by transmitting two types of ODD signals and EVEN signals through the dual link transmission path, the frequency of the dot clock DCK can be reduced to 1/2, and the noise resistance is improved accordingly. It has excellent performance and can also increase transmission distance.

一方、メイン表示装置DS1には、デュアルリンク伝送路で伝送されたODD信号と、EVEN信号の変換受信部RVが内蔵されており、二つのLVDS信号(ODD信号とEVEN信号)からRGB信号を復元して、一フレーム分(1280×1024ドット)の画像を表示している。先に説明した通り、RGB信号は、各々、8bitで構成されているので、メイン表示装置DS1には、諧調度2×2×2のフルカラー画像が表示される。 On the other hand, the main display device DS1 has a built-in conversion reception unit RV for the ODD signal and EVEN signal transmitted through the dual link transmission line, and restores the RGB signal from the two LVDS signals (ODD signal and EVEN signal). An image of one frame (1280×1024 dots) is displayed. As explained above, since each RGB signal is composed of 8 bits, a full-color image with a gradation of 2 8 × 2 8 × 2 8 is displayed on the main display device DS1.

図5は、表示装置DS1の内部構成を、VDP回路52の関連部分と共に図示したブロック図である。図示の通り、ODD信号は、第1のLVDSライン(Aサイド)を経由してLVDS-パラレル変換部RVaに伝送され、EVEN信号は、第2のLVDSライン(Bサイド)を経由してLVDS-パラレル変換部RVbに伝送される。そして、差動ラインSA0/SB0で伝送される各8ビット長のRGBデータのうち、画像データR0~R5,G0が注出され、差動ラインSA1/SB1からは、画像データG1~G5,B0~B1が注出される。 FIG. 5 is a block diagram showing the internal configuration of the display device DS1 together with related parts of the VDP circuit 52. As shown in the figure, the ODD signal is transmitted to the LVDS-parallel converter RVa via the first LVDS line (A side), and the EVEN signal is transmitted to the LVDS-parallel converter RVa via the second LVDS line (B side). It is transmitted to parallel converter RVb. Of the 8-bit RGB data transmitted on the differential lines SA0/SB0, image data R0 to R5, G0 are extracted, and image data G1 to G5, B0 are extracted from the differential lines SA1/SB1. ~B1 is poured out.

また、差動ラインSA2/SB2から、画像データB2~B5とDE信号とVS信号とHS信号が注出され、差動ラインSA3/SB3からは、画像データG6~G7,R6~R7,B6~B7が注出される。ここで、DE信号は、データ有効信号ENABに他ならない。また、注出されたVS信号と、HS信号が利用されないことは前記した通りである。 Also, image data B2 to B5, DE signal, VS signal, and HS signal are output from differential line SA2/SB2, and image data G6 to G7, R6 to R7, B6 to B7 is dispensed. Here, the DE signal is nothing but the data valid signal ENAB. Further, as described above, the extracted VS signal and HS signal are not used.

次に、差動ラインRACLK/RBCLKのLVDSクロックCLKは、PLL回路に供給されることで、LVDSクロックCLKと同一の周波数54MHzの動作クロックCKが生成される。この動作クロックCKは、液晶コントローラLCD_CTL の内部動作を規定するもので、液晶コントローラLCD_CTL は、液晶パネルLCDの左右方向に隣接する2個のRGB画素(8ビット×3×2)に対応する画像データを、一の動作クロックCKに同期してまとめて処理している。 Next, the LVDS clock CLK of the differential line RACLK/RBCLK is supplied to a PLL circuit, thereby generating an operation clock CK having the same frequency as the LVDS clock CLK, 54 MHz. This operation clock CK defines the internal operation of the liquid crystal controller LCD_CTL, and the liquid crystal controller LCD_CTL generates image data corresponding to two RGB pixels (8 bits x 3 x 2) adjacent in the left and right direction of the liquid crystal panel LCD. are processed all at once in synchronization with one operation clock CK.

そのため、横方向1280(=640×2)ドットの画素は、動作クロックCK640個分の処理時間11.85μS(=640/54MHz)で処理を完了することになる。なお、一の画素は、RGB三色の基本画素で構成されて、RGB三色の基本画素の画像データは、各々1バイト長であって諧調度2×2×2であるので、一ラインの全画素(1280ドット)の画像データは、全体として、3×1280バイト長となる。 Therefore, processing of pixels of 1280 (=640×2) dots in the horizontal direction is completed in a processing time of 11.85 μS (=640/54 MHz) corresponding to 640 operation clocks CK. Note that one pixel is composed of basic pixels of three colors RGB, and the image data of each basic pixel of three colors RGB is 1 byte long and has a gradation of 2 8 × 2 8 × 2 8 , so The entire image data of all pixels (1280 dots) in one line has a length of 3×1280 bytes.

図5に示す通り、液晶コントローラLCD_CNT は、1280本のソース信号ラインを、各々、2(=256)諧調の駆動信号で駆動するソースドライバSDVと、1024本のゲート信号ラインをON/OFF制御するゲートドライバGDVを適宜に制御している。具体的には、液晶コントローラLCD_CNT は、LVDS伝送路から注出したDE信号と、動作クロックCKとに基づいて、各部を適宜に動作させることで、フレームレートFR=1/60Hzの画像更新動作を実現している。先に確認した通り、DE信号は、VDP回路52が出力したデータ有効信号ENABに対応する。 As shown in Figure 5, the liquid crystal controller LCD_CNT controls ON/OFF of the source driver SDV, which drives 1280 source signal lines with drive signals of 2 8 (=256) gradations, and the 1024 gate signal lines. The gate driver GDV is controlled appropriately. Specifically, the liquid crystal controller LCD_CNT performs an image update operation at a frame rate FR=1/60Hz by operating each part appropriately based on the DE signal extracted from the LVDS transmission line and the operation clock CK. It has been realized. As confirmed earlier, the DE signal corresponds to the data valid signal ENAB output by the VDP circuit 52.

本実施例の場合、ソースドライバSDVは、384本の出力端子を有するドライバ素子を10個配置して構成されている。先に説明した通り、液相パネルLCDの一ライン全画素(1280ドット)は、RGB三色の基本画素で構成されて合計3×1280個であるので、これらを駆動するドライバ素子が10個必要となる。なお、これら10個のドライバ素子には、液晶コントローラLCD_CNT から画像データDATが順番に供給され、これがスタート信号SPや転送クロックDCLKに基づいて適宜に転送される。そして、ラッチ信号LTに同期して、アナログ変換された駆動信号が3840本のソース信号ラインに供給される。先に説明した通り、液晶パネルLCDの一ラインの全画素(1280ドット)が更新されるに要する時間は、11.85μS(=640/54MHz)である。 In the case of this embodiment, the source driver SDV is configured by arranging 10 driver elements each having 384 output terminals. As explained earlier, one line of all pixels (1280 dots) of a liquid phase panel LCD is composed of basic pixels of three colors RGB, and there are a total of 3 x 1280 pixels, so 10 driver elements are required to drive these. becomes. Note that these ten driver elements are sequentially supplied with image data DAT from the liquid crystal controller LCD_CNT, and transferred as appropriate based on the start signal SP and transfer clock DCLK. Then, in synchronization with the latch signal LT, the analog-converted drive signal is supplied to the 3840 source signal lines. As explained above, the time required for all pixels (1280 dots) in one line of the liquid crystal panel LCD to be updated is 11.85 μS (=640/54 MHz).

一方、液晶コントローラLCD_CNT は、ゲートドライバGDVに対して、ゲートスタート信号GSや、ゲートクロック信号GCLKを供給することで、駆動対象となるゲート信号ラインを更新している。ここで、ゲートドライバGDVは、256本の出力端子を有するドライバ素子を4個配置して構成されている。 On the other hand, the liquid crystal controller LCD_CNT updates the gate signal line to be driven by supplying the gate start signal GS and the gate clock signal GCLK to the gate driver GDV. Here, the gate driver GDV is configured by arranging four driver elements each having 256 output terminals.

なお、ゲート信号ラインの更新タイミングは、DE信号の立下りタイミングと、動作クロックCKに基づいて規定され、ゲート信号ラインの水平改行周期は、動作クロックCKでカウントして、典型値計算では、640+204クロックとされる(図3(c)参照)。また、DE信号の個数(1024)に基づいて、駆動対象のゲート信号ラインが初期状態にリセットされ、最適なタイミングで、ゲートスタート信号GSが出力され、ゲートクロック信号GCLKの出力が再開される。ゲート信号ラインの垂直改行周期は、動作クロックCKでカウントして、典型値計算では、42+1024クロックである(図3(c)参照)。但し、先に説明した通り、本実施例では、典型値とは異なる設計で表示装置DS1を動作させている(図14参照)。 Note that the update timing of the gate signal line is defined based on the fall timing of the DE signal and the operation clock CK, and the horizontal line feed period of the gate signal line is counted using the operation clock CK, and the typical value calculation is 640 + 204. This is used as a clock (see FIG. 3(c)). Further, based on the number of DE signals (1024), the gate signal line to be driven is reset to the initial state, the gate start signal GS is outputted at the optimum timing, and the output of the gate clock signal GCLK is restarted. The vertical line feed cycle of the gate signal line is counted using the operation clock CK, and according to a typical value calculation, it is 42+1024 clocks (see FIG. 3(c)). However, as explained above, in this embodiment, the display device DS1 is operated with a design different from the typical value (see FIG. 14).

以上、メイン表示装置DS1について、詳細に説明したが、サブ表示装置DS2は、VDP回路52から受ける水平同期信号HSと垂直同期信号VSに基づいて、図40に示すと同様の動作をしている。但し、サブ制御装置DS2も、水平同期信号HSや垂直同期信号VSに基づくことなく、データ有効信号ENABに基づいて動作する構成を採るのも好適である。なお、データ有効信号ENABは、サブ表示装置DS2に対しては、離散的なDE信号の形式ではなく、連続信号ENABとして伝送される(図13(a)右下部参照)。 The main display device DS1 has been described in detail above, but the sub display device DS2 operates in the same way as shown in FIG. 40 based on the horizontal synchronization signal HS and vertical synchronization signal VS received from the VDP circuit 52. . However, it is also preferable that the sub-control device DS2 be configured to operate based on the data valid signal ENAB without being based on the horizontal synchronizing signal HS or the vertical synchronizing signal VS. Note that the data valid signal ENAB is transmitted to the sub-display device DS2 not in the form of a discrete DE signal but as a continuous signal ENAB (see the lower right part of FIG. 13(a)).

次に、図3(a)に戻って、パチンコ機GMの全体回路構成を説明する。図3(a)に示す通り、このパチンコ機GMは、AC24Vを受けて各種の直流電圧(35V,12V,5V)をAC24Vと共に出力する電源基板20と、遊技制御動作を中心統括的に担う主制御基板21と、音声演出用の回路素子SNDを搭載した演出インタフェイス基板22と、主制御基板21から受けた制御コマンドCMDに基づいてランプ演出、音声演出、及び画像演出を統一的に実行する演出制御基板23と、演出制御基板23と表示装置DS1,DS2の間に位置する液晶インタフェイス基板24と、主制御基板21から受けた制御コマンドCMD’に基づいて払出モータMを制御して遊技球を払い出す払出制御基板25と、遊技者の操作に応答して遊技球を発射させる発射制御基板26と、を中心に構成されている。 Next, returning to FIG. 3(a), the overall circuit configuration of the pachinko machine GM will be described. As shown in Fig. 3(a), this pachinko machine GM consists of a power supply board 20 that receives AC 24V and outputs various DC voltages (35V, 12V, 5V) along with AC 24V, and a main unit that centrally handles game control operations. Based on the control board 21, the production interface board 22 equipped with the circuit element SND for audio production, and the control command CMD received from the main control board 21, lamp production, audio production, and image production are performed in a unified manner. A game is played by controlling the payout motor M based on the control command CMD' received from the production control board 23, the liquid crystal interface board 24 located between the production control board 23 and the display devices DS1 and DS2, and the main control board 21. It is mainly composed of a payout control board 25 that pays out balls, and a firing control board 26 that fires game balls in response to operations by the player.

なお、演出インタフェイス基板22と、演出制御基板23と、液晶インタフェイス基板24とは、配線ケーブルを経由することなく、雄型コネクタと雌型コネクタとを直結されている。そのため、各電子回路の回路構成を複雑高度化しても基板全体の収納空間を最小化できると共に、接続ラインを最短化することで耐ノイズ性を高めることができる。 Note that the presentation interface board 22, the presentation control board 23, and the liquid crystal interface board 24 are directly connected to a male connector and a female connector without going through a wiring cable. Therefore, even if the circuit configuration of each electronic circuit becomes complex and sophisticated, the storage space of the entire board can be minimized, and the noise resistance can be improved by minimizing the connection lines.

図示の通り、主制御基板21が出力する制御コマンドCMD’は、払出制御基板25に伝送される。一方、主制御基板21が出力する制御コマンドCMDは、演出インタフェイス基板22を経由して演出制御基板23に伝送される。ここで、制御コマンドCMD,CMD’は、何れも16bit長であるが、8bit長毎に2回に分けてパラレル送信される。 As shown in the figure, the control command CMD' output from the main control board 21 is transmitted to the payout control board 25. On the other hand, the control command CMD output by the main control board 21 is transmitted to the performance control board 23 via the performance interface board 22. Here, the control commands CMD and CMD' are both 16 bits long, but are transmitted in parallel in two parts each having a length of 8 bits.

主制御基板21と払出制御基板25には、ワンチップマイコンを含むコンピュータ回路が搭載されている。また、演出制御基板23には、VDP回路(Video Display Processor )52や内蔵CPU回路51などのコンピュータ回路が内蔵された複合チップ50が搭載されている。そこで、これらの制御基板21、25、23と、演出インタフェイス基板22や液晶インタフェイス基板24に搭載された回路、及びその回路によって実現される動作を機能的に総称して、本明細書では、主制御部21、演出制御部23、及び払出制御部25と言うことがある。なお、主制御部21に対して、演出制御部23と、払出制御部25がサブ制御部となる。 The main control board 21 and the payout control board 25 are equipped with a computer circuit including a one-chip microcomputer. Further, the production control board 23 is equipped with a composite chip 50 in which computer circuits such as a VDP circuit (Video Display Processor) 52 and a built-in CPU circuit 51 are built-in. Therefore, in this specification, the circuits mounted on the control boards 21, 25, 23, the production interface board 22 and the liquid crystal interface board 24, and the operations realized by the circuits are collectively referred to in terms of functionality. , the main control section 21, the production control section 23, and the payout control section 25. Note that the production control section 23 and the payout control section 25 serve as sub-control sections for the main control section 21.

また、このパチンコ機GMは、図3(a)の破線で囲む枠側部材GM1と、遊技盤5の背面に固定された盤側部材GM2とに大別されている。枠側部材GM1には、ガラス扉6や前面板7が枢着された内枠3と、その外側の木製外枠1とが含まれており、機種の変更に拘わらず、長期間にわたって遊技ホールに固定的に設置される。一方、盤側部材GM2は、機種変更に対応して交換され、新たな盤側部材GM2が、元の盤側部材の代わりに枠側部材GM1に取り付けられる。なお、枠側部材1を除く全てが、盤側部材GM2である。 Further, this pachinko machine GM is roughly divided into a frame side member GM1 surrounded by a broken line in FIG. 3(a) and a board side member GM2 fixed to the back side of the game board 5. The frame side member GM1 includes an inner frame 3 to which a glass door 6 and a front plate 7 are pivotally attached, and a wooden outer frame 1 on the outside thereof, and regardless of model changes, the game hall can be used for a long time. Fixedly installed. On the other hand, the panel side member GM2 is replaced in response to the model change, and a new panel side member GM2 is attached to the frame side member GM1 in place of the original panel side member. In addition, all except the frame side member 1 are board side members GM2.

図3(a)の破線枠に示す通り、枠側部材GM1には、電源基板20と、バックアップ電源基板33と、払出制御基板25と、発射制御基板26と、枠中継基板36と、モータ/ランプ駆動基板37と、が含まれており、これらの回路基板が、内枠3の適所に各々固定されている。一方、遊技盤5の背面には、主制御基板21、演出制御基板23が、表示装置DS1,DS2やその他の回路基板と共に固定されている。そして、枠側部材GM1と盤側部材GM2とは、一箇所に集中配置された集中接続コネクタC1~C3によって電気的に接続されている。 As shown in the broken line frame in FIG. 3(a), the frame side member GM1 includes a power supply board 20, a backup power supply board 33, a payout control board 25, a firing control board 26, a frame relay board 36, and a motor/ A lamp drive board 37 is included, and these circuit boards are each fixed at a proper position on the inner frame 3. On the other hand, on the back side of the game board 5, a main control board 21, an effect control board 23 are fixed together with display devices DS1, DS2 and other circuit boards. The frame side member GM1 and the panel side member GM2 are electrically connected by central connection connectors C1 to C3 that are centrally arranged at one location.

電源基板20は、遊技ホールから配電される交流電圧AC24Vに基づいて、三種類の直流電圧(35V,12V,5V)を生成し、各直流電圧を、集中接続コネクタC2を経由して、演出インタフェイス基板22に配電している。また、三種類の直流電圧(35V,12V,5V)は、交流電圧AC24Vと共に、払出制御基板25に配電される。そして、払出制御基板25に配電された直流電圧(35V,12V,5V)は、バックアップ電源BAKと共に、集中接続コネクタC1を経由して、主制御基板21に配電されるよう構成されている。 The power supply board 20 generates three types of DC voltages (35V, 12V, 5V) based on the AC voltage AC24V distributed from the game hall, and connects each DC voltage to the performance interface via the central connection connector C2. Power is distributed to the face board 22. Moreover, three types of DC voltages (35V, 12V, 5V) are distributed to the payout control board 25 along with the AC voltage AC24V. The DC voltage (35V, 12V, 5V) distributed to the payout control board 25 is configured to be distributed to the main control board 21 together with the backup power supply BAK via the central connection connector C1.

直流35Vは、遊技球の発射動作に関し、球送りソレノイドや発射ソレノイドの駆動電源、及び、電動式チューリップ(可変入賞装置)や大入賞口16を開閉駆動する電磁ソレノイドの駆動電源として使用される。また、直流12Vは、各制御基板から制御されるLEDランプやモータの駆動電源、及びデジタルアンプの電源電圧として使用され、一方、直流5Vは、払出制御基板25や主制御基板21のワンチップマイコンの電源電圧、及び、各制御基板に搭載された論理素子の電源電圧として使用される。また、直流5Vは、演出インタフェイス基板22のDC/DCコンバータでレベル降下された後、レベル降下された各種レベルの電圧が、各種コンピュータ回路(複合チップ50や音声プロセッサ27など)の電源電圧として使用される。 The DC 35V is used as a driving power source for the ball feeding solenoid and the firing solenoid, and as a driving power source for the electromagnetic solenoid that opens and closes the electric tulip (variable prize winning device) and the big prize opening 16 in connection with the firing operation of the game ball. In addition, the DC 12V is used as the drive power for the LED lamps and motors controlled from each control board, and as the power supply voltage for the digital amplifier, while the DC 5V is used for the one-chip microcomputer on the dispensing control board 25 and the main control board 21. It is used as the power supply voltage for the logic elements mounted on each control board. In addition, the level of the DC 5V is lowered by the DC/DC converter on the production interface board 22, and the lowered voltages at various levels are used as the power supply voltage for various computer circuits (composite chip 50, audio processor 27, etc.). used.

バックアップ電源BAKは、電源遮断後、主制御部21と払出制御部25のワンチップマイコンの内蔵RAMのデータを保持するためのDC5Vの直流電源であり、例えば、電気二重層コンデンサで実現される。この実施例では、専用のバックアップ電源基板33が設けられており、バックアップ電源基板33に配置された電気二重層コンデンサは、払出制御基板25から受ける直流電圧5Vによって遊技動作中に充電されるよう構成されている。 The backup power supply BAK is a DC5V direct current power supply for retaining data in the built-in RAM of the one-chip microcomputer of the main control unit 21 and the payout control unit 25 after the power is cut off, and is realized by, for example, an electric double layer capacitor. In this embodiment, a dedicated backup power supply board 33 is provided, and the electric double layer capacitor disposed on the backup power supply board 33 is configured to be charged during gaming operations by a DC voltage of 5V received from the payout control board 25. has been done.

一方、電源遮断後は、バックアップ電源BAKが、主制御部21と払出制御部25のワンチップマイコンの内蔵RAMのデータを保持するので、主制御部21と払出制御部25は、電源遮断前の遊技動作を電源投入後に再開できることになる。なお、バックアップ電源基板33には、少なくとも数日は、各ワンチップマイコンの内蔵RAMの記憶内容を保持可能な電気二重層コンデンサが配置されている。 On the other hand, after the power is cut off, the backup power supply BAK retains the data in the built-in RAM of the one-chip microcomputer of the main control unit 21 and the payout control unit 25, so the main control unit 21 and the payout control unit 25 are The gaming operation can be resumed after the power is turned on. Note that an electric double layer capacitor capable of retaining the stored contents of the built-in RAM of each one-chip microcomputer for at least several days is arranged on the backup power supply board 33.

ところで、本実施例では、従来の機器構成とは異なり、交流電圧AC24Vの異常低下を示す電源異常信号ABNは、電源基板20ではなく、払出制御基板25の電源モニタ部MNTにおいて生成されるよう構成されている。電源モニタ部MNTは、図3(b)に示す通り、電源基板20から受けるAC24Vを整流する全波整流回路と、全波整流回路の出力を受けて通電発光するフォトダイオードDと、電源基板20から受ける直流電圧5Vを電源とし、フォトダイオードDの発光に基づいてON動作するフォトトランジスTRと、フォトトランジスTRのON動作に基づいてHレベルの検出信号ABN(電源異常信号)を出力する出力部と、を有して構成されている。なお、フォトダイオードDと、フォトトランジスTRとで、フォトカプラPHを構成している。 By the way, in this embodiment, unlike the conventional equipment configuration, the power supply abnormality signal ABN indicating an abnormal drop in the AC voltage AC24V is configured to be generated not in the power supply board 20 but in the power supply monitor unit MNT of the payout control board 25. has been done. As shown in FIG. 3(b), the power supply monitor unit MNT includes a full-wave rectifier circuit that rectifies the AC 24V received from the power supply board 20, a photodiode D that emits light when energized upon receiving the output of the full-wave rectification circuit, and the power supply board 20. A phototransistor TR that is powered by a DC voltage of 5V received from the photodiode D and turns on based on the light emission of the photodiode D, and an output section that outputs an H-level detection signal ABN (power supply abnormality signal) based on the ON operation of the phototransistor TR. It is composed of the following. Note that the photodiode D and the phototransistor TR constitute a photocoupler PH.

上記の構成において、電源投入後、フォトカプラPHが速やかにON状態になることで、電源異常信号ABNが正常レベル(H)となる。しかし、その後、交流電源が何らかの理由(正常には電源遮断)で異常降下すると、フォトカプラPHがOFF状態に変化することで、電源異常信号ABNが異常レベル(L)に変化する。この電源異常信号ABNは、払出制御基板25のワンチップマイコンに伝送されると共に、集中接続コネクタC1を経由して、主制御基板21のワンチップマイコンにも伝送されるよう構成されている。したがって、異常レベルの電源異常信号ABNを受けた各ワンチップマイコンは、必要な情報を、各々の内蔵RAMに記憶するバックアップ処理を実行することになる。先に説明した通り、内蔵RAMの情報は、バックアップ電源BAKによって維持されるので、電源遮断前の遊技動作が電源投入後に再開可能となる。 In the above configuration, after the power is turned on, the photocoupler PH is quickly turned on, so that the power abnormality signal ABN becomes a normal level (H). However, after that, when the AC power drops abnormally for some reason (normally the power is cut off), the photocoupler PH changes to the OFF state, and the power abnormality signal ABN changes to an abnormal level (L). This power supply abnormality signal ABN is transmitted to the one-chip microcomputer of the payout control board 25, and is also transmitted to the one-chip microcomputer of the main control board 21 via the central connection connector C1. Therefore, each one-chip microcomputer that receives the power supply abnormality signal ABN at the abnormal level executes a backup process of storing necessary information in its own built-in RAM. As explained above, since the information in the built-in RAM is maintained by the backup power supply BAK, the gaming operation that was in place before the power was cut off can be resumed after the power is turned on.

図3(a)に示す通り、演出インタフェイス基板22には、音声プロセッサ27などの音声回路SNDが搭載され、演出制御基板23には、VDP回路52や内蔵CPU回路51などのコンピュータ回路が内蔵された複合チップ50が搭載されている。以下、内蔵CPU回路をCPU回路と略称することがある。 As shown in FIG. 3(a), the production interface board 22 is equipped with an audio circuit SND such as an audio processor 27, and the production control board 23 is equipped with computer circuits such as a VDP circuit 52 and a built-in CPU circuit 51. A composite chip 50 is mounted thereon. Hereinafter, the built-in CPU circuit may be abbreviated as a CPU circuit.

演出インタフェイス基板22には、電源投入時に、電源電圧の上昇を検知して各種のリセット信号RT3,RT4を生成するリセット回路RST3,RST4が搭載されている。先ず、リセット回路RST3は、電源基板20から配電された直流電圧12Vと5Vに基づいて、リセット信号RT3を生成している。そして、リセット信号RT3は、音声メモリ28だけを電源リセットして、そのまま演出制御基板23に伝送される。 The performance interface board 22 is equipped with reset circuits RST3 and RST4 that detect a rise in the power supply voltage and generate various reset signals RT3 and RT4 when the power is turned on. First, the reset circuit RST3 generates a reset signal RT3 based on the DC voltages 12V and 5V distributed from the power supply board 20. Then, the reset signal RT3 resets the power of only the audio memory 28 and is transmitted to the production control board 23 as it is.

演出制御基板23に伝送されたリセット信号RT3は、図6(a)に示す通り、ANDゲートG1において、WDT(Watch Dog Timer )回路58の出力とAND演算され、システムリセット信号SYSとして、CPU回路51やVDP回路52を電源リセットしている(図6(a)及び図6(d)参照)。 As shown in FIG. 6(a), the reset signal RT3 transmitted to the production control board 23 is ANDed with the output of the WDT (Watch Dog Timer) circuit 58 at the AND gate G1, and is sent to the CPU circuit as the system reset signal SYS. 51 and the VDP circuit 52 (see FIGS. 6(a) and 6(d)).

リセット回路RST3が生成するリセット信号RT3は、電源投入後、電源リセット信号として所定時間Lレベルを維持した後、Hレベルに上昇する。しかし、その後、直流電圧12V又は直流電圧5Vの何れか一以上が降下した場合(通常は電源遮断時)には、リセット信号RT3のレベル降下に対応して、システムリセット信号SYSもLレベルに降下するので、演出制御基板23のCPU回路51とVDP回路52は動作停止状態となる。 After the power is turned on, the reset signal RT3 generated by the reset circuit RST3 maintains the L level for a predetermined time as a power reset signal, and then rises to the H level. However, if one or more of the DC voltage 12V or 5V drops after that (usually when the power is cut off), the system reset signal SYS also drops to L level in response to the level drop of the reset signal RT3. Therefore, the CPU circuit 51 and the VDP circuit 52 of the production control board 23 become inactive.

このシステムリセット信号SYSは、WDT回路58の出力(正常時にはHレベル)に基づいても変化するので、リセット信号RT3=Hの状態で、プログラム暴走時などに起因して、WDT回路58の出力がLレベルに降下することに対応して、システムリセット信号SYSもLレベルに変化して、CPU回路51やVDP回路52を異常リセットする(図6(d)参照)。 This system reset signal SYS also changes based on the output of the WDT circuit 58 (which is at H level during normal operation), so when the reset signal RT3 is at H level, the output of the WDT circuit 58 may change due to program runaway or the like. Corresponding to the fall to the L level, the system reset signal SYS also changes to the L level, abnormally resetting the CPU circuit 51 and the VDP circuit 52 (see FIG. 6(d)).

一方、リセット回路RST4は、電源基板20から配電された5Vを降下して生成された3.3Vに基づいて、リセット信号RT4を生成している。このリセット信号RT4は、電源投入時の電源リセット信号として、音声プロセッサ27を電源リセットしている。 On the other hand, the reset circuit RST4 generates the reset signal RT4 based on 3.3V generated by dropping the 5V distributed from the power supply board 20. This reset signal RT4 resets the power of the audio processor 27 as a power reset signal when the power is turned on.

図示の通り、リセット回路RST4には、演出制御基板23から返送されたシステムリセット信号SYSも供給されているので、CPU回路51やVDP回路52の異常リセット時には、これらの回路の異常リセットに同期して、音声プロセッサ27も異常リセットされる。この結果、音声演出は、画像演出やランプ演出と共に初期状態に戻ることになり、不自然な音声演出が継続するおそれがない。 As shown in the figure, the reset circuit RST4 is also supplied with the system reset signal SYS sent back from the production control board 23, so when the CPU circuit 51 or the VDP circuit 52 is abnormally reset, it is synchronized with the abnormal reset of these circuits. Then, the audio processor 27 is also abnormally reset. As a result, the audio performance returns to its initial state along with the image performance and lamp performance, and there is no risk that unnatural audio performance will continue.

次に、枠側部材GM1たる払出制御基板25と、盤側部材GM2たる主制御部21には、各々、リセット回路RST1,RST2が搭載されており、電源投入時に電源リセット信号が生成され、各コンピュータ回路が電源リセットされるよう構成されている。 Next, the payout control board 25, which is the frame side member GM1, and the main control unit 21, which is the board side member GM2, are each equipped with reset circuits RST1 and RST2, and when the power is turned on, a power reset signal is generated, and each The computer circuitry is configured to be power reset.

このように、本実施例では、主制御部21と、払出制御部25と、演出インタフェイス基板22に、各々、リセット回路RST1~RST4を配置しており、システムリセット信号SYSが回路基板間で伝送されることがない。すなわち、システムリセット信号SYSを伝送する配線ケーブルが存在しないので、配線ケーブルに重畳するノイズによって、コンピュータ回路が異常リセットされるおそれが解消される。 In this way, in this embodiment, the reset circuits RST1 to RST4 are arranged in the main control section 21, the payout control section 25, and the production interface board 22, respectively, and the system reset signal SYS is transmitted between the circuit boards. Never transmitted. That is, since there is no wiring cable for transmitting the system reset signal SYS, there is no possibility that the computer circuit will be abnormally reset due to noise superimposed on the wiring cable.

但し、主制御部21や払出制御部25に設けられたリセット回路RST1,RST2は、各々ウォッチドッグタイマを内蔵しており、各制御部21,25のCPUから、定時的なクリアパルスを受けない場合には、各CPUは強制的にリセットされる。 However, the reset circuits RST1 and RST2 provided in the main control unit 21 and the payout control unit 25 each have a built-in watchdog timer, and do not receive periodic clear pulses from the CPUs of the respective control units 21 and 25. In this case, each CPU is forced to reset.

また、主制御部21には、係員が操作可能な初期化スイッチSWが配置されており、電源投入時、初期化スイッチSWがON操作されたか否かを示すRAMクリア信号CLRが出力されるよう構成されている。このRAMクリア信号CLRは、主制御部21と払出制御部25のワンチップマイコンに伝送され、各制御部21,25のワンチップマイコンの内蔵RAMの全領域を初期設定するか否かを決定している。 In addition, the main control unit 21 is provided with an initialization switch SW that can be operated by a staff member, so that when the power is turned on, a RAM clear signal CLR indicating whether or not the initialization switch SW is turned on is output. It is configured. This RAM clear signal CLR is transmitted to the one-chip microcomputers of the main control section 21 and the payout control section 25, and determines whether or not to initialize all areas of the built-in RAM of the one-chip microcomputers of each control section 21, 25. ing.

また、先に説明した通り、主制御部21及び払出制御部25のワンチップマイコンは、払出制御部25に配置された電源モニタMNTから電源異常信号ABNを受けることによって、停電や営業終了に先立って、必要な終了処理を開始するようになっている。 In addition, as explained earlier, the one-chip microcontroller of the main control unit 21 and the payout control unit 25 receives the power supply abnormality signal ABN from the power supply monitor MNT arranged in the payout control unit 25, so that it and starts the necessary termination processing.

図3(a)に示す通り、主制御部21は、払出制御部25から、遊技球の払出動作を示す賞球計数信号や、払出動作の異常に係わるステイタス信号CONや、動作開始信号BGNを受信している。ステイタス信号CONには、例えば、補給切れ信号、払出不足エラー信号、下皿満杯信号が含まれる。動作開始信号BGNは、電源投入後、払出制御部25の初期動作が完了したことを主制御部21に通知する信号である。 As shown in FIG. 3(a), the main control unit 21 receives a prize ball count signal indicating the payout operation of game balls, a status signal CON related to an abnormality in the payout operation, and an operation start signal BGN from the payout control unit 25. is being received. The status signal CON includes, for example, an out-of-supply signal, an insufficient dispense error signal, and a lower tray full signal. The operation start signal BGN is a signal that notifies the main control section 21 that the initial operation of the payout control section 25 has been completed after the power is turned on.

また、主制御部21は、遊技盤上の各入賞口16~18に内蔵された検出スイッチのスイッチ信号を受ける一方、電動式チューリップなどのソレノイド類を駆動している。ソレノイド類や検出スイッチは、主制御部21から配電された電源電圧VB(12V)で動作するよう構成されている。また、図柄始動口15への入賞状態などを示す各スイッチ信号は、電源電圧VB(12V)と電源電圧Vcc(5V)とで動作するインタフェイスICで、TTLレベル又はCMOSレベルのスイッチ信号に変換された上で、主制御部21に伝送される。 In addition, the main control section 21 receives switch signals from detection switches built into each of the winning holes 16 to 18 on the game board, and also drives solenoids such as electric tulips. The solenoids and detection switches are configured to operate with power supply voltage VB (12V) distributed from the main control unit 21. In addition, each switch signal indicating the winning status of the symbol starting port 15 is converted into a TTL level or CMOS level switch signal by an interface IC that operates with power supply voltage VB (12V) and power supply voltage Vcc (5V). After that, it is transmitted to the main control section 21.

先に説明した通り、演出インタフェイス基板22は、集中接続コネクタC2を経由して、電源基板20から各レベルの直流電圧(5V,12V,35V)を受けている(図3(a)及び図6(a)参照)。直流電圧12Vは、デジタルアンプ29の電源電圧であると共に、LEDランプなどの駆動電圧として使用される。また、直流電圧35Vは、遊技枠の適所に配電されて可動物を往復移動させるソレノイドの駆動電圧として使用される。 As explained earlier, the production interface board 22 receives DC voltages of various levels (5V, 12V, 35V) from the power supply board 20 via the central connection connector C2 (see FIGS. 3(a) and 3). 6(a)). The DC voltage of 12V is the power supply voltage for the digital amplifier 29, and is also used as a driving voltage for LED lamps and the like. Further, the DC voltage of 35V is used as a drive voltage for a solenoid that is distributed to appropriate locations on the gaming slot and moves the movable object back and forth.

一方、直流電圧5Vは、演出インタフェイス基板22各所の回路素子の電源電圧として供給されると共に、2つのDC/DCコンバータDC1,DC2に供給されて3.3Vと1.0Vが生成される(図6(a)参照)。生成された直流電圧3.3Vと1.0Vは、各々、I/O(入出力)用と、チップコア用の電源電圧として音声プロセッサ27に供給される。また、直流電圧3.3Vは、リセット回路RST4が生成する電源リセット信号RT4の基礎電圧となる。 On the other hand, the DC voltage of 5V is supplied as a power supply voltage to circuit elements at various locations on the production interface board 22, and is also supplied to two DC/DC converters DC1 and DC2 to generate 3.3V and 1.0V ( (See FIG. 6(a)). The generated DC voltages of 3.3V and 1.0V are supplied to the audio processor 27 as power supply voltages for I/O (input/output) and chip core, respectively. Further, the DC voltage of 3.3V becomes the basic voltage of the power supply reset signal RT4 generated by the reset circuit RST4.

演出インタフェイス基板22に配電された直流電圧5Vは、DC/DCコンバータDC1で生成された3.3Vと共に、演出制御基板23に配電される。そして、演出制御基板23に配電された直流電圧3.3Vは、電源電圧として、複合チップ50や、PROM53及びCGROM55に供給される。 The DC voltage 5V distributed to the performance interface board 22 is distributed to the performance control board 23 together with 3.3V generated by the DC/DC converter DC1. The DC voltage of 3.3V distributed to the performance control board 23 is supplied to the composite chip 50, PROM 53, and CGROM 55 as a power supply voltage.

図6(a)に示す通り、演出制御基板23には、2つのDC/DCコンバータDC3,DC4が配置されており、各々に供給される直流電圧5Vに基づいて、1.5Vと1.05Vを生成している。ここで、直流電圧1.05Vは、複合チップ50のチップコア用の電源電圧であり、直流電圧1.5Vは、DRAM54とのI/O(入出力)用の電源電圧である。したがって、直流電圧1.5Vは、電源電圧として、DRAM54にも供給される。 As shown in FIG. 6(a), two DC/DC converters DC3 and DC4 are arranged on the production control board 23, and based on the DC voltage 5V supplied to each, 1.5V and 1.05V is being generated. Here, the DC voltage of 1.05V is the power supply voltage for the chip core of the composite chip 50, and the DC voltage of 1.5V is the power supply voltage for I/O (input/output) with the DRAM 54. Therefore, the DC voltage of 1.5V is also supplied to the DRAM 54 as a power supply voltage.

図3(a)に示す通り、演出インタフェイス基板22は、主制御部21から制御コマンドCMDとストローブ信号STBとを受けて、演出制御基板23に転送している。より詳細には、図6(a)に示す通りであり、制御コマンドCMDとストローブ信号STBは、入力バッファ40を経由して、演出制御基板23の複合チップ50(CPU回路51)に転送される。ここで、ストローブ信号STBは、受信割込み信号IRQ_CMD であり、演出制御CPU63は、受信割込み信号IRQ_CMD を受けて起動される割込み処理プログラム(割込みハンドラ)に基づいて、制御コマンドCMDを取得している。 As shown in FIG. 3(a), the production interface board 22 receives the control command CMD and the strobe signal STB from the main control unit 21, and transfers them to the production control board 23. More specifically, as shown in FIG. 6(a), the control command CMD and strobe signal STB are transferred to the composite chip 50 (CPU circuit 51) of the production control board 23 via the input buffer 40. . Here, the strobe signal STB is a received interrupt signal IRQ_CMD, and the performance control CPU 63 obtains the control command CMD based on an interrupt processing program (interrupt handler) activated in response to the received interrupt signal IRQ_CMD.

図6(a)に示す通り、演出インタフェイス基板22の入力バッファ44は、枠中継基板35,36からチャンスボタン11や音量スイッチVLSWのスイッチ信号を受け、各スイッチ信号を演出制御基板23のCPU回路51に伝送している。具体的には、音量スイッチVLSWの接点位置(0~7)を示すエンコーダ出力の3bit長と、チャンスボタン11のON/OFF状態を示す1bit長をCPU回路51に伝送している。 As shown in FIG. 6(a), the input buffer 44 of the production interface board 22 receives the switch signals of the chance button 11 and the volume switch VLSW from the frame relay boards 35 and 36, and sends each switch signal to the CPU of the production control board 23. It is transmitted to the circuit 51. Specifically, a 3-bit length of the encoder output indicating the contact position (0 to 7) of the volume switch VLSW and a 1-bit length indicating the ON/OFF state of the chance button 11 are transmitted to the CPU circuit 51.

また、演出インタフェイス基板22には、ランプ駆動基板30やモータランプ駆動基板31が接続されると共に、枠中継基板35,36を経由して、ランプ駆動基板37にも接続されている。図示の通り、ランプ駆動基板30に対応して、出力バッファ42が配置され、モータランプ駆動基板31に対応して、入力バッファ43aと出力バッファ43bが配置されている。なお、図6(a)では、便宜上、入力バッファ43aと出力バッファ43bを総称して、入出力バッファ43と記載している。入力バッファ43aは、可動演出体たる役物の現在位置(演出モータM1~Mnの回転位置)を把握する原点センサの出力SN0~SNnを受けて、演出制御基板23のCPU回路51に伝送している。 Further, the performance interface board 22 is connected to a lamp drive board 30 and a motor lamp drive board 31, and is also connected to a lamp drive board 37 via frame relay boards 35 and 36. As shown, an output buffer 42 is arranged corresponding to the lamp drive board 30, and an input buffer 43a and an output buffer 43b are arranged corresponding to the motor lamp drive board 31. Note that in FIG. 6A, for convenience, the input buffer 43a and the output buffer 43b are collectively referred to as the input/output buffer 43. The input buffer 43a receives the outputs SN0 to SNn of the origin sensor for grasping the current position of the movable performance object (rotational position of the performance motors M1 to Mn), and transmits the output to the CPU circuit 51 of the performance control board 23. There is.

ランプ駆動基板30、モータランプ駆動基板31、及び、ランプ駆動基板37には、同種のドライバICが搭載されており、演出インタフェイス基板22は、演出制御基板23から受けるシリアル信号を、各ドライバICに転送している。シリアル信号は、具体的には、ランプ(モータ)駆動信号SDATAとクロック信号CKであり、駆動信号SDATAがクロック同期方式で各ドライバICに伝送され、多数のLEDランプや電飾ランプによるランプ演出や、演出モータM1~Mnによる役物演出が実行される。 The lamp drive board 30, the motor lamp drive board 31, and the lamp drive board 37 are equipped with driver ICs of the same type, and the production interface board 22 receives serial signals from the production control board 23 and connects them to each driver IC. is being transferred to. Specifically, the serial signals are a lamp (motor) drive signal SDATA and a clock signal CK, and the drive signal SDATA is transmitted to each driver IC in a clock synchronized manner, and the drive signal SDATA is transmitted to each driver IC in a clock synchronized manner, and is used to perform lamp performances using a large number of LED lamps and illuminated lamps. , an accessory performance is executed by the performance motors M1 to Mn.

本実施例の場合、ランプ演出は、三系統のランプ群CH0~CH2によって実行されており、ランプ駆動基板37は、枠中継基板35,36を経由して、CH0のランプ駆動信号SDATA0を、クロック信号CK0に同期して受けている。なお、シリアル信号として伝送される一連のランプ駆動信号SDATA0は、動作制御信号ENABLE0がアクティブレベルに変化したタイミングで、ドライバICからランプ群CH0に出力されることで一斉に点灯状態が更新される。 In the case of this embodiment, the lamp performance is executed by three systems of lamp groups CH0 to CH2, and the lamp drive board 37 receives the lamp drive signal SDATA0 of CH0 via the frame relay boards 35 and 36 as a clock. It is received in synchronization with signal CK0. Note that the series of lamp drive signals SDATA0 transmitted as serial signals are outputted from the driver IC to the lamp group CH0 at the timing when the operation control signal ENABLE0 changes to the active level, thereby updating the lighting state all at once.

以上の点は、ランプ駆動基板30についても同様であり、ランプ駆動基板30のドライバICは、ランプ群CH1のランプ駆動信号SDATA1を、クロック信号CK1に同期して受け、動作制御信号ENABLE1がアクティブレベルに変化したタイミングで、ランプ群CH1の点灯状態を一斉に更新している。 The above points are the same for the lamp drive board 30, and the driver IC of the lamp drive board 30 receives the lamp drive signal SDATA1 of the lamp group CH1 in synchronization with the clock signal CK1, and the operation control signal ENABLE1 is at the active level. At the timing when the lamp group CH1 changes, the lighting states of the lamp group CH1 are updated all at once.

一方、モータランプ駆動基板31に搭載されたドライバICは、クロック同期式で伝送されるランプ駆動信号を受けてランプ群CH2を駆動すると共に、クロック同期式で伝送されるモータ駆動信号を受けて、複数のステッピングモータで構成された演出モータ群M1~Mnを駆動している。なお、ランプ駆動信号とモータ駆動信号は、一連のシリアル信号SDATA2であって、クロック信号CK1に同期してシリアル伝送され、これを受けたドライバICは、動作制御信号ENABLE2がアクティブレベルに変化するタイミングで、ランプ群CH2やモータ群M1~Mnの駆動状態を更新する。 On the other hand, the driver IC mounted on the motor lamp drive board 31 drives the lamp group CH2 in response to a lamp drive signal transmitted in a clock synchronous manner, and also receives a motor drive signal transmitted in a clock synchronous manner. It drives a group of performance motors M1 to Mn composed of a plurality of stepping motors. Note that the lamp drive signal and the motor drive signal are a series of serial signals SDATA2, which are serially transmitted in synchronization with the clock signal CK1, and the driver IC that receives these signals determines the timing at which the operation control signal ENABLE2 changes to the active level. Then, the driving states of the lamp group CH2 and the motor groups M1 to Mn are updated.

続いて、音声回路SNDについて説明する。図6(a)に示す通り、演出インタフェイス基板22には、演出制御基板23のCPU回路51(演出制御CPU63)から受ける指示に基づいて音声信号を再生する音声プロセッサ(音声合成回路)27と、再生される音声信号の元データである圧縮音声データなどを記憶する音声メモリ28と、音声プロセッサ27から出力される音声信号を受けるデジタルアンプ29と、が搭載されている。 Next, the audio circuit SND will be explained. As shown in FIG. 6(a), the production interface board 22 includes an audio processor (speech synthesis circuit) 27 that reproduces audio signals based on instructions received from the CPU circuit 51 (production control CPU 63) of the production control board 23. , an audio memory 28 that stores compressed audio data that is the original data of the audio signal to be reproduced, and a digital amplifier 29 that receives the audio signal output from the audio processor 27.

音声プロセッサ27は、内部回路の異常動作時に、内部回路の設定値を自動的にデフォルト値(初期値)にリセットするWDT回路と、音声制御レジスタSRGとを内蔵して構成されている。そして、音声プロセッサ27は、演出制御CPU63から音声制御レジスタSRGに受ける動作パラメータ(音声コマンドによる設定値)に基づいて、音声メモリ28をアクセスして、必要な音声信号を再生して出力している。 The audio processor 27 includes a WDT circuit that automatically resets the set value of the internal circuit to a default value (initial value) when the internal circuit malfunctions, and an audio control register SRG. Then, the audio processor 27 accesses the audio memory 28 based on the operation parameters (set values based on audio commands) received from the performance control CPU 63 in the audio control register SRG, and reproduces and outputs the necessary audio signals. .

図6(a)に示す通り、音声プロセッサ27と、音声メモリ28とは、26bit長の音声アドレスバスと、16bit長の音声データバスで接続されている。そのため、音声メモリ28には、1Gbit(=226×16)のデータが記憶可能となる。 As shown in FIG. 6A, the audio processor 27 and the audio memory 28 are connected by a 26-bit audio address bus and a 16-bit audio data bus. Therefore, the audio memory 28 can store 1 Gbit (=2 26 ×16) of data.

音声制御レジスタSRGは、レジスタバンク1~レジスタバンク6に区分され、各々、00H~FFHのレジスタ番号で特定される。したがって、所定の設定動作は、レジスタバンクを特定した上で、演出制御CPU63が、所定のレジスタ番号(1バイト長)の音声制御レジスタSRGに、1バイト長の動作パラメータを書込むことで実現される。 The audio control register SRG is divided into register bank 1 to register bank 6, each of which is specified by a register number of 00H to FFH. Therefore, the predetermined setting operation is realized by specifying the register bank and then writing the 1-byte length operation parameter into the audio control register SRG of the predetermined register number (1-byte length). Ru.

本実施例の場合、音声制御レジスタSRGのレジスタ番号(00H~FFH)は、演出制御CPU63のアドレス空間CS3に対応しており、例えば、レジスタ番号XXHの音声制御レジスタSRGに、動作パラメータYYHを設定する場合には、演出制御CPU63は、アドレス空間CS3のゼロ番地にXXHを書込み、次に、1番地にYYHを書込むことになる。すなわち、演出制御CPU63は、そのデータバスにXXHとYYHを、この順番に書き出すことになる。なお、本明細書において、添え字Hや、0X/0xの接頭記号は、数値が16進数表示であることを示している。 In the case of this embodiment, the register numbers (00H to FFH) of the audio control register SRG correspond to the address space CS3 of the production control CPU 63. For example, the operation parameter YYH is set in the audio control register SRG with register number XXH. In this case, the performance control CPU 63 writes XXH to the zero address of the address space CS3, and then writes YYH to the first address. That is, the performance control CPU 63 writes XXH and YYH to the data bus in this order. Note that in this specification, the subscript H and the prefix symbol 0X/0x indicate that the numerical value is expressed in hexadecimal.

また、本明細書において、アドレス空間CS0~CS7とは、揮発性の有無を含むメモリ種別や、データバス幅(8/16/32ビット)を、各々、規定可能なCPU回路51にとって外部メモリを意味する(内蔵メモリを除く)。このアドレス空間CS0~CS7は、異なるチップセレクト信号CS0~CS7で選択され、READ/WRITE アクセス時に機能するREAD/WRITE 制御信号がメモリ種別に対応して最適化できるよう設定可能に構成されている。なお、この設定動作は、バスステートコントローラ66に対して実行される。 In addition, in this specification, address spaces CS0 to CS7 refer to external memory for the CPU circuit 51, which can specify the memory type, including whether or not it is volatile, and the data bus width (8/16/32 bits). meaning (excluding internal memory). These address spaces CS0 to CS7 are selected by different chip select signals CS0 to CS7, and are configured to be settable so that the READ/WRITE control signal that functions during READ/WRITE access can be optimized in accordance with the memory type. Note that this setting operation is executed for the bus state controller 66.

図6(e)は、演出制御CPU63による音声レジスタSRGへの設定動作を図示したものであり、2bit長のアドレスバスA1-A0と、1バイト長のデータバスD7-D0の内容が示されている。なお、本実施例では、チップセレクト信号CS3は、アドレス空間CS3をアクセスする場合に、自動的にアクティブになるよう、電源投入時に設定されるが、この点は図8や図15に関して後述する。 FIG. 6(e) illustrates the setting operation to the audio register SRG by the production control CPU 63, and shows the contents of the 2-bit length address bus A1-A0 and the 1-byte length data bus D7-D0. There is. In this embodiment, the chip select signal CS3 is set at power-on so that it automatically becomes active when accessing the address space CS3, but this point will be described later with respect to FIGS. 8 and 15.

何れにしても、本実施例の場合、音声メモリ28に記憶された圧縮音声データは、13bit長のフレーズ番号NUM(000H~1FFFH)で特定されるフレーズ(phrase)圧縮データであり、一連の背景音楽の一曲分(BGM)や、ひと纏まりの演出音(予告音)などが、最高8192種類(=213)、各々、フレーズ番号NUMに対応して記憶されている。そして、このフレーズ番号NUMは、演出制御CPU63から音声プロセッサ27の音声制御レジスタSRGに伝送される音声コマンドの設定値(動作パラメータ)によって特定される。 In any case, in the case of this embodiment, the compressed audio data stored in the audio memory 28 is phrase compressed data specified by a 13-bit phrase number NUM (000H to 1FFFH), and a series of background A maximum of 8192 types (=2 13 ) of one piece of music (BGM), a group of performance sounds (notice sounds), etc. are stored, each corresponding to a phrase number NUM. This phrase number NUM is specified by the set value (operation parameter) of the voice command transmitted from the production control CPU 63 to the voice control register SRG of the voice processor 27.

前記の通り、上記の構成を有する音声メモリ28は、リセット信号RT3で電源リセットされ、音声プロセッサ27は、リセット信号RT4で電源リセットされる。図6(c)に示す通り、リセット信号RT4は、電源投入後、所定のアサート期間ASRT(Lレベル区間)を経て、Hレベルに立ち上がるが、本実施例では、その後、音声プロセッサ27の内部回路が自動的に機能して、初期化シーケンス処理が実行されるよう構成されている。なお、この初期化シーケンス処理は、所定の手順で実行される内部動作であり、初期化シーケンス処理の動作中は、演出制御CPU63が音声レジスタSRGをアクセスすることはできない。 As described above, the power of the audio memory 28 having the above configuration is reset by the reset signal RT3, and the power of the audio processor 27 is reset by the reset signal RT4. As shown in FIG. 6(c), after the power is turned on, the reset signal RT4 rises to H level after a predetermined assertion period ASRT (L level period), but in this embodiment, after that, the internal circuit of the audio processor 27 is configured to function automatically and perform initialization sequence processing. Note that this initialization sequence processing is an internal operation executed in a predetermined procedure, and the production control CPU 63 cannot access the audio register SRG during the operation of the initialization sequence processing.

そして、内部動作たる初期化シーケンス処理が完了すると、CPU回路51に対する割込み信号IRQ_SND がLレベルに変化し、CPU回路51(演出制御CPU63)は、割込み信号IRQ_SND に基づき割込み処理プログラムを実行する。そして、所定の命令に基づいて割込み信号IRQ_SND がHレベルに戻されるが、その詳細については、図17(c)を参照して更に後述する。 When the initialization sequence processing, which is an internal operation, is completed, the interrupt signal IRQ_SND to the CPU circuit 51 changes to L level, and the CPU circuit 51 (performance control CPU 63) executes the interrupt processing program based on the interrupt signal IRQ_SND. Then, the interrupt signal IRQ_SND is returned to the H level based on a predetermined command, the details of which will be described later with reference to FIG. 17(c).

図6(a)に示す通り、演出制御部23のCPU回路51のデータバスとアドレスバスは、液晶インタフェイス基板24に搭載された時計回路(real time clock )38と演出データメモリ39にも及んでいる。時計回路38は、CPU回路51のアドレスバスの下位4bitと、データバスの下位4bitに接続されており、チップセレクト信号CS4で時計回路38が選択された状態では、CPU回路51が、(4bit長アドレス値を有する)内部レジスタを任意にアクセスできるよう構成されている。 As shown in FIG. 6(a), the data bus and address bus of the CPU circuit 51 of the production control section 23 also extend to the clock circuit (real time clock) 38 and production data memory 39 mounted on the liquid crystal interface board 24. I'm reading. The clock circuit 38 is connected to the lower 4 bits of the address bus and the lower 4 bits of the data bus of the CPU circuit 51, and when the clock circuit 38 is selected by the chip select signal CS4, the CPU circuit 51 The internal register (having an address value) can be accessed arbitrarily.

また、演出データメモリ39は、高速アクセス可能なメモリ素子SRAM(Static Random Access Memory )であって、CPU回路51のアドレスバスの16bitと、データバスの下位16bitに接続されており、チップセレクト信号CS4でチップ選択された状態では、SRAM(演出データメモリ)39に記憶されている遊技実績情報その他が、CPU回路51から適宜にR/Wアクセスされるようになっている。なお、チップセレクト信号CS4で選択されるアドレス空間CS4において、0番地から15番地までは時計回路38に付番されているので、SRAM39では使用しない。 The performance data memory 39 is a memory element SRAM (Static Random Access Memory) that can be accessed at high speed, and is connected to the 16 bits of the address bus of the CPU circuit 51 and the lower 16 bits of the data bus, and is connected to the chip select signal CS4. In the state where the chip is selected, game performance information and other information stored in the SRAM (performance data memory) 39 is accessed by the CPU circuit 51 as appropriate. Note that in the address space CS4 selected by the chip select signal CS4, addresses 0 to 15 are numbered to the clock circuit 38, and therefore are not used by the SRAM 39.

時計回路38と演出データメモリ39は、不図示の二次電池で駆動されており、この二次電池は、遊技動作中、電源基板20からの給電電圧によって適宜に充電される。そのため、電源遮断後も、時計回路38の計時動作が継続され、また、演出データメモリ39に記憶された遊技実績情報が、永続的に記憶保持されることになる(不揮発性を付与)。なお、時計回路(RTC)38は、CPU回路51に対して、割込み信号IRQ_RTC を出力可能に構成されている(RTC割込み)。このRTC割込みには、日、曜日、時、分、秒が特定可能なアラーム割込みと、所定時間経過後に起動されるタイマ割込みが存在するが、本実施例では、毎日の営業終了時に、日々の遊技実績情報を更新するアラーム割込みを活用している。 The clock circuit 38 and the performance data memory 39 are driven by a secondary battery (not shown), and this secondary battery is appropriately charged by the power supply voltage from the power supply board 20 during the game operation. Therefore, even after the power is cut off, the timekeeping operation of the clock circuit 38 continues, and the game performance information stored in the performance data memory 39 is permanently stored and held (imparted with non-volatility). Note that the clock circuit (RTC) 38 is configured to be able to output an interrupt signal IRQ_RTC to the CPU circuit 51 (RTC interrupt). These RTC interrupts include alarm interrupts that can specify the date, day of the week, hour, minute, and second, and timer interrupts that are activated after a predetermined time has passed. Utilizes alarm interrupts to update gaming performance information.

図6(a)の右側に示す通り、演出制御基板23には、CPU回路51やVDP回路52を内蔵する複合チップ50と、CPU回路51の制御プログラムを記憶する制御メモリ(PROM)53と、大量のデータを高速にアクセス可能なDRAM(Dynamic Random Access Memory)54と、演出制御に必要な大量のCGデータを記憶するCGROM55と、が搭載されている。 As shown on the right side of FIG. 6(a), the production control board 23 includes a composite chip 50 that includes a CPU circuit 51 and a VDP circuit 52, a control memory (PROM) 53 that stores a control program for the CPU circuit 51, It is equipped with a DRAM (Dynamic Random Access Memory) 54 that can access a large amount of data at high speed, and a CGROM 55 that stores a large amount of CG data required for production control.

図9に関して後述するように、制御メモリ(PROM)53は、本実施例では、チップセレクト信号CS0で選択されるアドレス空間CS0に位置付けされている。また、DDR(Double-Data-Rate 3)で構成されるDRAM(Dynamic Random Access Memory)54は、チップセレクト信号CS5で選択されるアドレス空間CS5に位置付けされている。 As will be described later with reference to FIG. 9, the control memory (PROM) 53 is located in the address space CS0 selected by the chip select signal CS0 in this embodiment. Further, a DRAM (Dynamic Random Access Memory) 54 configured with DDR (Double-Data-Rate 3) is positioned in an address space CS5 selected by a chip select signal CS5.

図7(a)は、演出制御部23を構成する複合チップ50について、関連する回路素子も含めて図示した回路ブロック図である。図示の通り、実施例の複合チップ50には、所定時間毎にディスプレイリストDLを発行するCPU回路51と、発行されたディスプレイリストDLに基づいて画像データを生成して表示装置DS1,DS2を駆動するVDP回路52とが内蔵されている。そして、CPU回路51とVDP回路52とは、互いの送受信データを中継するCPUIF回路56を通して接続されている。 FIG. 7(a) is a circuit block diagram illustrating the composite chip 50 constituting the production control section 23, including related circuit elements. As shown in the figure, the composite chip 50 of the embodiment includes a CPU circuit 51 that issues a display list DL at predetermined time intervals, and a CPU circuit 51 that generates image data based on the issued display list DL to drive the display devices DS1 and DS2. A VDP circuit 52 is built-in. The CPU circuit 51 and the VDP circuit 52 are connected through a CPU IF circuit 56 that relays mutual transmission and reception data.

なお、VDP回路52には、音声プロセッサ27と同等の機能を発揮する音声回路SNDが内蔵されているが、これから説明する最初の実施例では、音声回路SNDを活用していない。但し、最後に説明する実施例のように、VDP回路52に内蔵された音声回路SNDを活用すれば、音声メモリ28や音声プロセッサ27の配置が不要となる。 Note that although the VDP circuit 52 has a built-in audio circuit SND that performs the same function as the audio processor 27, the audio circuit SND is not utilized in the first embodiment to be described. However, if the audio circuit SND built into the VDP circuit 52 is utilized as in the embodiment described last, the audio memory 28 and the audio processor 27 are not required.

先ず、CPU回路51は、発振器OSC1の発振出力(例えば100/3MHz)をHCLKI 端子に受けて、これを周波数逓倍(例えば8逓倍)して、266.7MHz程度のCPU動作クロックとしている(図13(b)参照)。ここで、発振器OSC1は、スペクトラムス拡散波を出力するよう構成されることで、電波障害/電磁妨害を防止するEMI(Electromagnetic Interference)対策を図っている。 First, the CPU circuit 51 receives the oscillation output (for example, 100/3 MHz) of the oscillator OSC1 at the HCLKI terminal, and multiplies the frequency (for example, by 8) to obtain a CPU operating clock of about 266.7 MHz (Fig. 13 (see (b)). Here, the oscillator OSC1 is configured to output a spread spectrum wave, thereby taking measures against EMI (Electromagnetic Interference) to prevent radio interference/electromagnetic interference.

ところで、本実施例の場合、CPU動作クロックを、発振器OSC1ではなく、後述する発振器OSC2の出力に基づいて生成することも可能であり、発振器OSC1を不要にすることもできる。しかし、発振器を単一化する構成では、PLL回路の周波数逓倍比が、以下に説明するシステムクロックの場合と同じ固定値(例えば5)となるので、CPU動作クロックの周波数は、VDP回路52のシステムクロックと同一の200MHz(=40MHz×5)となる。 Incidentally, in the case of this embodiment, the CPU operating clock can be generated based on the output of an oscillator OSC2, which will be described later, instead of the oscillator OSC1, and the oscillator OSC1 can be made unnecessary. However, in a configuration in which a single oscillator is used, the frequency multiplication ratio of the PLL circuit is the same fixed value (for example, 5) as in the case of the system clock described below, so the frequency of the CPU operating clock is The frequency is 200MHz (=40MHz×5), which is the same as the system clock.

このような構成を採ると、内蔵CPU回路51とVDP回路52の動作周期が共通化される利点がある一方で、CPUの動作を可能な限り高速化したい要請に反する。すなわち、VDPの動作は、ある程度以上には高速化できないので、CPU動作の高速化の要請に確実に応えることはできない。そこで、本実施例では、VDP回路52とCPU回路51の各動作周期を各々最適化するべく、2つの発振器を設けている。また、別個の発振器OSC1を設けることで、上記したEMI対策の向上を図ることもできる。 Although such a configuration has the advantage that the built-in CPU circuit 51 and the VDP circuit 52 have a common operating cycle, it goes against the desire to speed up the CPU operation as much as possible. That is, since the VDP operation cannot be made faster than a certain level, it is not possible to reliably meet the demand for faster CPU operation. Therefore, in this embodiment, two oscillators are provided in order to optimize the respective operating cycles of the VDP circuit 52 and the CPU circuit 51. Further, by providing a separate oscillator OSC1, the above-mentioned EMI countermeasures can be improved.

以上を踏まえてVDP回路52について説明すると、VDP回路52は、発振器OSC1とは別の発振器OSC2の発振出力(40MHz)をPLLREF端子に受け、PLL(Phase Locked Loop )回路で、周波数逓倍した上で、VDP回路52のシステムクロックとしている。PLL回路の周波数逓倍比は、所定の設定端子への設定値で固定的に規定され、この実施例では、設定端子(3bit のPLLMD 端子)への設定値が固定値5であることから、VDP回路52のシステムクロックは、200MHz(=40MHz×5)となる(図13(b)参照)。 To explain the VDP circuit 52 based on the above, the VDP circuit 52 receives the oscillation output (40 MHz) of the oscillator OSC2, which is different from the oscillator OSC1, at the PLLREF terminal, multiplies the frequency using a PLL (Phase Locked Loop) circuit, and then , is used as the system clock for the VDP circuit 52. The frequency multiplication ratio of the PLL circuit is fixedly defined by the setting value to a predetermined setting terminal, and in this embodiment, since the setting value to the setting terminal (3-bit PLLMD terminal) is a fixed value of 5, the VDP The system clock of the circuit 52 is 200 MHz (=40 MHz×5) (see FIG. 13(b)).

また、本実施例では、表示回路74A~74Cの動作を規定するドットクロックDCK~DCK、及び、外付けDRAM54のDDRクロックについても、発振器OSC2の発振出力(40MHz)に基づいて生成している。すなわち、発振器OSC2の出力(40MHz)は、VDP回路52全体のリファレンスクロックとして機能している。 Furthermore, in this embodiment, the dot clocks DCK A to DCK C that define the operations of the display circuits 74A to 74C and the DDR clock of the external DRAM 54 are also generated based on the oscillation output (40 MHz) of the oscillator OSC2. There is. That is, the output (40 MHz) of the oscillator OSC2 functions as a reference clock for the entire VDP circuit 52.

図13や図14に関して後述するように、表示回路74A~74Cは、通常、仕様の異なる表示装置を各々駆動しているので、各表示回路74A~74Cの動作を規定するドットクロックDCK~DCKは、駆動対象となる表示装置の仕様に対応させる必要がある。かかる必要に基づき、本実施例では、表示回路74A~74Cは、専用発振回路DCLKA~DCLKCの出力クロック(DCLKAI~DCLKCI)の何れかを受けて、それをドットクロックDCK~DCKとすることもできるよう構成されている。 As will be described later with reference to FIGS. 13 and 14, since the display circuits 74A to 74C normally drive display devices with different specifications, the dot clocks DCK A to DCK that define the operation of each display circuit 74A to 74C are C needs to correspond to the specifications of the display device to be driven. Based on this need, in this embodiment, the display circuits 74A to 74C receive any of the output clocks (DCLKAI to DCLKCI) of the dedicated oscillation circuits DCLKA to DCLKC and use them as dot clocks DCK A to DCK C. It is configured so that it can also be used.

この構成を活用した場合には、後述する逓倍比や分周比の設計や、VDPレジスタRGijへの設定処理が不要となり、ドットクロックDCK~DCKの周波数を簡単に最適化することができる。すなわち、メイン表示装置DS1のドットクロック周波数FDOT1に対応して発振周波数FDOT1の専用発振回路DCLKAを設け、また、サブ表示装置DS2のドットクロック周波数FDOT2に対応して発振周波数FDOT2の専用発振回路DCLKBを設けることも可能である。 When this configuration is utilized, there is no need to design multiplication ratios or frequency division ratios or set processing to VDP register RGij, which will be described later, and the frequencies of dot clocks DCK A to DCK C can be easily optimized. . That is, a dedicated oscillation circuit DCLKA with an oscillation frequency FDOT1 is provided corresponding to the dot clock frequency FDOT1 of the main display device DS1, and a dedicated oscillation circuit DCLKA with an oscillation frequency FDOT2 is provided corresponding to the dot clock frequency FDOT2 of the sub display device DS2. It is also possible to provide an oscillation circuit DCLKB.

しかし、このような構成を採る場合には、表示装置の個数に対応して、専用発振回路が必要となり、機器構成が複雑化する。そこで、本実施例では、機器構成を簡素化するため、発振器OSC2の発振出力(40MHz)に基づいて、表示回路74A/74BのドットクロックDCK/DCKを生成している。具体的には、図13(b)に示す通り、メイン表示装置DS1を駆動する表示回路74Aについて、発振器OSC2の発振出力(40MHz)に、所定の逓倍処理(×108)と分周処理(1/40)を施すことで、周波数108MHzのドットクロックDCKを生成している。 However, when adopting such a configuration, dedicated oscillation circuits are required in accordance with the number of display devices, and the device configuration becomes complicated. Therefore, in this embodiment, in order to simplify the equipment configuration, the dot clocks DCK A /DCK B of the display circuits 74A/74B are generated based on the oscillation output (40 MHz) of the oscillator OSC2. Specifically, as shown in FIG. 13(b), for the display circuit 74A that drives the main display device DS1, the oscillation output (40 MHz) of the oscillator OSC2 is subjected to predetermined multiplication processing (×108) and frequency division processing (1 /40), a dot clock DCK A with a frequency of 108 MHz is generated.

同様に、サブ表示装置DS2を駆動する表示回路74Bについても、発振器OSC2の発振出力(40MHz)に、所定の逓倍処理(×108)と分周処理(1/160)を施すことで、周波数Fdot=27MHzのドットクロックDCKを生成している。これら逓倍比や分周比を設計することは、それなりに煩雑であり、専用の発振回路を設ける方が容易であるが、本実施例では、機器構成の簡素化を重視して、専用発振回路を設けていない。 Similarly, for the display circuit 74B that drives the sub-display device DS2, the frequency F is increased by subjecting the oscillation output (40 MHz) of the oscillator OSC2 to predetermined multiplication processing (×108) and frequency division processing (1/160). A dot clock DCK B of dot = 27 MHz is generated. Designing these multiplication ratios and frequency division ratios is somewhat complicated, and it is easier to provide a dedicated oscillation circuit, but in this example, we focused on simplifying the equipment configuration, and has not been established.

何れにしても、ドットクロックDCK~DCKは、表示回路74A~74C毎に個々的に設定されるが、これらドットクロックDCK~DCKを総称する場合、本明細書では、「表示クロックDCK」と称する場合がある。また、以下の説明では、ドットクロックDCKやDCKを、便宜上、「ドットクロックDCK」と略称することがある。 In any case, the dot clocks DCK A to DCK C are individually set for each display circuit 74A to 74C, but when these dot clocks DCK A to DCK C are collectively referred to as "display clocks" in this specification, It is sometimes referred to as "DCK". Furthermore, in the following description, the dot clocks DCK A and DCK B may be abbreviated as "dot clocks DCK" for convenience.

なお、本実施例では、低速LVDS出力の構成を採らないので、表示回路74Aを経由して出力されるLVDS信号のLVDSクロックCLKについても、ドットクロックDCKと同一の生成過程を経て、周波数108MHzとしている。但し、本実施例では、デュアルリンク伝送路を採るので、実際のLVDSクロックCLKの周波数は、図4に関して説明した通り54MHzとなる。なお、シングルリンク伝送路を採用する場合、LVDSクロックCLKの周波数は、108MHzである。 Note that in this embodiment, since a low-speed LVDS output configuration is not adopted, the LVDS clock CLK of the LVDS signal outputted via the display circuit 74A also undergoes the same generation process as the dot clock DCK A , and has a frequency of 108 MHz. It is said that However, in this embodiment, since a dual link transmission path is adopted, the actual frequency of the LVDS clock CLK is 54 MHz, as explained in connection with FIG. 4. Note that when a single link transmission path is adopted, the frequency of the LVDS clock CLK is 108 MHz.

上記のように、本実施例では、発振器OSC2の発振出力(40MHz)が、システムクロック、ドットクロックDCK、及び、DDRクロックのリファレンスクロックとして活用される。そこで、この重要性を考慮して、発振器OSC2をVDP回路52と同じ電源電圧3.3Vで動作させると共に、出力イネーブル端子OEがHレベル(=3.3V)であることを条件に、リファレンスクロックを発振出力するよう構成されている。そして、万一、電源電圧3.3Vが所定レベル以下に低下した場合には、その後、正常な演出動作は望めないので、マスク不能の割込み(NMI)が生じるよう構成されている。 As described above, in this embodiment, the oscillation output (40 MHz) of the oscillator OSC2 is utilized as a reference clock for the system clock, dot clock DCK, and DDR clock. Therefore, in consideration of this importance, the oscillator OSC2 is operated at the same power supply voltage of 3.3V as the VDP circuit 52, and the reference clock is set on the condition that the output enable terminal OE is at H level (=3.3V). It is configured to output oscillation. If the power supply voltage of 3.3V drops below a predetermined level, normal performance operation cannot be expected after that, so a non-maskable interrupt (NMI) is generated.

また、複合チップ50には、HBTSL 端子が設けられ、HBTSL 端子の論理レベルに基づいて、電源投入(CPUリセット)後に実行されるブートプログラム(初期設定プログラム)が、CGROM55に記憶されているか(HBTSL =H)、それ以外のメモリに記憶されているか(HBTSL =L)を特定している。図示の通り、この実施例では、HBTSL =Lレベルに設定されており、演出制御CPU63のアドレス空間CS0のゼロ番地が、CGROM以外に割り当てられ、具体的には、アドレス空間CS0は、制御メモリ53に割り当てられている。 Further, the composite chip 50 is provided with an HBTSL terminal, and based on the logic level of the HBTSL terminal, it is determined whether the boot program (initial setting program) to be executed after power-on (CPU reset) is stored in the CGROM 55 (HBTSL =H), or whether it is stored in a memory other than that (HBTSL =L). As shown in the figure, in this embodiment, HBTSL is set to L level, and the zero address of the address space CS0 of the production control CPU 63 is allocated to a location other than the CGROM. Specifically, the address space CS0 is set to the control memory 53. is assigned to.

一方、HBTSL 端子=Hレベルに設定されている場合(破線参照)は、演出制御CPU63のアドレス空間CS0のゼロ番地が、CGROM55に割り当てられる。この場合は、CGROM55のメモリ種別と、バス幅(64/32/16bit)とが、2bit長のHBTBWD端子と、4bit長のHBTRMSL 端子への入力値に基づいて各々特定されようになっている。なお、これらの点は、図37に基づいて更に後述する。 On the other hand, when the HBTSL terminal is set to H level (see broken line), address zero of the address space CS0 of the production control CPU 63 is assigned to the CGROM 55. In this case, the memory type and bus width (64/32/16 bits) of the CGROM 55 are respectively specified based on the input values to the 2-bit long HBTBWD terminal and the 4-bit long HBTRMSL terminal. Note that these points will be further described later based on FIG. 37.

続いて、CPU回路51とVDP回路52について、互いの送受信データを中継するCPUIF回路56について説明する。図7(a)に示す通り、CPUIF回路56には、制御プログラムや必要な制御データを不揮発的に記憶する制御メモリ(PROM)53と、2Mバイト程度の記憶容量を有するワークメモリ(RAM)57とが接続され、各々、CPU回路51からアクセス可能に構成されている。先に説明した通り、制御メモリ(PROM)53は、チップセレクト信号CS0で選択されるアドレス空間CS0に位置付けられ、ワークメモリ(RAM)57は、チップセレクト信号CS6で選択されるアドレス空間CS6に位置付けられている。 Next, a description will be given of the CPU IF circuit 56 that relays data transmitted and received between the CPU circuit 51 and the VDP circuit 52. As shown in FIG. 7(a), the CPUIF circuit 56 includes a control memory (PROM) 53 that non-volatilely stores control programs and necessary control data, and a work memory (RAM) 57 having a storage capacity of about 2 Mbytes. are connected to each other, and each is configured to be accessible from the CPU circuit 51. As explained above, the control memory (PROM) 53 is located in the address space CS0 selected by the chip select signal CS0, and the work memory (RAM) 57 is located in the address space CS6 selected by the chip select signal CS6. It is being

このワークメモリ(RAM)57には、表示装置DS1,DS2の各一フレームを特定する一連の指示コマンドが記載されたディスプレイリストDLを、一次的に記憶するDLバッファBUFが確保されている。本実施例の場合、一連の指示コマンドには、CGROM55から画像素材(テクスチャ)を読み出してデコード(展開)するためのTXLOADコマンドなどのテクスチャロード系コマンドと、デコード(展開)先のVRAM領域(インデックス空間)を予め特定するなどの機能を有するSETINDEXコマンドなどのテクスチャ設定系コマンドと、デコード(展開)後の画像素材を仮想描画空間の所定位置に配置するためのSPRITEコマンドなどのプリミティブ描画系コマンドと、描画系コマンドによって仮想描画空間に描画された画像のうち、実際に表示装置に描画する描画領域を特定するためのSETDAVR コマンドやSETDAVF コマンドなどの環境設定コマンドと、インデックス空間を管理するインデックステーブルIDXTBLに関するインデックステーブル制御系コマンド(WRIDXTBL)が含まれる。 The work memory (RAM) 57 has a DL buffer BUF that temporarily stores a display list DL in which a series of instruction commands for specifying one frame each of the display devices DS1 and DS2 is written. In the case of this embodiment, the series of instruction commands includes texture loading commands such as the TXLOAD command for reading and decoding (expanding) image materials (textures) from the CGROM 55, and the VRAM area (index) to be decoded (expanded). texture setting commands such as the SETINDEX command, which has functions such as specifying a space in advance, and primitive drawing commands such as the SPRITE command, which places the decoded (expanded) image material at a predetermined position in the virtual drawing space. , environment setting commands such as the SETDAVR command and SETDAVF command for specifying the drawing area to be actually drawn on the display device among images drawn in the virtual drawing space by drawing commands, and the index table IDXTBL for managing the index space. Contains index table control commands (WRIDXTBL) related to

なお、図11(c)には、仮想描画空間(水平X方向±8192:垂直Y方向±8192)と、仮想描画空間の中で任意に設定可能な描画領域と、表示装置DS1,DS2に出力する画像データを一次保存するフレームバッファFBa,FBbにおける実描画領域と、の関係が図示されている。 Note that FIG. 11(c) shows a virtual drawing space (horizontal X direction ±8192: vertical Y direction ±8192), a drawing area that can be set arbitrarily in the virtual drawing space, and output to display devices DS1 and DS2. The relationship between the actual drawing areas in the frame buffers FBa and FBb that temporarily store image data is illustrated.

次に、CPU回路51は、汎用のワンチップマイコンと同等の性能を有する回路であり、制御メモリ53の制御プログラムに基づき画像演出を統括的に制御する演出制御CPU63と、プログラムが暴走状態になるとCPUを強制リセットするウォッチドッグタイマ(WDT)と、16kバイト程度の記憶容量を有してCPUの作業領域として使用される内蔵RAM59と、CPU63を経由しないでデータ転送を実現するDMAC(Direct Memory Access Controller )60と、複数の入力ポートSi及び出力ポートSoを有するシリアル入出力ポート(SIO)61と、複数の入力ポートPi及び出力ポートPoを有するパラレル入出力ポート(PIO)62と、前記各部の動作を制御するべく設定値が設定される動作制御レジスタREGなどを有して構成されている。但し、外付けのWDT回路58を設けた本実施例では、CPU回路51に内蔵されたウォッチドッグタイマ(WDT)を活用していない。 Next, the CPU circuit 51 is a circuit that has the same performance as a general-purpose one-chip microcomputer, and is connected to a production control CPU 63 that centrally controls image production based on the control program in the control memory 53. A watchdog timer (WDT) that forcibly resets the CPU, a built-in RAM 59 that has a storage capacity of about 16 kbytes and is used as a work area for the CPU, and a DMAC (Direct Memory Access) that realizes data transfer without going through the CPU 63. A serial input/output port (SIO) 61 having a plurality of input ports Si and an output port So, a parallel input/output port (PIO) 62 having a plurality of input ports Pi and output ports Po, It is configured to include an operation control register REG, etc., in which set values are set to control the operation. However, in this embodiment in which an external WDT circuit 58 is provided, the watchdog timer (WDT) built into the CPU circuit 51 is not utilized.

なお、本明細書では、便宜上、入出力ポートとの表現を使用するが、演出制御部23において、入出力ポートには、独立して動作する入力ポートと出力ポートとが含まれている。この点は、以下に説明する入出力回路64pや入出力回路64sについても同様である。 In this specification, for convenience, the expression "input/output port" is used, but in the production control section 23, the input/output port includes an input port and an output port that operate independently. This point also applies to the input/output circuit 64p and input/output circuit 64s described below.

パラレル入出力ポート62は、入出力回路64pを通して外部機器(演出インタフェイス基板22)に接続されており、演出制御CPU63は、入力回路64pを経由して、音量スイッチVLSWのエンコーダ出力3bitと、チャンスボタン11のスイッチ信号と、制御コマンドCMDと、割込み信号STBと、を受信するようになっている。エンコーダ出力3bitと、スイッチ信号1bitは、入出力回路64pを経由して、パラレル入出力ポート(PIO)62に供給されている。 The parallel input/output port 62 is connected to an external device (the production interface board 22) through the input/output circuit 64p, and the production control CPU 63 inputs the 3-bit encoder output of the volume switch VLSW and the chance output via the input circuit 64p. The switch signal of the button 11, the control command CMD, and the interrupt signal STB are received. The 3-bit encoder output and 1-bit switch signal are supplied to the parallel input/output port (PIO) 62 via the input/output circuit 64p.

同様に、受信した制御コマンドCMDは、入出力回路64pを経由して、パラレル入出力ポート(PIO)62に供給されている。また、ストローブ信号STBは、入出力回路64pを経由して、演出制御CPU63の割込み端子に供給されることで、受信割込み処理を起動させている。したがって、受信割込み処理に基づいて、制御コマンドCMDを把握した演出制御CPU63は、演出抽選などを経て、この制御コマンドCMDに対応する音声演出、ランプ演出、モータ演出、及び画像演出を統一的に制御することになる。 Similarly, the received control command CMD is supplied to the parallel input/output port (PIO) 62 via the input/output circuit 64p. Further, the strobe signal STB is supplied to the interrupt terminal of the production control CPU 63 via the input/output circuit 64p, thereby starting the reception interrupt process. Therefore, the performance control CPU 63, which has grasped the control command CMD based on the reception interrupt processing, uniformly controls the audio performance, lamp performance, motor performance, and image performance corresponding to this control command CMD through a performance lottery or the like. I will do it.

特に限定されないが、本実施例では、ランプ演出とモータ演出のために、VDP回路52のSMC部(Serial Management Controller)78を使用している。SMC部78は、LEDコントローラとMotorコントローラと、を内蔵した複合コントコントローラであり、クロック同期方式でシリアル信号を出力できるよう構成されている。また、Motorコントローラは、所定の制御レジスタ70への設定値に基づき、任意のタイミングでラッチパルスを出力可能に構成され、また、クロック同期方式でシリアル信号を入力可能に構成されている。 Although not particularly limited, in this embodiment, an SMC section (Serial Management Controller) 78 of the VDP circuit 52 is used for lamp effects and motor effects. The SMC unit 78 is a composite controller that includes an LED controller and a motor controller, and is configured to output serial signals in a clock synchronous manner. Further, the Motor controller is configured to be able to output a latch pulse at any timing based on a set value to a predetermined control register 70, and is also configured to be able to input a serial signal in a clock synchronized manner.

そこで、本実施例では、クロック信号に同期してモータ駆動信号やLED駆動信号を、SMC部78から出力させる一方、適宜なタイミングで、ラッチパルスを、動作制御信号ENABLEとして出力するようにしている。また、演出モータ群M1~Mnからの原点センサ信号SN0~SNnをクロック同期方式でシリアル入力するよう構成されている。 Therefore, in this embodiment, the motor drive signal and the LED drive signal are outputted from the SMC section 78 in synchronization with the clock signal, while the latch pulse is outputted as the operation control signal ENABLE at an appropriate timing. . Further, it is configured to serially input the origin sensor signals SN0 to SNn from the effect motor groups M1 to Mn in a clock synchronized manner.

図6(a)に関して説明した通り、クロック信号CK0~CK2、駆動信号SDATA0~SDATA2、及び、動作制御信号ENABLE0~ENABLE2は、出力バッファ41~43を経由して、所定の駆動基板30,31,37に伝送される。また、原点センサ信号SN0~SNnは、モータランプ駆動基板31から入出力バッファ43を経由して、SMC部78にシリアル入力される。 As explained in connection with FIG. 6(a), the clock signals CK0 to CK2, the drive signals SDATA0 to SDATA2, and the operation control signals ENABLE0 to ENABLE2 are sent to the predetermined drive boards 30, 31, 37. Further, the origin sensor signals SN0 to SNn are serially inputted from the motor lamp drive board 31 to the SMC unit 78 via the input/output buffer 43.

但し、本実施例において、SMC部78を使用することは必須ではない。すなわち、CPU回路51には、汎用のシリアル入出力ポートSIO61が内蔵されているので、これらを使用して、ランプ演出とモータ演出を実行することもできる。 However, in this embodiment, it is not essential to use the SMC unit 78. That is, since the CPU circuit 51 has a built-in general-purpose serial input/output port SIO 61, these can be used to perform lamp effects and motor effects.

具体的には、図7(a)の破線に示す通りであり、破線で示す構成では、シリアル入出力ポートSIO61に内部接続されている入出力回路64sを経由して、クロック信号CK0~CK2、駆動信号SDATA0~SDATA2が出力され、入出力回路64pを経由して動作制御信号ENABLE0~ENABLE2が出力される。なお、便宜上、入出力ポートや入出力回路と表現するが、実際に機能するのは、出力ポートや出力回路である。 Specifically, as shown by the broken line in FIG. 7(a), in the configuration shown by the broken line, the clock signals CK0 to CK2, Drive signals SDATA0 to SDATA2 are output, and operation control signals ENABLE0 to ENABLE2 are output via the input/output circuit 64p. For convenience, it is expressed as an input/output port or an input/output circuit, but what actually functions is an output port or an output circuit.

ここで、シリアル出力ポートSOは、16段のFIFOレジスタを内蔵して構成されている。そして、DMAC回路60は、演出制御CPU63から動作開始指示(図20(b)ST18参照)を受けて起動し、ランプ/モータ駆動テーブル(図20(b)参照)から、必要な駆動テータを順番に読み出し、シリアル出力ポートSOのFIFOレジスタにDMA転送するよう構成されている。FIFOレジスタに蓄積された駆動データは、クロック同期方式でシリアル出力ポートSOからシリアル出力される。なお、DMAC回路には、複数(例えば7)のDMAチャネルが存在するが、優先度に劣る第3のDMAチャネルでランプ駆動データをDMA転送し、最優先度の第1のDMAチャネルでモータ駆動データをDMA転送するよう構成されている。 Here, the serial output port SO is configured to include a 16-stage FIFO register. Then, the DMAC circuit 60 receives an operation start instruction from the production control CPU 63 (see ST18 in FIG. 20(b)), starts up, and sequentially inputs the necessary drive data from the lamp/motor drive table (see FIG. 20(b)). It is configured to read the data and transfer it by DMA to the FIFO register of the serial output port SO. The drive data accumulated in the FIFO register is serially output from the serial output port SO in a clock synchronous manner. Note that the DMAC circuit has multiple (for example, 7) DMA channels, but the third DMA channel with lower priority transfers the lamp drive data by DMA, and the first DMA channel with the highest priority transfers the motor drive data. It is configured to perform DMA transfer of data.

CPU回路51に内蔵された動作制御レジスタREGは、レジス番号(アドレス値)が0xFF400000以降に付番された8bit、16bit、又は32bit長のレジスタであり、演出制御CPU63から適宜にWRITE/READアクセス可能に構成されている(図9参照)。そのためノイズなどの影響で、動作制御レジスタREGに、不合理な値に設定される可能性がある。 The operation control register REG built into the CPU circuit 51 is an 8-bit, 16-bit, or 32-bit long register whose register number (address value) is numbered after 0xFF400000, and can be accessed by WRITE/READ from the production control CPU 63 as appropriate. (See Figure 9). Therefore, the operation control register REG may be set to an unreasonable value due to noise or the like.

但し、例えば、意図的に無限ループ処理を実行させて外付けのWDT回路58を起動させることで、複合チップ50を異常リセットすることができる。この場合、動作制御レジスタREGの値が、電源投入後と同じデフォルト値(初期値)に戻され、且つ、VDP回路52についても、VDPレジスタRGijの値が、デフォルト値(初期値)に戻されることで異常状態が解消される。 However, for example, the composite chip 50 can be abnormally reset by intentionally executing infinite loop processing and activating the external WDT circuit 58. In this case, the value of the operation control register REG is returned to the same default value (initial value) as after the power is turned on, and the value of the VDP register RGij of the VDP circuit 52 is also returned to the default value (initial value). This will resolve the abnormal condition.

図6(b)は、このリセット動作に関連する回路構成であって、本実施例に特徴的なリセット機構を説明する図面である。なお、本明細書において、RGijと表記するVDPレジスタは、CPU回路51に内蔵された動作制御レジスタREGではなく、VDP回路52の内部動作を制御する制御レジスタ群70(図9参照)の何れかを意味する。また、図6(b)に示すシステム制御回路520とは、VDPレジスタRGij(図9の制御レジスタ群70の何れか)への設定値に基づいて機能するVDP回路52の内部制御回路を意味する(図6(a)参照)。なお、VDPレジスタRGijは、演出制御CPU63のアドレスマップにおいて、チップセレクト信号CS7で選択されるアドレス空間CS7に位置付けられる。 FIG. 6(b) is a circuit configuration related to this reset operation, and is a diagram illustrating a reset mechanism that is characteristic of this embodiment. Note that in this specification, the VDP register expressed as RGij is not the operation control register REG built into the CPU circuit 51, but any one of the control register group 70 (see FIG. 9) that controls the internal operation of the VDP circuit 52. means. Furthermore, the system control circuit 520 shown in FIG. 6(b) means an internal control circuit of the VDP circuit 52 that functions based on the set value to the VDP register RGij (any of the control register group 70 in FIG. 9). (See FIG. 6(a)). Note that the VDP register RGij is located in the address space CS7 selected by the chip select signal CS7 in the address map of the production control CPU 63.

以上を踏まえてリセット機構について説明すると、図6(b)に示す通り、複合チップ50は、論理反転されたシステムリセット信号SYSバーを受ける3個のORゲートG2~G4を経由して、内部回路がリセット可能に構成されている。但し、本実施例では、破線で示すように、内蔵WDTを有効化しないので、ORゲートG2の入端子と出力端子は、直結状態となる。 To explain the reset mechanism based on the above, as shown in FIG. 6(b), the composite chip 50 receives the internal circuit through three OR gates G2 to G4 that receive the logically inverted system reset signal SYS bar. is configured to be resettable. However, in this embodiment, as shown by the broken line, the built-in WDT is not enabled, so the input terminal and output terminal of OR gate G2 are directly connected.

何れにしても、CPU回路51とVDP回路52の間に、パターンチェック回路CHKが設けられ、パターンチェック回路CHKは、パラレル入出力ポート(PIO)62から、所定のキーワード列(リセット用の暗号列)を受けることを条件に、リセット信号RSTを出力するよう構成されている。 In any case, a pattern check circuit CHK is provided between the CPU circuit 51 and the VDP circuit 52, and the pattern check circuit CHK receives a predetermined keyword string (a code string for reset) from the parallel input/output port (PIO) 62. ) is configured to output a reset signal RST.

そして、複合チップ50の内部回路は、(1)CPU回路51と、(2)VDP回路52の表示回路74と、(3)VDP回路52における表示回路以外とに三分されて、各々、ORゲートG2~G4から第1リセット経路~第3リセット経路のリセット信号を受けるよう構成されている。 The internal circuit of the composite chip 50 is divided into three parts: (1) the CPU circuit 51, (2) the display circuit 74 of the VDP circuit 52, and (3) the circuit other than the display circuit in the VDP circuit 52. It is configured to receive reset signals from the first to third reset paths from the gates G2 to G4.

先ず、入出力端子が直結状態のORゲートG2は、第1リセット経路に関連しており、システムリセット信号SYSバーに基づき、CPU回路51の全体をシステムリセットされるように構成されている。また、ORゲートG3は、第2リセット経路に関連しており、システムリセット信号SYSバーと、パターンチェック回路CHKからのリセット信号RSTとを受けて、OR論理に基づき、VDP回路52全体をリセット可能に構成されている。 First, the OR gate G2, whose input and output terminals are directly connected, is associated with the first reset path, and is configured so that the entire CPU circuit 51 is system reset based on the system reset signal SYS bar. Further, the OR gate G3 is related to the second reset path, and can reset the entire VDP circuit 52 based on OR logic upon receiving the system reset signal SYS bar and the reset signal RST from the pattern check circuit CHK. It is composed of

この第2リセット経路は、電源投入時の電源リセット動作だけでなく、所定の異常を検出した演出制御CPU63が、VDP回路52の全体を異常リセットして初期状態に戻す用途で使用される。具体的には、VDP回路52の内部動作を示す所定のステイタスレジスタRGijに基づき、重大な異常が発生していると判断される場合には、パターンチェック回路CHKからリセット信号RSTを発生させることで、VDP回路52の全体を異常リセットしている。なお、表示回路74は、ORゲートG4を経由して、第2リセット経路→第3リセット経路で異常リセットされる。 This second reset path is used not only for the power reset operation when the power is turned on, but also for the performance control CPU 63, which detects a predetermined abnormality, to reset the entire VDP circuit 52 to the initial state. Specifically, if it is determined that a serious abnormality has occurred based on a predetermined status register RGij indicating the internal operation of the VDP circuit 52, a reset signal RST is generated from the pattern check circuit CHK. , the entire VDP circuit 52 is abnormally reset. Note that the display circuit 74 is abnormally reset via the OR gate G4 via the second reset path→the third reset path.

一方、VDP回路52に内蔵された内部回路は、第4リセット経路で、必要時に個々的にリセットすることも可能に構成されている。個々的にリセット可能な内部回路には、図7(a)に示すインデックステーブルIDXTBL、データ転送回路72、プリローダ73、表示回路74、描画回路76、SMC回路78、及び、音声回路SNDや、図12に示すICM回路が含まれている。 On the other hand, the internal circuits built into the VDP circuit 52 are configured so that they can be individually reset when necessary via a fourth reset path. Internal circuits that can be reset individually include the index table IDXTBL, data transfer circuit 72, preloader 73, display circuit 74, drawing circuit 76, SMC circuit 78, and audio circuit SND shown in FIG. 12 is included.

個別的なリセット動作を実現する手法は、図6(b)の下部に記載の通りであり、例えば、表示回路74は、所定のVDPレジスタRGij(システムコマンドレジスタ)に、第1リセット値を書き込むことで、第4リセット経路4A→第3リセット経路を経てリセットされる。 The method of realizing the individual reset operation is as described at the bottom of FIG. 6(b). For example, the display circuit 74 writes the first reset value to a predetermined VDP register RGij (system command register). As a result, it is reset via the fourth reset path 4A→the third reset path.

また、VDP回路52の各内部回路(72,73,74,76,SND,・・・)は、(1)第1のVDPレジスタRGij(リセットRQレジスタ)に、対象回路を特定する設定値を書き込んだ後、(2)所定のVDPレジスタRGij(システムコマンドレジスタ)に、第2リセット値を書き込むことで、個々的にリセットされる(第4リセット経路4B)。なお、この実施例では使用しないが、音声回路SNDは、第4リセット経路4Bによるリセットだけでなく、所定のVDPレジスタ(回路設定コマンドレジスタ)に、リセット値を書き込むことでもリセット可能である(第4リセット経路4C)。 In addition, each internal circuit (72, 73, 74, 76, SND, ...) of the VDP circuit 52 (1) sets a setting value that specifies the target circuit in the first VDP register RGij (reset RQ register). After writing, (2) the second reset value is written in a predetermined VDP register RGij (system command register) to be individually reset (fourth reset path 4B). Although not used in this embodiment, the audio circuit SND can be reset not only by resetting via the fourth reset path 4B but also by writing a reset value to a predetermined VDP register (circuit setting command register). 4 reset path 4C).

本実施例は、上記の構成を有するので、電源投入時やプログラム暴走時に、VDP回路52全体が自動的に初期状態に戻るだけでなく、必要に応じて、各部を初期状態に戻して異常事態の回復を図ることができる。例えば、一定期間、内蔵VRAM71に対してREAD/WRITE アクセスがない描画回路76のフリーズ時には、第4リセット経路4Bを経由して描画回路76が個別的に初期化される(図20(d)のST16a参照)。プリローダ73やデータ転送回路72についても、ほぼ同様であり、所定の異常時には、第4リセット経路4Bを経由してプリローダ73が初期化され(図27のST27参照)、第4リセット経路4Bを経由してデータ転送回路72が初期化される(図22や図27のST27参照)。 Since this embodiment has the above configuration, not only the entire VDP circuit 52 automatically returns to the initial state when the power is turned on or a program runs out of control, but also each part is returned to the initial state as necessary to prevent abnormal situations. recovery can be achieved. For example, when the drawing circuit 76 freezes with no READ/WRITE access to the built-in VRAM 71 for a certain period of time, the drawing circuit 76 is individually initialized via the fourth reset path 4B (see FIG. 20(d)). (See ST16a). The same applies to the preloader 73 and the data transfer circuit 72, and in the event of a predetermined abnormality, the preloader 73 is initialized via the fourth reset path 4B (see ST27 in FIG. 27), and the preloader 73 is initialized via the fourth reset path 4B. The data transfer circuit 72 is initialized (see ST27 in FIGS. 22 and 27).

また、表示回路74については、1/60秒毎の表示タイミングに、表示データの生成が間に合わないアンダーラン(Underrun)異常が続くような場合に、第4リセット経路4A又は第4リセット経路4Bを経由して、表示回路74が個別的に初期化される(図20のST10c参照)。なお、これら個別的なリセット動作については、図20以降に記載したプログラム処理に関して更に後述する。 In addition, regarding the display circuit 74, if an underrun abnormality continues in which display data cannot be generated in time at the display timing of every 1/60 seconds, the fourth reset path 4A or the fourth reset path 4B is activated. The display circuit 74 is individually initialized via the process (see ST10c in FIG. 20). Note that these individual reset operations will be further described later with respect to the program processing described from FIG. 20 onwards.

以上、本実施例に特徴的なリセット機構について説明したが、何れかのリセット経路1~4が機能して、複合チップ50の内部回路がリセットされると、その内部回路に対応するVDPレジスタRGijの設定値は、電源投入後と同じデフォルト値に戻る。 The reset mechanism characteristic of this embodiment has been described above. When any of the reset paths 1 to 4 functions and the internal circuit of the composite chip 50 is reset, the VDP register RGij corresponding to the internal circuit is reset. The setting value returns to the same default value after power-on.

続いて、CPU回路51の内部構成に戻って、特徴的な回路構成の説明を続ける。図8は、CPU回路51の内部構成をやや詳細に示すブロック図である。CPU回路51は、先に説明した内蔵RAM59、DMAC回路60、SIO61、PIO62、WDT以外にも、多くの特徴的な回路を含んで構成されている。 Next, returning to the internal configuration of the CPU circuit 51, description of the characteristic circuit configuration will be continued. FIG. 8 is a block diagram showing the internal configuration of the CPU circuit 51 in slightly more detail. The CPU circuit 51 is configured to include many characteristic circuits in addition to the built-in RAM 59, DMAC circuit 60, SIO 61, PIO 62, and WDT described above.

先ず第1に、CPU回路51は、命令用のCPUフェッチバスと、データ用のCPUメモリアクセスバスとを別々に有してハーバード・アーキテクチャを実現している。そのため、CPUコア(演出制御CPU)63が命令をメモリから読むフェッチ動作と、メモリアクセス動作とが競合せず、フェッチ動作を連続させることで高速処理を実現している。 First, the CPU circuit 51 implements the Harvard architecture by separately having a CPU fetch bus for instructions and a CPU memory access bus for data. Therefore, the fetch operation in which the CPU core (performance control CPU) 63 reads instructions from the memory does not conflict with the memory access operation, and high-speed processing is achieved by making the fetch operations consecutive.

また、CPUコア63は、複数個(例えば15個)のレジスタバンクRB0~RB14を有して構成されており、その使用の有無を選択できるよう構成されている。そして、レジスタバンクRBiの使用を許可した動作状態では、割込み処理の開始時に、CPUの内蔵レジスタ(例えば19個)のレジスタ値(各32bit長)が、空き状態のレジスタバンクRBiに自動的に退避される。 Further, the CPU core 63 is configured to include a plurality of (for example, 15) register banks RB0 to RB14, and is configured to be able to select whether or not to use them. In an operating state in which the use of register bank RBi is permitted, at the start of interrupt processing, the register values (each 32 bits long) of the CPU's built-in registers (for example, 19) are automatically saved to an empty register bank RBi. be done.

また、割込み処理の終了時に所定の復帰命令を実行すると、例えば19個の退避データが、対応する内蔵レジスタに自動的に復帰される。したがって、通常の構成のように、割込み処理の開始時にPUSH命令を19回実行し、割込み処理の終了時にPOP命令を19回実行する手間が不要となり、高速処理が実現される。 Further, when a predetermined return instruction is executed at the end of interrupt processing, for example, 19 pieces of saved data are automatically returned to the corresponding built-in registers. Therefore, there is no need to execute the PUSH instruction 19 times at the start of interrupt processing and the POP instruction 19 times at the end of the interrupt processing, as in the normal configuration, and high-speed processing is realized.

また、実施例のCPU回路51は、命令キャッシュメモリ67と、オペランドキャッシュメモリ89と、キャッシュコントローラ69とを設けることで、ハーバードキャッシュ動作を実現しており、同一アドレスをアクセスする場合に、キャッシュ済みのデータを活用することでプログラム処理の更なる高速化を図っている。なお、バスブリッジ65と、周辺バス(1) 用のコントローラ、周辺バス(2) 用のコントローラ、及び、周辺バス(3) 用のコントローラとが設けられることで、内部バスと、周辺バス(1) 、周辺バス(2) 、及び周辺バス(3) とを適宜に接続している。 Further, the CPU circuit 51 of the embodiment realizes Harvard cache operation by providing an instruction cache memory 67, an operand cache memory 89, and a cache controller 69. By utilizing this data, we aim to further speed up program processing. Note that by providing the bus bridge 65, a controller for the peripheral bus (1), a controller for the peripheral bus (2), and a controller for the peripheral bus (3), the internal bus and the peripheral bus (1) are provided. ), peripheral bus (2), and peripheral bus (3) as appropriate.

次に、図8の回路構成において、バスステートコントローラ66は、動作制御レジスタREGへの適宜な設定値に基づいて動作して、CPU回路51に接続された各種メモリデバイスとのメモリREAD動作やメモリWRITE 動作を最適化する部分である。メモリREAD動作やメモリWRITE 動作は、例えば、図38に例示した動作タイミングで実行されるが、アドレスバス(28Bit )から出力されるアドレスデータと、READデータバス(32Bit )に読み出されるREADデータと、WRITE データバス(32Bit )に書き出されるWRITE データと、チップセレクト信号CS0~CS7などの制御信号との動作タイミングが、動作制御レジスタREGへの設定値に基づいて、各メモリデバイスの特性に対応して適宜に規定される。 Next, in the circuit configuration of FIG. 8, the bus state controller 66 operates based on the appropriate setting value to the operation control register REG, and performs memory READ operations with various memory devices connected to the CPU circuit 51. This is the part that optimizes WRITE operations. The memory READ operation and the memory WRITE operation are executed, for example, at the operation timing illustrated in FIG. The operation timing of WRITE data written to the WRITE data bus (32Bit) and control signals such as chip select signals CS0 to CS7 is based on the setting value to the operation control register REG and corresponds to the characteristics of each memory device. As appropriate.

READデータバスとWRITE データバスが別々に設けられているので、上記したハーバード・アーキテクチャによる高速動作が実現される。なお、本明細書では、アドレスバス(28Bit )、READデータバス(32Bit )、及び、WRITE データバス(32Bit )について、図8に示す内部バスや、周辺バス(1) ~周辺バス(3) などと区別する意味で、外部バスと総称することがある。 Since the READ data bus and WRITE data bus are provided separately, high-speed operation according to the Harvard architecture described above is realized. In this specification, the address bus (28Bit), READ data bus (32Bit), and WRITE data bus (32Bit) are referred to as internal buses shown in FIG. 8, peripheral buses (1) to peripheral buses (3), etc. It is sometimes collectively referred to as an external bus to distinguish it from the external bus.

図9は、チップセレクト信号CS0~CS7によって選択されるアドレス空間CS0~CS7を図示したものであり、バスステートコントローラ66を経由してアクセスされる演出制御CPU63にとってのアドレスマップを図示したものである。先ず、各アドレス空間CS0~CS7は、何れも、最大64Mバイトに(=0x4000000H=67108864)に規定されている。 FIG. 9 illustrates the address spaces CS0 to CS7 selected by the chip select signals CS0 to CS7, and illustrates the address map for the performance control CPU 63 accessed via the bus state controller 66. . First, each address space CS0 to CS7 is defined to have a maximum of 64 Mbytes (=0x4000000H=67108864).

先に説明した通り、アドレス空間CS0~CS7とは、揮発性の有無を含むメモリ種別や、データバス幅(8/16/32ビット)を、各々、規定可能なCPU回路51にとって外部メモリを意味する。そして、本実施例では、図8(b)や図9に示す通り、制御メモリ(PROM)53がアドレス空間CS0、音声プロセッサ27の音声制御レジスタSRGがアドレス空間CS3、時計回路38の内部レジスタやSRAM39がアドレス空間CS4、外付けDRAM(DDR)54がアドレス空間CS5、ワークメモリ57がアドレス空間CS6、VDPレジスタRGijがアドレス空間CS7に位置付けられている。なお、アドレス空間CS1,CS2についての説明は省略する。 As explained above, the address spaces CS0 to CS7 refer to external memories for the CPU circuit 51, which can specify the memory type, including whether or not it is volatile, and the data bus width (8/16/32 bits), respectively. do. In this embodiment, as shown in FIG. 8(b) and FIG. The SRAM 39 is located in address space CS4, the external DRAM (DDR) 54 is located in address space CS5, the work memory 57 is located in address space CS6, and the VDP register RGij is located in address space CS7. Note that a description of the address spaces CS1 and CS2 will be omitted.

ところで、図9から確認される通り、アドレス空間CS0~CS7は、アドレス値0x00000000~0x1FFFFFFF(キャッシュ有効空間)だけでなく、アドレス値0x20000000~0x3FFFFFFF(キャッシュ無効空間)にも確保されている。これは、アドレスビットA29=1のときには、CPU回路51の内部動作に基づいて、キャッシュ無効とする一方、アドレスビットA29=0のときにキャッシュ有効とすることで、キャッシュ機能の活用を任意選択できるようにしたものである。 By the way, as confirmed from FIG. 9, address spaces CS0 to CS7 are reserved not only for address values 0x00000000 to 0x1FFFFFFF (cache valid space) but also for address values 0x20000000 to 0x3FFFFFFF (cache invalid space). This means that when address bit A29=1, the cache is disabled based on the internal operation of the CPU circuit 51, while when address bit A29=0, the cache is enabled, so that the utilization of the cache function can be arbitrarily selected. This is how it was done.

そのため、本実施例では、全32bitのアドレス情報(ビットA31~A0)のうち、ビットA29の値が1又は0の何れであっても、残り31bit(ビットA31~A30とビットA28~A0)の値が同じであれば、同一のメモリの同一番地を指示することになる。例えば、0x18000000番地をREADアクセスしても、0x38000000番地をREADアクセスしても,ワークメモリ57のゼロ番地から同一データが読み出されることになる。なお、0x18000000番地をREADアクセスした場合には、読み出したデータがキャッシュに保存されるが、図8(b)は、キャッシュ有効/無効のアクセス動作を図示している。 Therefore, in this embodiment, even if the value of bit A29 of the total 32 bits of address information (bits A31 to A0) is 1 or 0, the remaining 31 bits (bits A31 to A30 and bits A28 to A0) If the values are the same, they point to the same location in the same memory. For example, whether the address 0x18000000 is accessed by READ or the address 0x38000000 is accessed by READ, the same data will be read from address zero of the work memory 57. Note that when the address 0x18000000 is accessed by READ, the read data is stored in the cache, and FIG. 8(b) illustrates the access operation to enable/disable the cache.

もっとも、所定の動作制御レジスタREGへの設定値に基づいて、命令キャッシュ及び/又はオペランドキャッシュについて、キャッシュ動作を無効化することもできる。但し、本実施例では、電源投入後、命令キャッシュ及びオペランドキャッシュについて、キャッシュ動作を有効化した上で、必要に応じて、キャッシュ無効空間をアクセスすることで、キャッシュ動作を無効化している。 However, it is also possible to disable the cache operation of the instruction cache and/or operand cache based on the set value to a predetermined operation control register REG. However, in this embodiment, after the power is turned on, cache operations are enabled for the instruction cache and operand cache, and then the cache operations are disabled by accessing the cache invalid space as necessary.

図9のメモリマップについて説明を続けると、0x40000000番地以降は、バスステートコントローラ66が機能しない内部メモリ空間であって、0xF0000000番地~0xFF3FFFFF番地は、キャッシュのアドレスアレイ空間に割り当てられている。また、0xFF400000番地~0xFFF7FFFF番地と、0xFFFC0000番地~0xFFFFFFFF番地は、内蔵周辺モジュールに割り当てられ、具体的には、CPU回路の動作制御レジスタREGに割り当てられている。なお、内蔵RAM59のアドレス範囲は、0xFFF80000~0xFFFBFFFFである。 Continuing with the explanation of the memory map in FIG. 9, the area after address 0x40000000 is an internal memory space in which the bus state controller 66 does not function, and addresses 0xF0000000 to 0xFF3FFFFF are allocated to the address array space of the cache. Furthermore, addresses 0xFF400000 to 0xFFF7FFFF and addresses 0xFFFC0000 to 0xFFFFFFFF are allocated to built-in peripheral modules, and specifically, to the operation control register REG of the CPU circuit. Note that the address range of the built-in RAM 59 is 0xFFF80000 to 0xFFFBFFFF.

CPU回路51の内部構成について説明を続けると、コンペアマッチタイマCMTと、マルチファンクションタイマユニットMTUは、CPU回路51に供給される外部信号をカウントしたり、或いは、内部クロックを逓倍又は分周した計数クロックをカウントして、カウント結果が所定値に達すると、割込み信号などを発生する回路である。特に限定されないが、本実施例では、マルチファンクションタイマユニットMTUを活用して、1mS割込み信号と、20μS割込み信号を発生させている。 Continuing with the explanation of the internal configuration of the CPU circuit 51, the compare match timer CMT and the multi-function timer unit MTU count external signals supplied to the CPU circuit 51, or count by multiplying or dividing the internal clock. This circuit counts clocks and generates an interrupt signal when the count reaches a predetermined value. Although not particularly limited, in this embodiment, the multi-function timer unit MTU is utilized to generate a 1 mS interrupt signal and a 20 μS interrupt signal.

次に、割込みコントローラINTCは、VDP回路52やDMAC回路60やマルチファンクションタイマユニットMTUなどからの内部割込みと、IRQ_CMD 、IRQ_SND 、IRQ_RCT などの外部割込みを受けて、予め規定されている優先順位に基づいて、割込み処理(割込みハンドラ)を起動させる回路である。ここで、IRQ_CMD は、制御コマンドCMDを受信すべきコマンド受信割込み信号、IRQ_SND は、音声プロセッサ27が初期化シーケンスを終えたことを示す終了割込み信号、IRQ_RCT は、アラーム割込み信号である。 Next, the interrupt controller INTC receives internal interrupts from the VDP circuit 52, DMAC circuit 60, multi-function timer unit MTU, etc., and external interrupts such as IRQ_CMD, IRQ_SND, and IRQ_RCT, based on predefined priorities. This is a circuit that starts interrupt processing (interrupt handler). Here, IRQ_CMD is a command reception interrupt signal for receiving the control command CMD, IRQ_SND is an end interrupt signal indicating that the audio processor 27 has finished the initialization sequence, and IRQ_RCT is an alarm interrupt signal.

そして、本実施例では、割込み優先度は、コマンド受信割込みIRQ_CMD が最高レベルであり、以下、20μS割込み→1mS割込み→VDP回路からの割込み(IRQ0,IRQ1,IRQ2,IRQ3)→DMAC割込み→IRQ_SND →IRQ_RCT の順になっている(図17(d)参照)。なお、これらは何れも、マスク可能な割込みであり、マスク不能な割込みNMIは、先に説明した通り、発振器OSC2からリファレンスクロックが出力されていない場合に演出制御CPU63に出力される。 In this embodiment, the command reception interrupt IRQ_CMD has the highest level of interrupt priority, and the order of priority is as follows: 20 μS interrupt → 1 mS interrupt → interrupt from the VDP circuit (IRQ0, IRQ1, IRQ2, IRQ3) → DMAC interrupt → IRQ_SND → The order is IRQ_RCT (see Figure 17(d)). All of these are maskable interrupts, and the non-maskable interrupt NMI is output to the performance control CPU 63 when the reference clock is not output from the oscillator OSC2, as described above.

そして、何れの割込み処理でも、CPUの複数の内蔵レジスタのレジスタ値(各32bit長)は、空き状態の何れかのレジスタバンクRBiに、自動的に退避される。そして、割込み処理の最後に所定の復帰命令を実行すると、退避データが、対応する内蔵レジスタに自動的に復帰される。 In any interrupt processing, the register values (each having a length of 32 bits) of the plurality of built-in registers of the CPU are automatically saved to one of the vacant register banks RBi. Then, when a predetermined return instruction is executed at the end of the interrupt processing, the saved data is automatically returned to the corresponding built-in register.

続いて、DMAC回路60について説明する。実施例のDMAC回路60は、所定の動作制御レジスタREGへの設定値に基づいて、転送元(Source)から転送先(Destination )に対して、所定のDMA転送モードで、所定のデータ転送単位毎に、所定回数、データ転送を繰り返す回路である。なお、同一の内部構成を有する複数チャネルのDMAC0~DMACnが用意されており、並列的に動作可能となっている。但し、優先度が決まっており(チャネル0>・・・>チャネルn)、チャネル調停動作モードの並列動作時には、所定タイミングでのチャネル調停によって優先度の高いDMACiの動作が優先される。 Next, the DMAC circuit 60 will be explained. The DMAC circuit 60 of the embodiment performs data transfer from a transfer source (Source) to a transfer destination (Destination) in a predetermined DMA transfer mode every predetermined data transfer unit based on the set value in a predetermined operation control register REG. This is a circuit that repeats data transfer a predetermined number of times. Note that a plurality of channels DMAC0 to DMACn having the same internal configuration are prepared and can operate in parallel. However, the priority is determined (channel 0>...>channel n), and during parallel operation in the channel arbitration operation mode, the operation of DMACi with a higher priority is prioritized by channel arbitration at a predetermined timing.

DMAC回路60の活用としては、例えば、シリアル出力ポートSOが機能する実施例(図9(a)破線部参照)では、CPU回路51の動作制御レジスタREGには、ランプ/モータ駆動テーブルの先頭アドレス(転送元アドレスの先頭値)と、シリアル出力ポートSOの入力レジスタのアドレス(転送先アドレスの固定値)と、データ転送単位(8bit)と、転送回数と、が指定される。そして、所定の動作制御レジスタREGに動作開始指示を受けたDMAC回路60は、転送元アドレスを更新しつつ、所定の転送先アドレスに駆動データをDMA転送する。そして、全てのDMA転送が終われば、DMAC割込み(動作終了割込み)が生じるよう構成されている。 As for the utilization of the DMAC circuit 60, for example, in an embodiment in which the serial output port SO functions (see the broken line in FIG. 9(a)), the operation control register REG of the CPU circuit 51 contains the start address of the lamp/motor drive table. (the leading value of the transfer source address), the address of the input register of the serial output port SO (fixed value of the transfer destination address), the data transfer unit (8 bits), and the number of transfers are specified. Then, the DMAC circuit 60 receives an operation start instruction from a predetermined operation control register REG, and DMA transfers the drive data to a predetermined transfer destination address while updating the transfer source address. When all DMA transfers are completed, a DMAC interrupt (operation end interrupt) is generated.

この点は、ディスプレイリストDLをDMAC回路60が発行する実施例(図23、図27(c))の場合もほぼ同様である。すなわち、演出制御CPU63は、CPU回路51の所定の動作制御レジスタREGに、転送元(DLバッファBUF)の先頭アドレスと、転送先(転送ポートTR_PORT )のアドレスと、DMA転送モードと、データ転送単位と、転送回数、その他の条件を設定することになる。なお、これらの点は、図23に関して更に後述する。 This point is almost the same in the embodiments (FIGS. 23 and 27(c)) in which the DMAC circuit 60 issues the display list DL. That is, the production control CPU 63 stores the start address of the transfer source (DL buffer BUF), the address of the transfer destination (transfer port TR_PORT), the DMA transfer mode, and the data transfer unit in a predetermined operation control register REG of the CPU circuit 51. Then, the number of transfers and other conditions will be set. Note that these points will be further described later with respect to FIG.

ところで、一般に、DMA転送モードには、DMA転送の単位動作(R動作/W動作)の途中でバス制御権を開放するなど、DMA動作がメモリバスを占有しないサイクルスチール転送モードと、複数のR動作やW動作を連続させるなど、指定された転送回数が完了するまでバス制御権を解放しないバースト転送(パイプライン転送)モードと、他のデバイスから受けるDMA転送要求(デマンド)がアクティブの間はDMA動作を継続するデマンド転送モードなどが考えられる。しかし、本実施例のDMAC回路60は、DMA転送時のリードアクセス起動(R動作)とライトアクセス起動(W動作)の間に、少なくとも1サイクルのメモリ開放期間を設けたサイクルスチール転送モードで機能することで、演出制御CPU63の動作に支障が出ないようにしている。 By the way, in general, DMA transfer modes include a cycle steal transfer mode in which the DMA operation does not occupy the memory bus, such as releasing the bus control right in the middle of a DMA transfer unit operation (R operation/W operation), and a cycle steal transfer mode in which the DMA operation does not occupy the memory bus. In burst transfer (pipeline transfer) mode, in which bus control is not released until the specified number of transfers is completed, such as continuous operation or W operation, and while a DMA transfer request (demand) received from another device is active. A demand transfer mode in which DMA operation continues may be considered. However, the DMAC circuit 60 of this embodiment functions in a cycle-steal transfer mode in which a memory release period of at least one cycle is provided between read access activation (R operation) and write access activation (W operation) during DMA transfer. By doing so, the operation of the production control CPU 63 is prevented from being hindered.

図10は、サイクルスチール転送動作(a1)と、パイプライン転送(a2)とを説明する図面である。図10(a1)に示す通り、サイクルスチール転送モードで機能するDMAC回路60は、1データ転送のリードアクセス起動(R)とライトアクセス起動(W)の間に、少なくとも1サイクル空けて動作しており、この空いたサイクルでは、演出制御CPU63のバス使用が可能となる。図10(a1)と図10(a2)の対比関係から明らかなように、パイプライン転送では、一サイクル(一オペランド転送)が終わるまでは、バスがCPUに開放されないのに対して、サイクルスチール転送モードでは、リードアクセス毎に、バスがCPUに開放されるので、CPUの動作が大きく遅れることがない。 FIG. 10 is a diagram illustrating cycle steal transfer operation (a1) and pipeline transfer (a2). As shown in FIG. 10(a1), the DMAC circuit 60 functioning in the cycle-steal transfer mode operates with at least one cycle between read access activation (R) and write access activation (W) of one data transfer. In this vacant cycle, the performance control CPU 63 can use the bus. As is clear from the contrast between FIGS. 10(a1) and 10(a2), in pipeline transfer, the bus is not released to the CPU until one cycle (one operand transfer) is completed, whereas cycle stealth In the transfer mode, the bus is released to the CPU every time a read access is made, so there is no significant delay in the operation of the CPU.

そして、例えば、ディスプレイリストDLのVDP回路52への発行時に、DMAC回路60を使用する実施態様では、一サイクルのデータ転送単位(1オペランド)を、32×2bitに設定し、ディスプレイリストDLが格納されている内蔵RAM59のソースアドレスを適宜に増加しつつ(1オペランド転送毎に+8)、固定アドレスで特定されるデータ転送回路72の転送ポートレジスタTR_PORT (図12参照)に対して、DMA転送動作を実行している。 For example, in an embodiment in which the DMAC circuit 60 is used when issuing the display list DL to the VDP circuit 52, the data transfer unit of one cycle (one operand) is set to 32 x 2 bits, and the display list DL is stored. While appropriately increasing the source address of the built-in RAM 59 (+8 for each operand transfer), the DMA transfer operation is performed for the transfer port register TR_PORT (see FIG. 12) of the data transfer circuit 72 specified by the fixed address. is running.

後述するように、実施例では、ディスプレイリストDLに、必要個数のNOP (no operation)コマンドを付加することで、全体のデータサイズを、固定値(例えば、4×64=256バイト、又はその整数倍)に調整しており、32bit×2回の一オペランド転送を32回(又はその整数倍)繰り返すことで、ディスプレイリストDLの発行を完了させている。なお、描画回路76がNOP コマンドを実行しても、事実上、何の変化も生じない。 As described later, in the embodiment, by adding a required number of NOP (no operation) commands to the display list DL, the total data size is set to a fixed value (for example, 4 x 64 = 256 bytes, or an integer thereof). By repeating one operand transfer of 32 bits x 2 times 32 times (or an integral multiple thereof), issuing the display list DL is completed. Note that even if the drawing circuit 76 executes the NOP command, virtually no change occurs.

また、DMA転送条件に関して動作モードを分類すると、一般に、単一オペランド転送(図10(b1)参照)と、連続オペランド転送(図10(b2)参照)と、ノンストップ転送(図10(b3)参照)とが考えられる。 Furthermore, when classifying the operation modes in terms of DMA transfer conditions, there are generally single operand transfers (see Figure 10 (b1)), continuous operand transfers (see Figure 10 (b2)), and non-stop transfers (see Figure 10 (b3)). ).

ここで、単一オペランド転送とは、図10(b1)に示すように、DMA転送要求が与えられるたびに、1オペランドの転送を繰り返し、転送バイト数をカウントするバイトカウントがゼロになった時点で、DMA割込み要求が生じる動作モードを意味する。次に、連続オペランド転送とは、図10(b2)に示すように、1回のDMA要求で、バイトカウントがゼロになるまでDMA転送を繰り返す動作モードを意味する。 Here, single-operand transfer means, as shown in FIG. 10 (b1), that one operand is transferred repeatedly every time a DMA transfer request is given, and when the byte count that counts the number of transferred bytes reaches zero. This means the operating mode in which a DMA interrupt request occurs. Next, continuous operand transfer means an operation mode in which DMA transfer is repeated with one DMA request until the byte count becomes zero, as shown in FIG. 10(b2).

これら、連続オペランド転送(b2)や単一オペランド転送(b1)では、1オペランド転送が終了するごとにチャネル調停が行われ、優先順位の高いチャネルのDMA要求がないことを条件に、現在のチャネルの転送が継続される(チャネル調停動作モード)。そこで、本実施例では、ディスプレイリストDLのVDP回路への発行や、ランプ駆動データやモータ駆動データのDMA転送は、単一オペランド転送方式を採っている。そして、並列動作時には、例えば、モータデータ>ディスプレイリストDL>ランプデータの優先度のチャネル調停となるよう、最適チャネルのDMACiを使用している。 In these continuous operand transfers (b2) and single operand transfers (b1), channel arbitration is performed every time one operand transfer is completed, and the current channel (channel arbitration operation mode). Therefore, in this embodiment, a single operand transfer method is adopted for issuance of the display list DL to the VDP circuit and DMA transfer of lamp drive data and motor drive data. During parallel operation, for example, the optimal channel DMACi is used to arbitrate the priority channels of motor data>display list DL>lamp data.

一方、ノンストップ転送とは、チャネル調停が実行されない動作モードであって、図10(b3)に記載の通り、1回のDMA要求で、バイトカウントがゼロになるまで連続的にDMA転送が繰り返される。本実施例では、電源投入時のメモリセクション初期化処理(図15のSP8)では、ノンストップ転送でプログラムやデータをDMA転送している。 On the other hand, nonstop transfer is an operation mode in which channel arbitration is not performed, and as shown in FIG. 10 (b3), DMA transfer is continuously repeated until the byte count reaches zero with one DMA request. It will be done. In this embodiment, in the memory section initialization process (SP8 in FIG. 15) when the power is turned on, programs and data are transferred by DMA using non-stop transfer.

以上、CPU回路51について説明したので、次に、VDP回路52について説明すると、VDP回路52には、画像演出を構成する静止画や動画の構成要素となる圧縮データを記憶するCGROM55と、4Gbit程度の記憶容量を有する外付けDRAM(Dynamic Random Access Memory)54と、メイン表示装置DS1と、サブ表示装置DS2とが接続されている。なお、DRAM54は、好適にはDDR3(Double-Data-Rate3 SDRAM )で構成される。 Since the CPU circuit 51 has been explained above, the VDP circuit 52 will be explained next. An external DRAM (Dynamic Random Access Memory) 54 having a storage capacity of , a main display device DS1, and a sub display device DS2 are connected. Note that the DRAM 54 is preferably configured with DDR3 (Double-Data-Rate3 SDRAM).

特に限定するものではないが、この実施例では、CGROM55は、62Gbit程度の記憶容量のNAND型フラッシュメモリで構成されたフラッシュSSD(solid state drive )で構成されており、シリアル伝送によって必要な圧縮データを取得するよう構成されている。そのため、パラレル伝送において不可避的に生じるスキュー(ビットデータ毎の伝送速度の差)の問題が解消され、極限的な高速伝送動作が可能となる。特に限定されないが、本実施例では、SerialATAに準拠したHSS(High Speed Serial )方式で、CGROM55を高速アクセスしている。 Although not particularly limited, in this embodiment, the CGROM 55 is composed of a flash SSD (solid state drive) composed of a NAND flash memory with a storage capacity of about 62 Gbit, and the compressed data required by serial transmission is is configured to obtain. Therefore, the problem of skew (difference in transmission speed between bit data) that inevitably occurs in parallel transmission is eliminated, and extremely high-speed transmission operation becomes possible. Although not particularly limited, in this embodiment, the CGROM 55 is accessed at high speed using the HSS (High Speed Serial) method based on SerialATA.

なお、SerialATAに準拠したHSS方式を採るか否かに拘らず、NAND型のフラッシュメモリは、ハードディスクより機械的に安定であり、且つ高速アクセスが可能である一方で、シーケンシャルアクセスメモリであるため、DRAMやSRAM(Static Random Access Memory )に比較すると、ランダムアクセス性に問題がある。そこで、本実施例では、一群の圧縮データ(CGデータ)を、描画動作に先行してDRAM54に読み出しておくプリロード動作を実行することで、描画動作時におけるCGデータの円滑なランダムアクセスを実現している。ちなみに、アクセス速度は、内蔵VRAM>外付けDRAM>CGROMの順番に遅くなる。 Note that regardless of whether or not an HSS method is adopted that is compliant with SerialATA, NAND flash memory is mechanically more stable than hard disks and can be accessed at high speed; however, since it is a sequential access memory, Compared to DRAM and SRAM (Static Random Access Memory), it has a problem in random access. Therefore, in this embodiment, by executing a preload operation in which a group of compressed data (CG data) is read out to the DRAM 54 prior to the drawing operation, smooth random access to the CG data during the drawing operation is realized. ing. Incidentally, the access speed becomes slower in the order of built-in VRAM>external DRAM>CGROM.

VDP回路52は、詳細には、VDP(Video Display Processor )の動作を規定する各種の動作パラメータが演出制御CPU63によって設定可能な制御レジスタ群70と、表示装置DS1,DS2に表示すべき画像データの生成時に使用される48Mバイト程度の内蔵VRAM(video RAM )71と、チップ内部の各部間のデータ送受信及びチップ外部とのデータ送受信を実行するデータ転送回路72と、内蔵VRAM71に関して、SourceやDestination のアドレス情報を特定可能なインデックステーブルIDXTBLと、描画動作に先行してCGROM55をREADアクセスするプリロード動作が実行可能なプリローダ73と、CGROM55から読み出した圧縮データをデコード(復号伸長/展開)するグラフィックスデコーダ(GDEC)75と、デコード(展開)後の静止画データや動画データを適宜に組み合わせて表示装置DS1,DS2の各一フレーム分の画像データを生成する描画回路76と、描画回路76の動作の一部として、適宜な座標変換によって立体画像を生成するジオメトリエンジン77と、描画回路76が生成したフレームバッファFBa,FBbの画像データを読み出して、適宜な画像処理を並列的に実行可能な3系統(A/B/C)の表示回路74A~74Cと、3系統(A/B/C)の表示回路74の出力を適宜に選択出力する出力選択部79と、出力選択部79が出力する画像データをLVDS信号に変換するLVDS部80と、シリアルデータ送受信可能なSMC部78と、CPUIF回路56とのデータ送受信を中継するCPUIF部81と、CGROM55からのデータ受信を中継するCGバスIF部82と、外付けDRAM54とのデータ送受信を中継するDRAMIF部83と、内蔵VRAM71とのデータ送受信を中継するVRAMIF部84と、を有して構成されている(図7(a)参照)。なお、音声回路SNDも内蔵されている。 Specifically, the VDP circuit 52 includes a control register group 70 in which various operating parameters that define the operation of the VDP (Video Display Processor) can be set by the production control CPU 63, and a control register group 70 that controls the image data to be displayed on the display devices DS1 and DS2. A built-in VRAM (video RAM) 71 of approximately 48 Mbytes used during generation, a data transfer circuit 72 that executes data transmission and reception between each part inside the chip and data transmission and reception with the outside of the chip, and a source and destination of the built-in VRAM 71. An index table IDXTBL that can specify address information, a preloader 73 that can execute a preload operation that performs READ access to the CGROM 55 prior to a drawing operation, and a graphics decoder that decodes (decodes and expands/expands) compressed data read from the CGROM 55. (GDEC) 75, a drawing circuit 76 that appropriately combines decoded (expanded) still image data and moving image data to generate one frame worth of image data for each of the display devices DS1 and DS2, and an operation of the drawing circuit 76. As a part, there is a geometry engine 77 that generates a three-dimensional image by appropriate coordinate transformation, and three systems that can read image data of frame buffers FBa and FBb generated by the drawing circuit 76 and execute appropriate image processing in parallel. (A/B/C) display circuits 74A to 74C, an output selection section 79 that appropriately selects and outputs the outputs of the three systems (A/B/C) display circuits 74, and an image output by the output selection section 79. An LVDS section 80 that converts data into an LVDS signal, an SMC section 78 capable of transmitting and receiving serial data, a CPUIF section 81 that relays data transmission and reception with the CPUIF circuit 56, and a CG bus IF section 82 that relays data reception from the CGROM 55. , a DRAMIF section 83 that relays data transmission and reception with the external DRAM 54, and a VRAMIF section 84 that relays data transmission and reception with the built-in VRAM 71 (see FIG. 7(a)). Note that an audio circuit SND is also built-in.

図7(b)には、CPUIF部81、CGバスIF部82、DRAMIF部83、及び、VRAMIF部84と、制御レジスタ群70、CGROM55、DRAM54、及び内蔵VRAM71との関係が図示されている。図示の通り、CGROM55から取得したCGデータは、例えば、プリロードデータとして、データ転送回路72及びDRAMIF部83を経由して、外付けDRAM54のプリロード領域に転送される。 FIG. 7B shows the relationship between the CPUIF section 81, CG bus IF section 82, DRAMIF section 83, and VRAMIF section 84, and the control register group 70, CGROM 55, DRAM 54, and built-in VRAM 71. As shown in the figure, the CG data acquired from the CGROM 55 is transferred to the preload area of the external DRAM 54 as, for example, preload data via the data transfer circuit 72 and the DRAMIF section 83.

但し、上記したプリロード動作は、何ら必須動作ではなく、また、データ転送先も、外付けDRAM54に限定されず、内蔵VRAM71であっても良い。したがって、例えば、プリロード動作を実行しない実施例では、CGデータは、データ転送回路72及びVRAMIF部84を経由して、内蔵VRAM71に転送される(図7(b))。 However, the preload operation described above is not an essential operation, and the data transfer destination is not limited to the external DRAM 54, but may be the built-in VRAM 71. Therefore, for example, in an embodiment in which a preload operation is not performed, CG data is transferred to the built-in VRAM 71 via the data transfer circuit 72 and the VRAMIF section 84 (FIG. 7(b)).

ところで、本実施例では、内蔵VRAM71には、CGROM55から読み出した圧縮データの展開領域、表示装置のW×H個の表示ピクセルの各ARGB情報(32bit=8×4)を特定する画像データを格納するフレームバッファ領域、及び、各表示ピクセルの深度情報を記憶するZバッファ領域などが必要となる。なお、ARGB情報において、Aは、8bitのαプレーンデータ、RGBは三原色の8bitデータを意味する。 By the way, in this embodiment, the built-in VRAM 71 stores the expansion area of the compressed data read from the CGROM 55 and image data that specifies each ARGB information (32 bits = 8 x 4) of W x H display pixels of the display device. A frame buffer area for storing depth information of each display pixel, a Z buffer area for storing depth information of each display pixel, etc. are required. Note that in the ARGB information, A means 8-bit α plane data, and RGB means 8-bit data of three primary colors.

ここで、内蔵VRAM71の上記した各領域は、演出制御CPU63がディスプレイリストDLに記載した各種の指示コマンド(前記したテクスチャやSPRITEなど)に基づいて間接的にアクセスされるが、そのREAD/WRITEアクセスにおいて、一々、内蔵VRAM71のDestination アドレスや、Sourceアドレスを特定するのでは煩雑である。そこで、本実施例では、CPUリセット後の初期処理において、描画動作で必要となる一次元または二次元の論理アドレス空間(以下、インデックス空間という)を確保して、各インデックス空間にインデックス番号を付与することで、インデックス番号に基づくアクセスを可能にしている。 Here, each of the above-mentioned areas of the built-in VRAM 71 is accessed indirectly based on various instruction commands (such as the above-mentioned textures and SPRITE) written in the display list DL by the production control CPU 63, but the READ/WRITE access In this case, it is troublesome to specify the destination address and source address of the built-in VRAM 71 one by one. Therefore, in this embodiment, in the initial processing after resetting the CPU, a one-dimensional or two-dimensional logical address space (hereinafter referred to as index space) required for drawing operation is secured, and an index number is assigned to each index space. This allows access based on index numbers.

具体的には、CPUリセット後、内蔵VRAM71を3種類のメモリ領域に大別すると共に、各メモリ領域に、必要数のインデックス空間を確保している。そして、インデックス空間とインデックス番号とを紐付けて記憶するインデックステーブルIDXTBL(図11(a)参照)を構築することで、その後のインデックス番号に基づく動作を実現している。 Specifically, after the CPU is reset, the built-in VRAM 71 is roughly divided into three types of memory areas, and a required number of index spaces are secured in each memory area. Then, by constructing an index table IDXTBL (see FIG. 11(a)) that stores index spaces and index numbers in a linked manner, subsequent operations based on the index numbers are realized.

このインデックス空間は、(1) 初期処理後に追加することや、逆に、(2) 開放することも必要となる。そこで、これら追加/開放の演出制御CPU63の動作時に、追加/開放の処理が可能なタイミングか否か、また、追加/開放などの処理が実際に完了したか否か、などを判定可能なフラグ領域FGをインデックステーブルIDXTBLに設けている。なお、内蔵VRAM71は、以下に説明する2つのAAC領域(a1,a2) と、ページ領域(b) と、任意領域(c) の三種類のメモリ領域に大別され、この三種類のメモリ領域(a1,a2)(b)(c) に対応して、インデックステーブルIDXTBLが3区分されている(図11(a))。図示の通り、この実施例では、AAC領域(a) として、第一AAC領域(a1)と第二AAC領域(a2)が確保されているが、特に限定されるものではなく、何れか一方だけでも良い。なお、以下の説明では、第一と第二のAAC領域(a1,a2) を総称する場合には、AAC領域(a) と称する場合がある。 This index space must be (1) added after initial processing, or (2) released. Therefore, when the addition/release production control CPU 63 operates, there is a flag that can determine whether or not the timing is such that the addition/release processing is possible, and whether or not the addition/release processing has actually been completed. Area FG is provided in index table IDXTBL. The built-in VRAM 71 is roughly divided into three types of memory areas: two AAC areas (a1, a2), a page area (b), and an arbitrary area (c), which will be explained below. The index table IDXTBL is divided into three sections corresponding to (a1,a2)(b)(c) (FIG. 11(a)). As shown in the figure, in this embodiment, the first AAC area (a1) and the second AAC area (a2) are secured as the AAC area (a), but this is not particularly limited, and only one of them can be used. But it's okay. In the following description, the first and second AAC areas (a1, a2) may be collectively referred to as AAC area (a).

本実施例の場合、内蔵VRAM71は、(a) インデックス空間とそのインデックス番号が内部処理によって自動付与され、且つメモリキャッシュ機能を有するAAC領域と、(b) 例えば4096bit×128ラインの二次元空間を単位空間として、その整数倍の範囲でインデックス空間が確保可能なページ領域と、(c) 先頭アドレス(空間先頭アドレス)STxと水平サイズHxが任意に設定できる任意領域と、に区分可能に構成されている(図11(b)参照)。但し、VDP回路52の内部動作を円滑化するため、任意領域(c) において任意設定されるインデックス空間の空間先頭アドレスSTxは、その下位11bitが0であって、所定ビット(2048bit=256バイト)単位とする必要がある。 In the case of this embodiment, the built-in VRAM 71 has (a) an index space and an AAC area to which index numbers are automatically assigned by internal processing and has a memory cache function, and (b) a two-dimensional space of, for example, 4096 bits x 128 lines. As a unit space, it is configured so that it can be divided into a page area where index space can be secured within an integral multiple of the page area, and (c) an arbitrary area where the start address (space start address) STx and horizontal size Hx can be arbitrarily set. (See Figure 11(b)). However, in order to smooth the internal operation of the VDP circuit 52, the space start address STx of the index space arbitrarily set in the arbitrary area (c) has its lower 11 bits set to 0, and the predetermined bits (2048 bits = 256 bytes). It needs to be a unit.

そして、CPUリセット後、各々に必要なアドレス空間の最大値と、領域先頭アドレス(下位11bit=0)を規定して、AAC領域(a1)と、第二AAC領域(a2)と、ページ領域(b) とが確保され、その残りのメモリ領域が任意領域(c) となる。VDP回路52の内部動作を円滑化するため、AAC領域のアドレス空間の最大値は、2048bit単位で規定され、ページ領域のアドレス空間の最大値は、上記した4096bit×128ラインの単位空間の整数倍とされる。 After the CPU is reset, the maximum value of the address space required for each and the area start address (lower 11 bits = 0) are defined, and the AAC area (a1), the second AAC area (a2), and the page area ( b) is secured, and the remaining memory area becomes the arbitrary area (c). In order to smooth the internal operation of the VDP circuit 52, the maximum value of the address space of the AAC area is specified in units of 2048 bits, and the maximum value of the address space of the page area is an integral multiple of the above-mentioned unit space of 4096 bits x 128 lines. It is said that

次に、このように確保された各領域(a1,a2)(b)(c) に必要個数のインデックス空間が設定される。なお、任意領域(c) を使用する場合、VDP回路52の内部動作を円滑化するため、二次元データを扱うインデックス空間の水平サイズHxは、256bitの倍数として、任意に設定可能である一方、その垂直サイズは固定値(例えば、2048ライン)となっている。 Next, the required number of index spaces are set in each area (a1, a2), (b), and (c) thus secured. Note that when using the arbitrary area (c), in order to smooth the internal operation of the VDP circuit 52, the horizontal size Hx of the index space that handles two-dimensional data can be arbitrarily set as a multiple of 256 bits; Its vertical size is a fixed value (for example, 2048 lines).

何れにしても、第一と第二のAAC領域(a1,a2) は、VDP回路52によって、インデックス空間とインデックス番号が自動的に付与されるので、例えば、テクスチャ設定系コマンドのSETINDEXコマンドによって、デコード先をAAC領域(a) に指定すれば、CGROM55からCGデータを読み出すTXLOAD(テクスチャロード)コマンドでは、CGROM55のSourceアドレスと、展開(デコード)後の水平・垂直サイズなどを指定するだけで足りることになる。そこで、本実施例では、予告演出時などに一時的に出現するキャラクタなどの静止画(テクスチャ)や、Iストリーム動画については、そのデコード先をAAC領域(a) にしている。 In any case, index spaces and index numbers are automatically assigned to the first and second AAC areas (a1, a2) by the VDP circuit 52, so for example, by using the SETINDEX command, which is a texture setting command, If you specify the decoding destination as the AAC area (a), in the TXLOAD (texture load) command that reads CG data from the CGROM55, you only need to specify the source address of the CGROM55 and the horizontal and vertical sizes after expansion (decoding). It turns out. Therefore, in this embodiment, still images (textures) such as characters that appear temporarily during preview presentations and I-stream moving images are decoded in the AAC area (a).

このAAC領域(a) は、いずれも、メモリキャッシュ機能が付与されているので、例えば、CGROM55の同一のテクスチャを複数回、AAC領域(a) に読み出すような場合には、二度目以降は、AAC領域(a) にキャッシュされているデコードデータが活用可能となり、余分なREADアクセスとデコード処理が抑制可能となる。もっとも、AAC領域(a) を使い切った場合には、古いデータが自動的に破壊されるので、本実施例では、AAC領域(a) を使用する場合、原則として第一AAC領域(a1)を使用することとし、繰り返し使用する特定のテクスチャだけを第二AAC領域(a2)に取得するようにしている。 This AAC area (a) is all provided with a memory cache function, so for example, if the same texture from the CGROM 55 is read out to the AAC area (a) multiple times, from the second time onwards, The decoded data cached in the AAC area (a) can be used, and redundant READ access and decode processing can be suppressed. However, if the AAC area (a) is used up, old data will be automatically destroyed, so in this embodiment, when using the AAC area (a), the first AAC area (a1) is used as a general rule. Only a specific texture to be used repeatedly is acquired in the second AAC area (a2).

繰り返し使用するテクスチャとして、例えば、所定の予告演出時に繰り返し出現するキャラクタや、背景画面を静止画で構築する場合の背景画などを例示することができる。このような場合、テクスチャ設定系コマンドのSETINDEXコマンドによって、デコード先を第二AAC領域(a2)に設定し、TXLOADコマンドによって、キャラクタや背景画などのテクスチャを第二AAC領域(a2)にデコードした後は、第二AAC領域(a2)を使用しないことで、デコード結果を保護する。 Examples of textures that are repeatedly used include, for example, characters that repeatedly appear during predetermined preview performances, background images when a background screen is constructed from still images, and the like. In such a case, use the SETINDEX texture setting command to set the decoding destination to the second AAC area (a2), and use the TXLOAD command to decode the textures such as characters and background images to the second AAC area (a2). After that, the decoding results are protected by not using the second AAC area (a2).

そして、その後、SETINDEXコマンドによって、デコード先を第二AAC領域(a2)に指定した上で、取得済みのテクスチャを再取得する同一のTXLOADコマンドを実行させると、取得済みのテクスチャがキャッシュヒットするので、CGROM55へのREADアクセスと、デコード処理に要する時間を削除することができる。後述するように、このようなキャッシュヒット機能は、プリロード領域に先読みされたプリロードデータでも発揮されるが、プリロード領域でキャッシュヒットするプリロードデータは、デコード前の圧縮データであるのに対して、AAC領域でキャッシュヒットするのはデコード後の展開データである点に意義がある。 Then, if you use the SETINDEX command to specify the decoding destination as the second AAC area (a2) and then execute the same TXLOAD command that re-acquires the acquired textures, the acquired textures will hit the cache. , the time required for READ access to the CGROM 55 and decoding processing can be eliminated. As will be described later, such a cache hit function is also exhibited by preload data that is read ahead into the preload area, but the preload data that cache hits in the preload area is compressed data before decoding, whereas AAC It is significant that the cache hit in the area is the expanded data after decoding.

ところで、テクスチャ(texture )とは、一般に、物の表面の質感・手触りなどを指す概念であるが、本明細書では、静止画を構成するスプライト画像データや、動画一フレームを構成する画像データや、三角形や四角形などの描画プリミティブ(primitive )に貼り付ける画像データだけでなく、デコード後の画像データも含む概念として使用している。そして、内蔵VRAM71の内部で、画像データをコピーする(以下、便宜上、移動と称する)場合には、テクスチャ設定系コマンドのSETINDEXコマンドによって、移動元の画像データをテクスチャとして設定した上で、SPRITEコマンドを実行することになる。 By the way, texture is a concept that generally refers to the texture and feel of the surface of an object, but in this specification, it refers to sprite image data that makes up a still image, image data that makes up one frame of a video, and the like. , is used as a concept that includes not only image data pasted onto drawing primitives such as triangles and squares, but also image data after decoding. When copying image data within the built-in VRAM 71 (hereinafter referred to as moving for convenience), set the source image data as a texture using the SETINDEX command, which is a texture setting command, and then use the SPRITE command. will be executed.

なお、SPRITEコマンドの実行により、移動元のSource画像データが、形式上は、図11(c)に示す仮想描画空間に描画されるが、表示装置に実際に描画される仮想描画空間内の描画領域と、フレームバッファとなるインデックス空間との対応関係を、予め環境設定コマンド(SETDAVR ,SETDAVF )や、テクスチャ設定系コマンド(SETINDEX)によって設定しておけば、例えば、SPRITEコマンドによる仮想描画空間への描画により、所定のインデックス空間(フレームバッファ)には、移動元のSource画像データが描画されることになる(図11(c)参照)。 Note that by executing the SPRITE command, the source image data of the movement source is formally drawn in the virtual drawing space shown in FIG. 11(c), but the drawing in the virtual drawing space that is actually drawn on the display device is If you set the correspondence between the area and the index space that serves as the frame buffer in advance using environment setting commands (SETDAVR, SETDAVF) or texture setting commands (SETINDEX), you can, for example, use the SPRITE command to access the virtual drawing space. By drawing, the source image data of the movement source is drawn in a predetermined index space (frame buffer) (see FIG. 11(c)).

何れにしても、本実施例では、内蔵VRAM71が、AAC領域(a1,a2) とページ領域(b) と任意領域(c) に大別され、各々に、適当数のインデックス空間を確保することができ、各インデックス空間は、各領域(a)(b)(c) ごとに独立のインデックス番号によって特定される。インデックス番号は、例えば、1バイト長であり、(内部回路によって自動付与されるAAC領域(a) を除いた)ページ領域(b) と任意領域(c) については、0~255の範囲で演出制御CPU63が、インデックス番号を自由に付与することができる。 In any case, in this embodiment, the built-in VRAM 71 is roughly divided into an AAC area (a1, a2), a page area (b), and an arbitrary area (c), and an appropriate number of index spaces is secured for each area. Each index space is identified by an independent index number for each area (a), (b), and (c). The index number is, for example, 1 byte long, and is set in the range of 0 to 255 for the page area (b) (excluding the AAC area (a) that is automatically assigned by the internal circuit) and the arbitrary area (c). The control CPU 63 can freely assign index numbers.

そこで、本実施例では、図11(a)に示す通り、表示装置DS1用として、任意領域(c) に、一対のフレームバッファFBaを確保して、ダブルバッファ構造の双方に、インデックス番号255,254を付与している。すなわち、メイン表示装置DS1用のフレームバッファFBaとして、トグル的に切り換えて使用されるインデックス空間255と、インデックス空間254を確保している。特に限定されないが、このインデックス空間255,254は、表示装置DS1の横方向ピクセル数に対応して、水平サイズ1280としている。なお、各ピクセルは、ARGB情報32bitで特定されるので、水平サイズ1280は、32×1280=40960bit(256bitの倍数)を意味する。 Therefore, in this embodiment, as shown in FIG. 11(a), a pair of frame buffers FBa are secured in an arbitrary area (c) for the display device DS1, and index numbers 255, 255, 254 is given. That is, as the frame buffer FBa for the main display device DS1, an index space 255 and an index space 254 are secured, which are switched and used in a toggle manner. Although not particularly limited, the index spaces 255 and 254 have a horizontal size of 1280, corresponding to the number of pixels in the horizontal direction of the display device DS1. Note that since each pixel is specified by 32 bits of ARGB information, the horizontal size 1280 means 32×1280=40960 bits (a multiple of 256 bits).

また、表示装置DS2用として、任意領域(c) に、別の一対のフレームバッファFBbを確保して、ダブルバッファ構造の双方にインデックス番号252,251を付与している。すなわち、サブ表示装置DS2用のフレームバッファFBbとして、インデックス空間252と、インデックス空間251を確保している。このインデックス空間252,251は、表示装置DS2の横方向ピクセル数に対応して、水平サイズ480としている。この場合も、各ピクセルは、ARGB情報32bitで特定されるので、水平サイズ480は、32×480=15360bit(256bitの倍数)を意味する。 Further, another pair of frame buffers FBb are secured in the arbitrary area (c) for the display device DS2, and index numbers 252 and 251 are given to both of the double buffer structures. That is, the index space 252 and the index space 251 are secured as the frame buffer FBb for the sub display device DS2. The index spaces 252 and 251 have a horizontal size of 480, corresponding to the number of pixels in the horizontal direction of the display device DS2. In this case as well, each pixel is specified by 32 bits of ARGB information, so the horizontal size 480 means 32×480=15360 bits (a multiple of 256 bits).

なお、フレームバッファFBa,FBbを任意領域(c) に確保するのは、任意領域(c) には、32バイト(=256bit=8ピクセル分)の倍数として、任意の水平サイズに設定することができ、上記のように、表示装置DS1,DS2の水平ピクセル数に一致させれば、確保領域に無駄が生じないからである。一方、ページ領域(b) には、128ピクセル×128ラインの単位空間の整数倍の水平/垂直サイズしか設定できない。 Note that frame buffers FBa and FBb are secured in the arbitrary area (c) because they can be set to any horizontal size as a multiple of 32 bytes (=256 bits=8 pixels). This is because, as described above, if the number of horizontal pixels is made equal to the number of horizontal pixels of the display devices DS1 and DS2, the secured area will not be wasted. On the other hand, the page area (b) can only be set in a horizontal/vertical size that is an integral multiple of the unit space of 128 pixels x 128 lines.

但し、任意領域(c)に確保される二次元のインデックス空間は、その垂直サイズが固定値(例えば、2048ライン)となっている。そのため、フレームバッファFBaにおいて、水平サイズ1280×垂直サイズ1024の領域だけが、メイン表示装置DS1にとって有効データ領域となる。この点は、サブ表示装置DS2についても同様であり、フレームバッファFBbにおいて、水平サイズ480×垂直サイズ800の領域だけが、サブ表示装置DS2にとって有効データ領域となる(図11(c),図20(e)参照)。 However, the two-dimensional index space secured in the arbitrary area (c) has a fixed vertical size (for example, 2048 lines). Therefore, in the frame buffer FBa, only an area of horizontal size 1280×vertical size 1024 becomes a valid data area for main display device DS1. This point is the same for the sub-display device DS2, and in the frame buffer FBb, only an area of horizontal size 480×vertical size 800 is an effective data area for the sub-display device DS2 (FIG. 11(c), FIG. 20 (see (e)).

上記の点は更に後述するが、何れにしても、フレームバッファFBa,FBbは、描画回路76にとっての描画領域として、各ダブルバッファ(255/254 ,252/251 )が交互に使用され、また、表示回路74A,74Bにとっての表示領域として、各ダブルバッファ(255/254 ,252/251 )が交互に使用される。なお、本実施例では、表示ピクセルの深度情報を記憶するZバッファを使用しないので欠番(253)が生じるが、Zバッファを使用する場合には、任意領域(c) におけるインデックス番号253,250のインデックス空間253,250が、表示装置DS1と表示装置DS2のためのZバッファとなる。 The above points will be discussed further later, but in any case, the double buffers (255/254, 252/251) of the frame buffers FBa and FBb are used alternately as a drawing area for the drawing circuit 76, and The double buffers (255/254, 252/251) are used alternately as display areas for display circuits 74A and 74B. In this embodiment, a missing number (253) occurs because the Z buffer for storing depth information of display pixels is not used. However, if the Z buffer is used, index numbers 253 and 250 in arbitrary area (c) are used. Index spaces 253 and 250 serve as Z buffers for display device DS1 and display device DS2.

また、本実施例では、フレームバッファFBa,FBbが確保された任意領域(c) に、追加のインデックス空間(メモリ領域)を確保する場合には、0から始まるインデック番号を付与するようにしている。何ら限定されないが、本実施例では、キャラクタやその他の静止画で構成された演出画像を、必要に応じて、適宜な回転姿勢で表示画面の一部に出現させる予告演出用の作業領域として、任意領域(c) に、インデックス空間(0)を確保している。 Furthermore, in this embodiment, when an additional index space (memory area) is secured in the arbitrary area (c) where frame buffers FBa and FBb are secured, an index number starting from 0 is assigned. . Although not limited in any way, in this embodiment, a work area for a preview effect in which a effect image composed of characters and other still images appears on a part of the display screen in an appropriate rotational posture as necessary. Index space (0) is secured in arbitrary area (c).

但し、作業領域の使用は必須ではなく、また、任意領域(c) に代えて、ページ領域(b) に作業領域としてのインデックス空間を確保しても良い。ページ領域(b) を使用すれば、水平サイズ128(=4096bit)×垂直サイズ128の正方形状の単位空間の倍数寸法のインデックス空間を確保できるので、小型の演出画像を扱うには好適である。 However, the use of the work area is not essential, and an index space as a work area may be secured in the page area (b) instead of the arbitrary area (c). By using the page area (b), it is possible to secure an index space that is a multiple of the square unit space of horizontal size 128 (=4096 bits) x vertical size 128, which is suitable for handling small-sized performance images.

ところで、本実施例では、背景画も含め動画で構成されており、画像演出は、ほぼ動画のみで実現されている。特に、変動演出時には、多数(通常10個以上)の動画が同時に描画されている。これらの動画は、何れも、一連の動画フレームとして、圧縮状態でCGROM55に格納されているが、Iフレームのみで構成されたIストリーム動画と、IフレームとPフレームとで構成されたIPストリーム動画とに区分される。ここで、Iフレーム(Intra coded frame )とは、他画面とは独立して、入力画像をそのまま圧縮するフレームを意味する。一方、Pフレーム(Predictive coded frame)とは、前方向予測符号化を行うフレームを意味し、時間的に過去に位置するIフレームまたはPフレームが必要となる。 By the way, in this embodiment, the background image is also composed of moving images, and the image presentation is realized almost only by moving images. In particular, during variable performance, a large number (usually 10 or more) of moving images are being drawn at the same time. All of these videos are stored in the CGROM 55 in a compressed state as a series of video frames, but there are two types of videos: I-stream video consisting only of I frames, and IP stream video consisting of I-frames and P-frames. It is divided into Here, the I frame (Intra coded frame) means a frame in which an input image is compressed as it is, independent of other screens. On the other hand, a P frame (Predictive coded frame) means a frame for which forward predictive coding is performed, and an I frame or a P frame located in the temporal past is required.

そこで、本実施例では、IPストリーム動画については、旧データの破壊が懸念されるAAC領域(a) ではなく、ページ領域(b) に展開している。すなわち、水平サイズ128×垂直サイズ128の倍数寸法のインデックス空間を確保可能なページ領域(b) に、多数のインデックス空間(IDX~IDX)を確保して、一連の動画フレームは、各動画MViに対応する、常に同一のインデックス空間IDXiを使用してデコードするようにしている。すなわち、動画MV1はインデックス空間IDX1に展開され、動画MV2はインデックス空間IDX2に展開され、以下同様に、動画MViはインデックス空間IDXiに展開されるよう構成されている。 Therefore, in this embodiment, the IP stream video is expanded to the page area (b) instead of the AAC area (a) where there is a concern that old data may be destroyed. That is, a large number of index spaces (IDX 0 to IDX N ) are secured in the page area (b) where index spaces with dimensions that are multiples of horizontal size 128 x vertical size 128 can be secured, and a series of video frames is The same index space IDXi corresponding to MVi is always used for decoding. That is, the moving image MV1 is expanded into the index space IDX1, the moving image MV2 is expanded into the index space IDX2, and the moving image MVi is expanded into the index space IDXi in the same manner.

動画MViについて、更に具体的に説明すると、SETINDEXコマンドによって、「IPストリーム動画MViのデコード先は、ページ領域(b) におけるインデックス番号iのインデックス空間(i)である」と予め指定した上で、IPストリーム動画MViの動画一フレームを取得するTXLOADコマンドを実行させている。 To explain the video MVi more specifically, after specifying in advance with the SETINDEX command that "the decoding destination of the IP stream video MVi is the index space (i) of the index number i in the page area (b)", A TXLOAD command is executed to acquire one frame of the IP stream video MVi.

すると、TXLOADコマンドが特定するCGROM55上の動画一フレーム(一連の動画フレームの何れか)が、先ず、AAC領域(a) に取得され、その後、自動的に起動するGDEC(グラフィックスデコーダ)75によって、ページ領域(b) のインデックス空間(i)に、取得した動画一フレームがデコードされて展開されることになる。 Then, one video frame (any one of a series of video frames) on the CGROM 55 specified by the TXLOAD command is first acquired into the AAC area (a), and then processed by the automatically activated GDEC (graphics decoder) 75. , one frame of the acquired video is decoded and developed in the index space (i) of the page area (b).

一方、本実施例では、Iストリーム動画については、静止画と同一扱いとしており、SETINDEXコマンドによって、「Iストリーム動画MVjのデコード先は、第一AAC領域(a1)である」と指定して、TXLOADコマンドを実行させる。その結果、動画フレームは第一AAC領域(a1)に取得され、その後、自動的に起動するGDEC75が、第一AC領域(a1)にデコードデータを展開している。先に説明した通り、AAC領域(a) のインデックス空間は、自動的に生成されるので、インデックス番号を指定する必要はない。なお、インデックス空間に必要となる展開ボリューム、つまり、デコードされたテクスチャ(動画フレーム)の水平サイズと垂直サイズは、展開先がAAC領域(a) か、ページ領域(b) かに拘らず、TXLOADコマンドによって特定される。 On the other hand, in this embodiment, I-stream videos are treated the same as still images, and the SETINDEX command specifies that "the decoding destination of the I-stream video MVj is the first AAC area (a1)". Execute the TXLOAD command. As a result, the video frame is acquired in the first AAC area (a1), and then the automatically activated GDEC 75 develops decoded data in the first AAC area (a1). As explained above, the index space for AAC area (a) is automatically generated, so there is no need to specify an index number. Note that the expansion volume required for the index space, that is, the horizontal size and vertical size of the decoded texture (video frame), is determined by the TXLOAD regardless of whether the expansion destination is the AAC area (a) or the page area (b). Specified by command.

ところで、IPストリーム動画MViやIストリーム動画MVjは、一般にN枚の動画フレーム(IフレームやPフレーム)で構成されている。そのため、TXLOADコマンドでは、例えば、k枚目(1≦k≦N)の動画フレームが記憶されているCGROM55のSourceアドレスと、展開後の水平・垂直サイズなどを指定することになる。何ら限定されないが、静止画を殆ど使用しない実施例では、内蔵VRAM71のアドレス空間48Mバイトの大部分(30Mバイト程度)をページ領域(b) に割り当てている。そして、静止画を殆ど使用しない実施例では、AAC領域として、第一AAC領域(a1)だけを確保し、第二AAC領域(a2)を確保せず、また、前記したAAC領域のキャッシュヒット機能も活用しない。 By the way, the IP stream video MVi and the I stream video MVj are generally composed of N video frames (I frames and P frames). Therefore, the TXLOAD command specifies, for example, the Source address of the CGROM 55 in which the k-th (1≦k≦N) video frame is stored, and the horizontal and vertical sizes after expansion. Although not limited in any way, in an embodiment in which still images are hardly used, most of the 48 Mbytes of the address space of the built-in VRAM 71 (approximately 30 Mbytes) is allocated to the page area (b). In an example in which still images are hardly used, only the first AAC area (a1) is secured as the AAC area, the second AAC area (a2) is not secured, and the cache hit function of the AAC area described above is It is not used either.

なお、圧縮動画データのデコード処理を高速化するため、専用のGDEC(グラフィックスデコーダ)回路を設けることも考えられる。そして、専用のGDEC回路をVDP回路52に内蔵させれば、N枚の圧縮動画フレームで構成された圧縮動画データのデコード処理において、動画圧縮データの先頭アドレスをGDEC回路に指示すれば足りるので、N枚の圧縮動画フレームについて、1枚ごとに先頭アドレスを指定する必要がなくなる。 Note that in order to speed up the decoding process of compressed video data, it is also possible to provide a dedicated GDEC (graphics decoder) circuit. If a dedicated GDEC circuit is built into the VDP circuit 52, in the decoding process of compressed video data composed of N compressed video frames, it is sufficient to instruct the GDEC circuit to specify the start address of the compressed video data. There is no need to specify the start address for each of the N compressed video frames.

しかし、このような専用のGDEC回路を、圧縮アルゴリズム毎に複数個内蔵させるのでは、VDP回路52の内部構成が更に複雑化する。そこで、本実施例では、ソフトウェアGDECとし、IPストリーム動画、Iストリーム動画、静止画、その他α値などのデータについて、各圧縮アルゴリズムに対応するソフトウェア処理によってデコード処理を実現している。なお、ハードウェア処理とソフトウェア処理の処理時間差は、あまり問題にならず、処理時間が問題になるのは、もっぱら、CGROM55からのアクセス(READ)タイムである。 However, if a plurality of such dedicated GDEC circuits are built in for each compression algorithm, the internal configuration of the VDP circuit 52 becomes even more complicated. Therefore, in this embodiment, software GDEC is used to realize decoding processing of data such as IP stream moving images, I stream moving images, still images, and other α values by software processing corresponding to each compression algorithm. Note that the processing time difference between hardware processing and software processing does not matter much, and the processing time that becomes a problem is exclusively the access (READ) time from the CGROM 55.

続いて、図7(a)に戻って説明を続けると、データ転送回路72は、VDP回路内部のリソース(記憶媒体)と外部記憶媒体を、転送元ポート又は転送先ポートとして、これらの間でDMA(Direct Memory Access)的にデータ転送動作を実行する回路である。図12は、このデータ転送回路72の内部構成を、関連する回路構成と共に記載したブロック図である。 Next, returning to FIG. 7A and continuing the explanation, the data transfer circuit 72 transfers the resources (storage medium) inside the VDP circuit and the external storage medium between them as a transfer source port or a transfer destination port. This is a circuit that executes a data transfer operation in a DMA (Direct Memory Access) manner. FIG. 12 is a block diagram showing the internal configuration of this data transfer circuit 72 together with related circuit configurations.

図12に示す通り、データ転送回路72は、ルータ機能を有する統合接続バスICMを経由して、CGROM55、DRAM54、及び、内蔵VRAM71とデータを送受信するよう構成されている。なお、CGROM55とDRAM54は、CGバスIF部82や、DMAMIF部83を経由してアクセスされる。 As shown in FIG. 12, the data transfer circuit 72 is configured to transmit and receive data to and from the CGROM 55, DRAM 54, and built-in VRAM 71 via an integrated connection bus ICM having a router function. Note that the CGROM 55 and DRAM 54 are accessed via the CG bus IF section 82 and the DMA IF section 83.

一方、CPU回路51は、データ転送回路72に内蔵された転送ポートレジスタTR_PORT を経由して、描画回路76やプリローダ73にディスプレイリストDLを発行している。なお、CPU回路51とデータ転送回路72は、双方向に接続されているが、ディスプレイリストDLの発行時には、転送ポートレジスタTR_PORT は、ディスプレイリストDLを構成する一単位のデータを受け入れるデータ書き込みポートとして機能する。なお、転送ポートレジスタTR_PORT の書込み単位(一単位データ長)は、CPUバス制御部72dのFIFO構造に対応して32bitとなる。 On the other hand, the CPU circuit 51 issues the display list DL to the drawing circuit 76 and the preloader 73 via the transfer port register TR_PORT built in the data transfer circuit 72. Note that the CPU circuit 51 and the data transfer circuit 72 are bidirectionally connected, but when the display list DL is issued, the transfer port register TR_PORT is used as a data write port that accepts one unit of data that constitutes the display list DL. Function. Note that the writing unit (one unit data length) of the transfer port register TR_PORT is 32 bits, corresponding to the FIFO structure of the CPU bus control unit 72d.

図示の通り、演出制御CPU63は、CPUIF部81を経由して、転送ポートレジスタTR_PORT をWRITE アクセスできる一方、DMAC回路60を活用する場合には、DMAC回路60が、転送ポートレジスタTR_PORT を直接的にWRITE アクセスすることになる。そして、転送ポートレジスタTR_PORT に書込まれた一連の指示コマンド(つまり、ディスプレイリストDLを構成する指示コマンド列)は、32bit単位で、FIFO構造(32bit×130段)のFIFOバッファを内蔵したCPUバス制御部72dに、自動蓄積されるよう構成されている。 As shown in the figure, the production control CPU 63 can write access to the transfer port register TR_PORT via the CPUIF section 81, while when utilizing the DMAC circuit 60, the DMAC circuit 60 directly accesses the transfer port register TR_PORT. WRITE access. Then, a series of instruction commands written to the transfer port register TR_PORT (in other words, instruction command strings that make up the display list DL) are transferred in 32-bit units to a CPU bus that has a built-in FIFO buffer with a FIFO structure (32 bits x 130 stages). The control unit 72d is configured to automatically accumulate the information.

また、このデータ転送回路72は、3チャンネルChA~ChCの伝送経路で、データの送受信動作を実行しており、FIFO構造(64bit×N段)のFIFOバッファを有するChA制御回路72a(N=130段)と、ChB制御回路72b(N=1026段)と、ChC制御回路72c(N=130段)と、を有している。 Further, this data transfer circuit 72 executes data transmission and reception operations on the transmission path of 3 channels ChA to ChC, and has a ChA control circuit 72a (N=130 A ChB control circuit 72b (N=1026 stages), and a ChC control circuit 72c (N=130 stages).

そして、CPUバス制御部72dに蓄積された指示コマンド列(ディスプレイリストDL)は、演出制御CPU63によるデータ転送レジスタRGij(各種制御レジスタ70の一種)への設定値に基づき、描画回路76か、又はプリローダ73に転送される。矢印で示す通り、ディスプレイリストDLは、CPUバス制御部72dから、ChB制御回路72bのFIFOバッファを経由して描画回路76に転送され、ChC制御回路72cのFIFOバッファを経由してプリローダ73に転送されるよう構成されている。 Then, the instruction command string (display list DL) accumulated in the CPU bus control unit 72d is sent to the drawing circuit 76 or It is transferred to the preloader 73. As shown by the arrow, the display list DL is transferred from the CPU bus control unit 72d to the drawing circuit 76 via the FIFO buffer of the ChB control circuit 72b, and transferred to the preloader 73 via the FIFO buffer of the ChC control circuit 72c. It is configured so that

なお、本実施例では、ChB制御回路72bと、ChC制御回路72bは、ディスプレイリストDLの転送動作に特化されており、CPUバス制御部72dのFIFOバッファに蓄積されたデータは、ChB制御回路72bか、ChC制御回路72cのFIFOバッファを経由して、各々、ディスプレイリストDLの一部として、描画回路76かプリローダ73のディスプレイリストアナライザ(Display List Analyzer )に転送される。 In this embodiment, the ChB control circuit 72b and the ChC control circuit 72b are specialized for the transfer operation of the display list DL, and the data accumulated in the FIFO buffer of the CPU bus control section 72d is transferred to the ChB control circuit 72b. 72b or the FIFO buffer of the ChC control circuit 72c, they are transferred to the drawing circuit 76 or the display list analyzer of the preloader 73 as part of the display list DL, respectively.

そして、描画回路76は、転送されたディスプレイリストDLに基づいた描画動作を開始する。一方、プリローダ73は、転送されたディスプレイリストDLに基づき、必要なプリロード動作を実行する。プリロード動作によってCGROM55のCGデータが、DRAM54に確保されたプリロード領域に先読みされ、TXLOADコマンドなどに関して、テクスチャのSourceアドレスを変更したディスプレイリストDL(以下、書換えリストDL’という)が、DRAM54に確保されたDLバッファ領域BUF’に保存される。 The drawing circuit 76 then starts a drawing operation based on the transferred display list DL. On the other hand, the preloader 73 executes a necessary preload operation based on the transferred display list DL. Through the preload operation, the CG data in the CGROM 55 is read in advance into the preload area secured in the DRAM 54, and a display list DL (hereinafter referred to as rewrite list DL') in which the source address of the texture has been changed is secured in the DRAM 54 in relation to the TXLOAD command, etc. The data is saved in the DL buffer area BUF'.

一方、CGROM55、DRAM54、及び、内蔵VRAM71などの記憶媒体の間のデータ転送には、ChA制御回路72aと、接続バスアクセス調停回路72eとが機能する。また、インデックステーブルIDXTBLのアドレス情報が必要になる内蔵VRAM71のアクセス時には、IDXTBLアクセス調停回路72fが機能する。具体的に確認すると、ChA制御回路72aは、例えば、(a)CGROM55の圧縮データを内蔵VRAM71に転送する場合や、(b)CGROM55の圧縮データをプリロード(先読み)して外付けDRAM54に転送する場合や、(c)プリロード領域の先読みデータを、内蔵VRAM71に転送する場合に機能する。 On the other hand, the ChA control circuit 72a and the connection bus access arbitration circuit 72e function for data transfer between storage media such as the CGROM 55, the DRAM 54, and the built-in VRAM 71. Further, when accessing the built-in VRAM 71 where address information of the index table IDXTBL is required, the IDXTBL access arbitration circuit 72f functions. To be more specific, the ChA control circuit 72a, for example, (a) transfers the compressed data of the CGROM 55 to the built-in VRAM 71, or (b) preloads (read ahead) the compressed data of the CGROM 55 and transfers it to the external DRAM 54. It functions when (c) pre-read data in the preload area is transferred to the built-in VRAM 71.

ここで、ChA制御回路72aは、ChB制御回路72bやChC制御回路72cと並行して動作可能に構成されており、上記した(a)~(c)の動作は、ディスプレイリストDLの発行動作(図20のST8,図25のPT11)や、書換えリストDL’の転送動作(図25のPT10)と並行して実行可能となる。また、ChB制御回路72bとChC制御回路72cも、同時実行可能であり、例えば、ChB制御回路72bが機能する図25のステップPT10の処理と、ChC制御回路72cが機能するステップPT11の処理は並行して実行可能である。但し、転送ポートレジスタTR_PORT は単一であるので、何れか一方(72b/72c)が転送ポートレジスタTR_PORT を使用しているタイミングでは、他方(72c/72b)は、転送ポートレジスタTR_PORT をアクセスすることはできない。 Here, the ChA control circuit 72a is configured to be able to operate in parallel with the ChB control circuit 72b and the ChC control circuit 72c, and the operations (a) to (c) described above are the display list DL issuing operation ( ST8 in FIG. 20, PT11 in FIG. 25) and the transfer operation of the rewrite list DL' (PT10 in FIG. 25) can be executed in parallel. Furthermore, the ChB control circuit 72b and the ChC control circuit 72c can also be executed simultaneously; for example, the process of step PT10 in FIG. 25 in which the ChB control circuit 72b functions and the process in step PT11 in which the ChC control circuit 72c functions are performed in parallel. It is possible to do this by However, since there is only one transfer port register TR_PORT, when either one (72b/72c) is using transfer port register TR_PORT, the other (72c/72b) cannot access transfer port register TR_PORT. I can't.

なお、ChA制御回路72aの動作時に、接続バスアクセス調停回路72eは、統合接続バスICMを経由する各記憶素子(CGROM55、DRAM54)とのデータ伝送を調停(Arbitration )している。一方、IDXTBLアクセス調停回路72fは、インデックステーブルIDXTBLに基づいてChA制御回路72aを制御することで、内蔵VRAM71とのデータ交信を調停している。なお、プリローダ73が機能する実施例の場合、DRAM54のDLバッファ領域BUF’に保存された書換えリストDL’は、接続バスアクセス調停回路72eと、ChB制御回路72bを経由して描画回路76に転送されることになる(図26(b)参照)。 Note that during the operation of the ChA control circuit 72a, the connection bus access arbitration circuit 72e arbitrates data transmission with each storage element (CGROM 55, DRAM 54) via the integrated connection bus ICM. On the other hand, the IDXTBL access arbitration circuit 72f arbitrates data communication with the built-in VRAM 71 by controlling the ChA control circuit 72a based on the index table IDXTBL. In the case of the embodiment in which the preloader 73 functions, the rewrite list DL' stored in the DL buffer area BUF' of the DRAM 54 is transferred to the drawing circuit 76 via the connection bus access arbitration circuit 72e and the ChB control circuit 72b. (See FIG. 26(b)).

上記の通り、本実施例のデータ転送回路72は、各種の記憶リソース(Resource)から任意に選択されたデータ転送元と、各種の記憶リソース(Resource)から任意に選択されたデータ転送先との間で、高速のデータ転送を実現している。図12から確認される通り、データ転送回路72が機能する記憶リソースには、内蔵VRAM71だけでなく、CPUIF部56、CGバスIF部82、DRAMIF部83を経由する外部デバイスも含まれる。 As described above, the data transfer circuit 72 of this embodiment is configured to transfer data between a data transfer source arbitrarily selected from various storage resources (Resources) and a data transfer destination arbitrarily selected from various storage resources (Resources). This enables high-speed data transfer between the two. As confirmed from FIG. 12, the storage resources on which the data transfer circuit 72 functions include not only the built-in VRAM 71 but also external devices via the CPU IF section 56, CG bus IF section 82, and DRAM IF section 83.

そして、CGROM55から1回に取得すべきデータ量(メモリシーケンシャルREAD)のように、ChA制御回路72aが機能する外部デバイスとのデータ転送量は、ChB制御回路72bやChC制御回路72cが機能するディスプレイリストDLの場合と比較して膨大であり、互いに、データ転送量が大きく相違する。 Then, like the amount of data to be acquired at one time from the CGROM 55 (memory sequential READ), the amount of data transferred to and from an external device where the ChA control circuit 72a functions is controlled by the display system where the ChB control circuit 72b or the ChC control circuit 72c functions. This is huge compared to the list DL, and the amount of data transferred is greatly different from each other.

ここで、これら各種のデータ転送について、単位データ量や総転送データ量を、細かく設定可能に構成することも考えらえるが、これでは、VDP内部の制御動作が煩雑化し、円滑な転送動作が阻害される。そこで、本実施例では、データ転送の最低データ量Dminを一意に規定すると共に、総転送データ量を、最低データ量DTminの整数倍となるよう制限することで、高速で円滑なデータ転送動作を実現している。特に限定されないが、実施例のデータ転送回路72では、最低データ量Dmin(単位データ量)を、256バイトとし、総転送データ量を、この整数倍に制限することにしている。 It may be possible to configure the unit data amount and total transfer data amount for these various data transfers to be finely configurable, but this would complicate the control operations inside the VDP and prevent smooth transfer operations. inhibited. Therefore, in this embodiment, the minimum data amount Dmin for data transfer is uniquely defined, and the total transfer data amount is limited to be an integral multiple of the minimum data amount DTmin, thereby achieving a high-speed and smooth data transfer operation. It has been realized. Although not particularly limited, in the data transfer circuit 72 of the embodiment, the minimum data amount Dmin (unit data amount) is 256 bytes, and the total transfer data amount is limited to an integral multiple of this.

したがって、32bit毎にCPUバス制御部72dのFIFOバッファに蓄積されたディスプレイリストDLの指示コマンド列は、その総量が最低データ量Dminに達したタイミングで、ChB制御回路72bやChC制御回路72bに転送され、各々のFIFOバッファに蓄積されることになる。 Therefore, the instruction command string of the display list DL stored in the FIFO buffer of the CPU bus control unit 72d every 32 bits is transferred to the ChB control circuit 72b or the ChC control circuit 72b at the timing when the total amount reaches the minimum data amount Dmin. will be stored in each FIFO buffer.

ディスプレイリストDLは、一連の指示コマンドで構成されているが、本実施例では、転送ポートレジスタTR_PORT の書込み単位(32bit)に対応して、ディスプレイリストDLは、コマンド長が、32bitの整数N倍(N>0)の指示コマンドのみで構成されている。したがって、データ転送回路72を経由して、ディスプレイリストDLの指示コマンドを受ける描画回路76やプリローダ73は、素早く円滑にコマンド解析処理(DL analyze)を開始することができる。なお、32bitの整数N倍のコマンド長は、その全てが有意ビットとは限らず、無意ビット(Don't care bit)も含んで、32bitの整数N倍という意味である。 The display list DL is composed of a series of instruction commands. In this embodiment, the command length of the display list DL is an integer N times 32 bits, corresponding to the write unit (32 bits) of the transfer port register TR_PORT. It consists of only (N>0) instruction commands. Therefore, the drawing circuit 76 and preloader 73 that receive the instruction command of the display list DL via the data transfer circuit 72 can quickly and smoothly start the command analysis process (DL analyze). Note that the command length of 32 bits, which is an integer N times, does not necessarily mean that all of the bits are significant bits, but also includes non-significant bits (don't care bits).

次に、プリローダ73について説明する。先に概略説明した通り、プリローダ73は、データ転送回路72(ChC制御回路72b)から転送されたディスプレイリストDLを解釈して、TXLOADコマンドが参照しているCGROM55上のCGデータを、予め、DRAM54のプリロード領域に転送する回路である。また、プリローダ73は、このTXLOADコマンドに関し、CGデータの参照先を、転送後のアドレスに書換えた書換えリストDL’を、DRAM54のDLバッファBUF’に記憶する。なお、DLバッファBUF’や、プリロード領域は、CPUリセット後の初期処理時(図20のST3)に、予め確保されている。 Next, the preloader 73 will be explained. As outlined above, the preloader 73 interprets the display list DL transferred from the data transfer circuit 72 (ChC control circuit 72b), and loads the CG data on the CGROM 55 referred to by the TXLOAD command into the DRAM 54 in advance. This is the circuit that transfers the data to the preload area. Furthermore, regarding this TXLOAD command, the preloader 73 stores in the DL buffer BUF' of the DRAM 54 a rewrite list DL' in which the reference destination of the CG data is rewritten to the address after transfer. Note that the DL buffer BUF' and the preload area are secured in advance during initial processing after the CPU is reset (ST3 in FIG. 20).

そして、書換えリストDL’は、描画回路76の描画動作の開始時に、データ転送回路72の接続バスアクセス調停回路72eや、ChB制御回路72bを経由して、描画回路76のディスプレイリストアナライザ(DL Analyzer )に転送される。そして、描画回路76は、書換えリストDL’に基づいて、描画動作を実行する。したがって、TXLOADコマンドなどに基づき、本来は、CGROM55から取得すべきCGデータが、プリロード領域に先読みされているプリロードデータとして、DRAM54のプリロード領域から取得される。この場合、プリロードデータは、上書き消去されない限り、繰り返し使用可能であり、プリロード領域にキャッシュヒットしたプリロードデータは、繰り返し再利用される。 Then, at the start of the drawing operation of the drawing circuit 76, the rewrite list DL' is sent to the display list analyzer (DL analyzer) of the drawing circuit 76 via the connection bus access arbitration circuit 72e of the data transfer circuit 72 and the ChB control circuit 72b. ) will be forwarded to. Then, the drawing circuit 76 executes a drawing operation based on the rewriting list DL'. Therefore, based on the TXLOAD command or the like, CG data that should originally be acquired from the CGROM 55 is acquired from the preload area of the DRAM 54 as preload data that has been read in advance into the preload area. In this case, the preload data can be used repeatedly unless overwritten and erased, and the preload data that hits the cache in the preload area is repeatedly reused.

本実施例では、十分な記憶容量を有する外付けDRAM54にプリロード領域を設定しているので、上記のキャッシュヒット機能が有効に機能する。また、外付けDRAM54の記憶容量が大きいので、例えば、複数フレーム分のCGデータを一気にプリロードする多重プリロードも可能である。すなわち、プリローダ73の動作期間に関し、CGデータの先読み動作を含んだ一連のプリロード動作の動作期間を、VDP回路52の間欠動作時の動作周期δの整数倍の範囲内で、適宜に設定することで多重プリロードが実現される。 In this embodiment, since the preload area is set in the external DRAM 54 having sufficient storage capacity, the cache hit function described above functions effectively. Furthermore, since the storage capacity of the external DRAM 54 is large, multiple preloading, in which multiple frames of CG data are preloaded at once, is possible, for example. That is, regarding the operation period of the preloader 73, the operation period of a series of preload operations including the pre-read operation of CG data is appropriately set within the range of an integral multiple of the operation period δ during intermittent operation of the VDP circuit 52. multiple preload is realized.

但し、以下の説明では、便宜上、多重プリロードのない実施例について説明するので、実施例のプリローダ73は、一動作周期(δ)の間に、一フレーム分のプリロード動作を完了することにする。なお、図20に関し後述するように、本実施例では、VDP回路52の間欠動作時の動作周期δは、表示装置DS1の垂直同期信号の2倍周期である1/30秒である。 However, in the following description, for convenience, an embodiment without multiple preloading will be described, so the preloader 73 of the embodiment completes the preloading operation for one frame during one operation cycle (δ). As will be described later with reference to FIG. 20, in this embodiment, the operating cycle δ of the VDP circuit 52 during intermittent operation is 1/30 seconds, which is twice the cycle of the vertical synchronizing signal of the display device DS1.

次に、描画回路76は、データ転送回路72を経由して転送されたディスプレイリストDLや書換えリストDL’の指示コマンド列を順番に解析して、グラフィックスデコーダ75やジオメトリエンジン77などと協働して、VRAM71に形成されたフレームバッファに、各表示装置DS1,DS2の一フレーム分の画像を描画する回路である。 Next, the drawing circuit 76 sequentially analyzes the instruction command strings of the display list DL and rewriting list DL' transferred via the data transfer circuit 72, and cooperates with the graphics decoder 75, geometry engine 77, etc. This is a circuit that draws an image for one frame of each display device DS1, DS2 in a frame buffer formed in the VRAM 71.

上記の通り、プリローダ73を機能させる実施例では、書換えリストDL’のCGデータの参照先は、CGROM55ではなく、DRAM54に設定されたプリロード領域である。そのため、描画回路76による描画の実行中に生じるCGデータへのシーケンシャルアクセスを迅速に実行することができ、動きの激しい高解像度の動画についても問題なく描画することができる。すなわち、本実施例によれば、CGROM55として、安価なSATAモジュールを活用しつつ、複雑高度な画像演出を実行することができる。 As described above, in the embodiment in which the preloader 73 functions, the reference destination of the CG data in the rewrite list DL' is not the CGROM 55 but the preload area set in the DRAM 54. Therefore, sequential access to CG data generated during execution of drawing by the drawing circuit 76 can be quickly executed, and even high-resolution moving images with rapid movement can be drawn without problems. That is, according to this embodiment, it is possible to perform complex and sophisticated image rendering while utilizing an inexpensive SATA module as the CGROM 55.

ところで、プリローダ73を機能させるか否かに拘らず、ディスプレイリストDLや書換えリストDL’の転送時に、仮にデータ化けが発生しても、描画回路76は、これを検出することはできない。また、ノイズなどの影響で、描画回路76がフリーズして、内蔵VRAM71のREAD/WRITE アクセスが異常停止することも有り得る。そこで、本実施例では、描画回路76が不合理な指示コマンド(analyze 不能のビット並び)を検出した場合や、一定期間、内蔵VRAM71に対してREAD/WRITE アクセスがない場合には、描画異常割込みを発生させるよう構成されている(描画異常割込みが許可状態)。なお、この点は、図20(d)に関して後述する。 Incidentally, regardless of whether or not the preloader 73 is activated, even if data garbled occurs during transfer of the display list DL or rewrite list DL', the drawing circuit 76 will not be able to detect this. Furthermore, the drawing circuit 76 may freeze due to the influence of noise, and READ/WRITE access to the built-in VRAM 71 may stop abnormally. Therefore, in this embodiment, when the drawing circuit 76 detects an unreasonable instruction command (a bit arrangement that cannot be analyzed) or when there is no READ/WRITE access to the built-in VRAM 71 for a certain period of time, a drawing abnormality interrupt is generated. (drawing abnormal interrupts are enabled). Note that this point will be discussed later with respect to FIG. 20(d).

次に、図11に関して説明した通り、VRAM71の任意領域(c) に確保されたフレームバッファFBは、描画領域と読出領域に区分されたダブルバッファであり、2つの領域を、交互に用途を切り替えて使用する。また、本実施例では、2つの表示装置DS1,DS2が接続されているので、図11に示す通り、2区画のフレームバッファFBa/FBbが確保されている。したがって、描画回路76は、表示装置DS1用のフレームバッファFBaの描画領域(書込み領域)に、一フレーム分の画像データを描画すると共に、表示装置DS2用のフレームバッファFBaの描画領域(書込み領域)に、一フレーム分の画像データを描画することになる。なお、描画領域に、画像データが書込まれているとき、表示回路74は、他方の読出領域(表示領域)の画像データを読み出して、各表示装置DS1,DS2に出力する。 Next, as explained with reference to FIG. 11, the frame buffer FB secured in the arbitrary area (c) of the VRAM 71 is a double buffer divided into a drawing area and a reading area, and the usage of the two areas is alternately switched. and use it. Further, in this embodiment, since two display devices DS1 and DS2 are connected, two frame buffers FBa/FBb are secured as shown in FIG. 11. Therefore, the drawing circuit 76 draws one frame of image data in the drawing area (writing area) of the frame buffer FBa for the display device DS1, and also draws the image data for one frame in the drawing area (writing area) of the frame buffer FBa for the display device DS2. Then, one frame of image data will be drawn. Note that when image data is written in the drawing area, the display circuit 74 reads out the image data in the other reading area (display area) and outputs it to each of the display devices DS1 and DS2.

表示回路74は、フレームバッファFBa,FBbの画像データを読み出して、最終的な画像処理を施した上で出力する回路である(図13(a)参照)。最終的な画像処理には、例えば、画像を拡大/縮小するスケーラのスケーリング処理、微妙なカラー補正処理、画像全体の量子化誤差が最小化するディザリング処理が含まれている。そして、これらの画像処理を経たデジタルRGB信号(合計24bit)が、通常は、水平同期信号HSや垂直同期信号VSなどと共に出力される。 The display circuit 74 is a circuit that reads image data from the frame buffers FBa and FBb, performs final image processing, and outputs the data (see FIG. 13(a)). The final image processing includes, for example, a scaler scaling process that enlarges/reduces the image, a subtle color correction process, and a dithering process that minimizes the quantization error of the entire image. A digital RGB signal (24 bits in total) that has undergone these image processes is usually output together with a horizontal synchronizing signal HS, a vertical synchronizing signal VS, and the like.

図13(a)に示す通り、本実施例では、上記の動作を並列的に実行する3系統の表示回路A/B/Cが設けられており、各表示回路74A~74Cは、各々に対応するフレームバッファFBa/FBb/FBcの画像データを読み出して、上記の最終画像処理を実行する。但し、本実施例では、表示装置は2個であるので、フレームバッファFBcは確保されておらず、表示回路74Cが機能することもない。 As shown in FIG. 13(a), in this embodiment, three systems of display circuits A/B/C that execute the above operations in parallel are provided, and each display circuit 74A to 74C corresponds to The image data of the frame buffers FBa/FBb/FBc are read out and the final image processing described above is executed. However, in this embodiment, since there are two display devices, the frame buffer FBc is not secured and the display circuit 74C does not function.

ここで、メイン表示装置DS1の仕様を確認すると、メイン表示装置DS1は、左右方向に隣接する奇数ピクセル(ODD)と偶数ピクセル(EVEN)を、別々のLVDS(Low Voltage Differential Signaling)伝送路を通して、受信部RV(RVa+RVb)で受ける必要がある。また、メイン表示装置DS1の動作クロックCKの周波数は、40~70MHz程度(典型値54MHz)にする必要があり、(WTh+640)×(WTv+1024)/54MHz≒1/60秒となるよう、水平/垂直方向の待機時間WTh/WTvを設定する必要がある。更に、メイン表示装置DS1に対して画像データ(ODD/EVEN信号)を出力するタイミングでは、アクティブレベルのデータ有効信号ENABを出力する必要がある。 Here, when checking the specifications of the main display device DS1, the main display device DS1 connects odd pixels (ODD) and even pixels (EVEN) adjacent in the left and right direction through separate LVDS (Low Voltage Differential Signaling) transmission paths. It is necessary to receive it at the receiver RV (RVa+RVb). In addition, the frequency of the operating clock CK of the main display device DS1 needs to be approximately 40 to 70 MHz (typical value 54 MHz), and horizontal/vertical It is necessary to set the waiting time WTh/WTv in the direction. Furthermore, at the timing of outputting image data (ODD/EVEN signal) to the main display device DS1, it is necessary to output a data valid signal ENAB at an active level.

そこで、表示回路74Aは、上記した全ての仕様を満たす信号を出力する必要がある。図14(a)~図14(e)は、表示回路74Aから出力される各種の信号を図示したものである。まず、ドットクロック(LVDSクロック)DCKの周波数を決定する必要があるが、本実施例では、メイン表示装置DS1を、典型値54MHzの動作クロックCKで動作させるので、これに対応して、(VDP回路52における)設計上のドットクロックDCKを、108MHz(=54×2)としている。 Therefore, the display circuit 74A needs to output a signal that satisfies all the specifications described above. FIGS. 14(a) to 14(e) illustrate various signals output from the display circuit 74A. First, it is necessary to determine the frequency of the dot clock (LVDS clock) DCK. In this embodiment, since the main display device DS1 is operated with the operating clock CK of a typical value of 54 MHz, the frequency of the (VDP The designed dot clock DCK (in the circuit 52) is set to 108 MHz (=54×2).

それは、横1280ドット×縦1024ラインの表示パネルLCD(図14(f)参照)において、左右に隣接する2つの画素が、54MHzの動作クロックCKに同期して一気に処理されるので、実質的には、108MHzのドットクロックDCKで動作するのと等価だからである。 This is because in the display panel LCD (see Figure 14(f)), which has 1280 dots horizontally and 1024 lines vertically, two pixels adjacent to each other on the left and right are processed at once in synchronization with the 54MHz operating clock CK. This is because it is equivalent to operating with a 108 MHz dot clock DCK.

そして、表示回路74Aの動作を規定する各種の動作パラメータは、周波数108MHzのドットクロックDCKに基づいて規定される。先ず、(WTh+640)×(WTv+1024)/54MHz≒1/60秒となるよう、水平/垂直方向の待機時間WTh/WTvを設定する必要があるが、表示回路74Aについての動作パラメータWTh,WTvとしては、(WTh+1280)×(WTv+1024)/108MHz≒1/60秒を満たす必要がある。 Various operating parameters that define the operation of the display circuit 74A are defined based on the dot clock DCK having a frequency of 108 MHz. First, it is necessary to set the horizontal/vertical standby time WTh/WTv so that (WTh+640)×(WTv+1024)/54MHz≒1/60 seconds, but the operating parameters WTh, WTv for the display circuit 74A are , (WTh+1280)×(WTv+1024)/108MHz≈1/60 seconds.

また、水平/垂直方向の待機時間WTh/WTvについて、表示装置DS1の仕様上の許容範囲も考慮する必要がある。そこで、本実施例では、水平待機時間WThを、108MHzのドットクロックDCKでカウントして、382クロックとし、垂直待機時間WTvを、59ラインとしている。したがって、一フレームの画像更新に要する時間は、(382+1280)×(59+1024)/108MHz=16.666mSとなり、フレームレートFR(Frame Rate)が1/60秒となる。 Furthermore, regarding the horizontal/vertical standby time WTh/WTv, it is also necessary to consider the allowable range according to the specifications of the display device DS1. Therefore, in this embodiment, the horizontal standby time WTh is counted using the 108 MHz dot clock DCK and is set to 382 clocks, and the vertical standby time WTv is set to 59 lines. Therefore, the time required to update one frame of image is (382+1280)×(59+1024)/108 MHz=16.666 mS, and the frame rate FR is 1/60 seconds.

この関係は、表示装置DS1の更新周期FR[秒]を規定するものであり、後述するドットクロックDCKの周波数Fdot、水平同期のサイクル数THc、及び、垂直同期のライン数TVlを使用すると、FR=THc×TVl/Fdotとなる。ここで更新周期FRが長すぎると、フリッカなどの異常が生じるおそれがあり、一方、更新周期FRが短すぎると、表示装置が正常な更新処理を実行できないので、0.95/60<FR[秒]<1.05/60の範囲に規定すべきである。 This relationship defines the update period FR [seconds] of the display device DS1, and using the frequency F dot of the dot clock DCK, the number of horizontal synchronization cycles THc, and the number of vertical synchronization lines TVl, which will be described later, FR=THc×TVl/F dot . Here, if the update cycle FR is too long, abnormalities such as flickering may occur.On the other hand, if the update cycle FR is too short, the display device cannot perform normal update processing, so 0.95/60<FR[ seconds]<1.05/60.

この設定に対応して、データ有効信号ENABは、各ラインの画像更新動作において、382クロックに対応する待機時間WTh(=382/108MHz)は、Lレベルであり、その後、1280クロックに対応するアクティブ区間(=1280/108MHz)は、アクティブレベル(H)となる(図14(c))。なお、図14(d)と、図14(e)に示す通り、データ有効信号ENABのアクティブ区間では、一ライン1280ドットの画素について、所定の時間(11.85μS=1280/108MHz)で画像更新動作が完了するよう、画像データが出力される。すなわち、1280個のドットクロックDCKに同期して、1280個の画素データ(Pixel Data)が出力される。なお、表示装置DS1には、諧調度2×2×2のフルカラー画像が表示されるので、1画素の画素データは、3×8ビット長である。 Corresponding to this setting, the data valid signal ENAB is at L level during the standby time WTh (=382/108MHz) corresponding to 382 clocks in the image update operation of each line, and then at the active level corresponding to 1280 clocks. The section (=1280/108 MHz) is at the active level (H) (FIG. 14(c)). As shown in FIG. 14(d) and FIG. 14(e), during the active period of the data valid signal ENAB, the image is updated at a predetermined time (11.85 μS = 1280/108 MHz) for 1280 dots per line. Image data is output to complete the operation. That is, 1280 pixel data are output in synchronization with 1280 dot clocks DCK. Note that since a full-color image with a gradation level of 2 8 × 2 8 × 2 8 is displayed on the display device DS1, pixel data of one pixel has a length of 3 × 8 bits.

ところで、本実施例では、メイン表示装置DS1では必要とはされないものの、垂直同期信号VSと水平同期信号HSを出力している。垂直同期信号VSは、垂直待機時間WTvの時間内に出力され、水平同期信号HSは、水平待機時間WThの時間内に出力される。なお、図14(a)と図14(b)には、理解の便宜上、各々の動作周期が示されている。また、図14(f)には、TH×TV(=1083×1662クロック)で特定される矩形枠の左上と右下の頂点に、〇印を示して「表示動作の開始」「表示動作の終了」と記載されているが、この〇印は、1/60秒ごとに開始される表示回路74Aの動作周期を規定する「Vブランク開始」を意味する。表示動作を規定する1083×1662クロックが、1/60秒に一致するので、「表示動作の開始」から「表示動作の終了」までの経過時間(表示回路74Aの動作周期)は1/60秒である。なお、「Vブランク開始」については、図20に基づいて後述する。 Incidentally, in this embodiment, the vertical synchronizing signal VS and the horizontal synchronizing signal HS are outputted, although they are not necessary in the main display device DS1. The vertical synchronization signal VS is output within the vertical standby time WTv, and the horizontal synchronization signal HS is output within the horizontal standby time WTh. Note that each operation cycle is shown in FIGS. 14(a) and 14(b) for convenience of understanding. In addition, in FIG. 14(f), circles are shown at the top left and bottom right vertices of the rectangular frame specified by TH×TV (=1083×1662 clocks), indicating “start of display operation” and “start of display operation”. The mark "O" means "V blank start" which defines the operation cycle of the display circuit 74A, which starts every 1/60 seconds. Since the 1083 x 1662 clock that defines the display operation corresponds to 1/60 second, the elapsed time from "start of display operation" to "end of display operation" (operation cycle of display circuit 74A) is 1/60 second. It is. Note that "V blank start" will be described later based on FIG. 20.

図13に戻って説明を続けると、実施例の出力選択部79は、表示回路74Aの出力信号を、108MHzのドットクロックDCKを2分周するデュアルリンクに分割して、各々、LVDS部80aと、LVDS部80bに伝送している(図13(a)、図5参照)。そして、各LVDS部80a,80bは、画像データ(合計24bitのデジタルRGB信号)を、第1と第2のLVDS信号に変換し、これにクロック信号(54MHz=108/2)を伝送する一対を加えて、全五対の差動信号LVDS1,LVDS2として、2つの経路を経由して、メイン表示装置DS1に出力している(図13(a)図4参照)。 Continuing the explanation by returning to FIG. 13, the output selection section 79 of the embodiment divides the output signal of the display circuit 74A into dual links that divide the 108 MHz dot clock DCK by two, and divides the output signal of the display circuit 74A into two links, respectively. , is transmitted to the LVDS unit 80b (see FIG. 13(a) and FIG. 5). Each LVDS section 80a, 80b converts the image data (digital RGB signal of 24 bits in total) into first and second LVDS signals, and sends a pair of signals to which a clock signal (54MHz=108/2) is transmitted. In addition, all five pairs of differential signals LVDS1 and LVDS2 are output to the main display device DS1 via two paths (see FIG. 13(a) and FIG. 4).

先に説明した通り、メイン表示装置DS1では、一画素分のODD信号と、隣接する一画素分のEVEN信号とが、同じタイミングで処理されるので、実質的な動作クロックCKの周波数は、表示回路74Aが出力する108MHzのドットクロックDCKに一致する。 As explained above, in the main display device DS1, the ODD signal for one pixel and the EVEN signal for one adjacent pixel are processed at the same timing, so the actual frequency of the operating clock CK is This corresponds to the 108 MHz dot clock DCK output by the circuit 74A.

以上、メイン表示装置DS1に伝送すべき画像を生成する表示回路74Aについて説明したが、表示回路74Bは、サブ表示装置DS2に伝送すべき画像データを生成している。表示回路74Bが出力するデジタルRGB信号は、出力選択部79を経由してデジタルRGB部80cに供給され、垂直同期信号VSや水平同期信号HSと共に、サブ表示装置DS2に伝送される。 The display circuit 74A that generates an image to be transmitted to the main display device DS1 has been described above, but the display circuit 74B generates image data to be transmitted to the sub display device DS2. The digital RGB signal output by the display circuit 74B is supplied to the digital RGB section 80c via the output selection section 79, and is transmitted to the sub-display device DS2 together with the vertical synchronization signal VS and the horizontal synchronization signal HS.

なお、同期信号VS,HSと共に、データ有効信号ENABもデジタルRGB部80cを経由して伝送されるが、これら各信号は、LVDS伝送路の場合のような離散値ではなく、連続信号として伝送されるのは勿論である(図13(a)参照)。 Note that, along with the synchronization signals VS and HS, the data valid signal ENAB is also transmitted via the digital RGB section 80c, but each of these signals is transmitted as a continuous signal rather than as a discrete value as in the case of the LVDS transmission line. Of course, this is true (see FIG. 13(a)).

ところで、本実施例の場合、各表示回路74A~74Bには、表示タイミングに対して、表示データの生成が間に合わなかったUnderrun異常をカウントするアンダーランカウンタURCNTa~URCNTcが設けられている(図14参照)。そして、このアンダーランカウンタURCNTa~URCNTcのカウンタ値は、アンダーラン異常が発生するとVBLANK毎に自動的に加算されるよう構成されている。 Incidentally, in the case of this embodiment, each display circuit 74A to 74B is provided with underrun counters URCNTa to URCNTc that count underrun abnormalities in which display data is not generated in time for the display timing (FIG. 14). reference). The counter values of the underrun counters URCNTa to URCNTc are configured to be automatically added for each VBLANK when an underrun abnormality occurs.

次に、SMC部78(Serial Management Controller)は、LEDコントローラとMotorコントローラとを内蔵した複合コントコントローラである。そして、外部基板に搭載したLED/Motorドライバ(シフトレジスタを内蔵するドライバIC)に対して、クロック信号に同期してLED駆動信号やモータ駆動信号を出力する一方、適宜なタイミングで、ラッチパルスを出力可能に構成されている。 Next, the SMC unit 78 (Serial Management Controller) is a composite control controller incorporating an LED controller and a Motor controller. Then, it outputs the LED drive signal and motor drive signal in synchronization with the clock signal to the LED/motor driver (driver IC with built-in shift register) mounted on the external board, and also outputs latch pulses at appropriate timing. Configured to enable output.

上記したVDP回路52の内部回路及びその動作に関し、内部回路が実行すべき動作内容は、演出制御CPU63が、制御レジスタ群70に設定する動作パラメータ(設定値)で規定され、VDP回路52の実行状態は、制御レジスタ群70の動作ステイタス値をREADすることで特定できるようになっている。制御レジスタ群70は、演出制御CPU63のメモリマップ上、1Mバイト程度のアドレス空間(0~FFFFFH)にマッピングされた多数のVDPレジスタRGijを意味し、演出制御CPU63は、CPUIF部81を経由して動作パラメータのWRITE (設定)動作と、動作ステイタス値のREAD動作を実行するようになっている(図7(b)参照)。 Regarding the internal circuit of the VDP circuit 52 and its operation, the contents of the operation to be executed by the internal circuit are defined by the operation parameters (setting values) set in the control register group 70 by the production control CPU 63, and the execution of the VDP circuit 52. The state can be specified by reading the operation status value of the control register group 70. The control register group 70 refers to a large number of VDP registers RGij mapped to an address space of about 1 Mbyte (0 to FFFFFH) on the memory map of the production control CPU 63. A WRITE (setting) operation for operation parameters and a READ operation for operation status values are executed (see FIG. 7(b)).

制御レジスタ群70(VDPレジスタRGij)には、割り込み動作などシステム動作に関する初期設定値が書込まれる「システム制御レジスタ」と、内蔵VRAMにAAC領域(a) やページ領域(b) を確定する共に、インデックステーブルIDXTBLを構築又は変更などに関する「インデックステーブルレジスタ」と、演出制御CPU63とVDP回路52の内部回路との間のデータ転送回路72によるデータ転送処理に関する設定値などが書込まれる「データ転送レジスタ」と、グラフィックスデコーダ75の実行状況を特定する「GDECレジスタ」と、指示コマンドや描画回路76に関する設定値が書込まれる「描画レジスタ」と、プリローダ73の動作に関する設定値が書込まれる「プリローダレジスタ」と、表示回路74の動作に関する設定値が書込まれる「表示レジスタ」と、LEDコントローラ(SMC部78)に関する設定値が書込まれる「LED制御レジスタ」と、Motorコントローラ(SMC部78)に関する設定値が書込まれる「モータ制御レジスタ」と、音声回路SNDに関する設定値が書込まれる「音声制御レジスタSRG」と、が含まれている。但し、本実施例では、音声回路SNDを活用していない。 The control register group 70 (VDP register RGij) includes a "system control register" in which initial setting values related to system operations such as interrupt operations are written, and a register that defines the AAC area (a) and page area (b) in the built-in VRAM. , "Index table register" related to constructing or changing the index table IDXTBL, and "Data transfer" in which setting values related to data transfer processing by the data transfer circuit 72 between the production control CPU 63 and the internal circuit of the VDP circuit 52 are written. a "GDEC register" that specifies the execution status of the graphics decoder 75, a "drawing register" in which instruction commands and setting values regarding the drawing circuit 76 are written, and setting values relating to the operation of the preloader 73 are written. A "preloader register", a "display register" into which setting values related to the operation of the display circuit 74 are written, an "LED control register" into which setting values relating to the LED controller (SMC section 78) are written, and a motor controller (SMC section 78). 78), and a "sound control register SRG" into which setting values related to the audio circuit SND are written. However, in this embodiment, the audio circuit SND is not utilized.

何れにしても、以下の説明では、制御レジスタ群70に含まれる一又は複数のレジスタRGijを、上記した個別名称で呼ぶ場合と、VDPレジスタRGijと総称することがあるが、何れにしても、演出制御CPU63は、所定のVDPレジスタRGijに、適宜な設定値を書込むことで、VDP回路52の内部動作を制御している。具体的には、演出制御CPU63は、適宜な時間間隔で更新するディスプレイリストDLと、所定のVDPレジスタRGijへの設定値に基づいて、所定の画像演出を実現している。なお、この実施例では、ランプ演出やモータ演出も含め、演出制御CPU63が担当するので、VDPレジスタRGijには、LED制御レジスタやモータ制御レジスタも含まれる。 In any case, in the following description, one or more registers RGij included in the control register group 70 may be referred to by the above-mentioned individual names or collectively as VDP registers RGij, but in any case, The performance control CPU 63 controls the internal operation of the VDP circuit 52 by writing appropriate setting values into a predetermined VDP register RGij. Specifically, the effect control CPU 63 realizes a predetermined image effect based on a display list DL that is updated at appropriate time intervals and a set value to a predetermined VDP register RGij. In this embodiment, since the performance control CPU 63 is in charge of the lamp performance and motor performance, the VDP register RGij also includes the LED control register and the motor control register.

続いて、上記したCPU回路51とVDP回路52とを内蔵した複合チップ50によって実現される、画像演出、音声演出、モータ演出、及び、ランプ演出の統一的な演出制御動作について説明する。 Next, a unified performance control operation of image performance, audio performance, motor performance, and lamp performance realized by the composite chip 50 incorporating the above-described CPU circuit 51 and VDP circuit 52 will be explained.

本実施例の場合、複合チップ50の動作は、電源投入や異常リセットによるパワーオンリセット動作(図15(a)参照)によって開始され、初期設定プログラム(ブートプログラム)Pinitによる初期設定処理(SP1~SP9)を経て、演出制御プログラムMain及び割込み処理プログラム(ベクタハンドラ)Voptによるメイン制御処理(SP10)に移行するよう構成されている。メイン制御処理については、図17(a)に、その導入部の処理内容が記載されており、本体部の処理内容が図20(a)に記載されている。なお、図17のステップSP27の処理は、図20(a)のステップST1~ST3の処理を含んでいる。 In the case of this embodiment, the operation of the composite chip 50 is started by a power-on reset operation (see FIG. 15(a)) due to power-on or abnormal reset, and initial setting processing (SP1 to SP1) by an initial setting program (boot program) Pinit. After SP9), the process is configured to proceed to main control processing (SP10) by the production control program Main and the interrupt processing program (vector handler) Vopt. Regarding the main control processing, the processing contents of the introduction part are described in FIG. 17(a), and the processing contents of the main part are described in FIG. 20(a). Note that the process in step SP27 in FIG. 17 includes the processes in steps ST1 to ST3 in FIG. 20(a).

以上を踏まえて、パワーオンリセット動作について図15(a)に基づいて説明する。電源投入時など、システムリセット信号SYSが所定の期間(アサート期間)Lレベルを維持すると、全ての動作制御レジスタREGや、全てのVDPレジスタRGijは、所定のデフォルト値に自動設定される。そして、その後、システムリセット信号SYSがHレベル(ネゲートレベル)に変化すると、本実施例では、最初に、アドレス空間CS0の先頭番地からの32bitデータが、演出制御CPU63のプログラムカウンタPCに設定され、これに続く32bitデータが、スタックポインタSPに設定されるよう構成されている。なお、図9や図16(c)では、プログラムカウンタPCやスタックポインタSPの初期値を記憶するメモリの先頭領域をベクタテーブルVECTと称している。 Based on the above, the power-on reset operation will be explained based on FIG. 15(a). When the system reset signal SYS maintains the L level for a predetermined period (assertion period) such as when the power is turned on, all operation control registers REG and all VDP registers RGij are automatically set to predetermined default values. After that, when the system reset signal SYS changes to H level (negate level), in this embodiment, 32-bit data from the first address of the address space CS0 is first set in the program counter PC of the production control CPU 63, The 32-bit data following this is configured to be set in the stack pointer SP. Note that in FIG. 9 and FIG. 16(c), the top area of the memory that stores the initial values of the program counter PC and stack pointer SP is called a vector table VECT.

図15(b)に示す通り、このベクタテーブルVECTには、優先度と割込み要因などを特定するベクタ番号と、アドレス情報とが対応して記憶されている。ベクタ番号は、その番号が小さいほど優先度が高いが、例えば、ベクタ番号11は、マスク不能割込み(NMI)であって、アドレス情報として、NMI割込み時に実行される割込み処理プログラムの先頭アドレスが記憶されている。また、ベクタ番号64は、VDPからの内部割込み(VDP_IRQ0)であって、アドレス情報として、VDP_IRQ0割込み時に実行される割込み処理プログラムの先頭アドレスが記憶されている。 As shown in FIG. 15(b), in this vector table VECT, vector numbers for specifying priorities, interrupt factors, etc., and address information are stored in correspondence. The smaller the vector number, the higher the priority. For example, vector number 11 is a non-maskable interrupt (NMI), and the start address of the interrupt processing program to be executed at the time of the NMI interrupt is stored as address information. has been done. Vector number 64 is an internal interrupt (VDP_IRQ0) from the VDP, and the start address of the interrupt processing program to be executed at the time of the VDP_IRQ0 interrupt is stored as address information.

割込み優先度は、図17(d)に示す通りであるので、ベクタ番号64より小さいベクタ番号の欄には、制御コマンド受信割込みIRQ_CMD と、20μSタイマ割込みと、1mSタイマ割込みについて、割込み処理プログラムの先頭アドレスが各々記憶されていることになる。一方、ベクタ番号64より大きいベクタ番号の欄には、VDP_IRQ 1より優先度が低い割込み処理プログラム(IRQ_SND ,IRQ_RTC など)の先頭アドレスが各々記憶されている。 The interrupt priorities are as shown in Figure 17(d), so the columns for vector numbers smaller than vector number 64 contain information about the control command reception interrupt IRQ_CMD, the 20μS timer interrupt, and the 1mS timer interrupt in the interrupt processing program. Each starting address is stored. On the other hand, in the columns of vector numbers greater than vector number 64, the start addresses of interrupt processing programs (IRQ_SND, IRQ_RTC, etc.) having lower priority than VDP_IRQ 1 are stored.

また、ベクタテーブルVECTにおいて、ベクタ番号0とベクタ番号1は、パワーオンリセット時にCPUのプログラムカウンタと、スタックポインタに自動設定されるべき、設定値が規定されている。図15(b)に示す通り、この実施例では、パワーオンリセット時(リセットアサート期間)の内部動作として、4バイトデータ「****」が、プログラムカウンタPCに設定され、4バイトデータ「++++」がスタックポインタSPに設定される。なお、「****」は、アドレス空間CS0に不揮発的に記憶されている初期設定プログラムPinit(図15のSP1~SP9)の先頭アドレス値であり、「++++」は、内蔵RAM59に確保された、LIFO(Last-In First-Out )方式で機能するスタック領域の先端又は終端のアドレス値である。 Further, in the vector table VECT, vector number 0 and vector number 1 define setting values that should be automatically set to the program counter and stack pointer of the CPU at the time of power-on reset. As shown in FIG. 15(b), in this embodiment, 4-byte data "***" is set in the program counter PC as an internal operation during power-on reset (reset assertion period), and 4-byte data "***" is set in the program counter PC. ++++" is set in the stack pointer SP. Note that "****" is the start address value of the initial setting program Pinit (SP1 to SP9 in FIG. 15) that is non-volatilely stored in the address space CS0, and "++++" is the start address value that is reserved in the built-in RAM 59. In addition, it is the address value of the top or end of the stack area that functions in the LIFO (Last-In First-Out) method.

なお、本実施例では、レジスタバンクRBiを有効活用するので、割込み処理時に、スタック領域が消費されることなく、それほどのメモリ容量は必要とされない。すなわち、本実施例では、スタック領域は、専ら、関数処理や、サブルーチン処理において活用される。 Note that in this embodiment, since the register bank RBi is effectively utilized, the stack area is not consumed during interrupt processing, and a large memory capacity is not required. That is, in this embodiment, the stack area is used exclusively for function processing and subroutine processing.

以上の動作の結果、その後、演出制御CPU63は、アドレス値「****」以降に記載された初期設定プログラムPinitを実行することになる。但し、アドレス空間CS0のメモリREAD動作は、バスステートコントローラ66(図8)の動作を規定する動作制御レジスタREGのデフォルト値(初期値)に基づいて実行される。この動作制御レジスタREGの初期値は、リセットアサート期間(システムリセット信号SYSがLレベルを維持する図6(d)に示す期間)に自動的に設定される値であり、アドレス空間CS0を、如何なるメモリデバイスで構成しても、問題なくREADアクセスできるよう、最遅READアクセス動作(デフォルトアクセス動作)に設定されている。 As a result of the above operations, the production control CPU 63 will then execute the initial setting program Pinit written after the address value "*****". However, the memory READ operation of the address space CS0 is executed based on the default value (initial value) of the operation control register REG that defines the operation of the bus state controller 66 (FIG. 8). The initial value of this operation control register REG is a value that is automatically set during the reset assertion period (the period shown in FIG. 6(d) when the system reset signal SYS maintains the L level), and the address space CS0 is It is set to the slowest READ access operation (default access operation) so that READ access can be performed without problems even when configured with memory devices.

そこで、このデフォルトアクセス動作を、最適なアクセス動作に変更するべく、最初に、アドレス空間CS0に対するバスステートコントローラ66(図8)の動作を規定する所定の動作制御レジスタREGに最適値を設定する(SP1)。すなわち、初期設定プログラムPinit(SP1~SP9)、演出制御プログラムMainB(SP10)、定数データなどを格納したPROM53をアクセスする場合のメモリREAD動作を、メモリデバイスに合わせて最適化するべく、バス幅やページアクセスの有無を設定すると共に、チップセレク信号CS0や、READ制御信号や、WRITE 制御信号その他の動作タイミングを最適設定する(図38参照)。 Therefore, in order to change this default access operation to an optimal access operation, an optimal value is first set in a predetermined operation control register REG that defines the operation of the bus state controller 66 (FIG. 8) for the address space CS0 ( SP1). In other words, the bus width and In addition to setting the presence or absence of page access, the chip select signal CS0, READ control signal, WRITE control signal, and other operation timings are optimally set (see FIG. 38).

以上の設定の結果、ステップSP2以降の処理は、アドレス空間CS0に記憶されているプログラムを、最適にメモリREADして実行されることになる。そこで、次に、演出制御CPU63が、VDPレジスタRGijをアクセスする場合のREAD/WRITE アクセス動作を最適化するべく、VDPレジスタRGijに対するバスステートコントローラ66(図8)の動作を規定する所定の動作制御レジスタREGに最適値を設定する(SP2)。 As a result of the above settings, the processes after step SP2 are executed by optimally reading the program stored in the address space CS0 into the memory. Therefore, next, in order to optimize the READ/WRITE access operation when accessing the VDP register RGij, the production control CPU 63 performs predetermined operation control that defines the operation of the bus state controller 66 (FIG. 8) with respect to the VDP register RGij. An optimum value is set in register REG (SP2).

先に説明した通り、本実施例では、VDPレジスタRGijは、演出制御CPU63のアドレス空間CS7に位置付けられているので、チップセレク信号CS7や、その他の制御信号の動作タイミングを最適設定するべく所定の動作制御レジスタREGに所定値を書込むことになる。 As explained above, in this embodiment, the VDP register RGij is located in the address space CS7 of the production control CPU 63, so a predetermined value is set in order to optimally set the operation timing of the chip select signal CS7 and other control signals. A predetermined value is written to the operation control register REG.

続いて、特定のVDPレジスタRGijのレジスタ値を読み出して、その値が所定値(デバイスコード)か否かを判定する(SP3)。これは、VDP回路52のシステムクロックが安定化したことの確認判定である。すなわち、VDP回路52は、PLLREF端子に供給される発振器OSC2の発振出力に基づいて動作するが、このVDP回路52が、CPU回路51からの指令(つまり、VDPレジスタRGijへの設定など)を正常に受け付け可能か否かの判定である。 Subsequently, the register value of a specific VDP register RGij is read, and it is determined whether the value is a predetermined value (device code) (SP3). This is a confirmation judgment that the system clock of the VDP circuit 52 has been stabilized. That is, the VDP circuit 52 operates based on the oscillation output of the oscillator OSC2 supplied to the PLLREF terminal, but this VDP circuit 52 does not normally process commands from the CPU circuit 51 (that is, settings to the VDP register RGij, etc.). This is a determination as to whether or not it can be accepted.

そして、デバイスコードの読出し処理(SP3)によって、システムクロックが安定化したことが確認できれば、その後は、VDP回路52の正常動作を期待できるので、所定のVDPレジスタRGijに対する設定処理を実行する(SP4~SP6)。具体的には、先ず、演出制御CPU63からVDPレジスタRGijをアクセスする場合のエンディアン設定(ビッグ/リトル)や、データバス幅を設定する(SP4)。 Then, if it is confirmed that the system clock has been stabilized by the device code reading process (SP3), normal operation of the VDP circuit 52 can be expected, so the setting process for the predetermined VDP register RGij is executed (SP4). ~SP6). Specifically, first, the endian setting (big/little) and data bus width when accessing the VDP register RGij from the performance control CPU 63 are set (SP4).

なお、本実施例では、設定値の最上位ビット(Most significant Bit)を、VDPレジスタRGijの最上位ビットに格納するビックエンディアンに設定し、データ32バス幅を32bitに設定するが、これらの設定値が、仮に、デフォルト値と同じであれば、これらの設定処理を省略することもできる(以下の処理も同様)。 In this embodiment, the most significant bit of the setting value is set to big endian, which is stored in the most significant bit of the VDP register RGij, and the data 32 bus width is set to 32 bits, but these settings If the value is the same as the default value, these setting processes can be omitted (the following processes are the same).

次に、VDP回路からCPU回路への内部割込み(VDP_IRQ0,VDP_IRQ1,VDP_IRQ2,VDP_IRQ3)について、割込み有意レベル(H/L)を設定し、PLLREF端子(図7(a)参照)へのクロック信号(リファレンスクロック)に基づいてDDR(DRAM54)を機能させる旨を設定する(SP4)。なお、PLLREF端子に、発振器OSC2のリファレンスクロックが供給されることは図7(a)に関して説明した通りである。 Next, the interrupt significance level (H/L) is set for the internal interrupts (VDP_IRQ0, VDP_IRQ1, VDP_IRQ2, VDP_IRQ3) from the VDP circuit to the CPU circuit, and the clock signal ( A setting is made to make the DDR (DRAM 54) function based on the reference clock (SP4). Note that the reference clock of the oscillator OSC2 is supplied to the PLLREF terminal, as described in connection with FIG. 7(a).

続いて、図9に示すメモリマップを実現するべく、アドレス空間CS1~CS6を定義する(SP5)。先に説明した通り、アドレス空間CS3は、音声プロセッサ27の内部レジスタに付与され、アドレス空間CS4は、RTC38の内部レジスタやSRAM39のアドレス空間に付与され、アドレス空間CS5は、外付けDRAM(DDR)54に付与され、アドレス空間CS6は、内蔵CPUのワークメモリ57に付与される。 Next, address spaces CS1 to CS6 are defined to realize the memory map shown in FIG. 9 (SP5). As explained above, the address space CS3 is assigned to the internal register of the audio processor 27, the address space CS4 is assigned to the internal register of the RTC 38 and the address space of the SRAM 39, and the address space CS5 is assigned to the external DRAM (DDR). 54, and the address space CS6 is assigned to the work memory 57 of the built-in CPU.

なお、VDPレジスタRGijが、アドレス空間CS7に割り当てられることは固定的に規定されているので、アドレス空間CS7の定義処理は不要である。また、アドレス空間CS0は、CPU回路51のメモリマップ0x000000000番地以降であることは予め固定的に規定されており、この規定を前提として、アドレス空間CS0が、CGROM55に確保されているか、その他のメモリデバイスに付与されるかは、HBTSL 端子のH/Lレベルで規定される。 Note that since it is fixedly stipulated that the VDP register RGij is allocated to the address space CS7, there is no need to define the address space CS7. Furthermore, it is fixedly stipulated in advance that the address space CS0 is from address 0x000000000 on the memory map of the CPU circuit 51, and based on this stipulation, whether the address space CS0 is secured in the CGROM 55 or in other memory Whether it is given to a device is determined by the H/L level of the HBTSL terminal.

先に説明した通り、本実施例では、HBTSL 端子=Lとなっており、CGROM55以外にアドレス空間CS0が定義されていることが示されている。そして、CGROM55以外である制御メモリ53の具体的なバス幅や、最適なアクセス動作については、ステップSP1において設定済みであるので、アドレス空間CS0についても、ステップSP5の処理は不要である。 As described above, in this embodiment, the HBTSL terminal is set to L, indicating that the address space CS0 is defined in addition to the CGROM 55. Since the specific bus width and optimal access operation for the control memory 53 other than the CGROM 55 have already been set in step SP1, the process in step SP5 is not necessary for the address space CS0 as well.

続いて、ステップSP5の処理で定義されたアドレス空間CS1~CS6について、各アドレス空間CSiをアクセスする場合のバス幅やページアクセスの有無について、所定の動作制御レジスタREGに所定値を書込む(SP6)。また、チップセレク信号CSiその他を最適設定するべく、所定の動作制御レジスタREGに所定値を書込む(SP6)。これらの処理は、ステップSP1やSP2の処理と同様の内容であり、バスステートコントローラ66(図8)の動作を規定する動作制御レジスタへの書込み処理によって、チップセレク信号CSi、READ制御信号、WRITE 制御信号、その他の動作タイミングが最適に設定される。 Next, for the address spaces CS1 to CS6 defined in the process of step SP5, a predetermined value is written to a predetermined operation control register REG regarding the bus width and the presence or absence of page access when accessing each address space CSi (SP6 ). Further, in order to optimally set the chip select signal CSi and others, a predetermined value is written into a predetermined operation control register REG (SP6). These processes have the same contents as those in steps SP1 and SP2, and the chip select signal CSi, READ control signal, WRITE Control signals and other operation timings are set optimally.

続いて、WDT回路58にクリア信号を出力することで、異常リセットを回避する(SP7)。これは、電源投入後、WDT回路58が自動的に動作を開始することを考慮したものであり、この後も、繰り返し同様の処理が実行される。なお、ステップSP9の処理は、サブルーチンSP7として制御メモリ53に格納されているが、ステップSP9の終了時までは、制御メモリ53のサブルーチンSP7が呼び出され、ステップSP9の終了後は、外付けDRAM54に転送された別のサブルーチンSP7’が呼び出されて実行される。 Subsequently, a clear signal is output to the WDT circuit 58 to avoid abnormal reset (SP7). This is done in consideration of the fact that the WDT circuit 58 automatically starts operating after power is turned on, and the same process is repeated thereafter. Note that the process of step SP9 is stored in the control memory 53 as a subroutine SP7, but the subroutine SP7 of the control memory 53 is called until the end of step SP9, and after the end of step SP9, the process is stored in the external DRAM 54. Another transferred subroutine SP7' is called and executed.

続いて、アドレス空間CS0に格納されているプログラムやデータのうち、図15(b)や図16(c)に示すベクタハンドラVopt(割込み処理プログラム)、エラー復帰処理プログラムPiram、演出制御プログラムMainB、初期値有り変数D、及び、定数データCを、外付けDRAM54や、内蔵RAM59に転送する(SP8)。なお、初期値有り変数Dとは、所定の変数領域に記憶されている初期値データを意味する。このメモリセクションの初期化処理(SP8)は、演出制御処理の高速化を図るため、プログラムやデータを転送する処理であり、アクセス速度に劣るROMへのアクセスを回避するための処理である。 Next, among the programs and data stored in the address space CS0, the vector handler Vopt (interrupt processing program) shown in FIGS. 15(b) and 16(c), the error recovery processing program Piram, the production control program MainB, The variable D with initial value and the constant data C are transferred to the external DRAM 54 or built-in RAM 59 (SP8). Note that the variable D with an initial value means initial value data stored in a predetermined variable area. This memory section initialization process (SP8) is a process to transfer programs and data in order to speed up the performance control process, and is a process to avoid accessing the ROM, which has poor access speed.

そして、次に、レジスタバンクRBiを使用する旨の設定をする(SP9)。そのため、その後は、割込み処理時に、レジスタバンクRB0~RB14が機能することになり、割込み処理が迅速化されると共に、スタック領域の消費が緩和される。 Then, settings are made to use the register bank RBi (SP9). Therefore, thereafter, register banks RB0 to RB14 function during interrupt processing, speeding up interrupt processing and easing stack area consumption.

以上の処理は、アドレス空間CS0である制御メモリ53に格納されている「初期設定プログラムPinit」の実行によって実現される(図16(c)参照)。そして、この初期設定プログラムPinitの実行が終われば、続いて、演出制御プログラムMainによるメイン制御処理を実行する(SP10)。ここで、メイン制御処理の実行とは、ステップSP8の転送処理によって、制御メモリ53から外付けDRAM54に転送された「演出制御プログラムMain」の実行を意味する(図15(b)参照)。 The above processing is realized by executing the "initial setting program Pinit" stored in the control memory 53, which is the address space CS0 (see FIG. 16(c)). When the execution of this initial setting program Pinit is completed, the main control processing by the production control program Main is subsequently executed (SP10). Here, execution of the main control process means execution of the "effect control program Main" transferred from the control memory 53 to the external DRAM 54 by the transfer process of step SP8 (see FIG. 15(b)).

メイン制御処理(演出制御プログラムMain)の具体的な内容については、図17(a)や、図20(a)に基づいて説明するが、それに先行して、メモリセクションの初期化処理(SP8)について説明する。図16(a)に示す通り、メモリセクションの初期化処理(SP8)では、最初に複数チャネルのDMACを動作停止状態に初期設定する。なお、この処理は、念のための形式的な処理に過ぎない。 The specific contents of the main control process (production control program Main) will be explained based on FIG. 17(a) and FIG. 20(a), but prior to that, the memory section initialization process (SP8) I will explain about it. As shown in FIG. 16A, in the memory section initialization process (SP8), first, the DMACs of a plurality of channels are initialized to a stopped state. Note that this process is just a formal process to be sure.

以上の処理が終われば、所定チャネルのDMACiを起動させて、制御メモリ53の記憶されているベクタハンドラVopt(割込み処理プログラム)を、内蔵RAM59に、ノンストップ転送方式(図10(b3)参照)でDMA転送する。本実施例では、割込み処理プログラムVoptを内蔵RAM59に転送するので、外付けDRAM54の異常時においても、適切な異常対応処理が可能となる。 When the above processing is completed, the DMACi of the predetermined channel is activated, and the vector handler Vopt (interrupt processing program) stored in the control memory 53 is transferred to the built-in RAM 59 using a non-stop transfer method (see FIG. 10 (b3)). Perform DMA transfer. In this embodiment, since the interrupt processing program Vopt is transferred to the built-in RAM 59, even when an abnormality occurs in the external DRAM 54, appropriate abnormality handling processing can be performed.

その後の処理も同じであり、所定チャネルのDMACiを使用して、ノンストップ転送方式で実行され、エラー復帰処理プログラムPiramを内蔵RAM59にDMA転送する(SP62)。本実施例では、エラー復帰処理プログラムPiramを内蔵RAM59に転送するので、エラー復帰処理において、周辺回路を確実にリセット状態にすることができる。例えば、エラー復帰処理プログラムPiramを、内蔵RAM59以外の例えば外付けDRAM54に転送すると、エラー復帰処理時に、外付けDRAM54をリセット処理できないことになる。 The subsequent processing is also the same, and is executed in a non-stop transfer manner using DMACi of a predetermined channel, and the error recovery processing program Piram is DMA-transferred to the built-in RAM 59 (SP62). In this embodiment, since the error recovery processing program Piram is transferred to the built-in RAM 59, the peripheral circuits can be reliably reset to the reset state in the error recovery processing. For example, if the error recovery processing program Piram is transferred to an external DRAM 54 other than the built-in RAM 59, the external DRAM 54 cannot be reset during error recovery processing.

次に、演出制御プログラムMainを、外付けDRAM54にDMA転送し(SP63)、定数データCを、外付けDRAM54にDMA転送する(SP64)。定数データには、演出抽選に使用する抽選データや、図20(b)に示す各種の駆動データテーブルにおける、ランプ駆動データやモータ駆動データが含まれる。また、初期値の有る変数Dを、外付けDRAM54にDMA転送するが(SP65)、これら何れも、所定チャネルのDMACiを使用したノンストップ転送方式で実行される。 Next, the production control program Main is DMA-transferred to the external DRAM 54 (SP63), and the constant data C is DMA-transferred to the external DRAM 54 (SP64). The constant data includes lottery data used in the performance lottery, lamp drive data and motor drive data in various drive data tables shown in FIG. 20(b). Further, the variable D having an initial value is DMA transferred to the external DRAM 54 (SP65), but both of these are executed in a non-stop transfer method using DMACi of a predetermined channel.

最後に、外付けDRAMの変数領域Bの先頭にクリアデータを書込む(SP66)。この先頭アドレスを、仮にADbとすると、その後のDMA転送処理では、転送元アドレスをADbとし、転送先アドレスをADb+1と初期設定した後、各アドレス値ADb,ADb+1をインクリメント処理しつつ、このクリアデータを拡散させることで、変数領域Bのクリア処理を実行することになる(SP67)。 Finally, clear data is written at the beginning of variable area B of the external DRAM (SP66). Assuming that this start address is ADb, in the subsequent DMA transfer process, after initializing the transfer source address as ADb and the transfer destination address as ADb+1, each address value ADb, ADb+1 is incremented, and the clear data is By diffusing the variable area B, clearing processing of variable area B is executed (SP67).

以上説明したステップSP61~SP66、及びステップSP67の処理は、何れも、類似の動作であり図16(b)に示す通りである。すなわち、先ず、所定チャネルのDMACiに関し、DMA転送条件として、(1)サイクルスチール転送モード、(2)ノンストップ転送方式を採り、(3)SourceとDestination のアドレス値をincrement 更新すると、設定する(SP68)。 The processes of steps SP61 to SP66 and step SP67 described above are all similar operations and are as shown in FIG. 16(b). That is, first, regarding the DMACi of a predetermined channel, the DMA transfer conditions are (1) cycle steal transfer mode, (2) nonstop transfer method, and (3) the address values of Source and Destination are updated by increment. SP68).

次に、転送元Sourceアドレスと、転送先Destination アドレスの初期値を設定し(SP69)、転送サイズを設定し、割込み禁止などに設定した上で(SP70)、DMA転送の動作を開始させる(SP71)。なお、ステップSP68~SP71の設定は、何れも所定の動作制御レジスタREGへの設定動作によって実現される。 Next, the initial values of the transfer source Source address and the transfer destination Destination address are set (SP69), the transfer size is set, and interrupts are disabled (SP70), and the DMA transfer operation is started (SP71). ). Note that the settings in steps SP68 to SP71 are all realized by setting operations in a predetermined operation control register REG.

このメモリセクションの初期化処理では、DMA転送終了の割込みを禁止設定しているので(SP70)、DMA転送の動作を開始させた後は、所定の動作制御レジスタREGのステイタスフラグを、繰り返しREADアクセスして、DMA転送の終了を待つ(SP72)。但し、動作終了までの処理時間を考慮して、WDT回路58に対して、クリア信号を繰り返し出力する(SP73)。そして、DMA転送の終了時には、所定の動作制御レジスタREGへの設定動作に基づいてDMACiを停止設定する。 In this memory section initialization process, interrupts at the end of DMA transfer are disabled (SP70), so after starting the DMA transfer operation, the status flag of the predetermined operation control register REG is set by repeated READ access. Then, it waits for the DMA transfer to end (SP72). However, taking into account the processing time until the end of the operation, a clear signal is repeatedly output to the WDT circuit 58 (SP73). Then, at the end of the DMA transfer, DMACi is set to be stopped based on a setting operation to a predetermined operation control register REG.

続いて、メイン制御処理の動作内容について図17~図20に基づいて説明する。先に説明した通り、メイン制御処理については、図17(a)に、その導入部(SP20~SP27)の処理内容が記載されており、本体部(ST4~ST14)の処理内容が図20(a)に記載されている。なお、図17のステップSP27の処理は、図20(a)のステップST1~ST3の処理を含んでいる。 Next, the operation contents of the main control process will be explained based on FIGS. 17 to 20. As explained above, regarding the main control processing, the processing contents of the introduction part (SP20 to SP27) are shown in FIG. 17(a), and the processing contents of the main part (ST4 to ST14) are shown in FIG. Described in a). Note that the process in step SP27 in FIG. 17 includes the processes in steps ST1 to ST3 in FIG. 20(a).

図17(a)に示す通り、メイン制御処理(導入部)では、最初に、CGROM55について、そのバス幅やROMデバイスの種別を特定する(SP20)。具体的には、図18(a)に示す通りであり、CGROM55とのインタフェイスを司るCGバスの動作状態を特定する所定のVDPレジスタRGij(例えばCGバスStatusレジスタ)をREADアクセスして(SP80)、CGバスについて動作設定が可能か否かを判定する(SP81)。 As shown in FIG. 17A, in the main control process (introduction part), first, the bus width and ROM device type of the CGROM 55 are specified (SP20). Specifically, as shown in FIG. 18(a), a predetermined VDP register RGij (for example, CG bus Status register) that specifies the operating state of the CG bus that controls the interface with the CGROM 55 is accessed (SP80 ), it is determined whether operation settings can be made for the CG bus (SP81).

ここで、CGバスStatusレジスタの値が1であれば、CGバスの内部回路がリセット動作中であることを意味し、VDPレジスタRGijへの設定値を受け付けることができないことを意味する。そこで、CGバスStatusレジスタの値が1から0に変化していることを確認した上で(SP81)、CGROMを構成するメモリデバイスに対応して規定可能なデバイス区間(SPA0~SPAn)毎に(1)各デバイス区間SPAiの有効/無効、(2)ROMデバイスの種別、(3)データバス幅などの動作パラメータを、所定のVDPレジスタRGijに設定する(SP82)。 Here, if the value of the CG bus Status register is 1, it means that the internal circuit of the CG bus is in a reset operation, and it means that the set value to the VDP register RGij cannot be accepted. Therefore, after confirming that the value of the CG bus Status register has changed from 1 to 0 (SP81), for each device section (SPA0 to SPAn) that can be defined corresponding to the memory devices that make up the CGROM, ( 1) Operation parameters such as enable/disable of each device section SPAi, (2) ROM device type, and (3) data bus width are set in a predetermined VDP register RGij (SP82).

図17(a)に示す通り、この実施例では、CGROM55を複数領域(デバイス区間)に区分できるようになっており、例えば、デバイス区間(SPA0~SPAn)毎に、メモリデバイスや、データバス幅を選択可能に構成されている。メモリデバイスとしては、例えば、(1)本実施例で採用するSATAモジュール(AHSI/F)、(2)パラレルI/F(Interface )形式を採るメモリ素子、(3)シーケンシャルI/F形式を採るメモリ素子などに大別されるが、大別されたメモリデバイスごとに、メモリデバイスを具体的に選択可能であり、且つ、データバス幅などを任意に規定できるようになっている。 As shown in FIG. 17(a), in this embodiment, the CGROM 55 can be divided into multiple areas (device sections). For example, each device section (SPA0 to SPAn) has a memory device, a data bus width are configured so that they can be selected. As a memory device, for example, (1) a SATA module (AHSI/F) employed in this embodiment, (2) a memory element that adopts a parallel I/F (Interface) format, and (3) a memory element that adopts a sequential I/F format. Although it is broadly classified into memory elements, etc., it is possible to specifically select a memory device for each broadly classified memory device, and also to arbitrarily define data bus width and the like.

次に、デバイス区間(SPA0~SPAn)毎に選択されたメモリデバイスとのメモリREAD動作を最適化するべく、所定の動作パラメータを、所定のVDPレジスタRGijに設定する(SP83)。動作パラメータには、チップセレクト信号と、その他の制御信号(READ制御信号など)との動作タイミングを規定する設定値が含まれている。また、シーケンシャルI/F形式を採るメモリ素子が選択された場合には、図18(b)も示す動作を実現するべく、アドレスラッチの出力タイミングや、読出しクロック数なども特定される。 Next, predetermined operation parameters are set in a predetermined VDP register RGij in order to optimize the memory READ operation with the memory device selected for each device section (SPA0 to SPAn) (SP83). The operating parameters include setting values that define the operating timing of the chip select signal and other control signals (such as the READ control signal). Further, when a memory element adopting a sequential I/F format is selected, the output timing of the address latch, the number of read clocks, etc. are also specified in order to realize the operation shown in FIG. 18(b).

したがって、種類の異なるメモリデバイスを組合せてCGROM55を構成することもできる。但し、本実施例では、SATAモジュールだけを使用してCGROM55を構成し、デバイス区間(SPA0)だけを有効化し、他のデバイス区間(SPA1~SPAn)を無効化している。 Therefore, the CGROM 55 can also be configured by combining different types of memory devices. However, in this embodiment, the CGROM 55 is configured using only SATA modules, and only the device section (SPA0) is enabled, and the other device sections (SPA1 to SPAn) are disabled.

何れにしても、ステップSP82~SP83の設定処理が終われば、その設定処理の実効化を図るべく、所定のVDPレジスタRGijに所定値を書込む(SP84)。これは、CGバスの内部回路がステップSP82~SP83の設定処理に対応して動作できるまでに所定の時間を要することを考慮したものであり、内部回路の動作中は、前記したCGバスStatusレジスタ(SP80参照)の値が0となる。 In any case, when the setting processing in steps SP82 and SP83 is completed, a predetermined value is written into a predetermined VDP register RGij in order to make the setting processing effective (SP84). This is done in consideration of the fact that it takes a predetermined time for the internal circuit of the CG bus to be able to operate in response to the setting processing in steps SP82 and SP83. (See SP80) becomes 0.

したがって、その後は、CGバスStatusレジスタを繰り返しREADアクセスして(SP85)、Statusレジスタの値が1から0に戻ることを確認して処理を終える(SP86)。なお、所定回数の判定に拘らず、Statusレジスタの値が1から0に戻らない場合に、ステップSP66の処理を終えても良い。但し、その場合CGROMが正常にアクセスできない状態で遊技処理が始まるので、その後、何れかのタイミングでWDT回路58が起動して複合チップ50が異常リセット状態になる。そして、この場合は、再度、パワーオンリセット動作が実行されることになる。 Therefore, after that, the CG bus Status register is repeatedly accessed by READ (SP85), and the process is finished after confirming that the value of the Status register returns from 1 to 0 (SP86). Note that, regardless of the predetermined number of determinations, if the value of the Status register does not return from 1 to 0, the process of step SP66 may be terminated. However, in that case, since the game process starts in a state where the CGROM cannot be accessed normally, the WDT circuit 58 is activated at some timing thereafter, and the composite chip 50 is placed in an abnormal reset state. In this case, the power-on reset operation will be executed again.

一方、図17のステップSP20の処理が、正常に実行された後は、割込みコントローラINTCや、DMAC回路60や、マルチファンクションタイマユニットMTUなど、CPU回路51の内蔵回路をソフトウェア処理によって個々的に初期化する(SP21)。 On the other hand, after the process of step SP20 in FIG. 17 is successfully executed, the built-in circuits of the CPU circuit 51, such as the interrupt controller INTC, the DMAC circuit 60, and the multi-function timer unit MTU, are individually initialized by software processing. (SP21).

次に、マルチファンクションタイマユニットMTUについて、所定のタイマ計測動作を開始させた後(SP22)、内部割込み及び内部割込みについて、所定の動作制御レジスタREGに許可設定値を書込んで割込み許可状態に設定する(SP23)。 Next, after starting a predetermined timer measurement operation for the multi-function timer unit MTU (SP22), for internal interrupts and internal interrupts, a permission setting value is written to a predetermined operation control register REG to set the interrupt permission state. (SP23).

その結果、その後は、図17(d)に示す各種の割込みが生じ得ることになる。通常、このタイミングでは、音声プロセッサ27は、その初期化シーケンスを終えているので、図6(c)に示す通り、終了割込み信号IRQ_SND はLレベルに降下している筈である。そのため、図17(c)に示す割込み処理が起動され、演出制御CPU63は、エラーフラグERRを1に初期設定すると共に、アドレス空間CS3をREADアクセスして(SP30)、音声プロセッサ27の所定の音声レジスタSRGの値を取得して、初期化シーケンスが正常に終了しているか否かを判定する(SP31)。 As a result, various interruptions shown in FIG. 17(d) may occur thereafter. Normally, at this timing, the audio processor 27 has finished its initialization sequence, so the end interrupt signal IRQ_SND should have fallen to the L level, as shown in FIG. 6(c). Therefore, the interrupt process shown in FIG. 17(c) is activated, and the production control CPU 63 initializes the error flag ERR to 1, performs READ access to the address space CS3 (SP30), and outputs the predetermined audio of the audio processor 27. The value of register SRG is acquired and it is determined whether the initialization sequence has ended normally (SP31).

そして、万一、初期化シーケンスが正常に終了していない場合には、演出制御CPU63は、音声プロセッサ27の所定の音声レジスタSRGにリセットコマンドを書込むと共に(SP32)、1に初期設定されているエラーフラグERRを2にセットする(SP33)。このエラーフラグERRは、音声プロセッサ初期化処理(SP26)を実行するか否かを規定しており、エラーフラグERR=1がステップSP26の実行条件となっている。 If the initialization sequence does not end normally, the production control CPU 63 writes a reset command to a predetermined audio register SRG of the audio processor 27 (SP32), and initializes it to 1. The current error flag ERR is set to 2 (SP33). This error flag ERR defines whether or not to execute the audio processor initialization process (SP26), and error flag ERR=1 is the execution condition for step SP26.

一方、音声プロセッサ27は、リセットコマンドを受けたことに対応して、終了割込み信号IRQ_SND =Hレベルの状態で、再度、初期化シーケンスを開始し、初期化シーケンスが終われば、終了割込み信号IRQ_SND はLレベルに降下させる。この結果、図17(c)の処理が再実行されることになる。 On the other hand, in response to receiving the reset command, the audio processor 27 starts the initialization sequence again with the end interrupt signal IRQ_SND = H level, and when the initialization sequence is finished, the end interrupt signal IRQ_SND is Lower it to L level. As a result, the process of FIG. 17(c) is re-executed.

以上、初期化シーケンスが正常に終了していない例外的な場合について説明したが、通常は、ステップSP31に続いて、ステップSP32の処理が実行され、演出制御CPU63は、所定の音声レジスタSRGに、所定値を書込むことで終了割込み信号IRQ_SND を、LレベルからHレベルに復帰させる(SP34)。 The above describes an exceptional case where the initialization sequence does not end normally, but normally, following step SP31, the process of step SP32 is executed, and the production control CPU 63 inputs the information to the predetermined audio register SRG. By writing a predetermined value, the end interrupt signal IRQ_SND is returned from L level to H level (SP34).

そして、最後に、所定の音声レジスタSRGに所定値を書込むことで、全ての音声レジスタSRGへのREAD/WRITE アクセスを許可する(SP35)。この処理の結果、その後の音声プロセッサ初期化処理(SP26)では、必要な設定処理を実行できることになる。 Finally, by writing a predetermined value into a predetermined audio register SRG, READ/WRITE access to all audio registers SRG is permitted (SP35). As a result of this processing, necessary setting processing can be executed in the subsequent audio processor initialization processing (SP26).

以上、ステップSP23の割込み許可設定に対応するMaskable Interruptの一例について説明したが、発振器OSC2の発振停止に基づくマスク不能割込み(Non Maskable Interrupt)は、任意のタイミングで起動可能である。先に説明した通り、内蔵CPU(演出制御CPU63)以外の回路の動作クロック(CPUシステムクロック)は、発振器OSC2の出力クロックをPLL(Phase Locked Loop )で周波数逓倍して生成されており、発振器OSC2の発振が停止されれば、その後のVDP回路52の正常動作は不可能である。 An example of a Maskable Interrupt corresponding to the interrupt permission setting in step SP23 has been described above, but a non-maskable interrupt based on stopping the oscillation of the oscillator OSC2 can be activated at any timing. As explained earlier, the operating clock (CPU system clock) for circuits other than the built-in CPU (production control CPU 63) is generated by frequency-multiplying the output clock of the oscillator OSC2 using a PLL (Phase Locked Loop). If the oscillation of the VDP circuit 52 is stopped, normal operation of the VDP circuit 52 is impossible thereafter.

一方、演出制御CPU63の動作クロックは、発振器OSC1の出力クロックをPLLで逓倍して生成されており、プログラム処理は継続可能である。しかも、割込み処理プログラムは、内蔵RAM59に格納されている。そこで、演出制御CPU63は、異常事態の発生を音声やランプによって異常報知すると共に(SP28)、WDT回路58にクリア信号を出力し続ける(SP29)。異常報知は、例えば「異常事態が発生しました。至急、係員に連絡して下さい」との音声報知となる。なお、WDT回路58にクリア信号を出力し続けるのは、異常リセット動作を回避するためである。すなわち、発振器OSC1が動作を停止する重大な異常時には、仮に、異常リセット処理を繰り返しても、機器の正常復帰が望めないと考えられるからである。 On the other hand, the operating clock of the performance control CPU 63 is generated by multiplying the output clock of the oscillator OSC1 by a PLL, and the program processing can be continued. Furthermore, the interrupt processing program is stored in the built-in RAM 59. Therefore, the production control CPU 63 notifies the occurrence of an abnormal situation by sound or a lamp (SP28), and continues to output a clear signal to the WDT circuit 58 (SP29). The abnormality notification is, for example, a voice notification saying, "An abnormal situation has occurred. Please contact the staff immediately." Note that the reason why the clear signal is continued to be output to the WDT circuit 58 is to avoid an abnormal reset operation. That is, in the event of a serious abnormality in which the oscillator OSC1 stops operating, it is considered that the device cannot be expected to return to normal even if the abnormality reset process is repeated.

以上、図17(b)と、図17(c)について説明したので、図17(a)に戻って説明を続ける。ステップSP24では、外付けDRAMのプログラム領域を保護するため、必要領域を書込み禁止に設定する。次に、電源遮断時に電池で駆動されている時計回路38について、電源遮断時の正常動作を確認すると共に、念のためアラーム割込みについて再設定する(SP25)。 Since FIG. 17(b) and FIG. 17(c) have been described above, the explanation will be continued by returning to FIG. 17(a). In step SP24, in order to protect the program area of the external DRAM, the necessary area is set to write-protection. Next, the clock circuit 38, which is powered by a battery when the power is cut off, is checked for normal operation when the power is cut off, and alarm interrupt settings are reset just in case (SP25).

そして、エラーフラグERR=1であることを条件に、音声プロセッサ27の内蔵レジスタ(音声レジスタSRG)に、必要な設定値を書込んで初期化処理を実行する(SP26)。なお、エラーフラグERR=0の場合は、所定時間、エラーフラグERR=1となるまで待機するが、限界時間を超える場合には、WDT回路58を起動させるべく無限ループ処理に移行する。 Then, on the condition that the error flag ERR=1, necessary setting values are written into the built-in register (audio register SRG) of the audio processor 27 and initialization processing is executed (SP26). Note that when the error flag ERR=0, the process waits for a predetermined time until the error flag ERR=1, but if the limit time is exceeded, the process shifts to an infinite loop process to start the WDT circuit 58.

次に、VDPレジスタRGijに、必要な設定値を書込むことで、VDP回路52の初期化処理を実行する(SP27)。なお、ステップSP27の処理には、図20のST1~ST3の処理が含まれている。 Next, initialization processing of the VDP circuit 52 is executed by writing necessary setting values into the VDP register RGij (SP27). Note that the process of step SP27 includes the processes of ST1 to ST3 in FIG.

以上、音声プロセッサから終了割込み信号IRQ_SND を受ける実施例について説明したが、図17(c)の割込み処理を省略するのも好適である。図19は、変形実施例を示しており、終了割込み信号IRQ_SND に代えて、マルチファンクションタイマユニットMTUが生成する1msタイマ割込信号を活用している。 Although the embodiment in which the termination interrupt signal IRQ_SND is received from the audio processor has been described above, it is also preferable to omit the interrupt processing in FIG. 17(c). FIG. 19 shows a modified embodiment, in which a 1 ms timer interrupt signal generated by the multi-function timer unit MTU is used instead of the end interrupt signal IRQ_SND.

図19は、1msタイマ割込処理の一部を図示したものであり、初期状態がゼロである動作管理フラグFLGの値(0/1/2/3)に基づいて、4段階の動作を実現している。なお、音声プロセッサ27のIRQ_SND 出力端子は、開放状態とし、CPU回路51のIRQ_SND 入力端子は、Hレベルに固定されている。 FIG. 19 shows a part of the 1ms timer interrupt processing, and realizes four stages of operation based on the value of the operation management flag FLG (0/1/2/3) whose initial state is zero. are doing. Note that the IRQ_SND output terminal of the audio processor 27 is left open, and the IRQ_SND input terminal of the CPU circuit 51 is fixed at H level.

1mSタイマ割込み処理において、先ず、ステップSP42の処理で、動作管理フラグFLG=0と判定される場合には、音声プロセッサ27の初期化シーケンスが正常終了していることを確認する(SP43)。そして、正常終了している場合には、所定の音声レジスタSRGに所定値を書込むことで割込み信号(IRQ_SND )をクリアさせ(SP46)、動作管理フラグFLGを1にする(SP47)。なお、ステップSP43とSP46の処理は、図17(c)のステップSP31とSP34の処理と同じである。 In the 1 mS timer interrupt process, first, if it is determined in the process of step SP42 that the operation management flag FLG=0, it is confirmed that the initialization sequence of the audio processor 27 has ended normally (SP43). If the process has ended normally, a predetermined value is written to a predetermined audio register SRG to clear the interrupt signal (IRQ_SND) (SP46), and the operation management flag FLG is set to 1 (SP47). Note that the processing in steps SP43 and SP46 is the same as the processing in steps SP31 and SP34 in FIG. 17(c).

一方、初期化シーケンスが正常終了していない場合には、所定の音声レジスタSRGにリセットコマンドを書込むことで、音声プロセッサ27に初期化シーケンスを起動させ(SP44)、動作管理フラグFLGをゼロに戻す(SP45)。なお、ステップSP44の処理は、図17(c)のステップSP32の処理に対応している。 On the other hand, if the initialization sequence has not ended normally, a reset command is written to a predetermined audio register SRG to cause the audio processor 27 to start the initialization sequence (SP44) and set the operation management flag FLG to zero. Return (SP45). Note that the process at step SP44 corresponds to the process at step SP32 in FIG. 17(c).

通常は、ステップSP47の処理を経て動作管理フラグFLG=1となるので、次の1msタイマ割込みでは、所定の音声レジスタに所定値を書込むことで全ての音声レジスタへのアクセスを許可し(SP48)、動作管理フラグFLG=2に設定する(SP49)。ステップSP48の処理は、図17(c)のステップSP35の処理に対応している。 Normally, the operation management flag FLG is set to 1 after the processing in step SP47, so in the next 1ms timer interrupt, access to all audio registers is permitted by writing a predetermined value to a predetermined audio register (SP48 ) and set the operation management flag FLG=2 (SP49). The process at step SP48 corresponds to the process at step SP35 in FIG. 17(c).

次に、動作管理フラグFLG=2の1msタイマ割込みでは、図17(a)のステップSP26の場合と同様に、音声プロセッサ27の内蔵レジスタ(音声レジスタSRG)に、必要な設定値を書込んで初期化処理を実行し(SP50)、動作管理フラグFLG=3に設定する。 Next, in the 1ms timer interrupt with the operation management flag FLG=2, the necessary setting value is written to the built-in register (sound register SRG) of the audio processor 27, as in step SP26 in FIG. 17(a). Initialization processing is executed (SP50) and the operation management flag FLG is set to 3.

動作管理フラグFLG=3は、通常の音声制御状態を意味し、必要な音声レジスタSRGに、必要な動作パラメータを設定することで、音声制御を進行させる(SP52)。 The operation management flag FLG=3 means a normal voice control state, and the voice control is advanced by setting necessary operation parameters in the necessary voice register SRG (SP52).

以上、音声プロセッサ27の初期化シーケンスの正常終了を、割込み信号(IRQ_SND )に起因する割込み処理で確認する方法(図17(c)のSP31)と、1mSタイマ割込み処理で確認する方法(図19のSP43)について説明したが、これらの方法に、何ら限定されるものではない。例えば、図17のステップSP26の処理の一部として、音声プロセッサ27の初期化シーケンスが正常に終了したか否かを判定するのも好適である。 The above is a method of confirming the normal completion of the initialization sequence of the audio processor 27 using the interrupt processing caused by the interrupt signal (IRQ_SND) (SP31 in FIG. 17(c)), and a method of confirming the normal completion of the initialization sequence of the audio processor 27 using the 1mS timer interrupt processing (FIG. 19). SP43) has been described, but the method is not limited to these methods in any way. For example, as part of the process of step SP26 in FIG. 17, it is also suitable to determine whether the initialization sequence of the audio processor 27 has ended normally.

以上、メイン制御処理の導入部(図17のSP20~SP27)について説明したので、以下、図20に基づいて、メイン制御処理の本体部の動作を説明する。図20に示す通り、演出制御CPU63の動作は、メイン制御処理(a)と、1mS毎に起動するタイマ割込み処理(b)と、制御コマンドCMDを受けて起動する受信割込み処理(不図示)と、表示装置DS1のVブランク(垂直帰線期間)の開始タイミングに生じるVBLANK信号を受けて起動するVBLANK割込み処理(c)と、動作フリーズ時や不合理な指示コマンド検出時に生じる描画異常割込み処理(d)と、を含んで構成されている。なお、20μS割込み処理については説明を省略する。 The introduction section of the main control process (SP20 to SP27 in FIG. 17) has been described above, and the operation of the main body section of the main control process will now be explained based on FIG. As shown in FIG. 20, the operations of the production control CPU 63 include a main control process (a), a timer interrupt process (b) that starts every 1 mS, and a reception interrupt process (not shown) that starts in response to the control command CMD. , VBLANK interrupt processing (c) that starts in response to the VBLANK signal that occurs at the start timing of V blank (vertical retrace period) of display device DS1, and drawing abnormality interrupt processing (c) that occurs when the operation freezes or when an unreasonable instruction command is detected. d). Note that a description of the 20 μS interrupt processing will be omitted.

受信割込み処理では、主制御部21から受けた制御コマンドCMDを、メイン制御処理(ST13)において参照できるよう、所定の受信バッファに記憶して処理を終える。また、VBLANK割込み処理(図20(b))では、VBLANK割込み毎に、割込みカウンタVCNTをインクリメントし(ST15)、メイン制御処理の開始タイミングでは、割込みカウンタVCNTの値に基づいて、1/30秒の動作開始タイミングを把握した上で、割込みカウンタVCNTをゼロクリアしている(ST4)。 In the reception interrupt processing, the control command CMD received from the main control unit 21 is stored in a predetermined reception buffer so that it can be referenced in the main control processing (ST13), and the processing ends. In addition, in the VBLANK interrupt processing (FIG. 20(b)), the interrupt counter VCNT is incremented for each VBLANK interrupt (ST15), and at the start timing of the main control processing, the interrupt counter VCNT is incremented for 1/30 seconds based on the value of the interrupt counter VCNT. After understanding the operation start timing, the interrupt counter VCNT is cleared to zero (ST4).

一方、タイマ割込み処理には、図20(b)に示す通り、ランプ演出やモータ演出の進行処理(ST18)と、原点センサ信号SN0~SNn信号や、チャンスボタン信号などを取得するセンサ信号取得処理(ST19)とが含まれている。ランプ演出やモータ演出は、全ての演出動作を一元管理する演出シナリオに基づいて制御されており、演出カウンタENが管理する演出開始時に達すれば、演出シナリオ更新処理(ST11)において、モータ駆動テーブルやランプ駆動テーブルが特定されるようになっている。 On the other hand, as shown in FIG. 20(b), the timer interrupt process includes a process for advancing lamp effects and motor effects (ST18), and a sensor signal acquisition process for obtaining origin sensor signals SN0 to SNn signals, chance button signals, etc. (ST19) is included. Lamp effects and motor effects are controlled based on a performance scenario that centrally manages all performance operations, and when the performance start time managed by the performance counter EN is reached, the motor drive table and motor performance are updated in the performance scenario update process (ST11). A lamp drive table is now identified.

そして、その後は、特定されたモータ駆動テーブルに基づいてモータ演出が進行し、特定されたモータ駆動テーブルに基づいてランプ演出が進行することになる。先に説明した通り、ステップST18の動作時に、DMAC回路(第1と第2のDMAチャンネル)60が機能する実施例もある。なお、モータ演出は、1mS毎に進行するが、ランプ演出は、1mSより長い適宜なタイミングで進行する。 After that, the motor effect will proceed based on the specified motor drive table, and the lamp effect will proceed based on the specified motor drive table. As described above, there are some embodiments in which the DMAC circuit (first and second DMA channels) 60 functions during the operation of step ST18. Note that the motor effect progresses every 1 mS, but the lamp effect progresses at an appropriate timing longer than 1 mS.

一方、図20(d)に示す通り、描画異常割込み処理では、描画回路76の動作状態を示すステイタスレジスタRGijをREADアクセスして、割込み原因を特定する。具体的には、(1) 異常な指示コマンドの検出(ビット化け)による描画異常割込みか、(2) 描画回路76の動作異常(フリーズ)による描画異常割込みかを特定する(ST16a)。そして、異常な指示コマンドの検出に基づく描画異常割込みである場合には、所定のシステム制御レジスタRGijに、所定値を書き込むことで、描画回路76を初期化する(ST16b)。この動作は、図6(b)に示すリセット経路4Bの個別リセット動作に他ならない。 On the other hand, as shown in FIG. 20(d), in the drawing abnormality interrupt processing, the status register RGij indicating the operating state of the drawing circuit 76 is read accessed to identify the cause of the interrupt. Specifically, it is determined whether (1) the drawing abnormality interrupt is due to the detection of an abnormal instruction command (bit corruption) or (2) the drawing abnormality interrupt is due to an abnormal operation (freeze) of the drawing circuit 76 (ST16a). If the drawing abnormality interrupt is based on the detection of an abnormal instruction command, the drawing circuit 76 is initialized by writing a predetermined value into a predetermined system control register RGij (ST16b). This operation is nothing but the individual reset operation of the reset path 4B shown in FIG. 6(b).

次に、個別リセット動作の正常終了を、所定のステイタスレジスタRGijで確認した後、描画回路76の動作を規定する一群の動作パラメータを所定の描画レジスタRGijに再設定して処理を終える(ST16c)。そして、戻り先アドレスを記憶するスタック領域を調整した後(割込み処理後の戻り先アドレスを消去する開放処理)、ステップST13の処理に移行させる(ST16c)。 Next, after confirming the normal completion of the individual reset operation using a predetermined status register RGij, a group of operating parameters that define the operation of the drawing circuit 76 are reset to the predetermined drawing register RGij, and the process ends (ST16c). . After adjusting the stack area for storing the return address (a release process for erasing the return address after interrupt processing), the process proceeds to step ST13 (ST16c).

一方、描画回路76の動作異常に基づく描画異常割込みの場合には、無限ループ処理に移行させることで(ST16d)、WDT回路58を起動させ、複合チップ50全体をリセットする。なお、CPU回路51をリセットしたくない場合には、所定のキーワード列をパターンチェック回路CHKに出力して、リセット信号RSTによってVDP回路52だけをリセットしても良い(図6(b)参照)。この場合には、VDP回路52のリセット動作の正常終了を確認した後、ステップST4やST13の処理に移行させる。なお、可能な限り制御コマンドCMDの読み落しを回避するためには、他の場合も含め、ステップST4より、ステップST13に移行される方が良い。 On the other hand, in the case of a drawing abnormality interrupt due to an abnormal operation of the drawing circuit 76, the WDT circuit 58 is activated and the entire composite chip 50 is reset by shifting to infinite loop processing (ST16d). Note that if you do not want to reset the CPU circuit 51, you may output a predetermined keyword string to the pattern check circuit CHK and reset only the VDP circuit 52 using the reset signal RST (see FIG. 6(b)). . In this case, after confirming that the reset operation of the VDP circuit 52 has completed normally, the process proceeds to steps ST4 and ST13. In addition, in order to avoid overlooking the control command CMD as much as possible, it is better to proceed to step ST13 from step ST4, including in other cases.

複合チップ50全体をリセットすると、それまでの演出が消滅して、演出制御が完全に初期状態(電源投入状態)に戻るが、VDP回路52だけをリセットする場合には、VDP回路52のリセット動作が完了するまで、所定の待機時間は生じるものの、一連の演出制御を継続させることができる。なお、演出制御CPU63は、画像演出、ランプ演出、及び、音声演出を統一的に制御しているので、各演出に不自然なズレが生じることもない。 When the entire composite chip 50 is reset, the previous effects disappear and the effect control completely returns to the initial state (power-on state), but when resetting only the VDP circuit 52, the reset operation of the VDP circuit 52 Although there is a predetermined waiting time until the process is completed, a series of production controls can be continued. Note that since the performance control CPU 63 controls the image performance, lamp performance, and audio performance in a unified manner, there is no possibility that unnatural deviations will occur in each performance.

続いて、プリローダを機能しない実施例について、メイン制御処理(a)について説明する。図20(a)に示す通り、メイン制御処理は、CPUリセット後に実行される導入初期処理(ST1~ST3)と、その後、1/30秒毎に繰り返し実行される定常処理(ST4~ST14)とに区分される。なお、初期処理(ST1~ST3)は、メイン制御処理の導入部の一部であり、定常処理がメイン制御処理の本体部を意味する。 Next, the main control process (a) will be described for an embodiment in which the preloader does not function. As shown in FIG. 20(a), the main control process includes an introduction initial process (ST1 to ST3) that is executed after the CPU is reset, and a steady process (ST4 to ST14) that is repeatedly executed every 1/30 seconds. It is divided into Note that the initial processing (ST1 to ST3) is a part of the introduction part of the main control processing, and the steady processing means the main part of the main control processing.

そして、定常処理は、割込みカウンタVCNTが、VCNT≧2となったタイミングで開始されるので(ST4)、定常処理の動作周期δは、1/30秒となる。この動作周期δは、演出制御CPU63の制御に基づいて間欠動作するVDP回路52について、その実質的な動作周期δに他ならない。なお、判定条件を、VCNT≧2とするのは、定常処理(ST4~ST14)が異常に長引いて、VCNT=2のタイミングを見逃す可能性を考慮したものであるが、VCNT=3となる事態が発生しないよう設計されている。 Since the steady processing is started at the timing when the interrupt counter VCNT becomes VCNT≧2 (ST4), the operation cycle δ of the steady processing is 1/30 seconds. This operating cycle δ is nothing but the actual operating cycle δ of the VDP circuit 52 which operates intermittently under the control of the performance control CPU 63. Note that the reason for setting the judgment condition as VCNT≧2 is to take into consideration the possibility that the steady processing (ST4 to ST14) may be abnormally prolonged and the timing of VCNT=2 may be missed; however, in the case where VCNT=3 It is designed to prevent this from occurring.

以上を踏まえてメイン制御処理(図20(a))の説明を続けると、本実施例では、初期処理において、記憶容量48Mバイトの内蔵VRAM71を、適切な記憶容量を有するAC領域(a) と、ページ領域(b) と、任意領域(c) と、に適宜に切り分ける(ST1)。具体的には、AC領域(a1,a2) と、ページ領域(b) について、各々の領域先頭アドレスと必要な総データサイズを、所定のインデックステーブルレジスタRGijに設定する(ST1)。すると、確保されたAC領域(a1,a2) と、ページ領域(b) には含まれない残余領域が任意領域(c) となる。 Continuing the explanation of the main control processing (FIG. 20(a)) based on the above, in this embodiment, in the initial processing, the built-in VRAM 71 with a storage capacity of 48 Mbytes is used as an AAC area (a) having an appropriate storage capacity. ), a page area (b), and an arbitrary area (c) (ST1). Specifically, for the AAC area (a1, a2) and the page area (b), each area start address and required total data size are set in a predetermined index table register RGij (ST1). Then, the secured AAC area (a1, a2) and the remaining area not included in the page area (b) become an arbitrary area (c).

ここで、第一と第二のAC領域(a1,a2) と、ページ領域(b) の領域先頭アドレスは、各々の下位11bitが0でなくてはならないが、2048bit単位で任意に選択可能である(1番地=1バイトとして、256番地ごとの選択)。また、総データサイズも、単位サイズの整数倍の範囲で任意に選択される。特に限定されないが、AC領域(a) の単位サイズは、2048bit、ページ領域(b) の単位サイズは、512kbitである。 Here, the lower 11 bits of the first and second A A C areas (a1, a2) and page area (b) must be 0, but they can be arbitrarily selected in units of 2048 bits. It is possible (selection every 256 addresses, assuming 1 address = 1 byte). Further, the total data size is also arbitrarily selected within the range of an integral multiple of the unit size. Although not particularly limited, the unit size of the AAC area (a) is 2048 bits, and the unit size of the page area (b) is 512 kbits.

このように本実施例では、AC領域(a1,a2) と、ページ領域(b) の領域設定に一定の条件を設けるが、それは、メモリ容量が限られている内蔵VRAM71について、可能な限り無駄領域を排除する一方で、VDP回路52の内部動作の円滑化を図るためである。すなわち、内蔵VRAM71の記憶容量を無闇に増加させると、製造コストの高騰やチップ面積の大型化が懸念される一方、無駄領域を完全に排除するような自由な領域設定を認めると、内部処理が煩雑化して、VRAMアクセスの処理時間を短縮化できないためである。なお、以下に説明するインデックス空間の確保に、一定の制約を設けるのも同じ理由による。 In this way, in this embodiment, certain conditions are set for the area setting of the A This is to eliminate waste areas as much as possible while smoothing the internal operation of the VDP circuit 52. In other words, if the storage capacity of the built-in VRAM 71 is increased recklessly, there are concerns that manufacturing costs will rise and the chip area becomes larger. On the other hand, if free area setting that completely eliminates waste areas is allowed, internal processing will become faster. This is because it becomes complicated and the processing time for VRAM access cannot be shortened. Note that it is for the same reason that certain restrictions are placed on securing the index space, which will be explained below.

以上を踏まえて説明を続けると、ステップST1の処理に続いて、ページ領域(b) と、任意領域(c) について、必要なインデックス空間IDXiを確保する(ST2)。具体的には、所定のインデックステーブルレジスタRGijに、必要な情報を設定することで、各領域(b)(c)のインデックス空間IDXiを確保する。 Continuing the explanation based on the above, following the processing in step ST1, necessary index spaces IDXi are secured for the page area (b) and arbitrary area (c) (ST2). Specifically, by setting necessary information in a predetermined index table register RGij, the index space IDXi of each area (b) and (c) is secured.

例えば、ページ領域(b) にインデックス空間IDXiを設ける場合には、任意のインデックス番号iに対応して、任意の水平サイズHxと、任意の垂直サイズWxの倍数情報(単位空間に対する縦横の倍数情報)が、所定のインデックステーブルレジスタRGijに設定される(ST2)。 For example, when providing index space IDXi in page area (b), multiple information of arbitrary horizontal size Hx and arbitrary vertical size Wx (vertical and horizontal multiple information for unit space) ) is set in a predetermined index table register RGij (ST2).

先に説明した通り、ページ領域(b) のインデックス空間IDXiは、水平サイズ128×垂直サイズ128ラインを単位空間としており、また、1ピクセルは32bitの情報で特定されるので、水平サイズHxと垂直サイズWxの設定に基づいて、データサイズ(bit長)=32×128×Hx×128×Wxのインデックス空間IDXiが確保されたことになる。なお、ページ領域(b) のインデックス空間IDXiの先頭アドレス(空間先頭アドレス)は、内部的に自動付与される。 As explained earlier, the index space IDXi of page area (b) has a unit space of 128 lines in horizontal size x 128 lines in vertical size, and since 1 pixel is specified by 32 bits of information, the horizontal size Hx and vertical size Based on the setting of the size Wx, an index space IDXi of data size (bit length)=32×128×Hx×128×Wx is secured. Note that the start address (space start address) of the index space IDXi in page area (b) is automatically assigned internally.

また、任意領域(c) にインデックス空間IDXiを設ける場合には、任意のインデックス番号iに対応して、任意の先頭アドレス(空間先頭アドレス)STxと、任意の水平サイズHxの倍数情報が、所定のインデックステーブルレジスタRGijに設定される(ST2)。ここで、任意とは、所定条件を前提とするもので、水平サイズHxは256bit単位で任意決定され、先頭アドレスSTxの下位11bitは0であって、2048bit単位で任意決定される。先に説明した通り、任意領域の垂直サイズは、2048ラインに固定化されるので、水平サイズHxの設定に基づいて、先頭アドレスSTx以降には、データサイズ(bit長)=2048×Hxのインデックス空間が確保されたことになる。 Furthermore, when an index space IDXi is provided in an arbitrary area (c), an arbitrary start address (space start address) STx and multiple information of an arbitrary horizontal size Hx are set in a predetermined manner corresponding to an arbitrary index number i. is set in the index table register RGij (ST2). Here, "arbitrary" is based on a predetermined condition, and the horizontal size Hx is arbitrarily determined in units of 256 bits, the lower 11 bits of the start address STx are 0, and arbitrarily determined in units of 2048 bits. As explained earlier, the vertical size of the arbitrary area is fixed to 2048 lines, so based on the setting of the horizontal size Hx, an index of data size (bit length) = 2048 x Hx is created after the start address STx. This means that space has been secured.

具体的には、メイン表示装置DS1のフレームバッファFBaとして、水平サイズ1280×垂直ライン2048の一対のインデックス空間が、各々インデックス番号を特定して、一又は複数の所定のインデックステーブルレジスタRGijに設定され、サブ表示装置DS2のフレームバッファFBbとして、水平サイズ480×垂直ライン2048の一対のインデックス空間が、各々インデックス番号を特定して、一又は複数の所定のインデックステーブルレジスタRGijに設定される。なお、もし、表示装置の水平ピクセル数が、256bit/32bitの整数倍に一致しない場合には、各インデックス空間の水平サイズを、その表示装置の水平ピクセル数より大きく、且つ、256/32=8の整数倍となる値に設定して、無駄なメモリ領域の発生を最小限に抑制する。 Specifically, as the frame buffer FBa of the main display device DS1, a pair of index spaces of horizontal size 1280×vertical lines 2048 are set in one or more predetermined index table registers RGij with each index number specified. As the frame buffer FBb of the sub-display device DS2, a pair of index spaces of horizontal size 480×vertical lines 2048 are set in one or more predetermined index table registers RGij with each index number specified. If the number of horizontal pixels of the display device does not match an integral multiple of 256 bits/32 bits, the horizontal size of each index space should be larger than the number of horizontal pixels of the display device, and 256/32=8. Set it to a value that is an integer multiple of , to minimize wasted memory space.

以上のように、ページ領域(b) と、任意領域(c) について、必要なサイズ情報やアドレス情報を所定のインデックステーブルレジスタRGijに各々設定することで、必要個数のインデックス空間IDXiが生成される(ST2)。そして、この設定処理(ST2)に対応して、各インデックス空間IDXiのアドレス情報やサイズ情報を特定するインデックステーブルIDXTBLが自動的に構築される。図11(a)に示す通り、インデックステーブルIDXTBLには、各インデックス空間IDXiの先頭アドレスが、その他の必要情報と共に記憶されており、VDP回路52内部でのデータ転送時や、外部記憶リソース(Resource)からのデータ取得時に参照される(図12参照)。なお、AAC領域(a) のインデックス空間IDXiは、必要時に自動生成され、自動消滅するので、ステップST2の設定処理は不要である。 As described above, by setting the necessary size information and address information in the predetermined index table register RGij for the page area (b) and arbitrary area (c), the required number of index spaces IDXi is generated. (ST2). Corresponding to this setting process (ST2), an index table IDXTBL that specifies address information and size information of each index space IDXi is automatically constructed. As shown in FIG. 11(a), the index table IDXTBL stores the start address of each index space IDXi together with other necessary information, and is used for data transfer within the VDP circuit 52, external storage resource (Resource), etc. ) is referenced when acquiring data from (see Figure 12). Incidentally, since the index space IDXi in the AAC area (a) is automatically generated when necessary and automatically disappears, the setting process in step ST2 is not necessary.

図11(a)(b)に示す通り、任意領域(c) には、各一対のフレームバッファFBaとFBbが確保され、各々、インデックス番号が付与されている。Zバッファを使用しない実施例では、フレームバッファFBaとして、インデックス番号255,254が付与された、一対のインデックス空間255,254が確保される。また、フレームバッファFBbとして、インデックス番号252,251が付与された、一対のインデックス空間252,251が確保される。なお、本実施例では、任意領域(c) に、インデックス番号0の作業領域(インデックス空間0)も確保されている。 As shown in FIGS. 11(a) and 11(b), a pair of frame buffers FBa and FBb are secured in the arbitrary area (c), and index numbers are assigned to each pair. In an embodiment that does not use the Z buffer, a pair of index spaces 255 and 254 assigned index numbers 255 and 254 are secured as the frame buffer FBa. Furthermore, a pair of index spaces 252 and 251 to which index numbers 252 and 251 are assigned are secured as the frame buffer FBb. In this embodiment, a work area with index number 0 (index space 0) is also secured in the arbitrary area (c).

また、本実施例では、ページ領域(a) に、IPストリーム動画のデコード領域となる必要個数のインデックス空間IDXiを確保し、インデックス番号iを付与することにしている。但し、初期的には、背景動画(IPストリーム動画)のためのインデックス空間IDXだけを確保している。そして、画像演出(変動演出や予告演出)における必要性に応じて、インデックステーブルレジスタRGijへの設定処理や、ディスプレイリストDLの指示コマンドに基づいて、ページ領域(a) のインデックス空間IDXjを増やし、その後、不要になれば、そのインデックス空間IDXjを開放するようにしている。すなわち、図11(a)は、定常動作時のインデックステーブルIDXTBLを示している。 Further, in this embodiment, a necessary number of index spaces IDXi, which serve as decoding areas for IP stream moving images, are secured in the page area (a), and an index number i is assigned thereto. However, initially, only the index space IDX 0 is reserved for the background video (IP stream video). Then, depending on the need for image production (variable production and preview production), the index space IDXj of the page area (a) is increased based on the setting process to the index table register RGij and the instruction command of the display list DL. Thereafter, when it is no longer needed, the index space IDXj is released. That is, FIG. 11(a) shows the index table IDXTBL during steady operation.

なお、AC領域AAC領域(a) のインデックス空間は、ディスプレイリストDLに記載されている指示コマンドに基づいて、必要時に自動的に生成され、インデックステーブルIDXTBLには、自動生成されたインデックス空間IDXjの先頭アドレスや、その他の必要情報が自動設定される。本実施例では、このAAC領域(a) を、静止画その他のテクスチャのデコード領域として使用している。 The index space of the AAC area AAC area (a) is automatically generated when necessary based on the instruction command written in the display list DL, and the index table IDXTBL contains the automatically generated index space. The start address of IDXj and other necessary information are automatically set. In this embodiment, this AAC area (a) is used as a decoding area for still images and other textures.

インデックス空間を確保する上記の動作は、もっぱら、制御レジスタ群70に含まれるインデックステーブルレジスタRGijへの設定動作によって実現されるが、ステップST1~ST2の処理に続いて、他のVDPレジスタRGijに、必要な設定動作(ST3)を実行することで、図28~図29に示すVDP回路52の定常動作(間欠動作)を可能にしている。 The above operation of securing the index space is realized exclusively by setting the index table register RGij included in the control register group 70, but following the processing of steps ST1 and ST2, setting the index table register RGij included in the control register group 70, By executing the necessary setting operation (ST3), steady operation (intermittent operation) of the VDP circuit 52 shown in FIGS. 28 and 29 is enabled.

本実施例において、必要な設定処理(ST3)には、少なくとも表1に示す処理(SS30~SS43)が含まれている。なお、ステップSS30~SS43は、何ら処理の順番を限定せず、以下の説明順序に拘わらず、任意の順番で実行することができる。

Figure 0007426890000001
In this embodiment, the necessary setting processing (ST3) includes at least the processing shown in Table 1 (SS30 to SS43). Note that steps SS30 to SS43 can be executed in any order without any limitation on the order of processing, regardless of the order of explanation below.
Figure 0007426890000001

本実施例では、先ず、メイン表示装置DS1に関して、デュアルリンク伝送路を構築することを、所定のシステム制御レジスタRGijに設定する(SS30)。この設定の結果、表示回路74Aの出力は、ドットクロックDCKが2分周されたODD信号とEVEN信号に二分された状態で、LVDS部80aと、LVDS部80bに供給されることになる。 In this embodiment, first, a predetermined system control register RGij is set to construct a dual link transmission path for the main display device DS1 (SS30). As a result of this setting, the output of the display circuit 74A is supplied to the LVDS section 80a and the LVDS section 80b in a state in which the dot clock DCK is divided into two, an ODD signal and an EVEN signal.

次に、表示回路74Aと表示回路74Bについて、40MHzのリファレンスクロック(発振器OSC2の出力)を基礎にして、ドットクロックDCKやDCKを生成することを、各々、所定のシステム制御レジスタRGijに設定し(SS31)、このリファレンスクロックに対する逓倍比と分周比を表示回路毎に適宜に規定する(SS32)。 Next, for the display circuit 74A and the display circuit 74B, a predetermined system control register RGij is set to generate the dot clocks DCK A and DCK B based on the 40 MHz reference clock (output of the oscillator OSC2). Then, the multiplication ratio and frequency division ratio for this reference clock are appropriately defined for each display circuit (SS32).

ドットクロックDCKは、表示回路74Aと表示回路74Bについて別々に設定され、表示回路74Aに適用されるメイン表示装置DS1用のドットクロックDCKの周波数は、先に説明した通り、108MHzに設定される。一方、表示回路74Bに適用されるサブ表示装置DS2用のドットクロックDCKの周波数は、横480×縦800ピクセルに対応して、27MHzに設定される。 The dot clock DCK is set separately for the display circuit 74A and the display circuit 74B, and the frequency of the dot clock DCK A for the main display device DS1 applied to the display circuit 74A is set to 108 MHz, as described above. . On the other hand, the frequency of the dot clock DCKB for the sub-display device DS2 applied to the display circuit 74B is set to 27 MHz, corresponding to 480 pixels horizontally by 800 pixels vertically.

また、表示回路74Bの動作開始を、表示回路74Aの動作開始に同期させるべく所定のシステム制御レジスタRGijに設定する(SS33)。 Further, a predetermined system control register RGij is set to synchronize the start of operation of the display circuit 74B with the start of operation of the display circuit 74A (SS33).

続いて、表示回路74の動作を規定する所定の表示レジスタRGijに、所定の動作パラメータ(ライン数と画素数)を書込むことで、各表示装置DS1,SD2について表示ライン数と水平画素数を設定する(SS34)。本実施例の場合、メイン表示装置DS1の水平画素数は、1280ドットであり、表示ライン数は1024行である。また、サブ表示装置DS2の水平画素数は、480ドットであり、表示ライン数は80行である。ステップSS34の設定処理の結果、各フレームバッファFBa,FBbにおいて、表示回路74A,74BがREADアクセスすべき有効データ領域(図20(e)の破線部)の縦横寸法が、特定されることになる。 Next, by writing predetermined operating parameters (number of lines and number of pixels) into a predetermined display register RGij that defines the operation of the display circuit 74, the number of display lines and the number of horizontal pixels for each display device DS1 and SD2 is determined. Set (SS34). In the case of this embodiment, the number of horizontal pixels of the main display device DS1 is 1280 dots, and the number of display lines is 1024. Further, the number of horizontal pixels of the sub-display device DS2 is 480 dots, and the number of display lines is 80. As a result of the setting process in step SS34, the vertical and horizontal dimensions of the valid data area (broken line in FIG. 20(e)) to be accessed by the display circuits 74A, 74B for READ access are specified in each frame buffer FBa, FBb. .

次に、表示回路74の動作を規定する所定の表示レジスタRGijに、所定の動作パラメータ(THc,WTh)を書込むことで、各表示装置DS1,SD2について、水平周期THのサイクル数THcと、水平待機時間WThを設定する(SS35)。また、所定の表示レジスタRGijに、所定の動作パラメータ(TVl,WTv)を書込むことで、各表示装置DS1,SD2について、垂直周期TVのライン数TVlと、垂直待機時間WTvを設定する(SS36)。 Next, by writing predetermined operating parameters (THc, WTh) into a predetermined display register RGij that defines the operation of the display circuit 74, the number of cycles THc of the horizontal period TH and A horizontal standby time WTh is set (SS35). In addition, by writing predetermined operating parameters (TVl, WTv) into a predetermined display register RGij, the number of vertical period TV lines TVl and vertical standby time WTv are set for each display device DS1, SD2 (SS36 ).

図14に関して説明した通り、メイン表示装置DS1については、水平周期THのサイクル数THc=1662、垂直周期TVのライン数TVl=1083と設定される。また、水平待機時間WTh=382、垂直待機時間WTv=59ラインと設定される。一方、サブ表示装置DS2については、例えば、水平周期THのサイクル数THc=519、垂直周期TVのライン数TVl=867と設定され、水平待機時間WTh=39、垂直待機時間WTv=67ラインと設定される。なお、THc-WTh=519-39=480、TVl-WTv=867-67=800であり、サブ表示装置のピクセル数(横480×縦800)に整合する。 As explained with reference to FIG. 14, for the main display device DS1, the number of cycles THc of the horizontal period TH is set to 1662, and the number of lines TVl of the vertical period TV is set to 1083. Further, the horizontal standby time WTh=382 lines and the vertical standby time WTv=59 lines are set. On the other hand, for the sub display device DS2, for example, the number of cycles THc of the horizontal period TH is set as 519, the number of lines TVl of the vertical period TV is set as 867, the horizontal standby time WTh is set as 39, and the vertical standby time WTv is set as 67 lines. be done. Note that THc-WTh=519-39=480 and TVl-WTv=867-67=800, which match the number of pixels of the sub display device (480 horizontally x 800 vertically).

何れにしても、ステップSS32の処理によってドットクロックDCKの周波数Fdot(=108MHz)が決定され、また、ステップSS35~SS36の処理によって、メイン表示装置DS1について、水平周期THのサイクル数THc(=1662)と、垂直周期TVのライン数TVl(=1083)が規定された結果、一フレームの表示期間が、THc×TVl/Fdotと確定されることになる。具体的には、一フレームの表示期間は、1083×1662/108MHz=16.667mSであり、フレームレートFRが1/60秒であると確定される。 In any case, the frequency F dot (=108 MHz) of the dot clock DCK is determined by the processing in step SS32, and the number of cycles THc (= 1662) and the number of lines TVl (=1083) of the vertical period TV, the display period of one frame is determined to be THc×TVl/F dot . Specifically, the display period of one frame is 1083×1662/108 MHz=16.667 mS, and the frame rate FR is determined to be 1/60 second.

なお、サブ表示装置DS2についても、例えば、ドットクロックDCKの周波数Fdot=27MHz、水平周期THのサイクル数THc=519、及び、垂直周期TVのライン数TVl=867に基づいて、519×867/27MHz=16.66mSと確定される。 For the sub display device DS2, for example, based on the frequency F dot of the dot clock DCK = 27 MHz, the number of cycles THc of the horizontal period TH = 519, and the number of lines TVl of the vertical period TV = 867, It is determined that 27MHz=16.66mS.

本実施例では、上記の確定処理に対応して、表示回路74は、1/60秒ごとVブランク開始状態となり、図14に示す表示動作が繰り返されることになる。なお、図14において、〇印で示す表示動作の開始タイミング、及び表示動作の終了タイミングは、Vブランク開始タイミングを示している。 In this embodiment, in response to the above-described determination process, the display circuit 74 enters the V blank start state every 1/60 seconds, and the display operation shown in FIG. 14 is repeated. In addition, in FIG. 14, the start timing of the display operation and the end timing of the display operation indicated by the circle mark indicate the V blank start timing.

そして、このVブランク開始タイミングに基づいて、表示回路74の動作における水平基準点TH0(=水平基準時刻)と、垂直基準点(=垂直基準時刻)TV0が規定されることになり、表示回路74は、水平基準点TH0から水平待機時間WThを経過するまで、表示装置の各ピクセルに対応する画像データを出力しないで待機する。同様に、表示回路74は、垂直基準点TV0から、垂直待機時間WTvを経過するまで、表示装置の各ピクセルに対応する画像データを出力しないで待機するよう構成されている。 Based on this V blank start timing, a horizontal reference point TH0 (=horizontal reference time) and a vertical reference point (=vertical reference time) TV0 in the operation of the display circuit 74 are defined, and the display circuit 74 waits without outputting image data corresponding to each pixel of the display device until the horizontal standby time WTh elapses from the horizontal reference point TH0. Similarly, the display circuit 74 is configured to wait without outputting image data corresponding to each pixel of the display device until a vertical standby time WTv elapses from the vertical reference point TV0.

また、表示回路74Bは、表示装置74Aに同期して動作するので(SS33)、サブ表示装置DS2についての表示動作の開始と終了タイミングも、メイン表示装置DS1のタイミングと同じである。したがって、サブ表示装置DS2に対するフレーム周期(519×867/27)は、サブ表示装置DS2に対するフレーム周期(1083×1662/108)より短く設定されることで、Vブランク開始時には、サブ表示装置DS2の更新処理が完了しているよう設定される。 Furthermore, since the display circuit 74B operates in synchronization with the display device 74A (SS33), the start and end timings of the display operation for the sub display device DS2 are also the same as the timings for the main display device DS1. Therefore, the frame period (519×867/27) for the sub display device DS2 is set shorter than the frame period (1083×1662/108) for the sub display device DS2, so that at the start of V blanking, the frame period (519×867/27) for the sub display device DS2 is The update process is set to complete.

次に、本実施例では、サブ表示装置DS2に関して、所定の表示レジスタRGijに、水平周期信号HSのパルス幅と、パルス立上りエッジのVブランク開始タイミングからのサイクル数の設定する(SS37)。また、サブ表示装置DS2に関して、垂直周期信号VSのパルス幅と、パルス立上りエッジのVブランク開始タイミングからのサイクル数の設定する(SS38)。 Next, in this embodiment, regarding the sub display device DS2, the pulse width of the horizontal periodic signal HS and the number of cycles from the V blank start timing of the pulse rising edge are set in a predetermined display register RGij (SS37). Further, regarding the sub display device DS2, the pulse width of the vertical periodic signal VS and the number of cycles from the V blank start timing of the pulse rising edge are set (SS38).

先に説明した通り、メイン表示装置DS1は、水平同期信号HSや垂直同期信号VSを必要としないので、メイン表示装置DS1に対する上記の処理(SS37~SS38)は不要である。但し、ステップSS37~SS38の設定処理を省略した場合には、電源リセット時に設定されたデフォルト値が機能するので、実際には、表示装置74Aも、水平同期信号HSや垂直同期信号VSを出力することになる。 As explained above, the main display device DS1 does not require the horizontal synchronization signal HS or the vertical synchronization signal VS, so the above processing (SS37 to SS38) for the main display device DS1 is unnecessary. However, if the setting processing of steps SS37 to SS38 is omitted, the default value set at the power reset will function, so the display device 74A will actually output the horizontal synchronizing signal HS and the vertical synchronizing signal VS. It turns out.

デフォルト値によれば、例えば、Vブランク開始タイミングから16クロック後にアクティブレベルとなる、パルス幅40クロック分の水平同期信号HSが出力され、Vブランク開始タイミングに同期してアクティブレベルとなる、パルス幅3ライン分の垂直同期信号VSが出力される。 According to the default value, for example, a horizontal synchronizing signal HS with a pulse width of 40 clocks that becomes active level 16 clocks after the V blank start timing is output, and a pulse width that becomes active level in synchronization with the V blank start timing. A vertical synchronization signal VS for three lines is output.

この動作は、メイン表示装置DS1に対して、水平待機時間WTh=382クロックの間に、水平フロントポーチHPv=16、パルス幅PWh=40、水平バックポーチBPv=326の水平同期信号HSが出力され、また、垂直待機時間WTv=59ラインの間に、垂直フロントポーチHPv=0、パルス幅PWv=3、垂直バックポーチBPv=56の垂直同期信号VSが出力されることを意味する。但し、メイン表示装置において、これらの同期信号が無視されることは前記した通りである。 In this operation, a horizontal synchronizing signal HS with horizontal front porch HPv=16, pulse width PWh=40, and horizontal back porch BPv=326 is output to the main display device DS1 during horizontal standby time WTh=382 clocks. , which also means that a vertical synchronizing signal VS with vertical front porch HPv=0, pulse width PWv=3, and vertical back porch BPv=56 is output during the vertical standby time WTv=59 lines. However, as described above, these synchronization signals are ignored in the main display device.

なお、デフォルト値に基づく同期信号HS,VSが出力されるのを防ぐため、水平同期信号HSや垂直同期信号VSを出力しないよう、所定のシステム制御レジスタRGijに設定する構成を採っても良い。このようなマスク設定を設けた場合には、VDP回路52の水平同期信号HSの出力端子や、垂直同期信号VSの出力端子は、Hレベル又はLレベルの固定値を維持することができる。 Note that in order to prevent the synchronization signals HS and VS based on default values from being output, a configuration may be adopted in which a predetermined system control register RGij is set so as not to output the horizontal synchronization signal HS and the vertical synchronization signal VS. When such a mask setting is provided, the output terminal of the horizontal synchronization signal HS and the output terminal of the vertical synchronization signal VS of the VDP circuit 52 can maintain a fixed value of H level or L level.

続いて、所定のシステム制御レジスタRGijに、Vブランク割込みを許可すると設定する(SS39)。この結果、本実施例では、16.667mS=1/60秒ごとに生じるVブランク開始タイミングに対応して、図20(c)に示すVBLANK開始割込みが生じることなる。このVブランク割込みタイミングは、演出制御CPU63の定常処理(ST5~ST14)の開始タイミングを規定するとともに、表示回路74A,74Bにとっての表示期間の開始タイミング(直前の表示期間の終了タイミング)を意味する。 Subsequently, a predetermined system control register RGij is set to permit V blank interrupts (SS39). As a result, in this embodiment, the VBLANK start interrupt shown in FIG. 20(c) occurs corresponding to the VBLANK start timing that occurs every 16.667 mS=1/60 seconds. This V blank interrupt timing defines the start timing of the steady processing (ST5 to ST14) of the production control CPU 63, and also means the start timing of the display period for the display circuits 74A and 74B (the end timing of the immediately preceding display period). .

次に、所定の表示レジスタRGijに、所定の動作パラメータ(アドレス値)を書込んで、各フレームバッファFBa,FBbについて、垂直表示開始位置と水平表示開始位置を特定する(SS40)。その結果、ステップSS34の処理で縦横寸法が特定された有効データ領域が、フレームバッファFBa,FBb上に確定されることになる。ここで、垂直表示開始位置と水平表示開始位置は、各インデックス空間における相対アドレス値であって、図20(e)に示す実施例では、表示開始位置は(0,0)となっている。 Next, a predetermined operating parameter (address value) is written into a predetermined display register RGij, and the vertical display start position and horizontal display start position are specified for each frame buffer FBa, FBb (SS40). As a result, the valid data area whose vertical and horizontal dimensions were specified in the process of step SS34 is determined on the frame buffers FBa and FBb. Here, the vertical display start position and the horizontal display start position are relative address values in each index space, and in the example shown in FIG. 20(e), the display start position is (0,0).

ここで、「表示領域」とは、表示回路74A,74Bが、表示装置DS1,DS2を駆動するために、画像データを読み出すべきインデックス空間(フレームバッファFBa,FBb)を意味し、各々ダブルバッファ構造であるフレームバッファFBa,FBbにおけるダブルバッファの何れか一方を意味する。もっとも、表示回路74A,74Bが、実際に画像データを読み出すのは、表示領域(0)又は表示領域(1)における、ステップSS34とステップSS40で特定された「有効データ領域」に限定される。 Here, the "display area" means an index space (frame buffer FBa, FBb) from which the display circuits 74A, 74B should read image data in order to drive the display devices DS1, DS2, and each has a double buffer structure. This means either one of the double buffers in frame buffers FBa and FBb. However, display circuits 74A and 74B actually read image data only from the "valid data area" specified in step SS34 and step SS40 in display area (0) or display area (1).

次に、メイン表示装置DS1を駆動する表示回路74Aに関する表示レジスタRGij(DSPAINDEX )と、サブ表示装置DS2を駆動する表示回路74Bに関する表示レジスタRGij(DSPBINDEX )に、各々、「表示領域(0)」と「表示領域(1)」を設定して、各表示領域を定義する(SS41)。 Next, the display register RGij (DSPAINDEX) related to the display circuit 74A that drives the main display device DS1 and the display register RGij (DSPBINDEX) related to the display circuit 74B that drives the sub display device DS2 are each set to have a "display area (0)". and "display area (1)" to define each display area (SS41).

何ら限定されないが、本実施例では、フレームバッファFBaについて、VRAM任意領域(c) におけるインデックス番号254のインデックス空間254を「表示領域(0)」と定義し、VRAM任意領域(c) におけるインデックス番号255のインデックス空間255を、「表示領域(1)」と定義している(SS41)。 Although not limited in any way, in this embodiment, for the frame buffer FBa, the index space 254 with the index number 254 in the VRAM arbitrary area (c) is defined as the "display area (0)", and the index space 254 in the VRAM arbitrary area (c) is defined as the "display area (0)". 255 is defined as a "display area (1)" (SS41).

また、フレームバッファFBbについて、VRAM任意領域(c) におけるインデックス番号251のインデックス空間251を「表示領域(0))とし、VRAM任意領域(c) におけるインデックス番号252のインデックス空間252を「表示領域(1)」としている(SS41)。なお、「表示領域」を初期処理(ST3)において定義することは、特に限定されず、動作周期δ毎に、表示回路74が画像データをREADアクセスすべきインデックス空間(表示領域)をトグル的に切換えても良い。 Regarding the frame buffer FBb, the index space 251 with index number 251 in the VRAM arbitrary area (c) is defined as the "display area (0)", and the index space 252 with index number 252 in the VRAM arbitrary area (c) is defined as the "display area (0)". 1)” (SS41). Note that there is no particular limitation on defining the "display area" in the initial processing (ST3), and the display circuit 74 can toggle the index space (display area) to which the image data should be accessed at each operation cycle δ. You may switch.

本実施例では、以上の処理(SS30~SS41)を含んだ初期設定が終われば、次に、所定のシステム制御レジスタRGijへの設定値が、その後、ノイズなどの影響で変更されないよう、第1種の禁止設定レジスタRGijに、所定の禁止値を設定している(第1の禁止設定SS42)。 In this embodiment, after the initial settings including the above processing (SS30 to SS41) are completed, the set value to the predetermined system control register RGij is set to the first register so that it will not be changed due to noise or the like. A predetermined prohibition value is set in the seed prohibition setting register RGij (first prohibition setting SS42).

ここで、今後の書込みが禁止される設定値には、(1) 表示装置DS1,DS2の表示クロックDCKに関する設定値、(2) LVDSのサンプリングクロックに関する設定値、(3) 出力選択回路79の選択動作に関する設定値、(4) 複数の表示装置DS1,DS2の同期関係(表示回路74Bが表示回路74Aの動作周期に従属すること)などが含まれている。なお、第1の禁止設定を解除するソフトウェア処理は存在するが、本実施例では使用していない。但し、必要に応じて使用するのも好適である。 Here, the setting values that will be prohibited from being written in the future include (1) setting values related to the display clock DCK of display devices DS1 and DS2, (2) setting values related to the LVDS sampling clock, and (3) settings values of the output selection circuit 79. Setting values related to selection operations, (4) synchronization relationship between the plurality of display devices DS1 and DS2 (the display circuit 74B is dependent on the operation cycle of the display circuit 74A), etc. are included. Note that although there is a software process for canceling the first prohibition setting, it is not used in this embodiment. However, it is also suitable to use it as needed.

次に、第2種の禁止設定レジスタRGijに、所定の禁止値を設定することで、初期設定系のVDPレジスタRGijについて書込み禁止設定をしている(第2の禁止設定SS43)。ここで、禁止設定されるレジスタには、ステップSS30~SS42に係るVDPレジスタRGijが含まれている。 Next, by setting a predetermined prohibition value in the second type of prohibition setting register RGij, writing is prohibited for the initial setting type VDP register RGij (second prohibition setting SS43). Here, the registers set to be prohibited include the VDP register RGij related to steps SS30 to SS42.

一方、第3種の禁止設定レジスタRGijに、所定の禁止値を設定することで、ステップST1~ST3の設定処理に関するVDPレジスタを含んだ、多数のVDPレジスタへの禁止設定も可能である(第3の禁止設定)。但し、本実施例では原則として使用しない。何れにしても、第2の禁止設定や、第3の禁止設定は、所定の解除レジスタRGijに、解除値を書込むことで任意に解除可能であり、定常動作中に設定値を変更することも可能となる。 On the other hand, by setting a predetermined prohibition value in the third type prohibition setting register RGij, it is also possible to prohibit settings for a large number of VDP registers, including the VDP registers related to the setting processing of steps ST1 to ST3. 3 prohibition setting). However, in principle, this is not used in this embodiment. In any case, the second prohibition setting and the third prohibition setting can be canceled arbitrarily by writing a cancellation value to a predetermined cancellation register RGij, and the setting value cannot be changed during normal operation. is also possible.

なお、以上説明したステップST1~ST3の初期設定処理は、VDPレジスタRGijのレジスタアドレス値と、そのレジスタRGijへの設定値とを対応させた初期値設定テーブルSETTABLE(図34参照)に基づいて実行される。以上、初期設定処理について説明したので、次に、定常処理(ST4~ST14)を説明する前に、演出制御CPU63によって制御されるVDP回路52の定常動作(間欠動作)について図28(a)及び図29(b)に基づいて概略的に説明しておく。 The initial setting process in steps ST1 to ST3 described above is executed based on the initial value setting table SETTABLE (see FIG. 34) that associates the register address value of the VDP register RGij with the set value to that register RGij. be done. Since the initial setting process has been explained above, next, before explaining the steady process (ST4 to ST14), the steady operation (intermittent operation) of the VDP circuit 52 controlled by the production control CPU 63 will be explained as shown in FIG. 28(a) and This will be briefly explained based on FIG. 29(b).

VDP回路52の間欠動作は、図28や図29に示す通りであり、プリローダ73を使用しない実施例では、図28(a)に示すように、演出制御CPU63が完成させたディスプレイリストDLiは、その動作周期(T1)で、描画回路76に発行され、描画回路76はディスプレイリストDLiに基づく描画動作によって、フレームバッファFBa,FBbに、画像データを完成させる。そして、フレームバッファFBa,FBbに完成された画像データは、次の動作周期T1+δに、表示回路74が表示装置DS1,DS2に出力することで、その後の、表示装置DS1,DS2の描画動作に基づき、遊技者が感知する表示画面となる。 The intermittent operation of the VDP circuit 52 is as shown in FIGS. 28 and 29, and in an embodiment that does not use the preloader 73, the display list DLi completed by the production control CPU 63 is as shown in FIG. 28(a). At the operation cycle (T1), it is issued to the drawing circuit 76, and the drawing circuit 76 completes the image data in the frame buffers FBa and FBb by a drawing operation based on the display list DLi. Then, the image data completed in the frame buffers FBa and FBb is outputted by the display circuit 74 to the display devices DS1 and DS2 in the next operation cycle T1+δ, based on the subsequent drawing operations of the display devices DS1 and DS2. , becomes the display screen that the player senses.

一方、プリローダ73を使用する実施例では、図29(a)に示すように、演出制御CPU63が完成させたディスプレイリストDLiは、その動作周期(T1)で、プリローダ73に発行され、プリローダ73は、ディスプレイリストDLiを解釈して、必要な先読み動作を実行すると共に、ディスプレイリストDLiの一部を書き換えて、書換えリストDL’を完成させる。なお、先読みされたCGデータと書換えリストDL’は、DRAM54の適所に格納される。 On the other hand, in the embodiment using the preloader 73, as shown in FIG. 29(a), the display list DLi completed by the production control CPU 63 is issued to the preloader 73 in its operation cycle (T1), , interprets the display list DLi, performs necessary prefetch operations, and rewrites a part of the display list DLi to complete the rewrite list DL'. Note that the prefetched CG data and rewrite list DL' are stored at appropriate locations in the DRAM 54.

次に、描画回路76は、その次の動作周期(T1+δ)で、DRAM54から書換えリストDL’を取得し、書換えリストDL’に基づく描画動作によって、フレームバッファFBa,FBbに、画像データを完成させる。そして、フレームバッファFBa,FBbに完成された画像データは、更にその次の動作周期(T1+2δ)で、表示回路74が表示装置DS1,DS2に出力することで、その後の表示装置DS1,DS2の描画動作に基づき、遊技者が感知する表示画面となる。 Next, in the next operation cycle (T1+δ), the drawing circuit 76 acquires the rewriting list DL' from the DRAM 54, and completes the image data in the frame buffers FBa and FBb by a drawing operation based on the rewriting list DL'. . Then, the image data completed in the frame buffers FBa and FBb is further outputted by the display circuit 74 to the display devices DS1 and DS2 in the next operation cycle (T1+2δ), so that the image data can be displayed on the subsequent display devices DS1 and DS2. Based on the movement, a display screen is created that the player senses.

以上、VDP回路52の間欠動作について概略的に説明したが、上記した図28~図29の動作を実現するため、演出制御CPU63は、初期処理(ST1~ST3)の後、割込みカウンタVCNTの値を繰り返し参照して、動作開始タイミングに達するのを待ち、動作開始タイミング(一つ飛びのVブランク開始タイミング)に達すれば、割込みカウンタVCNTをゼロクリアする(ST4)。 The intermittent operation of the VDP circuit 52 has been schematically explained above, but in order to realize the operations shown in FIGS. is repeatedly referred to and waits until the operation start timing is reached. When the operation start timing (one-by-one V blank start timing) is reached, the interrupt counter VCNT is cleared to zero (ST4).

その後、定常動作を開始するが、本実施例では、最初に、定常動作を開始すべき動作開始条件を満たしているか否かを判定する(ST5)。なお、この判定タイミングは、図28~図29に記載のT1,T1+δ、T1+2δ、・・・・のタイミング、つまり、表示装置DS1の垂直帰線期間(VBLANK)の開始タイミングである。なお、表示装置DS2の表示タイミングは、表示装置DS1の表示タイミングに従属するよう、初期設定(ST3)時に設定されている。 After that, the steady operation is started, but in this embodiment, it is first determined whether or not the operation start condition for starting the steady operation is satisfied (ST5). Note that this determination timing is the timing of T1, T1+δ, T1+2δ, . Note that the display timing of the display device DS2 is set at the time of initial setting (ST3) so as to be subordinate to the display timing of the display device DS1.

垂直帰線期間(VBLANK)の開始タイミングで判定される動作開始条件は、プリローダ73を活用するか否かで異なるので、先ず、プリローダ73を活用しない実施例(図20)について説明する。この場合は、本来、図28(a)のタイムチャートに示す通りにVDPの内部動作が進行するよう、回路構成やプログラムが設計されている。すなわち、動作周期(T1)で完成されたディスプレイリストDL1に基づき、描画回路76は、その動作周期中(T1~T1+δ)に、描画動作を終える筈である。しかし、例えば、図28(a)の動作周期(T1+2δ)で完成されたディスプレイリストDL3のように、その動作周期中(T1+2δ~T1+3δ)に、描画動作を終わらない場合も無いとは言えない。また、表示回路74に関して、表示タイミングに対して、表示データの生成が間に合わないUnderrun異常が生じている可能性も無くはない。 Since the operation start condition determined by the start timing of the vertical blanking period (VBLANK) differs depending on whether or not the preloader 73 is used, an example (FIG. 20) in which the preloader 73 is not used will be described first. In this case, the circuit configuration and program are originally designed so that the internal operation of the VDP proceeds as shown in the time chart of FIG. 28(a). That is, based on the display list DL1 completed in the operation cycle (T1), the drawing circuit 76 is supposed to finish the drawing operation during the operation cycle (T1 to T1+δ). However, it cannot be said that there are cases where the drawing operation is not completed during the operation cycle (T1+2δ to T1+3δ), for example, like the display list DL3 completed in the operation cycle (T1+2δ) in FIG. 28(a). Furthermore, regarding the display circuit 74, there is a possibility that an underrun abnormality occurs in which display data is not generated in time for the display timing.

ステップST5の判定処理は、かかる事態を考慮したのであり、演出制御CPU63は、描画回路76の動作状態を示すステイタスレジスタRGij(制御レジスタ群70の一種)をアクセスして、ステップST5のタイミングで、描画回路76が、必要な動作を終えているか否かと、Underrun異常の有無を判定する。なお、Underrun異常の有無は、アンダーランカウンタURCNTa~URCNTcに基づいて判定される。また、プリローダ73を活用しない実施例では、例えば、図28(a)のタイミングT1+δでは、描画回路76に関する描画レジスタのステイタス情報をREADアクセスして、ディスプレイリストDL1に基づく描画動作が終わっていることを確認する。 The determination process in step ST5 takes this situation into consideration, and the production control CPU 63 accesses the status register RGij (a type of control register group 70) that indicates the operating state of the drawing circuit 76, and at the timing of step ST5, The drawing circuit 76 determines whether the necessary operations have been completed and whether there is an underrun abnormality. Note that the presence or absence of an underrun abnormality is determined based on underrun counters URCNTa to URCNTc. Further, in an embodiment that does not utilize the preloader 73, for example, at timing T1+δ in FIG. 28(a), the status information of the drawing register related to the drawing circuit 76 is read accessed, and the drawing operation based on the display list DL1 is completed. Check.

そして、動作開始条件を満たさない場合(異常/不適合)には、異常回数をカウントする異常フラグERをインクリメントして、ステップST6~ST8処理をスキップする。異常フラグERは、その他の重大異常フラグABNと共に、ステップST9やST10の処理で判定され、重大異常フラグABNがリセット状態である前提において、連続異常回数が多くない場合(ER≦2)には、正常時と同様に、演出コマンド解析処理を実行する(ST13)。 If the operation start condition is not satisfied (abnormality/nonconformity), an abnormality flag ER that counts the number of abnormalities is incremented, and steps ST6 to ST8 are skipped. The abnormality flag ER is determined together with other serious abnormality flags ABN in the processing of steps ST9 and ST10, and on the premise that the serious abnormality flag ABN is in the reset state, if the number of consecutive abnormalities is not large (ER≦2), Similar to the normal time, performance command analysis processing is executed (ST13).

Underrun異常時の場合も、同様に、ステップST6~ST8処理をスキップする。そして、所定のシステム制御レジスタRGijに、所定のクリア値を書込むことで、表示クロックDCK(周波数)と表示回路74を初期化する(ST10c)。そして、この初期化処理の正常終了を確認した後、表示クロックDCKの周波数や、表示回路74の動作を規定する一群のシステム制御レジスタRGijの値を、規定値に再設定した上で(ST10c)、演出コマンド解析処理を実行する(ST13)。 In the case of underrun abnormality, steps ST6 to ST8 are similarly skipped. Then, by writing a predetermined clear value into a predetermined system control register RGij, the display clock DCK (frequency) and the display circuit 74 are initialized (ST10c). After confirming that the initialization process has completed successfully, the frequency of the display clock DCK and the values of a group of system control registers RGij that define the operation of the display circuit 74 are reset to the specified values (ST10c). , performs production command analysis processing (ST13).

演出コマンド解析処理(ST13)では、主制御基板21から制御コマンドCMDを受けているか否かを判定し、制御コマンドCMDを受けた場合には、その制御コマンドCMDを解析して必要な処理を実行する(ST13)。ここで、必要な処理には、変動演出の開始を指示する制御コマンドCMDに基づく新規の変動演出の開始準備処理や、エラー発生を示す制御コマンドCMDに基づくエラー報知の開始処理が含まれる。続いて、WDT回路にクリアパルスを出力して(ST14)、ステップST4の処理に戻る。 In the performance command analysis process (ST13), it is determined whether or not a control command CMD is received from the main control board 21, and if a control command CMD is received, the control command CMD is analyzed and necessary processing is executed. (ST13). Here, the necessary processing includes a process for preparing to start a new variable effect based on a control command CMD that instructs the start of a variable effect, and a process for starting error notification based on a control command CMD indicating the occurrence of an error. Subsequently, a clear pulse is output to the WDT circuit (ST14), and the process returns to step ST4.

以上、軽微なUnderrun異常時や、動作開始条件が不適合の場合であって、異常フラグERがER≦2である場合について説明したが、このような場合には、その動作周期では、表示回路74が読み出す表示領域をトグル切換える処理(ST6)や、ディスプレイリストの作成処理(ST7)がスキップされ、且つ、演出シナリオが進行しないことになる(ST8~ST12参照)。これは、不完全な状態のフレームバッファFBa,FBbの画像データを出力させないためである。そのため、例えば、図28(a)の動作周期(T1+3δ)では、画像演出が進行せず、元の画面(DL2に基づく画面)が再表示されるフレーム落ちが生じる。 Above, we have explained the case where there is a slight underrun abnormality or the operation start condition is not met and the abnormality flag ER is ER≦2. In such a case, the display circuit 74 The process of toggling the display area to be read out (ST6) and the process of creating a display list (ST7) are skipped, and the production scenario does not proceed (see ST8 to ST12). This is to prevent image data from incomplete frame buffers FBa and FBb from being output. Therefore, for example, in the operation cycle (T1+3δ) of FIG. 28(a), image rendering does not proceed and a frame drop occurs in which the original screen (screen based on DL2) is redisplayed.

ここで、フレーム落ちを回避するため、動作開始条件が成立するまで待機する構成も考えられる。しかし、演出制御CPU63が実行すべき制御処理(ST6~ST12)は数多く、各々の処理時間を確保する必要があるので、本実施例では、動作開始条件を満たさない場合にフレーム落ちを生じさせている。 Here, in order to avoid frame drops, a configuration may be considered in which the process waits until the operation start condition is satisfied. However, there are many control processes (ST6 to ST12) to be executed by the production control CPU 63, and it is necessary to secure time for each process, so in this embodiment, if the operation start conditions are not met, frames are dropped. There is.

但し、フレーム落ちが生じたとしても、割込み処理(図20(b))によって進行するランプ演出やモータ演出と比較して、1/30~2/30秒程度、画像演出の進行が遅れるだけであり、これに遊技者が気付くことはない。しかも、フレーム落ち時には、演出カウンタENの更新処理を含んだ演出シナリオ処理(ST11)や、音声進行処理(ST12)も合わせてスキップされるので、その後に開始されるリーチ演出や予告演出や役物演出において、画像演出、音声演出、ランプ演出、及びモータ演出などの開始タイミングがずれるおそれはない。 However, even if a frame drop occurs, the progress of the image presentation will only be delayed by about 1/30 to 2/30 seconds compared to the lamp effect and motor effect that proceed due to interrupt processing (Figure 20(b)). Yes, the player does not notice this. Moreover, when a frame is dropped, the production scenario processing (ST11) including the processing to update the production counter EN and the audio progression processing (ST12) are also skipped, so the reach production, preview production, and accessories that will be started afterwards are also skipped. There is no fear that the start timings of image effects, audio effects, lamp effects, motor effects, etc. will be shifted in the effects.

すなわち、演出シナリオでは、画像演出、音声演出、ランプ演出、モータ演出の開始タイミングと、その後に実行すべき演出内容を一元的に管理しており、正常時に限り更新される演出カウンタENによって、開始タイミングを制御しているので、各種の演出の同期が外れることはない。例えば、爆発音と、爆発画像と、役物移動と、ランプフラッシュ動作を複合した演出動作がある場合、フレーム落ちが生じた後であっても、上記した各演出動作は正しく同期して開始される。 In other words, in the production scenario, the start timing of image production, audio production, lamp production, and motor production, as well as the content of production to be executed thereafter, are centrally managed. Since the timing is controlled, the various performances will not go out of sync. For example, if there is a performance action that combines an explosion sound, an explosion image, a moving object, and a lamp flash action, each of the above performance actions will start correctly in synchronization even after a frame drop occurs. Ru.

以上、比較的軽微な異常時について説明したが、重大異常フラグABNがセット状態である場合や、連続異常回数が多い場合(ER>2)や、繰り返しUnderrun異常が生じる場合には、ステップST10の判定の後、無限ループ状態としている(ST10b)。その結果、WDT回路58の計時動作が進行して、演出制御CPU63を含んだ複合チップ50は、異常リセットされ、その後、初期処理(ST1~ST3)が再実行されることで、異常事態発生の根本原因の解消が期待される。 Although relatively minor abnormalities have been explained above, when the serious abnormality flag ABN is set, when the number of consecutive abnormalities is large (ER>2), or when an underrun abnormality occurs repeatedly, step ST10 is performed. After the determination, an infinite loop state is established (ST10b). As a result, the timekeeping operation of the WDT circuit 58 progresses, and the composite chip 50 including the performance control CPU 63 is abnormally reset. After that, the initial processing (ST1 to ST3) is re-executed, thereby preventing the occurrence of an abnormal situation. It is hoped that the root cause will be resolved.

なお、このリセット動作は、WDT回路58が起動して実行されるので、CPU回路51も含め複合チップ50全体がリセット状態となる(図6(b))。そこで、CPU回路51のリセットを回避するべく、演出制御CPU63が、所定のキーワード列(例えば1バイトデータ3個)をパターンチェック回路CHKに出力して、リセット信号RSTをVDP回路52に出力するのも好適である(図34のST100参照)。この場合も、VDP回路52のリセット動作の正常終了を確認した後(ST101)、ステップST4やST13の処理に移行させることになる。 Note that this reset operation is executed by activating the WDT circuit 58, so the entire composite chip 50 including the CPU circuit 51 enters the reset state (FIG. 6(b)). Therefore, in order to avoid resetting the CPU circuit 51, the performance control CPU 63 outputs a predetermined keyword string (for example, three pieces of 1-byte data) to the pattern check circuit CHK, and outputs a reset signal RST to the VDP circuit 52. is also suitable (see ST100 in FIG. 34). In this case as well, after confirming that the reset operation of the VDP circuit 52 has completed normally (ST101), the process proceeds to steps ST4 and ST13.

何れにしても、この異常時には、音声回路SNDも合わせ異常リセットされるので、画像演出、音声演出、ランプ演出、モータ演出は、全て初期状態に戻ることになる。但し、これらのリセット動作は、主制御部21や払出制御部25には、何の影響も与えなので、大当り状態の消滅や、賞球の消滅のような事態が発生するおそれはない。 In any case, when this abnormality occurs, the audio circuit SND is also abnormally reset, so that the image effect, sound effect, lamp effect, and motor effect all return to their initial states. However, these reset operations have no effect on the main control section 21 or the payout control section 25, so there is no possibility that situations such as the disappearance of the jackpot state or the disappearance of prize balls will occur.

以上、異常事態について説明したが、実際には、軽微な場合も含め上記した異常が発生することは殆どなく、ステップST5の処理の後、所定の表示レジスタRGij(DSPACTL /DSPBCTL)への設定に基づき、表示回路74Aと表示回路74Bが読み出すべき画像データを記憶するフレームバッファFBa,FBbの「表示領域」をトグル的に切り換える(ST6)。先に説明した通り、「表示領域(0)」と「表示領域(1)」は、予め初期処理において定義されているので(ST3)、ステップST6の処理では、フレームバッファFBa,FBbについて、今回の「表示領域」が、表示領域(0)/表示領域(1)の何れであるかを特定する。 Although abnormal situations have been explained above, in reality, the above-mentioned abnormalities almost never occur, even in minor cases, and after the processing in step ST5, the settings in the predetermined display register RGij (DSPACTL /DSPBCTL) Based on the display circuit 74A and the display circuit 74B, the display areas of the frame buffers FBa and FBb storing the image data to be read out are toggled (ST6). As explained earlier, "display area (0)" and "display area (1)" are defined in advance in the initial process (ST3), so in the process of step ST6, frame buffers FBa and FBb are Specify whether the "display area" is display area (0) or display area (1).

このステップST6が実行されることで、表示回路74Aは、インデックス空間254(表示領域(0))と、インデックス空間255(表示領域(1))から、動作周期δ毎に、交互に画像データを読み出して表示装置DS1を駆動することになる。同様に、表示回路74Bは、インデックス空間251(表示領域(0))と、インデックス空間252(表示領域(1))から、動作周期δ毎に、交互に画像データを読み出してサブ表示装置DS2を駆動することになる。なお、表示回路74が実際にREADアクセスするのは、表示領域(0)/表示領域(1)における有効データ領域に限定されるのは先に説明した通りである。 By executing this step ST6, the display circuit 74A alternately displays image data from the index space 254 (display area (0)) and the index space 255 (display area (1)) at every operation cycle δ. The data will be read out and the display device DS1 will be driven. Similarly, the display circuit 74B alternately reads image data from the index space 251 (display area (0)) and the index space 252 (display area (1)) at every operation cycle δ, and displays the sub display device DS2. It will be driven. As described above, the actual READ access of the display circuit 74 is limited to the valid data area in the display area (0)/display area (1).

何れにしても、本実施例では、動作周期毎に「表示領域」が切り替わるので、表示回路74A,74Bは、直前の動作周期で描画回路76が完成させた画像データについて、表示装置DS1,DS2への出力処理を開始することになる。但し、ステップST5の処理は、メイン表示装置DS1の垂直帰線期間(Vブランク)の開始時から開始されるので、実際には、垂直帰線期間が完了してから画像データの出力処理が開始されることになる。図28(a)において、表示回路の欄に示す矢印は、この出力処理の動作周期を示している。 In any case, in this embodiment, since the "display area" is switched every operation cycle, the display circuits 74A, 74B display the image data completed by the drawing circuit 76 in the immediately previous operation cycle on the display devices DS1, DS2. This will start output processing to. However, since the process of step ST5 starts from the start of the vertical blanking period (V blank) of the main display device DS1, the image data output process actually starts after the vertical blanking period is completed. will be done. In FIG. 28(a), the arrow shown in the display circuit column indicates the operation cycle of this output processing.

以上のような意義を有するステップST6の処理が終われば、演出制御CPU63は、続いて、次の動作周期で、表示回路74が表示装置に出力するべき画像データを特定したディスプレイリストDLを完成させる(ST7)。特に限定されないが、この実施例では、RAM59のリストバッファ領域(DLバッファBUF)を確保し、そこにディスプレイリストDLを完成させている(図12参照)。 When the process of step ST6, which has the above significance, is completed, the production control CPU 63 subsequently completes the display list DL specifying the image data that the display circuit 74 should output to the display device in the next operation cycle. (ST7). Although not particularly limited, in this embodiment, a list buffer area (DL buffer BUF) of the RAM 59 is secured, and the display list DL is completed there (see FIG. 12).

ディスプレイリストDLは、一連の指示コマンドを、適宜な順番で列記して構成され、EODL(End Of DL )コマンドを記載して終わるよう構成されている。そして、本実施例では、データ転送回路72、描画回路76、プリローダ73の円滑な動作を実現するべく、EODLコマンドを含む全ての指示コマンドを、コマンド長が32bitの整数N倍(N>0)の指示コマンドだけに限定している。なお、32bitの整数N倍で構成された指示コマンドに、無意ビット(Don't care bit)も含んで良いことは先に説明した通りである。 The display list DL is configured by listing a series of instruction commands in an appropriate order, and is configured to end with an EODL (End Of DL) command. In this embodiment, in order to realize smooth operation of the data transfer circuit 72, the drawing circuit 76, and the preloader 73, all instruction commands including the EODL command are divided into commands whose command length is 32 bits multiplied by an integer N (N>0). It is limited to only instruction commands. Note that, as described above, the instruction command composed of N times an integer of 32 bits may also include a don't care bit.

このように、実施例のディスプレイリストDLは、コマンド長が32bitの整数N倍(N>0)の指示コマンドだけで構成されているので、ディスプレイリストDL全体のデータボリューム値(データ総量)は、必ず、コマンド長の最小単位(32bit=4バイト)の整数倍となる。更に、本実施例では、データ転送回路72の最低データ量Dminを考慮して、ディスプレイリストDLのデータボリューム値を、最低データ量Dminの整数倍(1以上)であって、且つ、指示コマンドの最小単位(4バイト)の整数倍となるよう調整している。例えば、Dmin=256バイトであれば、ディスプレイリストDLのデータボリューム値は、256バイト、512バイト・・・の何れかの値に調整される。 In this way, the display list DL of the embodiment is composed of only instruction commands whose command length is an integer N times (N>0) of 32 bits, so the data volume value (total amount of data) of the entire display list DL is: It is always an integral multiple of the minimum unit of command length (32 bits = 4 bytes). Furthermore, in this embodiment, in consideration of the minimum data amount Dmin of the data transfer circuit 72, the data volume value of the display list DL is set to be an integral multiple (1 or more) of the minimum data amount Dmin, and the value of the instruction command. It is adjusted to be an integral multiple of the minimum unit (4 bytes). For example, if Dmin=256 bytes, the data volume value of the display list DL is adjusted to either 256 bytes, 512 bytes, etc.

ここで、演出内容の複雑さに応じて、適宜に、256バイトか、又は512バイトに調整するのも好適であるが、本実施例では、表示装置が二個であり、サブ表示装置DS2はそれほど複雑な画像演出を実行させないことを考慮して、ディスプレイリストDLのデータボリューム値を、常に、256バイトに調整している。 Here, it is preferable to adjust the value to 256 bytes or 512 bytes depending on the complexity of the presentation content, but in this embodiment, there are two display devices, and the sub display device DS2 is The data volume value of the display list DL is always adjusted to 256 bytes in consideration of not executing very complicated image effects.

もっとも、この手法は、何ら限定されず、表示装置が三個以上になる場合や、サブ表示装置DS2も含め複雑な画像演出を実行する遊技機の場合には、512バイト又は、768バイトに調整される。また、通常の演出時は、ディスプレイリストDLのデータボリューム値を256バイトに調整し、特別な演出を実行する場合に限り、ディスプレイリストDLのデータボリューム値を、512バイト又は、768バイトに調整するのも好適である。 However, this method is not limited in any way, and in the case of three or more display devices, or in the case of a gaming machine that executes complex image production including the sub-display device DS2, the method is adjusted to 512 bytes or 768 bytes. be done. Also, during normal performances, the data volume value of the display list DL is adjusted to 256 bytes, and only when performing special performances, the data volume value of the display list DL is adjusted to 512 bytes or 768 bytes. is also suitable.

但し、本実施例の場合には、ディスプレイリストDLのデータボリューム値は、各動作周期δにおいて、予め規定された所定バイト長(256バイト)に調整される。調整手法としては、32bit長のEODLコマンドの後に、不足領域を補填する32bit長のNOP (No Operation)コマンドを埋める簡易手法(A)か、或いは、不足領域を32bit長のNOP コマンドで埋めた後、最後に32bit長のEODLコマンドを記載する標準手法(B)が考えられる。なお、ディスプレイリストDLのデータボリューム値(データ総量)を全く調整することなくEODLコマンドで終結させ、データ転送回路72の動作時に、ダミーデータを付加的に転送して、最低データ量Dminの整数倍の転送量を確保する無調整手法(C)も考えられる。 However, in the case of this embodiment, the data volume value of the display list DL is adjusted to a predetermined byte length (256 bytes) in each operation cycle δ. The adjustment method is the simple method (A) of filling in a 32-bit long NOP (No Operation) command to fill in the missing area after a 32-bit long EODL command, or after filling in the missing area with a 32-bit long NOP command. A standard method (B) is considered in which a 32-bit long EODL command is written at the end. Note that the data volume value (total amount of data) of the display list DL is terminated with the EODL command without any adjustment, and when the data transfer circuit 72 operates, dummy data is additionally transferred and the data volume value (total amount of data) of the display list DL is terminated by an integral multiple of the minimum data amount Dmin. A non-adjustment method (C) is also conceivable to ensure the transfer amount of .

ここで、標準手法(B)を採る場合には、最初、コマンドカウンタCNTを規定値(256バイトに対応する64-1)に初期設定し、DLバッファ領域BUFに、有意な指示コマンドを書き込むごとに、コマンドカウンタCNTを適宜に減算し、一連の有意な指示コマンドの書き込みが終われば、コマンドカウンタCNTがゼロになるまで、NOP コマンドを記載し、最後にEODLコマンドを記載する手法が考えられる。本実施例の場合、指示コマンドは、そのコマンド長が32bitの整数N倍(N>0)のものに限定されているので、上記の処理は容易であり、コマンドカウンタCNTの減算処理は、整数Nに対応した減算処理となる。 Here, when adopting the standard method (B), the command counter CNT is first initialized to the specified value (64-1 corresponding to 256 bytes), and each time a significant instruction command is written to the DL buffer area BUF. Next, a method can be considered in which the command counter CNT is appropriately decremented, and once a series of significant instruction commands have been written, NOP commands are written until the command counter CNT reaches zero, and finally the EODL command is written. In the case of this embodiment, the instruction command is limited to those whose command length is an integer N times (N>0) of 32 bits, so the above process is easy, and the subtraction process of the command counter CNT is performed by an integer The subtraction process corresponds to N.

一方、簡易手法(A)を採る場合には、ディスプレイリストDLの作成時、最初に、リストバッファ領域(DLバッファBUF)の全てをNOP コマンドで埋めれば足りるので、一見、標準手法(B)より優れているように思われる。また、簡易性の観点では、無調整手法(C)も優れているように思われる。しかし、本実施例では、基本的に標準手法(B)を採っており、ディスプレイリストDLの先頭からEODLコマンドまでの実データ量、つまり、EODLコマンドまでのデータ量が、常に、データ転送回路72の最低データ量Dminの整数倍となるよう調整している。 On the other hand, when adopting the simple method (A), it is sufficient to first fill the entire list buffer area (DL buffer BUF) with NOP commands when creating the display list DL. Seems to be excellent. In addition, from the viewpoint of simplicity, the no-adjustment method (C) also seems to be superior. However, in this embodiment, the standard method (B) is basically adopted, and the actual amount of data from the beginning of the display list DL to the EODL command, that is, the amount of data up to the EODL command, is always the same as that of the data transfer circuit 72. is adjusted to be an integral multiple of the minimum data amount Dmin.

これは、プリローダ73を活用する実施例を考慮したものであり、もし、簡易手法(A)や無調整手法(C)を採用すると、EODLコマンドまでのディスプレイリストDLの実データ量が、ランダムな値となり、プリローダ73が書き換えた書換えリストDL’のDRAM54への転送時や、DRAM54から描画回路76への書換えリストDL’の転送時に支障が生じるからである。なお、書換えリストDL’のDRAM54への転送時には、データ転送回路72のChA制御回路72aが機能し、書換えリストDL’の描画回路76への転送時には、ChB制御回路72bが機能するが(図26参照)、何れの場合もEODLコマンドまでの書換えリストDL’しか転送しないことになる。 This takes into consideration the example that utilizes the preloader 73, and if the simple method (A) or non-adjustment method (C) is adopted, the actual data amount of the display list DL up to the EODL command will be random. This is because a problem occurs when the rewrite list DL' rewritten by the preloader 73 is transferred to the DRAM 54 or when the rewrite list DL' is transferred from the DRAM 54 to the drawing circuit 76. Note that when transferring the rewrite list DL' to the DRAM 54, the ChA control circuit 72a of the data transfer circuit 72 functions, and when transferring the rewrite list DL' to the drawing circuit 76, the ChB control circuit 72b functions (see FIG. ), in either case, only the rewrite list DL' up to the EODL command is transferred.

以上、ディスプレイリストDLのデータボリューム値を調整する標準手法(B)の利点を説明したが、プリローダ73を使用しない実施例では、発行されたディスプレイリストDLは、描画回路76によって処理されるだけであるので、簡易手法(A)や無調整手法(C)の使用が何ら禁止されない。 The advantages of the standard method (B) for adjusting the data volume value of the display list DL have been explained above, but in an embodiment that does not use the preloader 73, the issued display list DL is only processed by the drawing circuit 76. Therefore, the use of the simple method (A) and the no-adjustment method (C) is not prohibited in any way.

但し、以下の説明では、プリローダ73の使用の有無に拘らず、原則として標準手法(B)を採ることを前提に、図21に基づいて、ディスプレイリストDLの詳細について説明する。 However, in the following explanation, the details of the display list DL will be explained based on FIG. 21 on the premise that the standard method (B) is adopted in principle regardless of whether or not the preloader 73 is used.

特に限定されないが、本実施例では、ディスプレイリストDLに、先ず、メイン表示装置DS1に関する指示コマンド列(L11~L16)を記載し、その後、サブ表示装置DS2に関する指示コマンド列(L17~L20)を記載するようにしている。また、標準手法(B)を採用して、ディスプレイリストDLのデータボリューム値を固定長(256バイト)に調整している。なお、図21は、事実上、演出制御CPU63が、RAM59のリストバッファ領域に、指示コマンドを書き込む手順や、ディスプレイリストDLに基づく描画回路76の動作を示したものともなっている。 Although not particularly limited, in this embodiment, first, the instruction command string (L11 to L16) regarding the main display device DS1 is written in the display list DL, and then the instruction command string (L17 to L20) regarding the sub display device DS2 is written. I am trying to write it down. Further, standard method (B) is adopted to adjust the data volume value of the display list DL to a fixed length (256 bytes). Note that FIG. 21 actually shows the procedure in which the production control CPU 63 writes an instruction command into the list buffer area of the RAM 59 and the operation of the drawing circuit 76 based on the display list DL.

図21に示す通り、ディスプレイリストDLの先頭では、環境設定系の指示コマンド(SETDAVR )を記載して、表示装置DS1のフレームバッファFBaについて、インデックス空間IDX上の左上基点アドレス(X,Y)を規定する(L11)。図11(a)に関して説明した通り、本実施例では、表示装置DS1用として、任意領域(c) に、一対のフレームバッファFBaが確保されている。そして、通常は、表示回路74にとっての有効データ領域に対応して、基点アドレス(X,Y)=(0,0)とすることで、フレームバッファFBaの先頭位置から描画回路76に活用される。 As shown in FIG. 21, at the beginning of the display list DL, an environment setting instruction command (SETDAVR) is written to set the upper left base point address (X, Y) on the index space IDX for the frame buffer FBa of the display device DS1. (L11). As explained with reference to FIG. 11(a), in this embodiment, a pair of frame buffers FBa are secured in the arbitrary area (c) for the display device DS1. Then, normally, by setting the base point address (X, Y) = (0, 0) corresponding to the effective data area for the display circuit 74, the drawing circuit 76 uses the starting position of the frame buffer FBa. .

図11(c)では、その下方左側の実描画領域にL11と付しているが、これは、指示コマンドL11によって、フレームバッファFBa上の実描画領域が、フレームバッファFBaの基点アドレス(0,0)位置から始まると特定されたことを意味している。ただし、実描画領域の縦横寸法や、その実描画領域を具体的に特定するインデックス番号は、未だ未確定であり、後述する指示コマンド(SETINDEX)L13によって確定する。なお、指示コマンドL11ではZバッファの使用の有無も指定される。 In FIG. 11(c), the actual drawing area on the lower left side is labeled L11, which means that the actual drawing area on the frame buffer FBa is moved to the base point address (0, 0, 0) means that it is specified as starting from position. However, the vertical and horizontal dimensions of the actual drawing area and the index number specifically specifying the actual drawing area are still undetermined, and are determined by an instruction command (SETINDEX) L13, which will be described later. Note that the instruction command L11 also specifies whether or not to use the Z buffer.

次に、環境設定系の指示コマンド(SETDAVF )によって、仮想描画空間上に、左上基点座標(Xs,Ys)と、右下対角点座標(Xe,Ye)を設定して、W×H寸法の描画領域を定義する(L12)。ここで、仮想描画空間とは、描画用の指示コマンド(SPRITEコマンドなど)によって描画可能な、X方向±8192、Y方向±8192の仮想的な二次元空間である(図11(c)参照)。 Next, use the environment setting instruction command (SETDAVF) to set the upper left base point coordinates (Xs, Ys) and lower right diagonal point coordinates (Xe, Ye) on the virtual drawing space, and set the W x H dimension. A drawing area is defined (L12). Here, the virtual drawing space is a virtual two-dimensional space of ±8192 in the X direction and ±8192 in the Y direction, which can be drawn using a drawing instruction command (SPRITE command, etc.) (see FIG. 11(c)). .

この指示コマンドL12(SETDAVF )によって、仮想描画空間は、描画内容が実際に表示装置DS1に反映される描画領域と、その他の非描画領域に区分される。また、指示コマンドL12(SETDAVF )は、指示コマンドL11で開始位置(基点アドレス)が規定された実描画領域と、仮想描画空間上の描画領域とを対応付けることになる。 This instruction command L12 (SETDAVF) divides the virtual drawing space into a drawing area where the drawing content is actually reflected on the display device DS1 and other non-drawing areas. Further, the instruction command L12 (SETDAVF) associates the actual drawing area whose start position (base point address) is defined by the instruction command L11 with the drawing area in the virtual drawing space.

この点を言い換えると、指示コマンドL12によって、(インデックス空間は未定の)フレームバッファFBaには、仮想描画空間上の描画領域に対応する、基点アドレスから始まるW×Hの実描画領域が定義されることになる。したがって、指示コマンドL12で指定する描画領域は、フレームバッファFBaの水平サイズと同一か、それ以下とする必要がある。通常、描画領域や実描画領域は、表示回路74にとっての有効データ領域(図20(e))と同寸法となるよう定義される。 In other words, the instruction command L12 defines a W×H actual drawing area starting from the base address, which corresponds to the drawing area in the virtual drawing space, in the frame buffer FBa (the index space is undetermined). It turns out. Therefore, the drawing area specified by the instruction command L12 needs to be equal to or smaller than the horizontal size of the frame buffer FBa. Usually, the drawing area and the actual drawing area are defined to have the same dimensions as the effective data area for the display circuit 74 (FIG. 20(e)).

そして、描画回路76が指示コマンドL11,L12を実行した後は、仮想描画空間に描画された描画内容のうち、描画領域に含まれるものだけが、フレームバッファFBaの実描画領域に反映されることになる。したがって、描画領域からはみ出した部分や、図11(c)において作業領域と記載された部分の描画内容は、そのままでは、フレームバッファに反映されることはない。なお、仮想描画空間に作業領域を確保する場合には、仮想描画空間の非描画領域が使用される。 After the drawing circuit 76 executes the instruction commands L11 and L12, of the drawing contents drawn in the virtual drawing space, only those included in the drawing area are reflected in the actual drawing area of the frame buffer FBa. become. Therefore, the drawing contents of the portion that protrudes from the drawing area or the portion described as a work area in FIG. 11(c) are not reflected in the frame buffer as they are. Note that when securing a work area in the virtual drawing space, a non-drawing area of the virtual drawing space is used.

次に、今回の動作周期において、描画回路76が、これから完成させるディスプレイリストDLに基づいて描画する描画内容を何処に描画すべきかを規定する(L13)。具体的には、ダブルバッファ構成の表示装置DS1のフレームバッファFBaについて、今回のディスプレイリストDLに基づく描画内容の「書込み領域」となるインデックス空間IDXが特定される(L13)。具体的には、テクスチャ設定系のコマンドであるSETINDEXコマンドによって、(1) フレームバッファFBaは、任意領域に確保されていること、及び、(2) 「書込み領域」となるインデックス空間IDXの任意領域上のインデックス番号Nが特定される。 Next, in the current operation cycle, the drawing circuit 76 specifies where the drawing content to be drawn should be drawn based on the display list DL to be completed from now on (L13). Specifically, for the frame buffer FBa of the display device DS1 with the double buffer configuration, an index space IDX that is a "write area" for the drawing content based on the current display list DL is specified (L13). Specifically, the SETINDEX command, which is a texture setting command, confirms that (1) the frame buffer FBa is secured in an arbitrary area, and (2) the arbitrary area of the index space IDX N , which is the "write area" An index number N on the area is specified.

この指示コマンドL13によって、例えば、N=255と特定された場合には、仮想描画空間上に定義された描画領域に対応する実描画領域は、具体的には、ダブルバッファ構造のフレームバッファFBaにおけるインデックス空間IDX255であると定義されたことになる。 For example, when N=255 is specified by this instruction command L13, the actual drawing area corresponding to the drawing area defined on the virtual drawing space is specified in the frame buffer FBa with the double buffer structure. This means that the index space IDX 255 is defined.

本実施例の場合、フレームバッファFBaのインデックス番号は、255又は254であり(図11(a))、トグル的に切り換えた何れかが指定される(L13)。なお、このインデックス番号は、メイン制御処理のステップST6で指定された表示領域(0)/(1)ではない方のインデック番号である。例えば、ステップST6の処理において、表示回路74に対して、表示領域(0)が指定されている場合には、表示領域(1)が、描画回路76にとっての「書込み領域」となる。 In the case of this embodiment, the index number of the frame buffer FBa is 255 or 254 (FIG. 11(a)), and either one is specified by toggling (L13). Note that this index number is the index number of the display area other than (0)/(1) specified in step ST6 of the main control process. For example, in the process of step ST6, if the display area (0) is specified for the display circuit 74, the display area (1) becomes the "write area" for the drawing circuit 76.

以上の通り、指示コマンドL11と指示コマンドL12とで、実描画領域(W×Hの論理空間)と描画領域(W×Hの仮想空間)との対応関係が、一般的に定義された後、インデックス空間IDXを具体的に特定する指示コマンドL13(SETINDEX)によって、W×Hの仮想空間が、特定のインデックス空間IDXにおけるW×Hの論理空間であると対応付けられたことになる。 As described above, after the correspondence between the actual drawing area (W×H logical space) and the drawing area (W×H virtual space) is generally defined by the instruction command L11 and the instruction command L12, By the instruction command L13 (SETINDEX) that specifically specifies the index space IDX, the W×H virtual space is associated with the W×H logical space in the specific index space IDX.

この点を言い換えると、今後、一連の指示コマンドに基づいて、W×Hの仮想空間に仮想的に描画される内容は、仮想空間と内蔵VRAM71の実アドレスとの対応関係を規定するVDP内部の変換テーブルに基づいて、内蔵VRAM71(フレームバッファ)の画像データとなる。 In other words, the content that will be virtually drawn in the W×H virtual space based on a series of instruction commands will be determined by the content inside the VDP that defines the correspondence between the virtual space and the real address of the built-in VRAM 71. Based on the conversion table, the image data is stored in the built-in VRAM 71 (frame buffer).

続いて、「書込み領域」として、特定されたインデックス空間IDXを、例えば、黒色で塗りつぶすフレームバッファ・クリア処理を実行する指示コマンドが記載される(L14,L15)。これは、二動作期間前にフレームバッファFBaに書き込まれた画像データの消去処理に他ならない。 Subsequently, an instruction command for executing a frame buffer clearing process of filling the specified index space IDX with black, for example, is written as a "write area" (L14, L15). This is nothing but erasure processing of the image data written to the frame buffer FBa two operation periods ago.

具体的には、環境設定コマンドの一種であるSETFCOLOR コマンドによって、例えば黒色を選択し、プリミティブ描画系コマンドであるRECTANGLE コマンドによって矩形領域を塗り潰すべく規定する。なお、RECTANGLE コマンドでは、仮想描画空間に設定された描画領域(フレームバッファFBaに対応する仮想空間)について、その左上端点と、右下端点のXY座標が指定される(図11(c)参照)。 Specifically, the SETFCOLOR command, which is a type of environment setting command, is used to select, for example, black color, and the RECTANGLE command, which is a primitive drawing command, is used to specify that a rectangular area should be filled. Note that the RECTANGLE command specifies the XY coordinates of the upper left end point and lower right end point of the drawing area set in the virtual drawing space (virtual space corresponding to frame buffer FBa) (see Figure 11(c)). .

以上の処理によって、描画準備処理が完了するので、次に、静止画や動画一フレームなど、適宜なテクスチャを、仮想描画空間に描画するための指示コマンドを列記する。典型的には、先ず、テクスチャの展開先となるインデックス空間IDXを、テクスチャ設定系のSETINDEXコマンドで特定した上で、テクスチャロード系の指示コマンドであるTXLOADコマンドを記載して、CGROM55から読み出す所定のテクスチャを、所定のインデックス空間IDXに展開するようディスプレイリストDLに記載する。 The drawing preparation process is completed by the above processing, so next, instruction commands for drawing an appropriate texture, such as a still image or one frame of a moving image, in the virtual drawing space will be listed. Typically, first, the index space IDX to which the texture is to be expanded is specified using a texture setting SETINDEX command, and then a TXLOAD command, which is a texture loading instruction command, is written to select a predetermined value to be read from the CGROM 55. The texture is written in the display list DL so as to be developed in a predetermined index space IDX.

先に説明した通り、本実施例では、背景動画が、IPストリーム動画で構成されている。そこで、例えば、背景動画について、これを展開すべきインデックス空間IDXを、テクスチャ設定系のSETINDEXコマンドで、ページ領域(b) のインデックス空間IDXと特定した上で、テクスチャロード系のTXLOADコマンドを記載する。なお、TXLOADコマンドでは、今回LOADすべき動画フレームについて、CGROM55の先頭アドレス(テクスチャのSourceアドレス)と、展開後のデータサイズ(水平×垂直)を特定する必要がある。 As explained above, in this embodiment, the background video is composed of an IP stream video. So, for example, for a background video, specify the index space IDX in which it should be developed as index space IDX 0 of page area (b) using the texture setting SETINDEX command, and then write the texture loading TXLOAD command. do. Note that in the TXLOAD command, it is necessary to specify the start address of the CGROM 55 (texture source address) and the data size (horizontal x vertical) after expansion for the video frame to be loaded this time.

VDP回路52において、上記のTXLOADコマンドが実行されると、背景動画の一動画フレーム(テクスチャ)は、先ず、AAC領域(a) に取得され、その後、自動的に起動するGDEC75によって、ページ領域(b) のインデックス空間IDXに展開される。次に、この一動画フレームを仮想描画空間に描画することになる。この場合に、SETINDEXコマンド(テクスチャ設定系)によって、「ページ領域(b) のインデックス空間IDXが、その後の処理対象のテクスチャである」と設定しても良いが、TXLOADコマンドに連続して処理する場合には、このSETINDEXコマンドの記載を省略することができる。 When the above TXLOAD command is executed in the VDP circuit 52, one video frame (texture) of the background video is first acquired into the AAC area (a), and then automatically activated by the GDEC 75, the page area ( b) is expanded to the index space IDX 0 . Next, this one video frame will be drawn in the virtual drawing space. In this case, you can use the SETINDEX command (texture setting system) to set "index space IDX 0 of page area (b) is the texture to be processed later", but it is also possible to set the texture to be processed after the TXLOAD command. In this case, the description of this SETINDEX command can be omitted.

何れにしても、「ページ領域(b) のインデックス空間IDXが、その後の処理対象のテクスチャである」と特定されている状態で、次に、αブレンド処理のためのパラメータを設定するなど、適宜な描画間演算系の指示コマンドを記載する。なお、αブレンド処理とは、既に描画領域(フレームバッファFBa)に記載されている画像と、これから上書きする画像との透明化/半透明化処理に関するものある。したがって、背景動画の動画フレームのように、第一枚目の描画動作では、描画間演算系の指示コマンドの使用は不要である。 In any case, in a state where it is specified that "index space IDX 0 of page area (b) is the texture to be processed later," next, set parameters for α blend processing, etc. Describe appropriate instruction commands for the inter-rendering calculation system. Note that the α blend process is related to the process of making an image already written in the drawing area (frame buffer FBa) transparent/semi-transparent with an image that will be overwritten from now on. Therefore, in the drawing operation of the first image, as in the moving image frame of the background moving image, it is not necessary to use the instruction command of the inter-drawing calculation system.

続いて、プリミティブ描画系の指示コマンドであるSPRITEコマンドによって、「ページ領域(b) のインデックス空間IDXのテクスチャ(背景動画の一動画フレーム)」を、仮想描画空間の適所(矩形のDestination 領域)に描画するべくSPRITEコマンドを記載する。なお、SPRITEコマンドには、仮想描画空間のDestination 領域について、その左上端点と、右下端点を特定する必要がある。 Next, use the SPRITE command, which is a primitive drawing instruction command, to move the "texture in index space IDX 0 of page area (b) (one video frame of the background video)" to the appropriate location in the virtual drawing space (rectangular Destination area). Write the SPRITE command to draw. Note that the SPRITE command requires specifying the upper left end point and lower right end point of the Destination area of the virtual drawing space.

このDestination 領域は、予め、指示コマンドL11,L12によって、実描画領域(FBa)に対応付けられた描画領域(仮想描画空間上に定義された仮想空間)の全体又はその一部である。但し、背景動画は、通常、表示画面全体に描画するので、このような場合のDestination 領域は、描画領域の全体又はそれ以上となる。なお、Destination 領域が、描画領域の全体より大きい場合とは、例えば、背景動画がズームアップされる場合である。 This Destination area is the whole or part of the drawing area (virtual space defined on the virtual drawing space) that is previously associated with the actual drawing area (FBa) by the instruction commands L11 and L12. However, since a background moving image is normally drawn on the entire display screen, the Destination area in such a case is the entire drawing area or more. Note that the case where the Destination area is larger than the entire drawing area is, for example, when the background video is zoomed in.

以上の処理によって、背景動画の動画フレームの描画が終わったので、続いて、テクスチャロード系、テクスチャ設定系、描画間演算系、プリミティブ描画系コマンドなどの指示コマンドを適宜な順番で列記して、背景動画に重ねて、各種のテクスチャを描画するべくディスプレイリストDLを構成することになる。先に説明したように、変動演出時では、多数の動画が必要となるので、その場合には、内蔵VRAM71のページ領域(b) について、インデックス空間IDXを増加するべく、インデックステーブル制御系の指示コマンド(NEWPIX)を記載することになる。 With the above processing, the drawing of the video frames of the background video has been completed.Next, list the instruction commands such as texture loading type, texture setting type, inter-rendering calculation type, and primitive drawing type commands in the appropriate order. A display list DL is configured to draw various textures over the background video. As explained earlier, a large number of moving images are required during variable production. The command (NEWPIX) will be described.

例えば、二つ目のIPストリーム動画に関し、NEWPIXコマンドによって、ページ領域(b) に、追加のインデックス空間IDXを確保した後、このインデックス空間IDXを特定して(SETINDEX)、二つ目の動画の一フレームの展開を指示し(TXLOAD)、展開したテクスチャを描画領域の適所に配置する(SPRITE)。通常、この場合のDestination 領域は、描画領域の一部となる。 For example, regarding the second IP stream video, after securing additional index space IDX 1 in page area (b) using the NEWPIX command, specifying this index space IDX 1 (SETINDEX), and Instructs to expand one frame of the video (TXLOAD) and places the expanded texture at the appropriate location in the drawing area (SPRITE). Normally, the Destination area in this case is part of the drawing area.

以下、同様であり、NEWPIXコマンドによって、次々、インデックス空間IDXを確保した後、適宜なαブレンド処理を実行しつつ、複数のIPストリームを描画領域に描画すれば、描画領域への描画内容は、実描画領域であるフレームバッファFBaに画像データとして順次蓄積されることになる。複数N個のIPストリーム動画が描画されている演出時には、ページ領域(b) において、複数N個のインデックス空間が機能している。 The same goes for the following. After securing the index space IDX k one after another using the NEWPIX command, if multiple IP streams are drawn in the drawing area while executing the appropriate α blending process, the content drawn in the drawing area is , are sequentially accumulated as image data in the frame buffer FBa, which is the actual drawing area. When a plurality of N IP stream videos are rendered, a plurality of N index spaces are functioning in the page area (b).

そして、一連の変動演出が終了したような場合には、ページ領域(b) に確保した多数のインデックス空間IDX~IDXのうち、不要と思われるインデックス空間IDXを開放するべく、DELPIXコマンドによって不要なインデックス空間IDXを削除すれば良い。 Then, when a series of variable effects has been completed, use the DELPIX command to release the index space IDX that is deemed unnecessary among the many index spaces IDX 1 to IDX k secured in the page area (b). All you have to do is delete the unnecessary index space IDX.

なお、静止画やIストリーム動画を描画する場合には、SETINDEXコマンドによって、これらのテクスチャのデコード先が、AAC領域(a) であると指定した上で、TXLOADコマンドを実行させれば、AAC領域(a) に取得されたテクスチャは、その後、自動的に起動するGDEC75によってAC領域(a) に展開される。そして、展開されたテクスチャは、SPRITEコマンドによって、描画領域の適所に描画すれば良い。なお、キャッシュヒット機能を活用するか否かに応じて、第一AAC領域(a1)か、第二AAC領域(a2)が使用される。 Note that when drawing still images or I-stream videos, specify that these textures should be decoded in the AAC area (a) using the SETINDEX command, and then execute the TXLOAD command to decode the AAC area. The texture acquired in (a) is then developed into the AAC area (a) by the automatically activated GDEC 75. Then, the expanded texture can be drawn at the appropriate location in the drawing area using the SPRITE command. Note that the first AAC area (a1) or the second AAC area (a2) is used depending on whether or not to utilize the cache hit function.

ここまでの説明では、各テクスチャは、直接的に、メイン表示装置用DS1の描画領域に描画されるが、必ずしも、このような動作に限定されない。例えば、既に表示装置DS1用に確保されている描画領域に重複しない状態で、適宜な描画領域を設け(図11(c))、この描画領域を内蔵VRAM71の作業領域に対応付ければ、中間的な描画領域を構築して、適宜な演出画像を完成させることができる。ここで、表示装置DS1用の描画領域と重複しない状態とするのは、重複領域については、後の対応付け設定が優先され、その領域への描画内容がフレームバッファFBaに反映されないからである。 In the explanation so far, each texture is directly drawn in the drawing area of the main display device DS1, but the operation is not necessarily limited to this. For example, if an appropriate drawing area is provided without overlapping the drawing area already secured for the display device DS1 (FIG. 11(c)) and this drawing area is associated with the work area of the built-in VRAM 71, an intermediate drawing area can be created. By constructing a drawing area, it is possible to complete an appropriate effect image. Here, the reason why the drawing area for the display device DS1 is not overlapped is that for the overlapping area, the later association setting is given priority, and the drawing content for that area is not reflected in the frame buffer FBa.

図11(c)に示す通り、本実施例の作業領域は、任意領域(c) におけるインデックス空間IDXである。そして、この作業領域を使用する演出タイミングでは、先行して、演出画像用の描画領域(図11(c)参照)を、作業領域(インデックス空間IDXの実描画領域)に対応付けるための指示コマンド列(SETDAVR ,SETDAVF ,SETINDEX)を記載しておく。図11(c)に示す通り、演出画像用の描画領域は、メイン表示装置DS1用の描画領域に含まれない領域に確保される。 As shown in FIG. 11(c), the work area of this embodiment is index space IDX 0 in the arbitrary area (c). Then, at the production timing using this work area, an instruction command is first issued to associate the drawing area for the effect image (see FIG. 11(c)) with the work area (actual drawing area of index space IDX 0 ). Write down the columns (SETDAVR, SETDAVF, SETINDEX). As shown in FIG. 11(c), the rendering area for the effect image is secured in an area that is not included in the rendering area for the main display device DS1.

そして、その後は、フレームバッファFBaに関する指示コマンド列L16と同様の指示コマンドを列記して、インデックス空間IDXに、適宜な演出画像を完成させれば良い。本実施例の場合、演出画像は、静止画で構成されるので、デコードデータは第一AAC領域(a1)に展開されるよう指示コマンド(SETINDEX)が記載され、次に、インデックス空間IDXの描画領域の適所をDestination とするプリミティブ描画系の指示コマンド(SPRITE)が使用されることになる。なお、このような動作は、演出内容に応じて、一回又は複数回繰り返される。 Thereafter, it is sufficient to list instruction commands similar to the instruction command string L16 regarding the frame buffer FBa to complete an appropriate effect image in the index space IDX0 . In the case of this embodiment, since the effect image is composed of a still image, an instruction command (SETINDEX) is written so that the decoded data is developed in the first AAC area (a1), and then in the index space IDX 0. A primitive drawing instruction command (SPRITE) will be used that sets the destination to a suitable location in the drawing area. Note that such an operation is repeated once or multiple times depending on the content of the performance.

そして、演出画像を完成させたインデックス空間IDXをテクスチャと位置付けた後(SETINDEX)、SPRITEコマンドによって、メイン表示装置用DS1の描画領域の適所に、インデックス空間IDXの演出画像(テクスチャ)を描画すれば良い。このような場合、インデックス空間IDXの演出画像を、三角形の描画プリミティブ(primitive )に分解し、適宜な角度に回転させた上で、描画領域に描画することが考えられる。なお、テクスチャの回転角度は、例えば、予告演出の信頼度などに対応付けられる。 Then, after positioning the index space IDX 0 that has completed the effect image as a texture (SETINDEX), the effect image (texture) of the index space IDX 0 is drawn at the appropriate location in the drawing area of the main display device DS1 using the SPRITE command. Just do it. In such a case, it is conceivable to decompose the effect image in the index space IDX 0 into triangular drawing primitives, rotate them at an appropriate angle, and then draw them in the drawing area. Note that the rotation angle of the texture is associated with, for example, the reliability of the preview performance.

以上、メイン表示装置DS1の一フレームを完成させるための指示コマンド列(L11~L16)について説明したが、サブ表示装置DS2の一フレームを完成させるための指示コマンド列(L17~L12)についても、同様である。すなわち、フレームバッファFBbの開始XY座標を特定し(L17)を定義し(通常はX=0,Y=0)、図11(c)に示す仮想描画空間上に、サブ表示装置DS2のための描画領域を定義する(L18)。 The instruction command sequence (L11 to L16) for completing one frame of the main display device DS1 has been described above, but the instruction command sequence (L17 to L12) for completing one frame of the sub display device DS2 has also been described. The same is true. That is, specify the starting XY coordinates of the frame buffer FBb, define (L17) (usually A drawing area is defined (L18).

ところで、本実施例では、メイン表示装置DS1用の画像データの生成を終えた後、サブ表示装置DS2用の生成処理に移行するので、サブ表示装置DS2用の描画領域が、メイン表示装置DS1用の描画領域と重複しても何の問題もなく、描画領域を自由に設定することができる。そのため、ディスプレイリストDLの生成プログラムの開発時、例えば、SPRITEコマンドで、新規に設定された描画領域に適宜なテクスチャを貼り付けるような場合、SPRITEコマンドの動作パラメータ(Destination 領域)の設定その他を、ある程度、定型化することができる。 By the way, in this embodiment, after the generation of image data for the main display device DS1 is completed, the process shifts to generation processing for the sub display device DS2, so that the drawing area for the sub display device DS2 is You can freely set the drawing area without any problem even if it overlaps with the drawing area of . Therefore, when developing a display list DL generation program, for example, when pasting an appropriate texture to a newly set drawing area using the SPRITE command, settings such as the operation parameters (Destination area) of the SPRITE command, etc. It can be standardized to some extent.

このような任意の描画領域の定義が終われば(L18)、次に、ダブルバッファ構成の表示装置DS2のフレームバッファFBbについて、今回のディスプレイリストDLに基づく描画内容の「書込み領域」となるインデックス空間IDXを特定する(L19)。このインデックス空間IDXのインデックス番号は、フレームバッファFBbに関し、メイン制御処理のステップST6で指定された表示領域(0)/(1)に対応しない方のインデック番号である。 When the definition of such an arbitrary drawing area is completed (L18), next, for the frame buffer FBb of the display device DS2 with the double buffer configuration, an index space is created which becomes the "writing area" of the drawing content based on the current display list DL. Specify IDX (L19). The index number of this index space IDX is the index number of the frame buffer FBb that does not correspond to the display area (0)/(1) specified in step ST6 of the main control process.

そして、その後、サブ表示装置DS2についての指示コマンド列L20~L22が、メイン表示装置DS1に関する指示コマンド列L14~L16と同様に列記される。また、インデックス空間IDXに完成させた演出画像を使用することもできる。 Thereafter, the instruction command strings L20 to L22 for the sub display device DS2 are listed in the same manner as the instruction command strings L14 to L16 for the main display device DS1. Furthermore, it is also possible to use the effect image completed in the index space IDX 0 .

以上、ディスプレイリストDLを構成するL11~L22の指示コマンドは、本実施例では、全て、コマンド長が32ビットの整数倍のものに限定されている。そして、先に説明した通り、本実施例のディスプレイリストDLのデータボリューム値(データ総量)を、固定長(256バイト)に調整しており、ダミーコマンドたる必要数のNOP コマンド(L23)を付加した上で、EODLコマンド(L24)で終結させている。すなわち、図21の実施例では、前記した標準手法(B)を採っている。 As described above, in this embodiment, the instruction commands L11 to L22 that make up the display list DL are all limited to those whose command length is an integral multiple of 32 bits. As explained earlier, the data volume value (total amount of data) of the display list DL in this embodiment is adjusted to a fixed length (256 bytes), and the required number of NOP commands (L23) as dummy commands are added. After that, it is terminated with the EODL command (L24). That is, the embodiment shown in FIG. 21 adopts the standard method (B) described above.

但し、標準手法(B)を採る場合でも、全ての動作周期において、ディスプレイリストDLのデータ総量を256バイトと固定化することは必ずしも必須ではない。すなわち、別の実施例では、NOP コマンドを除くディスプレイリストDLのデータ総量が、256バイトを超える場合(例えば、特別な演出期間)には、ディスプレイリストDLのデータ総量は、NOP コマンドを付加することで、512バイト又はそれ以上のN×256バイトに調整される。なお、標準手法(B)を採る場合、N×256バイトの最後はEODLコマンドで終端されることは先に説明した通りである。 However, even when using the standard method (B), it is not always essential to fix the total amount of data in the display list DL to 256 bytes in all operation cycles. That is, in another embodiment, if the total amount of data in the display list DL excluding the NOP command exceeds 256 bytes (for example, during a special performance period), the total amount of data in the display list DL may be increased by adding the NOP command. and adjusted to 512 bytes or more N×256 bytes. As described above, when standard method (B) is adopted, the last of N×256 bytes is terminated with the EODL command.

以上、ディスプレイリストDLの構成について詳細に説明したが、演出制御CPU63は、完成させた固定バイト長のディスプレイリストDLをVDP回路に発行することになる(ST7~ST8)。図22は、演出制御CPU63が、転送回路72の転送ポートレジスタTR_PORT を直接WRITE アクセスして、描画回路76にディスプレイリストDLを発行するDL発行処理(図20のST8)を説明するフローチャートである。なお、転送ポートレジスタTR_PORT は、データ転送回路72の動作内容を規定するデータ転送レジスタRGijの一種である。 The configuration of the display list DL has been described in detail above, and the production control CPU 63 issues the completed fixed byte length display list DL to the VDP circuit (ST7 to ST8). FIG. 22 is a flowchart illustrating a DL issuing process (ST8 in FIG. 20) in which the production control CPU 63 directly accesses the transfer port register TR_PORT of the transfer circuit 72 by WRITE and issues the display list DL to the drawing circuit 76. Note that the transfer port register TR_PORT is a type of data transfer register RGij that defines the operation contents of the data transfer circuit 72.

DL発行処理を実現するには、先ず、データ転送回路72の動作内容を規定する複数のデータ転送レジスタRGijに、必要な設定値を設定する必要がある。具体的には、データ転送回路72の転送動作態様と、データ転送回路72内部の伝送経由と、を所定のデータ転送レジスタRGijに特定する。設定内容は、特に限定されないが、ここでは、CPUIF部56からChB制御回路72bを経由すること、及び、CPUバス制御部72dに関し、そのFIFOバッファの残量をチェックしながらデータ転送動作を実行すると設定する(ST20)。なお、以下の説明では、ChB制御回路72bを、便宜上、「転送回路ChB」と略すことがある。 In order to implement the DL issuing process, it is first necessary to set necessary setting values in a plurality of data transfer registers RGij that define the operation contents of the data transfer circuit 72. Specifically, the transfer operation mode of the data transfer circuit 72 and the transmission route inside the data transfer circuit 72 are specified to a predetermined data transfer register RGij. Although the setting contents are not particularly limited, here, the data transfer operation is executed while checking the remaining capacity of the FIFO buffer regarding the CPU bus control section 72d and the transfer from the CPUIF section 56 via the ChB control circuit 72b. Set (ST20). Note that in the following description, the ChB control circuit 72b may be abbreviated as "transfer circuit ChB" for convenience.

次に、転送総サイズを、所定のデータ転送レジスタRGijに設定する。先に説明した通り、本実施例では、ディスプレイリストDLのデータ総量を256バイトの整数倍に調整しているので、その値を設定する。なお、データ総量=256×Nは、データ転送回路72の最低データ量Dminの整数N倍にもなっている。通常、倍数Nは、1又は2であるが、以下の説明では、N=1として説明することにする。 Next, the total transfer size is set in a predetermined data transfer register RGij. As explained above, in this embodiment, the total amount of data in the display list DL is adjusted to an integral multiple of 256 bytes, so that value is set. Note that the total amount of data=256×N is also an integral number N times the minimum data amount Dmin of the data transfer circuit 72. Usually, the multiple N is 1 or 2, but in the following explanation, it will be assumed that N=1.

ここで、転送ポートレジスタTR_PORT (以下、転送ポートと略すことがある)は、32bit長のレジスタであるので、演出制御CPU63は、32bit毎に、転送ポートTR_PORT に対して、レジスタWRITE 動作を実行することになる。そこで、レジスタWRITE 回数を管理する管理カウンタCNの値を64の初期設定する(ST21)。なお、無調整手法(C)を採る場合は、このタイミングで、最低データ量Dminの整数倍のデータ転送量を決定して、管理カウンタCNを設定することになる。 Here, since the transfer port register TR_PORT (hereinafter sometimes abbreviated as transfer port) is a 32-bit register, the production control CPU 63 executes a register WRITE operation for the transfer port TR_PORT every 32 bits. It turns out. Therefore, the value of the management counter CN for managing the number of register WRITEs is initialized to 64 (ST21). Note that when adopting the non-adjustment method (C), at this timing, a data transfer amount that is an integral multiple of the minimum data amount Dmin is determined and the management counter CN is set.

以上の処理で初期設定が完了するので、次に、転送回路ChBを経由するデータ転送動作を開始状態に設定すると共に(ST22)、描画回路76の動作を規定する所定の描画レジスタRGijへの設定値に基づいて、描画動作を開始させる(ST23)。この結果、その後、演出制御CPU63が、転送ポートTR_PORT にレジスタWRITE 動作する指示コマンド列について、描画回路76(ディスプレイリストアナライザ)による迅速かつ円滑なAnalyze 処理が担保される。 Since the initial settings are completed through the above processing, next, the data transfer operation via the transfer circuit ChB is set to the start state (ST22), and the settings are made to the predetermined drawing register RGij that defines the operation of the drawing circuit 76. Based on the value, a drawing operation is started (ST23). As a result, the rendering circuit 76 (display list analyzer) can quickly and smoothly analyze the instruction command string for which the performance control CPU 63 performs a register WRITE operation on the transfer port TR_PORT.

なお、迅速かつ円滑なAnalyze 処理には、ディスプレイリストDLに列記する指示コマンドが、コマンド長32bit整数倍の指示コマンドに限定されている点も有効に寄与する。図28(a)におけるタイミングt1,t2,t3,t4は、ステップST23の動作タイミングを示している。なお、ディスプレイリストDLの発行処理(ST8)は、素早く終わるので、図28~図29では発行処理の要する時間幅を記載していない。 Note that the fact that the instruction commands listed in the display list DL are limited to instruction commands whose command length is an integral multiple of 32 bits also contributes effectively to quick and smooth Analyze processing. Timings t1, t2, t3, and t4 in FIG. 28(a) indicate the operation timings of step ST23. Note that since the display list DL issuing process (ST8) ends quickly, the time span required for the issuing process is not shown in FIGS. 28 to 29.

続いて、ステップST22の設定が機能したか否かを確認する(ST24)。これは、データ転送回路72の各部の初期設定は、演出制御CPU63によるレジスタWRITE 動作(設定動作)より処理時間がかかるので、不完全な状態のデータ転送回路72に対して、その後の指示を与えないためである。そして、万一、所定時間、待機しても動作開始状態にならない場合には、重大異常フラグABNをセットしてDL発行処理を終える(ST25)。その結果、その後、WDT回路58が機能して、複合チップ50は異常リセットされる(ST10)。 Subsequently, it is confirmed whether the settings in step ST22 worked (ST24). This is because the initial setting of each part of the data transfer circuit 72 takes more processing time than the register WRITE operation (setting operation) by the production control CPU 63, so subsequent instructions are not given to the data transfer circuit 72 in an incomplete state. This is because there is no If the operation does not start even after waiting for a predetermined period of time, the serious abnormality flag ABN is set and the DL issuing process ends (ST25). As a result, the WDT circuit 58 then functions and the composite chip 50 is abnormally reset (ST10).

なお、演出制御CPU63は、CPU回路51のリセットを回避するべく、所定のキーワード列をパターンチェック回路CHKに出力して、リセット信号RSTに基づいてVDP回路52だけを異常リセットしても良いのは前述した通りである。 In addition, in order to avoid resetting the CPU circuit 51, the production control CPU 63 may output a predetermined keyword string to the pattern check circuit CHK and reset only the VDP circuit 52 based on the reset signal RST. As mentioned above.

但し、通常は、ステップST22の設定は、迅速に完了するので、続いて、CPUバス制御部72dのFIFOバッファ(32bit×130段)について、FIFOバッファが満杯でないことを確認した上で(ST26)、ディスプレイリストDLを構成する先頭行から順番に、一行ごとに転送ポートTR_PORT に指示コマンドを書込む(ST28)。 However, normally, the setting in step ST22 is completed quickly, so next, after confirming that the FIFO buffer (32 bits x 130 stages) of the CPU bus control unit 72d is not full (ST26) , writes instruction commands to the transfer port TR_PORT line by line in order from the first line configuring the display list DL (ST28).

そして、管理カウンタCNをデクリメントしつつ(ST29)、管理カウンタCNがゼロになるまで、ステップST26~ST29の処理を繰り返す(ST30)。この実施例の場合、データ転送回路72には、最低データ量Dminが規定されているので、FIFOバッファに最低データ量Dminが蓄積されたタイミングで、データ転送動作が実行されることになり、間欠的な転送動作となる。 Then, while decrementing the management counter CN (ST29), the processes of steps ST26 to ST29 are repeated until the management counter CN becomes zero (ST30). In the case of this embodiment, since the minimum data amount Dmin is defined in the data transfer circuit 72, the data transfer operation is executed at the timing when the minimum data amount Dmin is accumulated in the FIFO buffer, and the data transfer operation is performed intermittently. This is a typical transfer operation.

何れにしても、本実施例では、迅速にDL発行処理(ST28)が完了するが、万一、ノイズなどの影響でVDPレジスタRGijへの設定内容が矛盾したような場合には、ステップST26の判定において、所定時間待機してもFIFOバッファFullの状態が解消されない場合もあり得る。そして、そのような場合には、所定のVDPレジスタRGijに初期化データをセットして、描画回路76とデータ転送回路72を初期化した上で、重大異常フラグABNをセットしてDL発行処理を終える(ST27)。 In any case, in this embodiment, the DL issuing process (ST28) is quickly completed, but in the unlikely event that the settings in the VDP register RGij become inconsistent due to the influence of noise, etc. In the determination, the FIFO buffer full state may not be resolved even after waiting for a predetermined period of time. In such a case, initialization data is set in a predetermined VDP register RGij to initialize the drawing circuit 76 and data transfer circuit 72, and then the serious abnormality flag ABN is set to start the DL issuing process. Finish (ST27).

ところで、このタイミングでは、データ転送回路72や、描画回路76は、既に動作を開始しており、ある程度の処理を終えているので、描画回路76の初期化処理には、描画レジスタRGijの内容を維持した状態で、(1) ディスプレイリストDLによって設定される可能性のある全ての内部パラメータを初期値に設定すること、(2) 全ての内部制御回路を初期状態に設定すること、(3) GDEC75を初期化すること、(4) AAC領域のキャッシュ状態を初期化することが含まれている。同様に、データ転送回路72の初期化処理には、FIFOバッファのクリアなど、それまでのデータ転送全体の初期化処理が含まれている。この結果、データ転送回路72の動作状態を示すステイタス情報が所定値(データ転送全体初期化中を示す値)に変化する。 By the way, at this timing, the data transfer circuit 72 and the drawing circuit 76 have already started operating and have completed some processing, so the contents of the drawing register RGij are used for the initialization process of the drawing circuit 76. In the maintained state, (1) all internal parameters that may be set by the display list DL are set to their initial values, (2) all internal control circuits are set to their initial states, (3) This includes initializing the GDEC 75 and (4) initializing the cache state of the AAC area. Similarly, the initialization processing of the data transfer circuit 72 includes initialization processing of the entire data transfer up to that point, such as clearing the FIFO buffer. As a result, the status information indicating the operating state of the data transfer circuit 72 changes to a predetermined value (a value indicating that the entire data transfer is being initialized).

なお、上記したステップST27の初期化処理では、描画レジスタRGijの内容を維持したが、所定の描画レジスタについては、その内容を初期化しても良い。初期値にクリアされる所定の描画レジスタには、(a) 描画実行開始を設定する実行制御レジスタ(図22のST23参照)、(b) 描画回路76の実行状況を示すステイタスレジスタ、及び、(c) 現在処理しているディスプレイリストの位置を特定するステイタスレジスタが含まれる。 Note that in the initialization process of step ST27 described above, the contents of the drawing register RGij are maintained, but the contents of a predetermined drawing register may be initialized. The predetermined drawing registers that are cleared to initial values include (a) an execution control register that sets the start of drawing execution (see ST23 in FIG. 22), (b) a status register that indicates the execution status of the drawing circuit 76, and ( c) Contains a status register that identifies the position of the display list currently being processed.

何れにしても、重大異常フラグABNをセットした結果、その後、WDT回路58や演出制御CPU63が機能して、複合チップ50か、又はVDP回路52が異常リセットされるので(ST10a)、描画回路76やデータ転送回路72を初期化する処理は必ずしも必須ではない。一方、描画回路76やデータ転送回路72を初期化する場合には、その結果、異常回復が期待できるので、重大異常フラグABNをセットすることなく、ステップST20の処理に戻ってDL発行処理を再実行するのも好適である。 In any case, as a result of setting the serious abnormality flag ABN, the WDT circuit 58 and the production control CPU 63 function, and either the composite chip 50 or the VDP circuit 52 is abnormally reset (ST10a), so the drawing circuit 76 Processing to initialize the data transfer circuit 72 is not necessarily essential. On the other hand, when the drawing circuit 76 and data transfer circuit 72 are initialized, abnormality recovery can be expected as a result, so the process returns to step ST20 and the DL issuing process is restarted without setting the serious abnormality flag ABN. It is also suitable to carry out.

この点は、ステップST25の処理においても同様であり、データ転送回路72や描画回路76を初期化した上で、重大異常フラグABNをセットすることなく、ステップST20の処理に戻るもの好適である。但し、このような場合には、DL発行処理の再実行回数をカウントし、再実行回数が限界値を越えれば、重大異常フラグABNをセットしてDL発行処理を終えることになる。 This point is the same in the process of step ST25, and it is preferable to initialize the data transfer circuit 72 and the drawing circuit 76 and then return to the process of step ST20 without setting the serious abnormality flag ABN. However, in such a case, the number of times the DL issuing process is re-executed is counted, and if the number of re-executing times exceeds the limit value, the serious abnormality flag ABN is set and the DL issuing process is ended.

図22(b)は、正常な動作状態について、確認的に図示したものである。図示の通り、発行されたディスプレイリストDLは、列記された指示コマンドの順番に、描画回路76(ディスプレイリストアナライザ)によって解析され、各指示コマンドに基づく動作が実行される。この動作は、ディスプレイリストDLの発行処理や、データ転送回路72のデータ転送動作(ST26~ST30)に並行して実行される。 FIG. 22(b) is a diagram illustrating a normal operating state for confirmation. As shown in the figure, the issued display list DL is analyzed by the drawing circuit 76 (display list analyzer) in the order of the listed instruction commands, and operations based on each instruction command are executed. This operation is executed in parallel with the display list DL issuance process and the data transfer operation of the data transfer circuit 72 (ST26 to ST30).

例えば、指示コマンド(TXLOAD)が実行されることで、CGROM55から必要なテクスチャが読み出されてAAC領域(a) に取得され、その後、GDEC75が自動的に起動してデコード動作が実行され、デコード後のデータが所定のインデックス空間に展開される。また、指示コマンドによっては、ジオメトリエンジン77その他が機能するが、何れにしても、描画回路76の各部が協働することで、ディスプレイリストDLに対応する画像データがフレームバッファFBa,FBbに完成されることになる。 For example, by executing the instruction command (TXLOAD), the necessary texture is read from the CGROM 55 and acquired in the AAC area (a), and then the GDEC 75 is automatically started and decoding is performed. The subsequent data is developed into a predetermined index space. Also, depending on the instruction command, the geometry engine 77 and others function, but in any case, the image data corresponding to the display list DL is completed in the frame buffers FBa and FBb by the cooperation of each part of the drawing circuit 76. That will happen.

続いて、DMAC回路60を介在させてディスプレイリストDLを発行する場合を、図23に基づいて説明する。何ら限定されないが、DMAC回路60に内蔵された第1~第4のDMAチャンネルのうち、第3のDMAチャンネルを使用することにする。 Next, the case where the display list DL is issued via the DMAC circuit 60 will be explained based on FIG. 23. Although not limited in any way, of the first to fourth DMA channels built into the DMAC circuit 60, the third DMA channel will be used.

図23の実施例では、先ず、所定のデータ転送レジスタRGijと、所定の描画レジスタRGijに各々クリア値を設定して、データ転送回路72と、描画回路76を初期化する(ST20)。この処理は、図22のステップST27のエラー処理と同じであり、FIFOバッファを含んだデータ転送回路72の内部回路が初期化され、データ転送の進行状態を示すデータ転送レジスタのステイタスビットが初期値となり、データ転送全体を初期化中であることを示すビットが所定値となる。 In the embodiment of FIG. 23, first, a clear value is set in a predetermined data transfer register RGij and a predetermined drawing register RGij, respectively, and the data transfer circuit 72 and the drawing circuit 76 are initialized (ST20). This process is the same as the error process in step ST27 of FIG. 22, and the internal circuit of the data transfer circuit 72 including the FIFO buffer is initialized, and the status bit of the data transfer register indicating the progress state of data transfer is set to the initial value. The bit indicating that the entire data transfer is being initialized becomes a predetermined value.

描画回路76についても同様であり、上記した(1) 内部パラメータを初期値に設定すること、(2) 内部制御回路を初期状態に設定すること、(3) GDEC75を初期化すること、(4) AAC領域のキャッシュ状態を初期化する処理が含まれている。また、描画回路の初期化処理(図23のST20)においても、前記した所定の描画レジスタRGijを初期化しても良い。なお、図22の処理において、このような初期化処理を最初に実行しても良い。 The same applies to the drawing circuit 76, and the above-mentioned (1) setting the internal parameters to initial values, (2) setting the internal control circuit to the initial state, (3) initializing the GDEC 75, and (4) ) Includes processing to initialize the cache state of the AAC area. Further, in the initialization process of the drawing circuit (ST20 in FIG. 23), the above-described predetermined drawing register RGij may be initialized. Note that in the process of FIG. 22, such initialization process may be executed first.

図23の処理では、次に、初期化処理が正常に完了したことを、データ転送回路72と描画回路76の動作状態を特定する所定のステイタスレジスタRGijをREADして確認する(ST21)。そして、万一、初期化できない場合には、重大異常フラグABNをセットして処理を終える(ST22)。但し、このような事態は、実際にはほぼ発生しない。 In the process of FIG. 23, next, it is confirmed that the initialization process has been completed normally by reading a predetermined status register RGij that specifies the operating states of the data transfer circuit 72 and the drawing circuit 76 (ST21). If initialization is not possible, a serious abnormality flag ABN is set and the process ends (ST22). However, such a situation almost never occurs in reality.

次に、データ転送回路72の転送動作態様と、データ転送回路72内部の伝送経由とを、所定のデータ転送レジスタRGijに設定する。設定内容は、特に限定されないが、ここでは、CPUIF部56からChB制御回路72bを経由すること、及び、CPUバス制御部72dへの転送プロトコルに関し、DMAC回路60への設定に従うと設定する(ST23)。 Next, the transfer operation mode of the data transfer circuit 72 and the transmission route inside the data transfer circuit 72 are set in a predetermined data transfer register RGij. Although the setting contents are not particularly limited, here, it is set that the transfer protocol from the CPU IF section 56 to the ChB control circuit 72b and the transfer protocol to the CPU bus control section 72d follows the settings for the DMAC circuit 60 (ST23). ).

次に、転送総サイズを、所定のデータ転送レジスタRGijに設定する。図22の場合と同様、データ総量=256となる。なお、無調整手法(C)を採る場合は、このタイミングで、最低データ量Dminの整数倍の転送総サイズを決定して設定することになる。次に、所定の描画レジスタRGijへの設定値に基づいて、描画回路76の描画動作を開始させる(ST25)。図28(a)におけるタイミングt1,t2,t3,t4は、ステップST25の動作タイミングでもある。そして次に、DMAC回路60の動作を開始させた上で(ST26)、データ転送回路72のデータ転送動作を開始させる(ST27)。 Next, the total transfer size is set in a predetermined data transfer register RGij. As in the case of FIG. 22, the total amount of data=256. Note that when adopting the non-adjustment method (C), the total transfer size that is an integral multiple of the minimum data amount Dmin is determined and set at this timing. Next, the drawing operation of the drawing circuit 76 is started based on the set value to a predetermined drawing register RGij (ST25). Timings t1, t2, t3, and t4 in FIG. 28(a) are also the operation timings of step ST25. Then, after starting the operation of the DMAC circuit 60 (ST26), the data transfer operation of the data transfer circuit 72 is started (ST27).

DMAC回路60の動作を開始処理は、図23(b)に示す通りであり、先ず、DMAC転送を禁止した状態で、一サイクルのデータ転送単位(1オペランド)の転送が完了するのを待つ(ST40)。詳細な動作内容は、図24に示す処理と同じであり、DMAC転送を禁止設定する処理(ST53)と、その後の待機処理(ST54)に区分される。 The process to start the operation of the DMAC circuit 60 is as shown in FIG. ST40). The detailed operation is the same as the process shown in FIG. 24, and is divided into a process for prohibiting DMAC transfer (ST53) and a subsequent standby process (ST54).

このような処理を設けるのは、(1) 他の実施例では、メイン制御処理やタイマ割込み処理(図20)で、DMAC回路60(第3のDMAチャンネル)を使用する可能性があること、及び、(2) 図20のステップST5の処理を設けない他の実施例において、ディスプレイリストDLの発行を開始したDMAC回路60が、その動作周期(δ)内ではDL発行動作を終了できない場合もあり得ることなどを考慮したものである。 The reason for providing such processing is that (1) in other embodiments, the DMAC circuit 60 (third DMA channel) may be used in the main control processing or timer interrupt processing (FIG. 20); and (2) In other embodiments in which the process of step ST5 in FIG. 20 is not provided, the DMAC circuit 60 that has started issuing the display list DL may not be able to complete the DL issuing operation within its operation cycle (δ). This takes into consideration things that could happen.

上記のような例外事態において、動作中のDMAC回路60に対して、新規の設定値(矛盾する設定値など)を追加的に設定すると、正常なDMA動作が全く担保されず、深刻なトラブルが懸念されるが、ステップST40の処理を設けることで、その後の設定値に基づく正常動作が担保される。すなわち、本実施例を一部変更した変更実施例でも、先行するトラブルに拘らず、その後の正常なDMA動作を実現することができる。 In the above-mentioned exceptional situation, if new setting values (such as contradictory setting values) are additionally set for the DMAC circuit 60 in operation, normal DMA operation will not be guaranteed at all, and serious troubles may occur. Although this is a concern, by providing the process in step ST40, normal operation based on the subsequent set values is ensured. In other words, even in the modified embodiment in which the present embodiment is partially modified, normal DMA operation can be realized thereafter regardless of the preceding trouble.

以上のような意義を有するステップST40の処理を実行すれば、次に、DMAC回路60の動作条件を設定する(ST41)。具体的には、図8に示す通り、サイクルスチール転送モードを選択し、一オペランド転送を32bit転送×2回とする。また、Sourceアドレスは、RAM59のリストバッファ領域(DLバッファBUF)のアドレスであるので順次増加と認識すべきこと、一方、Destination アドレスは、転送ポートTR_PORT であるため固定値とすべきことを規定する。 After executing the process of step ST40, which has the above-mentioned significance, next, the operating conditions of the DMAC circuit 60 are set (ST41). Specifically, as shown in FIG. 8, the cycle steal transfer mode is selected and one operand transfer is 32-bit transfer x 2 times. In addition, the Source address is the address of the list buffer area (DL buffer BUF) of the RAM 59, so it should be recognized as increasing sequentially, while the Destination address is the transfer port TR_PORT, so it should be a fixed value. .

次に、RAM59のDLバッファBUFの先頭アドレスを、DMAC回路60の動作を規定する所定の動作制御レジスタREGに設定すると共に(ST42)、転送先アドレスである転送ポートTR_PORT のアドレスを設定する(ST43)。また、転送総サイズ、つまり、ディスプレイリストDLのデータ総量を256バイトに設定した上で(ST44)、DMAC回路60のDMA動作を開始させる(ST45)。 Next, the start address of the DL buffer BUF of the RAM 59 is set in a predetermined operation control register REG that defines the operation of the DMAC circuit 60 (ST42), and the address of the transfer port TR_PORT, which is the transfer destination address, is set (ST43). ). Further, after setting the total transfer size, that is, the total data amount of the display list DL to 256 bytes (ST44), the DMA operation of the DMAC circuit 60 is started (ST45).

ところで、ここまでの説明は、指示コマンドの実質ビット長が、全て32bitの整数倍であることを前提にした。しかし、ディスプレイリストDLや指示コマンドの構成は必ずしも限定されないので、以下、このような場合について説明する。 By the way, the explanation so far has been based on the assumption that the actual bit lengths of the instruction commands are all integral multiples of 32 bits. However, since the structure of the display list DL and the instruction command is not necessarily limited, such a case will be described below.

例えば、前記した無調整手法(C)を採る場合も含め、ディスプレイリストDLのデータ総量Xが、32bitの整数倍ではない任意値Xである場合には、ステップST44の処理では、この任意値Xを、適切な転送量MODに調整した上で、転送総サイズの設定処理を実行する。ここで、適切な転送量MODは、一オペランド転送についての設定内容と、データ転送回路72の最低データ量Dmin(バイト)とに基づいて規定される。 For example, when the total data amount X of the display list DL is an arbitrary value X that is not an integral multiple of 32 bits, including the case where the above-mentioned non-adjustment method (C) is adopted, in the process of step ST44, this arbitrary value is adjusted to an appropriate transfer amount MOD, and then the total transfer size setting process is executed. Here, the appropriate transfer amount MOD is defined based on the settings for one-operand transfer and the minimum data amount Dmin (bytes) of the data transfer circuit 72.

具体的には、一オペランド転送設定がNバイト×M回であれば、転送量MODは、N×M(バイト)の整数倍であって、且つ、Dmin(バイト)の整数倍の値に調整される。例えば、N×M=8×4、Dmin=256であれば、任意値X(=300)バイトは、転送量MOD(=512)バイトに調整される。 Specifically, if the one-operand transfer setting is N bytes x M times, the transfer amount MOD is adjusted to a value that is an integral multiple of N x M (bytes) and an integral multiple of Dmin (bytes). be done. For example, if N×M=8×4 and Dmin=256, the arbitrary value X (=300) bytes is adjusted to the transfer amount MOD (=512) bytes.

以上、一般論も含め説明したが、DMAC回路60のDMA動作は、図8に示すようなサイクルスチール転送動作が開始され、CPUの動作を特に阻害することなく、ディスプレイリストDLが、実施例の場合には32ビット毎に、転送ポートTR_PORT に転送される。そして、転送されたデータは、転送回路ChBを経由して、描画回路76に転送される。 As described above, including the general theory, the DMA operation of the DMAC circuit 60 starts with a cycle steal transfer operation as shown in FIG. In this case, each 32 bits are transferred to the transfer port TR_PORT. The transferred data is then transferred to the drawing circuit 76 via the transfer circuit ChB.

このような動作を実現するため、本実施例では、ステップST45の処理に続いて、データ転送回路72の転送動作を開始させて処理を終える(ST27)。その後、データ転送回路72は、DMAC回路60から最低データ量Dminを一単位として、ディスプレイリストDLの指示コマンド列を受け、これを描画回路76に転送する。そして、描画回路76は、ディスプレイリストDLの指示コマンドに基づいて描画動作を実行する。したがって、ステップST27の処理の後、演出制御CPU63は、図20のステップST11の処理を開始することができ、VDP回路52による描画動作(DMAC回路60によるDL発行処理)と並行して、音声演出やランプ演出やモータ演出を制御することができる。 In order to realize such an operation, in this embodiment, following the process in step ST45, the data transfer circuit 72 starts a transfer operation and ends the process (ST27). Thereafter, the data transfer circuit 72 receives the instruction command string of the display list DL from the DMAC circuit 60 using the minimum data amount Dmin as one unit, and transfers this to the drawing circuit 76. Then, the drawing circuit 76 executes a drawing operation based on the instruction command of the display list DL. Therefore, after the process in step ST27, the production control CPU 63 can start the process in step ST11 in FIG. You can also control lamp effects and motor effects.

図23(c)は、この動作内容を図示したものである。DMA転送に先行して、描画回路の動作を開始しており(ST25)、描画回路76のディスプレイリストアナライザは、迅速かつ円滑にAnalyze 処理を実行し、その他、GDEC75やジオメトリエンジン77などの動作に基づき、フレームバッファFBa,FBbには、各表示装置DS1,DS2について、各一フレーム分の画像データが生成される。 FIG. 23(c) illustrates the contents of this operation. Prior to DMA transfer, the operation of the drawing circuit is started (ST25), and the display list analyzer of the drawing circuit 76 quickly and smoothly executes Analyze processing, and other operations such as the GDEC 75 and the geometry engine 77 are performed. Based on this, image data for one frame is generated in frame buffers FBa and FBb for each display device DS1 and DS2.

ところで、DL発行処理をステップST27の処理で終える図23の構成は、必ずしも、限定されない。例えば、図30~図31のように、音声演出、ランプ演出、及びモータ演出を、他のCPUが制御する場合には、ステップST27の処理の後、DMAC回路60やデータ転送回路72の正常動作を確認するのが好ましい。図24は、図23のステップST27に続く動作であり、正常動作の確認処理を説明するフローチャートである。 By the way, the configuration of FIG. 23 in which the DL issuing process ends with the process of step ST27 is not necessarily limited. For example, as shown in FIGS. 30 and 31, when the audio effects, lamp effects, and motor effects are controlled by another CPU, after the processing in step ST27, the DMAC circuit 60 and the data transfer circuit 72 operate normally. It is preferable to check. FIG. 24 is an operation following step ST27 in FIG. 23, and is a flowchart illustrating normal operation confirmation processing.

先ず、所定のステイタスレジスタを参照して、DMAC回路60の転送動作が正常に終了していることを確認する(ST50)。また、データ転送回路72が転送動作を終了していることを確認する(ST51)。通常、このような経路で、図23のDL発行処理が完了する。 First, referring to a predetermined status register, it is confirmed that the transfer operation of the DMAC circuit 60 has been completed normally (ST50). Also, it is confirmed that the data transfer circuit 72 has finished the transfer operation (ST51). Normally, the DL issuing process shown in FIG. 23 is completed through such a route.

一方、所定時間待機しても.DMAC回路60の動作が完了していない場合、或いは、データ転送回路72が転送動作を完了していない場合には、描画回路76とデータ転送回路72について、所定のVDPレジスタRGijにクリア値を設定して、DL発行処理を初期化する(ST52)。これは、ディスプレイリストDLの発行処理が正常に終了していないことに基づく動作であり、具体的には、図22のステップST27のエラー処理や、図23のステップST20の初期処理と同じ内容である。 On the other hand, even if you wait for a certain period of time. If the operation of the DMAC circuit 60 has not been completed, or if the data transfer circuit 72 has not completed its transfer operation, a clear value is set in a predetermined VDP register RGij for the drawing circuit 76 and the data transfer circuit 72. Then, the DL issuing process is initialized (ST52). This is an operation based on the fact that the display list DL issuance process has not been completed normally, and specifically, the content is the same as the error process in step ST27 in FIG. 22 and the initial process in step ST20 in FIG. be.

すなわち、この場合も、描画回路76は、既に動作を開始しており、ある程度の処理を終えているので、描画回路76の初期化処理には、(1) ディスプレイリストDLによって設定される可能性のある全ての内部パラメータを初期値に設定すること、(2) 全ての内部制御回路を初期状態に設定すること、(3) GDEC75を初期化すること、(4) AAC領域のキャッシュ状態を初期化することが含まれる。 That is, in this case as well, since the drawing circuit 76 has already started operating and has completed some processing, the initialization process of the drawing circuit 76 includes (1) the possibilities set by the display list DL; (2) set all internal control circuits to their initial states; (3) initialize the GDEC 75; (4) initialize the cache state of the AAC area. It includes becoming

次に、新規のDMA転送動作を禁止した上で(ST53)、実行中の一オペランドの転送動作が終わるのを待つ(ST54)。先に説明した通り、本実施例では、32bit転送×2回を一オペランドとしており、動作中のDMAC回路60をいきなり初期化することを避けるためである。 Next, a new DMA transfer operation is prohibited (ST53), and the process waits for the transfer operation of one operand in progress to be completed (ST54). As described above, in this embodiment, two 32-bit transfers are used as one operand, in order to avoid sudden initialization of the DMAC circuit 60 in operation.

そして、この準備作業が終われば、DMAC回路60の動作を規定する所定の動作制御レジスタREGにクリア値を設定して、DMAC回路60を初期化する(ST52)。そして、重大異常フラグABNをセットしてDL発行処理を終える。なお、この場合、ステップST52やST55の処理によって、異常回復が期待できるので、重大異常フラグABNをセットすることなく、図23のステップST20に戻って、DL発行処理を再実行するのも好適である。但し、DL発行処理(ST23~ST27)の再実行回数をカウントし、再実行回数が限界値を越えれば、重大異常フラグABNをセットしてDL発行処理を終える必要がある。 When this preparatory work is completed, a clear value is set in a predetermined operation control register REG that defines the operation of the DMAC circuit 60, and the DMAC circuit 60 is initialized (ST52). Then, the serious abnormality flag ABN is set and the DL issuing process is completed. In this case, since abnormality recovery can be expected through the processing in steps ST52 and ST55, it is also preferable to return to step ST20 in FIG. 23 and re-execute the DL issuing process without setting the serious abnormality flag ABN. be. However, it is necessary to count the number of times the DL issuance process (ST23 to ST27) is re-executed, and if the number of re-executions exceeds the limit value, it is necessary to set the serious abnormality flag ABN and finish the DL issuance process.

続いて、プリローダ73を使用する場合のメイン制御処理について、図25に基づいて説明する。図25の処理は、図20の処理に類似しているが、先ず、開始条件判定(ST5’)の内容が相違する。すなわち、プリローダを使用する実施例では、各動作周期の開始時に、描画回路76とプリローダ73のステイタス情報をREADアクセスして、ディスプレイリストDL1に基づく描画動作が終わっていること、及び、ディスプレイリストDL2に基づくプリロード動作が終わっていること確認する(ST5’)。 Next, the main control process when using the preloader 73 will be described based on FIG. 25. The process in FIG. 25 is similar to the process in FIG. 20, but first, the content of the start condition determination (ST5') is different. That is, in the embodiment using the preloader, at the start of each operation cycle, the status information of the drawing circuit 76 and the preloader 73 is read accessed, and it is confirmed that the drawing operation based on the display list DL1 is completed, and that the drawing operation based on the display list DL2 is completed. It is confirmed that the preload operation based on is completed (ST5').

図29(a)のタイムチャートに示す通り、プリローダ76は、例えば、動作周期(T1)に発行されたディスプレイリストDL1に基づき、その動作周期中(T1~T1+δ)に、先読み動作(プリロード動作)を終えている筈である。また、描画回路76は、例えば、動作周期(T1+δ)で指示された動作開始指令に基づき、その動作周期中(T1+δ~T1+2δ)に、ディスプレイリストDL1に基づく描画動作を終えている筈である。 As shown in the time chart of FIG. 29(a), the preloader 76 performs a prefetch operation (preload operation) during the operation cycle (T1 to T1+δ), for example, based on the display list DL1 issued in the operation cycle (T1). You should have finished. Further, the drawing circuit 76 should have finished the drawing operation based on the display list DL1 during the operation cycle (T1+δ to T1+2δ), for example, based on the operation start command instructed at the operation cycle (T1+δ).

そこで、(ST5’)では、描画回路76とプリローダ73に関するVDPレジスタRGijのステイタス情報をREADアクセスして、上記の正常動作を確認するのである。図29(a)には、動作周期T1,T1+δ,T1+2δ,T1+4δの判定タイミングでは正常動作が確認されるが、動作周期T1+3δの判定タイミングでは、プリロード動作が終了していない状態が示されている。 Therefore, in (ST5'), the status information of the VDP register RGij regarding the drawing circuit 76 and the preloader 73 is read accessed to confirm the above-mentioned normal operation. In FIG. 29(a), normal operation is confirmed at the determination timings of operation cycles T1, T1+δ, T1+2δ, and T1+4δ, but a state in which the preload operation is not completed is shown at the determination timing of operation cycle T1+3δ. .

そして、このような異常時には、異常フラグERをインクリメントした上で(ER=ER+1)、ステップST9の処理に移行させている。そのため、図20の実施例の場合と同様に、フレーム落ちが生じる。すなわち、表示領域の切換え処理(ST6)がスキップされるので、同じ画面が再表示される。図28(a)に示す動作期間(T1+3δ~T1+4δ)は、その動作状態を示している。 When such an abnormality occurs, the abnormality flag ER is incremented (ER=ER+1) and the process proceeds to step ST9. Therefore, as in the case of the embodiment of FIG. 20, frame drops occur. That is, since the display area switching process (ST6) is skipped, the same screen is displayed again. The operating period (T1+3δ to T1+4δ) shown in FIG. 28(a) indicates the operating state.

また、ステップST5’の判定において、開始条件を満たさない場合には、描画回路76に対して、書換えリストDL’に基づく描画動作の開始指示(PT10)が実行されないので、描画回路76は非動作状態であり、また、新規のディスプレイリストが生成されることもない。なお、図29(a)において、タイミングt0,t2,t4は、描画動作の開始指示(PT10)の動作タイミング、より正確には、図26のステップST26のタイミングを示している。 Further, in the determination in step ST5', if the start condition is not satisfied, the drawing circuit 76 is not instructed to start the drawing operation based on the rewrite list DL' (PT10), so the drawing circuit 76 is inactive. Also, no new display list is generated. Note that in FIG. 29A, timings t0, t2, and t4 indicate the operation timings of the drawing operation start instruction (PT10), more precisely, the timings of step ST26 in FIG. 26.

以上、ステップST5’の判定が不適合の場合を説明したが、通常の場合は、フレームバッファFBa,FBbの表示領域をトグル的に切換えた後(ST6)、描画回路76に対して、書換えリストDL’に基づく描画動作を開始させる(PT10)。具体的な内容は、図26に示す通りであり、描画回路76は、演出制御CPU63の制御に基づき、データ転送回路72(転送回路ChB)を経由して、外付けDRAM54のDLバッファBUF’から書換えリストDL’を取得して描画動作を実行することになる。 The case where the determination in step ST5' is non-conformity has been described above, but in a normal case, after the display areas of frame buffers FBa and FBb are toggled (ST6), the rewriting list DL is sent to the drawing circuit 76. A drawing operation based on ' is started (PT10). The specific contents are as shown in FIG. 26, and the drawing circuit 76 receives data from the DL buffer BUF' of the external DRAM 54 via the data transfer circuit 72 (transfer circuit ChB) under the control of the performance control CPU 63. The rewriting list DL' is acquired and the drawing operation is executed.

この動作を実現する図26のフローチャートを説明することに先行して、プリローダ73の動作を確認すると、プリローダ73は、一動作周期前に取得したディスプレイリストDLに基づき、CGROM55の先読み動作(プリロード)を完了しており、先読みされたデータは、外付けDRAM54に確保されたプリロード領域に既に格納済みである。また、ディスプレイリストDLに記載されているテクスチャロード系のコマンド(TXLOAD)については、そのSourceアドレスがプリロード領域のアドレスに書換えられ、書換えリストDL’として、外付けDRAM54のDLバッファBUF’に格納されている。 Prior to explaining the flowchart of FIG. 26 that implements this operation, the operation of the preloader 73 will be confirmed. The preloader 73 performs a pre-read operation (preload) of the CGROM 55 based on the display list DL acquired one operation cycle ago. has been completed, and the pre-read data has already been stored in the preload area secured in the external DRAM 54. In addition, for the texture load command (TXLOAD) listed in the display list DL, its Source address is rewritten to the address of the preload area and stored in the DL buffer BUF' of the external DRAM 54 as the rewrite list DL'. ing.

なお、この書換え処理において、ディスプレイリストDLのデータ総量に変化はなく、書換えリストDL’のデータ総量は、ディスプレイリストDLと同じである。また、ディスプレイリストDLは、標準手法(B)で作成されており、書換えリストDL’の最後は、ディスプレイリストDLの場合と同様にEODLコマンドである。 Note that in this rewriting process, there is no change in the total amount of data in the display list DL, and the total amount of data in the rewriting list DL' is the same as that in the display list DL. Further, the display list DL is created using the standard method (B), and the last of the rewrite list DL' is an EODL command, as in the case of the display list DL.

以上を踏まえて、図26について説明すると、演出制御CPU63は、先ず、所定のデータ転送レジスタRGijと、所定の描画レジスタRGijに各々クリア値を設定して、データ転送回路72と、描画回路76を初期化する(ST20)。この処理は、図23のST20の処理と同一内容である。次に、この初期化処理が正常に終了したことを確認し(ST21)、万一、所定時間経過しても初期化が完了しない場合には、重大異常フラグABNをセットして処理を終える(ST22)。 Based on the above, referring to FIG. 26, the production control CPU 63 first sets clear values in a predetermined data transfer register RGij and a predetermined drawing register RGij, and then controls the data transfer circuit 72 and the drawing circuit 76. Initialize (ST20). This process has the same content as the process of ST20 in FIG. 23. Next, it is confirmed that this initialization process has been completed normally (ST21), and if the initialization is not completed even after a predetermined period of time has elapsed, the serious abnormality flag ABN is set and the process is terminated (ST21). ST22).

通常は、データ転送回路72と描画回路76の初期化は正常に終了するので、続いて、データ転送回路72内部の伝送経由を、所定のデータ転送レジスタRGijに設定する(ST23)。具体的には、外付けDRAM54から、ChB制御回路72bを経由して描画回路76にデータを転送すると設定する(ST23)。次に、書換えリストDL’が格納されている外付けDRAM54のDLバッファBUF’について、その先頭アドレスを、所定のデータ転送レジスタRGijに設定する(ST24)。 Normally, the initialization of the data transfer circuit 72 and the drawing circuit 76 is completed normally, so next, the transmission route inside the data transfer circuit 72 is set to a predetermined data transfer register RGij (ST23). Specifically, data is set to be transferred from the external DRAM 54 to the drawing circuit 76 via the ChB control circuit 72b (ST23). Next, the start address of the DL buffer BUF' of the external DRAM 54 in which the rewrite list DL' is stored is set in a predetermined data transfer register RGij (ST24).

また、この書換えリストDL’について、転送総サイズを、所定のデータ転送レジスタRGijに設定する(ST25)。先に説明した通り、書換えリストDL’のデータ総量は、ディスプレイリストDLのデータ総量と同じであり、具体的には、例えば、256バイトである。 Further, for this rewrite list DL', the total transfer size is set in a predetermined data transfer register RGij (ST25). As explained above, the total amount of data in the rewriting list DL' is the same as the total amount of data in the display list DL, and specifically, for example, 256 bytes.

次に、所定の描画レジスタRGijへの設定値に基づいて、描画回路76の描画動作を開始させる(ST26)。図28(a)におけるタイミングt1,t2,t3,t4は、ステップST26の動作タイミングでもある。そして、次に、所定のデータ転送レジスタRGijへの設定値に基づいて、データ転送回路60の動作を開始させて処理を終える(ST27)。その後、演出制御CPU63は、データ転送回路72や描画回路の動作に特に関与せず、次回の動作周期で実効化されるディスプレイリストの生成処理(ST7)に移行する。 Next, the drawing operation of the drawing circuit 76 is started based on the set value to a predetermined drawing register RGij (ST26). Timings t1, t2, t3, and t4 in FIG. 28(a) are also the operation timings of step ST26. Then, based on the set value to a predetermined data transfer register RGij, the operation of the data transfer circuit 60 is started, and the process ends (ST27). Thereafter, the effect control CPU 63 does not particularly involve in the operation of the data transfer circuit 72 or the drawing circuit, and shifts to display list generation processing (ST7) to be executed in the next operation cycle.

一方、ステップST26のタイミングで動作を開始する描画回路76は、書換えリストDL’に基づいた描画動作を実行して、フレームバッファFBa,FBbに、書換えリストDL’に基づいた画像データを生成する。なお、この動作において、描画回路76は、CGROM55をREADアクセスすることなく、もっぱら、プリロード領域をREADアクセスするので、一連の描画動作を迅速に完了することができる。 On the other hand, the drawing circuit 76, which starts operating at the timing of step ST26, executes a drawing operation based on the rewrite list DL', and generates image data based on the rewrite list DL' in the frame buffers FBa and FBb. In this operation, the drawing circuit 76 exclusively performs READ access to the preload area without performing READ access to the CGROM 55, so that the series of drawing operations can be quickly completed.

以上、ステップPT10の処理内容を説明したので、図25に戻って説明を続けると、ステップPT11の処理の後、プリローダ73を活用する実施例では、次サイクルで実効化されるディスプレイリストDLを、標準手法(B)に基づいて作成する(ST7)。例えば、図29(a)に示す動作周期(T1)では、次サイクルである動作周期(T1+δ)において、描画回路76に参照されるディスプレイリストDLを作成する。 The processing contents of step PT10 have been explained above, so to continue the explanation by returning to FIG. It is created based on the standard method (B) (ST7). For example, in the operation cycle (T1) shown in FIG. 29(a), the display list DL to be referred to by the drawing circuit 76 is created in the next cycle, the operation cycle (T1+δ).

次に、演出制御CPU63は、作成後のディスプレイリストDLを、描画回路76ではなく、プリローダ73に発行する(PT11)。具体的な動作内容は、図27に示す通りである。先に、プリローダ73を使用しない実施例(図20)に関し、演出制御CPU63が、ディスプレイリストDLを、直接的に、描画回路76に発行する場合(図22)と、DMAC回路60を経由して発行する場合(図23)を示しているが、図27には、発行先がプリローダ73である点を除いて、ほぼ同じ動作が図27(b)と図27(c)に示されている。 Next, the production control CPU 63 issues the created display list DL to the preloader 73 instead of the drawing circuit 76 (PT11). The specific contents of the operation are as shown in FIG. First, regarding the embodiment in which the preloader 73 is not used (FIG. 20), the effect control CPU 63 issues the display list DL directly to the drawing circuit 76 (FIG. 22), and the case in which the display list DL is issued via the DMAC circuit 60. The case of issuing (FIG. 23) is shown, but almost the same operation is shown in FIGS. 27(b) and 27(c), except that the issuing destination is the preloader 73 in FIG. .

図27(a)は、図27(b)の動作を説明するフローチャートであり、図22のフローチャートとほぼ同じである。但し、CPUIF部56からChC制御回路72cを経由すること、及び、CPUバス制御部72dに関し、そのFIFOバッファの残量をチェックしながらデータ転送動作を実行すると設定する(ST20)。なお、以下の説明では、ChC制御回路72cを、便宜上、「転送回路ChC」と略すことがある。 FIG. 27(a) is a flowchart explaining the operation of FIG. 27(b), and is almost the same as the flowchart of FIG. 22. However, it is set that the data transfer operation is to be performed from the CPUIF section 56 via the ChC control circuit 72c, and the remaining capacity of the FIFO buffer of the CPU bus control section 72d is checked (ST20). In addition, in the following description, the ChC control circuit 72c may be abbreviated as "transfer circuit ChC" for convenience.

次に、転送総サイズ(標準手法(B)で調整された例えば256バイト)を、所定のデータ転送レジスタRGij設定し、管理カウンタCNを64に初期設定する(ST21)。次に、転送回路ChCを経由するデータ転送動作を開始状態に設定すると共に(ST22)、プリローダ73の動作を規定するプリロードレジスタRGijへの設定値に基づいて、プリロード動作を開始させる(ST23)。 Next, the total transfer size (for example, 256 bytes adjusted by the standard method (B)) is set in a predetermined data transfer register RGij, and the management counter CN is initialized to 64 (ST21). Next, the data transfer operation via the transfer circuit ChC is set to the start state (ST22), and the preload operation is started based on the set value to the preload register RGij that defines the operation of the preloader 73 (ST23).

この結果、その後、プリローダ73は、演出制御CPU63が、転送ポートTR_PORT に書込む指示コマンド毎に、必要な解析(Analyze )処理を実行し、CGROM55をREADアクセスすべき指示コマンド(TXLOAD)を検出すると、そのテクスチャをプリロードして、DRAM54のプリロード領域に保存する。また、テクスチャのSourceアドレスを変更した書換えリストDL’をDRAM54のDLバッファ領域BUF’に保存する。 As a result, after that, the preloader 73 executes the necessary analysis processing for each instruction command that the production control CPU 63 writes to the transfer port TR_PORT, and when it detects an instruction command (TXLOAD) to read the CGROM 55. , the texture is preloaded and stored in the preload area of the DRAM 54. In addition, the rewrite list DL' in which the source address of the texture has been changed is stored in the DL buffer area BUF' of the DRAM 54.

なお、図29(a)におけるタイミングt1,t3,t5は、事実上、図27のステップST23の動作タイミングを示している。但し、この実施例においても、ディスプレイリストDLの発行処理の途中で、何らかの異常が発生すれば、ステップST25やステップST27の処理を実行する。具体的には、データ転送回路72や、プリローダ73の動作を初期化して、可能な範囲でディスプレイリストDLの発行処理(ST20~ST30)を再実行する。プリローダ73の初期化処理には、未完成状態の書き換えリストDL’の消去や、新規にプリロードデータを記憶したプリロード領域のクリア処理が含まれる。 Note that timings t1, t3, and t5 in FIG. 29(a) actually indicate the operation timings of step ST23 in FIG. 27. However, also in this embodiment, if some abnormality occurs during the display list DL issuance process, the process of step ST25 or step ST27 is executed. Specifically, the operations of the data transfer circuit 72 and the preloader 73 are initialized, and the display list DL issuance processing (ST20 to ST30) is re-executed to the extent possible. The initialization process of the preloader 73 includes erasing the incomplete rewrite list DL' and clearing the preload area in which new preload data is stored.

以上、プリローダ73を使用する場合と、使用しない場合について詳細に説明したが、具体的な動作内容は、特に限定されない。図28(b)は、演出制御CPU63が生成したディスプレイリストを、生成したその動作周期ではなく、一動作周期δ遅れて描画回路76に発行する実施例を示している。このような実施例の場合には、描画回路76は、一動作周期(δ)のほぼ全時間を使用できるので、フレーム落ちの可能性が低減される。 Although the cases in which the preloader 73 is used and the cases in which it is not used have been described above in detail, the specific operation contents are not particularly limited. FIG. 28(b) shows an embodiment in which the display list generated by the production control CPU 63 is issued to the drawing circuit 76 not with the generated operation cycle but with a delay of one operation cycle δ. In such an embodiment, the drawing circuit 76 can use almost the entire time of one operating period (δ), reducing the possibility of frame drops.

また、図29(b)は、演出制御CPU63が生成したディスプレイリストを、生成したその動作周期ではなく、一動作周期遅れてプリローダ73に発行する実施例を示している。この場合は、プリローダ73は、一動作周期(δ)のほぼ全時間を使用してプリドード動作を実行することができるので、この場合も、フレーム落ちの可能性が低減される。 Further, FIG. 29(b) shows an embodiment in which the display list generated by the production control CPU 63 is issued to the preloader 73 not with the generated operation cycle but with a delay of one operation cycle. In this case, the preloader 73 can use almost the entire time of one operation period (δ) to perform the predoze operation, so that the possibility of dropping frames is reduced in this case as well.

なお、ここまでの説明では、複合チップ50を使用することにしているが、必ずしも、演出制御CPU63とVDP回路52を、一素子に集積化する必要はない。更にまた、上記の実施例では、演出制御全体を、単一のCPU(演出制御CPU63)で制御しているが、上流側のCPUと、下流側の演出制御CPU63が互いに協働して、演出制御動作を実行しても良い。 In addition, in the explanation so far, the composite chip 50 is used, but it is not necessarily necessary to integrate the production control CPU 63 and the VDP circuit 52 into one element. Furthermore, in the above embodiment, the entire performance control is controlled by a single CPU (performance control CPU 63), but the upstream CPU and the downstream performance control CPU 63 cooperate with each other to control the performance. Control operations may also be performed.

図30~図31は、このような実施例を示すブロック図である。図示の通り、この実施例では、上流側の演出制御CPUが、音声演出と、ランプ演出と、モータ演出を制御している。一方、下流側のCPU回路51は、演出制御CPUから受ける制御コマンドCMD’に基づいて、画像演出だけを制御している。 FIGS. 30-31 are block diagrams illustrating such an embodiment. As shown in the figure, in this embodiment, the upstream performance control CPU controls the audio performance, lamp performance, and motor performance. On the other hand, the CPU circuit 51 on the downstream side controls only the image presentation based on the control command CMD' received from the presentation control CPU.

このような構成を採る場合には、CPU回路51は、図20(a)のステップST12の処理と、図20(b)の処理を実行する必要がなく、十分に時間をかけて複雑なディスプレイリストDLを生成することができ、より複雑で高度な3D(Dimension )などの画像演出を実現することができる。このような場合には、ディスプレイリストが大型化するが、その場合には、ディスプレイリストDLのデータ総量は、ダミーコマンドを付加することで、512バイト又はそれ以上のN×256バイトに調整される。 In the case of adopting such a configuration, the CPU circuit 51 does not need to execute the process of step ST12 in FIG. 20(a) and the process of FIG. A list DL can be generated, and more complex and advanced image effects such as 3D (Dimension) can be realized. In such a case, the display list becomes large, but in that case, the total amount of data in the display list DL is adjusted to 512 bytes or more (N x 256 bytes) by adding a dummy command. .

また、下流側のCPU回路51の動作は、画像演出制御に特化されるので、ディスプレイリストDLの発行後、描画動作が完了するのを確認することもできる。図22の下方は、この場合の動作制御例を示しており、限界時間を超えても描画動作が完了しない場合には、重大異常フラグABNをセットして処理を終える(ST32)。なお、下流側のCPU回路51の処理は、画像演出制御だけであるので、簡易的には、描画動作の完了を無限ループ状に待機するのでも良い。 Further, since the operation of the downstream side CPU circuit 51 is specialized for image production control, it is also possible to confirm that the drawing operation is completed after the display list DL is issued. The lower part of FIG. 22 shows an example of operation control in this case, and if the drawing operation is not completed even after the limit time is exceeded, the serious abnormality flag ABN is set and the process ends (ST32). Note that since the downstream CPU circuit 51 only performs image rendering control, it may simply wait for the completion of the drawing operation in an infinite loop.

このような構成を採る場合、図20(a)の開始条件判定(ST5)を所定時間繰り返すことができる。このように構成しても、描画動作完了の遅れが、それほど長くなければ、表示領域(0)と表示領域(1)の切り換えが遅れるだけの問題しか生じない。すなわち、図32(a)に示す動作周期T1+3δのように、表示動作が二回繰り返される一動作周期の中で、前半だけ、フレーム落ち状態となり、後半は、正常なフレームが表示される。 When adopting such a configuration, the start condition determination (ST5) in FIG. 20(a) can be repeated for a predetermined period of time. Even with this configuration, if the delay in completing the drawing operation is not too long, the only problem that occurs is that there is a delay in switching between the display area (0) and the display area (1). That is, as in the operation cycle T1+3δ shown in FIG. 32(a), in one operation cycle in which the display operation is repeated twice, frames are dropped only in the first half, and normal frames are displayed in the second half.

この点は、プリローダを使用する場合も同様であり、図25(a)の開始条件判定(ST5’)を所定時間繰り返すことができる。そして、多少の遅れであれば、図32(b)に示す動作周期T1+3δのように、前半だけ、フレーム落ち状態となり、後半は、正常なフレームが表示される。但し、描画動作の完了が大幅に遅れると、図28(a)の動作周期T1+3δと同様に、完全なフレーム落ちが生じることになり、万一、このような事態が継続すると、WDT回路58が起動することになる。この点は、プリローダを使用しない場合も同様である。 This point is the same when using a preloader, and the start condition determination (ST5') in FIG. 25(a) can be repeated for a predetermined period of time. If there is a slight delay, frames are dropped only in the first half, and normal frames are displayed in the second half, as shown in the operation cycle T1+3δ shown in FIG. 32(b). However, if the completion of the drawing operation is significantly delayed, a complete frame drop will occur, similar to the operation cycle T1+3δ in FIG. 28(a), and if this situation continues, the WDT circuit 58 will It will start. This point is the same even when the preloader is not used.

また、CPU回路51の制御動作が画像演出制御に特化される場合、DMA転送を採用する実施例では、図24の下方に示す通り、描画回路76の描画動作の完了と、データ転送回路72の動作完了と、DMAC回路60の動作完了が判定される(ST50’~ST52’)。そして、何れかの動作が正常に終了しない場合には、データ転送回路72と、描画回路76の動作を初期化し、ステップST53~ST55の処理と同様の処理(ST55’~ST57’)が実行される。なお、この場合も、所定回数だけ、DL発行処理を再実行するのが好適である。 Furthermore, when the control operation of the CPU circuit 51 is specialized for image production control, in an embodiment that employs DMA transfer, as shown in the lower part of FIG. The completion of the operation of the DMAC circuit 60 and the completion of the operation of the DMAC circuit 60 are determined (ST50' to ST52'). If any of the operations does not end normally, the operations of the data transfer circuit 72 and the drawing circuit 76 are initialized, and the same processes as steps ST53 to ST55 (ST55' to ST57') are executed. Ru. Note that in this case as well, it is preferable to re-execute the DL issuing process a predetermined number of times.

以上、メイン表示装置DS1及びサブ表示装置DS2のフレームバッファFBa,FBbとして、各表示装置の水平ピクセル数に完全一致する水平サイズのインデックス空間を構築する実施例について説明した。図33(a)は、この関係を確認的に図示したものであり、仮想描画空間上の描画領域(W×H)と、インデックス空間上の有効データ領域(実描画領域W×H)とが、何れも、表示装置の水平/垂直ピクセル数に一致する場合を示している。 An embodiment has been described above in which an index space of a horizontal size completely matching the number of horizontal pixels of each display device is constructed as frame buffers FBa and FBb of the main display device DS1 and sub display device DS2. FIG. 33(a) shows this relationship for confirmation, and shows that the drawing area (W×H) in the virtual drawing space and the effective data area (actual drawing area W×H) in the index space are , both show cases where the number of horizontal/vertical pixels matches the number of horizontal/vertical pixels of the display device.

このような対応関係において、ディスプレイリストDLによる仮想描画空間への描画動作は、必ずしも、描画領域(W×H)に限定されないので、例えば、図33(a)上部の左傾斜線で示すように、描画領域(W×H)を超える描画画像(W’×H’)について、その描画位置を時間的に移動させることで、図33(a)下部の右傾斜線で示す実描画領域W×Hへの描画内容を、縦/横/斜めに適宜に移動させることが可能となる。 In such a correspondence relationship, the drawing operation in the virtual drawing space by the display list DL is not necessarily limited to the drawing area (W×H), so for example, as shown by the left inclined line in the upper part of FIG. 33(a), , by temporally moving the drawing position of the drawing image (W'×H') that exceeds the drawing area (W×H), the actual drawing area W×H shown by the right-slanted line at the bottom of FIG. 33(a) It becomes possible to move the drawing content vertically/horizontally/diagonally as appropriate.

また、このような演出を実行するため、例えば、図33(b)に示すように、表示装置の水平ピクセル数より大きい水平サイズWのインデックス空間を設けても良い。この場合には、ディスプレイリストDLの指示コマンドL12(SETDAVF )で定義される仮想描画空間上の描画領域W×Hは、表示装置の水平/垂直ピクセル数に対応する実描画領域w×hより大きく設定される。なお、図33(b)の下部には、実描画領域w×hが、右傾斜線で示されている。 Further, in order to perform such an effect, for example, as shown in FIG. 33(b), an index space with a horizontal size W larger than the number of horizontal pixels of the display device may be provided. In this case, the drawing area W×H in the virtual drawing space defined by the instruction command L12 (SETDAVF) of the display list DL is larger than the actual drawing area w×h corresponding to the number of horizontal/vertical pixels of the display device. Set. Note that in the lower part of FIG. 33(b), the actual drawing area w×h is indicated by a right-sloping line.

そして、実描画領域w×hの縦横寸法は、図20のステップSS30の処理で、表示装置の表示ライン数と水平画素数として特定され、また、実描画領域w×hの左上端点は、図20のステップSS31の処理で、垂直/水平表示開始位置として、所定の表示レジスタに設定される。 The vertical and horizontal dimensions of the actual drawing area w×h are specified as the number of display lines and the number of horizontal pixels of the display device in the process of step SS30 in FIG. 20, and the upper left end point of the actual drawing area w×h is In step SS31 of 20, the vertical/horizontal display start position is set in a predetermined display register.

一方、インデックス空間における基点アドレス(X,Y)は、ディスプレイリストの指示コマンドL11によって、所定の描画レジスタに設定される。先に説明した通り、具体的には、環境設定系の指示コマンドL11(SETDAVR )によって、インデックス空間IDX上の左上基点アドレスが、例えば(0,0)と規定される。そして、実描画領域w×hの左上端点を、定常処理において適宜に移動させれば、図33(b)下部の右傾斜線で示す実描画領域W×Hの描画内容は、縦/横/斜めに適宜に移動することになる。 On the other hand, the base point address (X, Y) in the index space is set in a predetermined drawing register by the display list instruction command L11. As explained above, specifically, the upper left base point address on the index space IDX is defined as (0,0), for example, by the environment setting instruction command L11 (SETDAVR). If the upper left end point of the actual drawing area w x h is moved appropriately in the steady processing, the drawing contents of the actual drawing area W x H shown by the right-slanted line at the bottom of FIG. 33(b) can be changed vertically, horizontally, and diagonally. will be moved accordingly.

図20に関して説明した通り、ステップSS30~SS32に係るVDPレジスタRGijについては、初期設定後に、書込み禁止設定がされているが(第2の禁止設定SS34)、上記の演出を実行するタイミングでは、所定のVDPレジスタRGijに解除値を書込むことで、この禁止設定が解除される。 As explained with reference to FIG. 20, the VDP register RGij related to steps SS30 to SS32 is set to be write-prohibited after the initial setting (second prohibition setting SS34), but at the timing of executing the above effect, a predetermined write is disabled. This prohibition setting is canceled by writing a cancellation value to the VDP register RGij.

ところで、上記の実施例では、第1種や第2種の禁止設定レジスタを活用して、所定のシステム制御レジスタRGijや初期設定系の所定のVDPレジスタRGijを、画一的に書込み禁止状態に設定して(図20や図25のSS33,SS34参照)、これらのレジスタへの設定値が、その後、ノイズなどの影響で変更されないようにした。しかし、このような書込み禁止設定をすることなく、重要なシステム制御レジスタRGijの設定値については、所定時間毎に設定処理を繰り返すのも好適である。 By the way, in the above embodiment, the first type and the second type of prohibition setting registers are utilized to uniformly set a predetermined system control register RGij and a predetermined initial setting VDP register RGij to a write-protected state. (see SS33 and SS34 in FIGS. 20 and 25) to prevent the values set in these registers from being changed thereafter due to the influence of noise or the like. However, it is also preferable to repeat the setting process at predetermined time intervals for the set value of the important system control register RGij without performing such a write prohibition setting.

図34は、このような場合の処理を説明する図面であり、初期設定処理(ST3)において設定すべき設定値は、制御メモリ53(PROGMROM)に記憶された設定値テーブルSETTABLEに纏められている。なお、図20のステップST3では、説明を省略しているが、(a) 初期値設定テーブルSETTABLEに基づいて初期設定処理を実行すること、及び、(b) 初期値設定テーブルSETTABLEの内容については、図20の実施例も、以下に説明する内容と実質的に同じである。 FIG. 34 is a diagram illustrating the processing in such a case, and the setting values to be set in the initial setting process (ST3) are summarized in the setting value table SETTABLE stored in the control memory 53 (PROGMROM). . Although the explanation is omitted in step ST3 of FIG. 20, (a) executing the initial setting process based on the initial value setting table SETTABLE, and (b) the contents of the initial value setting table SETTABLE are as follows. , the embodiment of FIG. 20 is also substantially the same as described below.

そして、何れの実施例でも、設定値テーブルSETTABLEは、VDPレジスタRGijのレジスタアドレス値と、そのレジスタRGijへの設定値を一組みとした複数組(N組)で構成されている。特に限定されないが、レジスタアドレス値は16bit長、設定値は32bit長に固定化されており、各々が固定長であることで、初期値設定テーブルSETTABLEのデータ容量は、6×Nバイト(=48t×Nbit)長、VDPレジスタRGijはN個となっている。 In any of the embodiments, the set value table SETTABLE is composed of a plurality of sets (N sets) each including a register address value of the VDP register RGij and a set value for the register RGij. Although not particularly limited, the register address value is fixed to 16 bits long, and the setting value is fixed to 32 bits long, and each has a fixed length, so the data capacity of the initial value setting table SETTABLE is 6 x N bytes (=48t ×Nbit) length, and there are N VDP registers RGij.

但し、図20の実施例では、初期値設定テーブルSETTABLEが一回だけREADアクセスされ、全N個のVDPレジスタRGijが一回だけ初期設定されるのに対して、図34の実施例では、全N個のVDPレジスタRGijは、一回だけ初期設定されるN1個のVDPレジスタRGijと、一回目の初期設定の後、1/30秒毎に繰り返し初期設定されるN2個のVDPレジスタRGijとに区分される。 However, in the embodiment of FIG. 20, the initial value setting table SETTABLE is accessed only once, and all N VDP registers RGij are initialized only once, whereas in the embodiment of FIG. The N VDP registers RGij are divided into N1 VDP registers RGij, which are initialized only once, and N2 VDP registers RGij, which are repeatedly initialized every 1/30 seconds after the first initialization. It is classified.

そして、図34の実施例では、繰り返し初期設定される設定値には、(1)DMA転送動作についての設定値、(2)VRAMに対する設定値、(3)割込みに関する設定値、(4)表示回路74に関する設定値、及び、(5)描画回路76に関する設定値が含まれている。 In the embodiment of FIG. 34, the settings values that are repeatedly initialized include (1) settings for DMA transfer operation, (2) settings for VRAM, (3) settings for interrupts, and (4) display. Setting values regarding the circuit 74 and (5) setting values regarding the drawing circuit 76 are included.

(1)DMA転送動作に関する設定値は、例えば、ステップST41で規定する動作条件の前提条件となる設定値であり、図23(c)や図27(c)における動作条件の違いに拘わらず固定的に適用される基本設定値である。具体的には、(a) DAMC回路60に内蔵されたFIFOバッファ(N段)がどれだけ開放されると、転送元に転送要求をするかの閾値(例えば全体の1/2段)、(b) 転送先や転送元とハンドシェイク動作をするか否か(例えばNo)などの設定値が含まれる。 (1) Setting values related to DMA transfer operation are, for example, setting values that are prerequisites for the operating conditions specified in step ST41, and are fixed regardless of the difference in operating conditions in FIG. 23(c) or FIG. 27(c). These are the basic settings that are applied. Specifically, (a) how much of the FIFO buffer (N stages) built in the DAMC circuit 60 must be released to make a transfer request to the transfer source (for example, 1/2 stage of the total); b) Contains setting values such as whether to perform handshake operation with the transfer destination and transfer source (for example, No).

また、(2)VRAMの設定値には、リフレッシュ動作のリフレッシュ周期が含まれている。内蔵VRAM71は、このリフレッシュ周期で動作することで、記憶データの自然放電が防止される。次に、(3)割込みに関する設定値には、割込み要求要因となるエラー種別や、割込み信号の出力端子(内蔵CPUの内部端子)を特定する値であり、例えば、(a) 描画回路76がフリーズすればCPU回路51に対して描画異常割込みが発生すること(割込み許可状態、図20(d)参照)、(b) 表示装置DS1のVBLANK開始時に、CPU回路51に対してVBLANK開始割込みが発生すること(図20(c)参照)などの設定値が含まれている。 Furthermore, (2) the VRAM setting value includes the refresh cycle of the refresh operation. By operating the built-in VRAM 71 at this refresh cycle, spontaneous discharge of stored data is prevented. Next, (3) setting values related to interrupts include values that specify the error type that causes the interrupt request and the output terminal of the interrupt signal (internal terminal of the built-in CPU). For example, (a) when the drawing circuit 76 If it freezes, a drawing abnormality interrupt will be generated to the CPU circuit 51 (interrupt enabled state, see FIG. 20(d)); (b) When the display device DS1 starts VBLANK, a VBLANK start interrupt will be generated to the CPU circuit 51. It includes setting values such as what will occur (see FIG. 20(c)).

なお、本実施例は、CPU回路51とVDP回路52とが統合された複合チップ50を使用するが、別チップとする場合には、VDP回路52が割込み信号を出力する出力端子は、CPU回路51の外部割込み入力端子に接続される。 Note that this embodiment uses a composite chip 50 in which a CPU circuit 51 and a VDP circuit 52 are integrated, but if they are separate chips, the output terminal from which the VDP circuit 52 outputs an interrupt signal is connected to the CPU circuit. 51 external interrupt input terminal.

また、(4)表示回路に関する設定値には、(a) 各フレームバッファの水平/垂直開始位置(SS31参照)、(b) 各表示装置の水平同期信号に関する設定値、(c) 各表示装置の垂直同期信号に関する設定値、(d) スケーラについての設定値、(e) 各表示装置の水平画素数と表示ライン数の設定値(SS30)などが含まれている。 (4) Setting values related to the display circuit include (a) horizontal/vertical start position of each frame buffer (refer to SS31), (b) setting values related to the horizontal synchronization signal of each display device, (c) setting values for each display device. (d) setting values for the scaler, (e) setting values for the number of horizontal pixels and display lines of each display device (SS30), etc.

(5)描画回路76に関する設定値には、描画異常割込みが発生するまでのフリーズ時間の設定値が含まれている。この設定値は、例えば、垂直同期信号の周期の整数倍として設定される。図20(d)において説明した通り、ここで規定されたフリーズ期間、描画回路76がVRAMをアクセスしない場合には、描画回路76が個別的にリセットされ(ST16b)、描画回路76に対する動作パラメータが再設定される(ST16c)。 (5) The setting values regarding the drawing circuit 76 include the setting value of the freeze time until a drawing abnormality interrupt occurs. This setting value is set, for example, as an integral multiple of the period of the vertical synchronization signal. As explained in FIG. 20(d), if the drawing circuit 76 does not access the VRAM during the freeze period defined here, the drawing circuit 76 is individually reset (ST16b), and the operating parameters for the drawing circuit 76 are It is reset (ST16c).

上記の通り、この実施例では、重要な設定値については、所定時間毎に繰り返し再設定されるので、ノイズなどの影響で、万一、設定値のビット化けが生じても、その異常が直ちに回復される。また、この実施例では、図20の実施例の場合のように、第1種や第2種の禁止設定レジスタRGijを書込み禁止状態に禁止設定しないので、やや煩雑な禁止解除処理を経ることなく、自由に書換え処理を実行することができる。 As mentioned above, in this embodiment, important setting values are repeatedly reset at predetermined intervals, so even if the bits of the setting values become garbled due to the influence of noise, etc., the abnormality can be immediately corrected. will be recovered. Furthermore, in this embodiment, unlike the embodiment shown in FIG. 20, the first type and second type inhibition setting registers RGij are not set to a write-protected state, so there is no need to go through a somewhat complicated prohibition release process. , the rewriting process can be executed freely.

以上、ここまで実施例では、(1a)所定のフリーズ時間を経過する描画回路76の動作フリーズ状態か、(1b)描画回路76が、ディスプレイリストDLに不合理な指示コマンドを検出した場合には、VDP回路52の描画回路76からCPU回路51に対して、描画異常割込みが生じる構成について説明した(図20(d)参照)。そして、描画異常割込み時には、割込み原因を判定した上で(図20(d)のST16a)、その判定結果に応じた処理を実行する構成(ST16c~ST16d)を採った。 As described above, in the embodiment so far, (1a) the operation of the drawing circuit 76 is in a frozen state after a predetermined freeze time has elapsed, or (1b) the drawing circuit 76 detects an unreasonable instruction command in the display list DL. , a configuration in which a drawing abnormal interrupt occurs from the drawing circuit 76 of the VDP circuit 52 to the CPU circuit 51 has been described (see FIG. 20(d)). When a drawing abnormality interrupt occurs, a configuration is adopted in which the cause of the interrupt is determined (ST16a in FIG. 20(d)), and processing is executed according to the determination result (ST16c to ST16d).

しかし、本発明者の実験によれば、ノイズの多い過酷な動作条件下でも、描画異常割込みが生じることは殆ど無い。そこで、制御負担を軽減化するためには、割込み原因判定処理(ST16a)を設けることなく、画一的に無限ループ処理に移行させるか(図25(b)参照)、パターンチェック回路CHK(図6(b)参照)を機能させるのも好適である(図25(c)のST17a参照)。 However, according to the inventor's experiments, even under harsh operating conditions with a lot of noise, abnormal drawing interrupts almost never occur. Therefore, in order to reduce the control burden, it is necessary to uniformly shift to infinite loop processing without providing the interrupt cause determination processing (ST16a) (see FIG. 25(b)), or to shift to the pattern check circuit CHK (see FIG. 6(b)) is also suitable (see ST17a in FIG. 25(c)).

この場合には、その後、所定時間後にWDT回路58が起動して、複合チップ50全体がリセットされるか、或いは、その後、直ちにVDP回路52だけがリセットされることになる(図6(b)参照)。なお、リセットキーワードの出力処理(ST17a)に基づき、VDP回路52がリセットされた場合には、そのリセット動作の正常終了を確認すると共に、戻り番地を記憶するスタック領域を整理した後(ST17b)、例えば、ステップST4かST13の処理に移行させることになる。 In this case, either the WDT circuit 58 is activated after a predetermined period of time and the entire composite chip 50 is reset, or only the VDP circuit 52 is immediately reset (see FIG. 6(b)). reference). Note that when the VDP circuit 52 is reset based on the reset keyword output processing (ST17a), after confirming that the reset operation has completed normally and arranging the stack area for storing the return address (ST17b), For example, the process will proceed to step ST4 or ST13.

また、本実施例では、異常判定処理(図20や図25のST5)を設けて描画回路76の動作完了を1/30秒毎に判定しているので、更に制御負担を軽減するべく、実質的に何も実行しない描画異常割込み処理(図25(d))を設けても良い。図25(d)に示す通り、この構成では、描画異常割込み時、直ちにIRET(Interrupt Return)命令を実行してメイン制御処理に戻るので、描画回路76のフリーズ状態などは、そのまま継続されることになる。しかし、本実施例では、図20や図25のステップST5の処理で、フレーム落ち回数を、異常フラグERでカウントしており、いずれWDT回路58か、パターンチェック回路CHKが起動するので、図25(d)の構成は、図25(b)や図25(c)の構成と実質的に同じである。 In addition, in this embodiment, an abnormality determination process (ST5 in FIGS. 20 and 25) is provided to determine whether the operation of the drawing circuit 76 is completed every 1/30 seconds. Alternatively, a drawing abnormality interrupt process (FIG. 25(d)) may be provided that does not execute anything. As shown in FIG. 25(d), in this configuration, when a drawing abnormality interrupt occurs, the IRET (Interrupt Return) command is immediately executed and the process returns to the main control process, so that the frozen state of the drawing circuit 76 can continue as it is. become. However, in this embodiment, the number of dropped frames is counted by the abnormality flag ER in the process of step ST5 in FIGS. The configuration in (d) is substantially the same as the configurations in FIG. 25(b) and FIG. 25(c).

また、制御負担を更に軽減化するため、初期設定時(図20や図25のステップST3参照)に、VDP回路52を描画異常割込み禁止状態に設定するのも好適である。なお、電源投入時のデフォルト状態が、描画異常割込み禁止状態である構成を採る場合には、(a) 異常割込みの許可/禁止を規定する許否値を設定すべき所定のシステム制御レジスタRGijを書込み禁止状態に設定するか、或いは、(b) 所定時間毎に、前記のシステム制御レジスタRGijに禁止値を繰り返し書込むことになる。 Furthermore, in order to further reduce the control burden, it is also preferable to set the VDP circuit 52 to a drawing abnormality interrupt disabled state at the time of initial setting (see step ST3 in FIGS. 20 and 25). In addition, when adopting a configuration in which the default state at power-on is a state in which drawing abnormal interrupts are disabled, (a) write a predetermined system control register RGij that should set a permission value that specifies permission/prohibition of abnormal interrupts; Either the prohibited state is set, or (b) the prohibited value is repeatedly written to the system control register RGij at predetermined time intervals.

この構成は、一見、図25(b)や図25(b)の構成より優れているようにも思われる。しかし、この種の遊技機の全機種について、(a) 描画異常割込みを、画一的に禁止状態に設定する構成より、(b) 画一的に許可状態に設定した上で、機種毎に図20(d)の構成を採るか、図25(b)~(d)の何れかの構成を採るかを選択する方が、制御プログラムの汎用化の観点からは優れている。なお、前者の構成(a) では、機種毎に、初期設定ルーチン(図20や図25のステップST3参照)などを変える必要性(煩雑さ)が生じる。 At first glance, this configuration seems superior to the configurations in FIG. 25(b) and FIG. 25(b). However, for all models of gaming machines of this type, (a) drawing abnormal interrupts are uniformly set to a disabled state, rather than (b) uniformly set to an enabled state and then changed for each model. It is better to select either the configuration shown in FIG. 20(d) or any of the configurations shown in FIGS. 25(b) to (d) from the viewpoint of generalization of the control program. Note that in the former configuration (a), it is necessary (complicated) to change the initial setting routine (see step ST3 in FIGS. 20 and 25) for each model.

なお、更なる変更実施例として、複合チップ50に内蔵された音声回路SNDを活用するのも好適である。図35は、このような実施例を示すブロック図である。図35を、図6と対比すれば明らかな通り、この実施例では、音声プロセッサ27と、音声メモリ28が不要となり、且つ、CPU回路51のデータバス(8bit分)とアドレスバス(2bit分)について、音声回路への外部配線が不要となる。また、アンダーフロー信号UFの伝送線も存在しないので、このUF伝送線に重畳するノイズによって、複合チップが誤って異常リセットされるおそれも回避される。 In addition, as a further modified embodiment, it is also suitable to utilize the audio circuit SND built in the composite chip 50. FIG. 35 is a block diagram showing such an embodiment. As is clear from comparing FIG. 35 with FIG. 6, this embodiment eliminates the need for the audio processor 27 and the audio memory 28, and also eliminates the need for the data bus (8 bits) and address bus (2 bits) of the CPU circuit 51. Therefore, external wiring to the audio circuit is not required. Furthermore, since there is no transmission line for the underflow signal UF, the possibility that the composite chip is erroneously and abnormally reset due to noise superimposed on this UF transmission line is also avoided.

また、この実施例では、音声メモリ28を排除することに対応して、音声メモリ28に記憶すべき音声データを、CGROM53に格納している。図36(d)は、CGROM53の記憶内容を図示したものであり、CGROM53には、サウンドROMヘッダ情報と、フレーズヘッダ情報HDと、一群の音声データを圧縮した多数のフレーズデータPHと、音声回路SNDの動作を規定する多数のサウンドコマンドSCMDと、が固定的に記憶されている。 Furthermore, in this embodiment, in response to eliminating the audio memory 28, the audio data to be stored in the audio memory 28 is stored in the CGROM 53. FIG. 36(d) shows the storage contents of the CGROM 53. The CGROM 53 includes sound ROM header information, phrase header information HD, a large number of phrase data PH obtained by compressing a group of audio data, and an audio circuit. A large number of sound commands SCMD that define the operation of the SND are permanently stored.

図示の通り、サウンドROMヘッダ情報は、先頭番地SNDstから記憶されており、これに続いて、データサイズHDvlのフレーズヘッダ情報HDが、先頭番地HDstから記憶されている。また、データサイズPHvlのフレーズデータPHが、先頭番地PHstから記憶され、データサイズSCMDvlのサウンドコマンドSCMDが、先頭番地SCMDstから記憶されている。 As shown in the figure, the sound ROM header information is stored starting from the first address SNDst, and subsequently, phrase header information HD of data size HDvl is stored starting from the first address HDst. Further, phrase data PH of data size PHvl is stored from the first address PHst, and sound command SCMD of data size SCMDvl is stored from the first address SCMDst.

ここで、サウンドROMヘッダ情報とは、具体的には、フレーズヘッダHD領域の先頭アドレスHDstと、フレーズヘッダHD領域のデータサイズHDvlと、フレーズデータ領域PHの先頭アドレスPHstと、フレーズデータ領域PHのデータサイズPHvlと、サウンドコマンド領域SCMの先頭アドレスSCMDstと、サウンドコマンド領域SCMDのデータサイズSCMDvlと、を意味する。そして、これらの情報は、電源投入時に音声回路SNDの内部回路に取得されるようになっている(ステップSD4参照)。 Here, the sound ROM header information specifically includes the start address HDst of the phrase header HD area, the data size HDvl of the phrase header HD area, the start address PHst of the phrase data area PH, and the start address PHst of the phrase data area PH. It means the data size PHvl, the start address SCMDst of the sound command area SCM, and the data size SCMDvl of the sound command area SCMD. These pieces of information are acquired by the internal circuit of the audio circuit SND when the power is turned on (see step SD4).

また、フレーズヘッダ情報HDとフレーズデータPHは、電源投入時に、外付けDRAM54に転送することで、その後のREADアクセスの迅速化を図っている(ステップSD6)。このように、本実施例では、音声プロセッサ27と、音声メモリ28を排除して、小型化と製造コストの抑制を図ると共に、安価で大容量化が容易である一方、アクセス速度の遅いCGROM53の弱点を克服している。 Furthermore, the phrase header information HD and the phrase data PH are transferred to the external DRAM 54 when the power is turned on, thereby speeding up subsequent READ access (step SD6). As described above, in this embodiment, the audio processor 27 and the audio memory 28 are eliminated to reduce the size and manufacturing cost, and while it is inexpensive and easy to increase the capacity, the CGROM 53 has a slow access speed. Overcoming weaknesses.

以上を踏まえて、電源投入時の初期設定処理について図36(a)に基づいて説明する。なお、これらの処理は、図20や図25のステップST3の処理の一部として実行される。 Based on the above, the initial setting process when the power is turned on will be explained based on FIG. 36(a). Note that these processes are executed as part of the process of step ST3 in FIGS. 20 and 25.

図6(b)に関して説明した通り、電源投入時やWDT58が起動する異常リセット時には、リセット経路2の経路で音声回路SNDがハードウェアリセットされる(ステップSD1)。また、演出制御CPU63が、音声回路SNDの異常を検出した場合には、リセット経路4B又は4Cの経路で音声回路SNDがハードウェアリセットされる(ステップSD1)。なお、演出制御CPU63がパターンチェック回路CHKを機能させることで、音声回路SNDが、他の回路(72,73,74・・)と共にハードウェアリセットされる場合もある(ステップSD1)。 As explained with reference to FIG. 6(b), when the power is turned on or during an abnormal reset when the WDT 58 is activated, the audio circuit SND is hardware reset through the reset path 2 (step SD1). Further, when the production control CPU 63 detects an abnormality in the audio circuit SND, the audio circuit SND is hardware reset via the reset path 4B or 4C (step SD1). Note that the audio circuit SND may be hardware reset together with other circuits (72, 73, 74, . . . ) by the effect control CPU 63 operating the pattern check circuit CHK (step SD1).

これら何れの場合でも、次に、演出制御CPU63は、リセット動作が正常に完了したことを確認した上で(ステップSD2)、最初に、サウンドデータ領域の先頭アドレスSNDstを、音声回路SNDのシステム制御レジスタRGijに設定する(ステップSD3)。次に、所定のシステム制御レジスタに所定値を設定することで、サウンドROMヘッダ情報HDを内部回路に記憶させる。なお、サウンドROMヘッダ情報HDは、前記した6要素(HDst,HDvl,PHst,PHvl,SCMDst,SCMDvl)であり、図36(c)に記載の通りである。 In any of these cases, next, the production control CPU 63 confirms that the reset operation has been completed normally (step SD2), and then first sets the start address SNDst of the sound data area to the system control of the audio circuit SND. It is set in register RGij (step SD3). Next, by setting a predetermined value in a predetermined system control register, the sound ROM header information HD is stored in the internal circuit. Note that the sound ROM header information HD includes the six elements (HDst, HDvl, PHst, PHvl, SCMDst, SCMDvl) described above, as shown in FIG. 36(c).

そして、ここまでの処理が正常に動作したことを確認し、万一、正常に終了できない場合には、リセット経路4B又は4Cの経路で、音声回路を個別的にリセットする。但し、通常は、正常終了を確認できるので、続いて、データ転送回路72を利用して、フレーズヘッダ情報HDと、フレーズデータPHを外付けDRAM54に転送する(ステップSD6)。なお、データ転送回路72には、転送先の先頭アドレスBGNと、転送元の先頭アドレスHDstと、転送データ総量HDvl+FDvlなどが適宜に指定される。 Then, it is confirmed that the processing up to this point has operated normally, and if by any chance it cannot be completed normally, the audio circuits are individually reset using the reset path 4B or 4C. However, normally, since normal completion can be confirmed, the data transfer circuit 72 is then used to transfer the phrase header information HD and the phrase data PH to the external DRAM 54 (step SD6). Note that the data transfer circuit 72 is appropriately designated with the top address BGN of the transfer destination, the top address HDst of the transfer source, the total amount of transfer data HDvl+FDvl, etc.

次に、フレーズヘッダ情報HDとフレーズデータPHは、CGROM55ではなく、外付けDRAM54に存在することを、所定のシステム制御レジスタRGijに設定した上で(ステップSD7)、外付けDRAM54に転送した一群のデータの先頭アドレスBGN(サウンドRAM先頭アドレス)を、所定のシステム制御レジスタに設定する(ステップSD8)。その後、その他の初期設定処理を終えることで(ステップSD9)、音声制御動作が可能となる。 Next, after setting in a predetermined system control register RGij that the phrase header information HD and phrase data PH exist in the external DRAM 54 instead of the CGROM 55 (step SD7), the group of phrase data PH transferred to the external DRAM 54 is set. The data start address BGN (sound RAM start address) is set in a predetermined system control register (step SD8). Thereafter, by completing other initial setting processing (step SD9), voice control operations become possible.

先に説明した通り、サウンドROMヘッダ情報、つまり、6個の情報(HDst,HDvl,PHst,PHvl,SCMDst,SCMDvl)は、音声回路SNDの内部回路に保存されているので(ステップSD4)、その後、演出制御CPU63は、フレーズデータなどの必要な情報を、サウンドRAM先頭アドレスBGNとの相対値で指示することができ、この指示を受けた音声回路SNDは、相対アドレス値を絶対アドレス値に変換して、必要な音声処理を実行することになる。フレーズデータなどの音声データは、CGROM55ではなく、外付けDRAM54からREADアクセスされるので、複雑高度な音声演出であっても、これを円滑に実現することができる。 As explained earlier, the sound ROM header information, that is, the six pieces of information (HDst, HDvl, PHst, PHvl, SCMDst, SCMDvl) are stored in the internal circuit of the audio circuit SND (step SD4), and then , the production control CPU 63 can instruct necessary information such as phrase data in a relative value to the sound RAM start address BGN, and the audio circuit SND that receives this instruction converts the relative address value into an absolute address value. Then, the necessary audio processing will be performed. Since audio data such as phrase data is read-accessed not from the CGROM 55 but from the external DRAM 54, even complex and highly advanced audio effects can be smoothly realized.

以上、各種の実施例について詳細に説明したが、弾球遊技機や回胴遊技機などに限定されないだけでなく、具体的な記載内容についても、何ら本発明を限定しない。例えば、図15に示すパワーオンリセット動作は、制御メモリ53の0x00000000番地以降に確保されたベクタテーブルVECTの情報に基づいて起動されたが、HBTSL 端子=Hレベルに設定すると共に、CGROM55の先頭領域にベクタテーブルVECTを配置するのも好適である。図37(a)や図37(b)は、このような場合のアドレスマップを図示したものであり、演出制御CPU63のアドレス空間CS0は、CGROM55の一部(先頭領域)に確保されている。 Although various embodiments have been described in detail above, the present invention is not limited to pinball game machines, spinning drum game machines, etc., and the present invention is not limited to specific descriptions. For example, the power-on reset operation shown in FIG. 15 is activated based on the information of the vector table VECT secured from address 0x00000000 onward in the control memory 53. It is also preferable to place the vector table VECT in . FIGS. 37(a) and 37(b) illustrate address maps in such a case, and the address space CS0 of the production control CPU 63 is secured in a part (head area) of the CGROM 55.

なお、CGROM55の本体部は、演出制御CPU63からアクセスされることはなく(アクセス不可)、専らVDP回路52からアクセスされるので、アドレス空間CSiに位置付けられることない。先に説明した通り、CGROM55の本体部を、複数のメモリデバイスで構成することもでき、このような場合には、図17(a)のステップSP20の処理によって、SPA0~SPA1のデバイス区間に区分することで、メモリデバイスの特性に適合した最適なREADアクセスが可能となる。 Note that the main body of the CGROM 55 is not accessed by the performance control CPU 63 (access is not possible) and is accessed exclusively from the VDP circuit 52, so it is not located in the address space CSi. As explained above, the main body of the CGROM 55 can be composed of a plurality of memory devices, and in such a case, it is divided into device sections SPA0 to SPA1 by the process of step SP20 in FIG. 17(a). This enables optimal READ access that matches the characteristics of the memory device.

何れにしても、HBTSL 端子=Hレベルに設定されている場合には、これに対応して、CGROM55のメモリ種別と、バス幅(64/32/16bit)とが、2bit長のHBTBWD端子と、4bit長のHBTRMSL 端子への固定的な入力値に基づいて予め特定されている必要がある。 In any case, when the HBTSL terminal is set to H level, the memory type and bus width (64/32/16 bits) of the CGROM55 are set to 2-bit long HBTBWD terminal. It must be specified in advance based on a fixed input value to the 4-bit long HBTRMSL terminal.

そして、この実施例では、ベクタテーブルVECTに続いて、CGROM55からのREADアクセスを最適化するためのバスパラメータをCGROM55の先頭領域に記憶されておく必要がある。なお、必須ではないが、演出制御プログラムの違法解析を困難にするため難読化した場合に、それを解読するための難読化パラメータを記憶させておくのも好適である。 In this embodiment, following the vector table VECT, bus parameters for optimizing READ access from the CGROM 55 must be stored in the top area of the CGROM 55. Although not essential, it is also suitable to store obfuscation parameters for deciphering the performance control program when it is obfuscated to make illegal analysis difficult.

このような構成を採った場合には、電源リセット後、リセットアサート期間に、以下の動作1~動作4がプログラム処理を経ることなく自動的に実行される。先ず、HBTRMSL 端子への入力値に基づいてアドレス空間CS0のバス幅が特定され、また、BTBWD 端子への入力値に基づいてメモリ種別が自動的に特定され、所定のVDPレジスタRGijに各々設定される(動作1)。この場合のメモリ種別は、パラレルI/F(Interface )形式を採るメモリ素子、シーケンシャルI/F形式を採るメモリ素子に大別される。 When such a configuration is adopted, after the power is reset, the following operations 1 to 4 are automatically executed during the reset assertion period without going through program processing. First, the bus width of the address space CS0 is specified based on the input value to the HBTRMSL pin, and the memory type is automatically specified based on the input value to the BTBWD pin, and each is set in a predetermined VDP register RGij. (Action 1). The types of memory in this case are roughly divided into memory devices that use a parallel I/F (Interface) format and memory devices that use a sequential I/F format.

次に、CGROM55に記憶されている難読化パラメータをロードし、難読化を解除するために必要な情報が内部回路内に自動設定される(動作2)。また、CGROM55に記憶されているバスパラメータが自動的にVDPレジスタRGijに取得される(動作3)。なお、この動作3は、図18のステップSP63のプログラム処理に対応する動作であり、内部回路によって自動的に実行される。 Next, the obfuscation parameters stored in the CGROM 55 are loaded, and information necessary for canceling the obfuscation is automatically set in the internal circuit (operation 2). Furthermore, the bus parameters stored in the CGROM 55 are automatically acquired into the VDP register RGij (operation 3). Note that this operation 3 corresponds to the program processing of step SP63 in FIG. 18, and is automatically executed by the internal circuit.

そして最後に、動作1~3で設定されたバスパラメータを実効化するべく、図18のステップSP64のプログラム処理に対応する動作が内部回路によって、自動的に実行される(動作4)。そして、バスパラメータの設定が実効化されたタイミングで、ベクタテーブルの情報に基づいてプログラムカウンタPCと、スタックポインタSPの値が自動的に設定され、ブートプログラム(初期設定プログラム)の実行が開始される。 Finally, in order to implement the bus parameters set in operations 1 to 3, the internal circuit automatically executes an operation corresponding to the program processing in step SP64 in FIG. 18 (operation 4). Then, at the timing when the bus parameter settings are implemented, the values of the program counter PC and stack pointer SP are automatically set based on the information in the vector table, and the execution of the boot program (initial setting program) is started. Ru.

この図37(a)に示す構成によれば、図15(a)のステップSP1のプログラム処理も不要となり、自動的に動作1~動作4が実行されるので、プログラム処理負担が大きく軽減される。そして、この場合も、初期設定プログラムPinitの動作に基づいて、ベクタハンドラVopt以降のプログラムやデータが適宜なRAM領域に転送される。 According to the configuration shown in FIG. 37(a), the program processing at step SP1 in FIG. 15(a) is also unnecessary, and operations 1 to 4 are automatically executed, so that the program processing burden is greatly reduced. . Also in this case, programs and data after the vector handler Vopt are transferred to an appropriate RAM area based on the operation of the initial setting program Pinit.

なお、ベクタハンドラVopt以降のプログラムやデータは、必ずしもCGROM55の先頭領域に記憶させておく必要はなく、例えば、制御メモリ53に記憶させておくのでも良い(図37(b))。また、ベクタハンドラVopt以降のプログラムやデータは、必ずしもRAM領域に転送する必要はなく、転送しない場合には、初期化設定プログラムにおけるメモリセクション初期化処理(図15のSP8)が不要となる。 Note that the programs and data after the vector handler Vopt do not necessarily need to be stored in the top area of the CGROM 55, and may be stored in the control memory 53, for example (FIG. 37(b)). Further, the programs and data after the vector handler Vopt do not necessarily need to be transferred to the RAM area, and if they are not transferred, the memory section initialization process (SP8 in FIG. 15) in the initialization setting program is unnecessary.

また、Vブランクタイミングと、有意な画像データの送信終了タイミングとを必ずしも一致させる必要はない。すなわち、図14(f)に示す表示領域の左下端点(〇印)のタイミングで、画像データの送信を終了させることは何ら必要ない。要するに、表示装置側から要求される待機時間WTh/WRvの仕様や、水平/垂直同期信号HS/Vsの仕様を満たせば、それで足りる。 Further, it is not necessary to make the V blank timing and the transmission end timing of significant image data necessarily coincide with each other. That is, there is no need to end the transmission of image data at the timing of the lower left end point (circle mark) of the display area shown in FIG. 14(f). In short, it is sufficient to satisfy the specifications of the standby time WTh/WRv and the horizontal/vertical synchronization signals HS/Vs required by the display device.

図39(a)は、このような実施例を説明する図面であり、例えば、表示回路74Aの動作を示している。この実施例でも、メイン表示装置DS1の仕様に対応して、ドットクロックDCKの周波数Fdotは、108MHzと規定される。また、フレームレートFRを1/60秒に一致させるために、THc×TVl/Fdot=1/60とする必要があり、ここでも、図14(f)の場合と同様に、水平同期のサイクル数THcを1662クロック、垂直同期のライン数TVlを1083ラインとしている。 FIG. 39(a) is a drawing for explaining such an embodiment, and shows, for example, the operation of the display circuit 74A. In this embodiment as well, the frequency F dot of the dot clock DCK is defined as 108 MHz in accordance with the specifications of the main display device DS1. In addition, in order to match the frame rate FR to 1/60 seconds, it is necessary to set THc×TVl/F dot = 1/60, and here, as in the case of FIG. 14(f), the horizontal synchronization cycle The number THc is 1662 clocks, and the number TVl of vertical synchronization lines is 1083 lines.

また、図示の実施例では、一般の表示装置にも対応できるよう、表示装置の仕様に対応して、水平同期信号HSと垂直同期信号VSを出力している。図示例では、水平同期信号HSのパルス幅が100クロック分であり、水平フロントポーチFPhは、110(=10+100)クロック、水平バックポーチBPhは172クロックに設計されている。また、垂直同期信号VSのパルス幅は、10ライン分であり、垂直フロントポーチFPvは20(=10+10)ライン、垂直バックポーチBPvは291ラインに設計されている。 Further, in the illustrated embodiment, the horizontal synchronizing signal HS and the vertical synchronizing signal VS are outputted in accordance with the specifications of the display device so that it can be used with general display devices. In the illustrated example, the pulse width of the horizontal synchronizing signal HS is 100 clocks, the horizontal front porch FPh is designed to be 110 (=10+100) clocks, and the horizontal back porch BPh is designed to be 172 clocks. Further, the pulse width of the vertical synchronizing signal VS is designed to be 10 lines, the vertical front porch FPv is designed to be 20 (=10+10) lines, and the vertical back porch BPv is designed to be 291 lines.

但し、図39(a)(b)に示す実施例では、〇印で示すVブランク開始タイミングより先に出力動作を終えるため、垂直待機時間WTvを49ライン、水平待機時間WThを372クロックとしている。したがって、この実施例によれば、一フレームの画像更新処理が終わった後、10ライン分の時間(154μS)経過後にVブランク開始タイミングが到来することになり、如何なる動作条件でも画像更新処理が確実化される(図39(b)参照)。 However, in the embodiment shown in FIGS. 39(a) and 39(b), the vertical standby time WTv is set to 49 lines and the horizontal standby time WTh is set to 372 clocks in order to finish the output operation before the V blank start timing indicated by the circle. . Therefore, according to this embodiment, the V blank start timing will arrive after the time for 10 lines (154 μS) has elapsed after the image update process for one frame is completed, and the image update process can be performed reliably under any operating conditions. (see FIG. 39(b)).

このような動作は、特に、他の表示回路に同期して付随的に動作する表示回路、例えば、表示回路74Aの動作に付随する表示回路74Bや表示回路74Cにおいて、好適に機能する。図39(c)~図39(e)は、この点を説明する図面であり、表示回路74BにおけるVブランク周期T2が、表示回路74AにおけるVブランク周期T1より長い場合を図示している(T1<T2)。 Such an operation works particularly well in a display circuit that operates incidentally in synchronization with another display circuit, for example, the display circuit 74B or the display circuit 74C that accompanies the operation of the display circuit 74A. 39(c) to 39(e) are drawings for explaining this point, and illustrate a case where the V blank period T2 in the display circuit 74B is longer than the V blank period T1 in the display circuit 74A (T1 <T2).

このような場合に、表示回路74AにおけるVブランク周期T1を表示回路74Aに付随させて動作させると、表示回路74Bにおける画像データの出力の完了前に、Vブランクが開始されることになり、画像欠損や不自然な表示動作が生じるおそれがある(図39(d))。一方、表示回路74Bを独立的に動作させたのでは、表示回路74Aの動作と同期する描画回路の動作タイミングと整合が取れなくなる。 In such a case, if the V blank period T1 in the display circuit 74A is operated in conjunction with the display circuit 74A, the V blank will start before the output of image data in the display circuit 74B is completed, and the image There is a risk that defects or unnatural display operations may occur (FIG. 39(d)). On the other hand, if the display circuit 74B were operated independently, it would not be possible to match the operation timing of the drawing circuit which is synchronized with the operation of the display circuit 74A.

そこで、表示回路74Aの動作に付随する表示回路74BのVブランク周期T2が、表示回路74AのVブランク周期T1より長い場合には、図39(a)(b)の場合と同様に、表示装置Bにおいて画像データの出力後に、十分な余裕時間が生じるよう、待機時間(垂直ブランク期間)を短く設定すればよい。この場合、待機時間を極端に短く設定しない限り、通常の液晶表示装置では、問題なく表示動作が実現される。 Therefore, when the V blank period T2 of the display circuit 74B accompanying the operation of the display circuit 74A is longer than the V blank period T1 of the display circuit 74A, the display device In B, the standby time (vertical blank period) may be set short so that there is sufficient margin time after outputting the image data. In this case, unless the standby time is set extremely short, a normal liquid crystal display device can perform display operations without problems.

なお、例えば、表示回路74Aの動作に付随する表示回路74BのVブランク周期T3が、表示回路74AのVブランク周期T1より短い場合にも、Vブランク周期T3の後に余分の待機期間が生じるが、全体としての待機時間を極端に長くならない限り、問題なく表示動作が実現される。 Note that, for example, even if the V blank period T3 of the display circuit 74B associated with the operation of the display circuit 74A is shorter than the V blank period T1 of the display circuit 74A, an extra standby period occurs after the V blank period T3. As long as the overall standby time is not extremely long, display operations can be realized without any problems.

以上、本発明の実施例について詳細に説明したが、具体的な記載内容は何ら本発明を限定しない。例えば、実施例では、もっぱらデュアルリンク伝送路について説明したが、機器構成を簡略化するには、シングルリンク伝送路を採用するのも好適である。 Although the embodiments of the present invention have been described in detail above, the specific contents of the description do not limit the present invention in any way. For example, in the embodiments, description has been given exclusively of dual link transmission lines, but in order to simplify the equipment configuration, it is also suitable to employ a single link transmission line.

シングルリンク伝送路の場合、ドットクロックDCKの周波数が、108MHzであれば、LVDSクロックCLKの周波数も108MHzとなる。なお、この場合も、ドットクロックDCKとLVDSクロックCLKは、発振器OSC2を共通の供給元とし、且つ、同一生成過程で生成するのが好適である。 In the case of a single link transmission path, if the frequency of the dot clock DCK is 108 MHz, the frequency of the LVDS clock CLK is also 108 MHz. In this case as well, it is preferable that the dot clock DCK and the LVDS clock CLK have the oscillator OSC2 as a common source and are generated in the same generation process.

また、前記の実施例とは相違して、VDP回路52のシステムクロックと、CPU回路51のCPU動作クロックの供給元を、単一の発振器OSC2に共通化するのも回路構成の簡素化する上で好適である。そして、共通の設定端子(3bit のPLLMD 端子)の設定値に基づいて、PLL回路の逓倍比を共通設定する構成を採れば、周波数設定処理が不要となり更に効果的である。 Further, unlike the above-mentioned embodiments, it is advantageous to use a single oscillator OSC2 as a common source for supplying the system clock of the VDP circuit 52 and the CPU operation clock of the CPU circuit 51 in order to simplify the circuit configuration. It is suitable for If a configuration is adopted in which the multiplication ratios of the PLL circuits are commonly set based on the setting value of a common setting terminal (3-bit PLLMD terminal), frequency setting processing becomes unnecessary and is even more effective.

この場合、CPU動作クロックを高速化したい要請にはやや反するが、VDP回路52の内部回路が許容する最高周波数のシステムクロックを採用し、これと同じ周波数のCPU動作クロックとするのが好適である。 In this case, although it is somewhat contrary to the desire to speed up the CPU operating clock, it is preferable to adopt the system clock with the highest frequency allowed by the internal circuit of the VDP circuit 52 and use the same frequency as the CPU operating clock. .

例えば、発振器OSC2の発振周波数が40MHzの場合、設定端子(3bit のPLLMD 端子)への設定値を5にすることで、システムクロックとCPU動作クロックを共通的に200MHz(=40MHz×5)に設定できる。この構成によれば、発振器OSC1が不要となり、回路構成を簡素化できだけでなく、やや煩雑なVDPレジスタへの設定処理も不要となる。なお、VDP回路52と、CPU回路51の動作周期が一致するメリットもある。 For example, if the oscillation frequency of the oscillator OSC2 is 40MHz, by setting the setting value to the setting terminal (3-bit PLLMD terminal) to 5, the system clock and CPU operation clock can be commonly set to 200MHz (=40MHz x 5). can. According to this configuration, the oscillator OSC1 is not required, which not only simplifies the circuit configuration but also eliminates the somewhat complicated setting process for the VDP register. Note that there is also an advantage that the operating cycles of the VDP circuit 52 and the CPU circuit 51 match.

GM 遊技機
DS1,DS2 表示装置
52 画像生成手段
51 演出制御手段
DL 描画リスト
76 描画回路
74 表示回路
72 データ転送回路
RGij 各種のレジスタ
ST1 第1手段
ST2 第2手段
ST3_SS34 第3手段
ST3_SS40 第4手段
ST3_SS32 第5手段
DCK ドットクロック
71 メモリ回路
GM Gaming machines DS1, DS2 Display device 52 Image generation means 51 Performance control means DL Drawing list 76 Drawing circuit 74 Display circuit 72 Data transfer circuit RGij Various registers ST1 First means ST2 Second means ST3_SS34 Third means ST3_SS40 Fourth means ST3_SS32 Fifth means DCK dot clock 71 memory circuit

Claims (1)

各種の指示コマンドを列記して、表示装置に表示すべき表示内容を特定するディスプレイリストを、所定の更新周期に対応して間欠的に発行する画像制御手段と、
前記画像制御手段が設定する所定の内蔵レジスタへの設定値と、前記指示コマンドとに基づいて動作して、所定の画像データを、所定のRWメモリに完成させる画像生成手段と、
前記画像データの基礎データとなる各種の圧縮データを記憶するCGメモリと、を有して構成され、
前記RWメモリには、所定ビット位置以下の下位ビットが0となる基点アドレスに基づいて、所定のメモリ領域が確保され前記圧縮データは、前記指示コマンドが特定するメモリ領域の所定の展開空間に展開されるよう構成され、
静止画の圧縮データを展開可能な第1メモリ領域の展開空間とは別の第2メモリ領域には、複数の動画の圧縮データを、動画ごとに展開可能な複数の展開空間が、前記指示コマンドに含まれる一意情報に基づいて各々確保される遊技機。
an image control means that intermittently issues a display list that lists various instruction commands and specifies display contents to be displayed on a display device in accordance with a predetermined update cycle;
image generating means that operates based on the instruction command and a set value to a predetermined built-in register set by the image control means to complete predetermined image data in a predetermined RW memory;
a CG memory that stores various compressed data serving as basic data of the image data;
A predetermined memory area is secured in the RW memory based on a base address where the lower bits below a predetermined bit position are 0, and the compressed data is stored in a predetermined expansion space of the memory area specified by the instruction command. configured to be deployed,
A second memory area separate from the expansion space of the first memory area in which compressed data of still images can be expanded has a plurality of expansion spaces in which compressed data of a plurality of moving images can be expanded for each video . Each gaming machine is secured based on the unique information contained in the game machine.
JP2020070877A 2020-04-10 2020-04-10 gaming machine Active JP7426890B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020070877A JP7426890B2 (en) 2020-04-10 2020-04-10 gaming machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020070877A JP7426890B2 (en) 2020-04-10 2020-04-10 gaming machine

Publications (3)

Publication Number Publication Date
JP2021166611A JP2021166611A (en) 2021-10-21
JP2021166611A5 JP2021166611A5 (en) 2023-04-17
JP7426890B2 true JP7426890B2 (en) 2024-02-02

Family

ID=78079352

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020070877A Active JP7426890B2 (en) 2020-04-10 2020-04-10 gaming machine

Country Status (1)

Country Link
JP (1) JP7426890B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009072470A (en) 2007-09-21 2009-04-09 Sankyo Co Ltd Game machine
JP2014039626A (en) 2012-08-21 2014-03-06 Fujishoji Co Ltd Game machine
JP2015112287A (en) 2013-12-11 2015-06-22 株式会社藤商事 Game machine

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009072470A (en) 2007-09-21 2009-04-09 Sankyo Co Ltd Game machine
JP2014039626A (en) 2012-08-21 2014-03-06 Fujishoji Co Ltd Game machine
JP2015112287A (en) 2013-12-11 2015-06-22 株式会社藤商事 Game machine

Also Published As

Publication number Publication date
JP2021166611A (en) 2021-10-21

Similar Documents

Publication Publication Date Title
JP7446506B2 (en) gaming machine
JP7426890B2 (en) gaming machine
JP7426889B2 (en) gaming machine
JP7426891B2 (en) gaming machine
JP7426892B2 (en) gaming machine
JP7437977B2 (en) gaming machine
JP7437978B2 (en) gaming machine
JP7341924B2 (en) gaming machine
JP7341923B2 (en) gaming machine
JP7437979B2 (en) gaming machine
JP7342213B2 (en) gaming machine
JP7358557B2 (en) gaming machine
JP7342214B2 (en) gaming machine
JP7358558B2 (en) gaming machine
JP7237411B2 (en) game machine
JP7479181B2 (en) Gaming Machines
JP7479182B2 (en) Gaming Machines
JP7012690B2 (en) Pachinko machine
JP2021137291A (en) Game machine
JP2021137292A (en) Game machine
JP2021137285A (en) Game machine
JP2021137283A (en) Game machine
JP2021137284A (en) Game machine
JP2021137281A (en) Game machine
JP2021137280A (en) Game machine

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200414

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230407

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230407

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231017

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231018

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231215

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240123

R150 Certificate of patent or registration of utility model

Ref document number: 7426890

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150