Download Jensen PS12 Speaker User Manual
Transcript
Chapter 6 Common PALcode Architecture 6.1 PALcode In a family of machines, both users and operating system developers require functions to be implemented consistently. When functions conform to a common interface, the code that uses those functions can be used on several different implementations without modification. These functions range from the binary encoding of the instruction and data to the exception mechanisms and synchronization primitives. Some of these functions can be implemented cost effectively in hardware, but others are impractical to implement directly in hardware. These functions include low-level hardware support functions such as Translation Buffer miss fill routines, interrupt acknowledge, and vector dispatch. They also include support for privileged and atomic operations that require long instruction sequences. In the VAX, these functions are generally provided by microcode. This is not seen as a problem because the VAX architecture lends itself to a microcoded implementation. One of the goals of Alpha architecture is to implement functions consistently without microcode. However, it is still desirable to provide an architected interface to these functions that will be consistent across the entire family of machines. The Privileged Architecture Library (PALcode) provides a mechanism to implement these functions without microcode. 6.2 PALcode Instructions and Functions PALcode is used to implement the following functions: • • • • • • • • • Instructions that require complex sequencing as an atomic operation Instructions that require VAX style interlocked memory access Privileged instructions Memory management control, including translation buffer (TB) management Context swapping Interrupt and exception dispatching Power-up initialization and booting Console functions Emulation of instructions with no hardware support Common PALcode Architecture 6–1
Related documents