Western Digital MicroEngine

The Pascal MicroEngine was a series of microcomputer products manufactured by Western Digital from 1979 through the mid-1980s, designed specifically to run the UCSD p-System efficiently.[1] Compared to other microcomputers, which ran a machine language p-code interpreter, the Pascal Microengine had its interpreter implemented in microcode. So, p-code was, effectively, its native machine language.

The MicroEngine ran a special release III p-System, which was not to be used on any other platforms. However, the enhancements of release III were incorporated into release IV which was made publicly available for other platforms but not for the MicroEngine.

The MicroEngine series of products was offered at various levels of integration:
– WD-9000 five chip microprocessor chip set
– WD-900 single board computer
– WD-90 packaged system
– SB-1600 MicroEngine single board computer
– ME-1600 Modular MicroEngine packaged system

The MicroEngine chipset was based on the MCP-1600 chipset, which formed the basis of the DEC LSI-11 low-end minicomputer and the WD16 processor used by Alpha Microsystems (each using different microcode).

In 1978, the WDC MICROENGINE was born. This was to be a 5 chip set (original documentation states 4, but it ended up being 5) that consisted of the CP2151 Data chip. the CP2161 Control chip, and 3 512 x 22 bit MICROMs which contained the microcode to directly execute UCSD Pascal on the data chip. The CP2151 was no different from the CP1611 of the MCP-1600 chipset and could be interchanged.

The difference was in the CP2161 control chip and of course the MICROMs. Though the CP2151 contained multiple registers, the Pascal implementation was a stack machine, it didn’t work as a register computer, but as a pure stack machine.. WD named the chipset the WD/9000 and created a separate company (MICROENGINE Corporation) to market it.

The WD/9000 chipset ran at 3.3MHz and was made on a NMOS process. It required a 4-phase clock and 4 voltage supplies (+/- 5V and +/- 12V). At the time there were plenty of single supply processors so this further complicated its marketing. (not to mention board design). It was available in either an ‘A’ (ceramic) or ‘B’ plastic package.

The initial product was the WD/900 single board computer based on the WD/9000 chipset, which could execute Pascal code 10 times faster than most other systems, when it worked. Unfortunately the board design and quality was terrible, leading to very unreliable hardware. Not something that inspires users who had just spent $2995 on the board, or $5000 for a complete WD/90 system. Eventually the quality problems were sorted out and the MICROENGINE went on to some success, though mostly as a development platform for Pascal. As Pascal versions changed, so did the MICROMs, a user could upgrade their Pascal support by replacing the MICROMs in their system. Since the implementation was structured well, not all upgrades required all 3 MICROMs to be replaced.

Known 3 chip sets are:
CP2171-
10/12/13 Earliest release
14/15/16
14/15/17
14/15/18 (Needed to run Pascal III.0 rH0)

Relevant documents:

UCSD_Pascal_III.0_Operating_System_Reference_Manual_Jul82
Advanced_programming_package
attached_interrupts
DM1883_Direct_Memory_Access_Controller_Jul78
Floppy_piggy_back
H3_SWsysTechNotes
install_guide
M0017_H3sysTN_Jul82
Newsletter
Os_description_p1
Os_description_p2
OS_release_f0
OS_release_go
Pascal_Microengine_Brochure
Pascal_Microengine_Press_Release_Oct78
Pascal_MICROENGINE_RefMan_Mar79
pricelist_DE
p_machine_opcode_1
p_machine_opcode_2
sb1600_brochure
sb1600_io_adresses
UCSD_PascalNewsl#4_Jul79
User_guide_change_list
virtual_segments
WD1931_Asynchronous_Synchronous_Receiver_Transmitter
WD9000_Chip_Set_Data_Sheet
WD9000_Microengine_Chipset_May80
WD9000_Microprocessor_Application_Note
WD9000_Schematic
wd9000_schematic_rev_e5
wd9000_schematic_rev_f6
wd900_volition_systems

Software sources of UCSD p_system III

Calculator
Source of compiler III
Source of editor III
Source of p-System III

Distributions III E0-H0 diskimages

Another chipset for the p-System, on the AMD29116: Pascal Comp March 1985