IBM System/4 Pi

Revision as of 22:05, 22 February 2025 by 2002:b99a:9135:0:6855:8dfe:2652:bf4f (talk) (Lockheed F-117A link was incorrectly pointed to the computer game rather than the aircraft)
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

Template:Short description Template:More footnotes

File:Space Shuttle General Purpose Computer.jpg
The IBM AP-101B CPU and I/O processor (right) and AP-101S (left)

The IBM System/4 Pi is a family of avionics computers used, in various versions, on the F-15 Eagle fighter, E-3 Sentry AWACS, Harpoon Missile, NASA's Skylab, MOL, and the Space Shuttle, as well as other aircraft. Development began in 1965, deliveries in 1967.Template:Sfn They were developed by the IBM Federal Systems Division and produced by the Electronics Systems Center in Owego, NY.Template:Sfn

It descends from the approach used in the System/360 mainframe family of computers, in which the members of the family were intended for use in many varied user applications. (This is expressed in the name: there are 4π steradians in a sphere, just as there are 360 degrees in a circle.Template:Sfn) Previously, custom computers had been designed for each aerospace application, which was extremely costly.

Early modelsEdit

In 1967, the System/4 Pi family consisted of these basic models:Template:Sfn<ref>Template:Cite book</ref>

SpecificationsTemplate:Sfn
Model ISA
(instructions)
Performance
(IPS)
Weight
(pounds)
TC 54 48,500 Template:Convert
CP 36 91,000 Template:Convert
CP-2 36 125,000 Template:Convert
EP 70 190,000 Template:Convert
  • Model TC (Tactical Computer)Template:SfnTemplate:Sfn - A briefcase-size computer for applications such as missile guidance, helicopters, satellites and submarines.
  • Model CP (Customized Processor/Cost Performance)Template:SfnTemplate:Sfn - An intermediate-range processor for applications such as aircraft navigation, weapons delivery, radar correlation and mobile battlefield systems.Template:Sfn
  • Model EP (Extended Performance)Template:SfnTemplate:Sfn - A large-scale data processor for applications requiring real-time processing of large volumes of data, such as crewed spacecraft, airborne warning and control systems and command and control systems. Model EP used an instruction subset of IBM System/360<ref>Template:Cite book</ref> (Model 44)Template:Sfn - user programs could be checked on System/360

The Skylab space station employed the model TC-1,<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> which had a 16-bit word length and 16,384 words of memory with a custom input/output assembly. Skylab had two, redundant, TC-1 computers: a prime (energized) and a backup (non energized.) There would be an automatic switchover (taking on the order of one second) to the backup in the event of a critical failure of the prime.<ref>Template:Cite journal</ref> A total of twelve were delivered to NASA by 1972. Two were flown on Skylab in 1973-1974; the others were used for testing and mission simulators.<ref name=Tomayko1988 /> The software management effort was led by Harlan Mills and Fred Brooks. The Skylab flight software development process incorporated many lessons learned during the IBM System/360 Operating System project, as described in Brooks' 1975 book The Mythical Man-Month.<ref name=Tomayko1988 />

Advanced ProcessorEdit

The AP-101, being the top-of-the-line of the System/4 Pi range, shares its general architecture with the System/360 mainframes.<ref name=Tomayko1988 /> It is a repackaged version of the IBM Advanced Processor-1 (AP-1)<ref name=F15 /> used in the F-15 fighter.<ref name=Tomayko1988 /> The AP-1 prototypes were delivered in 1971 and the AP-101 in 1973.<ref name=IBM1981 /> It has 16 32-bit registers. Originally only 16 bits were available for addressing memory; later this was extended with four bits from the program status word register, allowing a directly addressable memory range of 1M locations. This avionics computer has been used in the U.S. Space Shuttle, the B-52 and B-1B bombers,<ref name=Tomayko1988 /> and other aircraft. It remained in service on the Space Shuttle because it worked, was flight-certified, and developing a new system would have been too expensive.<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref>

There were a number of variants of the AP101. The Offensive Avionics System, a retrofit update of the B-52, contains two AP-101C computers.<ref>Template:Cite report</ref> The AP-101C prototypes were delivered in 1978.<ref name=IBM1981 /> The B-1B employs a network of eight model AP-101F computers.<ref>Template:Cite book</ref> The Space Shuttle used two variants of the AP-101: the earlier AP-101B and the upgraded AP-101S. The AP-101B was used for a series of Approach and Landing Tests in 1977. The first ascent to orbit was in 1981. The AP-101S first launched in 2000.

File:IBM AP-101S logic board.jpg
Logic board from an IBM AP-101S Space Shuttle General Purpose Computer.

Each AP-101 on the Shuttle was coupled with an input-output processor (IOP), consisting of one Master Sequence Controller (MSC) and 24 Bus Control Elements (BCEs). The MSC and BCEs executed programs from the same memory system as the main CPU, offloading control of the Shuttle's serial data bus system from the CPU. The AP-101B originally used in the Space Shuttle had magnetic-core memory. The upgrade to the AP-101S in the early 1990s replaced the core with semiconductor memory and reduced the size from two to one chassis.<ref name=AP101S /> It was augmented by glass cockpit technology. Both variants use a microprogram to define the instruction set architecture. The early AP-101 variants used IBM'S Multipurpose Midline Processor (MMP) architecture.<ref name=MMP /> The AP-101B microprogram implemented MMP with 154 instructions. The AP101S could operate with a backwards compatible MMP with 158 instructions or the MIL-STD-1750A architecture with 243 instructions.<ref name=AP101S /> It was based on the AP-101F used in the B-1B. The AP-101S/G was an interim processor. The AP-101B performance was 0.420 MIPS, while the AP-101S was 1.27 MIPS.<ref name=AP101S /> James E. Tomayko, who was contracted by NASA to write a history of computers in spaceflight, has said:<ref name=Tomayko1985 /> <templatestyles src="Template:Blockquote/styles.css" />

"It was available in basically its present form when NASA was specifying requirements for the shuttle contracts in the 1970s. As such, it represents the first manned spacecraft computer system with hardware intentionally behind the state of the art."{{#if:|{{#if:|}}

}}

{{#invoke:Check for unknown parameters|check|unknown=Template:Main other|preview=Page using Template:Blockquote with unknown parameter "_VALUE_"|ignoreblank=y| 1 | 2 | 3 | 4 | 5 | author | by | char | character | cite | class | content | multiline | personquoted | publication | quote | quotesource | quotetext | sign | source | style | text | title | ts }}

The Space Shuttle used five AP-101 computers as General-Purpose Computers (GPCs). Four operated in sync, for redundancy, while the fifth was a backup running software written independently. The Shuttle's guidance, navigation and control software was written in HAL/S, a special-purpose high-level programming language, while much of the operating system and low-level utility software was written in assembly language. AP-101s used by the US Air Force are mostly programmed in JOVIAL, such as the system found on the B-1B bomber.<ref>Jovial to smooth U.S. Air Force shift to Ada. (processing language)</ref>

The AP-102 variant design began in 1984. It is a MIL-STD-1750A standard instruction set architecture. It was first used in the F-117A Nighthawk. It was upgraded to the AP-102A in the early 1990s.<ref name=AP102 />

ReferencesEdit

Template:Reflist

BibliographyEdit

External linksEdit

Template:Guidance Computer