SSP1 and SSP2: Designated hitter

One notable absence from the Yamaha PSR-S970 design is the “SSP2” integrated circuit (IC) which handles vocal harmony processing. The SSP1 and SSP2 appeared in the Tyros series and PSR series coincident with Vocal Harmony 2.

For you signal sleuths, the PSR-S950 and Tyros 5 microphone input is routed to an analog-to-digital converter (ADC) where the analog signal is sampled and digitized. The digital sample stream is sent to the SSP2 IC. The firmware munges on the samples and voila, the SSP2 produces a vocal harmony signal that is mixed with samples from the tone generator, etc. The SSP2 sends its results to the TG where effects and mixing are performed. The TG sends its output to the digital-to-analog converters (DAC) and digital amplifiers. The Tyros 4 has the same signal flow using an earlier model “SSP1” processor instead.

Previous machines with vocal harmony (e.g., Tyros 3 and earlier, PSR-S910 and earlier), routed the digitized microphone stream to a tone generator (TG) IC such as the SWP51L. Presumably, vocal harmony processing was performed in the TG IC. With the brand new SWP70 tone generator in the S970, the digitized microphone stream is sent to the SWP70. Looks like vocal harmony processing is folded into the SWP70 TG.

I didn’t give the SSP2 much thought or investigation, and just assumed that it was a gate array or something. On inspection, the pin-out resembles a Renesas embedded DSP processor with analog inputs and outputs, digital I/O, USB and all of the usual suspects. The SSP2 in the S950 has 2MBytes of NOR flash program ROM (organized 1Mx16bits) and 2MBytes of SDRAM (organized 1Mx16bits). The clock crystal is a leisurely 12.2884MHz although the SDRAM read clock is 84.7872MHz.

Mysteriously, a web search on the part numbers doesn’t turn up much information. The part numbers are:

    Schematic ID  Manufacturer?       Yamaha
    ------------  ------------------  --------
    SSP1          MB87S1280YHE        X6363A00
    SSP2          UPD800500F1-011-KN  YC706A0

The PSR-S950 parts list does not give a Yamaha order number for the SSP2. If the SSP2 fails, you’ll need to call Yamaha 24×7 directly.

A web search does turn up a few of the interesting places where the SSP has been seen. In addition to Tyros 4, Tyros 5 and S950, the SSP and SSP2 are featured in:

    PSR-S500 arranger (probable role: effects processor)
    EMX5016CF mixer (role: SPX effects and user interface)
    Steinberg UR22 audio interface
    Steinberg MR816 Firewire audio interface
    Yamaha THR modeling guitar amplifier

The SSP is Yamaha’s designated hitter when they need an odd bit of DSP work done.

Groovin’ in eight zones

I heard a great interpretation of Chris Isaak’s “Wicked Game” by Groovy Waters. Their work inspired me to create a down-tempo PSR/Tyros style with break beats that would let me jam over the changes (Bm-A-E-E).

And that led me into a whole new exploration in Motif/MOX and PSR/Tyros styles!

While goofing around with the Yamaha MOX6 workstation, I stumbled into some break beats with “8Z” in the name. I noticed that the “8Z” arpeggios are targeted for voices with “8Z” in their names. So, what is this “8Z” business?

The Motif XS (and MOX) added 8-zone drum kits and arpeggios, hence, the “8Z” in the names. A conventional drum kit has dozens of individual percussion sounds laid out across the MIDI note range (AKA “the keyboard”). An 8-zone kit is an extension of a regular synth voice where each voice element is assigned a percussion sound. The usual upper and lower note limits determine the key range for each sound. Here is the element information for the PRE8:060 “8Z Romps” voice:

                            Name        Note#
                         ----------   ---------
    Waveform             Low   High   Low  High
    ----------------     ----  ----   ---- ----
    BD T9-4               C0    C1     24   36  
    SD Elec7              C#1   F1     37   41  
    China St              F#1   C2     42   48  
    SD Rim SE             C#2   C3     49   60  
    Bd Jungle 2           C#3   F#3    61   66  
    Bd Distortion4        G3    C4     67   72  
    Bd Distortion RM      C#4   C5     73   84  
    Bd D&B2               C#5   C6     85   96  

Each waveform is stretched across a multi-key zone. Thus, each of the notes within a zone have a slightly pitch-shifted tone, allowing for tonal variation in patterns where repeated notes are played in sequence. Since these are basically regular synth voices, you are also free to mess about with the filter, amplitude envelope and all the usual sound design goodies.

The arpeggios designed for the “8Z Romps” voice do just that. (See “MA_8Z Romps” and so forth.) The pitch shift, etc. breaks up the monotony of repeated notes.

The “8 zone” idea makes it easy to cobble new drum kits together from the diaspora of waveforms in the regular drum kits. You probably don’t need more than eight different percussion sounds for a set of basic beats. A quick survey of other “8Z” kits shows this to be true:

    8Z HeavyHearts      8Z Chilly Breakz    8Z Gated Beatz
    --------------      ----------------    --------------
    Bd T9-1             Bd HipHop6          Bd Gate
    Bd Hard Long        Sd HipHop9          Bd HipHop9
    SD Elec12           Sd T8-1             Sd HipHop6
    Sd HipHop6          HH Closed T8-2      Sd Hip Gate
    HH Closed D&B       HH Open T8-2        HH Closed T8-1
    HH Open T9          Electric Perc1      HH Open T8-1
    Clap AnSm           Sleigh Bell         Noise Burst
    Shaker Hip 2        Shaker Hip 1        Shaker Hip 1

These kits have a different key layout than “8Z Romps”. In fact, these 8Z kits have a few zones that resemble the conventional kit layout — the bass drums (Bd) cover the notes where bass drum is usually found, the snare drums (Sd) cover the usual notes for snare drum, etc. Thus, you can play “regular” drum arpeggios through these 8Z voices and they sound just fine. The upper range elements cover a wide range of notes and are the “catch all” for the usual percussion spice such as conga, shakers, guiro, triangle and the like. With the pitch shifting, the “catch all” approach can produce some hip patterns.

There is far more fun to be had. I came across the “8Z” kits and arpeggios while playing the Performance USR2:102(G06) Ibiza Growl Sax. This Performance had the feel that I was looking for, although I wasn’t too pleased with the sax voice. (A problem that is easily fixed.) The Performance assigns “8Z Romps” to the first voice, but, wait! It plays break beats through “8Z Romps” that were not designed for “8Z Romps”, having different zones, etc. Cool. Yamaha sound designers are not only good at following the rules, they are equally adept at breaking the rules, too.

I decided to go ahead with the break beats from Ibiza Growl Sax even though the PSR/Tyros do not have “8Z” drum kits. I had to unwind all of the 8Z-ness and map the percussion voices to standard PSR-S950 drum kits. Unfortunately, the repetitive patterns are a little bit plain even though the musical feel is still good.

Next up, crushing the drums and bouncing them around.

Make music with MMS on a PSR

Yamaha Mobile Music Sequencer includes features for Motif, MOX and Tyros5, but did you know that you can create music using MMS on your PSR arranger? Yes, you can!

I’m using MMS with both the Yamaha PSR-E443 and PSR-S950 and I have written up a tutorial on making music with MMS on PSR/Tyros. This article concentrates on set-up, MIDI voice selection and MIDI file export which are aspects not covered by the MMS manual. The tutorial complements the many on-line videos that demonstrate composition and mix down. In particular, I show how to use the full 128 voice General MIDI voice set in the PSR, thereby expanding your sonic palette beyond the limited range of voices built into MMS.

Enjoy and keep on keepin’ on!

Scat voice expansion pack

I’m pleased to release version 1 of my jazz scat voice expansion pack for Yamaha PSR-S950 and PSR-S750 arranger workstations. The expansion pack has five PSR voices which let you create “Take 6” style, a cappella arrangements and other kinds of jazz voice performances. Give the MP3 demo a try!

Four of the PSR voices are individual syllables: DOO, DOT, BOP and DOW. The DOO syllable is looped and let’s you create sustained chords for backing. The DOT, BOP and DOW syllables are short and provide scat-like expression. All four syllables are combined into a velocity-switched voice where you select and play one of the syllables based on how hard you strike the keys (i.e., MIDI note velocity). You will need to adjust touch response (and practice!) to get the most playable and musical result.

Here is a link to the expansion pack file. You need to download and UNZIP this file, then install the YEP file by following the directions in the Yamaha PSR-S950/PSR-S750 Owner’s Manual. See the section titled “Expanding Voices”.

I am also releasing the multi-samples that I used to create the expansion pack in case you would like to create a scat voice for your own synthesizer or software instrument. If you are curious about how I created the expansion pack voices and the samples, please see this blog post.

Both the scat voice expansion pack and the scat voice samples are released under a Creative Commons Attribution 4.0 International License.

Creative Commons License
ScatVoices and ScatVoice samples by Paul J. Drongowski are licensed under a Creative Commons Attribution 4.0 International License.

You are free to use the expansion pack voice or samples (even for commercial purposes) as long as you provide a link to http://sandsoftwaresound.net from your own web site AND/OR explicitly credit me in your creative work, e.g., “Scat samples/voice by Paul J. Drongowski”.

60sSuperGroup mash-up

In my last post, I started the process of converting the PSR-S950 audio style “60sSuperGroup” to all MIDI. I like the 60sSuperGroup audio style, but the really strong back-beat in MAIN A makes it hard to use that section on anything other than the Beatles song “Ticket To Ride.” In order to make this style more generally useful, I’m replacing the audio rhythm tracks with appropriate MIDI tracks. Last time, I had worked on the MAIN and FILL IN sections and now it’s time to attack the INTROs and ENDINGs.

Here’s my process.

  • Find a style which is similar to 60sSuperGroup. 60sVintageRock is a good alternative because it is your basic Mark II rock and roll.
  • Load 60sVintageRock into Style Creator.
  • For each section, copy the non-rhythm parts from 60sSuperGroup into the new style.
  • Change the section lengths to match the source style 60sSuperGroup.
  • Save the new style as 60sFabFour.
  • Listen to each new section critically.
  • If a section doesn’t work musically, copy a section from a different candidate style.
  • Edit DSP effects to match 60sSuperGroup.
  • Save a bunch of intermediate copies along the way in case you need to back up to an earlier version.

Overall, the MAIN and FILL IN sections from 60sVintageRock were a good match and sounded pretty good. The one measure INTROs were OK, too. The longer INTROs and ENDINGs were more of a problem. So, I identified a few alternative candidate styles and built a table of INTRO/ENDING section lengths to find and try alternatives. Here’s the table:

           Target:
         60sFabFour  60sVintageRock  60sPopRock  VintageGtrPop
         ----------  --------------  ----------  -------------
INTRO 1      1             1              1            2
INTRO 2      2             4              5            4
INTRO 3      5             9              4            9
INTRO 4      1             1              1            1
ENDING 1     3             3              3            2
ENDING 2     4             4              3            3
ENDING 3     5             6              7            5
ENDING 4     1             1              1            1

I tried to use alternatives that were the same section lengths as 60sSuperGroup and the new style 60sFabFour.

ENDING 2 was the most difficult to nail. I tried different alternatives and then needed to shorten the section length to get rid of some beats that ran on — kind of like Ringo didn’t know when to stop. Here are the final source styles for the INTROs and ENDINGs:

           Target:
         60sFabFour  Source style
         ----------  --------------
INTRO 1      1       60sVintageRock
INTRO 2      2       VintageGtrPop
INTRO 3      5       60sPopRock
INTRO 4      1       60sVintageRock
ENDING 1     3       60sVintageRock
ENDING 2     4       60sPopRock
ENDING 3     5       VintageGtrPop
ENDING 4     1       60sVintageRock

A lot of luck and trial and error is involved here. Luckily, the alternatives fit pretty well.

DSP1 is configured as a SYSTEM variation effect for both 60sSuperGroup and 60sVintageRock. However, the parameters are different. The guitars are sent to the SYSTEM effect in order to get a VOX AC30 amp “chime”. The final effect parameters are taken from 60sSuperGroup:

Category: REAL DIST
Effect: ST AMP VT

COMP SW          ON
COMP SUSTAIN     0.4
COMP LEVEL       6.0
DIST TYPE        Crunch
DIST DRIVE       7.8
DIST EQ          Mid Boost
DIST TONE        7.0 
DIST PRESENCE    6.0
DIST OUTPUT      24

This uses a Real Distortion effect and you will need to change this when porting the style to an older model keyboard. I did not change the OTS settings in the new style since I was happy with the OTS settings from 60sVintageRock.

I put a copy of the 60sFabFour style on the Music Gallery page.