HARDWARE ManualSCSP User's Manual
BackForward
SCSP User's Manual / 4.3 Sound Source Register

In FM speech synthesis, the connection between slots (actually, sound stack → connection with slots) is important. The slot calculation in the FM audio configuration diagram in Figure 4.28 can be represented as in Figure 4.24.

Figure 4.24 Slot arithmetic and sound stack status

Slot arithmetic starts with PG arithmetic processing and PLFO arithmetic processing (OP1), ADP (address pointer) arithmetic processing and MD (modulation) data read (OP2), waveform data read (OP3), interpolation arithmetic processing and EG arithmetic processing. It is executed in a cycle of ALFO arithmetic processing (OP4), level arithmetic processing (OP5) (OP6), and waveform output value sound stack write (OP7). Level arithmetic processing requires two cycles because the arithmetic processing is long.
Looking at the arithmetic processing temporarily, for example, "When slot 3 is performing PG arithmetic processing and PLFO arithmetic processing, ADP arithmetic processing and MD reading are in slot 2, waveform.

Data reading is performed in slot 1, interpolation calculation processing, EG calculation processing, and ALFO calculation processing in slot 0, level calculation processing in slots 31 and slot 30, and sound stack in slot 30. "
Slot operations start at slot 0 and work toward slot 31, so they are written to the sound stack in ascending order from slot 0. However, there is a time lag between the start of the slot calculation and the time the slot is written to the sound stack. For example, it takes 6 cycles for slot 0 to be written to the sound stack, as shown in Figure 4.25.
As shown in Figure 4.24, when connecting another slot to a slot, you can only actually connect to a slot that has data already written to the sound stack when the slot to be connected is in the OP2 state.
For example, for other slots that can be connected to slot 0, when OP2 is slot 0, slots up to "27" are written on the sound stack, so colored sound data up to "27" is applicable. The official expression of this is as follows.


● Slot connection type {Current slot number + 32-Slot number you want to connect (sound stack) + A} ≧ 5

The current slot number represents the slot number of the register. However, for A, substitute "32" when the sound stack of the slot you want to connect is in the current cycle, and "0" when it is in the past cycle.
The past here is the data of the cycle one sample before.

Figure 4.25 Time difference between slots being written to the sound stack

Calculation formula for "MDXSL" and "MDYSL"

Two or more slots are connected to configure FM speech synthesis, and the calculation method of "MDXSL" and "MDYSL" (6 bits each) at this time will be explained.
When connecting two slots, if the slot on the side to be modulated (modulator) is M, the slot on the side to be modulated (carrier) is C, and the answer from M-C is J,

MC = J. .. .. .. .. 4.1 formula

It will be. The value taken by the most significant bit (MSB ... 6th bit) of "MDXSL" and "MDYSL" changes depending on the obtained J value. The conditions are shown below.

● Condition 1 When J ≧ 28

● Condition 2 When J <0 (J is negative)

● Condition 3 When the value of J does not apply to either Condition 1 or Condition 2

Here are some notes on actually realizing FM speech synthesis.

 Figure 4.26 Slot averaging operation ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ┓
┃ Slot input / output Modulation input ┃
┃ ┃
┃ XY ・ ・ ・ Modulation input XY ┃
┃ ↓ ↓ ↓ ↓ ┃
┃ ┌─┴───┴─┐ ┌─┴────┴─┐ X + Y ┃
┃ │ Slot │ │ Average calculation unit │ = ─────── ┃
┃ └───┬───┘ └────┬───┘ 2 ┃
┃ ↓ ↓ ┃
┃ Waveform data output ADDRESS ┃
┃ Go to POINTER ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

The source you enter into the slot is the data in the sound stack ("SOUS"). Therefore, modulation in a slot means assigning and connecting the sound stack corresponding to the modulation slot to the slot to be modulated. As an actual function, there are "MDXSL" and "MDYXL" that select the sound stack to be input to the modulation inputs Y and X, so it is necessary to set the parameters obtained by the calculation method described above in this register. there is.
In addition, there are two modulation inputs to the slot, X and Y. Note that these two inputs are halved by the averaging operation. Therefore, if one slot input is connected, set the same parameters for the X and Y inputs so that the sound stack data for the same slot is input. If you set only one-sided input, unexpected data may be mixed in or the FM modulation degree may be felt to be small.
Next, using the calculation methods of "MDXSL" and "MDYSL", each parameter will be calculated using an FM sound source with a 4-slot configuration that is actually used in FM speech synthesis as an example.
First, we will explain how to read the FM speech synthesis algorithm shown in Figure 4.27.

Figure 4.27 4-slot configuration algorithm

● Slot 0
Slot 0 uses the output for the input of slot 2, while the output of slot 0 is used for the input of slot 0. This is called self-feedback.

● Slot 1
Slot 1 uses the output as the input for slot 2.

● Slot 2
Slot 2 uses the outputs of slot 0 and slot 1 as inputs. The output is used for the input of slot 3.

● Slot 3
Slot 3 takes the output of slot 2 as input. No output in slot 3 is connected, but we will use it as an audio output.

(1) Parameters to be set in slot 0

Figure 4.28 Slot 0 algorithm

Self-feedback configurations such as slot 0 require the sound stack containing the output data in slot 0 to be connected to the modulation inputs X and Y.
Since the sound stack has the latest sample and the past sample for the sample currently being calculated, input the latest sample or the past sample to both the modulation inputs X and Y, or the latest sample to one and the past sample to the other. There are three possible input methods.

※caution
However, in the case of self-feedback, if you input the same sample, it may oscillate, so please input the latest sample on one side and the past sample on the other side.
The values of MDXSL and MDYSL are as follows when substituted into equation 4.1 because both the slot to be modulated and the slot to be modulated are 0.


0-0 = 0

Since this satisfies condition 3 of Equation 4.1, the MSB of MDXSL and MDYSL is

At the time of the latest sample MSB = 1 ( 1 00000) B = 20H
In the past sample MSB = 0 ( 0 00000) B = 00H

It will be.

(2) Parameters to be set in slot 2

Figure 4.29 Slot 2 algorithm

Since slot 2 is an input of multiple slots, there is no need to stick to the latest sample and past sample inputs.
The values of "MDXSL" and "MDYSL" with slot 1 as the input (slot 1 side) are as follows when substituted into equation 4.1 because the slot to be modulated is 1 and the slot to be modulated is 2.


1-2 = -1

Since this satisfies condition 2 of Equation 4.1, the MSB of "MDXSL" and "MDYSL" is


32 + (-1) = 31 = 1FH = (011111) B

For the latest sample MSB = 0 ( 0 11111) B = 1FH
For past samples MSB = 1 ( 1 11111) B = 3FH

It will be.

Figure 4.30 Slot 2 algorithm (by input slot)

Next, the values of "MDXSL" and "MDYSL" with slot 0 as the input (slot 0 side) are 0 for the slot to be modulated and 2 for the slot to be modulated. Become.


0-2 = -2

Since this satisfies condition 2 of Equation 4.1, the MSB of "MDXSL" and "MDYSL" is


32 + (-2) = 30 = 1EH = (011111) B

For the latest sample MSB = 0 ( 0 11110) B = 1EH
For past samples MSB = 1 ( 1 11110) B = 3EH

It will be.

※caution
Basically, when entering slots with different numbers, enter samples of the same generation. Conventional FM sound sources use this method, so use this method when porting the tone library of FM sound sources.

(3) Parameters to be set in slot 3

Figure 4.31 Slot 3 algorithm

Since slot 3 has only one input, the output of slot 2 must be input to both modulation inputs X and Y.
Since there is no possibility of oscillation if the connected slots are different, you can input only the latest sample or only the past sample to both the modulation inputs X and Y, or input the latest sample to one and the past sample to the other. does not matter. When porting the tone library of a conventional FM sound source, use only one of the samples.

The values of MDXSL and MDYSL with slot 2 as the input are as follows when substituted into equation 4.1 because the slot to be modulated is 2 and the slot to be modulated is 3.


2-3 = -1

Since this satisfies condition 2 of Equation 4.1, the MSB of "MDXSL" and "MDYSL" is


32 + (-1) = 31 = 1FH> = (011111) B

For the latest sample MSB = 0 ( 0 11111) B = 1FH
For past samples MSB = 1 ( 1 11111) B = 3FH

It will be.


BackForward
HARDWARE ManualSCSP User's Manual
Copyright SEGA ENTERPRISES, LTD., 1997