The Personal Iris 4D/25 graphics workstation will give many people the chance of a dream come true. For the first time it brings photo-realistic real-time 3D graphics to the world of mainstream applications and affordable PCs... well, relatively affordable.
The entry price of 10,300 UKP (for the lower-spec 4D/20) is amazingly down-to-earth for a piece of hardware that makes even the vaunted graphics of the Amiga 3000 look primitive. Manufacturer Silicon Graphics has been producing state-of-the-art graphics workstations for nine years but until now the machines have been available only to a privileged few.
The company's Personal Iris range, available in various guises for nearly two years, has enjoyed huge success. The opening graphics on News at Ten show what the hardware can do; so do the special effects in films like The Abyss, All dogs go to heaven, and The Hunt for Red October.
The 4D/25, like the rest of the Silicon Graphics range, is finished in dark brown - a refreshing change from the usual dull grey PC. On the front is a small door which opens to reveal the power and reset switches, and two half-height, bays for floppy and tape drives. Two large LEDs indicate power and 'fault', the latter flashing during power-up diagnostics or in the event of a system failure. The door and side panels feel a little flimsy but otherwise the Personal Iris oozes a quality look and feel
At first sight the rear of the unit holds nothing other than the AC power input and output (for the monitor). However, hidden behind a slide-out panel is a cage holding all the PCBs and a row of ports. This cage must be removed before you can see anything other than the huge slabs of steel for shielding against electromagnetic interference. This is achieved simply by removing one screw and pulling the whole cage out. For a system so complex, I expected to have to remove many more screws and components to get to the main PCBs. Silicon Graphics has certainly paid attention to detail here, and its field service engineers must have an easy life.
The standard configuration consists of just two 11in x 15in boards, one for the graphics engine and one for the CPU. Additional PCBs are installed via connector blocks to hold graphics enhancement boards such as the Turbo Graphics option which was present in the review machine. The CPU board contained no less than the CPU and FPU, up to 32MB of main RAM, cache RAM, interfaces for the keyboard, mouse, SCSI and tape drives, serial and parallel ports, an Ethernet port and audio channels as well as a single VME slot. This makes the board pretty much self contained, and is a major reason why the Personal Iris can be offered at such a low price.
All the ports, apart from the graphics-related ones, originate on the CPU board. They include a standard Centronics parallel port, two 15-pin serial ports, a 9-pin D-type keyboard socket, and a 15-pin thick Ethernet connector. Also included in the specification are microphone connections, and ports for audio in and out.
The second major PCB is home to the graphics subsystem. As you would expect from a graphics-oriented machine, there is a range of video connections including RGB BNC connectors, a 15-pin VGA connector, and two ports for genlock applications (for manipulating video images). The genlock support, coupled with third-party applications, should put the 4D/25 up with the leaders of multimedia technology.
The reduction of the Personal Iris to just two main PCBs means the system relies heavily on VLSI technology and the boards are densely packed with chips. Two large chips with heatsinks immediately invite attention, these are the MIPS RISC chips. The larger is the MIPS LR3000 32-bit processor, which runs at 20MHz, and sitting right next to it is the LR3010 FPU. The pair are as tightly coupled functionally as they are physically, with one of the highest parallelism ratings of any processor pair.
The 4D/25's standard configuration includes 96K of 20ns cache RAM. It is divided between the data and instruction paths, yielding a 32K data cache and a 64K instruction cache.
I counted 22 VLSI chips throughout the six PCBs, including four digital signal processors from Texas Instruments, one large chip by Weitek, and many more from LSI Logic, all using the now familiar pin grid array (PGA) packages. Some surface mount technology was in evidence, very few PALs, and none of the chips were socketed apart from the VLSI and ROM devices. The overall impression was one of a very mature design.
Along with the staggering number of VLSI chips, there is quite literally stacks of RAM. The review machine came with a full 24MB, made from 100ns 1MB SIMMs. There are 16 slots for the SIMMs, and they also accept 2MB SIMMs which are the same width as standard SIMMs but have two rows of chips on the module. This gives a maximum possible system memory of 32MB. An entry-level system is supplied with 8MB of RAM, sufficient to run Unix and X-Windows but likely to show a severe loss of performance on real applications due to the amount of Unix disk swapping required.
There's more RAM, however, to serve the graphics capabilities. First, there is 5MB of dual-port video RAM which increases to 10MB when the 24-bit colour plan option is installed. Then there is an additional 5MB for overlays, underlays and buffer planes.
Lurking deep within the chassis is the SCSI drive, which can operate synchronously or asynchromously with the CPU I/O bus... a 1.5MB per second synchronous transfer rate is possible. The review machine came with a 380MB hard disk, and there are options up to 3.5 Gigabytes. Tape drives of 60MB and 150MB are available and slot in easily behind the door on the front of the unit, as does the 3.5in floppy drive option. A second SCSI device can be daisy-chained to the internal drive via a SCSI port located within the system unit, including a 5.25in floppy drive.
Finally, the whole system is powered by a 350 Watt PSU located along the top of the machine just behind the fan. The fan is quite noisy, and will speed up if the temperature climbs too high.
The R3000 processor uses a 32-bit 20MHz CPU bus to communicate with its FPU and cache memory. The cache is implemented as a direct-mapped array and uses a write-through policy. To speed up write cycles, a write buffer is used between the CPU bus and main memory. This allows the processor to continue to use the CPU bus while the write buffer takes care of the data transfer to main memory. The main memory itself sits between the CPU bus and the I/O bus, and has a direct route to the graphics subsystem.
The I/O bus runs at 10MHz and is 32 bits wide, giving a theoretical maximum bus bandwidth of 40MB per second, and runs asynchronously to the CPU bus. This means that higher clock speed versions of the CPU subsystem can be developed without affecting the rest of the system. Other devices connected to the I/O bus include two VLSI gate arrays providing interfaces to system resources, and a VME slot.
The graphics subsystem consists of four main areas. First there is the CPU-to-graphics subsystem interface, responsible for distinguishing between pixel data and graphics commands and distributing them appropriately.
Second there is the geometry subsystem, which scales and manipulates coordinates and graphics primitives such as lines, polygons, characters and splines. It can also take into account different lighting modes when calculating position and visibility. It uses its own internal microcoded processor capable of 20Mflops and a micro-store holding hand-coded graphics routines.
Next is the raster subsystem, which converts line and polygon information into pixel data and loads it into the frame buffer. It also converts depth information into z-buffer data, and provides hardware anti-aliasing and dithering.
Finally, the display subsystem sends frame-buffer data to the display via three 8-bit D/A converters. The design of the mouse and AT-style keyboard matches the high quality of the rest of the system. The mouse, an optical type with 200 dpi resolution, comes with a suitable mat. Left-handed people will appreciate the fact that the keyboard can accept the mouse connector on either the left or right. The keyboard is quite simply the best I've ever used, with good tactile feedback, just the right amount of key travel, and a slight click to each key press.
The monitor is an RGB tilt-and-swivel 19in Hitachi with a maximum resolution of 1280x1024. The display is sharp and rock-steady due to its 60Hz non-interlaced refresh rate. Although a 16in version is available, giving a maximum resolution of 1024x768, there is no equivalent monochrome option. Silicon Graphics has never had any interest in producing monochrome systems.
The Personal Iris is a fairly conventional Unix workstation in all areas except one - its graphics. This standard configuration generates 256 colours from a palette of 4096, and it's a fairly modest standard which can be reached by most PCs by using enhanced VGA adapters. What makes even the base version of the 4D/25 special is the way the graphics architecture is fine tuned for pixel and vector operations to generate 3D perspective, hidden-line removal, and lighting sources.
The 4D/25's frame buffers, which hold the image to be displayed, have to store 12 bits of information in the standard configuration for every pixel location. Eight of these are used to define the colour of a particular pixel, while two are used for storing the status of overlay and underlay images allowing fast flipping between images for smooth animation, or between pop-up menus and windowing backgrounds. A further two bits per pixel is used by the Silicon Graphics window manager for keeping track of window position and visibility.
An example of the 4D/25's hardware graphics functions can be found in its manipulation of three coordinates (x, y, z) for 3D effects. The processor needs to know about the z component of an object in order, say, to calculate perspective or spin objects. But the z information - that is, the depth value - is not actually needed for drawing to the screen because the final image is two-dimensional, so it is frequently used only by the CPU. Silicon Graphics uses an area of RAM as a z-buffer, which holds the z value, for a given pixel. The graphics processor uses this to determine if a particular pixel is visible or hidden. The 4D/25 supports up to 24 z-buffer planes allowing it to resolve depth detail as fine as you are ever likely to see.
Another graphics feature supported in hardware is dithering. Hardware logic is used to rapidly generate near-photographic quality images using only 12 of the available 24 colour information bits. Its main application is in the use of double buffering to produce smoother frame redraws for animation, which is at the expense of a reduction in colour information; hardware dithering helps reduce the effects of colour loss without reducing the frame rate.
Using the Supergraphics option, the Personal Iris is capable of 24 colour-bit planes, 24 z-buffering planes, and a further 8 for overlays, underlays and double buffering. This gives a total of 56 separate planes, and real-time photographic quality 3D image manipulation.
The 'geometry engine' is the heart of the graphics subsystem, responsible for rotating, scaling, and translating 2D and 3D coordinates. It also maintains information on the position, direction, and intensity of point-source lighting. The shading of a rotating 3D object can be calculated rapidly enough to be incorporated in successive frames so that the movement appears very smooth. It can even take into account moving light sources, with the perspective of the viewer changing as well as the object position. Remember all this is performed smoothly and in full colour - up to 16.7 million shades.
Another aspect of the geometry engine is its scan-conversion system. This is used to convert xyz 3D information into xy point information for the raster subsystem, which draws the image line by line. Changes in perspective are broken down into changes of position and colour.
The converter does not deal with images exclusively point by point. Lines are defined in terms of slope and end coordinates: polygons are broken into trapezoids and triangles, and from these into slopes and xy coordinates; the processed information is sent to the raster subsystem. This is all performed for each of the R, G and B planes so that shading information can be calculated.
Silicon Graphics' first venture into graphics workstations was 68000 based, but the company soon realised that high performance graphics could more easily be achieved from the emerging RISC technology and special compilers. It moved in 1986 to the RISC-based CPUs of MIPS Computer Systems, then one of the few contenders in RISC architecture. The MIPS R3000 is a third-generation RISC processor capable of 16 MIPs and 1.6Mflops performance when paired with its floating point co-processor. MIPS strategy for developing RISC architectures relies heavily on compiler design to extract the maximum performance. Because RISC processors use a small and extremely fine-tuned instruction set, it is important that compilers make maximum use of the instructions available.
This hardware extravaganza sits on top of Unix System V Release 3.2, with additional enhancements for interprocess communication and networking. The window manager, Irix, is a joy to use, although it does seem to be a little slow in redrawing windows if there are background processes running. This problem cannot be side-stepped by using X-Windows, however, as there seems to be no way of using X-Windows with Irix [of course, IRIX does use X Windows now, and has done since the days of the Indigo - Ian].
The Personal Iris uses a graphical interface to Unix, using a WorkSpace which is a virtual directory using 3D (yes, 3D!) icons and folders. File and directory operations can be performed by dragging and clicking just like on a Mac. Unlike the Mac, some icons are animated and treat you to a short 3D routine while you wait for an application to open a window. The GUI theme continues through other Irix functions such as system administration and electronic mail.
The software bundled with the 4D/25 is impressive and as you would expect includes 2D and 3D modelling and drawing packages, various utilities and some stunning games. QuickDraw is much like paint packages in the PC world, but obviously the resolution and colour range is far better. QuickModel, a 3D modelling package, is remarkably easy to drive: the results are quite impressive after only an hour at the screen, although the shapes you can produce are limited by the number of polygons available. The Iris Visualiser is only slightly more difficult to master and gives stunning, fully rendered 3D images.
More than 500 applications are currently available for the Personal Iris series, including ones for video post-production, CAT scan image analysis, and real-time animation. If you want to run a spreadsheet though, even in 3D, then your options are going to be limited to basic Unix terminal software.
Prices start at 10,300 UKP for a 10MIPs 4D/20 with 8MB, using 8-plane graphics, a 16in monitor and 200MB hard drive. This is cheaper than some PC-based Unix machines. The entry-level 4D/25 is 15,450 UKP, the extra money buying a faster processor and larger display. Stunning graphics performance can be achieved with the Turbo Graphics option, which adds another 3450 UKP to the price tag along with 24-bit colour. The SuperGraphics option will take you all the way up to hardware 3D support for an extra 5000.
Silicon Graphics' decision to launch into graphics market looks set to be a big success. Professional graphics performance, for which the Personal Iris is designed, requires considerable investment. I would be much happier about spending money on a system built by a manufacturer with years of experience at the top end of the market than one attempting to launch itself into upmarket systems.
Silicon Graphics believes the lower prices in the Personal Iris range will encourage existing customers to buy more machines, but I think the company under-estimates the appeal of low-price high performance graphics. This, and the growing popularity of Unix, can only mean further exciting developments in this area.
Personal Iris 4D/25:
Manufacturer: Silicon Graphics CPU: 20MHz MIPS R3000 RISC processor with R3010 FPU RAM: 8MB 100ns RAM expandable to 32MB, 96k cache RAM Mass storage: 200MB SCSI hard disk. Options for 380MB or 640MB hard disks, 3.5in floppy drive and 60MB or 150MB tape drive Display: 8-bit plane graphics with maximum resolution of 1280 x 1024 and 5MB dual port video RAM. Hitachi 19in tilt-and-swivel colour monitor I/O ports: Two RS232 serial, one Centronics parallel, one Ethernet, one VME expansion slot. AT-style keyboard, three-button optical mouse. O/S: Irix (Unix AT&T System V Release 3.4), X-Windows