Contents

General information

The Silicon Graphics O2, introduced in 1996, is the successor to the Indy workstation. It comes in two flavours: the R5000/RM5271/RM7000 and the R10000/R12000. The former has space for two harddrives and the latter only for one, due to the size of the CPU heatsink. It is possible to put a R10000 into some R5k O2's by removing the metal separator between the mainboard and the harddrives, however, on some earlier models the separator is part of the chassis and cannot be removed short of cutting it out with a hacksaw.

The O2 was re-introduced with slight modifications as the O2+ in August 2001 only to be replaced by the Fuel in January 2002.

System architecture

The O2 features a proprietary high-bandwidth Unified Memory Architecture (UMA) that connects the various system components. A PCI bus is bridged onto the UMA with one slot available. It has a designer case and an internal modular construction. It has space for two SCSI drives mounted on special sleds (1 in the later R10000/R12000 models) and an optional video capture / sound cassette mounted on the far left side. Further information on the design and construction of the O2 can be found in SGI service manuals on Techpubs. Detailed breakdown pictures and an IRIX hinv dump can be found here.

CPU options

The O2 comes in two distinct CPU flavours; the low-end MIPS 180-350 MHz R5000/R7000 based units and the higher-end 150-400 MHz R10000/R12000 based units. The 200 MHz R5000 CPUs with 1 MB L2-cache are generally noticeably faster than the 180 MHz R5000s with only 512 KB L2-cache. Also of note is that there is no 300 Mhz R5000 CPU, the O2 will incorrectly report the RM5200 CPU as an R5000.

CPU Version:

Clock Speed:

2nd Level Cache:

R5000PC

180 MHz

-

R5000SC

180 MHz

512 KB

R5000SC

200 MHz

1 MB

R5200SC

300 MHz

1 MB

RM7000A

350 MHz

256 KB (+1 MB tertiary)

R10000SC

150, 175, 195, 225, 250 MHz

1 MB

R12000SC

270, 300 MHz

1 MB

R12000SC

400 MHz

2 MB

There is also a hobbyist project that has successfully retrofitted a 600 MHz R7000 MIPS processor into the O2.

Memory subsystem

The motherboard has 8 proprietary 278-pin (139 per side) slots on the motherboard, accepting 4 paired sets of memory, referred to and sold as kits. The individual SDRAMDIMM modules come in 16 MB, 32 MB, 64 MB, and 128 MB sizes. The banks must be filled in order, and larger modules should be put in first. The O2 is expandable to 1 GB using 4 2x128 MB kits.

Original SGI DIMMs are either single-sided (SS) with memory chips on only one side of the module or double-sided (DS), and come color-coded to assist you in identifying what is installed. 3rd party DIMMs may or may not follow these conventions. Knowing the current memory configuration is important as DIMMs must be installed according to a number of specific rules. These rules follow the table in this section.

Size

Color Code 1

Color Code 2

SS/DS

Type

16 MB

Purple

-

SS

A

32 MB

Yellow

-

DS

A

64 MB

Green

White

SS

B

128 MB

Silver

-

DS

A

128 MB

Silver

White

DS

B

The DIMMs in slots 1 and 2 make up Bank A. DIMMs in slots 3 and 4 make up Bank B, and so on.

A bank of two slots must have a DIMM in each slot or be empty (except for slots 1 and 2, Bank A, which must always be populated.)

Graphics subsystem

The CRM chipset that SGI developed for the O2, shares OpenGL calculations between CPU and chip. Due to the unified memory architecture, framebuffer memory comes from main memory, and there is effectively an 'unlimited' amount of texture memory. Another useful feature is that any incoming video data from the Audio/Video option can be used directly as an OpenGL texture without having to perform a copy or move.

ICE (Image Compression Engine -- a dedicated 64-bit R4000-based processor containing a 128-bit SIMD unit running at 66 MHz, which is used to accelerate various image and video operations)

OpenGL 1.1 + ARB image extensions

O2 Video System

The O2 Video system simultaneously supports two input video streams to memory and one output video stream from memory which can be seperated into two outputs, one carrying pixel information, the other carrying alpha (key) information.

Using the O2 Video system, it is possible to capture live video into the computer's memory which can then be displayed in a graphics window on the screen or further processed by an application. It is also possible to generate video output from images in memory, which can be displayed on a standard video monitor, or recorded to a VTR. Using the VL programming library (see vlintro(3), and mvp(3)), a program can capture video in either the RGB or YCrCb color spaces, and either full or reduced size formats, and in a format usable for input to the compressor/decompressor, display on the graphics screen, or as an input to a graphics processing and/or texture operation.

SGI offered 2 video options for the O2/O2+: the AV1 interface and the AV2 interface.

The AV1 interface supports Composite and SVideo (Y/C) (both analog), and Digital I/O via the Camera/Digital Video port. The analog I/O jacks are for use with standard analog video equipment, supporting both PAL and NTSC video formats. There are a variety of controls available that allow the user or programmer to set various parameters used for the decoding and encoding of the video signals. The digital input of the AV1 is for use with the O2 Digital System Camera, or can be connected to an optional digital video input and output adapter to interface to standard SMPTE259M serial digital video devices.

The AV2 interface supports two ITU-601 (CCIR-601) serial digital video input connectors and two similiar output connectors, as well as GPI input and output and analog (black burst) sync input and loop through.

Operating system support

IRIX

IRIX versions 6.3 and 6.5 (up to the latest overlay - 6.5.30) are supported on this machine, however, only in 32-bit mode, due to the nature of the O2's internal architecture.

Linux

There is official Linux support for the O2 in Debian 4.0 "Etch" as well as in Gentoo but only for R5000/R7000 O2s. Linux is not stable on R10000/R12000 CPUs due to a known issue with the way they handle speculative loads and stores, detailed here. This is not a problem for Linux on the Octane as there is different hardware to support these processor features.

Installing Linux is made more difficult due to the O2's PROM being unable to read ISO9660 filesystems. Gentoo has an experimental SGI bootable X Live CD. Please read the README for details on supported machines (the O2 is one of many SGIs supported), the level of support, and how to burn the CD as it is not a typical ISO image. Additionally, there is a project to create Linux bootable CDs here if you want to roll your own. However, the more common procedure is to use a 2nd computer as a PXE boot server and netboot an installer. Details on using a Debian minimal netinstall image can be found here.

Add-on options

O2 Dual-head option.

The O2 is unusual for a Silicon Graphics machine in that it has only one available graphics option (CRM), which is built-in and cannot be replaced. Similarly unusual, the base machine has a single HD15 connector for graphics output. There is, however, a proprietary expansion port for one of three extra graphics interface options.

Dual-head 2xHD15 adapter. PN: 030-1296-002

1600SW flat panel adapter. PN: 030-1170-001

Indy Presenter or Presenter 1280 flat panel adapter. PN: 030-1202-001

Since the video calculations are performed on the O2's CPU, running in higher resolutions or dual-head mode causes a significant impact on performance. Additionally, due to limited CRM framebuffer width, the two screens for dual-head are positioned vertically in memory causing a slowdown when objects are drawn across both screens. While no DVI option exists for the O2, when using either flat panel adaptor there is an all-digital path from the computer to the display.