Gaming machine

The described gaming machine configuration, featuring a VDP, VDP circuit, CGROM, CPU, and DMAC circuit, addresses the challenge of executing stable and powerful prop and image effects, thereby enhancing player engagement and experience.

JP7686041B2Active Publication Date: 2025-05-30FUJI SHOJI CO LTD
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
JP2023144349
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-09-06
Publication Date
2025-05-30
Estimated Expiration
2041-03-17

AI Technical Summary

Technical Problem

Existing gaming machines struggle to execute powerful and stable prop and image effects, which are crucial for enhancing player engagement and experience.

Method used

The implementation of a gaming machine configuration that includes a VDP (Video Display Processor), a VDP circuit with operation control registers, a CGROM for storing basic image data, a CPU for program processing, and a DMAC circuit for parallel data transfer operations, allowing for optimized image rendering and effect execution.

Benefits of technology

This configuration enables the stable execution of powerful image effects and prop effects, improving the overall gaming experience by ensuring consistent and engaging visual interactions with players.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007686041000001
    Figure 0007686041000001
  • Figure 0007686041000002
    Figure 0007686041000002
  • Figure 0007686041000003
    Figure 0007686041000003
Patent Text Reader

Abstract

To provide a feed line in which a capacitor element free from error in rated voltage and capacitance is disposed.SOLUTION: In a game machine, a smoothing and / or decoupling capacitor in which a numeric character or symbol indicating nominal values of capacitor rated voltage and capacitance is displayed is surface mounted in at least part of a feed line for feeding a DC voltage to a backlight of a liquid crystal display device, a decoration lamp and a performance motor.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a gaming machine that performs a lottery process caused by a gaming operation and executes an image effect corresponding to the lottery result. In particular, the present invention relates to a gaming machine that can stably execute a powerful accessory effect and an image effect.

Background Art

[0002] A ball game machine such as a pachinko machine includes a symbol start port provided on a game board, a symbol display unit that displays a series of symbol variation modes by a plurality of display symbols, and a large winning port where an opening / closing plate is opened and closed. When a detection switch provided at the symbol start port detects the passage of a game ball, it enters a winning state. After the game ball is paid out as a bonus ball, the display symbols are varied for a predetermined time in the symbol display unit. Thereafter, when the symbols stop in a predetermined mode such as 7·7·7, it enters a jackpot state, and the large winning port is repeatedly opened, generating a gaming state advantageous to the player.

[0003] Whether or not to generate such a gaming state is determined by a jackpot lottery executed on the condition that a game ball has won at the symbol start port. The above symbol variation operation is based on this lottery result. For example, when the lottery result is a winning state, an effect operation called a reach action is executed for about 20 seconds, and then special symbols are aligned. On the other hand, in the case of a losing state, a similar reach action may also be executed. In this case, the player will watch the transition of the effect operation while strongly hoping for a jackpot state. Then, when a predetermined symbol is aligned on the stop line at the end of the symbol variation operation, it is guaranteed to the player that it is a jackpot state.

[0004] The pattern change operation is usually executed on the liquid crystal display unit (Patent Documents 1 to 4). The H×V dot pixels constituting the liquid crystal display unit are updated by being driven in synchronization with the operation clock CK (= dot clock DCK). Then, in order to smoothly execute the display update operation (frame update), for example, predetermined conditions such as those shown in Fig. 42(g) are required for the pulse widths of the horizontal synchronization signal HS and the vertical synchronization signal VS, and between each synchronization signal HS, Vs and the transmission timing of the image signal.

[0005] Under the illustrated driving conditions, first, the pulse width PWh of the horizontal synchronization signal HS is equivalent to 96 operation clocks CK. The front porch FPh and the back porch BPh required before and after the horizontal synchronization signal PWh are defined as 16 operation clocks CK and 48 operation clocks CK, respectively. On the other hand, the pulse width PWv of the vertical synchronization signal VS is equivalent to two lines. The front porch FPv and the back porch BPv required before and after the vertical synchronization signal VS are defined as 19 lines and 33 lines, respectively.

[0006] Then, the external control device that controls the liquid crystal display unit repeatedly supplies an image signal corresponding to the number of pixels on the display screen to the liquid crystal display unit together with the horizontal synchronization signal HS that satisfies the above horizontal conditions (PWh, FPh, BPh) and the horizontal synchronization signal HS that satisfies the above vertical conditions (PWvh, FPvh, BPvh).

Prior Art Documents

Patent Documents

[0007]

Patent Document 1

Patent Document 2

Patent Document 3

Patent Document 4

Patent Document 5

Patent Document 6

Summary of the Invention

Problems to be Solved by the Invention

[0008] By the way, In this type of gaming machine, it is particularly desired that powerful prop and image effects can be executed stably.

[0013] The present invention has been made in view of the above problems, be able to execute image effects stably and an object thereof is to provide a gaming machine that...

Means for Solving the Problems

[0014] To solve the above problems, the present invention includes a VDP (Video Display Processor) that generates an image signal necessary for image rendering, a VDP circuit having a VDP register in which set values that define the operation of the VDP are set, a CGROM that non-volatilely stores basic data of the image signal, a CPU that executes program processing, a DMAC (Direct Memory Access Controller) circuit that operates under the control of the CPU, and a CPU circuit having an operation control register in which set values that define the operation of various internal circuits including the DMAC circuit are set. The DMAC circuit is divided into a plurality of channel circuits, and as DMA transfer conditions when these operate in parallel, there are a arbitration mode in which arbitration is performed for each channel at a predetermined timing during the transfer operation, and a non-stop mode in which channel arbitration is not performed during the transfer operation, and these are configured to be selectable based on settings in the operation control register. A gaming machine in which an effect operation including image rendering is executed based on a display list issued by the CPU circuit to the VDP circuit and a setting operation of the CPU circuit to the VDP register. In a VDP memory space accessible by the VDP, a plurality of areas that can be used as expansion spaces for expanding the basic data are configured to be securable. On the other hand, in a CPU memory space accessible by the CPU, a plurality of address spaces located outside the CPU circuit and each capable of defining a data bus width are included. Automatic setting means for setting an initial value of the VDP register before the program processing of the CPU is started, and setting means (SP1 to SP2, SP6) for setting necessary setting values in the operation control register for access operations to the address spaces as program processing of the CPU after reset of the CPU. First transfer means (SP8) for DMA-transferring an effect control program for realizing the effect operation, which is realized by the operation of the DMAC circuit based on the program processing of the CPU, to any one of the address spaces, and second means for DMA-transferring data necessary for the effect operation, which is realized by appropriately operating the DMAC circuit by the effect control program DMA-transferred by the first transfer means. In order to optimize the access operation to the CGROM, the process of setting necessary operation parameters in the VDP register is configured to be executed by the effect control program before the start of the operation of the image effect.

Advantages of the Invention

[0018] According to the present invention described above, be able to execute image effects stably it is.

Brief Description of the Drawings

[0019]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

Figure 15

Figure 16

Figure 17

Figure 18

Figure 19

Figure 20

Figure 21

Figure 22

Figure 23

Figure 24

Figure 25

Figure 26

Figure 27

Figure 28

Figure 29

Figure 30

Figure 31

Figure 32

Figure 33

Figure 34

Figure 35

Figure 36

Figure 37

Figure 38

Figure 39

Figure 40

Figure 41

Figure 42

Figure 43

Figure 44

Figure 45

Figure 46

Figure 47

Figure 48

Figure 49

Figure 50

Figure 51

Figure 52

Figure 53

Figure 54

Figure 55

Figure 56

Figure 57

Figure 58

Figure 59

Figure 60

Figure 61

Figure 62

Figure 63

Figure 64

Mode for Carrying Out the Invention

[0020] Hereinafter, the present invention will be described in detail based on examples. Fig. 1 is a perspective view showing the pachinko machine GM of this example. This pachinko machine GM is composed of a rectangular frame-shaped wooden outer frame 1 that is detachably attached to the island structure, and an inner frame 3 that is pivotally attached via a hinge 2 fixed to the outer frame 1 so as to be openable and closable. A game board 5 is detachably attached to this inner frame 3 from the front side, not the back side, and a glass door 6 and a front panel 7 are pivotally attached to the front side thereof so as to be openable and closable, respectively. In this specification, the glass door 6 and the front panel 7 are collectively referred to as the front door member. And the inner frame 3 in a state where the front door member (glass door 6 or front panel 7) is pivotally attached may be referred to as a game frame.

[0021] On the outer periphery of the glass door 6, decorative 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 left and right positions and the lower side of the glass door 6. The two speakers arranged at the upper part output the sound of the left and right channels R and L, respectively, and the lower speaker is configured to output bass.

[0022] On the front panel 7, an upper tray 8 for storing game balls for launching is mounted. At the lower part of the inner frame 3, a lower tray 9 for storing game balls that have overflowed or been removed from the upper tray 8 and a launch handle 10 are provided. The launch handle 10 is linked to a launch motor, and the game balls are launched by a striking hammer that operates according to the rotation angle of the launch handle 10.

[0023] On the outer peripheral surface of the upper tray 8, a chance button 11 is provided. This chance button 11 is provided at a position that can be operated with the player's left hand, and the player can operate the chance button 11 without releasing the right hand from the launch 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 it becomes operable. Note that the button chance state is a game state provided as needed.

[0024] Also, below the chance button 11, a rotary switch type volume switch VLSW is arranged. By the player operating the volume switch VLSW, the speaker volume can be adjusted in 8 steps from the silent level (=0) to the maximum level (=7). Note that the volume of the speaker is initially set by a setting switch (not shown) that can only be operated by the staff, and the initial set volume is maintained unless the player operates the volume switch VLSW. Also, the abnormal notification sound for notifying the occurrence of an abnormal situation is emitted at the maximum volume regardless of the initial set volume by the staff or the set volume by the player.

[0025] On the right part of the upper tray 8, an operation panel 12 for the ball lending operation for the card type ball lender is provided, and it is provided with a frequency display part for displaying the card balance in three digits, a ball lending switch for instructing the lending of game balls for a predetermined amount, and a return switch for instructing the return of the card at the end of the game.

[0026] As shown in FIG. 2, a guide rail 13 composed of a metal outer rail and an inner rail is annularly provided on the surface of the gaming board 5, and a central opening HO is provided at substantially the center thereof. And below the central opening HO, a movable effect body (not shown) is stored in a concealed state. During the movable notice effect, the movable effect body rises to an exposed state, thereby realizing a notice effect with a predetermined reliability. Here, the notice effect is an effect that notifies the player uncertainly that a jackpot state advantageous to the player is to be brought about, and the reliability of the notice effect means the probability that the jackpot state is to be brought about.

[0027] A main display device DS1 composed of a large-sized (for example, 1280 pixels wide × 1024 pixels high) liquid crystal color display is arranged in the central opening HO. On the right side of the main display device DS1, a movable sub-display device DS2 composed of a small-sized (for example, 480 pixels wide × 800 pixels high) liquid crystal color display is arranged. The main display device DS1 is composed of a main liquid crystal display unit MONI and an LED backlight unit BL, and is a device that variably displays specific symbols related to the jackpot state and animates a background image and various characters. This display device DS1 has special symbol display parts Da to Dc in the central part and a normal symbol display part 19 in the upper right part. And in the special symbol display parts Da to Dc, a reach effect that anticipates the bringing about of the jackpot state may be executed, and appropriate notice effects and the like are executed around the special symbol display parts Da to Dc.

[0028] Normally, the sub-display device DS2 displays image information in a stationary state with its display screen inclined at an angle easy for the player to see. However, during a predetermined notice effect, while changing the inclination angle to an angle easy for the player to see, it moves to the left side in the figure and displays a predetermined notice image.

[0029] That is, the sub-display device DS2 of the embodiment not only functions as a simple display device but also as a movable effect body that executes a preview effect. Here, the preview effect by the sub-display device DS2 is set to have a high reliability, and the player will pay attention to the movement operation of the sub-display device DS2 with great anticipation. Note that the sub-display device DS2 is also composed of a sub liquid crystal display unit MONI and an LED backlight unit BL.

[0030] By the way, in the game area where the game balls fall and move, a first symbol start port 15a, a second symbol start port 15b, a first big winning port 16a, a second big winning port 16b, a normal winning port 17, and a gate 18 are arranged. Each of these winning ports 15 to 18 has a detection switch inside and can detect the passage of the game balls.

[0031] Above the first symbol start port 15a, an effect stage 14 is arranged which is configured such that after the game balls entering from the inlet IN move in a seesaw shape or a roulette shape, they can win the first symbol start port 15. And when a game ball wins the first symbol start port 15, the variation operation of the special symbol display units Da to Dc is configured to start.

[0032] The second symbol start port 15b is configured to be opened and closed by an electric tulip provided with a pair of left and right opening and closing claws. When the stopped symbol after the variation of the normal symbol display unit 19 shows a winning symbol, the opening and closing claws are opened for a predetermined time or until a predetermined number of game balls are detected.

[0033] Note that the normal symbol display unit 19 displays a normal symbol. When a game ball passing through the gate 18 is detected, the normal symbol varies for a predetermined time and then stops displaying the stopped symbol determined by the lottery random number value extracted at the time when the game ball passes through the gate 18.

[0034] The first major winning opening 16a is configured to have a slide plate that moves forward and backward in the front-rear direction, and the second major winning opening 16b is configured to have an opening / closing plate whose lower end is pivotally supported and opens forward. The operations of the first major winning opening 16a and the second major winning opening 16b are not particularly limited. In this embodiment, the first major winning opening 16a corresponds to the first symbol starting opening 15a, and the second major winning opening 16b is configured to correspond to the first symbol starting opening 15b.

[0035] That is, when a game ball wins a prize at the first symbol starting opening 15a, the variable operation of the special symbol display units Da to Dc is started. After that, when a predetermined jackpot symbol aligns in the special symbol display units Da to Dc, a special game as the first jackpot is started, and the slide plate of the first major winning opening 16a is opened forward to facilitate the winning of the game ball.

[0036] On the other hand, as a result of the variable operation started by the winning of a game ball at the second symbol starting opening 15b, when a predetermined jackpot symbol aligns in the special symbol display units Da to Dc, a special game as the second jackpot is started, and the opening / closing plate of the second major winning opening 16b is opened to facilitate the winning of the game ball. The game value of the special game (jackpot state) varies depending on the jackpot symbol that aligns, etc., but which game value is assigned is determined in advance based on the lottery result according to the winning timing of the game ball.

[0037] In a typical jackpot state, after the opening / closing plate of the major winning opening 16 is opened, when a predetermined time elapses or a predetermined number (for example, 10) of game balls win a prize, the opening / closing plate closes. Such an operation continues up to a maximum of, for example, 15 times and is controlled to a state advantageous to the player. In addition, when the stopped symbol after the variable operation of the special symbol display units Da to Dc is a specific symbol among the special symbols, a privilege is given that the game after the end of the special game becomes a high-probability state (probability-variable state).

[0038] FIG. 3(a) is a block diagram showing the overall circuit configuration of the pachinko machine GM that realizes each of the above-described operations. Further, FIG. 3(b) is a circuit diagram showing the circuit configuration of the power monitor unit MNI arranged on the payout control board 25, and FIG. 3(c) is a drawing for explaining the specifications of the main display device DS1 used in the present embodiment.

[0039] First, based on FIG. 3(c), the specifications of the main display device DS1 used in the embodiment will be described. As described above, this display device DS1 is a liquid crystal color display with 1280 pixels horizontally and 1024 pixels vertically. However, odd pixels (ODD) and even pixels (EVEN) adjacent to each other in the horizontal direction are received by the receiving unit RV (RVa + RVb) through separate LVDS (Low Voltage Differential Signaling) transmission lines. Therefore, in the present embodiment, corresponding to this dual-link specification, the ODD signal is transmitted via the first transmission line LVDS1, and the EVEN signal is transmitted via the second transmission line LVDS2 (lower right part of FIG. 3(a)).

[0040] Further, in this display device DS1, the operation clock CK (see FIG. 42) that defines the internal operation of the display device DS1 is defined so that its frequency is in the range of 40 MHz to 70 MHz (typical value = 54 MHz). This operation clock CK corresponds to the LVDS clock CLK described later. However, hereinafter, for convenience of explanation, the frequency of the operation clock CK is assumed to be the typical value of 54 MHz. Also, in the operation clock CK of 54 MHz, a configuration will be described in which the update time FR (Frame Rate) required for updating the image of one frame is made to coincide with approximately 1 / 60 second.

[0041] As a specification, this display device DS1 is configured to simultaneously process two adjacent pixels in the horizontal 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 at an operation clock CK. As a result, the pixel data of 1280 pixels in one horizontal line is updated in an operation time of 640 / 54 MHz = 11.85 μS, and by repeating this operation for 1024 lines, the image display of 1280 × 1024 pixels for one frame is updated. Note that the image is updated in a non-interlace manner line by line, such as from the first line → the second line ··· → the 1024th line.

[0042] However, as shown in FIG. 3(c), as a specification of the display device DS1, it is stipulated that a standby time (blank period) of 204 clocks is provided in the horizontal direction as a typical value, and a standby time (blank period) of 42 lines is provided in the vertical direction as a typical value. Therefore, considering these blank periods, the actual screen update cycle FR is (204 + 640) × (42 + 1024) / 54 MHz ≒ 16.66 mS in the calculation based on the above typical values, so the frame rate FR is about 1 / 60 Hz.

[0043] Note that an allowable range with respect to the typical value is stipulated for the horizontal standby time WTh and the vertical standby time WTv, and actually, values different from the above typical values can be selected. However, in order to set the frame rate FR = 1 / 60 second, it is necessary to accurately set the horizontal / vertical standby times WTh / WTv so that (WTh + 640) × (WTv + 1024) / 54 MHz = 1 / 60 second.

[0044] On the other hand, in this display device DS1, it is not particularly necessary to receive the horizontal synchronization signal HS and the vertical synchronization signal VS. On the other hand, when transmitting the ODD signal and the EVEN signal, the transmission of the data valid signal ENAB at the H level is required. That is, at the timing of transmitting a significant signal (ODD / EVEN signal) to the transmission paths LVDS1 and LVDS2, the data valid signal ENAB needs to be at the active level (H).

[0045] Therefore, in this embodiment, based on the specifications of the main display device DS1 described above, the effect control board 23 and the main display device DS1 are LVDS-connected via a dual-link transmission path of an LVDS clock CLK with a frequency of 54 MHz (= 1 / 2 of the dot clock DCK) (FIG. 5, FIG. 14(a)). Further, in the VDP circuit 52 of this embodiment, a horizontal blanking period WTh and a vertical blanking period WTv that satisfy the specifications of the main display device DS1 are provided, and when outputting image data (ODD / EVEN signals), the data valid signal ENAB is set to the active level (H level).

[0046] That is, as shown in FIG. 4(b), the data valid signal ENAB is configured such that only the horizontal display period THd is at the H level during the horizontal synchronization period TH. Therefore, the data valid signal ENAB is always at the L level except during the vertical display period TVd within the vertical synchronization period TV. Note that the horizontal blanking period WTh and the vertical blanking period WTv adopt values different from their respective typical values (WTh = 204 / WTv = 42), and specific design values will be described later based on FIG. 15.

[0047] In any case, the data valid signal ENAB is repeatedly transmitted as a discrete DE signal in each operation cycle of the LVDS clock CLK via the differential signal lines RA2 / RB2. The data valid signal ENAB shown in FIGS. 4(b) and 4(c) is the result of demodulating the discrete DE signal transmitted by LVDS, and is a continuous representation of the discrete DE signal on the time axis. Note that in the differential signal lines 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 device DS1 used in the embodiment does not utilize these synchronization signals VS, HS.

[0048] However, in the display device DS1, the transmission of the horizontal synchronization signal HS and the vertical synchronization signal VS is not prohibited in any way. However, the internal operations defined for these synchronization signals are not executed. That is, the horizontal line feed timing of the display line is independent of the received horizontal synchronization signal HS, and is defined based on the falling timing of the data valid signal ENAB, the number of operation clocks CK (corresponding to the LVDS clock CLK) after the rising timing of the data valid signal ENAB (640 in the embodiment = 1280 / 2), etc., to the optimal timing for the internal circuit of the display device DS1 (downward arrow in Fig. 4(b)).

[0049] This also applies to the vertical line feed timing after the image display for one frame. Based on the number of consecutive data valid signals ENAB with a predetermined pulse width (1024 in the embodiment), etc., it is defined to the optimal timing for the internal circuit of the display device DS1 (downward arrow in Fig. 4(c)) and is not affected by the received vertical synchronization signal VS. Thus, in this embodiment, since there is no need to transmit the horizontal synchronization signal HS and the vertical synchronization signal VS to the display device DS1, there is no need to optimally set the pulse widths PWh / PWv of the synchronization signals HS, VS, the front porches FPh / FPv, and the back porches BPh / BPv, and the control burden on the effect control unit 23 and the VDP circuit 52 is greatly reduced.

[0050] Also, as an internal operation of the display device DS1, the operations of horizontal line feed and vertical line feed are executed at the optimal timing based on its own internal configuration, so the possibility of unnatural display operations is eliminated. Incidentally, in the case of a display device that operates based on the horizontal synchronization signal HS and the vertical synchronization signal VS received from the outside, if the pulse widths of the synchronization signals HS, VS, the front porch period and the back porch period before and after the synchronization signals HS, VS are inappropriate, there is a possibility that the normal display operation will be impaired.

[0051] Incidentally, in FIG. 4(a), the first differential signal LVDS1 that uses differential signal lines RA0 to RA3 and RACLK transmits odd-numbered pixels (ODD signal on the A side), and the second differential signal LVDS2 that uses differential signal lines RB0 to RB3 and RBCLK transmits even-numbered pixels (EVEN signal on the B side). In this way, in this embodiment, by transmitting two types of ODD signals and EVEN signals through a dual-link transmission path, the frequency of the dot clock DCK can be reduced to 1 / 2, resulting in excellent noise resistance and an increased transmission distance accordingly.

[0052] On the other hand, the main display device DS1 incorporates a conversion reception unit RV for ODD signals and EVEN signals transmitted through a dual-link transmission path, and restores RGB signals from the two LVDS signals (ODD signal and EVEN signal) to display an image for one frame (1280 × 1024 dots). As described above, since each RGB signal is composed of 8 bits, the main display device DS1 has a color depth of 2 8 ×2 8 ×2 8 full-color image displayed.

[0053] FIG. 5 is a block diagram showing the internal configuration of a display device DS1 composed of a main liquid crystal display unit MONI and an LED backlight unit BL, particularly in relation to the relevant part of the VDP circuit 52. As shown in the figure, the ODD signal is transmitted to the LVDS-parallel conversion unit RVa via the first LVDS line (A side), and the EVEN signal is transmitted to the LVDS-parallel conversion unit RVb via the second LVDS line (B side). Then, among the RGB data with a length of 8 bits each transmitted on the differential lines RA0 / RB0, the image data R0 to R5 and G0 are output, and from the differential lines RA1 / RB1, the image data G1 to G5 and B0 to B1 are output.

[0054] Also, image data B2 to B5, DE signal, VS signal, and HS signal are output from differential lines RA2 / RB2, and image data G6 to G7, R6 to R7, B6 to B7 are output from differential lines RA3 / RB3. Here, the DE signal is nothing but the data valid signal ENAB. Also, as described above, the output VS signal and HS signal are not used.

[0055] Next, the LVDS clock CLK of differential lines RACK / RBCK is supplied to the PLL circuit, thereby generating an operation clock CK having the same frequency of 54 MHz as the LVDS clock CLK. This operation clock CK defines the internal operation of the liquid crystal controller LCD_CTL, and the liquid crystal controller LCD_CTL collectively processes the image data corresponding to two RGB pixels (8 bits × 3 × 2) adjacent in the left - right direction of the liquid crystal panel LCD in synchronization with one operation clock CK.

[0056] Therefore, the pixels in the horizontal direction of 1280 (= 640 × 2) dots are processed in a processing time of 11.85 μS (= 640 / 54 MHz) corresponding to 640 operation clocks CK. Note that one pixel is composed of RGB three - primary color pixels, and the image data of the RGB three - primary color pixels is 1 byte long each and has a gradation of 2 8 ×2 8 ×2 8 Therefore, the image data of all pixels (1280 dots) in one line is 3 × 1280 bytes long as a whole.

[0057] As shown in FIG. 5, the liquid crystal controller LCD_CNT has 1280 source signal lines, each of which is 2 8(=256) It appropriately controls a source driver SDV driven by a harmonic drive signal and a gate driver GDV that ON / OFF controls 1024 gate signal lines. Specifically, the liquid crystal controller LCD_CNT realizes an image update operation with a frame rate FR = 1 / 60 Hz by appropriately operating each part based on the DE signal output from the LVDS transmission line and the operation clock CK. As confirmed previously, the DE signal corresponds to the data valid signal ENAB output by the VDP circuit 52.

[0058] In the case of this embodiment, the source driver SDV is configured by arranging 10 driver elements each having 384 output terminals. As explained previously, one line of all pixels (1280 dots) of the liquid crystal panel LCD is composed of RGB three primary color pixels, with a total of 3×1280, so 10 driver elements are required to drive them. Note that image data DAT is sequentially supplied from the liquid crystal controller LCD_CNT to these 10 driver elements, and this is appropriately transferred based on the start signal SP and the transfer clock DCLK. Then, in synchronization with the latch signal LT, the analog-converted drive signal is supplied to 3840 source signal lines. As explained previously, the time required to update one line of all pixels (1280 dots) of the liquid crystal panel LCD is 11.85 μS (=640 / 54 MHz).

[0059] On the other hand, the liquid crystal controller LCD_CNT updates the gate signal lines to be driven by supplying a gate start signal GS and a gate clock signal GCLK to the gate driver GDV. Here, the gate driver GDV is configured by arranging 4 driver elements each having 256 output terminals.

[0060] Note that the update timing of the gate signal line is defined based on the falling timing of the DE signal and the operation clock CK. The horizontal blanking period of the gate signal line is counted by the operation clock CK and is set to 640 + 204 clocks in the typical value calculation (see Fig. 3(c)). Also, based on the number of DE signals (1024), the gate signal lines to be driven are reset to the initial state, and the gate start signal GS is output at the optimal timing, and the output of the gate clock signal GCLK is resumed. The vertical blanking period of the gate signal line is counted by the operation clock CK and is 42 + 1024 clocks in the typical value calculation (see Fig. 3(c)). However, as described above, in this embodiment, the display device DS1 is operated with a design different from the typical value (see Fig. 15).

[0061] Incidentally, the above display operation is conditional on the power supply voltage of 5V being supplied to the main liquid crystal display unit MONI when the LED backlight unit BL is lit. Therefore, in this embodiment, a power supply control circuit SPY is provided to operate the liquid crystal display unit MONI and the backlight unit BL in a coordinated manner. The power supply control circuit SPY receives three types of DC voltages (3.3V, 5V, 12V) from the effect interface board 22 and receives various power supply control signals (STBY, PWM, PS1, PS2) from the effect control CPU 63 of the composite chip 50 (see Fig. 7(a)).

[0062] Then, the power supply control circuit SPY supplies the DC voltage of 5V as the power supply voltage of the main liquid crystal display unit MONI at the optimal timing (see Figs. 6(c) and 6(g)). Also, the power supply control circuit SPY controls the power supply voltage of the backlight unit BL as the DC voltage of 12V and controls the BL_EN terminal and the PWM terminal of the LED backlight unit BL to appropriate H / L levels to realize the optimal lighting operation.

[0063] Fig. 6(a) is a circuit diagram showing the circuit configuration of the power supply control circuit SPY and its relationship with the backlight unit BL and the liquid crystal display unit MONI. As shown in the figure, this power supply control circuit SPY mainly consists of a first switch circuit having a transistor Tr1 and a MOS transistor Q1, a second switch circuit having a transistor Tr2 and a MOS transistor Q2, a third switch circuit having a transistor Tr3 and a MOS transistor Q3, a fourth switch circuit having a transistor Tr4 and a MOS transistor Q4, and a buffer circuit SBUF that receives various control signals.

[0064] The buffer circuit SBUF is a high-speed Schmitt buffer (e.g., TC74VHC9125) with a DC voltage of 3.3V supplied from the effect interface board 22 as the power supply voltage, and operates with a non-inverting input-output relationship. That is, the effect control CPU 63 of the composite chip 50 outputs a power supply control signal (STBY, PWM, PS1, PS2) with a theoretical H / L width based on the power supply voltage of 3.3V, and the buffer circuit SBUF that receives this outputs a control signal (STBY, PWM, PS1, PS2) of the same logic (see Fig. 7(a)).

[0065] As shown in Fig. 6(a), the four input terminals (STBY, PWM, PS1, PS2) of the buffer circuit SBUF are all connected to the ground via pull-down resistors Rpd. When each control signal is in the HiZ (high impedance) state, such as when the connection connector is in a separated state or at power-on, all control signals are configured to be at the L level.

[0066] Next, in the first to fourth switch circuits, the transistors Tr1 to Tr4 are all NPN bipolar transistors and are driven to perform a switching operation. That is, each transistor Tr1 / Tr2 / Tr3 / Tr4 turns on based on the voltage division ratio of the bias resistors when the corresponding control signal PS1 / STBY / PWM / PS2 is at the H level, while it turns off when the control signal PS1 / STBY / PWM / PS2 is at the L level because no current flows through the bias resistors.

[0067] Here, when the transistors Tr1 / Tr4 are in the OFF state, the collector outputs of the respective transistors Tr1 / Tr4 are both at a level higher than 3.3V (12V / 5V). Also, when the MOS transistor Q1 is in the ON state and the transistors Tr2 / Tr3 are in the OFF state, the collector output of each transistor Tr2 / Tr3 is approximately 12V. In these respects, the transistors Tr1 to Tr4, together with the bias resistors, constitute a level shift circuit that increases the logical H level of the power supply control signals (STBY, PWM, PS1, PS2).

[0068] The bias resistors for the transistors Tr1 to Tr4 are R11 + R12, R21 + R22, R31 + R32, and R41 + R42, respectively, and the voltages defined by the voltage division ratios of the respective bias resistors are supplied to the base terminals of the transistors Tr1 to Tr4.

[0069] In this embodiment, since the above-described level shift circuit (Tr1 to Tr4) is provided, while increasing the emission luminance of the backlight, the power consumption of the effect control unit 23 can be greatly suppressed. That is, while setting the power supply voltage (12V) of the backlight unit BL to the highest possible level, the logical H level of the power supply control signals (STBY, PWM, PS1, PS2) can be set to an arbitrary low level (3.3V).

[0070] On the other hand, all of the MOS transistors Q1 to Q4 are Pch type, and perform a switching operation according to the ON / OFF states of the transistors Tr1 to Tr4. When in the ON state, the source terminal S and the drain terminal D are in a substantially conducting state.

[0071] Specifically, first, the MOS transistor Q1 receives the DC voltage of 12V supplied by the effect interface board 22 at its source terminal S. When the transistor Tr1 operates in the ON state based on the control signal PS1 of the H level, the MOS transistor Q1 also operates in the ON state based on the voltage across the bias resistor Rb1 that transitions to the energized state in response thereto, and outputs the DC voltage of 12V to the drain terminal D.

[0072] This DC voltage of 12V is supplied to the backlight unit BL via an RC filter circuit and a Zener diode. The RC filter circuit is composed of a 3.3 kΩ resistor and a 47 μF conductive polymer capacitor (a hybrid capacitor with an electrolyte formed by fusing a conductive polymer and an electrolytic solution instead of the electrolytic solution of an aluminum electrolytic capacitor).

[0073] This hybrid capacitor has a rated voltage of 25V and is a cylindrical surface mount device SMD (Surface Mount Device) with a diameter of 6.3 mm and a height of 5.8 mm. And the capacitance at the time of 5V power supply is maintained at less than -10% of the nominal value (47 μF). Also, the equivalent series resistance ESR is 50 mΩ at the nominal value.

[0074] In a normal circuit configuration, a ceramic capacitor (0.1 μF) such as an MLCC (Multilayer Ceramic Capacitor) is connected in parallel to a 47 μF electrolytic capacitor. However, in this embodiment, a single hybrid capacitor realizes a desired smoothing operation and decoupling operation without consuming the layout space of other circuit elements.

[0075] Incidentally, no other smoothing capacitors or decoupling capacitors are arranged within a range of at least a radius of 20 mm from the conductive polymer capacitor. Also, in this embodiment, since the decoupling capacitor is surface-mounted and the through-hole mounting method is not adopted like a normal electrolytic capacitor, there is also an advantage that the layout space can be suppressed.

[0076] Also, on the top surface of the surface-mounted cylinder, the numerical value "47" indicating the capacitance and the rank symbol "E" indicating the rated voltage of 25V are described, and the direction of the minus polarity is specified by a blackened symbol, so that the component check on the substrate can be easily performed by visual confirmation.

[0077] Also, in this embodiment, in particular, as the MOS transistor Q1, an element with an ON resistance between the source S and the drain D of 25 mΩ or more and 35 mΩ or less is used. Therefore, for example, even when a drive current (drain current ID) of 2.5 A is constantly flowing, the voltage drop in the MOS transistor Q1 is 0.1 V or less, and the power loss is also suppressed to about 0.22 W (= 2.5 * 2.5 * 35 / 1000). The ON resistance is the measurement result under pulse drive at VGS = -10 V and ID = -4.5 A.

[0078] Also, the transistors Q2 and Q3 receive the voltage of the drain terminal D of the transistor Q1 at their respective source terminals S. Therefore, when the transistors Tr2 / Tr3 perform an ON operation based on the H-level control signal STBY / PWM while the MOS transistor Q1 is in the ON state, in response to this, based on the voltage across the bias resistors Rb2 / Rb3 that transition to the energized state, the MOS transistors Q2 and Q3 also perform an ON operation. Therefore, a DC voltage of 12 V is output to the drain terminals D of the MOS transistors Q2 and Q3 via the ON-state transistor Q1, respectively.

[0079] This DC voltage of 12 V is output as the control signal STBY from the drain terminal D of the MOS transistor Q2, and is output as the control signal PWM from the drain terminal D of the MOS transistor Q3. The control signal STBY is supplied to the BL_EN terminal (back light enable) of the backlight unit BL in a pulled-down state by the pull-down resistor Rpd, and the control signal PWM is supplied to the PWM terminal (pulse width modulation) of the backlight unit BL in a pulled-down state by the pull-down resistor Rpd.

[0080] In this embodiment, by setting the pull-down resistors Rpd to about 33 kΩ each, the current flowing through the pull-down resistors Rpd due to the DC voltage of 12 V (STBY / PWM) is suppressed to about 0.36 mA. Therefore, it is not necessary to select expensive elements for the MOS transistors Q2 and Q3. In this embodiment, elements with an ON resistance between the source S and the drain D of 2.5 Ω or more and 3.8 Ω or less are used. The ON resistance is the measurement result under pulse drive at VGS = -4.5 V and ID = -100 mA.

[0081] Next, the backlight unit BL will be described. The backlight unit BL includes N×M light-emitting diodes (LEDs) arranged in a matrix vertically and horizontally, and a driver DVL that outputs a drive pulse of negative logic to synchronously drive the N×M light-emitting diodes. This driver DVL includes a BL_EN terminal that defines whether to enable the internal operation, a PWM terminal that defines the duty ratio of the drive pulse of negative logic in the positive logic range of 10% to 100%, and output terminals LED1 to LEDn that output the drive pulse.

[0082] As described above, the control signal STBY is supplied from the power supply control circuit SPY to the BL_EN terminal, and the control signal PWM is supplied to the PWM terminal. When the control signal STBY is at the H level (12 V), the internal circuit of the driver DVL operates, and drive pulses can be output from the output terminals LED1 to LEDn. This drive pulse is a negative logic pulse obtained by logically inverting the control signal PWM.

[0083] Thus, since the drive pulse of the embodiment is a negative logic pulse obtained by logically inverting the control signal PWM supplied to the PWM terminal, the closer the duty ratio of the control signal PWM is to 100%, the longer the L-level period of the output terminals LED1 to LEDn becomes, and the average current flowing through the light-emitting diodes increases, making the backlight light brighter. On the other hand, the closer the duty ratio is to 10%, the lower the average current of the light-emitting diodes becomes, making the backlight light darker.

[0084] Therefore, by appropriately changing the duty ratio of the control signal (control pulse) PWM, the emission intensity of the backlight can also be changed. For example, in the demo state where there is no player, the backlight can be dimmed. However, in this embodiment, to avoid the complexity of such emission control, the duty ratio of the control signal is maintained at 100%, and the control signal PWM maintains a constant H level (12V) in the operating state without changing in a pulsed manner. Therefore, the output terminals LED1 to LEDn of the driver DVL will constantly maintain an L level in the operating state of the backlight unit BL.

[0085] By the way, both the BL_EN terminal and the PWM terminal are connected to the ground via the pull-down resistor Rpd. Therefore, when the MOS transistor Q2 is in the OFF state and the control signal STBY is in the HiZ state, the driver DVL becomes non-operational and the output terminals LED1 to LEDn become in the HiZ state, so all the light-emitting diodes are turned off.

[0086] Also, when the MOS transistor Q3 is in the OFF state and the control signal PWM is in the HiZ state, for example, even if the control signal STBY is at the H level, by maintaining the duty ratio at 0%, the output terminals LED1 to LEDn maintain the H level (12V) and all the light-emitting diodes are turned off. Therefore, at power-on when no significant image data is transferred or when there is an operation abnormality in the power supply control circuit SPY, the backlight will turn off, and as a result, unnatural image display is avoided. Connecting the pull-down resistor Rpd between the four input terminals of the buffer circuit SBUF and the ground is also based on the same intention.

[0087] Subsequently, the relationship between the fourth switch circuit having the transistor Tr4 and the MOS transistor Q4 and the main liquid crystal display unit MONI will be described. As described above, the transistor Tr4 of the fourth switch circuit operates in an ON / OFF manner based on the H / L level of the control signal PS2.

[0088] On one hand, the MOS transistor Q4 receives the DC voltage of 5V supplied by the effect interface board 22 at its source terminal S. When the transistor Tr1 operates in the ON state, based on the voltage across the bias resistor Rb4 that transitions to the energized state in response to this, the MOS transistor Q4 also operates in the ON state and outputs a DC voltage of 5V at the drain terminal D.

[0089] This DC voltage of 5V is supplied to the liquid crystal display unit MONI shown in FIG. 5 via an RC filter circuit and a Zener diode, and is utilized as the power supply voltage for the liquid crystal display unit MONI. In this embodiment, in particular, as the MOS transistor Q4, an element with an ON resistance between the source S and the drain D of 48 mΩ or more and 65 mΩ or less is used. Therefore, for example, even when a drive current (drain current ID) of 1.5 A flows constantly, the voltage drop in the MOS transistor Q1 is 0.1 V or less, and the power loss is also suppressed to about 0.15 W (=1.5 * 1.5 * 65 / 1000). Note that the ON resistance is the measurement result in pulse drive at VGS = -4.5 and ID = -2.5 A.

[0090] Subsequently, based on FIGS. 6(b) to 6(j), the circuit operation of the power supply control circuit SPY will be described. After the power is turned on, the composite chip 50 starts the control operation after passing through an assertion period during which the system reset signal SYS maintains the L level (timing T1 in FIG. 6(d)). Then, the effect control CPU 63 of the composite chip 50 transitions the control signals PS1 and PS2 to the H level 1000 mS after timing T1 (timing T2).

[0091] Then, based on the H-level control signal PS1, the MOS transistor Q1 operates in the ON state, and the supply of DC 12V to the backlight unit BL is started. Also, based on the H-level control signal PS2, the MOS transistor Q4 operates in the ON state, and the supply of DC 5V to the liquid crystal display unit MONI is started. However, at this timing T2, since both the control signals STBY and PWM remain at the L level, the backlight unit BL does not emit light. Therefore, no matter how the liquid crystal display unit MONI operates, there is no possibility of an unnatural image being displayed.

[0092] Next, after about 5 mS has elapsed since timing T2, the production control CPU 63 starts the display clock and the initialization operation of the display circuit 74. Although the details of this control content will be described later, these operations are part of the initialization operation until the operation of the VDP circuit 52 starts. At this stage, no significant image signal is output to the display device DS1.

[0093] Thereafter, after appropriately initializing the display register, the production control CPU 63 starts the operations of the display circuit 74 and the LVDS circuit 80 (timing T4). Therefore, after timing T4, the LVDS signal as a significant image signal is repeatedly output to the display device DS1 every 1 / 60 second (see Fig. 6(f)).

[0094] However, at the time of timing T4, since the control signal PWM maintains the L level, the backlight light does not emit. That is, the production control CPU 63 transitions the control signal STBY to the H level at timing T3 to control the driver DVL to an operable state. However, at the time of timing T4, since the control signal PWM = L and the duty ratio of the drive pulse is 0%, the off state of the backlight unit BL is maintained.

[0095] On the other hand, after starting the operations of the display circuit 74 and the LVDS circuit 80 (SS4 in Fig. 21), the production control CPU 63 transitions the control signal PWM to the H level (SS6 in Fig. 21) at the timing T5 when 300 mS or more has elapsed, and transitions the backlight unit BL to a light-emitting state with a duty ratio of 100%. When the operation at timing T5 is executed by, for example, timer interrupt processing, at the time of timing T5, the liquid crystal display unit MONI has already repeatedly received the LVDS signal as a significant image signal every 1 / 60 second, so an image based on that image signal will be displayed. That is, since the steady processing (ST4 to ST14 in Fig. 22) starts immediately after the processing in step SS6 in Fig. 21, an initial screen based on the display list DL is displayed at the time of timing T5.

[0096] However, as shown in FIG. 21, when the effect control CPU 63 executes a standby process of 300 mS (step SS5 in FIG. 21), at timing T5, since the display list DL has not yet been issued, the display content is a screen based on the VRAM (frame buffer FBa) after power-on. Therefore, considering such a point, it is preferable to zero-clear the VRAM (especially frame buffers FBa and FBb) after power-on. However, even if it is not zero-cleared, the random image is displayed only for an instant at most at the start of business in the game hall, so there is no problem at all. That is, immediately after the process of step SS6 in FIG. 21, the steady process (ST4 to ST14 in FIG. 22) is started, and the initial screen based on the display list DL is displayed.

[0097] By the way, in this embodiment, the program execution time from timing T2 to timing T4 is designed to be within 20 mS. This is because the display device DS1 used in the embodiment recommends that the transmission of the image signal (LVDS signal) should be started within a predetermined time τ (for example, 20 mS) from the power-on of the liquid crystal display unit MONI.

[0098] In this embodiment, delaying the power supply timing to the liquid crystal display unit MONI by about 1 second using the control signal PS2 is also based on the above requirements. If the power supply to the liquid crystal display unit MONI is started simultaneously with the power-on, it is very difficult to start the transmission of the LVDS signal within a predetermined time τ (for example, 20 mS) thereafter due to the assertion period and the program execution time (processing time of SP1 to SP10) (refer to timing T4).

[0099] As described above in detail for the main display device DS1, the operation content of the sub-display device DS2 is substantially the same. By operating as shown in FIG. 6(b), the sub-liquid crystal display unit MONI and the backlight unit BL are configured to operate in a coordinated manner so that inappropriate display does not occur.

[0100] Further, the sub-display device DS2 operates in the same manner as shown in FIG. 42 based on the horizontal synchronization signal HS and the vertical synchronization signal VS received from the VDP circuit 52. However, it is also preferable that the sub-control device DS2 adopts a configuration in which it operates based on the data valid signal ENAB without relying on the horizontal synchronization signal HS or the vertical synchronization signal VS. The data valid signal ENAB is transmitted to the sub-display device DS2 as a continuous signal ENAB instead of in the form of a discrete DE signal (see the lower right part of FIG. 14(a)).

[0101] 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 includes a power supply board 20 that receives AC24V and outputs various DC voltages (35V, 12V, 5V) together with AC24V, a main control board 21 that centrally and comprehensively manages the game control operation, an effect interface board 22 equipped with circuit elements SND for sound effects, an effect control board 23 that uniformly executes lamp effects, sound effects, and image effects based on the control command CMD received from the main control board 21, a liquid crystal interface board 24 located between the effect control board 23 and the display devices DS1 and DS2, a payout control board 25 that controls the payout motor M based on the control command CMD' received from the main control board 21 to pay out game balls, and a launch control board 26 that launches game balls in response to the player's operation, and is mainly configured around these components.

[0102] Note that the effect interface board 22, the effect control board 23, and the liquid crystal interface board 24 are directly connected by a male connector and a female connector without passing through a wiring cable. Therefore, even if the circuit configuration of each electronic circuit becomes more complex and advanced, the storage space of the entire board can be minimized, and the noise resistance can be improved by minimizing the connection lines.

[0103] As shown in the figure, the control command CMD’ output by 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 effect control board 23 via the effect interface board 22. Here, both control commands CMD and CMD’ are 16 bits long, but are transmitted in parallel in two parts for every 8 bits.

[0104] A computer circuit including a one-chip microcomputer is mounted on the main control board 21 and the payout control board 25. Also, a composite chip 50 with built-in computer circuits such as a VDP circuit (Video Display Processor) 52 and a built-in CPU circuit 51 is mounted on the effect control board 23. Therefore, in this specification, the operations realized by these control boards 21, 25, 23, the circuits mounted on the effect interface board 22 and the liquid crystal interface board 24, and their circuits are generically referred to functionally as the main control unit 21, the effect control unit 23, and the payout control unit 25. Note that the effect control unit 23 and the payout control unit 25 are sub-control units with respect to the main control unit 21.

[0105] Also, this pachinko machine GM is roughly divided into a frame-side member GM1 surrounded by the broken line in Fig. 3(a) and a board-side member GM2 fixed to the back surface of the game board 5. The frame-side member GM1 includes an inner frame 3 to which a glass door 6 and a front panel 7 are pivotally attached, and a wooden outer frame 1 outside thereof, and is fixedly installed in the game hall for a long time regardless of the model change. On the other hand, the board-side member GM2 is replaced in response to the model change, and a new board-side member GM2 is attached to the frame-side member GM1 instead of the original board-side member. Note that all except the frame-side member 1 are the board-side member GM2.

[0106] As shown by the dashed-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 launch control board 26, a frame relay board 36, and a motor / lamp drive board 37. These circuit boards are each fixed at appropriate positions on the inner frame 3. On the other hand, on the back surface of the game board 5, a main control board 21 and a production control board 23 are fixed together with display devices DS1, DS2 and other circuit boards. The frame-side member GM1 and the board-side member GM2 are electrically connected by centralized connection connectors C1 to C3 that are centrally arranged at one location.

[0107] Based on the AC voltage AC24V distributed from the game hall, the power supply board 20 generates three types of DC voltages (35V, 12V, 5V), and distributes each DC voltage to the production interface board 22 via the centralized connection connector C2. Also, the three types of DC voltages (35V, 12V, 5V) are distributed to the payout control board 25 together with the AC voltage AC24V. The DC voltages (35V, 12V, 5V) distributed to the payout control board 25 are configured to be distributed to the main control board 21 via the centralized connection connector C1 together with the backup power supply BAK.

[0108] DC 35V is used as the drive power supply for the ball feed solenoid, the launch solenoid, the electric tulip (variable winning device), and the electromagnetic solenoid that opens and closes the big winning port 16 with respect to the launch operation of the game ball. And by arranging the hybrid capacitor according to the present invention in the power supply line of DC 35V close to the solenoid, the desired smoothing operation and decoupling operation are realized.

[0109] In addition, the DC 12V is used as the drive power supply for the LED lamps and motors controlled by each control board, and as the power supply voltage for the digital amplifier. On the other hand, the DC 5V is used as the power supply voltage for the one-chip microcontrollers of the payout control board 25 and the main control board 21, and as the power supply voltage for the logic elements mounted on each control board. Also, after the DC 5V is stepped down by the DC / DC converter on the effect interface board 22, the stepped-down voltages of various levels are used as the power supply voltages for various computer circuits (such as the composite chip 50 and the audio processor 27).

[0110] The backup power supply BAK is a DC 5V DC power supply for retaining the data in the built-in RAM of the one-chip microcontrollers 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 arranged on the backup power supply board 33 is configured to be charged by the DC voltage 5V received from the payout control board 25 during the gaming operation.

[0111] On the other hand, after the power is cut off, since the backup power supply BAK retains the data in the built-in RAM of the one-chip microcontrollers of the main control unit 21 and the payout control unit 25, the main control unit 21 and the payout control unit 25 can resume the gaming operation before the power cut off after the power is turned on. Note that at least for several days, an electric double layer capacitor capable of retaining the stored content of the built-in RAM of each one-chip microcontroller is arranged on the backup power supply board 33.

[0112] Incidentally, in this embodiment, different from the conventional device configuration, a 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 monitor unit MNT of the payout control board 25. As shown in FIG. 3(b), the power monitor unit MNT includes a full-wave rectifier circuit that rectifies the AC24V received from the power supply board 20, a photo diode D that emits light when energized upon receiving the output of the full-wave rectifier circuit, a photo transistor TR that operates in the ON state based on the light emission of the photo diode D using the DC voltage 5V received from the power supply board 20 as a power supply, and an output unit that outputs a detection signal ABN (power supply abnormality signal) at the H level based on the ON operation of the photo transistor TR. Note that the photo diode D and the photo transistor TR constitute a photo coupler PH.

[0113] In the above configuration, after the power is turned on, when the photo coupler PH quickly enters the ON state, the power supply abnormality signal ABN becomes the normal level (H). However, thereafter, if the AC power supply abnormally drops for some reason (normally power-off), when the photo coupler PH changes to the OFF state, the power supply abnormality signal ABN changes to the 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 configured to be transmitted to the one-chip microcomputer of the main control board 21 via the centralized connection connector C1. Therefore, each one-chip microcomputer that receives the power supply abnormality signal ABN at the abnormal level will execute a backup process of storing necessary information in its respective built-in RAM. As described above, since the information in the built-in RAM is maintained by the backup power supply BAK, the gaming operation before the power-off can be resumed after the power is turned on.

[0114] As shown in FIG. 3(a), an audio circuit SND such as an audio processor 27 is mounted on the effect interface board 22, and a composite chip 50 incorporating a computer circuit such as a VDP circuit 52 and a built-in CPU circuit 51 is mounted on the effect control board 23. Hereinafter, the built-in CPU circuit may be abbreviated as the CPU circuit.

[0115] The performance interface board 22 is equipped with reset circuits RST3 and RST4 that detect the rise of the power supply voltage when the power is turned on and generate various reset signals RT3 and RT4. First, the reset circuit RST3 generates the reset signal RT3 based on the DC voltages of 12V and 5V distributed from the power supply board 20. Then, the reset signal RT3 only power-resets the voice memory 28 and is transmitted to the performance control board 23 as it is.

[0116] As shown in Fig. 7(a), the reset signal RT3 transmitted to the performance control board 23 is AND-operated with the output of the WDT (Watch Dog Timer) circuit 58 in the AND gate G1 and power-resets the CPU circuit 51 and the VDP circuit 52 as the system reset signal SYS (see Figs. 7(a) and 7(d)).

[0117] 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 the power reset signal and then rises to the H level. However, if one or more of the DC voltage of 12V or the DC voltage of 5V drops later (usually when the power is turned off), the system reset signal SYS also drops to the L level in response to the drop in the level of the reset signal RT3, so the CPU circuit 51 and the VDP circuit 52 of the performance control board 23 enter the operation stop state.

[0118] Since this system reset signal SYS also changes based on the output of the WDT circuit 58 (normally at the H level), in the state where the reset signal RT3 = H, in the event of a program runaway or the like, when the output of the WDT circuit 58 drops to the L level, the system reset signal SYS also changes to the L level to abnormally reset the CPU circuit 51 and the VDP circuit 52 (see Fig. 7(d)).

[0119] On the other hand, the reset circuit RST4 generates the reset signal RT4 based on the 3.3V generated by dropping the 5V distributed from the power supply board 20. This reset signal RT4 power-resets the voice processor 27 as the power reset signal at the time of power-on.

[0120] As shown in the figure, the reset circuit RST4 is also supplied with the system reset signal SYS returned from the effect control board 23. Therefore, when the CPU circuit 51 or the VDP circuit 52 is abnormally reset, the audio processor 27 is also abnormally reset in synchronization with the abnormal reset of these circuits. As a result, the audio effect returns to the initial state together with the image effect and the lamp effect, and there is no possibility that the unnatural audio effect continues.

[0121] Next, the payout control board 25 as the frame side member GM1 and the main control unit 21 as the board side member GM2 are each equipped with reset circuits RST1 and RST2. When the power is turned on, a power reset signal is generated, and each computer circuit is configured to be power reset.

[0122] Thus, in this embodiment, reset circuits RST1 to RST4 are arranged on the main control unit 21, the payout control unit 25, and the effect interface board 22, respectively, and the system reset signal SYS is not transmitted between the circuit boards. That is, since there is no wiring cable for transmitting the system reset signal SYS, the possibility that the computer circuit is abnormally reset due to noise superimposed on the wiring cable is eliminated.

[0123] However, the reset circuits RST1 and RST2 provided in the main control unit 21 and the payout control unit 25 each incorporate a watchdog timer. When the CPUs of the control units 21 and 25 do not receive a periodic clear pulse, each CPU is forcibly reset.

[0124] In addition, an initialization switch SW that can be operated by an attendant is arranged on the main control unit 21. When the power is turned on, a RAM clear signal CLR indicating whether the initialization switch SW has been turned on is output. This RAM clear signal CLR is transmitted to the one-chip microcomputers of the main control unit 21 and the payout control unit 25, and determines whether to initialize all areas of the built-in RAM of the one-chip microcomputers of the control units 21 and 25.

[0125] Also, as described above, the one-chip microcomputer of the main control unit 21 and the payout control unit 25 receives a power supply abnormality signal ABN from the power supply monitor MNT arranged in the payout control unit 25, and thus starts necessary end processing prior to a power failure or the end of business.

[0126] As shown in FIG. 3(a), the main control unit 21 receives a winning ball count signal indicating a 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. The status signal CON includes, for example, a replenishment depletion signal, a payout shortage error signal, and a lower tray full signal. The operation start signal BGN is a signal that notifies the main control unit 21 that the initial operation of the payout control unit 25 has been completed after the power is turned on.

[0127] Also, the main control unit 21 receives switch signals of detection switches built in each winning port 16 to 18 on the game board, and drives solenoids such as an electric tulip. The solenoids and the detection switches are configured to operate with a power supply voltage VB (12V) distributed from the main control unit 21. Each switch signal indicating a winning state to the symbol start port 15 is converted into a switch signal of TTL level or CMOS level by an interface IC operating with the power supply voltage VB (12V) and the power supply voltage Vcc (5V), and then transmitted to the main control unit 21.

[0128] As described above, the effect interface board 22 receives DC voltages of each level (5V, 12V, 35V) from the power supply board 20 via the centralized connection connector C2 (see FIGS. 3(a) and 7(a)). The DC voltage 12V is the power supply voltage of the digital amplifier 29 and is also used as a drive voltage for an LED lamp or the like. The DC voltage 35V is distributed to appropriate positions of the game frame and used as a drive voltage for a solenoid that reciprocates a movable object. The hybrid capacitor according to the present invention is also arranged on this power supply line.

[0129] On the one hand, the DC voltage of 5V is supplied as the power supply voltage for the circuit elements at various locations on the effect interface board 22, and is also supplied to two DC / DC converters DC1 and DC2 to generate 3.3V and 1.0V (see Fig. 7(a)). The generated DC voltages of 3.3V and 1.0V are supplied to the audio processor 27 as the power supply voltages for I / O (input / output) and chip core respectively. Also, the DC voltage of 3.3V serves as the base voltage for the power reset signal RT4 generated by the reset circuit RST4.

[0130] The DC voltage of 5V distributed to the effect interface board 22 is distributed to the effect control board 23 together with the 3.3V generated by the DC / DC converter DC1. And the DC voltage of 3.3V distributed to the effect control board 23 is supplied as the power supply voltage to the composite chip 50, PROM53 and CGROM55.

[0131] As shown in Fig. 7(a), two DC / DC converters DC3 and DC4 are arranged on the effect control board 23, and 1.5V and 1.05V are generated based on the DC voltage of 5V supplied to each of them. 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 DRAM54. Therefore, the DC voltage of 1.5V is also supplied to the DRAM54 as the power supply voltage.

[0132] As shown in Fig. 3(a), the effect interface board 22 receives the control command CMD and the strobe signal STB from the main control unit 21 and transfers them to the effect control board 23. More specifically, as shown in Fig. 7(a), the control command CMD and the strobe signal STB are transferred to the composite chip 50 (CPU circuit 51) of the effect control board 23 via the input buffer 40. Here, the strobe signal STB is the received interrupt signal IRQ_CMD, and the effect control CPU 63 acquires the control command CMD based on the interrupt processing program (interrupt handler) activated upon receiving the received interrupt signal IRQ_CMD.

[0133] As shown in FIG. 7(a), the input buffer 44 of the effect interface board 22 receives switch signals of the chance button 11 and the volume switch VLSW from the frame relay boards 35 and 36, and transmits each switch signal to the CPU circuit 51 of the effect control board 23. Specifically, it transmits to the CPU circuit 51 a 3-bit length of 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.

[0134] In addition, a lamp drive board 30 and a motor lamp drive board 31 are connected to the effect interface board 22, and are also connected to the lamp drive board 37 via the frame relay boards 35 and 36. As shown in the figure, 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. In FIG. 7(a), for the sake of 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 home sensors that grasp the current positions (rotation positions of the effect motors M1 to Mn) of the movable effect objects, and transmits them to the CPU circuit 51 of the effect control board 23.

[0135] The same type of driver ICs are mounted on the lamp drive board 30, the motor lamp drive board 31, and the lamp drive board 37, and the effect interface board 22 transfers the serial signals received from the effect control board 23 to each driver IC. Specifically, the serial signals are the lamp (motor) drive signal SDATA and the clock signal CK. The drive signal SDATA is transmitted to each driver IC in a clock synchronous manner, and lamp effects by a large number of LED lamps and electric decorative lamps and effect performances by the effect motors M1 to Mn are executed.

[0136] In the case of this embodiment, the lamp effect is executed by three groups of lamps CH0 to CH2. The lamp drive board 37 receives the lamp drive signal SDATA0 of CH0 in synchronization with the clock signal CK0 via the frame relay boards 35 and 36. A series of lamp drive signals SDATA0 transmitted as serial signals are output 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.

[0137] The above is the same for the lamp drive board 30. 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 updates the lighting state of the lamp group CH1 all at once at the timing when the operation control signal ENABLE1 changes to the active level.

[0138] On the other hand, the driver IC mounted on the motor lamp drive board 31 receives a lamp drive signal transmitted in a clock-synchronous manner to drive the lamp group CH2, and receives a motor drive signal transmitted in a clock-synchronous manner to drive the effect motor groups M1 to Mn composed of a plurality of stepping motors. 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. The driver IC that receives this updates the drive states of the lamp group CH2 and the motor groups M1 to Mn at the timing when the operation control signal ENABLE2 changes to the active level.

[0139] Subsequently, the audio circuit SND will be described. As shown in FIG. 7(a), on the effect interface board 22, there are mounted an audio processor (audio synthesis circuit) 27 that reproduces an audio signal based on an instruction received from the CPU circuit 51 (effect control CPU 63) of the effect control board 23, an audio memory 28 that stores compressed audio data and the like, which are the original data of the reproduced audio signal, and a digital amplifier 29 that receives the audio signal output from the audio processor 27.

[0140] The voice processor 27 includes a WDT circuit that automatically resets the set values of the internal circuits to default values (initial values) during abnormal operation of the internal circuits, and a voice control register SRG. Then, based on the operation parameters (set values by voice commands) received by the voice control register SRG from the effect control CPU 63, the voice processor 27 accesses the voice memory 28 and reproduces and outputs necessary voice signals.

[0141] As shown in FIG. 7(a), the voice processor 27 and the voice memory 28 are connected by a 26-bit voice address bus and a 16-bit voice data bus. Therefore, the voice memory 28 can store 1 Gbit (= 2 26 ×16) of data.

[0142] The voice control register SRG is divided into register banks 1 to 6, each identified by a register number from 00H to FFH. Therefore, a predetermined setting operation is realized by the effect control CPU 63 writing a 1-byte operation parameter to the voice control register SRG with a predetermined register number (1-byte length) after specifying the register bank.

[0143] In the case of this embodiment, the register numbers (00H to FFH) of the voice control register SRG correspond to the address space CS3 of the effect control CPU 63. For example, when setting the operation parameter YYH to the voice control register SRG with the register number XXH, the effect 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 effect control CPU 63 writes XXH and YYH to its data bus in this order. In this specification, the subscript H and the prefixes 0X / 0x indicate that the numerical values are in hexadecimal notation.

[0144] In this specification, the address spaces CS0 to CS7 refer to external memories (excluding built-in memories) for the CPU circuit 51 that can define, respectively, the memory type including volatility and the data bus width (8 / 16 / 32 bits). 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 signals that function during READ / WRITE access can be optimized according to the memory type. Note that this setting operation is executed for the bus state controller 66.

[0145] FIG. 7(e) illustrates the setting operation of the voice register SRG by the production control CPU 63, showing the contents of the 2-bit address bus A1 - A0 and the 1-byte data bus D7 - D0. In this embodiment, the chip select signal CS3 is set at power-on to be automatically activated when accessing the address space CS3, which will be described later with reference to FIGS. 9 and 16.

[0146] In any case, in this embodiment, the compressed voice data stored in the voice memory 28 is phrase-compressed data specified by the 13-bit phrase number NUM (000H to 1FFFH), and one piece of a series of background music (BGM) or a set of production sounds (preview sounds), etc., are stored corresponding to up to 8192 types (=2 13 ) each corresponding to the phrase number NUM. And 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.

[0147] As described above, the voice memory 28 having the above configuration is power-reset by the reset signal RT3, and the voice processor 27 is power-reset by the reset signal RT4. As shown in FIG. 7(c), the reset signal RT4 rises to the H level after a predetermined assertion period ASRT (L level section) after power-on. In this embodiment, thereafter, the internal circuit of the voice processor 27 automatically functions and is configured to execute an initialization sequence process. Note that this initialization sequence process is an internal operation executed in a predetermined procedure, and the production control CPU 63 cannot access the voice register SRG during the operation of the initialization sequence process.

[0148] When the initialization sequence process, which is an internal operation, is completed, the interrupt signal IRQ_SND to the CPU circuit 51 changes to the L level, and the CPU circuit 51 (production control CPU 63) executes an 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 instruction, and the details thereof will be further described later with reference to FIG. 18(c).

[0149] As shown in FIG. 7(a), the data bus and the address bus of the CPU circuit 51 of the production control unit 23 also extend to the clock circuit (real time clock) 38 and the production data memory 39 mounted on the liquid crystal interface board 24. 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. When the clock circuit 38 is selected by the chip select signal CS4, the CPU circuit 51 can arbitrarily access an internal register (having a 4-bit long address value).

[0150] In addition, the effect data memory 39 is a memory element SRAM (Static Random Access Memory) that can be accessed at high speed. It is connected to 16 bits of the address bus of the CPU circuit 51 and the lower 16 bits of the data bus. When chip selection is performed by the chip select signal CS4, game achievement information and the like stored in the SRAM (effect data memory) 39 can be appropriately R / W accessed from the CPU circuit 51. In the address space CS4 selected by the chip select signal CS4, addresses 0 to 15 are numbered for the clock circuit 38, so they are not used in the SRAM 39.

[0151] The clock circuit 38 and the effect data memory 39 are driven by a secondary battery (not shown). 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 timing operation of the clock circuit 38 continues, and the game achievement information stored in the effect data memory 39 is permanently stored (non-volatile property is imparted). 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). This RTC interrupt includes an alarm interrupt that can specify the date, day of the week, hour, minute, and second, and a timer interrupt that is activated after a predetermined time has elapsed. In this embodiment, an alarm interrupt for updating the daily game achievement information is utilized at the end of business every day.

[0152] As shown on the right side of FIG. 7(a), the effect control board 23 is equipped with a composite chip 50 incorporating the CPU circuit 51 and the VDP circuit 52, a control memory (PROM) 53 storing the control program of the CPU circuit 51, a DRAM (Dynamic Random Access Memory) 54 that can access a large amount of data at high speed, and a CGROM 55 storing a large amount of CG data necessary for effect control.

[0153] As will be described later with reference to FIG. 10, in this embodiment, the control memory (PROM) 53 is located in the address space CS0 selected by the chip select signal CS0. Further, the DRAM (Dynamic Random Access Memory) 54 configured by DDR (Double-Data-Rate 3) is located in the address space CS5 selected by the chip select signal CS5.

[0154] FIG. 8(a) is a circuit block diagram showing the composite chip 50 constituting the effect control unit 23, including related circuit elements. As shown in the figure, the composite chip 50 of the embodiment incorporates a CPU circuit 51 that issues a display list DL every predetermined time, and a VDP circuit 52 that generates image data based on the issued display list DL and drives display devices DS1 and DS2. The CPU circuit 51 and the VDP circuit 52 are connected through a CPUIF circuit 56 that relays the transmission and reception data between them.

[0155] Note that the VDP circuit 52 incorporates an audio circuit SND that exhibits the same function as the audio processor 27. However, in the first embodiment to be described below, the audio circuit SND is not utilized. However, if the audio circuit SND incorporated in the VDP circuit 52 is utilized as in the embodiment described last, the arrangement of the audio memory 28 and the audio processor 27 becomes unnecessary.

[0156] First, the CPU circuit 51 receives the oscillation output (e.g., 100 / 3 MHz) of the oscillator OSC1 at the HCLKI terminal, multiplies this frequency (e.g., 8 times), and uses it as a CPU operation clock of about 266.7 MHz (see FIG. 14(b)). Here, the oscillator OSC1 is configured to output a spread spectrum wave, thereby taking measures against EMI (Electromagnetic Interference) to prevent radio wave interference / electromagnetic interference.

[0157] Incidentally, in the case of this embodiment, it is also possible to generate the CPU operation clock based on the output of oscillator OSC2 described later instead of oscillator OSC1, and oscillator OSC1 can be made unnecessary. However, in a configuration where the oscillators are unified, the frequency multiplication ratio of the PLL circuit becomes the same fixed value (for example, 5) as in the case of the system clock described below, so the frequency of the CPU operation clock becomes the same 200 MHz (= 40 MHz × 5) as the system clock of the VDP circuit 52.

[0158] Adopting such a configuration has the advantage that the operation cycles of the built-in CPU circuit 51 and the VDP circuit 52 are made common, but it runs counter to the requirement to speed up the operation of the CPU as much as possible. That is, since the operation of the VDP cannot be speeded up beyond a certain level, it is impossible to surely meet the requirement for speeding up the CPU operation. Therefore, in this embodiment, two oscillators are provided to optimize the respective operation cycles of the VDP circuit 52 and the CPU circuit 51. Also, by providing a separate oscillator OSC1, it is possible to improve the above-described EMI countermeasures.

[0159] Based on the above, the VDP circuit 52 will be described. The VDP circuit 52 receives the oscillation output (40 MHz) of an oscillator OSC2 different from oscillator OSC1 at the PLLREF terminal, and uses a PLL (Phase Locked Loop) circuit to multiply the frequency and use it as the system clock of the VDP circuit 52. The frequency multiplication ratio of the PLL circuit is fixedly defined by the set value to a predetermined set terminal. In this embodiment, since the set value to the set terminal (3-bit PLLMD terminal) is the fixed value 5, the system clock of the VDP circuit 52 becomes 200 MHz (= 40 MHz × 5) (see Fig. 14(b)).

[0160] Also, in this embodiment, the dot clocks DCK A ~DCK C、For the DDR clock of the external DRAM 54 as well, it is generated based on the oscillation output (40 MHz) of the oscillator OSC2. That is, the output (40 MHz) of the oscillator OSC2 functions as the reference clock for the entire VDP circuit 52.

[0161] As will be described later with reference to FIGS. 14 and 15, since the display circuits 74A to 74C usually drive display devices with different specifications respectively, the dot clocks DCK A ~DCK C for defining the operations of the respective display circuits 74A to 74C need to correspond to the specifications of the display devices to be driven. Based on such a need, in this embodiment, the display circuits 74A to 74C are configured to receive any one of the output clocks (DCLKAI to DCLKCI) of the dedicated oscillator circuits DCLKA to DCLKC and use it as the dot clock DCK A ~DCK C ~DCK.

[0162] When this configuration is utilized, the design of the multiplication ratio and division ratio described later and the setting process for the VDP register RGij become unnecessary, and the frequency of the dot clock DCK A ~DCK C can be easily optimized. That is, a dedicated oscillator circuit DCLKA with an oscillation frequency F DOT1 corresponding to the dot clock frequency F DOT1 of the main display device DS1 can be provided, and a dedicated oscillator circuit DCLKB with an oscillation frequency F DOT2 corresponding to the dot clock frequency F DOT2 of the sub-display device DS2 can also be provided.

[0163] However, when such a configuration is adopted, dedicated oscillator circuits are required corresponding to the number of display devices, and the device configuration becomes complicated. Therefore, in this embodiment, in order to simplify the device configuration, based on the oscillation output (40 MHz) of the oscillator OSC2, the dot clocks DCK A / DCK Bis being generated. Specifically, as shown in Fig. 14(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 a predetermined multiplication process (×108) and a frequency division process (1 / 40) to obtain a dot clock DCK with a frequency of 108 MHz A is being generated.

[0164] Similarly, for the display circuit 74B that drives the sub-display device DS2, the oscillation output (40 MHz) of the oscillator OSC2 is subjected to a predetermined multiplication process (×108) and a frequency division process (1 / 160) to obtain a dot clock DCK dot with a frequency F B = 27 MHz. Designing these multiplication ratios and frequency division ratios is rather complicated, and it is easier to provide a dedicated oscillation circuit. However, in this embodiment, emphasis is placed on simplifying the device configuration, and no dedicated oscillation circuit is provided.

[0165] In any case, the dot clocks DCK A ~ DCK C are individually set for each of the display circuits 74A to 74C. When these dot clocks DCK A ~ DCK C are collectively referred to, in this specification, they may be referred to as "display clock DCK". Also, in the following description, the dot clocks DCK A and DCK B may be abbreviated as "dot clock DCK" for convenience.

[0166] Note that in this embodiment, since a low-speed LVDS output configuration is not adopted, the LVDS clock CLK of the LVDS signal output via the display circuit 74A also has the same generation process as the dot clock DCK A and has a frequency of 108 MHz. However, in this embodiment, since a dual-link transmission path is adopted, the actual frequency of the LVDS clock CLK is 54 MHz as described with reference to Fig. 4. When a single-link transmission path is adopted, the frequency of the LVDS clock CLK is 108 MHz.

[0167] As described above, in this embodiment, the oscillation output (40 MHz) of the oscillator OSC2 is utilized as the reference clock for the system clock, the dot clock DCK, and the DDR clock. Therefore, considering this importance, the oscillator OSC2 is operated at the same power supply voltage of 3.3 V as the VDP circuit 52, and is configured to oscillate and output the reference clock on the condition that the output enable terminal OE is at the H level (= 3.3 V). And in the event that the power supply voltage of 3.3 V drops below a predetermined level, a non-maskable interrupt (NMI) is configured to occur thereafter because a normal rendering operation cannot be expected.

[0168] In addition, the composite chip 50 is provided with an HBTSL terminal, and based on the logic level of the HBTSL terminal, it is specified whether the boot program (initial setting program) executed after power-on (CPU reset) is stored in the CGROM 55 (HBTSL = H) or in other memories (HBTSL = L). As shown in the figure, in this embodiment, it is set to the HBTSL = L level, and the zero address of the address space CS0 of the rendering control CPU 63 is assigned outside the CGROM. Specifically, the address space CS0 is assigned to the control memory 53.

[0169] On the other hand, when the HBTSL terminal is set to the H level (refer to the dashed line), the zero address of the address space CS0 of the rendering control CPU 63 is assigned to the CGROM 55. In this case, the memory type of the CGROM 55 and the bus width (64 / 32 / 16 bit) are each specified based on the input values to the 2-bit long HBTBWD terminal and the 4-bit long HBTRMSL terminal. These points will be further described later with reference to FIG. 39.

[0170] Next, the CPUIF circuit 56 that relays the transmission and reception data between the CPU circuit 51 and the VDP circuit 52 will be described. As shown in Fig. 8(a), a control memory (PROM) 53 that stores control programs and necessary control data non-volatilely and a work memory (RAM) 57 having a storage capacity of about 2 Mbytes are connected to the CPUIF circuit 56 and are each configured to be accessible from the CPU circuit 51. As described above, the control memory (PROM) 53 is positioned in the address space CS0 selected by the chip select signal CS0, and the work memory (RAM) 57 is positioned in the address space CS6 selected by the chip select signal CS6.

[0171] In this work memory (RAM) 57, a DL buffer BUF is secured that primarily stores a display list DL in which a series of instruction commands for specifying each frame of the display devices DS1 and DS2 are described. In the case of this embodiment, the series of instruction commands include texture load commands such as a TXLOAD command for reading and decoding (expanding) a pixel material (texture) from the CGROM 55, texture setting commands such as a SETINDEX command having functions such as specifying in advance the VRAM area (index space) to be decoded (expanded), primitive drawing commands such as a SPRITE command for arranging the decoded (expanded) pixel material at a predetermined position in the virtual drawing space, environment setting commands such as a SETDAVR command and a SETDAVF command for specifying the drawing area to be actually drawn on the display device among the images drawn in the virtual drawing space by the drawing commands, and index table control commands (WRIDXTBL) regarding the index table IDXTBL for managing the index space.

[0172] Note that Fig. 12(c) shows the relationship between the virtual drawing space (horizontal X direction ±8192: vertical Y direction ±8192), an arbitrarily settable drawing area within the virtual drawing space, and the actual drawing areas in the frame buffers FBa and FBb that primarily store the image data output to the display devices DS1 and DS2.

[0173] Next, the CPU circuit 51 is a circuit having performance equivalent to that of a general-purpose one-chip microcomputer, and includes an effect control CPU 63 that comprehensively controls image effects based on the control program in the control memory 53, a watchdog timer (WDT) that forcibly resets the CPU when the program runs wild, a built-in RAM 59 having a storage capacity of about 16 KB and used as a working area for the CPU, a DMAC (Direct Memory Access Controller) 60 that realizes data transfer without passing through the CPU 63, a serial input / output port (SIO) 61 having a plurality of input ports Si and output ports So, a parallel input / output port (PIO) 62 having a plurality of input ports Pi and output ports Po, and an operation control register REG in which set values are set to control the operations of the respective units. However, in this embodiment in which an external WDT circuit 58 is provided, the watchdog timer (WDT) built in the CPU circuit 51 is not utilized.

[0174] In this specification, for convenience, the expression "input / output port" is used, but in the effect control unit 23, the input / output port includes an independently operating input port and output port. This also applies to the input / output circuits 64p and 64s described below.

[0175] The parallel input / output port 62 is connected to an external device (effect interface board 22) through the input / output circuit 64p, and the effect control CPU 63 is configured to receive, via the input circuit 64p, the 3-bit encoder output of the volume switch VLSW, the switch signal of the chance button 11, the control command CMD, and the interrupt signal STB. The 3-bit encoder output and the 1-bit switch signal are supplied to the parallel input / output port (PIO) 62 via the input / output circuit 64p.

[0176] Similarly, the received control command CMD is supplied to the parallel input / output port (PIO) 62 via the input / output circuit 64p. Also, the strobe signal STB is supplied to the interrupt terminal of the effect control CPU 63 via the input / output circuit 64p, thereby activating the reception interrupt process. Therefore, based on the reception interrupt process, the effect control CPU 63 that has grasped the control command CMD will uniformly control the voice effect, lamp effect, motor effect, and image effect corresponding to this control command CMD through effect lottery and the like.

[0177] Although not particularly limited, in this embodiment, for the lamp effect and the motor effect, the SMC circuit (Serial Management Controller) 78 of the VDP circuit 52 is used. The SMC circuit 78 is a composite controller incorporating an LED controller and a Motor controller, and is configured to be able to output serial signals in a clock synchronization method. Also, the Motor controller is configured to be able to output a latch pulse at an arbitrary timing based on the set value to a predetermined control register 70, and is also configured to be able to input serial signals in a clock synchronization method.

[0178] Therefore, in this embodiment, while outputting the motor drive signal and the LED drive signal from the SMC circuit 78 in synchronization with the clock signal, a latch pulse is output as the operation control signal ENABLE at an appropriate timing. Also, the origin sensor signals SN0 to SNn from the effect motor groups M1 to Mn are configured to be serially input in a clock synchronization method.

[0179] As described with reference to FIG. 7(a), the clock signals CK0 to CK2, the drive signals SDATA0 to SDATA2, and the operation control signals ENABLE0 to ENABLE2 are transmitted to the predetermined drive boards 30, 31, 37 via the output buffers 41 to 43. Also, the origin sensor signals SN0 to SNn are serially input to the SMC circuit 78 from the motor lamp drive board 31 via the input / output buffer 43.

[0180] However, in this embodiment, it is not essential to use the SMC circuit 78. That is, since the CPU circuit 51 has a built-in general-purpose serial input / output port SIO61, these can also be used to execute lamp effects and motor effects.

[0181] Specifically, as shown by the dashed line in Fig. 8(a), in the configuration shown by the dashed line, the clock signals CK0 to CK2 and the drive signals SDATA0 to SDATA2 are output via the input / output circuit 64s internally connected to the serial input / output port SIO61, and the operation control signals ENABLE0 to ENABLE2 are output via the input / output circuit 64p. For the sake of convenience, it is expressed as an input / output port and an input / output circuit, but in fact, it is the output port and the output circuit that function.

[0182] Here, the serial output port SO is configured with a built-in 16-stage FIFO register (see Fig. 50(a)). And the DMAC circuit 60 is activated upon receiving an operation start instruction (see ST18 in Fig. 22(b)) from the effect control CPU 63, and is configured to sequentially read the necessary drive data from the lamp / motor drive table (see Fig. 22(b)) and perform DMA transfer 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 synchronization manner. Note that there are a plurality (for example, 7) of DMA channels in the DMAC circuit, but it is configured to perform DMA transfer of lamp drive data using the third DMA channel with lower priority and perform DMA transfer of motor drive data using the first DMA channel with the highest priority.

[0183] The operation control register REG built in the CPU circuit 51 is a register with a length of 8 bits, 16 bits, or 32 bits whose register number (address value) is numbered after 0xFF400000, and is configured to be accessible for WRITE / READ appropriately from the effect control CPU 63 (see Fig. 10). Therefore, due to the influence of noise or the like, there is a possibility that an unreasonable value is set in the operation control register REG.

[0184] However, for example, by intentionally executing an infinite loop process to activate the external WDT circuit 58, the composite chip 50 can be abnormally reset. In this case, the value of the operation control register REG is returned to the same default value (initial value) as after power-on, and for the VDP circuit 52 as well, the value of the VDP register RGij is returned to the default value (initial value), thereby eliminating the abnormal state.

[0185] Figure 7(b) is a circuit configuration related to this reset operation and is a drawing for explaining the reset mechanism characteristic of this embodiment. In this specification, the VDP register denoted as RGij means any one of the control register group 70 (see FIG. 10) that controls the internal operation of the VDP circuit 52, rather than the operation control register REG built into the CPU circuit 51. Also, the system control circuit 520 shown in FIG. 7(b) means the internal control circuit of the VDP circuit 52 that functions based on the set value to the VDP register RGij (any one of the control register group 70 in FIG. 10) (see FIG. 7(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 rendering control CPU 63.

[0186] Based on the above, the reset mechanism will be described. As shown in FIG. 7(b), the internal circuit of the composite chip 50 is configured to be resettable via three OR gates G2 to G4 that receive the logically inverted system reset signal SYS bar. However, in this embodiment, as shown by the dashed line, since the built-in WDT is not enabled, the input terminal and the output terminal of the OR gate G2 are in a directly connected state.

[0187] 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 is configured to output a reset signal RST on the condition that it receives a predetermined keyword sequence (encryption sequence for reset) from the parallel input / output port (PIO) 62.

[0188] 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 part other than the display circuit in the VDP circuit 52, and each is configured to receive reset signals of the first reset path to the third reset path from the OR gates G2 to G4, respectively.

[0189] First, the OR gate G2 with the input / output terminals directly connected is related to the first reset path and is configured to system-reset the entire CPU circuit 51 based on the system reset signal SYS bar. Also, the OR gate G3 is related to the second reset path and is configured to be able to reset the entire VDP circuit 52 based on the OR logic by receiving the system reset signal SYS bar and the reset signal RST from the pattern check circuit CHK.

[0190] This second reset path is used not only for the power reset operation at power-on but also for the purpose of the production control CPU 63 detecting a predetermined abnormality to abnormally reset the entire VDP circuit 52 and return it to the initial state. Specifically, when 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, the reset signal RST is generated from the pattern check circuit CHK to abnormally reset the entire VDP circuit 52. Note that the display circuit 74 is abnormally reset via the OR gate G4 in the second reset path → the third reset path.

[0191] On the other hand, the internal circuit built in the VDP circuit 52 is configured to be individually resettable in the fourth reset path. The individually resettable internal circuits include the index table IDXTBL shown in Fig. 8(a), the data transfer circuit 72, the preloader 73, the display circuit 74, the drawing circuit 76, the SMC circuit 78, and the audio circuit SND, and the ICM circuit shown in Fig. 13.

[0192] The method for realizing an individual reset operation is as described at the bottom of Fig. 7(b). For example, the display circuit 74 is reset via the fourth reset path 4A → the third reset path by writing a first reset value to a predetermined VDP register RGij (system command register).

[0193] Also, each internal circuit (72, 73, 74, 76, SND, ···) of the VDP circuit 52 is individually reset (fourth reset path 4B) by (1) writing a setting value for specifying the target circuit to a first VDP register RGij (reset RQ register), and then (2) writing a second reset value to a predetermined VDP register RGij (system command register). Although not used in this embodiment, the audio circuit SND can be reset not only by the reset via the fourth reset path 4B but also by writing a reset value to a predetermined VDP register (circuit setting command register) (fourth reset path 4C).

[0194] Since this embodiment has the above configuration, not only does the entire VDP circuit 52 automatically return to the initial state when power is turned on or when the program runs wild, but also each part can be returned to the initial state as needed to recover from abnormal situations. For example, when the drawing circuit 76 freezes due to no READ / WRITE access to the built-in VRAM 71 for a certain period, the drawing circuit 76 is individually initialized via the fourth reset path 4B (see ST16a in Fig. 22(d)). The same applies to the pre-loader 73 and the data transfer circuit 72. In the event of a predetermined abnormality, the pre-loader 73 is initialized via the fourth reset path 4B (see ST27 in Fig. 29), and the data transfer circuit 72 is initialized via the fourth reset path 4B (see ST27 in Figs. 24 and 29).

[0195] Regarding the display circuit 74, when an underrun abnormality where the generation of display data cannot keep up continues at the display timing every 1 / 60 second, the display circuit 74 is individually initialized via the fourth reset path 4A or the fourth reset path 4B (see ST10c in FIG. 22). Note that these individual reset operations will be further described later with respect to the program processing described after FIG. 22.

[0196] As described above, the reset mechanism characteristic of this embodiment has been explained. When any of the reset paths 1 to 4 functions and the internal circuits of the composite chip 50 are reset, the set values of the VDP registers RGij corresponding to those internal circuits return to the same default values as after power-on.

[0197] Subsequently, returning to the internal configuration of the CPU circuit 51, the description of the characteristic circuit configuration will be continued. FIG. 9 is a block diagram showing the internal configuration of the CPU circuit 51 in a little more detail. The CPU circuit 51 includes many characteristic circuits in addition to the built-in RAM 59, DMAC circuit 60, SIO 61, PIO 62, and WDT described above.

[0198] First of all, the CPU circuit 51 has a separate CPU fetch bus for instructions and a CPU memory access bus for data to implement the Harvard architecture. Therefore, the fetch operation in which the CPU core (presentation control CPU) 63 reads instructions from the memory and the memory access operation do not conflict, and high-speed processing is realized by continuous fetch operations.

[0199] In addition, the CPU core 63 is configured to have a plurality (for example, 15) of register banks RB0 to RB14, and is configured such that the use or non-use thereof can be selected. And in the operating state where the use of the register bank RBi is permitted, at the start of interrupt processing, the register values (each 32-bit length) of the built-in registers (for example, 19) of the CPU are automatically saved to the empty register bank RBi.

[0200] Also, when a predetermined return instruction is executed at the end of the interrupt process, for example, 19 pieces of saved data are automatically returned to the corresponding built-in register. Therefore, unlike in a normal configuration, there is no need to execute the PUSH instruction 19 times at the start of the interrupt process and the POP instruction 19 times at the end of the interrupt process, enabling high-speed processing.

[0201] Also, 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, and further speeds up program processing by utilizing cached data when accessing the same address. Note that a bus bridge 65, a controller for peripheral bus (1), a controller for peripheral bus (2), and a controller for peripheral bus (3) are provided to appropriately connect the internal bus with peripheral bus (1), peripheral bus (2), and peripheral bus (3).

[0202] Next, in the circuit configuration of FIG. 9, the bus state controller 66 operates based on appropriate setting values in the operation control register REG and optimizes the memory READ operation and memory WRITE operation with various memory devices connected to the CPU circuit 51. The memory READ operation and memory WRITE operation are executed, for example, at the operation timings illustrated in FIG. 40. However, the operation timings of the address data output from the address bus (28 bits), the READ data read from the READ data bus (32 bits), the WRITE data written to the WRITE data bus (32 bits), and control signals such as chip select signals CS0 to CS7 are appropriately defined according to the characteristics of each memory device based on the setting values in the operation control register REG.

[0203] Since the READ data bus and the WRITE data bus are provided separately, high-speed operation based on the Harvard architecture described above is achieved. In this specification, the address bus (28 Bit), the READ data bus (32 Bit), and the WRITE data bus (32 Bit) may be collectively referred to as external buses for the purpose of distinguishing them from the internal buses shown in FIG. 9 and the peripheral buses (1) to (3) etc.

[0204] FIG. 10 illustrates the address spaces CS0 to CS7 selected by the chip select signals CS0 to CS7, and shows the address map for the rendering control CPU 63 accessed via the bus state controller 66. First, each of the address spaces CS0 to CS7 is defined to be up to 64 Mbytes (= 0x4000000H = 67108864).

[0205] As described above, the address spaces CS0 to CS7 mean external memories for the CPU circuit 51 that can define the memory type including the presence or absence of volatility and the data bus width (8 / 16 / 32 bits) respectively. In this embodiment, as shown in FIGS. 9(b) and 10, the control memory (PROM) 53 is located in the address space CS0, the voice control register SRG of the voice processor 27 is located in the address space CS3, the internal register and SRAM 39 of the clock circuit 38 are located in the address space CS4, the external DRAM (DDR) 54 is located in the address space CS5, the work memory 57 is located in the address space CS6, and the VDP register RGij is located in the address space CS7. Note that the description of the address spaces CS1 and CS2 is omitted.

[0206] Incidentally, as confirmed from FIG. 10, the address spaces CS0 to CS7 are secured not only for address values 0x00000000 to 0x1FFFFFFF (cache valid space) but also for address values 0x20000000 to 0x3FFFFFFF (cache invalid space). This enables arbitrary selection of cache function utilization by invalidating the cache based on the internal operation of the CPU circuit 51 when the address bit A29 = 1, while validating the cache when the address bit A29 = 0.

[0207] Therefore, in this embodiment, among all 32-bit address information (bits A31 to A0), if the values of the remaining 31 bits (bits A31 to A30 and bits A28 to A0) are the same regardless of whether the value of bit A29 is 1 or 0, the same memory address will be indicated. For example, whether accessing the address 0x18000000 or the address 0x38000000 for READ access, the same data will be read from the zero address of the work memory 57. When accessing the address 0x18000000 for READ access, the read data is stored in the cache. FIG. 9(b) illustrates the cache valid / invalid access operation.

[0208] However, based on the set value in a predetermined operation control register REG, the cache operation can also be invalidated for the instruction cache and / or the operand cache. However, in this embodiment, after power-on, the cache operation is enabled for the instruction cache and the operand cache, and then, if necessary, the cache operation is invalidated by accessing the cache invalid space.

[0209] Continuing the description of the memory map in Fig. 10, the address space after 0x40000000 is the internal memory space where the bus state controller 66 does not function. The address range from 0xF0000000 to 0xFF3FFFFF is allocated to the cache address array space. Also, the address ranges from 0xFF400000 to 0xFFF7FFFF and from 0xFFFC0000 to 0xFFFFFFFF are allocated to the built-in peripheral modules. Specifically, they are allocated 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.

[0210] Continuing the description of the internal configuration of the CPU circuit 51, the compare match timer CMT and the multifunction timer unit MTU are circuits that count external signals supplied to the CPU circuit 51, or count the counted clock obtained by multiplying or dividing the internal clock, and generate an interrupt signal or the like when the count result reaches a predetermined value. Although not particularly limited, in this embodiment, the multifunction timer unit MTU is utilized to generate a 1 mS interrupt signal and a 20 μS interrupt signal. Also, the multifunction timer unit MTU is utilized to realize a timing timer TM that measures the elapsed time after the CPU reset.

[0211] Next, the interrupt controller INTC is a circuit that receives internal interrupts from the VDP circuit 52, the DMAC circuit 60, the multifunction timer unit MTU, etc., and external interrupts such as IRQ_CMD, IRQ_SND, IRQ_RCT, and activates an interrupt process (interrupt handler) based on a pre-defined priority order. 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 completed the initialization sequence, and IRQ_RCT is an alarm interrupt signal.

[0212] And in this embodiment, the interrupt priority is such that the command reception interrupt IRQ_CMD has the highest level, and below that, in the order of 20 μS interrupt → 1 mS interrupt → interrupts from the VDP circuit (IRQ0, IRQ1, IRQ2, IRQ3) → DMAC interrupt → IRQ_SND → IRQ_RCT (see Fig. 18(d)). Note that all of these are maskable interrupts, and the non-maskable interrupt NMI is output to the production control CPU 63 when the reference clock is not output from the oscillator OSC2 as described above.

[0213] And in any interrupt processing, the register values (each 32-bit long) of a plurality of built-in registers of the CPU are automatically saved to any one of the free register banks RBi. And when a predetermined return instruction is executed at the end of the interrupt processing, the saved data is automatically restored to the corresponding built-in register.

[0214] Next, the DMAC circuit 60 will be described. The DMAC circuit 60 of the embodiment is a circuit that repeats data transfer a predetermined number of times in a predetermined DMA transfer mode for each predetermined data transfer unit from a transfer source (Source) to a transfer destination (Destination) based on the set value in a predetermined operation control register REG. 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 the DMACi with the highest priority is prioritized by channel arbitration at a predetermined timing.

[0215] As for the utilization of the DMAC circuit 60, for example, in an embodiment where the serial output port SO functions (refer to the dashed line part in Fig. 10(a)), in the operation control register REG of the CPU circuit 51, 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 (a fixed value of the transfer destination address), the data transfer unit (8 bits), and the number of transfers are specified. Then, upon receiving an operation start instruction in a predetermined operation control register REG, the DMAC circuit 60 performs DMA transfer of drive data to a predetermined transfer destination address while updating the transfer source address. And when all the DMA transfers are completed, a DMAC interrupt (operation end interrupt) is configured to occur.

[0216] This point is almost the same in the embodiment where the DMAC circuit 60 issues the display list DL (Figs. 25 and 29(c)). That is, the effect control CPU 63 sets the start address of the transfer source (DL buffer BUF), the address of the transfer destination (transfer port TR_PORT), the DMA transfer mode, the data transfer unit, the number of transfers, and other conditions in a predetermined operation control register REG of the CPU circuit 51. Note that these points will be further described later with respect to Fig. 25.

[0217] By the way, generally, for the DMA transfer mode, there are considered a cycle steal transfer mode in which the DMA operation does not occupy the memory bus, such as releasing the bus control right during the unit operation (R operation / W operation) of the DMA transfer; a burst transfer (pipeline transfer) mode in which the bus control right is not released until the specified number of transfers is completed, such as continuous multiple R operations or W operations; a demand transfer mode in which the DMA operation continues while a DMA transfer request (demand) received from another device is active, etc. However, the DMAC circuit 60 of this embodiment functions in a cycle steal transfer mode with at least one cycle of memory release period provided between the start of the read access (R operation) and the start of the write access (W operation) during the DMA transfer, so as not to interfere with the operation of the effect control CPU 63.

[0218] FIG. 11 is a drawing for explaining a cycle steal transfer operation (a1) and a pipeline transfer (a2). As shown in FIG. 11(a1), the DMAC circuit 60 that functions in the cycle steal transfer mode operates with at least one cycle between the start of a read access (R) and the start of a write access (W) for one data transfer. During this idle cycle, the bus can be used by the rendering control CPU 63. As is clear from the comparison between FIGS. 11(a1) and 11(a2), in the pipeline transfer, the bus is not released to the CPU until one cycle (one operand transfer) is completed, whereas in the cycle steal transfer mode, the bus is released to the CPU for each read access, so the operation of the CPU is not significantly delayed.

[0219] And, for example, when issuing to the VDP circuit 52 of the display list DL, in an embodiment using the DMAC circuit 60, a data transfer unit of one cycle (one operand) is set to 32×2 bits, and while appropriately increasing the source address of the built-in RAM 59 in which the display list DL is stored (+8 for each operand transfer), a DMA transfer operation is executed with respect to the transfer port register TR_PORT (see FIG. 13) of the data transfer circuit 72 specified by a fixed address.

[0220] As will be described later, in the embodiment, by adding a necessary number of NOP (no operation) commands to the display list DL, the overall data size is adjusted to a fixed value (for example, 4×64 = 256 bytes, or an integer multiple thereof), and the issuance of the display list DL is completed by repeating 32-bit×2 one-operand transfers 32 times (or an integer multiple thereof). Note that even when the drawing circuit 76 executes an NOP command, it is in a no operation state and practically no change occurs.

[0221] Also, when classifying the operation mode with respect to the DMA transfer conditions, generally, a single operand transfer (see FIG. 11(b1)), a continuous operand transfer (see FIG. 11(b2)), and a non-stop transfer (see FIG. 11(b3)) can be considered.

[0222] Here, single operand transfer means an operation mode in which, as shown in Fig. 11(b1), every time a DMA transfer request is given, the transfer of one operand is repeated, and when the byte count for counting the number of transferred bytes becomes zero, a DMA interrupt request occurs. Next, continuous operand transfer means an operation mode in which, as shown in Fig. 11(b2), with one DMA request, the DMA transfer is repeated until the byte count becomes zero.

[0223] In these continuous operand transfer (b2) and single operand transfer (b1), channel arbitration is performed every time one operand transfer is completed, and on the condition that there is no DMA request for the channel with the highest priority, the transfer of the current channel is continued (channel arbitration operation mode). Therefore, in this embodiment, the issuance of the display list DL to the VDP circuit and the DMA transfer of lamp drive data and motor drive data adopt the single operand transfer method. And during parallel operation, for example, the DMACi of the optimal channel is used so that channel arbitration is performed in the order of motor data > display list DL > lamp data in terms of priority.

[0224] On the other hand, non-stop transfer is an operation mode in which channel arbitration is not executed. As described in Fig. 11(b3), with one DMA request, the DMA transfer is continuously repeated until the byte count becomes zero. In this embodiment, during the memory section initialization process (SP8 in Fig. 16) at power-on, the program and data are DMA transferred in non-stop transfer.

[0225] Having described the CPU circuit 51 above, next, regarding the VDP circuit 52, a CGROM 55 for storing compressed data that is a component of still images and moving images constituting image rendering, an external DRAM (Dynamic Random Access Memory) 54 having a storage capacity of about 4 Gbit, a main display device DS1, and a sub-display device DS2 are connected to the VDP circuit 52. Note that the DRAM 54 is preferably composed of DDR3 (Double-Data-Rate3 SDRAM).

[0226] Here, as shown in FIG. 14(b), the DRAM 54 receives a DDR clock generated based on the oscillation output (40 MHz) of the oscillator OSC2. Also, the DRAM 54 of the embodiment incorporates a Refresh Counter, and at the initial setting (SP4 in FIG. 16), the Self-Refresh Operation is enabled, so the refresh control operation by the effect control CPU 63 is unnecessary.

[0227] Although not particularly limited, in this embodiment, the CGROM 55 is composed of a flash SSD (solid state drive) configured with a NAND-type flash memory having a storage capacity of about 62 Gbit, and is configured to acquire necessary compressed data by serial transmission. Therefore, the problem of skew (difference in transmission speed for each bit data) that inevitably occurs in parallel transmission is solved, and an extremely high-speed transmission operation becomes possible. Although not particularly limited, in this embodiment, the CGROM 55 is accessed at high speed by the HSS (High Speed Serial) method compliant with Serial ATA.

[0228] Regardless of whether the HSS method compliant with Serial ATA is adopted or not, the NAND-type flash memory is mechanically more stable than a hard disk and enables high-speed access. On the other hand, since it is a sequential access memory, there is a problem with random accessibility compared to DRAM and SRAM (Static Random Access Memory). Therefore, in this embodiment, a preload operation is executed to read a group of compressed data (CG data) into the DRAM 54 prior to the drawing operation, thereby realizing smooth random access of the CG data during the drawing operation. Incidentally, the access speed becomes slower in the order of built-in VRAM > external DRAM > CGROM.

[0229] Specifically, the VDP circuit 52 includes a control register group 70 in which various operation parameters that define the operation of the VDP (Video Display Processor) can be set by the production control CPU 63, a built-in VRAM (video RAM) 71 of about 48 megabytes used when generating image data to be displayed on the display devices DS1 and DS2, 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, an index table IDXTBL that can specify the address information of the Source and Destination regarding the built-in VRAM 71, a preloader 73 that can execute a preload operation for READ access to the CGROM 55 prior to the drawing operation, a graphics decoder (GDEC) 75 that decodes (decrypts / expands) the compressed data read from the CGROM 55, a drawing circuit 76 that appropriately combines the still image data and video data after decoding (expansion) to generate image data for one frame of each of the display devices DS1 and DS2, a geometry engine 77 that generates a stereoscopic image by appropriate coordinate transformation as part of the operation of the drawing circuit 76, three systems (A / B / C) of display circuits 74A to 74C that read the image data of the frame buffers FBa and FBb generated by the drawing circuit 76 and can execute appropriate image processing in parallel, an output selection unit 79 that appropriately selects and outputs the outputs of the three systems (A / B / C) of display circuits 74, an LVDS unit 80 that converts the image data output by the output selection unit 79 into an LVDS signal, an SMC circuit 78 that can perform serial data transmission and reception, a CPUIF unit 81 that relays data transmission and reception between the CPUIF circuit 56, a CG bus IF unit 82 that relays data reception from the CGROM 55, a DRAMIF unit 83 that relays data transmission and reception with the external DRAM 54, and a VRAMIF unit 84 that relays data transmission and reception with the built-in VRAM 71 (see FIG. 8(a)). Note that an audio circuit SND is also built in.

[0230] FIG. 8(b) shows the relationship between the CPUIF unit 81, the CG bus IF unit 82, the DRAMIF unit 83, and the VRAMIF unit 84, and the control register group 70, the CGROM 55, the DRAM 54, and the built-in VRAM 71. As shown, the CG data acquired from the CGROM 55 is transferred to the preload area of the external DRAM 54 via the data transfer circuit 72 and the DRAMIF unit 83 as, for example, preload data.

[0231] However, the above-described preload operation is not an essential operation at all, and the data transfer destination is not limited to the external DRAM 54 and may be the built-in VRAM 71. Therefore, for example, in an embodiment where the preload operation is not executed, the CG data is transferred to the built-in VRAM 71 via the data transfer circuit 72 and the VRAMIF unit 84 (FIG. 8(b)).

[0232] Incidentally, in this embodiment, the built-in VRAM 71 requires an expansion area for the compressed data read from the CGROM 55, a frame buffer area for storing image data specifying the ARGB information (32 bits = 8 × 4) of each of the W × H display pixels of the display device, and a Z buffer area for storing the depth information of each display pixel. In the ARGB information, A means 8-bit alpha plane data, and RGB means 8-bit data of the three primary colors.

[0233] Here, each of the above-described areas of the built-in VRAM 71 is indirectly accessed based on various instruction commands (such as the textures and sprites described above) described in the display list DL by the rendering control CPU 63. However, in each READ / WRITE access, it is cumbersome to specify the Destination address and the Source address of the built-in VRAM 71 one by one. Therefore, in this embodiment, in the initial process after CPU reset, a one-dimensional or two-dimensional logical address space (hereinafter referred to as an index space) required for the drawing operation is secured, and index numbers are assigned to each index space, enabling access based on the index numbers.

[0234] Specifically, after the CPU is reset, the built-in VRAM 71 is roughly classified into three types of memory areas, and a necessary number of index spaces are secured in each memory area. Then, by constructing an index table IDXTBL (see Fig. 12(a)) that associates and stores the index space and the index number, operations based on the subsequent index numbers are realized.

[0235] This index space needs to be (1) added after the initial processing or, conversely, (2) released. Therefore, a flag area FG that can determine whether the timing is such that addition / release processing is possible and whether the processing such as addition / release has actually been completed is provided in the index table IDXTBL during the operation of the production control CPU 63 for these addition / release operations. The built-in VRAM 71 is roughly classified into three types of memory areas: two AAC areas (a1, a2) described below, a page area (b), and an arbitrary area (c). Corresponding to these three types of memory areas (a1, a2)(b)(c), the index table IDXTBL is divided into three sections (Fig. 12(a)). As shown in the figure, in this embodiment, as the AAC area (a), a first AAC area (a1) and a second AAC area (a2) are secured, but it is not particularly limited, and only one of them may be used. In the following description, when the first and second AAC areas (a1, a2) are collectively referred to, they may be referred to as the AAC area (a).

[0236] In the case of this embodiment, the built-in VRAM 71 is configured to be divisible into: (a) an AAC region where an index space and its index number are automatically assigned by internal processing and which has a memory cache function; (b) a page region where an index space can be secured within a range that is an integral multiple of a two-dimensional space of, for example, 4096 bits × 128 lines as a unit space; and (c) an arbitrary region where the start address (space start address) STx and the horizontal size Hx can be arbitrarily set (see FIG. 12(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 region (c) must have its lower 11 bits set to 0 and be in units of a predetermined number of bits (2048 bits = 256 bytes).

[0237] After the CPU reset, the maximum value of the address space required for each and the region start address (lower 11 bits = 0) are defined, and an AAC region (a1), a second AAC region (a2), and a page region (b) are secured, and the remaining memory region becomes the arbitrary region (c). In order to smooth the internal operation of the VDP circuit 52, the maximum value of the address space of the AAC region is defined in units of 2048 bits, and the maximum value of the address space of the page region is an integral multiple of the above-mentioned unit space of 4096 bits × 128 lines.

[0238] Next, the required number of index spaces are set in each of the regions (a1, a2), (b), and (c) thus secured. When using the arbitrary region (c), in order to smooth the internal operation of the VDP circuit 52, the horizontal size Hx of the index space for handling two-dimensional data can be arbitrarily set as a multiple of 256 bits, while its vertical size is a fixed value (for example, 2048 lines).

[0239] In any case, since the first and second AAC regions (a1, a2) are automatically assigned an index space and an index number by the VDP circuit 52, for example, if the decoding destination is specified as the AAC region (a) by the SETINDEX command of the texture setting command, in the TXLOAD (texture load) command for reading CG data from the CGROM 55, it is only necessary to specify the source address of the CGROM 55 and the horizontal and vertical sizes after expansion (decoding). Therefore, in this embodiment, for still images (textures) such as characters that temporarily appear during a preview effect, etc., and I-stream videos, the decoding destination is set to the AAC region (a).

[0240] All of these AAC regions (a) are provided with a memory cache function. For example, when the same texture of the CGROM 55 is read into the AAC region (a) multiple times, the decoded data cached in the AAC region (a) can be utilized from the second time onwards, and extra READ access and decoding processing can be suppressed. However, when the AAC region (a) is used up, the old data is automatically destroyed. Therefore, in this embodiment, when using the AAC region (a), in principle, the first AAC region (a1) is used, and only specific textures that are repeatedly used are acquired in the second AAC region (a2).

[0241] Examples of textures that are repeatedly used include characters that repeatedly appear during a predetermined preview effect and background images when the background screen is constructed with still images. In such cases, after setting the decoding destination to the second AAC region (a2) by the SETINDEX command of the texture setting command and decoding textures such as characters and background images into the second AAC region (a2) by the TXLOAD command, the decoding result is protected by not using the second AAC region (a2).

[0242] Then, afterwards, after specifying the decoding destination as the second AAC area (a2) by the SETINDEX command, when the same TXLOAD command for reacquiring the acquired texture is executed, since the acquired texture results in a cache hit, the READ access to the CGROM 55 and the time required for the decoding process can be eliminated. As will be described later, such a cache hit function is also exhibited by the preloaded data pre-read into the preload area. However, the preloaded data that results in a cache hit in the preload area is compressed data before decoding, whereas the significance lies in the fact that the data that results in a cache hit in the AAC area is the decompressed data after decoding.

[0243] Incidentally, a texture generally refers to a concept such as the texture and feel of an object's surface. However, in this specification, it is used as a concept that includes not only the sprite image data constituting a still image, the image data constituting one frame of a video, and the image data pasted onto drawing primitives such as triangles and rectangles, but also the image data after decoding. When copying image data (hereinafter referred to as moving for convenience) inside the built-in VRAM 71, the SETINDEX command of the texture setting command system is used to set the source image data to be moved as a texture, and then the SPRITE command is executed.

[0244] Note that when the SPRITE command is executed, the source image data to be moved is formally drawn in the virtual drawing space shown in FIG. 12(c). However, if the correspondence relationship between the drawing area in the virtual drawing space actually drawn on the display device and the index space serving as the frame buffer is set in advance by the environment setting commands (SETDAVR, SETDAVF) or the texture setting commands (SETINDEX), for example, by drawing in the virtual drawing space by the SPRITE command, the source image data to be moved is drawn in a predetermined index space (frame buffer) (see FIG. 12(c)).

[0245] 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 can be secured for each, and each index space is specified by an independent index number for each of the areas (a), (b), and (c). The index number is, for example, 1 byte long, and for the page area (b) and the arbitrary area (c) (excluding the AAC area (a) automatically assigned by the internal circuit), the rendering control CPU 63 can freely assign the index number within the range of 0 to 255.

[0246] Therefore, in this embodiment, as shown in Fig. 12(a), for the display device DS1, a pair of frame buffers FBa are secured in the arbitrary area (c), and index numbers 255 and 254 are assigned to both of the double buffer structures. That is, as the frame buffer FBa for the main display device DS1, an index space 255 and an index space 254 that are toggled and used are secured. Although not particularly limited, the index spaces 255 and 254 have a horizontal size of 1280 corresponding to the number of horizontal pixels of the display device DS1. Since each pixel is specified by 32-bit ARGB information, the horizontal size 1280 means 32×1280 = 40960 bit (a multiple of 256 bit).

[0247] Also, for the display device DS2, another pair of frame buffers FBb are secured in the arbitrary area (c), and index numbers 252 and 251 are assigned to both of the double buffer structures. That is, as the frame buffer FBb for the sub-display device DS2, an index space 252 and an index space 251 are secured. The index spaces 252 and 251 have a horizontal size of 480 corresponding to the number of horizontal pixels of the display device DS2. Also in this case, since each pixel is specified by 32-bit ARGB information, the horizontal size 480 means 32×480 = 15360 bit (a multiple of 256 bit).

[0248] Note that securing the frame buffers FBa and FBb in the arbitrary area (c) means that the arbitrary area (c) can be set to any horizontal size as a multiple of 32 bytes (= 256 bits = 8 pixels). As described above, if it is made to match the number of horizontal pixels of the display devices DS1 and DS2, there will be no waste in the secured area. On the other hand, in the page area (b), only a horizontal / vertical size that is an integer multiple of the unit space of 128 pixels × 128 lines can be set.

[0249] 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 the area with a horizontal size of 1280 × a vertical size of 1024 becomes the valid data area for the main display device DS1. The same applies to the sub-display device DS2. In the frame buffer FBb, only the area with a horizontal size of 480 × a vertical size of 800 becomes the valid data area for the sub-display device DS2 (see FIGS. 12(c) and 22(e)).

[0250] This point will be described in more detail later. In any case, the frame buffers FBa and FBb are used alternately by each double buffer (255 / 254, 252 / 251) as the drawing area for the drawing circuit 76, and also used alternately by each double buffer (255 / 254, 252 / 251) as the display area for the display circuits 74A and 74B. In this embodiment, since a Z-buffer for storing the depth information of the display pixels is not used, there is a missing number (253). However, when a Z-buffer is used, the index spaces 253 and 250 with index numbers 253 and 250 in the arbitrary area (c) become the Z-buffers for the display device DS1 and the display device DS2.

[0251] Also, in this embodiment, when an additional index space (memory area) is secured in an arbitrary area (c) where frame buffers FBa and FBb are secured, index numbers starting from 0 are assigned. Although not limited in any way, in this embodiment, an index space (0) is secured in the arbitrary area (c) as a work area for a preview effect in which an effect image composed of characters and other still images appears in a part of the display screen in an appropriate rotation posture as needed.

[0252] However, the use of the work area is not essential, and instead of the arbitrary area (c), an index space as a work area may be secured in the page area (b). If the page area (b) is used, an index space with a multiple dimension of a square unit space with a horizontal size of 12 8 (=4096 bit) × vertical size of 128 can be secured, which is suitable for handling small effect images.

[0253] By the way, in this embodiment, the background image is also composed of a video including a moving image, and the image effect is realized almost only by a moving image. In particular, during a variable effect, a large number (usually 10 or more) of moving images are drawn simultaneously. These moving images are all stored in the CGROM 55 in a compressed state as a series of moving image frames, and are classified into an I-stream moving image composed only of I-frames and an IP-stream moving image composed of I-frames and P-frames. Here, an I-frame (Intra coded frame) means a frame that compresses the input image as it is independently of other screens. On the other hand, a P-frame (Predictive coded frame) means a frame that performs forward prediction coding, and an I-frame or P-frame located in the past in terms of time is required.

[0254] Therefore, in this embodiment, for the IP-stream moving image, it is expanded not in the AAC area (a) where there is a concern about destruction of old data, but in the page area (b). That is, in the page area (b) where an index space with a multiple dimension of a horizontal size of 128 × vertical size of 128 can be secured, a large number of index spaces (IDX 0 ~IDXN ) is ensured so that a series of video frames are always decoded using the same index space IDXi corresponding to each video MVi. That is, video MV1 is expanded into index space IDX1, video MV2 is expanded into index space IDX2, and similarly, video MVi is configured to be expanded into index space IDXi.

[0255] More specifically for video MVi, after specifying in advance by the SETINDEX command that "the decoding destination of the IP stream video MVi is the index space (i) with index number i in the page area (b)", the TXLOAD command for acquiring one video frame of the IP stream video MVi is executed.

[0256] Then, one video frame (any one of the series of video frames) on the CGROM55 specified by the TXLOAD command is first acquired in the AAC area (a), and then, by the GDEC (graphics decoder) 75 that automatically starts, the acquired video frame is decoded and expanded into the index space (i) of the page area (b).

[0257] On the other hand, in this embodiment, for the I-stream video, it is treated the same as a still image. By the SETINDEX command, it is specified that "the decoding destination of the I-stream video MVj is the first AAC area (a1)", and the TXLOAD command is executed. As a result, the video frame is acquired in the first AAC area (a1), and then, the GDEC75 that automatically starts expands the decoded data in the first ACC area (a1). As described above, since the index space of the AAC area (a) is automatically generated, 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), are specified by the TXLOAD command regardless of whether the expansion destination is the AAC area (a) or the page area (b).

[0258] Incidentally, the IP stream video MVi and the I stream video MVj are generally composed of N video frames (I frames and P frames). Therefore, in the TXLOAD command, for example, the Source address of the CGROM55 in which the k-th (1 ≦ k ≦ N) video frame is stored and the horizontal and vertical sizes after expansion are specified. Although not limited in any way, in an embodiment where still images are hardly used, most of the 48M bytes of the address space of the built-in VRAM71 (about 30M bytes) are allocated to the page area (b). And in an embodiment where 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 above-mentioned AAC area is not utilized either.

[0259] Note that in order to speed up the decoding process of the compressed video data, it is also conceivable to provide a dedicated GDEC (graphics decoder) circuit. And if the dedicated GDEC circuit is built into the VDP circuit 52, in the decoding process of the compressed video data composed of N compressed video frames, it is sufficient to instruct the GDEC circuit with the start address of the video compressed data. Therefore, it is not necessary to specify the start address for each of the N compressed video frames.

[0260] However, if a plurality of such dedicated GDEC circuits are built in for each compression algorithm, the internal configuration of the VDP circuit 52 will become even more complicated. Therefore, in this embodiment, it is a software GDEC, and for data such as IP stream video, I stream video, still images, and other alpha values, the decoding process is realized by software processing corresponding to each compression algorithm. Note that the processing time difference between the hardware processing and the software processing is not much of a problem. The processing time that becomes a problem is only the access (READ) time from the CGROM55.

[0261] Next, returning to FIG. 8(a) and continuing the description, the data transfer circuit 72 is a circuit that performs a data transfer operation between a resource (storage medium) inside the VDP circuit and an external storage medium in a DMA (Direct Memory Access) manner, using these as a transfer source port or a transfer destination port. FIG. 13 is a block diagram showing the internal configuration of this data transfer circuit 72 together with related circuit configurations.

[0262] As shown in FIG. 13, the data transfer circuit 72 is configured to transmit and receive data with the CGROM 55, the DRAM 54, and the built-in VRAM 71 via an integrated connection bus ICM having a router function. Note that the CGROM 55 and the DRAM 54 are accessed via the CG bus IF unit 82 and the DMAMIF unit 83.

[0263] On the other hand, the CPU circuit 51 issues a display list DL to the drawing circuit 76 and the preloader 73 via a transfer port register TR_PORT built in the data transfer circuit 72. Although the CPU circuit 51 and the data transfer circuit 72 are connected bidirectionally, when issuing the display list DL, the transfer port register TR_PORT functions as a data write port that receives one unit of data constituting the display list DL. Note that the write 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.

[0264] As shown in the figure, the effect control CPU 63 can perform a WRITE access to the transfer port register TR_PORT via the CPUIF unit 81. On the other hand, when using the DMAC circuit 60, the DMAC circuit 60 directly performs a WRITE access to the transfer port register TR_PORT. Then, a series of instruction commands written to the transfer port register TR_PORT (that is, an instruction command sequence constituting the display list DL) is configured to be automatically accumulated in the CPU bus control unit 72d having a FIFO buffer with a FIFO structure (32 bits × 130 stages) in 32-bit units.

[0265] In addition, this data transfer circuit 72 executes data transmission and reception operations through transmission paths of three channels ChA to ChC, and includes a ChA control circuit 72a (N = 130 stages) having a FIFO buffer with a FIFO structure (64 bits × N stages), a ChB control circuit 72b (N = 1026 stages), and a ChC control circuit 72c (N = 130 stages).

[0266] Then, the instruction command sequence (display list DL) stored in the CPU bus control unit 72d is transferred to the drawing circuit 76 or the preloader 73 based on the set value to the data transfer register RGij (a type of various control registers 70) by the effect control CPU 63. As shown by the arrow, the display list DL is configured to be transferred from the CPU bus control unit 72d to the drawing circuit 76 via the FIFO buffer of the ChB control circuit 72b and to the preloader 73 via the FIFO buffer of the ChC control circuit 72c.

[0267] In this embodiment, the ChB control circuit 72b and the ChC control circuit 72c are specialized for the transfer operation of the display list DL, and the data stored in the FIFO buffer of the CPU bus control unit 72d is transferred to the display list analyzer of the drawing circuit 76 or the preloader 73 as a part of the display list DL via the FIFO buffers of the ChB control circuit 72b and the ChC control circuit 72c, respectively.

[0268] Then, the drawing circuit 76 starts a drawing operation based on the transferred display list DL. On the other hand, the preloader 73 executes a necessary preloading operation based on the transferred display list DL. By the preloading operation, the CG data in the CGROM 55 is pre-read into the preloading area secured in the DRAM 54, and a display list DL (hereinafter referred to as a rewritten list DL') in which the source address of the texture is changed with respect to the TXLOAD command or the like is stored in the DL buffer area BUF' secured in the DRAM 54.

[0269] On one hand, for data transfer between storage media such as the CGROM 55, DRAM 54, and the built-in VRAM 71, the ChA control circuit 72a and the connection bus access arbitration circuit 72e function. Also, when accessing the built-in VRAM 71 that requires the address information of the index table IDXTBL, the IDXTBL access arbitration circuit 72f functions. Specifically checking, the ChA control circuit 72a functions, for example, in cases where (a) transferring the compressed data of the CGROM 55 to the built-in VRAM 71, (b) preloading (prefetching) the compressed data of the CGROM 55 and transferring it to the external DRAM 54, or (c) transferring the prefetch data in the preload area to the built-in VRAM 71.

[0270] Here, the ChA control circuit 72a is configured to be operable in parallel with the ChB control circuit 72b and the ChC control circuit 72c. The operations (a) to (c) described above can be executed in parallel with the issuance operation of the display list DL (ST8 in FIG. 22, PT11 in FIG. 27) and the transfer operation of the rewrite list DL' (PT10 in FIG. 27). Also, the ChB control circuit 72b and the ChC control circuit 72c can be executed simultaneously. For example, the process of step PT10 in FIG. 27 where the ChB control circuit 72b functions and the process of step PT11 where the ChC control circuit 72c functions can be executed in parallel. However, since the transfer port register TR_PORT is single, at the timing when either one (72b / 72c) is using the transfer port register TR_PORT, the other one (72c / 72b) cannot access the transfer port register TR_PORT.

[0271] During the operation of the ChA control circuit 72a, the connection bus access arbitration circuit 72e arbitrates (Arbitration) data transmission with each memory 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 where 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. 28(b)).

[0272] As described above, the data transfer circuit 72 of this embodiment realizes high-speed data transfer between an arbitrarily selected data transfer source from various memory resources (Resource) and an arbitrarily selected data transfer destination from various memory resources (Resource). As can be confirmed from Fig. 13, the memory resources in which the data transfer circuit 72 functions include not only the built-in VRAM 71 but also external devices via the CPUIF unit 56, the CG bus IF unit 82, and the DRAMIF unit 83.

[0273] And the data transfer amount between the external device in which the ChA control circuit 72a functions, such as the amount of data to be acquired at one time from the CGROM 55 (memory sequential READ), is huge compared to the case of the display list DL in which the ChB control circuit 72b and the ChC control circuit 72c function, and the data transfer amounts are greatly different from each other.

[0274] Here, regarding these various data transfers, it may be considered to configure the unit data amount and the total transferred data amount so that they can be finely set. However, this would complicate the control operations inside the VDP and impede smooth transfer operations. Therefore, in this embodiment, the minimum data amount Dmin for data transfer is uniquely defined, and the total transferred data amount is restricted to be an integer multiple of the minimum data amount DTmin, thereby realizing a high-speed and smooth data transfer operation. Although not particularly limited, in the data transfer circuit 72 of the embodiment, the minimum data amount Dmin (unit data amount) is set to 256 bytes, and the total transferred data amount is restricted to an integer multiple of this value.

[0275] Therefore, the instruction command sequence of the display list DL accumulated in the FIFO buffer of the CPU bus control unit 72d for every 32 bits is transferred to the ChB control circuit 72b and the ChC control circuit 72c at the timing when its total amount reaches the minimum data amount Dmin, and is accumulated in their respective FIFO buffers.

[0276] The display list DL is composed of a series of instruction commands. In this embodiment, corresponding to the write unit (32 bits) of the transfer port register TR_PORT, the display list DL is composed only of instruction commands whose command length is an integer N times (N>0) of 32 bits. Therefore, the drawing circuit 76 and the preloader 73 that receive the instruction commands 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 that is an integer N times of 32 bits does not necessarily mean that all of them are significant bits, and it includes don't care bits and means an integer N times of 32 bits.

[0277] Next, the pre-loader 73 will be described. As briefly described above, the pre-loader 73 interprets the display list DL transferred from the data transfer circuit 72 (ChC control circuit 72c), and transfers the CG data on the CGROM 55 referred to by the TXLOAD command to the pre-load area of the DRAM 54 in advance. Also, regarding this TXLOAD command, the pre-loader 73 stores in the DL buffer BUF' of the DRAM 54 a rewritten 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 pre-load area are secured in advance during the initial process after CPU reset (SS3 in FIG. 21).

[0278] Then, at the start of the drawing operation of the drawing circuit 76, the rewritten list DL' is transferred 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. Then, the drawing circuit 76 executes the drawing operation based on the rewritten list DL'. Therefore, based on the TXLOAD command or the like, the CG data that should originally be obtained from the CGROM 55 is obtained from the pre-load area of the DRAM 54 as pre-loaded data that has been pre-read into the pre-load area. In this case, the pre-loaded data can be repeatedly used unless it is overwritten and erased, and the pre-loaded data that has a cache hit in the pre-load area is repeatedly reused.

[0279] In this embodiment, since the pre-load area is set in the external DRAM 54 having a sufficient storage capacity, the above cache hit function functions effectively. Also, since the storage capacity of the external DRAM 54 is large, for example, multiple pre-loads in which CG data for a plurality of frames is pre-loaded at once are possible. That is, regarding the operation period of the pre-loader 73, multiple pre-loads are realized by appropriately setting the operation period of a series of pre-load operations including the pre-reading operation of the CG data within a range that is an integer multiple of the operation cycle δ during the intermittent operation of the VDP circuit 52.

[0280] However, in the following description, for the sake of convenience, an example without multiple preloads will be described. Therefore, the preloader 73 of the example will complete the preloading operation for one frame during one operation cycle (δ). As will be described later with reference to FIG. 22, in this example, the operation cycle δ during the intermittent operation of the VDP circuit 52 is 1 / 30 second, which is twice the period of the vertical synchronization signal of the display device DS1.

[0281] Next, the drawing circuit 76 sequentially analyzes the instruction command sequences of the display list DL and the rewrite list DL' transferred via the data transfer circuit 72, and in cooperation with the graphics decoder 75, the geometry engine 77, etc., draws an image for one frame of each of the display devices DS1 and DS2 on the frame buffer formed in the VRAM 71.

[0282] As described above, in the example where the preloader 73 functions, the reference destination of the CG data in the rewrite list DL' is the preloading area set in the DRAM 54 instead of the CGROM 55. Therefore, sequential access to the CG data that occurs during the execution of drawing by the drawing circuit 76 can be quickly executed, and even for high-resolution videos with intense movement, drawing can be performed without problems. That is, according to this example, while utilizing an inexpensive SATA module as the CGROM 55, complex and advanced image effects can be executed.

[0283] By the way, regardless of whether the preloader 73 functions or not, when data corruption occurs during the transfer of the display list DL or the rewrite list DL', the drawing circuit 76 cannot detect this. Also, due to the influence of noise, etc., the drawing circuit 76 may freeze and the READ / WRITE access to the built-in VRAM 71 may abnormally stop. Therefore, in this example, when the drawing circuit 76 detects an unreasonable instruction command (bit sequence that cannot be analyzed) or when there is no READ / WRITE access to the built-in VRAM 71 for a certain period, it is configured to generate a drawing abnormality interrupt (the drawing abnormality interrupt is in an enabled state). This point will be described later with reference to FIG. 22(d).

[0284] Next, as described with reference to FIG. 12, 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 two areas are used by alternately switching their uses. Also, in this embodiment, since two display devices DS1 and DS2 are connected, as shown in FIG. 12, two-section frame buffers FBa / FBb are secured. Therefore, the drawing circuit 76 draws image data for one frame in the drawing area (writing area) of the frame buffer FBa for the display device DS1, and also draws image data for one frame in the drawing area (writing area) of the frame buffer FBa for the display device DS2. 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.

[0285] The display circuit 74 is a circuit that reads out the image data of the frame buffers FBa and FBb, performs final image processing, and then outputs it (see FIG. 14(a)). The final image processing includes, for example, scaling processing of a scaler that enlarges / reduces an image, delicate color correction processing, and dithering processing that minimizes the quantization error of the entire image. Then, the digital RGB signal (total 24 bits) that has undergone these image processes is usually output together with a horizontal synchronization signal HS, a vertical synchronization signal VS, and the like.

[0286] As shown in FIG. 14(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 reads out the image data of the corresponding frame buffers FBa / FBb / FBc and executes the above final image processing. 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.

[0287] Here, when checking the specifications of the main display device DS1, the main display device DS1 needs to receive adjacent odd pixels (ODD) and even pixels (EVEN) in the horizontal direction through separate LVDS (Low Voltage Differential Signaling) transmission lines at the receiving unit RV (RVa + RVb). Also, the frequency of the operation clock CK of the main display device DS1 needs to be set to about 40 to 70 MHz (typical value 54 MHz), and it is necessary to set the horizontal / vertical standby times WTh / WTv so that (WTh + 640) × (WTv + 1024) / 54 MHz ≒ 1 / 60 second. Furthermore, at the timing of outputting image data (ODD / EVEN signals) to the main display device DS1, it is necessary to output an active-level data valid signal ENAB.

[0288] Therefore, the display circuit 74A needs to output signals that satisfy all the above-mentioned specifications. FIGS. 15(a) to 15(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 operates with an operation clock CK of a typical value of 54 MHz, correspondingly, the designed dot clock DCK (in the VDP circuit 52) is set to 108 MHz (= 54 × 2).

[0289] This is because in a display panel LCD with 1280 dots horizontally × 1024 lines vertically (see FIG. 15(f)), two adjacent pixels on the left and right are processed all at once in synchronization with the 54 MHz operation clock CK. Substantially, it is equivalent to operating with a dot clock DCK of 108 MHz.

[0290] Then, various operation parameters that define the operation of the display circuit 74A are defined based on a dot clock DCK with a frequency of 108 MHz. First, it is necessary to set the horizontal / vertical standby times WTh / WTv so that (WTh + 640) × (WTv + 1024) / 54 MHz ≒ 1 / 60 second. However, as operation parameters WTh and WTv for the display circuit 74A, it is necessary to satisfy (WTh + 1280) × (WTv + 1024) / 108 MHz ≒ 1 / 60 second.

[0291] Also, regarding the horizontal / vertical standby times WTh / WTv, it is necessary to consider the allowable range in the specifications of the display device DS1. Therefore, in this embodiment, the horizontal standby time WTh is counted with a dot clock DCK of 108 MHz and set to 382 clocks, and the vertical standby time WTv is set to 59 lines. Thus, the time required for updating an image for one frame is (382 + 1280) × (59 + 1024) / 108 MHz = 16.666 mS, and the frame rate FR (Frame Rate) becomes 1 / 60 second.

[0292] This relationship defines the update period FR [seconds] of the display device DS1, and using the frequency F of the dot clock DCK, the number of cycles THc of horizontal synchronization, and the number of lines TVl of vertical synchronization described later, FR = THc × TVl / F dot results. Here, if the update period FR is too long, there is a possibility of abnormalities such as flicker occurring. On the other hand, if the update period FR is too short, the display device cannot execute normal update processing. Therefore, it should be defined within the range of 0.95 / 60 < FR [seconds] < 1.05 / 60. dot

[0293] ​In response to this setting, in the image update operation of each line, the data valid signal ENAB has a standby time WTh (= 382 / 108 MHz) corresponding to 382 clocks at the L level, and then, the active section (= 1280 / 108 MHz) corresponding to 1280 clocks becomes the active level (H) (Fig. 15(c)). As shown in Fig. 15(d) and Fig. 15(e), in the active section of the data valid signal ENAB, for the 1280 dots of pixels in one line, image data is output so that the image update operation is completed in a predetermined time (11.85 μS = 1280 / 108 MHz). That is, 1280 pixel data are output in synchronization with 1280 dot clocks DCK. Note that the display device DS1 displays a full-color image with a colorimetry of 8 ×2 8 ×2 8 so that the pixel data of one pixel is 3 × 8 bits long.

[0294] By the way, in this embodiment, although not required in the main display device DS1, the vertical synchronization signal VS and the horizontal synchronization signal HS are output. The vertical synchronization signal VS is output within the time of the vertical standby time WTv, and the horizontal synchronization signal HS is output within the time of the horizontal standby time WTh. In addition, for convenience of understanding, the respective operation cycles are shown in Fig. 15(a) and Fig. 15(b). Also, in Fig. 15(f), at the upper left and lower right vertices of the rectangular frame specified by TH × TV (= 1083 × 1662 clocks), a ○ mark is shown and described as "start of display operation" and "end of display operation", but this ○ mark means "start of V blank" that defines the operation cycle of the display circuit 74A started every 1 / 60 second. Since the 1083 × 1662 clocks that define the display operation match 1 / 60 second, the elapsed time from the "start of display operation" to the "end of display operation" (the operation cycle of the display circuit 74A) is 1 / 60 second. Note that the "start of V blank" will be described later with reference to Fig. 22.

[0295] Returning to FIG. 14 and continuing the description, the output selection unit 79 of the embodiment divides the output signal of the display circuit 74A into a dual link that divides the 108 MHz dot clock DCK by two, and transmits it to the LVDS unit 80a and the LVDS unit 80b, respectively (see FIGS. 14(a) and 5). Then, each of the LVDS units 80a and 80b converts the image data (total 24-bit digital RGB signal) into first and second LVDS signals, and adds a pair of clock signals (54 MHz = 108 / 2) to be transmitted thereto, and outputs them as a total of five pairs of differential signals LVDS1 and LVDS2 to the main display device DS1 via two paths (see FIGS. 14(a) and 4).

[0296] As described above, in the main display device DS1, since the ODD signal for one pixel and the EVEN signal for an adjacent pixel are processed at the same timing, the frequency of the substantial operation clock CK matches the 108 MHz dot clock DCK output by the display circuit 74A.

[0297] As described above, the display circuit 74A that generates the image to be transmitted to the main display device DS1 has been described. The display circuit 74B generates the 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 unit 80c via the output selection unit 79, and is transmitted to the sub-display device DS2 together with the vertical synchronization signal VS and the horizontal synchronization signal HS.

[0298] Note that the data valid signal ENAB is also transmitted via the digital RGB unit 80c together with the synchronization signals VS and HS. Of course, these signals are transmitted as continuous signals, not discrete values as in the case of the LVDS transmission line (see FIG. 14(a)).

[0299] Incidentally, in the case of this embodiment, each of the display circuits 74A to 74B is provided with underrun counters URCNTa to URCNTc that count underrun anomalies where the generation of display data did not keep up with the display timing (see Fig. 15). Then, the counter values of these underrun counters URCNTa to URCNTc are configured to be automatically incremented for each VBLANK when an underrun anomaly occurs.

[0300] Next, the SMC circuit 78 (Serial Management Controller) is a composite controller incorporating an LED controller and a Motor controller. Then, while outputting an LED drive signal and a motor drive signal in synchronization with a clock signal to an LED / Motor driver (driver IC incorporating a shift register) mounted on an external board, it is configured to be able to output a latch pulse at an appropriate timing.

[0301] Regarding the internal circuit of the above-described VDP circuit 52 and its operation, the operation content to be executed by the internal circuit is defined by operation parameters (set values) set by the production control CPU 63 in the control register group 70, and the execution state of the VDP circuit 52 can be specified by reading the operation status value of the control register group 70. The control register group 70 means a number of VDP registers RGij mapped to an address space of about 1 Mbyte (0 to FFFFFFH) on the memory map of the production control CPU 63, and the production control CPU 63 executes a WRITE (setting) operation of operation parameters and a READ operation of operation status values via the CPUIF unit 81 (see Fig. 8(b)).

[0302] The control register group 70 (VDP register RGij) includes a "system control register" into which initial setting values related to system operations such as interrupt operations are written, an "index table register" that determines the AAC area (a) and page area (b) in the built-in VRAM and constructs or modifies the index table IDXTBL, a "data transfer register" into which setting values related to data transfer processing by the data transfer circuit 72 between the effect control CPU 63 and the internal circuits of the VDP circuit 52 are written, a "GDEC register" that specifies the execution status of the graphics decoder 75, a "drawing register" into which setting values related to instruction commands and the drawing circuit 76 are written, a "preloader register" into which setting values related to the operation of the preloader 73 are written, 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 related to the LED controller (SMC circuit 78) are written, a "motor control register" into which setting values related to the motor controller (SMC circuit 78) are written, and an "audio 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.

[0303] 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 individual names or collectively as the VDP register RGij. In any case, the effect 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 the display list DL updated at appropriate time intervals and the setting values in a predetermined VDP register RGij. In this embodiment, since the effect control CPU 63 is responsible for lamp effects and motor effects as well, the VDP register RGij includes an LED control register and a motor control register.

[0304] Next, a unified rendering control operation for image rendering, audio rendering, motor rendering, and lamp rendering realized by the composite chip 50 incorporating the above-described CPU circuit 51 and VDP circuit 52 will be described.

[0305] In the case of this embodiment, the operation of the composite chip 50 is started by a power-on reset operation (see FIG. 16(a)) due to power-on or abnormal reset, and after passing through an initial setting process (SP1 to SP9) by an initial setting program (boot program) Pinit, it is configured to shift to a main control process (SP10) by a rendering control program Main and an interrupt processing program (vector handler) Vopt. The processing content of the introduction part of the main control process is described in FIG. 18(a), and the processing content of the main body part is described in FIG. 22(a). Note that the process of step SP27 in FIG. 18 does not include the processes of steps SS1 to SS3 in FIG. 21(a).

[0306] Based on the above, the power-on reset operation will be described with reference to FIG. 16(a). When the system reset signal SYS maintains the L level for a predetermined period (assertion period) such as at power-on, all operation control registers REG and all VDP registers RGij are automatically set to predetermined default values.

[0307] Then, thereafter, when the system reset signal SYS changes to the H level (negate level) (see the timing T1 in FIG. 6(d)), in this embodiment, the operation of the timing timer TM (FIG. 9(a)) is started (SP1) in order to measure the elapsed time after CPU reset. Also, 32-bit data from the head address of the address space CS0 is set to the program counter PC of the rendering control CPU 63, and the subsequent 32-bit data is configured to be set to the stack pointer SP (SP1). Note that in FIGS. 10 and 17(c), the head area of the memory that stores the initial values of the program counter PC and the stack pointer SP is referred to as the vector table VECT.

[0308] As shown in FIG. 16(b), in this vector table VECT, vector numbers that identify priorities, interrupt causes, 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 as address information, the starting address of the interrupt processing program executed at the time of NMI interrupt is stored. Also, vector number 64 is an internal interrupt from the VDP (VDP_IRQ0), and as address information, the starting address of the interrupt processing program executed at the time of VDP_IRQ0 interrupt is stored.

[0309] Since the interrupt priorities are as shown in FIG. 18(d), in the columns of vector numbers smaller than vector number 64, the starting addresses of the interrupt processing programs for the control command reception interrupt IRQ_CMD, the 20 μS timer interrupt, and the 1 mS timer interrupt are each stored. On the other hand, in the columns of vector numbers larger than vector number 64, the starting addresses of interrupt processing programs (such as IRQ_SND, IRQ_RTC, etc.) with priorities lower than VDP_IRQ1 are each stored.

[0310] Also, in the vector table VECT, for vector number 0 and vector number 1, the set values that should be automatically set to the program counter and stack pointer of the CPU at power-on reset are defined. As shown in FIG. 16(b), in this embodiment, as the internal operation at power-on reset (reset assert period), the 4-byte data "****" is set to the program counter PC, and the 4-byte data "++++" is set to the stack pointer SP. Note that "****" is the starting address value of the initial setting program Pinit (SP1 to SP9 in FIG. 16) stored non-volatilely in the address space CS0, and "++++" is the address value of the top or end of the stack area that functions in a LIFO (Last-In First-Out) manner and is secured in the built-in RAM59.

[0311] In this embodiment, since the register bank RBi is effectively utilized, during interrupt processing, the stack area is not consumed, and not much memory capacity is required. That is, in this embodiment, the stack area is exclusively utilized in function processing and subroutine processing.

[0312] As a result of the above operations, thereafter, the effect control CPU 63 will execute the initial setting program Pinit described 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. 9). The initial value of this operation control register REG is a value automatically set during the reset assert period (the period shown in FIG. 7(d) where the system reset signal SYS maintains the L level), and is set to the latest READ access operation (default access operation) so that the address space CS0 can be READ accessed without problems regardless of the memory device configuration.

[0313] Therefore, in order to change this default access operation to an optimal access operation, first, an optimal value is set in a predetermined operation control register REG that defines the operation of the bus state controller 66 (FIG. 9) for the address space CS0 (SP1). That is, in order to optimize the memory READ operation when accessing the PROM 53 that stores the initial setting program Pinit (SP1 to SP9), the effect control program MainB (SP10 and below), constant data, etc., the bus width and the presence or absence of page access are set, and the chip select signal CS0, the READ control signal, the WRITE control signal, and other operation timings are optimally set (see FIG. 40).

[0314] As a result of the above settings, the processing after step SP2 will optimally read and execute the program stored in the address space CS0. Therefore, next, in order to optimize the READ / WRITE access operation when the production control CPU 63 accesses the VDP register RGij, an optimal value is set in a predetermined operation control register REG that defines the operation of the bus state controller 66 (FIG. 9) for the VDP register RGij (SP2).

[0315] As described above, in this embodiment, since the VDP register RGij is located in the address space CS7 of the production control CPU 63, a predetermined value is written into a predetermined operation control register REG in order to optimally set the operation timing of the chip select signal CS7 and other control signals.

[0316] Subsequently, the register value of a specific VDP register RGij is read out, and it is determined whether the value is a predetermined value (device code) (SP3). This is a confirmation determination that the system clock of the VDP circuit 52 has stabilized. That is, the VDP circuit 52 operates based on the oscillation output of the oscillator OSC2 supplied to the PLLREF terminal, and this is a determination as to whether the VDP circuit 52 can normally receive a command from the CPU circuit 51 (that is, setting to the VDP register RGij, etc.).

[0317] If it is confirmed by the device code readout process (SP3) that the system clock has stabilized, then thereafter, since normal operation of the VDP circuit 52 can be expected, setting processing for a predetermined VDP register RGij is executed (SP4 to SP6). In the process of step SP4, first, the endian setting (big / little) and the data bus width are set when the production control CPU 63 accesses the VDP register RGij (SP40), and for the internal interrupts (VDP_IRQ0, VDP_IRQ1, VDP_IRQ2, VDP_IRQ3) from the VDP circuit to the CPU circuit, the interrupt significance level (H / L) is set (SP41).

[0318] In this embodiment, the most significant bit of the set value is set to big-endian and stored in the most significant bit of the VDP register RGij, and the data 32-bit bus width is set to 32 bits. However, if these set values happen to be the same as the default values, these setting processes can be omitted (the same applies to the following processes).

[0319] Also, in the process of step SP4, the frequency of the display clock is set based on the set value for a predetermined system control register RGij (SP42~SP44). Specifically, for the display circuit 74A and the display circuit 74B, based on a 40 MHz reference clock (output of the oscillator OSC2), generating the dot clocks DCKA and DCKB is set in a predetermined system control register RGij for each (SP42), and the multiplication ratio and division ratio with respect to this reference clock are appropriately defined for each display circuit (SP43). Also, to synchronize the start of operation of the display circuit 74B with the start of operation of the display circuit 74A, it is set in a predetermined system control register RGij (SP44). Furthermore, the LVDS sampling clock is set to be the same as the dot clock DCKA of the display circuit A (SP43).

[0320] In these processes, the dot clocks DCK are set separately for the display circuit 74A and the display circuit 74B. The frequency of the dot clock DCKA 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 and 800 pixels vertically.

[0321] Also, in the process of step SP4, it is set to use the LVDS unit 80 as a dual link (a pair of LVDS transmission paths) (SP45), and based on the set value to a predetermined system control register RGij, the operating state of the LVDS unit 80 is switched from the mask state (Defult state) that outputs zero to the mask release state following the output of the display circuit 74 (SP45). When using the LVDS unit 80 as a single link (a single LVDS transmission path), in the process of step SP45, a setting to that effect will be made.

[0322] As shown in FIG. 6(f), as a result of the process of step SP45, since the operation of the LVDS unit 80 is switched from the defult state to the non-mask state, thereafter, after the timing T4 when the display circuit 74 starts operating (see SS4 in FIG. 21), the ODD signal and the EVEN signal are supplied to the LVDS units 80a and 80b via the output selection unit 79, and the LVDS signal (LVDS1 / LVDS2) is transmitted to the display device DS1 via the dual link (see FIG. 14(a)). Although the sampling clock of LVDS is set to be the same 108 MHz as the dot clock DCKA of the display circuit A, in this embodiment, since the dual link configuration is adopted, the LVDS sampling clock in each dual link is 54 MHz (see FIG. 4).

[0323] Also, in the process of step SP4, it is set (SP46) that the DDR (DRAM54) is to be made functional based on the clock signal (reference clock) to the PLLREF terminal (see Fig. 8(a)). Note that, as described with respect to Fig. 8(a), the reference clock of the oscillator OSC2 is supplied to the PLLREF terminal. Also, by setting appropriate values in the registers built into the DDR (DRAM54), the self-refresh function (Self-Refresh Operation) of the DRAM54 is enabled, and other settings for the normal operation of the DRAM54 are made (SP47). Through the above processes, the DRAM54 becomes in a state where it can operate normally, and subsequent data transfer operations from the PROM53 to the DRAM54 (SP8) and execution of the control program transferred to the DRAM54 (SP10) will be realized without any problems.

[0324] Subsequently, in order to realize the memory map shown in Fig. 10, the address spaces CS1 to CS6 are defined (SP5). As described above, the address space CS3 is assigned to the internal registers of the audio processor 27, the address space CS4 is assigned to the internal registers of the RTC38 and the address space of the SRAM39, the address space CS5 is assigned to the externally attached DRAM (DDR) 54, and the address space CS6 is assigned to the work memory 57 of the built-in CPU.

[0325] Note that since it is fixedly stipulated that the VDP register RGij is assigned to the address space CS7, the definition process of the address space CS7 is unnecessary. Also, it is fixedly stipulated in advance that the address space CS0 is after the memory map 0x000000000 address of the CPU circuit 51. Based on this stipulation, whether the address space CS0 is secured in the CGROM55 or assigned to other memory devices is stipulated by the H / L level of the HBTSL terminal.

[0326] As described above, in this embodiment, the HBTSL terminal = L, and it is shown that an address space CS0 is defined in addition to the CGROM55. Since the specific bus width and the optimal access operation of the control memory 53 other than the CGROM55 have been set in step SP1, the process of step SP5 is unnecessary for the address space CS0 as well.

[0327] Subsequently, regarding 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). Also, a predetermined value is written to a predetermined operation control register REG in order to optimally set the chip select signal CSi and others (SP6). These processes are the same as the processes of steps SP1 and SP2, and by writing to the operation control register that defines the operation of the bus state controller 66 (FIG. 9), the chip select signal CSi, the READ control signal, the WRITE control signal, and other operation timings are optimally set.

[0328] Subsequently, regarding the WDT circuit 58 that has already started operating, an abnormal reset is avoided by outputting a clear signal to the WDT circuit 58 (SP7). This is in consideration of the fact that the WDT circuit 58 automatically starts operating after the power is turned on, and the same process is repeatedly executed thereafter. Note that the process of step SP9 is stored in the control memory 53 as a subroutine SP7, but until the end of step SP9, the subroutine SP7 of the control memory 53 is called, and after the end of step SP9, another subroutine SP7' transferred to the external DRAM 54 is called and executed.

[0329] Subsequently, among the programs and data stored in the address space CS0, the vector handler Vopt (interrupt processing program), error return processing program Piram, effect control program MainB, variable D with initial value, and constant data C shown in FIGS. 16(b) and 17(c) are transferred to the external DRAM 54 and the built-in RAM 59 (SP8). Note that the variable D with initial value means initial value data stored in a predetermined variable area. This initialization process (SP8) of this memory section is a process of transferring programs and data in order to speed up the effect control process and is a process for avoiding access to the ROM with inferior access speed.

[0330] Next, a setting indicating the use of the register bank RBi is made (SP9). Therefore, thereafter, during interrupt processing, the register banks RB0 to RB14 will function, the interrupt processing will be speeded up, and the consumption of the stack area will be alleviated.

[0331] 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. 17(c)). After the execution of this initial setting program Pinit is completed, subsequently, the main control process by the effect control program Main is executed (SP10). Here, the execution of the main control process means the execution of the "effect control program Main" transferred from the control memory 53 to the external DRAM 54 by the transfer process in step SP8 (see FIG. 16(b)).

[0332] The processing of the "effect control program Main" is divided into the main introduction process shown in FIGS. 18(a) and the upper part of FIG. 21, and the main body process shown in the lower part of FIG. 21 and FIGS. 22(a). The specific content will be described based on FIGS. 18(a) and FIGS. 21 to 22. Prior to that, the initialization process (SP8) of the memory section will be described. As shown in FIG. 17(a), in the initialization process (SP8) of the memory section, first, a plurality of channels of DMAC are initialized to the operation stop state. Note that this process is just a formal process for safety.

[0333] When the above processing is completed, the DMACi of a predetermined channel is activated, and the vector handler Vopt (interrupt processing program) stored in the control memory 53 is DMA transferred to the built-in RAM 59 in a non-stop transfer method (see Fig. 11(b3)). In this embodiment, since the interrupt processing program Vopt is transferred to the built-in RAM 59, appropriate abnormality handling can be performed even when the external DRAM 54 malfunctions.

[0334] The subsequent processing is the same. Using the DMACi of a predetermined channel, it is executed in a non-stop transfer method, and the error return processing program Piram is DMA transferred to the built-in RAM 59 (SP62). In this embodiment, since the error return processing program Piram is transferred to the built-in RAM 59, in the error return processing, the peripheral circuits can be surely reset. For example, if the error return processing program Piram is transferred to, for example, the external DRAM 54 other than the built-in RAM 59, the external DRAM 54 cannot be reset during the error return processing.

[0335] 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 for production lottery and lamp drive data and motor drive data in various drive data tables shown in Fig. 22(b). Also, the variable D with an initial value is DMA transferred to the external DRAM 54 (SP65), and all of these are executed in a non-stop transfer method using the DMACi of a predetermined channel.

[0336] Finally, clear data is written to the head of the variable area B of the external DRAM (SP66). Assuming that the head address is ADb, in the subsequent DMA transfer processing, after initially setting the transfer source address as ADb and the transfer destination address as ADb + 1, while incrementing each address value ADb, ADb + 1, the clear data is diffused to execute the clear processing of the variable area B (SP67).

[0337] The processes of steps SP61 to SP66 and step SP67 described above are all similar operations as shown in Fig. 17(b). That is, first, for DMACi of a predetermined channel, as DMA transfer conditions, (1) cycle steal transfer mode, (2) non-stop transfer method are adopted, and (3) the address values of Source and Destination are incrementally updated, and then set (SP68).

[0338] 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 after setting interrupt prohibition, etc. (SP70), the operation of DMA transfer is started (SP71). Note that the settings in steps SP68 to SP71 are all realized by setting operations to a predetermined operation control register REG.

[0339] In the initialization process of this memory section, since the interrupt at the end of DMA transfer is prohibited from being set (SP70), after starting the operation of DMA transfer, the status flag of the predetermined operation control register REG is repeatedly READ accessed to wait for the end of DMA transfer (SP72). However, considering the processing time until the operation ends, a clear signal is repeatedly output to the WDT circuit 58 (SP73). And at the end of DMA transfer, DMACi is set to stop based on the setting operation to the predetermined operation control register REG.

[0340] Subsequently, the operation content of the main control process (main introduction process + main body process) will be described based on Figs. 18(a) to 22. Regarding the main control process (main introduction process + main body process), the main introduction process (SP20 to SP27) is described at the upper parts of Figs. 18(a) and 21, and the initial setting process (SS1 to SS6), which is a part of the main body process, is described at the lower part of Fig. 21. Also, the content of the steady process (ST4 to ST14), which is the remaining part of the main body process, is described in Fig. 22.

[0341] As shown in Fig. 18(a), in the main introduction process, first, for the CGROM55, its bus width and the type of ROM device are specified (SP20). Specifically, as shown in Fig. 19(a), a predetermined VDP register RGij (for example, the CG bus Status register) that controls the interface with the CGROM55 is accessed by READ (SP80), and it is determined whether the operation settings can be made for the CG bus (SP81).

[0342] Here, if the value of the CG bus Status register is 1, it means that the internal circuit of the CG bus is in the reset operation, and it means that the set value to the VDP register RGij cannot be received. 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 device constituting the CGROM, the operation parameters such as (1) the validity / invalidity of each device section SPAi, (2) the type of ROM device, and (3) the data bus width are set in the predetermined VDP register RGij (SP82).

[0343] As shown in Fig. 18(a), in this embodiment, the CGROM55 can be divided into a plurality of regions (device sections). For example, for each device section (SPA0 to SPAn), the memory device and the data bus width can be selectively configured. The memory devices are roughly classified into, for example, (1) the SATA module (AHSI / F) adopted in this embodiment, (2) the memory element adopting the parallel I / F (Interface) format, and (3) the memory element adopting the sequential I / F format. For each of the roughly classified memory devices, the memory device can be specifically selected, and the data bus width and the like can be arbitrarily defined.

[0344] Next, in order to optimize the memory READ operation with the selected memory device for each device section (SPA0 to SPAn), predetermined operation parameters are set in a predetermined VDP register RGij (SP83). The operation parameters include setting values that define the operation timing between the chip select signal and other control signals (such as the READ control signal). Also, when a memory element that adopts the 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. 19(b).

[0345] Therefore, it is also possible to configure the CGROM55 by combining different types of memory devices. However, in this embodiment, the CGROM55 is configured using only the SATA module, only the device section (SPA0) is enabled, and the other device sections (SPA1 to SPAn) are disabled.

[0346] In any case, once the setting process in steps SP82 to SP83 is completed, a predetermined value is written to a predetermined VDP register RGij in order to effectuate the setting process (SP84). This is in consideration of the fact that the internal circuit of the CG bus requires a predetermined time to be able to operate corresponding to the setting process in steps SP82 to SP83, and during the operation of the internal circuit, the value of the above-mentioned CG bus Status register (see SP80) becomes 0.

[0347] Therefore, thereafter, the CG bus Status register is repeatedly READ accessed (SP85), and it is confirmed that the value of the Status register returns from 1 to 0 and the process ends (SP86). Note that even if the value of the Status register does not return from 1 to 0 despite a predetermined number of determinations, the process in step SP66 may be ended. However, in that case, the game process starts in a state where the CGROM cannot be accessed normally, and thereafter, the WDT circuit 58 is activated at some timing and the composite chip 50 enters an abnormal reset state. And in this case, the power-on reset operation is executed again.

[0348] On one hand, after the process of step SP20 in FIG. 18 is executed normally, the built-in circuits of the CPU circuit 51, such as the interrupt controller INTC, the DMAC circuit 60, and the multifunction timer unit MTU, are individually initialized by software processing (SP21).

[0349] Next, for the multifunction timer unit MTU, after starting a predetermined timer measurement operation (SP22), for internal interrupts and internal interrupts, a permission setting value is written to a predetermined operation control register REG to set it to an interrupt permission state (SP23).

[0350] As a result, various interrupts shown in FIG. 18(d) can occur thereafter. Normally, at this timing, since the audio processor 27 has completed its initialization sequence, as shown in FIG. 7(c), the end interrupt signal IRQ_SND should have dropped to the L level. Therefore, the interrupt process shown in FIG. 18(c) is activated, and the production control CPU 63 initializes the error flag ERR to 1 and performs a READ access to the address space CS3 (SP30) to obtain the value of a predetermined audio register SRG of the audio processor 27 and determine whether the initialization sequence has ended normally (SP31).

[0351] And if, by any chance, the initialization sequence has not ended normally, the production control CPU 63 writes a reset command to a predetermined audio register SRG of the audio processor 27 (SP32) and sets the error flag ERR, which is initially set to 1, to 2 (SP33). This error flag ERR defines whether to execute the audio processor initialization process (SP26), and the condition for executing step SP26 is that the error flag ERR = 1.

[0352] On the other hand, in response to receiving a reset command, the audio processor 27 starts the initialization sequence again with the end interrupt signal IRQ_SND at the =H level, and when the initialization sequence ends, the end interrupt signal IRQ_SND is lowered to the L level. As a result, the process of Fig. 18(c) will be executed again.

[0353] As described above for the exceptional case where the initialization sequence has not ended normally, usually, following step SP31, the process of step SP32 is executed, and the effect control CPU 63 returns the end interrupt signal IRQ_SND from the L level to the H level by writing a predetermined value to a predetermined audio register SRG (SP34).

[0354] Finally, by writing a predetermined value to a predetermined audio register SRG, READ / WRITE access to all audio registers SRG is permitted (SP35). As a result of this process, in the subsequent audio processor initialization process (SP26), the necessary setting processes can be executed.

[0355] As described above for an example of Maskable Interrupt corresponding to the interrupt permission setting in step SP23, the non-maskable interrupt (Non Maskable Interrupt) based on the oscillation stop of the oscillator OSC2 can be activated at any timing. As described earlier, the operation clock (CPU system clock) of circuits other than the built-in CPU (effect control CPU 63) is generated by frequency multiplying the output clock of the oscillator OSC2 with a PLL (Phase Locked Loop), and if the oscillation of the oscillator OSC2 stops, the subsequent normal operation of the VDP circuit 52 becomes impossible.

[0356] On the other hand, the operating clock of the rendering control CPU 63 is generated by multiplying the output clock of the oscillator OSC1 by the PLL, and program processing can continue. Moreover, the interrupt processing program is stored in the built-in RAM 59. Therefore, the rendering control CPU 63 issues an abnormality notification by voice or a lamp when an abnormal situation occurs (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 continuing to output a clear signal to the WDT circuit 58 is to avoid an abnormal reset operation. That is, in the event of a serious abnormality where the oscillator OSC1 stops operating, it is considered that normal recovery of the device cannot be expected even if the abnormal reset process is repeated.

[0357] Having described FIGS. 18(b) and 18(c) above, we will return to FIG. 18(a) and continue the description. In step SP24, in order to protect the program area of the external DRAM 54, the necessary area is set to write prohibition. Next, for the clock circuit 38 driven by the battery during power-off, the normal operation during power-off is confirmed, and the alarm interrupt is reset as a precaution (SP25).

[0358] Then, on the condition that the error flag ERR = 1, necessary setting values are written into the built-in register (voice register SRG) of the voice processor 27 to execute the initialization process (SP26). If the error flag ERR = 0, it waits for a predetermined time until the error flag ERR = 1. If the limit time is exceeded, it shifts to an infinite loop process to activate the WDT circuit 58.

[0359] Next, the power supply control circuit SPY is controlled to prepare for the activation of the display device DS1, and necessary setting values are written into the VDP register RGij to initialize the display clock DCK and the display circuit 74 (SP27). Note that the process of step SP27 is shown in detail as the processes of steps SP50 to SP57 in FIG. 21.

[0360] The above has described the embodiment of receiving the end interrupt signal IRQ_SND from the audio processor. However, it is also suitable to omit the interrupt processing of FIG. 18(c). FIG. 20 shows a modified embodiment, which utilizes the 1ms timer interrupt signal generated by the multifunction timer unit MTU instead of the end interrupt signal IRQ_SND.

[0361] FIG. 20 illustrates a part of the 1ms timer interrupt processing, and realizes four-stage operations based on the value (0 / 1 / 2 / 3) of the operation management flag FLG whose initial state is zero. Note that the IRQ_SND output terminal of the audio processor 27 is in an open state, and the IRQ_SND input terminal of the CPU circuit 51 is fixed at the H level.

[0362] In the 1mS timer interrupt processing, first, in the process of step SP42, when it is determined that the operation management flag FLG = 0, it is confirmed that the initialization sequence of the audio processor 27 has ended normally (SP43). And when it has ended normally, the interrupt signal (IRQ_SND) is cleared by writing a predetermined value to a predetermined audio register (SP46), and the operation management flag FLG is set to 1 (SP47). Note that the processes of steps SP43 and SP46 are the same as the processes of steps SP31 and SP34 in FIG. 18(c).

[0363] On the other hand, when the initialization sequence has not ended normally, the initialization sequence of the audio processor 27 is started by writing a reset command to a predetermined audio register (SP44), and the operation management flag FLG is reset to zero (SP45). Note that the process of step SP44 corresponds to the process of step SP32 in FIG. 18(c).

[0364] Normally, after the process of step SP47, the operation management flag FLG = 1, 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 the operation management flag FLG is set to 2 (SP49). The process of step SP48 corresponds to the process of step SP35 in FIG. 18(c).

[0365] Next, in the 1 ms timer interrupt with the operation management flag FLG = 2, similar to the case of step SP26 in Fig. 18(a), necessary setting values are written into the built-in register (voice register SRG) of the voice processor 27 to execute the initialization process (SP50), and the operation management flag FLG is set to 3.

[0366] The operation management flag FLG = 3 means the normal voice control state, and voice control is advanced by setting necessary operation parameters in the necessary voice register SRG (SP52).

[0367] As described above, the method of confirming the normal end of the initialization sequence of the voice processor 27 by the interrupt process caused by the interrupt signal (IRQ_SND) (SP31 in Fig. 18(c)) and the method of confirming by the 1 mS timer interrupt process (SP43 in Fig. 20) are not limited to these methods. For example, it is also suitable to determine whether the initialization sequence of the voice processor 27 has ended normally as part of the process of step SP26 in Fig. 18.

[0368] As described above, the outline of the main introduction process (SP20 to SP26 in Fig. 18) has been explained. Therefore, below, based on Figs. 21 to 22, the details of the process of step SP27 (startup preparation process + initialization process) and the operations of the main body process (SS1 to SS6, and ST4 to ST14) will be explained.

[0369] As shown in FIG. 21, as the process of step SP27, the effect control CPU 63 first determines the timing timer TM and checks that one second has elapsed since the start of the operation of the effect control CPU 63 (timing T1 in FIG. 6(d)) while outputting a clear signal to the WDT circuit 58 (SP50). This is to keep the display device DS1 in a non-operating state until the VDP circuit 52 starts its substantial operation. Also, since a clear signal is output to the WDT circuit 58, the activation of the WDT circuit 58 is surely prevented, and there is no risk that the initialization process up to this point, such as the composite chip 50 being abnormally reset, will be wasted (this significance is the same in the following standby process).

[0370] Next, the effect control CPU 63 transitions the control signals PS1 and PS2 to the power supply control circuit SPY from the L level to the H level (SP51). This process is the operation at timing T2 shown in FIGS. 6(g) and 6(h), and the control signals PS1 and PS2 are maintained at the H level thereafter.

[0371] When the control signal PS1 becomes the H level, the MOS transistor Q1 becomes the ON state, and the power supply voltage of 12V is supplied to the backlight unit BL. However, at this timing T2, since both the BL_EN terminal and the PWM terminal of the driver DVL of the backlight unit BL are at the L level, the backlight unit BL does not emit light.

[0372] Also, when the control signal PS2 becomes the H level, the MOS transistor Q4 becomes the ON state, and the power supply voltage of 5 is supplied to the liquid crystal display unit MONI. However, at this timing T2, since the backlight unit BL is in the off state, there is no risk of an unnatural image being displayed.

[0373] When the process of step SP51 is completed, next, the effect control CPU 63 defines the refresh mode based on the set value to a predetermined VDP register RGij, sets the refresh cycle of the built-in VRAM 71 and the initial value of the row address (refresh address), and executes the initialization process of the built-in VRAM 71 (SP52).

[0374] The VRAM 71 in the embodiment is composed of a DRAM (Dynamic Random Access Memory), and the electric charge stored in the memory cell is gradually lost due to the leakage current inside the element. Therefore, in this embodiment, for example, an interleaved refresh method of refreshing one row at a time is adopted, and all rows (ROWs) in the element are refreshed at the refresh period defined in the process of step SP52 to prevent the electric charge of the memory cell from disappearing. Therefore, in the VRAM 71, even if there is a memory cell that is not accessed for a long time, there is no risk of its data disappearing. Note that the refresh mode is not limited to the interleaved refresh method, and a burst refresh method can also be adopted.

[0375] Next, the necessary setting values are written to the VDP register RGij to initialize the display clock DCK and initialize the display circuit 74 (SP54). Note that this process is nothing but an operation of hardware resetting the corresponding internal circuit.

[0376] Subsequently, the control signal STBY to the power supply control circuit SPY is transitioned from the L level to the H level (SP56). This process is the operation at timing T3 shown in FIG. 6(i), and the H level of the control signal STBY is maintained thereafter. Note that at this timing T3, since the power supply voltage of 12V has been supplied to the driver DVL of the backlight unit BL (timing T2), the driver DVL is in an operable state. However, since the control signal PWM still maintains the L level, the backlight unit BL does not emit light.

[0377] Next, the activation of the process of step SP4 in FIG. 16 and the activation of the process of step SP54 in FIG. 21 are confirmed by performing a Read access on a predetermined VDP register (status register STS) RGij (SP57). Specifically, first, it is confirmed by the status register STS(1) that the display clock set in the process of step SP4 in FIG. 16 is stabilized.

[0378] Next, the status register STS(2) is used to confirm that the initialization of the display circuit has been completed normally corresponding to the process of step SP54. Subsequently, for the LVDS circuit 80 in which dual link is set in the process of step SP45, the status register STS(3) is used to confirm that the initialization of each part LVDS1 / LVDS2 has been completed normally. When it is confirmed that all initializations have been completed normally, the main introduction process ends (SP57).

[0379] Subsequently, regarding the subsequent processing, an embodiment in which the preloader does not function will be described. As shown in FIGS. 21 to 22(a), the main body processing is divided into VDP initial setting processing (SS1 to SS6) executed after CPU reset and steady processing (ST4 to ST14) repeatedly executed every 1 / 30 second thereafter.

[0380] And since the steady processing (ST4 to ST14) is started at the timing when the interrupt counter VCNT becomes VCNT≧2 (ST4), the operation period δ of the steady processing is 1 / 30 second. This operation period δ is nothing but the substantial operation period δ for the VDP circuit 52 that operates intermittently based on the control of the effect control CPU 63. Note that the determination condition is set to VCNT≧2 in consideration of the possibility that the steady processing (ST4 to ST14) may be abnormally prolonged and the timing of VCNT = 2 may be missed, but it is designed so that the situation where VCNT = 3 does not occur.

[0381] Based on the above, the VDP initial setting processing will be described. As shown in FIG. 21, in this embodiment, in the VDP initial setting processing, the built-in VRAM 71 with a storage capacity of 48 Mbytes is appropriately divided into an ACC area (a), a page area (b), and an arbitrary area (c) (SS1). Specifically, for the ACC areas (a1, a2) and the page area (b), the start address of each area and the required total data size are set in the predetermined index table register RGij (SS1). Then, the remaining area not included in the secured ACC areas (a1, a2) and the page area (b) becomes the arbitrary area (c).

[0382] Here, for the first and second ACC regions (a1, a2) and the page region (b), the leading addresses of the regions must each have their lower 11 bits non-zero, but can be arbitrarily selected in 2048-bit units (selectable every 256 addresses, assuming 1 address = 1 byte). Also, the total data size can be arbitrarily selected within the range of an integer multiple of the unit size. Although not particularly limited, the unit size of the ACC region (a) is 2048 bits, and the unit size of the page region (b) is 512 kbits.

[0383] Thus, in this embodiment, certain conditions are set for the region settings of the ACC regions (a1, a2) and the page region (b). This is to eliminate wasted regions as much as possible for the built-in VRAM 71 with limited memory capacity, while facilitating the smooth internal operation of the VDP circuit 52. That is, if the storage capacity of the built-in VRAM 71 is increased without reason, there are concerns about increased manufacturing costs and a larger chip area. On the other hand, if a free region setting that completely eliminates wasted regions is allowed, the internal processing becomes complicated and the processing time of VRAM access cannot be shortened. The same reason applies to imposing certain restrictions on ensuring the index space described below.

[0384] Continuing the explanation based on the above, following the processing of step SS1, for the page region (b) and the arbitrary region (c), the necessary index space IDXi is ensured (SS2). Specifically, the index space IDXi of each region (b)(c) is ensured by setting the necessary information in a predetermined index table register RGij.

[0385] For example, when providing an index space IDXi in the page region (b), for an arbitrary index number i, information on an arbitrary horizontal size Hx and an arbitrary multiple of the vertical size Wx (vertical and horizontal multiple information with respect to the unit space) is set in a predetermined index table register RGij (SS2).

[0386] As described above, the index space IDXi of the page area (b) has a unit space of a horizontal size of 128 × a vertical size of 128 lines. Also, since 1 pixel is specified by 32-bit information, based on the settings of the horizontal size Hx and the vertical size Wx, an index space IDXi with a data size (bit length) = 32 × 128 × Hx × 128 × Wx has been secured. Note that the starting address (space starting address) of the index space IDXi of the page area (b) is automatically assigned internally.

[0387] Also, when providing an index space IDXi in the arbitrary area (c), corresponding to an arbitrary index number i, an arbitrary starting address (space starting address) STx and multiple information of a multiple of an arbitrary horizontal size Hx are set in a predetermined index table register RGij (SS2). Here, "arbitrary" is based on predetermined conditions. The horizontal size Hx is arbitrarily determined in 256-bit units, the lower 11 bits of the starting address STx are 0, and it is arbitrarily determined in 2048-bit units. As described above, since the vertical size of the arbitrary area is fixed at 2048 lines, based on the setting of the horizontal size Hx, an index space with a data size (bit length) = 2048 × Hx is secured after the starting address STx.

[0388] Specifically, as the frame buffer FBa of the main display device DS1, a pair of index spaces with a horizontal size of 1280 × 2048 vertical lines are each specified by an index number and set in one or more predetermined index table registers RGij. As the frame buffer FBb of the sub-display device DS2, a pair of index spaces with a horizontal size of 480 × 2048 vertical lines are each specified by an index number and set in one or more predetermined index table registers RGij. Note that if the number of horizontal pixels of the display device does not match an integer multiple of 256 bit / 32 bit, the horizontal size of each index space is set to a value larger than the number of horizontal pixels of the display device and an integer multiple of 256 / 32 = 8 to minimize the generation of wasted memory areas.

[0389] As described above, for the page area (b) and the optional area (c), by setting the necessary size information and address information in the predetermined index table register RGij respectively, the required number of index spaces IDXi are generated (SS2). Then, corresponding to this setting process (SS2), an index table IDXTBL for specifying the address information and size information of each index space IDXi is automatically constructed. As shown in Fig. 12(a), in the index table IDXTBL, the start address of each index space IDXi is stored together with other necessary information, and is referred to during data transfer inside the VDP circuit 52 or when acquiring data from an external storage resource (Fig. 13). Note that since the index space IDXi of the AAC area (a) is automatically generated and automatically disappears when necessary, the setting process of step SS2 is unnecessary.

[0390] As shown in Figs. 12(a) and (b), in the optional area (c), a pair of frame buffers FBa and FBb are secured, and each is assigned an index number. In an embodiment that does not use a Z buffer, as the frame buffer FBa, a pair of index spaces 255 and 254 to which index numbers 255 and 254 are assigned are secured. Also, as the frame buffer FBb, a pair of index spaces 252 and 251 to which index numbers 252 and 251 are assigned are secured. Note that in this embodiment, a work area (index space 0) with an index number 0 is also secured in the optional area (c).

[0391] Also, in this embodiment, in the page area (a), the required number of index spaces IDXi that will be the decoding area of the IP stream video are secured, and index number i is assigned. However, initially, the index space IDX for the background video (IP stream video) 0Only this is ensured. Then, according to the necessity in image rendering (such as variable rendering and preview rendering), the setting process for the index table register RGij is performed, and based on the instruction commands in the display list DL, the index space IDXj in the page area (a) is increased. Then, if it becomes unnecessary, the index space IDXj is released. That is, FIG. 12(a) shows the index table IDXTBL during the steady operation.

[0392] Note that the index space in the ACC area (a) is automatically generated as needed based on the instruction commands described in the display list DL, and the starting address of the automatically generated index space IDXj and other necessary information are automatically set in the index table IDXTBL. In this embodiment, this AAC area (a) is used as the decoding area for still images and other textures.

[0393] The above operation of securing the index space is realized solely by the setting operation for the index table register RGij included in the control register group 70. However, following the processing of steps SS1 to SS2, by performing the necessary setting operation (SS3) on other VDP registers RGij, the steady operation (intermittent operation) of the VDP circuit 52 shown in FIGS. 30 to 31 is enabled.

[0394] In this embodiment, the necessary setting process (SS3) includes at least SS30 to SS39. Note that steps SS30 to SS37 are not limited in any processing order and can be executed in any order regardless of the following description order.

[0395] In this embodiment, first, by writing predetermined operation parameters (the number of lines and the number of pixels) to 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 are set for each display device DS1 and SD2 (SS30). 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 lines. Also, the number of horizontal pixels of the sub-display device DS2 is 480 dots, and the number of display lines is 80 lines. As a result of the setting process in step SS34, the vertical and horizontal dimensions of the valid data area (the dashed line part in FIG. 22(e)) that the display circuits 74A and 74B should perform READ access to are specified in each frame buffer FBa and FBb.

[0396] Next, by writing predetermined operation parameters (THc, WTh) to 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 the horizontal standby time WTh are set for each display device DS1 and SD2 (SS31). Also, by writing predetermined operation parameters (TVl, WTv) to a predetermined display register RGij, the number of lines TVl of the vertical period TV and the vertical standby time WTv are set for each display device DS1 and SD2 (SS32).

[0397] As described with reference to FIG. 15, 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. Also, the horizontal standby time WTh is set to 382, and the vertical standby time WTv is set to 59 lines. On the other hand, for the sub-display device DS2, for example, the number of cycles THc of the horizontal period TH is set to 519, and the number of lines TVl of the vertical period TV is set to 867, and the horizontal standby time WTh is set to 39, and the vertical standby time WTv is set to 67 lines. Note that THc - WTh = 519 - 39 = 480, and TVl - WTv = 867 - 67 = 800, which is consistent with the number of pixels of the sub-display device (480 horizontally × 800 vertically).

[0398] In any case, the frequency F of the dot clock DCK by the process of step SP4 in FIG. 16 dot(=108 MHz) is determined, and as a result of the processes in steps SS30 to SS32, for the main display device DS1, the number of cycles THc (=1662) of the horizontal period TH and the number of lines TVl (=1083) of the vertical period TV are defined. Consequently, the display period of one frame is THc × TVl / F dot and is thus determined. Specifically, the display period of one frame is 1083 × 1662 / 108 MHz = 16.667 mS, and it is determined that the frame rate FR is 1 / 60 second.

[0399] Note that for the sub-display device DS2 as well, for example, based on the frequency F dot = 27 MHz, the number of cycles THc = 519 of the horizontal period TH, and the number of lines TVl = 867 of the vertical period TV, it is determined to be 519 × 867 / 27 MHz = 16.66 mS.

[0400] Next, in this embodiment, for the sub-display device DS2, the pulse width of the horizontal synchronization 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 (SS33). Also, for the sub-display device DS2, the pulse width of the vertical synchronization signal VS and the number of cycles from the V blank start timing of the pulse rising edge are set (SS34).

[0401] As described above, since the main display device DS1 does not require the horizontal synchronization signal HS or the vertical synchronization signal VS, the above processes (SS33 to SS34) for the main display device DS1 are unnecessary. However, if the setting processes in steps SS33 to SS34 are omitted, the default values set at power reset will function. Thus, actually, the display device 74A also outputs the horizontal synchronization signal HS and the vertical synchronization signal VS.

[0402] According to the default values, for example, a horizontal synchronization signal HS with a pulse width of 40 clocks that becomes active 16 clocks after the V blank start timing is output, and a vertical synchronization signal VS with a pulse width of 3 lines that becomes active in synchronization with the V blank start timing is output.

[0403] This operation means that, for the main display device DS1, a horizontal synchronization signal HS with a horizontal front porch HPv = 16, a pulse width PWh = 40, and a horizontal back porch BPv = 326 is output during a horizontal standby time WTh = 382 clocks, and a vertical synchronization signal VS with a vertical front porch HPv = 0, a pulse width PWv = 3, and a vertical back porch BPv = 56 is output during a vertical standby time WTv = 59 lines. However, as described above, these synchronization signals are ignored in the main display device.

[0404] Note that, in order to prevent the synchronization signals HS and VS based on the 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 terminals of the horizontal synchronization signal HS and the vertical synchronization signal VS of the VDP circuit 52 can maintain a fixed value of H level or L level.

[0405] Subsequently, a predetermined system control register RGij is set to permit V blank interrupts (SS35). As a result, in this embodiment, corresponding to the V blank start timing that occurs every 16.667 mS = 1 / 60 second, a VBLANK start interrupt shown in FIG. 22(c) occurs. This V blank interrupt timing defines the start timing of the steady processing (ST5 to ST14) of the effect control CPU 63 and also means the start timing of the display period (the end timing of the previous display period) for the display circuits 74A and 74B.

[0406] Next, a predetermined operation parameter (address value) is written to a predetermined display register RGij to specify the vertical display start position and the horizontal display start position for each frame buffer FBa, FBb (SS36). As a result, the valid data area whose vertical and horizontal dimensions are specified in the process of step SS34 is determined on the frame buffers FBa, FBb. Here, the vertical display start position and the horizontal display start position are relative address values in each index space, and in the embodiment shown in FIG. 22(e), the display start position is (0, 0).

[0407] Here, the "display area" means the index space (frame buffers FBa, FBb) from which the display circuits 74A, 74B should read image data in order to drive the display devices DS1, DS2, and means either one of the double buffers in the frame buffers FBa, FBb each having a double buffer structure. However, the display circuits 74A, 74B actually read the image data only from the "valid data area" specified in steps SS30 and SS36 in the display area (0) or the display area (1).

[0408] Next, "display area (0)" and "display area (1)" are set in 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, respectively, to define each display area (SS37).

[0409] Although not limited in any way, in this embodiment, for the frame buffer FBa, the index space 254 with index number 254 in the arbitrary VRAM area (c) is defined as the "display area (0)", and the index space 255 with index number 255 in the arbitrary VRAM area (c) is defined as the "display area (1)" (SS37).

[0410] Also, for frame buffer FBb, index space 251 of index number 251 in VRAM arbitrary area (c) is set as "display area (0)", and index space 252 of index number 252 in VRAM arbitrary area (c) is set as "display area (1)" (SS37). Note that there is no particular limitation on defining the "display area" in the initial processing (SS3), and the index space (display area) to which display circuit 74 should access image data for READ may be toggled for each operation cycle δ. Note that it is also preferable to clear the respective display areas (0) and (1) of frame buffers FBa and FBb to zero at this timing, in which case unnatural images will not be displayed on the display device.

[0411] In this embodiment, once the initial setting including the above processes (SS30 to SS37) is completed, a predetermined prohibition value is set in the first type prohibition setting register RGij so that the setting value in the predetermined system control register RGij is not subsequently changed due to the influence of noise or the like (first prohibition setting SS38).

[0412] Here, the setting values ​​that are prohibited from being written in the future include (1) setting values ​​related to the display clock DCK of the display devices DS1 and DS2, (2) setting values ​​related to the sampling clock of the LVDS, (3) setting values ​​related to the selection operation of the output selection circuit 79, and (4) the synchronous relationship of the multiple display devices DS1 and DS2 (the display circuit 74B is subordinate to the operation cycle of the display circuit 74A). Although there is software processing for canceling the first prohibition setting, it is not used in this embodiment. However, it is preferable to use it as necessary.

[0413] Next, a predetermined inhibit value is set in the second type inhibit setting register RGij, thereby inhibiting writing to the VDP register RGij of the initial setting system (second inhibit setting SS39). Here, the registers to be inhibited include the VDP register RGij related to step SP4 and steps SS30 to SS37.

[0414] On the other hand, by setting a predetermined prohibition value in the third prohibition setting register RGij, it is also possible to perform prohibition settings on a number of VDP registers including the VDP register related to the setting processes of steps SS1 to SS3 (third prohibition setting). However, this is not used in principle in this embodiment. In any case, the second prohibition setting and the third prohibition setting can be arbitrarily canceled by writing a cancellation value in a predetermined cancellation register RGij, and it is also possible to change the set value during the steady operation.

[0415] When the above processing is completed, next, in the processing of step SP52 in FIG. 21, regarding the completion of the initialization of the built-in VRAM 71 that defines the refresh period, the status register (4) is referred to, and it is confirmed that the operation is stable (normal completion of initialization) (SS40).

[0416] By the above processing, it is confirmed based on the values of the status registers (1) to (4) that all of the built-in VRAM 71, the display circuit 74, and the LVDS circuit 30 have normally completed the initialization process. Next, by writing a prescribed value in a predetermined display register RGij (DSPACTL / DSPBCTL), the operations of the display circuits 74A and 74B are started (SS4a), and by writing a prescribed value in a predetermined system control register RGij (SYSDSPLVDS1MD / SYSDSPLVDS2MD), the output data from the display circuit 74A is output from the LVDS circuit 80 (LVDS1 / LVDS2) (SS4b).

[0417] This operation is nothing but the process at timing T4 in Fig. 6(e). In this embodiment, the program is designed such that the processes of steps SS4a to SS4b are executed within a predetermined time τ (for example, 20 mS) from timing T2. Then, corresponding to the start of operation (timing T4) of the display circuits 74A and 74B and the LVDS circuit 80, the timing timer TM is restarted from zero (SS4c). Note that the processing procedures of steps SS4a to SS4b are not necessarily limited. Even if the processes of steps SS4a to SS4b are executed in reverse order, at most only a momentary amount of useless image data is output from the LVDS circuit 80, and moreover, since the backlight unit BL is turned off, there is no problem.

[0418] In any case, in this embodiment, corresponding to the above processes of steps SS4a to SS4b, the display circuit 74 enters the V blank start state every 1 / 60 second, and when the LVDS circuit (LVDS1 / LVDS2) 80 operates, the display operation shown in Fig. 15 is repeated. In Fig. 15, the start timing and the end timing of the display operation indicated by the ○ mark indicate the V blank start timing.

[0419] 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. The display circuit 74 waits without outputting image data corresponding to each pixel of the display device until the horizontal waiting 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 the vertical waiting time WTv elapses from the vertical reference point TV0.

[0420] In addition, since the display circuit 74B operates in synchronization with the display device 74A (SP4 in FIG. 16), the start and end timings of the display operation for the sub-display device DS2 are also the same as those of the main display device DS1. Therefore, by setting the frame period (519×867 / 27) for the sub-display device DS2 to be shorter than the frame period (1083×1662 / 108) for the sub-display device DS2, it is set such that the update process of the sub-display device DS2 is completed at the start of the V blank.

[0421] When the processing of step SS4 having the above significance is completed, next, it waits for 300 mS to elapse based on the timing timer TM (SS5), and then transitions the control signal PWM to the power supply control circuit SPY from the L level to the H level (SS6). As a result, the backlight unit BL becomes in a light-emitting state, and the liquid crystal display unit MONI that has started operating previously starts a display operation based on the image data received from the display circuit 74A. Note that at this timing, since the display list has not been issued, as described above, the content of the VRAM is directly displayed. Therefore, it is also preferable to delegate the processing of steps SS5 to SS6 to the timer interrupt processing (see the dashed line). When such a configuration is adopted, at the time of timing T5, the display list DL has been issued, so a predetermined initial screen is displayed on the display device DS1.

[0422] Subsequently, the remaining part of the main body processing, which is a steady process repeatedly executed every predetermined time, will be described based on FIG. 22. As shown in FIG. 22, the operation of the effect control CPU 63 includes a main control process (a), a timer interrupt process (b) that starts every 1 mS, a reception interrupt process (not shown) that starts upon receiving a control command CMD, a VBLANK interrupt process (c) that starts upon receiving a VBLANK signal generated at the start timing of the V blank (vertical retrace period) of the display device DS1, and a drawing abnormality interrupt process (d) that occurs during operation freeze or when an unreasonable instruction command is detected. Note that the description of the 20 μS interrupt process is omitted.

[0423] In the reception interrupt process, the control command CMD received from the main control unit 21 is stored in a predetermined reception buffer so that it can be referred to in the main control process (ST13), and the process ends. Also, in the VBLANK interrupt process (Fig. 22(b)), every time a VBLANK interrupt occurs, the interrupt counter VCNT is incremented (ST15). At the start timing of the main control process, based on the value of the interrupt counter VCNT, after grasping the operation start timing of 1 / 30 seconds, the interrupt counter VCNT is cleared to zero (ST4).

[0424] On the other hand, as shown in Fig. 22(b), the timer interrupt process includes a process (ST18) of acquiring an origin sensor signal, etc. and advancing the motor effect, and a process (ST19) of advancing the lamp effect. The lamp effect and the motor effect are controlled based on an effect scenario that centrally manages all effect operations. When the effect start managed by the effect counter EN is reached, in the effect scenario update process (ST11), the motor drive table and the lamp drive table are specified.

[0425] After that, based on the specified motor drive table, the motor effect progresses, and based on the specified motor drive table, the lamp effect progresses. As described above, there is also an embodiment in which the DMAC circuit (the first and second DMA channels) 60 functions during the operation of step ST18. The motor effect progresses every 1 mS, while the lamp effect progresses at an appropriate timing longer than 1 mS.

[0426] On the other hand, as shown in FIG. 22(d), in the drawing abnormality interrupt process, the status register RGij indicating the operation state of the drawing circuit 76 is READ-accessed to identify the cause of the interrupt. Specifically, it is determined whether the drawing abnormality interrupt is due to (1) detection of an abnormal instruction command (bit error) or (2) an operation abnormality (freeze) of the drawing circuit 76 (ST16a). When the drawing abnormality interrupt is due to detection of an abnormal instruction command, the drawing circuit 76 is initialized by writing a predetermined value to a predetermined system control register RGij (ST16b). This operation is nothing but the individual reset operation of the reset path 4B shown in FIG. 7(b).

[0427] Next, after confirming the normal completion of the individual reset operation with a predetermined status register RGij, a group of operation parameters that define the operation of the drawing circuit 76 are reset to a predetermined drawing register RGij to end the process (ST16c). Then, after adjusting the stack area that stores the return address (release process for erasing the return address after the interrupt process), the process proceeds to step ST13 (ST16c).

[0428] On the other hand, in the case of a drawing abnormality interrupt based on an operation abnormality of the drawing circuit 76, the WDT circuit 58 is activated by shifting to an infinite loop process (ST16d) to reset the entire composite chip 50. If it is not desired to reset the CPU circuit 51, a predetermined keyword sequence may be output to the pattern check circuit CHK to reset only the VDP circuit 52 with the reset signal RST (see FIG. 7(b)). In this case, after confirming the normal completion of the reset operation of the VDP circuit 52, the process proceeds to steps ST4 or ST13. In order to avoid reading out the control command CMD as much as possible, it is better to proceed to step ST13 from step ST4 in other cases as well.

[0429] When the entire composite chip 50 is reset, the previous effects disappear and the effect control returns completely to the initial state (power-on state). However, when only the VDP circuit 52 is reset, although a predetermined waiting time occurs until the reset operation of the VDP circuit 52 is completed, a series of effect controls can be continued. Since the effect control CPU 63 uniformly controls image effects, lamp effects, and voice effects, unnatural deviations do not occur in each effect.

[0430] Note that the initial setting process of steps SS1 to SS3 described above is executed based on an initial value setting table SETTABLE (see FIG. 36) that associates the register address value of the VDP register RGij with the setting value for the register RGij. Since the initial setting process has been described above, next, before explaining the steady-state processing (ST4 to ST14), the steady-state operation (intermittent operation) of the VDP circuit 52 controlled by the effect control CPU 63 will be schematically explained based on FIGS. 30(a) and 31(b).

[0431] The intermittent operation of the VDP circuit 52 is as shown in FIGS. 30 and 31. In an embodiment that does not use the preloader 73, as shown in FIG. 30(a), the display list DLi completed by the effect control CPU 63 is issued to the drawing circuit 76 in its operation cycle (T1), and the drawing circuit 76 completes the image data in the frame buffers FBa and FBb by the drawing operation based on the display list DLi. Then, the image data completed in the frame buffers FBa and FBb is output by the display circuit 74 to the display devices DS1 and DS2 in the next operation cycle T1 + δ, and based on the subsequent drawing operations of the display devices DS1 and DS2, a display screen that can be perceived by the player is formed.

[0432] On the other hand, in the embodiment using the preloader 73, as shown in Fig. 31(a), the display list DLi completed by the effect control CPU 63 is issued to the preloader 73 in its operation cycle (T1). The preloader 73 interprets the display list DLi, executes the necessary prefetch operation, and rewrites a part of the display list DLi to complete the rewrite list DL'. The prefetched CG data and the rewrite list DL' are stored in appropriate locations in the DRAM 54.

[0433] Next, in its next operation cycle (T1+δ), the drawing circuit 76 acquires the rewrite list DL' from the DRAM 54 and completes the image data in the frame buffers FBa and FBb by the drawing operation based on the rewrite list DL'. Then, the image data completed in the frame buffers FBa and FBb is output by the display circuit 74 to the display devices DS1 and DS2 in the next operation cycle (T1+2δ), and becomes the display screen that the player perceives based on the subsequent drawing operations of the display devices DS1 and DS2.

[0434] The intermittent operation of the VDP circuit 52 has been schematically described above. To realize the operations shown in Figs. 30 to 31 above, after the initial processing (SS1 to SS3), the effect control CPU 63 repeatedly refers to the value of the interrupt counter VCNT and waits for the operation start timing to be reached. When the operation start timing (the start timing of every other vertical blanking) is reached, the interrupt counter VCNT is cleared to zero (ST4).

[0435] Thereafter, the steady operation is started. In this embodiment, first, it is determined whether the operation start condition for starting the steady operation is satisfied (ST5). The timing of this determination is the timing of T1, T1+δ, T1+2δ,... shown in Figs. 30 to 31, that is, the start timing of the vertical blanking period (VBLANK) of the display device DS1. The display timing of the display device DS2 is set at the initial setting (ST3) so as to be subordinate to the display timing of the display device DS1.

[0436] The operation start conditions determined at the start timing of the vertical blanking period (VBLANK) differ depending on whether or not the preloader 73 is utilized. First, an embodiment (Fig. 22) that does not utilize the preloader 73 will be described. In this case, originally, the circuit configuration and program are designed so that the internal operation of the VDP proceeds as shown in the time chart of Fig. 30(a). That is, based on the display list DL1 completed in the operation cycle (T1), the drawing circuit 76 should finish the drawing operation during that operation cycle (T1 to T1+δ). However, for example, it cannot be said that there is no case where the drawing operation is not completed during the operation cycle (T1+2δ to T1+3δ), such as the display list DL3 completed in the operation cycle (T1+2δ) of Fig. 30(a). Also, regarding the display circuit 74, there is a possibility that an Underrun abnormality may occur where the generation of display data cannot keep up with the display timing.

[0437] The determination process in step ST5 takes such a situation into consideration. The production control CPU 63 accesses the status register RGij (a type of control register group 70) indicating the operation state of the drawing circuit 76 and determines whether the drawing circuit 76 has completed the necessary operations and whether there is an Underrun abnormality at the timing of step ST5. The presence or absence of the Underrun abnormality is determined based on the underrun counters URCNTa to URCNTc. Also, in an embodiment that does not utilize the preloader 73, for example, at the timing T1+δ in Fig. 30(a), a READ access is made to the status information of the drawing register regarding the drawing circuit 76 to confirm that the drawing operation based on the display list DL1 has been completed.

[0438] When the operation start conditions are not met (abnormality / incompatibility), the exception flag ER that counts the number of exceptions is incremented, and the processes in steps ST6 to ST8 are skipped. The exception flag ER, together with the other critical exception flag ABN, is determined in the processes of steps ST9 and ST10. On the premise that the critical exception flag ABN is in the reset state, when the number of consecutive exceptions is not large (ER≦2), the production command analysis process is executed in the same way as in the normal case (ST13).

[0439] Even in the case of an underrun anomaly, similarly, the processes of steps ST6 to ST8 are skipped. Then, by writing a predetermined clear value to a predetermined system control register RGij, the display clock DCK (frequency) and the display circuit 74 are initialized (ST10c). Then, after confirming the normal end of this initialization process, 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), and then the effect command analysis process is executed (ST13).

[0440] In the effect command analysis process (ST13), it is determined whether or not the control command CMD is received from the main control board 21. If the control command CMD is received, the control command CMD is analyzed and the necessary processes are executed (ST13). Here, the necessary processes include the start preparation process for a new variable effect based on the control command CMD that instructs the start of the variable effect, and the start process for error notification based on the control command CMD indicating an error occurrence. Subsequently, a clear pulse is output to the WDT circuit (ST14), and the process returns to step ST4.

[0441] As described above, for the case of a minor underrun anomaly or when the operation start condition is not met and the anomaly flag ER is ER ≦ 2, in such a case, in that operation cycle, the process of toggling the display area read by the display circuit 74 (ST6) and the process of creating the display list (ST7) are skipped, and moreover, the effect scenario does not progress (see ST8 to ST12). This is to prevent the output of the image data of the incomplete state frame buffers FBa and FBb. Therefore, for example, in the operation cycle (T1 + 3δ) of FIG. 30(a), the image effect does not progress, and a frame drop occurs where the original screen (the screen based on DL2) is redisplayed.

[0442] Here, in order to avoid frame drops, a configuration that waits until the operation start condition is satisfied can also be considered. However, since there are many control processes (ST6 to ST12) that the production control CPU 63 should execute and it is necessary to secure the processing time for each, in this embodiment, frame drops are caused when the operation start condition is not satisfied.

[0443] However, even if a frame drop occurs, compared to the lamp production and motor production that proceed by the interrupt process (Fig. 22(b)), the progress of the image production is only delayed by about 1 / 30 to 2 / 30 seconds, and the player will not notice this. Moreover, when a frame drop occurs, the production scenario process (ST11) including the update process of the production counter EN and the voice progress process (ST12) are also skipped together, so in the reach production, preview production, and accessory production that are started thereafter, there is no possibility that the start timings of the image production, voice production, lamp production, motor production, etc. will deviate.

[0444] That is, in the production scenario, the start timings of the image production, voice production, lamp production, and motor production, and the production contents to be executed thereafter are managed integrally, and the start timings are controlled by the production counter EN that is updated only during normal times, so the synchronization of various productions does not deviate. For example, in the case of a production operation that combines an explosion sound, an explosion image, accessory movement, and a lamp flashing operation, even after a frame drop occurs, the above-described production operations start correctly in synchronization.

[0445] As described above, relatively minor abnormalities have been explained. However, when the serious abnormality flag ABN is in the set state, when the number of consecutive abnormalities is large (ER > 2), or when repeated Underrun abnormalities occur, after the determination in step ST10, an infinite loop state is set (ST10b). As a result, the timing operation of the WDT circuit 58 proceeds, and the composite chip 50 including the production control CPU 63 is abnormally reset, and thereafter, by re-executing the initial processes (SS1 to SS3), it is expected to eliminate the root cause of the occurrence of the abnormal situation.

[0446] Note that since this reset operation is started and executed by the WDT circuit 58, the entire composite chip 50 including the CPU circuit 51 is reset (Fig. 7(b)). Therefore, in order to avoid resetting the CPU circuit 51, it is also preferable that the effect control CPU 63 outputs a predetermined keyword sequence (for example, three 1-byte data) to the pattern check circuit CHK and outputs the reset signal RST to the VDP circuit 52 (see ST100 in Fig. 36). Also in this case, after confirming the normal completion of the reset operation of the VDP circuit 52 (ST101), the process proceeds to the processes of steps ST4 and ST13.

[0447] In any case, in this abnormal situation, since the voice circuit SND is also reset abnormally, all of the image effect, voice effect, lamp effect, and motor effect will return to their initial states. However, these reset operations do not affect the main control unit 21 or the payout control unit 25 at all, so there is no risk of a situation such as the disappearance of the jackpot state or the disappearance of the bonus balls occurring.

[0448] As described above regarding the abnormal situation, in reality, the above-mentioned abnormalities rarely occur, even including minor cases. After the process of step ST5, based on the settings in the predetermined display register RGij (DSPACTL / DSPBCTL), the "display areas" of the frame buffers FBa and FBb that store the image data to be read by the display circuit 74A and the display circuit 74B are toggled (ST6). As explained earlier, since the "display area (0)" and the "display area (1)" are defined in advance in the initial process (ST3), in the process of step ST6, it is specified whether the current "display area" of the frame buffers FBa and FBb is the display area (0) or the display area (1).

[0449] By executing this step ST6, the display circuit 74A alternately reads out image data from the index space 254 (display area (0)) and the index space 255 (display area (1)) every operation period δ and drives the display device DS1. Similarly, the display circuit 74B alternately reads out image data from the index space 251 (display area (0)) and the index space 252 (display area (1)) every operation period δ and drives the sub-display device DS2. Note that as described above, the actual READ access by the display circuit 74 is limited to the valid data area in the display area (0) / display area (1).

[0450] In any case, in this embodiment, since the "display area" is switched every operation period, the display circuits 74A and 74B start the output process to the display devices DS1 and DS2 for the image data completed by the drawing circuit 76 in the immediately previous operation period. However, since the process of step ST5 starts at the start of the vertical blanking period (V blank) of the main display device DS1, actually, the output process of the image data starts after the vertical blanking period is completed. In FIG. 30(a), the arrow shown in the column of the display circuit indicates the operation period of this output process.

[0451] When the process of step ST6 having the above significance is completed, the effect control CPU63 subsequently completes the display list DL that specifies the image data to be output by the display circuit 74 to the display device in the next operation period (ST7). Although not particularly limited, in this embodiment, the list buffer area (DL buffer BUF) of the RAM59 is secured, and the display list DL is completed there (see FIG. 13).

[0452] The display list DL is configured by listing a series of instruction commands in an appropriate order and ending with the description of the EODL (End Of DL) command. And in this embodiment, in order to realize the smooth operation of the data transfer circuit 72, the drawing circuit 76, and the preloader 73, all the instruction commands including the EODL command are limited to only the instruction commands whose command length is an integer multiple of 32 bits (N>0). Note that as previously explained, the instruction commands composed of an integer multiple of 32 bits may include don't care bits.

[0453] In this way, since the display list DL of the embodiment is composed of only the instruction commands whose command length is an integer multiple of 32 bits (N>0), the data volume value (total data amount) of the entire display list DL is necessarily an integer multiple of the minimum unit of the command length (32 bits = 4 bytes). Furthermore, in this embodiment, considering the minimum data amount Dmin of the data transfer circuit 72, the data volume value of the display list DL is adjusted to be an integer multiple (1 or more) of the minimum data amount Dmin and also an integer multiple of the minimum unit (4 bytes) of the instruction command. For example, if Dmin = 256 bytes, the data volume value of the display list DL is adjusted to any value such as 256 bytes, 512 bytes, etc.

[0454] Here, it is also suitable to adjust appropriately to 256 bytes or 512 bytes according to the complexity of the rendering content. However, in this embodiment, considering that there are two display devices and the sub-display device DS2 does not execute very complex image rendering, the data volume value of the display list DL is always adjusted to 256 bytes.

[0455] However, this method is not limited in any way. When there are three or more display devices, or in the case of a gaming machine that performs complex image effects including the sub-display device DS2, it is adjusted to 512 bytes or 768 bytes. Also, during normal effects, the data volume value of the display list DL is adjusted to 256 bytes, and it is also preferable to adjust the data volume value of the display list DL to 512 bytes or 768 bytes only when performing special effects.

[0456] 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) defined in advance in each operation cycle δ. As an adjustment method, there are a simple method (A) of filling the insufficient area with 32-bit NOP (No Operation) commands after a 32-bit long EODL command, or a standard method (B) of filling the insufficient area with 32-bit NOP commands and then finally describing a 32-bit long EODL command. Note that there is also an unadjusted method (C) of terminating with an EODL command without adjusting the data volume value (total data amount) of the display list DL at all, and adding dummy data for transfer during the operation of the data transfer circuit 72 to ensure a transfer amount that is an integer multiple of the minimum data amount Dmin.

[0457] Here, when adopting the standard method (B), first, the command counter CNT is initially set to a specified value (64 - 1 corresponding to 256 bytes). Each time a significant instruction command is written to the DL buffer area BUF, the command counter CNT is appropriately subtracted. After writing a series of significant instruction commands is completed, NOP commands are described until the command counter CNT becomes zero, and finally an EODL command is described. In the case of this embodiment, since the instruction commands are limited to those whose command length is an integer N times (N > 0) of 32 bits, the above processing is easy, and the subtraction process of the command counter CNT becomes a subtraction process corresponding to the integer N.

[0458] On the one hand, when adopting the simple method (A), when creating the display list DL, first, it seems that it is sufficient to fill the entire list buffer area (DL buffer BUF) with NOP commands, so it seems to be superior to the standard method (B) at first glance. Also, from the perspective of simplicity, the unadjusted method (C) also seems to be excellent. However, in this embodiment, basically the standard method (B) is adopted, and the actual data amount from the beginning to the EODL command of the display list DL, that is, the data amount up to the EODL command, is always adjusted to be an integer multiple of the minimum data amount Dmin of the data transfer circuit 72.

[0459] This is considering an embodiment that utilizes the pre-loader 73. If the simple method (A) or the unadjusted method (C) is adopted, the actual data amount of the display list DL up to the EODL command will be a random value, which will cause problems when transferring the rewritten list DL' rewritten by the pre-loader 73 to the DRAM 54 or when transferring the rewritten list DL' from the DRAM 54 to the drawing circuit 76. Note that when transferring the rewritten list DL' to the DRAM 54, the ChA control circuit 72a of the data transfer circuit 72 functions, and when transferring the rewritten list DL' to the drawing circuit 76, the ChB control circuit 72b functions (see Fig. 28), but in either case, only the rewritten list DL' up to the EODL command will be transferred.

[0460] The advantages of the standard method (B) for adjusting the data volume value of the display list DL have been described above. In an embodiment that does not use the pre-loader 73, since the issued display list DL is only processed by the drawing circuit 76, the use of the simple method (A) or the unadjusted method (C) is not prohibited at all.

[0461] However, in the following description, regardless of the presence or absence of the use of the pre-loader 73, on the premise of basically adopting the standard method (B) as a principle, the details of the display list DL will be described based on Fig. 23.

[0462] Although not particularly limited, in this embodiment, the display list DL first describes an instruction command sequence (L11 to L16) regarding the main display device DS1, and then describes an instruction command sequence (L17 to L20) regarding the sub-display device DS2. Also, the 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. 23 actually shows the procedure in which the production control CPU 63 writes an instruction command to the list buffer area of the RAM 59 and the operation of the drawing circuit 76 based on the display list DL.

[0463] As shown in FIG. 23, at the head of the display list DL, an environment setting instruction command (SETDAVR) is described to define 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 described with reference to FIG. 12(a), in this embodiment, a pair of frame buffers FBa are secured in an arbitrary area (c) for the display device DS1. Normally, by setting the base point address (X, Y) = (0, 0) corresponding to the effective data area for the display circuit 74, it is utilized by the drawing circuit 76 from the head position of the frame buffer FBa.

[0464] In FIG. 12(c), it is marked as L11 in the actual drawing area at the lower left. This means that the actual drawing area on the frame buffer FBa is specified to start from the base point address (0, 0) of the frame buffer FBa by the instruction command L11. 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 the subsequent instruction command (SETINDEX) L13. Note that the use or non-use of the Z buffer is also specified in the instruction command L11.

[0465] Next, by means of the environmental setting instruction command (SETDAVF), the upper left base point coordinates (Xs, Ys) and the lower right diagonal point coordinates (Xe, Ye) are set on the virtual drawing space to define a drawing area of W×H dimensions (L12). Here, the virtual drawing space is a virtual two-dimensional space of ±8192 in the X direction and ±8192 in the Y direction that can be drawn by a drawing instruction command (such as a SPRITE command) (see Fig. 12(c)).

[0466] By means of this instruction command L12 (SETDAVF), the virtual drawing space is divided into a drawing area where the drawing content is actually reflected on the display device DS1 and other non-drawing areas. Also, the instruction command L12 (SETDAVF) will associate the actual drawing area whose start position (base address) is defined by the instruction command L11 with the drawing area on the virtual drawing space.

[0467] In other words, by means of the instruction command L12, a W×H actual drawing area starting from the base address corresponding to the drawing area on the virtual drawing space is defined in the frame buffer FBa (where the index space is undetermined). Therefore, the drawing area specified by the instruction command L12 needs to be the same as 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 valid data area (Fig. 22(e)) for the display circuit 74.

[0468] After the drawing circuit 76 executes the instruction commands L11 and L12, only the drawing content included in the drawing area among the drawing content drawn on the virtual drawing space will be reflected in the actual drawing area of the frame buffer FBa. Therefore, the drawing content of the part that protrudes from the drawing area and the part described as the working area in Fig. 12(c) will not be reflected in the frame buffer as it is. When securing a working area in the virtual drawing space, the non-drawing area of the virtual drawing space is used.

[0469] Next, in the current operation cycle, the rendering circuit 76 defines where to render the rendering content to be rendered based on the display list DL to be completed (L13). Specifically, for the frame buffer FBa of the display device DS1 with a double buffer configuration, the index space IDX that becomes the "writing area" of the rendering content based on the current display list DL is specified (L13). Specifically, by the SETINDEX command, which is a texture setting command, (1) the frame buffer FBa is ensured in an arbitrary area, and (2) the index number N on an arbitrary area of the index space IDX N is specified.

[0470] By this instruction command L13, for example, when N = 255 is specified, the actual rendering area corresponding to the rendering area defined on the virtual rendering space is specifically the index space IDX in the frame buffer FBa of the double buffer structure 255 is defined to be.

[0471] In the case of this embodiment, the index number of the frame buffer FBa is 255 or 254 (Fig. 12(a)), and either toggled is specified (L13). Note that this index number is the index number of the non-designated display area (0) / (1) in step ST6 of the main control process. For example, in the process of step ST6, when the display area (0) is specified for the display circuit 74, the display area (1) becomes the "writing area" for the rendering circuit 76.

[0472] As described above, after the correspondence between the actual rendering area (logical space of W×H) and the rendering area (virtual space of W×H) is generally defined by the instruction command L11 and the instruction command L12, the virtual space of W×H is associated with the logical space of W×H in a specific index space IDX by the instruction command L13 (SETINDEX) that specifically specifies the index space IDX.

[0473] In other words, in the future, based on a series of instruction commands, the content virtually drawn in the virtual space of W×H will become the image data of the built-in VRAM71 (frame buffer) based on the conversion table inside the VDP that defines the correspondence between the virtual space and the actual address of the built-in VRAM71.

[0474] Subsequently, as the "writing area", an instruction command for executing a frame buffer clear process that fills the specified index space IDX with, for example, black is described (L14, L15). This is nothing but the process of erasing the image data written to the frame buffer FBa two operation periods before.

[0475] Specifically, for example, black is selected by the SETFCOLOR command, which is a type of environment setting command, and it is defined to fill the rectangular area by the RECTANGLE command, which is a primitive drawing system command. In the RECTANGLE command, for the drawing area set in the virtual drawing space (the virtual space corresponding to the frame buffer FBa), the XY coordinates of the upper left endpoint and the lower right endpoint are specified (see Fig. 12(c)).

[0476] Through the above processing, the drawing preparation process is completed. Next, instruction commands for drawing an appropriate texture such as a still image or a single frame of a video in the virtual drawing space are listed. Typically, first, the index space IDX where the texture is to be expanded is specified by the SETINDEX command of the texture setting system, and then the TXLOAD command, which is an instruction command of the texture loading system, is described, and the predetermined texture read from the CGROM55 is described in the display list DL so as to be expanded in the predetermined index space IDX.

[0477] As described above, in this embodiment, the background video is composed of an IP stream video. Therefore, for example, for the background video, the index space IDX where this is to be expanded is specified by the SETINDEX command of the texture setting system as the index space IDX of the page area (b). 0After identifying it, the texture load-related TXLOAD command is described. In the TXLOAD command, for the video frame to be loaded this time, it is necessary to specify the starting address of CGROM55 (the source address of the texture) and the data size after expansion (horizontal × vertical).

[0478] In the VDP circuit 52, when the above TXLOAD command is executed, one video frame (texture) of the background video is first acquired in the AAC area (a), and then, by the automatically started GDEC75, it is expanded into the index space IDX of the page area (b). 0 Next, this one video frame will be drawn in the virtual drawing space. In this case, by the SETINDEX command (texture setting system), it may be set that "the index space IDX of the page area (b) is the texture to be processed later", but when processing continuously with the TXLOAD command, the description of this SETINDEX command can be omitted. 0 In any case, in the state where it is specified that "the index space IDX of the page area (b) is the texture to be processed later", next, appropriate drawing intermediate operation system instruction commands such as setting parameters for the α-blending process are described. Note that the α-blending process relates to the transparency / translucency process between the image already described in the drawing area (frame buffer FBa) and the image to be overwritten. Therefore, for the first drawing operation like the video frame of the background video, the use of the drawing intermediate operation system instruction commands is unnecessary.

[0479] In any case, in the state where it is specified that "the index space IDX of the page area (b) is the texture to be processed later", next, appropriate drawing intermediate operation system instruction commands such as setting parameters for the α-blending process are described. Note that the α-blending process relates to the transparency / translucency process between the image already described in the drawing area (frame buffer FBa) and the image to be overwritten. Therefore, for the first drawing operation like the video frame of the background video, the use of the drawing intermediate operation system instruction commands is unnecessary. 0 Subsequently, by the SPRITE command, which is an instruction command of the primitive drawing system, "the index space IDX of the page area (b)

[0480] Subsequently, by the SPRITE command, which is an instruction command of the primitive drawing system, "the index space IDX of the page area (b) 0Describe the SPRITE command to draw the "texture (one video frame of the background video)" at an appropriate position (the rectangular Destination area) in the virtual drawing space. Note that for the SPRITE command, it is necessary to specify the upper left endpoint and the lower right endpoint of the Destination area in the virtual drawing space.

[0481] This Destination area is, in advance, the whole or a part of the drawing area (virtual space defined on the virtual drawing space) associated with the actual drawing area (FBa) by the instruction commands L11 and L12. However, since the background video is usually drawn on the entire display screen, in such a case, the Destination area will be the whole or more of the drawing area. Note that the case where the Destination area is larger than the whole of the drawing area is, for example, when the background video is zoomed in.

[0482] Since the drawing of the video frame of the background video is completed by the above processing, subsequently, instruction commands such as texture load system, texture setting system, drawing intermediate calculation system, and primitive drawing system commands are listed in an appropriate order to construct a display list DL to draw various textures over the background video. As described above, during variable effects, a large number of videos are required. In that case, for the page area (b) of the built-in VRAM 71, an instruction command (NEWPIX) of the index table control system should be described to increase the index space IDX.

[0483] For example, regarding the second IP stream video, after ensuring an additional index space IDX 1 in the page area (b) by the NEWPIX command, specify this index space IDX 1 (SETINDEX), instruct the expansion of one frame of the second video (TXLOAD), and place the expanded texture at an appropriate position in the drawing area (SPRITE). Usually, the Destination area in this case is a part of the drawing area.

[0484] The same applies below. With the NEWPIX command, the index space IDX is successively secured. k After that, while performing appropriate alpha blending processing, if a plurality of IP streams are drawn in the drawing area, the content drawn in the drawing area will be 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 being drawn, in the page area (b), a plurality of N index spaces are functioning.

[0485] And when a series of variable effects have ended, in order to release the index spaces IDX that are considered unnecessary among the many index spaces IDX secured in the page area (b), the unnecessary index spaces IDX can be deleted by the DELPIX command. 1 ~IDX k When drawing a still image or an I stream video, after specifying by the SETINDEX command that the decoding destination of these textures is the AAC area (a), if the TXLOAD command is executed, the textures acquired in the AAC area (a) will then be automatically expanded in the ACC area (a) by GDEC75, which starts automatically. Then, the expanded textures can be drawn at the appropriate positions in the drawing area by the SPRITE command. Depending on whether the cache hit function is utilized or not, either the first AAC area (a1) or the second AAC area (a2) is used.

[0486]

[0487] ​In the description so far, each texture is directly drawn in the drawing area of the DS1 for the main display device, but it is not necessarily limited to such an operation. For example, an appropriate drawing area may be provided (Fig. 12(c)) without overlapping the drawing area already secured for the display device DS1, and if this drawing area is associated with the working area of the built-in VRAM71, an intermediate drawing area can be constructed to complete an appropriate production image. Here, the reason for not overlapping with the drawing area for the display device DS1 is that for the overlapping area, subsequent association settings take precedence and the drawing content for that area is not reflected in the frame buffer FBa.

[0488] As shown in Fig. 12(c), the working area of this embodiment is the index space IDX in the arbitrary area (c). 0 At the production timing when this working area is used, first, an instruction command sequence (SETDAVR, SETDAVF, SETINDEX) for associating the drawing area for the production image (see Fig. 12(c)) with the working area (the actual drawing area of the index space IDX) is described in advance. As shown in Fig. 12(c), the drawing area for the production image is secured in an area not included in the drawing area for the main display device DS1. 0 Then, after that, an instruction command similar to the instruction command sequence L16 regarding the frame buffer FBa is listed, and an appropriate production image can be completed in the index space IDX. In the case of this embodiment, since the production image is composed of still images, an instruction command (SETINDEX) is described so that the decoded data is expanded in the first AAC area (a1), and then, a primitive drawing system instruction command (SPRITE) with an appropriate position in the drawing area of the index space IDX as the Destination is used. Note that such an operation is repeated once or multiple times according to the production content.

[0489] And then, after completing the production image in the index space IDX 0 In the case of this embodiment, since the production image is composed of still images, an instruction command (SETINDEX) is described so that the decoded data is expanded in the first AAC area (a1), and then, a primitive drawing system instruction command (SPRITE) with an appropriate position in the drawing area of the index space IDX as the Destination is used. Note that such an operation is repeated once or multiple times according to the production content. 0 And then, after that, an instruction command similar to the instruction command sequence L16 regarding the frame buffer FBa is listed, and an appropriate production image can be completed in the index space IDX. In the case of this embodiment, since the production image is composed of still images, an instruction command (SETINDEX) is described so that the decoded data is expanded in the first AAC area (a1), and then, a primitive drawing system instruction command (SPRITE) with an appropriate position in the drawing area of the index space IDX as the Destination is used. Note that such an operation is repeated once or multiple times according to the production content.

[0490] And after completing the production image in the index space IDX 0After positioning it as a texture (SETINDEX), use the SPRITE command to draw the production image (texture) of the index space IDX at an appropriate position in the drawing area of DS1 for the main display device. 0 In such a case, the production image of the index space IDX 0 can be decomposed into triangle drawing primitives, rotated at an appropriate angle, and then drawn in the drawing area. Note that the rotation angle of the texture is associated with, for example, the reliability of the preview effect.

[0491] Above, the instruction command sequence (L11~L16) for completing one frame of the main display device DS1 has been described. The same applies to the instruction command sequence (L17~L12) for completing one frame of the sub-display device DS2. That is, specify the start XY coordinates of the frame buffer FBb (L17) and define them (usually X = 0, Y = 0), and define the drawing area for the sub-display device DS2 on the virtual drawing space shown in Fig. 12(c) (L18).

[0492] By the way, in this embodiment, after finishing the generation of the image data for the main display device DS1, it transfers to the generation process for the sub-display device DS2. Therefore, even if the drawing area for the sub-display device DS2 overlaps with the drawing area for the main display device DS1, there is no problem, and the drawing area can be freely set. Thus, when developing the generation program of the display list DL, for example, when pasting an appropriate texture on the newly set drawing area using the SPRITE command, the setting of the operation parameters (Destination area) of the SPRITE command and others can be standardized to a certain extent.

[0493] Once the definition of such an arbitrary drawing area is completed (L18), next, for the frame buffer FBb of the display device DS2 with a double-buffer configuration, an index space IDX that becomes the "writing area" of the drawing content based on the current display list DL is specified (L19). The index number of this index space IDX is the index number that does not correspond to the display area (0) / (1) specified in step ST6 of the main control process with respect to the frame buffer FBb.

[0494] And then, thereafter, the instruction command sequences L20 to L22 for the sub-display device DS2 are listed in the same manner as the instruction command sequences L14 to L16 for the main display device DS1. Also, the index space IDX 0 can also be used for the produced image completed in it.

[0495] As described above, in this embodiment, all the instruction commands L11 to L22 constituting the display list DL are limited to those whose command lengths are integer multiples of 32 bits. And as explained earlier, the data volume value (total data amount) of the display list DL of this embodiment is adjusted to a fixed length (256 bytes), and after adding the required number of NOP commands (L23) as dummy commands, it is terminated with an EODL command (L24). That is, in the embodiment of FIG. 23, the above-described standard method (B) is adopted.

[0496] However, even when adopting the standard method (B), it is not always essential to fix the total data amount of the display list DL to 256 bytes in all operation cycles. That is, in another embodiment, when the total data amount of the display list DL excluding the NOP commands exceeds 256 bytes (for example, during a special production period), the total data amount of the display list DL is adjusted to 512 bytes or more, N×256 bytes, by adding NOP commands. Note that when adopting the standard method (B), as described earlier, the end of N×256 bytes is terminated with an EODL command.

[0497] As described in detail above regarding the configuration of the display list DL, the rendering control CPU 63 issues the completed fixed-byte-length display list DL to the VDP circuit (ST7 to ST8). FIG. 24 is a flowchart for explaining the DL issuance process (ST8 in FIG. 22) in which the rendering control CPU 63 directly performs a WRITE access to the transfer port register TR_PORT of the transfer circuit 72 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 details of the data transfer circuit 72.

[0498] To implement the DL issuance process, first, it is necessary to set the necessary set values in a plurality of data transfer registers RGij that define the operation details 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 in a predetermined data transfer register RGij. The set content is not particularly limited, but here, it is set that the data is to pass through the ChB control circuit 72b from the CPUIF unit 56, and regarding the CPU bus control unit 72d, the data transfer operation is to be executed while checking the remaining amount of its FIFO buffer (ST20). In the following description, the ChB control circuit 72b may be abbreviated as the "transfer circuit ChB" for convenience.

[0499] Next, the total transfer size is set in a predetermined data transfer register RGij. As described above, in this embodiment, since the total amount of data in the display list DL is adjusted to an integer multiple of 256 bytes, that value is set. Note that the total amount of data = 256 × N is also an integer multiple of the minimum data amount Dmin of the data transfer circuit 72. Usually, the multiple N is 1 or 2, but in the following description, it will be described with N = 1.

[0500] Here, since the transfer port register TR_PORT (hereinafter sometimes abbreviated as the transfer port) is a 32-bit long register, the rendering control CPU 63 will execute a register WRITE operation on the transfer port TR_PORT for every 32 bits. Therefore, the value of the management counter CN that manages the number of register WRITEs is initially set to 64 (ST21). Note that when the non-adjustment method (C) is adopted, at this timing, the data transfer amount that is an integer multiple of the minimum data amount Dmin is determined and the management counter CN is set.

[0501] Since the initial setting is completed by the above processing, next, the data transfer operation via the transfer circuit ChB is set to the start state (ST22), and based on the set value to the predetermined drawing register RGij that defines the operation of the drawing circuit 76, the drawing operation is started (ST23). As a result, thereafter, for the instruction command sequence in which the rendering control CPU 63 performs a register WRITE operation on the transfer port TR_PORT, a rapid and smooth Analyze process by the drawing circuit 76 (display list analyzer) is ensured.

[0502] Note that the fact that the instruction commands listed in the display list DL are limited to instruction commands that are integer multiples of 32 bits in command length also effectively contributes to the rapid and smooth Analyze process. The timings t1, t2, t3, and t4 in FIG. 30(a) indicate the operation timings of step ST23. Note that since the issuance process (ST8) of the display list DL finishes quickly, the time width required for the issuance process is not described in FIGS. 30 to 31.

[0503] Subsequently, it is confirmed whether the setting in step ST22 has functioned (ST24). This is because the initial setting of each part of the data transfer circuit 72 takes longer processing time than the register WRITE operation (setting operation) by the effect control CPU 63, so that subsequent instructions are not given to the data transfer circuit 72 in an incomplete state. And if, by any chance, it does not enter the operation start state even after waiting for a predetermined time, the serious abnormality flag ABN is set and the DL issuance process is terminated (ST25). As a result, thereafter, the WDT circuit 58 functions and the composite chip 50 is abnormally reset (ST10).

[0504] Note that, as described above, the effect control CPU 63 may output a predetermined keyword sequence to the pattern check circuit CHK in order to avoid resetting the CPU circuit 51, and abnormally reset only the VDP circuit 52 based on the reset signal RST.

[0505] However, normally, the setting in step ST22 is completed quickly. Subsequently, for the FIFO buffer (32 bits × 130 stages) of the CPU bus control unit 72d, after confirming that the FIFO buffer is not full (ST26), instruction commands are written to the transfer port TR_PORT one by one in order from the first line constituting the display list DL (ST28).

[0506] 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, resulting in an intermittent transfer operation.

[0507] In any case, in this embodiment, the DL issuance process (ST28) is completed quickly. However, in the event that the setting contents in the VDP register RGij conflict due to the influence of noise or the like, in the determination of step ST26, there may be a case where the FIFO buffer full state is not resolved even after waiting for a predetermined time. And in such a case, after setting the initialization data in a predetermined VDP register RGij, initializing the drawing circuit 76 and the data transfer circuit 72, a critical abnormality flag ABN is set and the DL issuance process is terminated (ST27).

[0508] By the way, at this timing, the data transfer circuit 72 and the drawing circuit 76 have already started operating and have completed a certain degree of processing. Therefore, for the initialization process of the drawing circuit 76, while maintaining the contents of the drawing register RGij, (1) setting all internal parameters that may be set by the display list DL to their initial values, (2) setting all internal control circuits to their initial states, (3) initializing GDEC75, and (4) initializing the cache state of the AAC region are included. Similarly, the initialization process of the data transfer circuit 72 includes the initialization process 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).

[0509] Note that in the above-described initialization process of step ST27, the contents of the drawing register RGij are maintained, but for a predetermined drawing register, its contents may be initialized. The predetermined drawing registers to be cleared to their initial values include (a) an execution control register for setting the start of drawing execution (see ST23 in FIG. 24), (b) a status register indicating the execution status of the drawing circuit 76, and (c) a status register for specifying the position of the currently processed display list.

[0510] In any case, as a result of setting the critical abnormality flag ABN, subsequently, the WDT circuit 58 and the effect control CPU 63 function, and the composite chip 50 or the VDP circuit 52 is abnormally reset (ST10a). Therefore, the process of initializing the drawing circuit 76 and the data transfer circuit 72 is not necessarily essential. On the other hand, when initializing the drawing circuit 76 and the data transfer circuit 72, as a result, abnormal recovery can be expected. Therefore, it is also preferable to return to the process of step ST20 and re-execute the DL issuance process without setting the critical abnormality flag ABN.

[0511] This is the same in the process of step ST25. It is preferable to return to the process of step ST20 without setting the critical abnormality flag ABN after initializing the data transfer circuit 72 and the drawing circuit 76. However, in such a case, the number of re-executions of the DL issuance process is counted. If the number of re-executions exceeds the limit value, the critical abnormality flag ABN is set and the DL issuance process is terminated.

[0512] FIG. 24(b) is a confirmatory illustration of a normal operating state. 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 the operations based on each instruction command are executed. This operation is executed in parallel with the DL issuance process of the display list DL and the data transfer operation (ST26 to ST30) of the data transfer circuit 72.

[0513] For example, when the instruction command (TXLOAD) is executed, the necessary texture is read from the CGROM 55 and acquired in the AAC area (a). Subsequently, the GDEC 75 is automatically activated and the decoding operation is executed, and the decoded data is expanded in a predetermined index space. Also, depending on the instruction command, the geometry engine 77 and others function. In any case, the respective parts of the drawing circuit 76 cooperate to complete the image data corresponding to the display list DL in the frame buffers FBa and FBb.

[0514] Next, a case where the display list DL is issued with the DMAC circuit 60 interposed will be described with reference to FIG. 25. Without any limitation, among the first to fourth DMA channels incorporated in the DMAC circuit 60, the third DMA channel will be used.

[0515] In the embodiment of FIG. 25, first, a predetermined data transfer register RGij and a predetermined drawing register RGij are each set to a clear value to initialize the data transfer circuit 72 and the drawing circuit 76 (ST20). This process is the same as the error process in step ST27 of FIG. 24. The internal circuit of the data transfer circuit 72 including the FIFO buffer is initialized, the status bit of the data transfer register indicating the progress state of data transfer becomes the initial value, and the bit indicating that the entire data transfer is being initialized becomes a predetermined value.

[0516] The same applies to the drawing circuit 76, and it includes the processes of (1) setting the internal parameters to the initial values, (2) setting the internal control circuit to the initial state, (3) initializing the GDEC75, and (4) initializing the cache state of the AAC region. Also, in the initialization process of the drawing circuit (ST20 in FIG. 25), the above-mentioned predetermined drawing register RGij may be initialized. Note that in the process of FIG. 24, such an initialization process may be executed first.

[0517] In the process of FIG. 25, next, it is confirmed by reading a predetermined status register RGij that specifies the operating states of the data transfer circuit 72 and the drawing circuit 76 that the initialization process has been completed normally (ST21). And if it cannot be initialized by any chance, the critical abnormality flag ABN is set and the process is terminated (ST22). However, such a situation hardly actually occurs.

[0518] 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. The setting content is not particularly limited, but here, it is set to pass through the ChB control circuit 72b from the CPUIF unit 56 and to follow the setting to the DMAC circuit 60 regarding the transfer protocol to the CPU bus control unit 72d (ST23).

[0519] Next, the total transfer size is set in a predetermined data transfer register RGij. Similar to the case of FIG. 24, the total data amount = 256. When the non-adjustment method (C) is adopted, at this timing, the total transfer size that is an integer multiple of the minimum data amount Dmin is determined and set. Next, based on the set value in the predetermined drawing register RGij, the drawing operation of the drawing circuit 76 is started (ST25). The timings t1, t2, t3, and t4 in FIG. 30(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).

[0520] The start process of the operation of the DMAC circuit 60 is as shown in FIG. 25(b). First, in a state where DMAC transfer is prohibited, it waits for the transfer of one cycle of data transfer unit (one operand) to be completed (ST40). The detailed operation content is the same as the process shown in FIG. 26, and is divided into a process of setting DMAC transfer to be prohibited (ST53) and a subsequent standby process (ST54).

[0521] Such a process is provided because (1) in other embodiments, there is a possibility of using the DMAC circuit 60 (the third DMA channel) in the main control process or the timer interrupt process (FIG. 22), and (2) in other embodiments where the process of step ST5 in FIG. 22 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 period (δ).

[0522] In the exceptional situation as described above, if new setting values (such as conflicting setting values) are additionally set for the operating DMAC circuit 60, normal DMA operation cannot be guaranteed at all, and serious troubles are feared. However, by providing the process of step ST40, normal operation based on subsequent setting values is guaranteed. That is, even in a modified embodiment obtained by partially modifying this embodiment, normal DMA operation can be realized regardless of the previous troubles.

[0523] If the process of step ST40 having the above significance is executed, next, the operating conditions of the DMAC circuit 60 are set (ST41). Specifically, as shown in FIG. 9, the cycle steal transfer mode is selected, and one operand transfer is set to 32-bit transfer × 2 times. Also, since the Source address is the address of the list buffer area (DL buffer BUF) of the RAM ...

Claims

【Claim 1】 A VDP (Video Display Processor) that generates an image signal required for image rendering, and a VDP circuit having a VDP register to which setting values that define the operation of the VDP are set, a CGROM that non-volatilely stores basic data of the image signal, a CPU that executes program processing, a DMAC (Direct Memory Access Controller) circuit that operates under the control of the CPU, and a CPU circuit having an operation control register to which setting values that define the operations of various internal circuits including the DMAC circuit are set, the DMAC circuit is divided into a plurality of channel circuits, and as DMA transfer conditions when these operate in parallel, a arbitration mode in which channels are arbitrated at predetermined timings during the transfer operation and a non-stop mode in which channels are not arbitrated during the transfer operation are configured to be selectable based on settings to the operation control register, a gaming machine in which rendering operations including image rendering are executed based on a display list issued by the CPU circuit to the VDP circuit and a setting operation to the VDP register by the CPU circuit, while in a VDP memory space accessible by the VDP, a plurality of regions that can be used as expansion spaces for expanding the basic data are configured to be securable, in a CPU memory space accessible by the CPU, a plurality of address spaces located outside the CPU circuit and each capable of defining a data bus width are included, automatic setting means for setting an initial value of the VDP register before the program processing of the CPU is started, setting means (SP1 to SP2, SP6) for setting necessary setting values to the operation control register for access operations to the address space as program processing of the CPU after reset of the CPU, first transfer means (SP8) for DMA-transferring a rendering control program that is realized by the operation of the DMAC circuit based on the program processing of the CPU and that realizes the rendering operation to any one of the address spaces, second means for DMA-transferring data necessary for the rendering operation, which is realized by appropriately operating the DMAC circuit with the rendering control program DMA-transferred by the first transfer means, and is configured to have, A gaming machine configured such that a process of setting necessary operation parameters in the VDP register is executed by the production control program before the start of the operation of the image production in order to optimize the access operation to the CGROM.

Citation Information

Patent Citations

  • Game machine

    JP2007135972A

  • Game machine

    JP2016007258A

  • Game machine

    JP2016159029A

  • Game machine

    JP2016159030A

  • Game machine

    JP2017093632A