MKS-40 Processor PCB

Processor PCB In the MKS-40 a separate processor PCB sits behind the PANEL PCB and contains the main 8048 processor, the switch scanning and module CV control circuits. Digital circuits that are on the Jupiter 4 motherboard have been moved and simplified. I have also used SMD chips to reduce the PCB real estate needed.

Processor The MCS48 family of microprocessors was introduced by Intel in 1976 and it was there first ever. The 8048 with, on board factory programmed ROM, proved popular as no separate ROM was needed. Speed and memory sizes were tiny compared with today, and the code was written in assembler with just 1kbyte available.

I decided to retain the 8048’s, as its possible to buy new 8748 chips coded with the Roland OS, and it reduces my development effort. I have supplemented the 8048’s with cheap PIC micro controllers to augment the functionality. Roland made extensive use of the 8048 in their products and retained the dual processor design in early poly synths.

Switch and Pot Reading The Jupiter 4 uses an Intel 8048 microprocessor to manage 16 variable CV’s (from the front panel pots) and 14 data lines (for switch control).  The pot outputs vary from 0 to +5V and are selected by 2x 4051 analog multiplexers and then read into the ADC and stored as 6-bit data.

The 8048 processor reads the potentiometer CV data out of RAM and drives the main CV DAC, which generates 6-bit signals between 0 to +5V. The output of the DAC is multiplexed by 4051 demux chips into 8x dual JFET Op Amps – acting as sample & holds. The voltages are held on 6.8nF capacitors and TL082 Op Amps. I have used high quality polypropylene capacitors and LT1013 Op Amps. This should improve the CV stability.

The 14 switches produce binary data (L = 0V, H = +5v) and are combined with the 16x 6-bit potentiometer data values into 16x 8-bit words that can be stored in RAM. Note that two sets of 2 bits are not used. With only 8 user presets only 128 bytes of RAM is needed. The MKS-40 replicates the switch and pot reading CMOS logic exactly with no changes, except using SMD chips.

RAM Memory  The amount of RAM in the Jupiter 4 was only 1024 bits, which accounts for the limited number of user presets. The uPD5101 chip was expensive in 1978 and easily replaced with a cheap modern 64kb FRAM chip that also does away with the battery. Some decoding tricks in CMOS are needed to enable the FRAM chip to be used and 64 user presets are available in the MKS-40, the same as in the Jupiter 8.

Switch Data Logic

Switch Decoding The Jupiter 4 uses an Intel 8048 microprocessor to manage 16 variable CV’s (from the front panel pots) and 14 data lines (for switch control). The potentiometer CV’s are at 0 to +5V and multiplexed by 4051 demux chips into JFET Op Amps – acting as sample & holds.

A total of 11 data lines are latched using 4099 chips and level shifted using individual transistors from +5V to +15V (and -15V) to drive the variety of CMOS analog switches, JFET and BJT switches on the module or controller boards. Some signals are not level shifted. This all takes lots of components and is inconsistent.

The MKS-40 uses two HEF4104 quad level shifters to invert and level shift (to +15V logic) the 2-bit data signals for these switches:

  • VCO Range (using a 4052 demux chip)
  • VCO Waveform selection (a 4052 demux replaces 4066’s)
  • LFO Waveform selection ( a 4052 demux replaces JFETs)

The data lines for LFO Waveform selection are inverted and level shifted to +15V but reduced down to +8V using diodes, ready for the 4052 that selects the waveforms. This is because the 4052 runs on +8V and -8V power rails to enable the bipolar (10V peak to peak) waveforms in the LFO to be pass through unchanged.

DG417/418 analog switches replace the JFET’s in the Noise, Sub and PW/PWM circuits. This enables +5V logic control with no need for level shifting and inversion.

  • Noise on/off JFET switch replaced with DG418
  • Sub on/off 4066 switch replaced with DG418
  • Pulse Width on/off JEFT replaced with a DG418
  • PW Mod selection JFETs replaced with 2x DG418

The original PW on/off has a data line inverted and shifted down to -15V logic on the Module Controller board. The DG418 enables the bipolar 10V peak to peak LFO signal to pass through unchanged and +10V for when the pulse width modulation is manual.

Level shifting and inversion is not required for the Key Follow and Envelope Inversion data lines that drive BJT’s. The Key Follow circuit that uses BJT’s has been retained but the BJT used to select an inverted envelope has been replaced with a DG419 SPDT analog switch, as the original circuit needed manual trimming due to the mismatch in level across the BJT formed switch.

The amount of data decoding (and therefore six CMOS chips on the processor PCB) has been reduced by removing the pitch transpose function, and by using 4052 chips to select LFO waveforms, VCO waveforms. Extra local power rails have been added for the new 4052’s, +8V and -8V using 7X08 voltage regulators. The use of DG418 analog switches enables +5V logic to be used, and the amount of level switching to be reduced. The switches also remove the need for diodes and resistors around them.

The Jupiter 4 service manual contains a rather handy switch logic table, see diagram above. This was carefully checked before sending the Processor PCB for manufacturing.

DAC  The original Jupiter 4 uses an 8-bit discrete R2R DAC to create control voltages and to provide ADC functionality for reading the switches and pots. Only the upper 6-bits are used as these is how the CV values are stored in RAM and ROM. I have retained the design as there is not much advantage in attempting an improvement, as these are non-pitch CV’s. The Jupiter 8 uses the same discrete R2R DAC but with all 8 bits being used. The only change I have made is to use a precision R2R network chip to save space.

Outcomes The simplification and use of SMD chips means the functionality of the Processor PCB can be contained on a 295 x 75mm PCB that fits onto the Panel PCB, with SIP multiway connectors. The power for both the Panel and Processor PCB’s comes straight from the PSU into a 4 way terminal block (GND, +5V,+15V,-15V). DGND and AGND are derived from the main GND connection and go via inductors.


Copyright AMSynths 2022