VAX-11/780 Microprogramming Tools User''s Guide

Order Number: AA-H306B-TE

This document, the "VAX-11/780 Microprogramming Tools User's Guide," serves as a comprehensive manual for assembly language programmers and hardware engineers on developing and deploying microprograms for the VAX-11/780's Extended Writable Control Store (WCS). Published in March 1982, it outlines the complete workflow from microprogram creation to execution.

The guide primarily details the use of two core tools:

  1. MICR02 (Microprogram Assembler): This tool translates symbolic microprogram source code (.MIC files) into machine-readable object code (.ULD files) and generates detailed listing files (.MCR). It covers the intricacies of microprogram structure, including bit numbering, program radix, defining memories, and field definitions with various qualifiers (e.g., for default values, addresses, and validity checks). MICR02 also supports expressions, macros (for higher-level programming), microinstruction formatting, and memory allocation strategies (sequential and random with constraints). Appendix A provides the VAX 11/780 Definition Language (VAXDEF.MIC), which defines the specific microword fields and macros for the VAX-11/780 architecture.
  2. MICLD (Microprogram Loader): This utility loads the .ULD object files generated by MICR02 into the VAX-11/780's Extended Writable Control Store, a 96-bit wide, 2K-word memory. MICLD handles critical functions such as verifying the WCS board's installation, initializing the WCS with a specified or default pattern, managing the loading of microcode (which is segmented into three 32-bit banks), optionally setting the microprogram's starting execution address (entry vector), and logging the successful or failed WCS load operation. It requires kernel-mode privileges to operate due to its direct interaction with hardware.

For executing a microprogram, the document explains that an Extended Function Call (XFC) instruction from main memory is used. This process involves specific system configurations: setting the low-order bits of Vector 14 in the System Control Block (SCB) to '2', which then traps execution to a predefined entry vector (VAX address 10E0 hex). This entry vector must be patched with a jump instruction to the desired microprogram entry point within the WCS.

The appendices include practical examples of a sample microprogram (a binary search routine) with its source, listing, and object files, along with a test program to demonstrate and verify the functionality of these microprogramming tools. The manual is intended for users already familiar with microprogramming concepts and the VAX CPU architecture.

AA-H306B-TE
March 1982
170 pages
Quality

Original
5.0MB

Site structure and layout ©2025 Majenko Technologies