A dive into some old Roland gear

I haven’t taken a deep dive into any gear lately and my ears need a break! So, here goes.

The Web is a wonderful source of distractions. After discovering the new Roland Sound Canvas app for iPad, I was searching for some information about the later model Sound Canvas modules and came across the Roland Service Notes for the XP-80 workstation, the XV-1010 module, and the SK-88Pro Sound Canvas. I still have these instruments in my sonic arsenal although they don’t see as much day-to-day use anymore. The orchestral sounds, in particular, hold their own today and I occasionally play the XP-60 at my church gig. Some of the sounds like the Voice expansion board (taken from Vocal Planet) are unique and stellar.

Roland have their “Service Notes” and Yamaha have their “Service Manuals.” To each his own name. However, keep these terms in mind when searching the Web for documentation on the innards.

As you might expect, there are similarities to Yamaha’s approach and some differences. These instruments are embedded computer systems for Pete’s sake — they just happen to make joyful noise. These instruments were developed in the late ’90s and early 2000s.

Roland — like Yamaha — drew from the Hitachi (now Renesas) processor families. The XP and XV use the more powerful SH-1 series CPUs while the SK uses the less powerful H8/510.

All of instruments have a custom tone generation chip. Roland’s naming convention for the tone generator ICs does not suggest how these chips fit into a family although the “XP” mnemonic is used throughout. The tone generators each have a dedicated RAM for effects processing similar to the Yamaha SWP51 series. The tone generators have a dedicated wave memory interface. The Yamaha SWP51 supports two 16-bit channels while the Roland tone generators have a single 16-bit data channel. I’m just know starting to appreciate how tone generation is a bandwidth-sensitive application and the single vs. double channel difference may be functionally significant. Certainly, the Yamaha approach requires many more pins, but it supports higher bandwidth. More polyphony? More voice elements? Hmmm.

Since these are older instruments, the wave memory size is not about to knock you out. However, this is an important reminder that wave memory size isn’t everything. Roland developed and programmed very good sound sets for these instruments. The wave memory may seem miniscule in the era of multi-gigabyte sample libraries, but it’s what hits the ears which matters the most.

Here are the details — straight, no chaser. Speaking of which, I’m knee deep in the development of a scat vocal voice for the PSR-S950. This project has taken a month so far and I’m only about 90% finished. Stay tuned.

Roland XP-80

Following is a list of the most relevant bits of sand in the Roland XP-80 workstation:

IC5     XP         Unidentified      Custom tone generator

IC12    SH CPU     HD6437034SC66F    Hitachi SH7034 Superh RISC engine
IC36    WAVEROM B  LHMN5PNA          4MByte WAVE ROM for tone generator
IC37    WAVEROM A  LHMN5PN9          4MByte WAVE ROM for tone generator
IC10    MASK ROM   TC5316200CF       MASK ROM on system bus (data+code)

IC17    SRAM       HM62864LFP-7SLZ   SRAM on CPU system bus
IC19    SRAM       HY6264ALJ-70TE2   DRAM for LCD controller
IC14,15 DRAM       LH64256BK-70      EFX DRAM for tone generator
IC21,22 DRAM       HM514800CJ-80     DRAM on CPU system bus

IC39,41 DAC        PCM69AU-1/T2      24-bit DAC

The SH7034 is a 32-bit RISC engine (SH-1 architecture) with peripheral interface logic integrated onto the chip. The SH7034 chip also has a 64KByte ROM/EPROM and a 4KByte RAM. The CPU has 32-bit datapaths, sixteen 32-bit general registers and a five stage pipeline. It has a multiply and accumulate (MAC) unit.

The XP tone generator (TG) is not explicitly identified in the parts list. It is merely labeled “XP” in the circuit schematic. The tone generator interface to the WAVE ROM has 23 address bits and is 16-bit data parallel. The WAVE ROMs provide data as 16-bit words. Each ROM has 21 address bits and the 16-bit data bus is shared between all ROMs. Each ROM is 4MBytes for 8MBytes total WAVE ROM. This checks with Roland marketing literature.

The Burr Brown PCM69AU is a dual 18-bit DAC capable of 16x oversampling. This part was also manufactured by Texas Instruments.

Roland XV-1010

The XV-1010 is a one expansion slot sound module in the JV/XV family. The XV-1010 has the basic XP sound set plus the “Session” expansion sounds — essentially a built-in SRJV expansion board. The XV-1010 does not have much of a user interface and not much is required in terms of processor power to support it.

Here is a table of the main ingredients in the XV-1010:

IC1    CPU            HD6437016F28
IC2    SRAM           TC551001CF-70L      RAM on CPU system bus
IC3    XP6            RA09-002            Custom tone generator
IC4    DRAM           MN414260DSJ-06T1    DRAM on CPU system bus
IC5    DRAM           MN414260DSJ-06T1    Tone generator effect DRAM
IC6    WAVE ROM A     LHMN0PVW            8MByte WAVE ROM
IC7    WAVE ROM B     LHMN0PU5            8MByte WAVE ROM
IC14   FLASH MEMORY   LH28F160S5T-L70     FLASH memory on CPU system bus
IC26   DAC            AK4324-VF-E2        DAC driven by tone generator

The Hitachi SH7016 is another member of the SH-1 RISC processor family. Peripheral interface logic is integrated onto the chip making it ideal for embedded applications (like a synthesizer). The CPU has 32-bit datapaths, sixteen 32-bit general registers, and a five stage pipeline. The CPU has a multiply-accumulate (MAC) unit. The SH7016 has 64 KBytes of mask ROM and 2 KBytes of RAM (when the 1KB cache is enabled).

The tone generator IC wave memory interface has 23 address bits and a 16-bit data bus. Each WAVE ROM has 22 address bits and they share the 16-bit data bus. The basic XP sound set is stored in an 8MByte ROM and the Session sound set is store in an 8MByte ROM for a total of 16MBytes of wave memory.

The EXP-B SLOT has 21 address bits and an 8-bit data bus. The narrow data bus is probably a legacy artifact from the earlier JV-series instruments.

The Asahi Kasei (AKM) AK4324 is a 1-bit, 128x oversampling stereo DAC with
a maximum 96KHz sample rate. It includes a 24-bit digital filter.

Roland SK-88Pro

The SK-88Pro is an SC-88 Sound Canvas built into a 3 octave MIDI controller with the Roland two-way pitch bend/modulation stick. The SK has two MIDI IN ports with 16 channels each. The controller is built like a tank and is almost as rugged as made-of-metal Roland workstations. I would not trade this thing for any of the toy-like controllers on the market today!

Here is a table listing the important integrated circuits:

IC1     CPU              HD6415108F          H8/510 microcontroller
IC3     XP               RA01-005            Custom tone generator
IC4     CUSTOM DSP       MB87837PF-G-BND     Unique to the Sound Canvas?

IC8     PROGRAM ROM      LH538U29            Main program and data
IC17    WAVE ROM         UPD23C32000AGX-314  4MByte WAVE memory
IC13    WAVE MASK ROM    LHMN0PNM AB         4MByte WAVE memory
IC15    WAVE MASK ROM    LHMN0PNN CD         4MByte WAVE memory
IC12    DSP RAM          NN514260J-60        256K x 16-bit word memory

IC50,51 DAC              UPD63200GS-E2       DAC for each channel

IC5     SUB CPU          M38881M2-152GP      Handles MIDI input/output
IC7     SUB PROG ROM     LH5S4H0B            Program and data ROM

The Hitachi H8/510 microcontroller family uses a 16-bit CPU core. The H8 has 16-bit datapaths, eight 16-bit general registers and a maximum speed of 10MHz. The H8/510 has integrated peripheral logic and is designed for embedded applications.

The SUB CPU handles MIDI input and output nothing more, nothing less. This is different than Yamaha’s SUB CPU which does heavy lifting.

The custom DSP IC communicates with the XP tone generator. The custom DSP has a dedicated 256K x 16-bit word DRAM. The tone generator has a dedicated 256K x 16-bit word DRAM for effects processing.

The XP tone generator has three WAVE ROM ICs: IC13, IC15 and IC17. The three WAVE ROMs have 21 address bits each and share a 16-bit data bus. The tone generator drives 22 address bits; the least signficiant bit, WA0, is not connected. Address bits WA[1:22] are sent to the WAVE ROMs. The high order bit, WA22, appears to function as a (ROM) chip select. This implies 12MByte of WAVE ROM total.