Montage wave memory

Folks are speculating about the wave memory in the new Yamaha Montage. Without the actual service manual in hand, it’s impossible to be definitive. However, I think it’s reasonable to assume that:

  1. The Montage uses the new SWP70 tone generator, and
  2. The wave memory interface is the same as the PSR-S970.

Here’s a few details about the SWP70 and wave memory interface in the PSR-S970 arranger workstation. If you buy into the two assumptions above, then these details should apply to the Montage as well.

I realize that my earlier posts dive deep and cover many aspects of the SWP70. This blog post concentrates on a few specific aspects of the wave memory interface in the PSR-S970 instead of the whole she-bang.

The SWP70 has two 8-bit memory data ports — HIGH and LOW — and a common set of wave memory control signals. The interfacing standard is the Open NAND FLASH interface (ONFI). One flash memory device plugs into the HIGH port and a second flash memory device plugs into the LOW port. The two flash memory devices share the control signals, that is, the same control signals are routed to both memory devices.

SWP70_wave_memory

The PSR-S970 memory devices are Spansion S34ML08G1 8Gbit NAND flash memory devices. The S34ML08G1 is a dual-die stack of two S34ML04G1 die. Spansion currently produces the S34ML16G2, which is a quad-die stack of four S34ML04G1 die.

Thanks to ONFI, the 16Gbit (2 GByte) S34ML08G1 is pin compatible with the smaller S34ML08G1. Thus, a tone generator complex with twice the wave memory capacity can be built in the same printed circuit board (PCB) footprint.

The ONFI bus is not the same as the old flash expansion memory DIMM interface as provided in the later Tyros and Motif/MOXF products. The DIMM expansion memory interface consists of two, full-parallel memory channels with separate address and data signals for each channel. An ONFI memory device, on the other hand, has a single bi-driectional (tri-state) data port. The memory address, data and control information are sent to the memory device in byte-serial fashion. (The bus is time-division multiplexed.)

The tri-state electrical interface supports expansion by plugging multiple memory devices onto the same 8-bit multiplexed bus. The control signals and protocol choose the device that drives (or reads) the tri-state bus at a given time.

Yamaha may not have found a convenient way to make the ONFI bus user-extensible. Or, Yamaha have simply decided to not provide end-user wave memory expansion in the field. Yamaha accrue several benefits by dropping the DIMM expansion slots:

  • The cost of the DIMM connector(s) is eliminated including the cost of mounting and testing the connectors.
  • PCB size is greatly reduced.
  • The access cover and chassis hole are eliminated.
  • The cost of stocking another part/SKU is eliminated.

The disadvantage to the end-user is “All the sample space you get is built-in right from the start and no more.”

Yamaha’s new approach to user waveform memory is to reserve space for user samples in the physical wave memory. In other words, the user expansion memory is contained in the same physical package (48-Pin TSOP 12mm x 20mm x 1.2 mm) as the factory waveforms. The Montage specifications describe wave memory as:

Preset: 5.67 GB (when converted to 16 bit linear format), User: 1.75 GB

The compressed factory waveforms occupy 2.835 GBytes of physical memory (assuming a 2-to-1 compression factor). Compressed user waveforms require 0.875 GBytes of physical memory. These figures point toward a 4 GByte physical wave memory size, which would reserve some space for Yamaha’s own future use. BTW, if the actual effective compression factor is higher, then user samples could be stored uncompressed.

For reference, here is a terse summary of the Spansion S34ML08G1 device that is used in the PSR-S970:

    Spansion S34ML08G101TFI000
    Density: 8Gbits (4Gbits x 2)
    Random access: 30us (max)
    Sequential access: 25ns (Min)
    Block erase time: 3.5ms
    Program time: 300 us (typical)
    Data retention: 10 years (typical)
    100,000 program/erase cycles (typical)
    Pricing: $7.84 USD (quantity 250 up)

The data retention time (10 years) should raise a few eyebrows. NAND flash is volatile and charge (data) is eventually lost unless it is refreshed. I wonder how many manufacturers have planned for the day when keyboards, phones or whatever lose presumably “permanent” data stored in flash? Mask-programmable ROM never had this problem… I don’t think Hank done it this way.

Update: Read more about NAND flash data retention.

All site content Copyright © Paul J. Drongowski unless otherwise indicated

(Re)take the stage

A good show starts in the dressing room
And work its way to the stage
— “Get Dressed” by George Clinton

With Winter NAMM 2016 just a few weeks away, I started thinking about how Yamaha might position a new synthesizer workstation (rumored to have the name “Montage”).

Motif has had a long run as a stage instrument favored by many professional touring musicians. It makes a good master controller for a backstage rig and has a wealth of great native sounds. The synth- and piano-key actions are extremely playable with good key-to-sound response.

Over the last few years, Nord and more recently Korg have been taking the stage away from Yamaha. The Nord Stage and Electro series are firmly established as gig boards and the Korg Kronos is coming on strong. Korg products seem to be sprouting everywhere on The Late Night with Stephen Colbert thanks to John Batiste — who can really rock ’em.

I doubt if Yamaha is willing to surrender the stage. This news may disappoint those players who are hoping for a mind-blowing (virtual) analog synthesizer. As a business-person, I would say, “Hmm, we made good money on the stage and in the studio with Motif. Let’s build on that success. Besides, there are plenty of ’boutique’ vendors who make great instruments, like Dave Smith.” Yamaha even granted the name “Sequential” back to Dave Smith.

Yamaha may see the Nord Stage and Korg Kronos as their primary competition for the stage in the synth workstation space. Both instruments combine multiple synthesis techniques into a single integrated package:

  • Wavetable synthesis including sample playback
  • Analog synthesis
  • Frequency Modulation (FM) synthesis
  • Acoustic and electric piano emulation
  • B3 and combo organ emulation

So, which pieces are missing in the current Motif XF? Are you thinking “Reface” yet?

Let’s look at these aspects in turn.

Wavetable synthesis and sample playback

More than a few Internet posters slag AWM (Advanced Wave Memory). I suspect that many of these people would like real analog or modeled analog instead. That’s OK by me because they probably need those sounds for their music. However, there is a wide customer base who need “traditional” instruments (brass, strings, woodwinds, etc.) where sample-playback still rules. AWM is a very successful sample-playback engine and I don’t see Yamaha abandoning AWM.

Yamaha have a new tone generation engine, the SWP70 . The SWP70 is already at work in the PSR-S970 and PSR-S770 arranger workstations . The SWP70 is more than a sample-playback engine as it also performs programmable digital signal processing for effects and more. The S970 implements Motif-quality sounds and effects including Virtual Circuit Modeling (VCM) and the Real Distortion effects that were added to Motif XF in the v1.5 update.

Other posters feel that an SSD is essential for sample streaming. SSD is only one approach, however, and that approach requires a SATA interface for sample I/O. SSD is not necessarily the cheapest design nor does it minimize latency. Yamaha deconstructed the SSD functionality, threw away the SATA interface cost and latency, implemented an Open NAND Flash Interface (ONFI), and embedded sample data caching into the SWP70. The SWP70 has all of the extensibility of NAND flash without the cost of the SATA controller and without SATA bus latency.

As demonstrated by the S970 and S770, the SWP70 is ready to roll for sample-playback and effects processing.

Analog synthesis and FM synthesis

I contend that the Reface products are a field test for SWP70-based synthesis methods that are not tested by the S970 and S770. I have not yet seen absolute evidence that Reface keyboards use the SWP70, but my suspicion is strong.

The Reface CS and Reface DX demonstrate analog physical modeling and 4-operator FM sound synthesis, probably using the SWP70. Please remember that the SWP70 is not just sample-playback; there are digital signal processors in there. These DSP units can be programmed for effects (reverb, etc.) or sound generation. A computer is a computer whether it is an x86 architecture machine or an embedded DSP. Both the Reface CS and Reface DX implement VCM effects, too.

Two more general points about the Reface line. First, the Reface keyboards use an ARM architecture (FM3) processor for control and user interface. This is a major departure from past Yamaha practice. Next, all four keyboards operate on battery power (six “AA” batteries). Low power operation is a significant engineering accomplishment and means that the SWP70 could be deployed in a wide range of portable products — not true of the previous generation SWP51L tone generator.

Acoustic and electric piano emulation

Yamaha demonstrated its commitment to the stage when it introduced the CP1 stage piano and its siblings. The CP1 was well-received.

The CP1 is a bit of a breakthrough product technically. The acoustic piano is implemented mainly through sample-playback. The CP1 physical wave memory is only 128 MBytes. Yamaha eventually released the CP1 acoustic piano samples for Motif XF as part of the Motif XF Premium Collection. We should expect a CP1-level piano or better in the new workstation.

Yamaha “got away” with so few samples overall because the CP1 electric pianos are implemented using Spectral Component Modeling (SCM). “SCM” covers a family of technologies including spectral modeling synthesis (SMS). SMS replaces gobs of samples with computation (AKA “modeling”). SMS eliminates the nasty sonic artifacts due to velocity switched sample-playback because, well, there aren’t any samples, just lots of computations to be performed very quickly.

The Reface CP uses SCM to implement its electric pianos. The Reface CP sounds great. (See my Reface CP snap review.) The Reface CP re-introduces Formulated Digital Sound Processing (FDSP) to model the electric piano pickup. I expect to see SCM electric pianos and a subset of FDSP in the new workstation.

B3 and combo organ emulation

B3 emulation has never been Motif’s strong suit. Nord, in particular, excel at B3 and rotary speaker emulation. Hopefully, Yamaha have addressed this defficiency by incorporating the Reface YC technology into their new workstation.

The Reface YC provides a live front panel that lets a player control the B3 drawbars, percussion, vibrato and rotary speaker on the fly. The ability to play the bars, etc. is essential to B3 technique. A few important improvements include a rotary speaker brake (STOP) position as well as SLOW and FAST, a vibrato/chorus section, and a full percussion section. Hopefully, the vibrato/chorus section emulates the Hammond vibrato/chorus scanner — an effect that is lacking in the Motif (and Tyros/PSR, for that matter).

The Reface YC implements B3 tonewheels through AWM. Is sample-playback better than Nord’s modeling? Of course, a lot rides on rotary speaker simulation, too. I can’t wait to find out. So far, I haven’t been able to find a Reface YC to try one out! If Yamaha wants to take the stage, again, it needs to nail this one.

The bottom line

Yamaha surely have the basic technology to make a machine for stage performers. Hopefully, they have implemented a user interface that is easy to learn, responsive and fun to play — kind of like the live front panels in the Reface series.

The Tyros and the new S770/S970 arrangers sport large displays. The S770 and S970 wide-screens are really nice. Lately, Yamaha have placed greater emphasis on skeuomorphic user interfaces with virtual knobs, sliders, etc. Whether Yamaha goes for a touch panel, only Yamaha knows at this point. It would be kind of cool to have virtual Reface front panels with finger-tweaking controls. But, would it be playable?

Sixteen days to go to Winter NAMM 2016 …

If you liked this article, you might enjoy:

New Yamaha workstation at NAMM 2016?
Reface YC and DX teardowns
The SWP70 tone generator
PSR-S770 and S970 internal architecture
Reface CP: Yes, I played one!

Copyright (c) 2016 Paul J. Drongowski

New Yamaha workstation at NAMM 2016?

True gearheads are already making predictions and plans for 2016 Winter NAMM, January 21-24, 2016. Winter NAMM rumors abound including “Montage,” the rumored name for the rumored new Yamaha synthesizer workstation.

See the list of new waveforms in the Montage and read my initial review of the Montage8. Update: May 10, 2016.

Find the latest links, pictures, rumors and facts here . Update: January 21, 2016.

Check out some new thoughts about the rumored workstation and preliminary comments . Update: January 18, 2016.

Many folks — myself included — anticipate the release of a new Yamaha synthesizer workstation at the next NAMM. Much has been made of the registered trademark “Montage.” I don’t really care too much about what they call it, as I care about what it will do.

Last month, I posted two articles about the new Yamaha tone generation chip called “SWP70”:

This chip made its first appearance in the new PSR-S770 and PSR-S970 arranger workstations. Lest anyone scoff, the S770 and S970 produce Motif-caliber sounds including the REAL DISTORTION effects added to the Motif XF by the v1.5 update. The previous tone generator (SWP51L) is used throughout the mid- and upper-range Yamaha keyboard products including Clavinova, MOX/MOXF, Motif XS/XF, and Tyros 4/5. The number of tone generator chips varies by product specification and, most notably, sets the maximum available polyphony. A new tone generator chip is a pretty big deal since it will have an impact on all mid- and high-grade electronic instruments across product lines.

My earlier article about the SWP70 is written from the perspective of a computer architect and is way too nerdy for normal people. 🙂 Let me break it down.

Musicians using VST plug-ins within a PC-based DAW are familiar with the concept of sample streaming. In the quest for greater realism and articulation, sample libraries have become huge. These libraries simply cannot fit into fast random access memory (RAM) for playback. As a work-around, a software instrument reads samples from a drive-based library on demand and only a small part of the entire library is resident in RAM at any given time. The process is often called “sample streaming” because the software instrument streams in the samples on demand from a large fast secondary memory like a Solid-State Drive (SSD). The Korg Kronos workstation caught everyone’s attention because it incorporates an x86-based software system that streams samples from an SSD. (For Kronos-related articles, look here and here.)

The SWP70 combines streaming with tone generation. It does not, however, use an SSD for storage. Rather, it subsumes the functionality of the SSD. A moment to explain…

An SSD consists of three major subsystems: SATA controller, temporary storage cache (RAM) and one or more NAND flash memory chips. The NAND flash memory chips typically adhere to the Open NAND Flash Interface (ONFI) standard. This allows expansion and standardized configurability. The SATA controller exchanges commands and data with a computer using the SATA bus protocol. The temporary storage cache holds data which is pre-read (cached) from the NAND flash chips. Caching is required because random access read to NAND flash is too slow; sequential paged access is much faster. Data must be prefetched in order to achieve anything like SATA 1 (2 or 3) transfer speed.

The SWP70 subsumes the SSD functionality. It has its own memory controller and has a side memory port to its own RAM for caching samples. The SWP70 reads samples from its ONFI-compatible NAND flash memory bus and stores the samples in its cache. The tone generation circuitry reads the samples from the cache when it needs them. The SWP70 solution is, effectively, sample streaming without the added cost and latency of SATA bus transfers. The samples coming into the SWP70 from flash are compressed, by the way, and the SWP70 decompresses them.

The SWP70 will very likely make an appearance in the new Yamaha synthesizer workstation. The S770 and S970 do not make full use of the SWP70, so we have yet to see what this chip is fully capable of. We can definitely expect:

  • Much larger wave memory (4GBytes minimum)
  • Greater polyphony (256 voices or more)
  • More simultaneous DSP effects (32 units or more)
  • The demise of the expensive expansion flash DIMMs

I would simply love it if the new workstation implemented some form of Super Articulation 2 voices (now supported by Tyros 5). The raw resources are there.

User-installed expansion memory may be a thing of the past. The current DIMMs plug into a two channel, full parallel memory interface. That interface is gone and the SWP70 communicates with flash NAND through an ONFI-compatible interface. The Motif and Tyros follow-ons will likely reserve space for user samples and expansion packs in built-in flash memory just like the new mid-range PSRs.

What does Yamaha intend to do with all of this polyphony? Current high-end models like the Tyros 5 use two tone generation chips. Yamaha could replace both chips with a single SWP70 and pocket the savings.

Another possibility is to provide advanced features for musical composition that combine MIDI and audio phrases. Here is a list of technologies covered by recent Yamaha patents and patent applications:

  • Beat detection and tracking
  • Chord detection
  • Synchronized playback of MIDI and audio
  • Combined audio/MIDI accompaniment (time-stretch and pitch-shift)
  • Object-oriented phrase-based composition on a time-line
  • Accompaniment generation from chord chart
  • Display musical score synchronized with audio accompaniment
  • Phrase analysis and selection (via similarity index)
  • Near ultra-sonic communication of control information
  • Search for rhythm pattern similar to reference pattern

A few of these technologies are covered by more than one patent — recurring themes, if you will. I could imagine a screen-based composition system that combines audio and MIDI phrases which are automatically selected from a database. The phrases are transparently time-stretched and pitch-shifted. Some of the compositional aids may be implemented in the workstation while others are tablet-based. The tablet communicates with the workstation over near ultra-sonic sound (no wires, no Bluetooth, no wi-fi, no time lag).

Sample-based tone generators already perform pitch-shifting. That’s how a single sample is stretched across multiple keys. A musical phrase can be pitch-shifted in the same way. As to time-stretching, stay tuned.

Some of these features, like accompaniment generation from a textual chord chart, are more likely to appear in a future arranger workstation product. Making product-specific predictions is a risky business, especially if you want to get it right!

Yamaha — the business — is keenly interested in growth and expanding markets. Management sees opportunity in growth markets like China. The need to combine audio phrases with MIDI is driven by non-Western music: time signatures other than 3/4 or 4/4, different scales, different playing techniques and articulations. These concerns are perhaps more relevant to the arranger product lines. However, phrase-based composition that manipulates and warps audio and MIDI transparently is a basic feature of many DAWs. (Think “Ableton Live.”)

One final theme seems to recur. Yamaha appear to be interested in analyzing and accompanying non-keyboard instruments. The market for guitar-driven accompaniment is much wider and deeper than today’s arranger workstations and is a lucrative target.

Here are links to a few earlier articles, including speculation about the new Yamaha synthesizer workstation:

These articles link to further background information. Of course, we’ll know a lot more once Winter NAMM 2016 is underway!

All site content Copyright © Paul J. Drongowski unless otherwise indicated.

Copy PSR DSP effects (part 4)

This is part 4 of a series of articles about DSP effects for electric pianos and other electrified instruments like guitar. The first three articles are:

This article covers two more techniques that should help you create and apply DSP effects to PSR/Tyros voices.

Beg, borrow and steal

As Picasso once said, “When there’s anything to steal, I steal.” I’m not encouraging larcency or piracy, but when there’s a good effect in an OTS or voice, copy and paste is the way to go.

I like writing these blog posts because they encourage me to learn more about PSR/Tyros features that I might have ignored or overlooked. Such is the case with the section titled “Disabling Automatic Selection of Voice Sets” in the Reference Manual. This features gives us a way to selectively copy certain aspects of a voice to another (new) voice.

This feature is like a “mini-freeze” that applies solely to VOICE SET, not entire registrations. Navigate to:

    FUNCTION > [E] REGIST SEQUENCE/FREEZE/VOICE SET

then TAB over to the VOICE SET page. There are four buttons at the bottom of the page controlling, respectively, four aspects of voice loading when a voice is selected:

    VOICE
    EFFECT
    EQ
    HARMONY/ECHO

When a button is ON, the corresponding voice parameter settings are loaded automatically from the selected voice. When a button is OFF, the corresponding voice parameters settings are not loaded.

So, if we set the button for EFFECT to OFF, we essentially “freeze” the current effect settings. When we load a new voice, the effects remain the same. This gives us a poor man’s copy and paste between voices.

Let’s say that we like the distortion effect on the “Clavi” voice and want to apply it to “VintageEP”. First, I load the Clavi voice to call up the DSP effect. Then, I navigate to the VOICE SET page (as described above) and turn the EFFECT button OFF. This freezes the effect part of the voice programming. Then, I select the VintageEP voice. Voila, the VintageEP voice plays using the distortion effect that was frozen.

Stop! Wait a minute!

Once you save the VintageEP voice to the USB drive or an OTS button, be sure to unfreeze the EFFECT aspect of voice loading. If you don’t do this, you will surely wonder why all of the voices you load are distorted!

Hey, where’s the loot?

The built-in voices are the most obvious source of inspiration for new basic voice plus effect combinations. Yamaha need to maintain backward compatible voices, however, and the older voices such as the electric pianos may not use the latest and greatest effects (e.g., REAL DISTORTION). The guitar voices tend to turn over more quickly and adopt the latest effects.

Backward compatibility is less of an issue for the OTS voices within styles. You are more likely to find new and interesting effects under the OTS buttons. Take the built-in “WahClavi” voice, for example. The built-in voice uses the old CLAVI TC.WAH effect. The “WahClavi” voice in the JazzFunk style, on the other hand, uses the new REAL DISTORTION multi-effect MLT CR WAH (Multi FX Crunch Wah).

The following table is a list of OTS voices showing the parent style and DSP effect. Follow this map to find buried treasure!

Voice            Style          S950 effect   Tyros 5 effect
---------------  -------------  ------------  -------------------------------
GrungeGuitar     JazzFunk       AMP1 HEAVY    British Combo Heavy
OverdriveWah     JazzFunk       MLT CR WAH    Multi FX Crunch Wah
VintageAmp       Soul           V_DIST SOLID  V_Dist Solid
Slapback         MotorCity      V_DIST ROCA   V_Dist Roca
SingleCoilClean  Live8Beat      CMP+OD+TDLY4  Compressor+Overdrive+TempoDelay4
JazzClean        KoolShuffle    V_DST JZ CLN  V_DistJz Cln
StageLead        HardRock       MLT DS SOLO   Multi FX Distortion Solo
EarlyLead        FunkPopRock    TEMPO AT.WAH  Tempo At.Wah+
MetalMaster      ContempRock    ST AMP DS     Small Stereo Distortion
ElectroAcoustic  AcousticRock   AMP1 CLASSIC  British Combo Classic
BluesyNight      70sGlamPiano   ST AMP VT     Small Stereo Vintage Amp
PureVintage      60sRock&Roll   MLT OLD DLY   Multi FX Oldies Delay

VintageEP        SoulBrothers   AMP1 CLASSIC  British Combo Classic
WahClavi         JazzFunk       MLT CR WAH    Multi FX Crunch Wah
SuitcaseEP       Live8Beat      CELESTE2      Celeste 2
ElectricPiano    FunkyGospel    EP AUTOPAN    EP Autopan
CP80             FunkPopRock    T_PHASER1     T Phaser 1
JazzVibes        DetroitPop2    VIBE VIBRATE  Vibe Vibrato
VintageEP        60sPopRock     EP TREMOLO    EP Tremolo

HoldItFast       LiveSoulBand   DIST SOFT2    Distortion Soft 2
WhiterBars       Soul           V_DIST CLS S  V_Dist Cls S
WhiterBarsFast   GospelSwing    ST AMP CLEAN  St Amp Clean
CurvedBars       MotorCity      ST 3BAND EQ   St 3Band EQ
EvenBars         FunkyGospel    ST 3BAND EQ   St 3Band EQ
AllBarsPhase     FunkPopRock    PHASER2       Phaser 2
ClassicBars      BluesRock      ST AMP CLEAN  St Amp Clean
Organ-a-Gogo     70sDisco2      V_DIST TWIN   V_Dist Twin
R&B Tremolo      60sVintageRock DIST HARD2    Distortion Hard 2
OrganFlutes      60sPopRock     AMP2 CLEAN    British Legend Clean
OrganFlutes      6-8SlowRock    ROTARY SP1    Dual Rot BRT

GrowlSax         SoulBrothers   V_DST S+DLY   V Distortion Soft + Delay
GrowlSax         MotorCity      V_DST H+DLY   V Distortion Hard + Delay
RockSax          LiveSoulBand   DST+DELAY1    Distortion + Delay 1
RockSax          HardRock       ST AMP CLEAN  St Amp Clean
Harmonica        6-8Soul        TEMPO AT.WAH  Tempo At.Wah+

Use the poor man’s copy and paste method to mix and match a basic voice sound with a DSP effect. The treasure map demonstrates how the Yamaha style programmers make use of the workstation’s sonic resources. There’s a lot to learn here!

Dry/Wet mix

I like to change voices by hitting the OTS buttons while jamming along with a tune. I have created more than 50 styles with customized OTS buttons to cover my current repetoire. The OTS buttons select the voice and effect combinations that are the most approprtiate for specific tunes (appropriate to my ears anyway).

Unfortunately, the kind of OTS voice and effect informaton that can be stored is limited by the S950’s operating system. (See the Voice Effect, Voice Set, and Mixing Console sections of the Parameter Chart in the Data List manual for the exact details.) An OTS button remembers:

  • DSP effect type (insertion type)
  • DSP ON/OFF
  • DSP variation ON/OFF
  • DSP variation value
  • DSP depth

for the RIGHT1, RIGHT2 and LEFT parts.

If you cast your mind back to Part 1, you know that there are a lot of parameters behind each effect. These parameters cannot be directly captured in an OTS button, which is why they must be stored in a USER EFFECT memory location as described in Part 2. You do get a fly-speck of tweakability by modifying the DSP variation value. Unfortunately, the parameter type is fixed.

The OTS restrictions are relieved or eliminated in the PSR-S970. Again, please see the Parameter Chart in the Data List manual.

Fortunately, OTS remembers DSP depth. The DSP depth controls the “dry/wet” mix, that is, the amount of uneffected (dry) and effected (wet) signal that is mixed together and sent further along (usually to the system-level chorus and/or reverb blocks).

Let’s say that you added a heavy distortion sound to the “SuitcaseEP” voice and you want to reduce the amount of distortion without changing the tone. (Guitar distortion is often waaaay too much for electric piano.) Simply dial down the DSP depth. This increases the amount of dry (clean) electric piano sound and decreases the amount of wet (distorted) electric piano sound. Voila, an electric piano with a bit of grit, not a fuzzed out shredder’s delight.

Here are the parameters for the DISTORTION presets DIST SOFT1 and DIST SOFT2.

                       DIST SOFT1  DIST SOFT2
                       ----------  ----------
    Drive                 16           7
    Amp Type             Tube        Combo
    LPF Cutoff          4.5 KHz     3.6 KHz
    Output Level          64          82
    Dry/Wet              D44>W      D<W63
    Edge (Clip Curve)     49          40

The built-in preset “Clavi” voice uses DIST SOFT1 to get its biting tone. Note that the DIST SOFT1 dry/wet mix has more dry signal than wet and that the DIST SOFT2 dry/wet mix has more wet signal than dry.

Here’s where things are cool, confusing, or both. The S950 seems to know when a DSP effect has a predefined dry/wet mix parameter. The parameter value tracks the DSP depth knob in the Mixing Console. Cool. The DSP depth knob is calibrated from 0 to 127 while the dry/wet parameter is calibrated from full dry (D63>W) to full wet (D<W63). Confusing. Internally, a 50-50 dry/wet mix (D=W) is represented by the value 64. The dry/wet mix is 50-50 (D=W) when the mixing console DSP depth knob is set to 64; the knob determines the internal value. (Pan gets munged in a similar way.)

As an exercise, I suggest applying the distortion effect in the built-in “Clavi” voice to “SuitcaseEP.” Then, use the DSP depth (dry/wet mix) to dial back (or dial up!) the distortion to taste.

A loose end

Some of you probably noticed that I didn’t say much about the “Wah Pedal” parameter belonging to the REAL DISTORTION multi-effect algorithm. This parameter can be swept by an XG “assignable controller.”

I didn’t say much about the “Wah Pedal” parameter because I was hoping to find a way to control this parameter from either the expression pedal input or an external MIDI controller. It may be possible to set up external control if a controller can utter the right SysEx mumbo-jumbo to set up an XG assignable controller. The process looks beastly and not very practical.

However, the S970 and Tyros 5 are capable of sweeping the wah pedal parameter. Please see the reference manual concerning “Footswitch / Foot Controller Settings”.

Multi-effects for electric piano (Part 3)

This is part 3 of a multi-part series about PSR/Tyros effects for electric piano.

PSR effects for electric piano (Part 1) presents a basic approach to grunging up an electric piano sound with distortion (amp simulation). Editing and saving PSR effects (Part 2) describes how to save a custom PSR/Tyros effect to USER EFFECT memory. In this part, I’ll cover the REAL DISTORTION multi FX algorithm.

If you’re a real gear-head, you probably heard about the new Yamaha Reface mini keyboards including the Reface CP, which is rich in electric pianos. (See my snap-review of the Reface CP.) Aside from good samples, it’s the effects that make the Reface CP a winner. The Reface CP has an effects chain driven by the basic EP voice:

              Tremolo       Chorus       Digital Delay
   Drive -->     X     -->     X    -->         X       -->  Reverb
                Wah         Phaser        Analog Delay

Switches select between Tremolo and Wah (or pass-through), between Chorus and Phaser (or pass-through), and between Digital Delay and Analog Delay (or pass-through). Thus, either Tremolo or Wah is active, but not both at the same time, etc. Each effect has one or two knobs that control the most basic parameters:

  • Drive: Amount of distortion (including none)
  • Tremolo/Wah: Depth and Rate
  • Chorus/Phaser: Depth and Speed
  • Digital Delay/Analog Delay: Depth and Time
  • Reverb: Depth (including none at all)

The front panel controls let you tailor your sound, e.g., maybe a little distortion (Drive) followed by Tremolo and some Reverb.

This article shows you how to make a similar effects chain on your PSR/Tyros. I assume that reverb is applied by the PSR/Tyros REVERB effect block, so I won’t discuss reverb here.

If you have a late-model Yamaha arranger workstation (PSR-S950 or later, Tyros 5 or later), Yamaha have already done much of the work for you. These workstations are equipped with REAL DISTORTION effects. One of the REAL DISTORTION effect types is a multi-effect. On the PSR-S950, look for the effect presets called “MLT DS SOLO,” etc. The “MLT” stands for “MULTI.”

A little product family history. The REAL DISTORTION effects first appeared in the Version 1.5 Motif XF upgrade. Yep, these are among the latest effects in the Motif series. Yamaha implemented all of these effects in the Tyros 5 and about half of these effects in the S950. Yamaha added the rest of the REAL DISTORTION effects to the S970. Fortunately, S950 owners have the versatile “Multi FX” algorithm (effect type).

If you don’t have REAL DISTORTION effects, you’re not totally out of luck. Look in the Data List manual and find combination effects (distortion plus delay, etc.) and use them instead. You won’t have as many effect stages, but the approach still applies.

The REAL DISTORTION MLT effect chain is quite complete:

                                                  Vibe       Chorus
Compressor --> Wah --> Distortion --> Speaker --> Phaser --> Flanger
                                                  Tremolo    Delay
                                                             Echo

The effect chain is really intended for guitar, but hey, people in the sixties and seventies put electric pianos through stomp boxes and guitar amps.

There are six REAL DISTORTION multi-effect presets: MLT DS SOLO, MLT DS BASIC, MLT OD CHO, MLT CR WAH, MLT OLD DLY, and VINTAGE ECHO. Use these as starting points for your experiments. I suggest starting with VINTAGE ECHO as it is the cleanest of the lot. Do what guitarists do — dive in and tweak.

Here is a list of the parameters and the allowed values. See the full information in the REAL DIST section of the Data List manual.

#   Parameter      Display
--  -------------  ---------------------------------------------
1   Comp. Sustain  Off, 0.1 - 10.0
2   Wah Sw         Off, Wah Pedal, Auto+Full, Auto+Mid,
                   Auto+Light, Auto-Full, Auto-Mid, Auto-Light
3   Wah Pedal      0-127
4   Dist Sw        Off, Overdrive, Distortion1, Distortion2,
                   Clean, Crunch, Higain, Modern
5   Dist Drive     0.0-10.0
6   Dist EQ        High Boost, Mid Boost, Mid Cut 1, Mid Cut 2,
                   Mid Cut 3, Low Cut 1, Low Cut 2, High Cut,
                   High/Low
7   Dist Tone      0.0-10.0
8   Dist Presence  0.0-10.0
9   Output         0-127
10
11  SP Type        Off, Stack, Twin, Tweed, Oldies, Modern, Mean,
                   Soft, Small, Dip1, Dip2, Metal, Light
12  LFO Speed      0.1Hz . 9.925Hz (table#27)
13  Phaser Sw      Off, Standard, Wide, Vibe, Tremolo
14  Delay Sw       Off, Delay M, Echo1 M, Echo2 M, Chorus M,
                   Dl Chorus M, Flanger1 M, Flanger2 M,
                   Flanger3 M, Delay St, Echo1 St, Echo2 St, 
                   Chorus St, Dl Chorus St, Flanger1 St, 
                   Flanger2 St, Flanger3 St
15  Delay Ctrl     0-127
16  Delay Time     0-127

The parameters look overwhelming, so let’s break things down.

There are six “switches” that turn effects on and off. In a few case, the switches also select the flavor of the effect when it is turned on. For example, “Dist Sw” turns off the effect in the chain or turns on one of the seven available distortion types (Overdrive, Distortion1, etc.) In addition to switches, there are effect-specific knobs. “Dist Drive,” “Dist EQ”, “Dist Tone” and “Dist Presence,” for example, change the sonic characteristics of the distortion effect.

The “Delay Sw” acts like one of the switches on the Reface CP. “Delay Sw” disables the effect stage, or it turns on a delay, echo, chorus or flanger effect. Some effects are mono (M) and some effects are stereo (St). The “Phaser Sw” switch disables the stage (off) or it turns on a phaser (type: standard, wide, vibe) or tremolo effect.

The Low Frequency Oscillator (LFO) Speed parameter controls the effects that need modulation: phaser, chorus, flanger, tremolo, etc. You need to dial in the appropriate LFO frequency for the modulation effect type.

Wow, that’s a lot of choices! Here is a table of the parameter values for each preset.

    MSB/LSB --->  95/32     95/33     95/34     95/35     95/36     95/37
#  Parameter     DS SOLO   DS BASIC   OD CHO    CR WAH   OLD DLY   VINT ECHO
-- ------------- --------  --------  --------  --------  --------  ---------
1  Comp. Sustain   3.6       3.2       3.6       3.6       4.0       3.6
2  Wah Sw          Off       Off       Off     Auto+Mid    Off       Off
3  Wah Pedal        0         0         0         0         0         0
4  Dist Sw       Distort1  Distort1 Overdrive   Crunch    Clean     Clean
5  Dist Drive      5.0       4.1       3.8       5.0       5.0       6.6
6  Dist EQ       Hi Boost  MidBoost  MidCut2   LowCut1   Hi Boost  MidBoost
7  Dist Tone       2.4       5.6       5.6       4.2       3.0       4.6
8  Dist Presence   4.8       5.6       5.0       5.2       5.6       5.0
9  Output           55        60       102        95       121       113
10
11 SP Type        Twin      Stack     Tweed     Stack     Oldies    Twin
12 LFO Speed      0.1Hz     0.1Hz     0.1Hz    1.167Hz    0.1Hz    0.142Hz
13 Phaser Sw       Off       Off       Off       Off       Off      Off
14 Delay Sw      Echo1 St  Delay St  ChorusSt  Delay M   Delay M   Echo1 M
15 Delay Ctrl       40        26        20        13        24       20
16 Delay Time       48         2        46        36        20        6

These parameter values should give you some starting points for exploration.

If you’re not a guitarist, terms like “presence” may not be meaningful to you. Here are a few helpful definitions taken from Yamaha documentation.

  • Drive: Determines the extent to which the sound is distorted.
  • LFO Speed: Frequency of delay modulation (chorus, flanger), Modulation frequency (tremolo), Frequency of phase modulation (phaser), Frequency at which wah filter is controlled (wah)
  • Delay Time: Determines the delay of the sound in absolute time.
  • Output: Determines the level of the signal output from the effect block.
  • Presence: This parameter of the Guitar Amp effect controls high frequencies.
  • SP Type: Selects the type of speaker simulation.

Why start with VINTAGE ECHO? This preset adds a modest amount of compression and sends the signal through the Clean guitar amp model. The Clean model does not dirty up the sound too much. Rock guitarists — especially guys with mullets — like a lot of distortion. Electric piano, not so much. The Mid Boost adds guts to the midrange frequencies making an EP sound fuller, with guts. Finally, the distorted signal is sent into a Twin speaker model and then a light echo. The Twin model sounds like it would be Fender Twin-ish and similar to the kind of speaker used with a Rhodes EP.

I’ll close with an example USER EFFECT that I called “DirtyChorus.” The chain starts out with compression and a little bit of overdrive and mid-range boost. The distorted signal goes into a nice stereo chorus. I copped the chorus paremeters from the MLT OD CHO preset. I tried different speaker models and liked the sound of the Mean speaker type. Finally, I dialed up the output level to compensate for the low amount of overdrive.

    Comp Sus       5.0
    Wah Sw         Off
    Wah Pedal      0
    Dist Sw        Overdrive
    Dist Drive     1.4
    Dist EQ        Mid Boost
    Dist Tone      3.2
    Dist Presence  1.3
    Output         120
    SP Type        Mean
    LFO Speed      0.1Hz
    Phaser Sw      Off
    Delay Sw       Chorus St
    Delay Control  20
    Delay Time     46

Dist Drive can be increased before the distortion sounds guitar-ish. Generally, the output level must be lowered when more drive is applied. Clipping-induced distortion is not pretty. Of course, if you like that sort of thing, please carry on.

PSR effects for electric piano (Part 1)
Editing and saving PSR effects (Part 2)
Multi-effects for electric piano (Part 3)
Copy PSR DSP effects (part 4)

All site content is Copyright © Paul J. Drongowski unless otherwise indicated.

Editing and saving PSR effects (Part 2)

In my previous post, PSR effects for electric piano (Part 1), I give some tips and ideas for improving PSR electric piano sounds through customized DSP effects.

Before going any further, you need to know how to edit and save a DSP effect. Newer Yamaha arranger workstations (e.g., PSR-S970) have a graphical interface for guitar effects and the ability to store edited effects in OTS locations and Registrations. Older model workstations store edited effects in the USER EFFECTS memory locations. See the “Parameter Table” in the Data List manual for your workstation to see the capabilities for your particular instrument. Look under:

    Main > Mixing Console > Effect

to see where “Effect Parameters” can be stored. On the S950, you may store an edited effect to either the USER EFFECT memory locations or a SONG. This is typical for older model arranger workstations.

Not being able to store an edited effect to OTS (within a style) is a major bummer. This limitation makes it hard to share new effect settings with friends. It also means that you cannot directly customize a DSP effect for a particular style. You must first save the edited effect to a USER EFFECT memory location. Then, the OTS in the style is set to refer to the USER EFFECT memory location. On the up side, the USER EFFECT can be assigned a meaningful name. On the down side, the style cannot be transfered to a different keyboard without moving the USER EFFECT data, too.

The Yamaha reference manual does a decent job of describing the “push this, select that” of editing and saving a user effect. Read the chapter about the MIXING CONSOLE for detailed information. The Yamaha manual is a little short on “big picture.” Hopefully, this short note provides a strategic overview that makes all of the button pushing a little more understandable. It might also save you the frustration of trying to save an edited effect to an OTS button and failing. I tried saving to an OTS button (and style) for an hour before checking the parameter table in the S950 Data List and realizing that it ain’t possible.

I included a brief outline of the process of editing and saving an effect at the very end of this blog entry. It should help you to find the parts of the reference manual with the details.

The other part of “the big picture” that you should know is how to save and restore USER EFFECT memory to a USB file. The USER EFFECT memory is part of a bigger package of stuff that is all saved to a single file. That package of stuff contains:

    USER EFFECT types and associated parameters
    User master EQ types
    User compressor types
    User vocal harmony types

All of this is stored in a single USER EFFECT file. So, if you want to move your user effects to another workstation, write a USER EFFECT file to the USB drive. Then, take the USB drive to the other workstation and load the file. The bad news is that you are forced to load the user master EQ, compressor and vocal harmony types, too, thereby overwriting these settings on the target machine.

Saving and loading a USER EFFECT file is handled on the CUSTOM RESET page. Navigate to the SYSTEM RESET page:

    FUNCTION > UTILITY > SYSTEM RESET

and press [H] USER EFFECT FILES. Then TAB over to the USB drive page and press [6] SAVE. The usual file dialog box displays where you can rename the file. The default name is “UserEffectPreset”. The file extension is “.eff”. If you don’t change the name, the PSR writes the file “UserEffectPreset.eff” to the USB drive. (More stuff the Yamaha manual didn’t tell you…)

The subjects of factory and custom reset remind me that it’s a good idea to make a full system back-up to a USB drive. See the:

    FUNCTION > UTILITY > OWNER

page in the Owner’s and Reference manuals for further details. Full system back-ups have saved my bacon on the MOX on the few occasions when I had to perform a complete factory reset. Also, make sure to save the back-up file on a PC or Mac. You never know when that USB drive will fail or get lost!

The PSR-S950 writes a back-up file to the USB drive. The back-up file is named “PSR-S950.bup”. Presumably, other workstation models name the back-up file after themselves, too.

MIXING CONSOLE

Changes to REVERB, CHORUS and DSP effects are made on the EFFECT page in the MIXING CONSOLE. The knobs on the EFFECT page control the effect sends. Press [F] TYPE (in the upper right corner) to change the effect type assigned to each part or channel.

USER EFFECTS

The EFFECT TYPE SELECTION page is a four column browser that lets you choose the effect BLOCK, PART, CATEGORY and TYPE. After selecting the effect type, press [F] PARAMETER (in the upper right corner) to change the effect parameters.

The EFFECT PARAMETER page has a scrolling list of parameters for the chosen effect type. Use the buttons below the LCD display to set the effect BLOCK, CATEGORY, TYPE, PARAMETER and VALUE.

Press [I] SAVE to save the edited type and parameters as a new USER EFFECT. The USER EFFECT page displays the memory locations where you can store the new effect. The number of available memory locations depends upon the chosen effect block:

    REVERB   3 locations
    CHORUS   3 locations
    DSP      10 locations

Choose a memory location using the buttons below the LCD display and press [I] SAVE. Enter a name for the new user effect and confirm the save.

Once a user effect is saved, it appears in the EFFECT TYPE SELECTION page under the USER category. The user effect is recalled just like a built-in effect preset.

SYSTEM RESET

USER EFFECT: Restores the User Effect settings including the user effect types, user master EQ types, user compressor types, and user vocal harmony types created via the Mixing Console display to the original factory settings.

CUSTOM RESET

For the items below, you can save your Original Settings as a Single File for future recall.

    SYSTEM SETUP FILES
    MIDI SETUP FILES
    USER EFFECT FILES
    MUSIC FINDER FILES

The User Effect settings including the user effect types, user master EQ types, user compressor types, and user vocal harmony types created via the Mixing Console displays are managed as a single file.

The USER EFFECT settings can be saved to a file and loaded from a file.

OWNER

BACKUP: Lets you backup all data on the instrument to a USB storage device. Refer to the Owner’s Manual.

RESTORE: Loads the backup file from the USB storage device.

PSR effects for electric piano (Part 1)
Editing and saving PSR effects (Part 2)
Multi-effects for electric piano (Part 3)
Copy PSR DSP effects (part 4)

PSR effects for electric piano (Part 1)

A common complaint about the electric pianos on the Yamaha PSR arranger workstations is their lack of “guts” or “grit.” The voice samples are reasonably good, but the effects programming is vanilla and way too polite, especially for rock and soul styles. Here is a table showing the default DSP effect for some of the electric piano voices in the PSR-S950:

    PSR-S950 voice  Category     Effect
    --------------  ----------   -----------------------
    SparkleStack    CHORUS       CHORUS3
    SweetDX         CHORUS       CHORUS3
    BalladDX        CHORUS       ENS DETUNE1
    DX Dynamics     CHORUS       CHORUS2
    BalladBells     CHORUS       CHORUS3
    SuitcaseEP      CHORUS       CELESTE2
    VintageEP       TREMOLO      EP TREMOLO    [DSP off]
    CP80            CHORUS       CHORUS3
    StageEP         CHORUS       CELESTE2
    SmoothTine      SPATIAL      EP AUTO PAN
    ElectricPiano   SPATIAL      EP AUTO PAN   [DSP off]
    Clavi           DISTORTION   DIST SOFT1
    WahClavi        WAH TCH/PDL  CLAVI TC.WAH
    PhaseClavi      PHASER       EP PHASER2

You can see that most of the voices use a chorus effect. In two cases, the DSP effect is turned off by default. (You need to turn it on using the [DSP] front panel button.) The Clavinet voices are a little more fun and use distortion, wah and phaser.

Chorus does not add much “heft” to a voice and it doesn’t add grit. Compression, mid-range boost (EQ) and overdrive are better choices when you need a punchy and/or grungy electric piano sound.

Let’s take a look at the effects programming for a few electric piano voices on the Yamaha MOX synthesizer workstation. The basic voices drive two insert effects connected in series:

    MOX voice             Insert A     Insert B
    --------------------  -----------  -----------
    Crunchy Comp          MltBndComp   CompDistDly
    Vintage Case          AmpSim 2     Auto Pan
    Chorus Hard           ClassicComp  SPX Chorus
    Drive EP AS1          AmpSim 2     Auto Pan
    Natural Wurli         AmpSim 1     Tremolo
    Wurli Distortion AS1  Tremolo      CompDistDly

On the MOX, every voice uses compression, amp simulation or distortion, even the voices employing the evergreen tremolo, pan and chorus effects.

At this point, PSR users tend to throw up their hands and say, “Well, that’s the Motif series!” and back away. Yamaha — bless them — share technology between workstation products. Quite often, you can find the equivalent PSR effect algorithm for an MOX (MOXF) or Motif algorithm.

Consider the MOX “AmpSim2” algorithm. This algorithm shares the same parameters as the PSR “DISTORTION AMP SIM2” algorithm. Here is a table showing the corresponence between MOX and PSR.

    MOX parameter  PSR parameter  MOX value
    -------------  -------------  ---------
    Preset         n/a            Stack1
    AmpType        AMP Type       Tube
    OverDr         Drive          16
    OutLvl         Output Level   70
    LPF            LPF Cutoff     6.3KHz
    Dry/Wet        Dry/Wet        D<W30

The parameter values given here are taken from the MOX “Drive EP AS1” voice. Bring up a PSR voice like “VintageEP,” edit its DSP effect and replace the tremolo effect with “AMP SIM2.” Plug in these values, listen and tweak!

My second example is taken from the MOX “Natural Wurli” voice. The MOX effect algorithm name is “Amp Sim1”. The equivalent PSR effect algorithm is “DISTORTION V_DIST WARM” and its siblings. Here is the equivalency table:

    MOX parameter  PSR parameter  MOX value
    -------------  -------------  ---------
    Preset         n/a            Stack2
    OverDr         Overdrive      2%
    Device         Device         Vintage tube
    Speaker        Speaker        Stack
    Presence       Presence       +10
    OutLvl         Output Level   53%
    Dry/Wet        Dry/Wet        D<W1

Again, change the PSR DSP effect to “V_DIST WARM” and plug in the values. Then, tweak away.

The final example is a multi-effect taken from the MOX “Wurli Distortion AS1” voice. The MOX effect algorithm is “CompDistDly” that is a compressor, distortion and delay effect chain. The equivalency table is:

    MOX parameter  PSR parameter         MOX value
    -------------  --------------------  ---------
    Preset         n/a                   Hard1
    OverDr         Overdrive             15%
    Device         Vin_tube              Vintage tube
    Speaker        Stack                 Stack
    Presence       Presence              +10
    DelayL         Delay Time L          307.3ms
    DelayR         Delay Time R          271.7ms
    FBTime         Delay Feedback Time   306.6ms
    FBLevel        Delay Feedback Level  +31
    FBHiDmp        Feedback High Dump    0.8
    OutLvl         Output Level          22%
    DlyMix         Delay Mix             0
    Compress       n/a                   -29dB
    Dry/Wet        Dry/Wet               D<W12

The almost equivalent PSR effect algorithm is “DISTORTION+ V_DST H+DLY”. The PSR algorithm is missing the compression component (parameter). If you want compression, then consider one of the other PSR distortion algorithms with mono delay.

Keep thinking “multi FX.” I’m going to visit the REAl DISTORTION multi FX algorithm in a future post.

Some of the MOX voices use VCM effects. I didn’t deconstruct the voices with VCM effects because my S950 doesn’t have them. However, if you have VCM effects, for heaven’s sake, use them!

Learn how to save your new creation in Editing and Saving PSR Effects (Part 2).

PSR effects for electric piano (Part 1)
Editing and saving PSR effects (Part 2)
Multi-effects for electric piano (Part 3)
Copy PSR DSP effects (part 4)

The SWP70 tone generator

As I mentioned in an earlier post, the Yamaha PSR-S770 and PSR-S970 arranger workstations have a new tone generator (TG) integrated circuit (IC) — the SWP70. (“SWP” stands for “Standard Wave Processor.”) The SWP70 is a new TG family in a long line of Yamaha tone generators. The SWP70 replaces the SWP51L, which has been the mainstay in recent generations of Tyros, upper range PSR, Motif, and MOX series workstations.

The SWP70 has much in common with the SWP51L, but also some very significant differences. The SWP70’s external clock crystal frequency is 22.5792 MHz versus 11.2896 MHz for the SWP51L. This funky looking clock rate is a multiple of 44,100 Hz:

    22.5792MHz = 44,100Hz * 512

Samples are transferred to the DAC, etc. at a multiple of 44,100 Hz (Fs). Thus, it makes sense to derive Fs and its multiples from the chip-level master clock. The higher crystal frequency and faster memory read clocks lead me to believe that the SWP70 is clocked twice as fast as the SWP51L.

I am comparing SWP characteristics as deployed in the S970 (SWP70) and the S950 (SWP51L) workstations. This keeps the basis of comparison even although many characteristics (clock rates, DSP RAM size) are the same in higher end models like Tyros 5 or Motif. Higher end models employ two SWPs in master/slave relationship and both SWPs share the same wave memory. For more information about the PSR-S970 internal design, look here.

Five interfaces are essentially the same as the SWP51L:

  1. CPU interface: Communicate with the Main CPU (e.g., Renesas SH7731) via the parallel CPU bus.
  2. Serial audio: Send/receive audio data to/from the DAC, audio ADCs, and main CPU.
  3. Clock interface: Synchronize serial audio data transfers (generate multiples of Fs).
  4. DSP SDRAM interface: Store working data for effect processing.
  5. EBUS interface: Receive controller data messages (e.g., pedal input, keyboard input, pitch bend, modulation, live knobs, etc.) from front panel processors.

The DSP SDRAM is the same size: 4Mx16bits (8MBytes). The SWP70 read clock is 95.9616 MHz, while the SWP51L read clock is 45.1584 MHz. This is more evidence for a higher internal clock frequency.

The Tyros 4, Tyros 5 and S950 have an auxiliary DSP processor for vocal harmony. The microphone analog-to-digital (ADC) converter is routed directly to the auxiliary processor. Prior to these models, the microphone ADC is connected to the tone generator. With the SWP70, the S970’s microphone ADC is once again routed to the SWP70 and the auxiliary processor disappears from the design. Thus, vocal harmony processing (fully or partially) is located in the SWP70. See my post about SSP1 and SSP2 for further details.

The biggest change is the wave memory interface.

A little history is in order. The SWP51L (and its ancestors) were designed in the era of mask programmable ROM. I contend that tone generation is memory bandwidth limited and the earlier interface design is driven by the need for speed. The SWP51L (due to its evolved history) has two independent wave memory channels (HIGH and LOW). Each channel has a parallel address bus (32 bits) and a parallel data bus (16 bits). The two channels account for over 100 pins. (System cost is proportional to pin count.) The user-installed, 512/1024MB flash DIMMs plug directly onto the two channels.

The SWP70 wave memory interface takes advantage of new NAND flash memory technology. The interface is described in US patent application 2014/0123835 and is covered by Japanese patent 2012-244002. I analyzed the US patent application in an earlier post.

The SWP70 retains the HIGH port and LOW port structure. Each port communicates with an 8Gbit Spansion S34ML08G101TFI000 NAND flash device. Address and data are both communicated over an 8-bit serialized bus. This technique substantially decreases pin count and the resulting board-/system-level costs. Smart work.

I did not anticipate, however, the introduction of a new parallel memory interface called “wave-work”. The wave work interface communicates with a 16Mx16bit (32MBytes) Winbond W9825G6JH-6 SDRAM. The read clock is 95.9616 MHz.

The purpose of the wave work SDRAM is revealed by US Patent 9,040,800. This patent discloses a compression algorithm that is compatible with serialized access to the wave memory. The wave work SDRAM is a cache for compressed samples. The characteristics of the Spansion memory device give us a clue as to why a cache is required:

    Block erase time               3.5ms    Horrible (relative to SDRAM)
    Write time                     200us    Terrible
    Random access read time         30us    Bad
    Sequential access read time     25ns    Very good

As the patent explains, two (or more) samples are required to perform the interpolation while pitch-shifting. If there is only one tone generation channel, access is paged sequential. However, random access is required when there are multiple tone generation channels. (The patent mentions 256 channels.) Each channel may be playing a different voice or a different multi-sample within the same voice. One simply cannot sustain high polyphony through random access alone. The cache speeds up access to recently used pages of uncompressed samples.

The wave work interface takes additional pins, thus adding to board- and system-level costs. The overall pin count is still lower when compared to SWP51L. The penalty must be paid in order to use contemporary NAND flash devices with a serialized bus. This is the price for catching the current (and future) memory technology curve.

A few SWP70-related printed circuit board (PCB) positions are unpopulated (i.e., IC not installed) in the PSR-S970. There is an unpopulated position for a second Winbond W9825G6JH-6 wave work SDRAM which would expand the wave work memory to 32Mx16bit (64MBytes). A larger cache would be needed to support additional tone generation channels. Perhaps only half of the tone generation channels are enabled in the mid-grade PSR-S970 workstation.

There is what appears to a second separate wave work interface that is completely unpopulated. The intended memory device is a Winbond W9825G6JH-6, which is consistent with the existing wave work interface.

The PSR-S970 also has a stubbed out interface that is similar to the DSP SDRAM interface. The existing DSP SDRAM signals are labeled “H” for HIGH while the unused interface is labeled “L” for LOW. Perhaps only half of the hardware DSP processors are enabled for the mid-grade S970, waiting to be activated in future high-end Tyros and Motif products.

I refer to future high end products by the names of the current product lines. Yamaha may choose to rebrand future products (e.g., the much-rumored “Montage” trademark).

The Spansion S34ML08G2 8-Gb NAND device is Open NAND Flash Interface (ONFI) 1.0 compliant. The S34ML08G2 device is a dual-die stack of two S34ML04G2 die. The 8-bit I/O bus is tri-state allowing expansion e.g., multiple memory devices sharing the same I/O bus and control signals with at most device enabled at any time. The SWP70 has additional chip select pins that would support this kind of expansion. The current expansion flash DIMMs will no longer be needed or used.

In this note, I concentrated on observations and fact, not speculation about future products. I’ll leave that fun for another day!

All site content is Copyright © Paul J. Drongowski unless indicated otherwise.

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.

PSR-S770 and S970 internal architecture

Yamaha just recently introduced the new PSR-S770 and PSR-S970 arranger workstations. As usual, I’m always anxious to dive into the service manual and see what’s up.

First, I’d like to thank Uli and capriz68 on the PSR Tutorial Forum for their help. Uli made a very nice table from my ramblings, so be sure to check it out there.

Without further introduction, here is a table comparing previous generation models (PSR-S750 and PSR-S950) against the new models.

                    PSR-S750  PSR-S950   PSR-S770  PSR-S970
                    --------  ---------  --------  ---------
Main CPU            SWX08     SH7731     SH7731    SH7731
Clock rate (MHz)    135.4752  256        320       320
Tone generator      SWP51L    SWP51L     SWP70     SWP70
Ext clock (MHz)     11.2896   11.2896    22.5792   22.5792
DSP SDRAM (MBytes)  8         8          8         8
DSP RCLK (MHz)      45.1584   45.1584    95.9616   95.9616
Mic ADC                       AK5381     PCM1803   AK5357
AUX IN ADC          AK5357    AK5381     AK5357    AK5381
DAC                 AK4396    AK4396     AK4396    AK4396
Digital amp         YDA164C   2*YDA164C  YDA164C   2*YDA164C
Wave ROM (MBytes)   256       256        512       2048
Wave SDRAM          N/A       N/A        32MBytes  32MBytes
SSP2 chip           No        Yes        No        No

The main CPU remains a Renasas SH4AL-DSP CPU. The clock speed is increased from 256MHz to the 320MHz, which is just shy of the rated maximum for the SH7731.

Wave memory is increased from 256MBytes (S950) to 512MBytes (S770) and 2GBytes (S970). Part of the S770 and S970 wave memory is reserved for expansion pack voices: 160 MBytes (S770) and 512 MBytes (S950). How Yamaha uses the rest of the memory is up to Yamaha. However, we are now in an era when we cannot compare products solely on the basis of physical wave memory size. Our ears and performance experience are more important than mere byte counts!

The S970 has two NAND flash memory devices labelled “audio style.” The devices are:

    4Gbit NAND flash = 512MBytes
    2GBit NAND flash = 256MBytes
                       ---------
    Total audio style  768MBytes

Yamaha specifies memory size in bits, so one must be careful to convert during analysis. The PSR-S950 has a NAND flash device labelled “Program ROM,” which presumably served the same purpose as well as holding the operating system image that is loaded at boot time. The S950 device capacity is 512MBytes (4Gbits). The S970 reserves 128MBytes for audio style expansion.

The upper mid-range model, i.e., the S970, is biamplified with two digital power amps. The older S950 is also biamplified. Not much change here.

The big news is that Yamaha have a new tone generator integrated circuit (IC), the SWP70. The SWP70 uses the serialized wave memory interface that I described in an earlier post. The SWP70 appears to operate at twice the speed of the older SWP51L. The SWP70 has implications for other future products, so I will analyze it in a separate post.

With respect to the PSR-S970, however, there is another evolutionary step. With the appearance of the new SWP70, there is also the disappearance of the SSP2 IC. The introduction of the SSP2 IC coincided with the introduction of Vocal Harmony 2 in both the Tyros line and the PSR-S950. It is reasonable to infer, then, that vocal harmony is implemented on board SSP2. With the PSR-S970, there are two possibilites.

  1. Vocal harmony is assigned to the now faster main CPU, or
  2. SSP2 functionality is integrated into the new SWP70.

The SWP70 is beefed up in other ways including a new wave working memory.

The future looks interesting as always!

Here are links to my articles on other members of the PSR and Tyros product families:
What’s inside of a Yamaha arranger?
A follow-up on the Yamaha SWP51
Yamaha arranger product family

All site content is Copyright © Paul J. Drongowski unless otherwise noted.