Ikonas Graphics Systems - The world's first GPGPU

by Nick England - send e-mail

My Ikonas history article in IEEE Computing Edge (page 25)

Also see the Computer Graphics History page

10/05/14 - Video - 1984 demo reel of Solid 3000 rendering
10/11/14 - Video - 1984 demo of real time image decoding & animation
10/11/14 - Video - 1984 demo of IDL and real time graphics
10/11/14 - Video - 1984 demo of FSS graphics subroutine package
10/11/14 - Video - 1984 demo of Seismic 3000 display package
10/12/14 - Video - 1984 demo of RTI/NASA cockpit display using IDL
10/17/14 - Video - 1985 demo of NC tool path simulation (dexels)
10/25/14 - Video - 1984 demo of medical imaging routines

More videos coming some day!


2023 news - Ikonas goes to SIGGRAPH! Well, some Ikonas boards and videos did. The 50th SIGGRAPH conference was held in Los Angeles Aug 5-11 and we displayed several Ikonas circuit boards in the History Exhibit area. The demo videos listed above were shown on a rotating basis with many more historic computer graphics videos.
sig23-IMG_3123.jpg (4339958 bytes) ikonas-sig23-IMG_3124.jpg (4698346 bytes)

NCSU Prototype Frame Buffer
RDS-2000 Matrix Multiplier
RDS-2000 Video Output

ikonas-sig23-IMG_3125.jpg (5649603 bytes)

RDS-3000 Frame Buffer
RDS-3000 Matrix Multiplier
RDS-3000 Processor

ikonas-sig23-IMG_3127.jpg (2956185 bytes)

Literature and T-shirts

2005 News - Still useful after 25 years! We introduced the Ikonas RDS-3000 in 1980 and as of July 2005 there were at least 5 systems still in daily use (driving cockpit displays in the USAF B-1 Cockpit Procedures Trainer). 

Update 2007 - I understand they have finally replaced the Ikonas RDS-3000 systems with PC-based graphics.- That's 30 years since I got the prototype system running at NCSU.

Update 2015 - Rumor has it that Phillips Petroleum used their Ikonas system until 2013

b1-cockpit.jpg (197707 bytes)

sg98_ikonas.jpg (106664 bytes) July 1998 Demo- Thanks to Garret Dunn (former Ikonas engineer) and Bill Cowan (University of Waterloo - "Graveyard of the Ikonas boxes"), Mary and I exhibited a working Ikonas system at the 25th anniversary SIGGRAPH conference in Orlando in July 1998. We ran the "accept" microcode demo, hosted by our original Heathkit LSI-11 with an 8" floppy disk drive. It worked perfectly the whole show. We  essentially recreated our SIGGRAPH '81 booth with some signs, posters, and demo video tape. We also showed the NYIT Ikonas demo reel thanks to Paul Heckbert. Lots of old Ikonas customers came by to say hello, including one who was still using his 15 year old system regularly.
Customer List - We put together an Ikonas customer list for the SIGGRAPH retrospective. Please e-mail me with any additions or corrections.

History - See article in IEEE Computing Edge (page 25)

Ikonas Graphics Systems Inc. was founded in 1978 by Mary Whitton and me, based on work I did as a grad student at North Carolina State University in the Computer Graphics Lab headed by Prof. John Staudhammer. 

As part of a project funded by NASA Langley Research Center, I had developed a programmable graphics processor and raster display system for cockpit instrumentation display. (See my paper in SIGGRAPH 78). Several people expressed interest in acquiring something similar so Mary and I started Ikonas in the back room of our house to make a commercial version. Robert Whitton was a partner in the business from the beginning and later Pete Evans and Henry Rich became partners also. At one point Ikonas had around 50 employees in Raleigh NC. 

We joined USENET in 1982. 
From: utzoo!decvax!harpo!duke!unc!mcnc!ikonas!mcm Newsgroups: net.general 
Title: Ikonas on USENET Article-I.D.: ikonas.9 
Posted: Sun May 16 15:14:24 1982 Received: Mon May 17 00:35:42 1982 
This message is to inform anyone who is interested that Ikonas Graphics Systems, Inc., has joined USENET.

We showed the first production  Ikonas Raster Display System (RDS-2000) at SIGGRAPH '79 and introduced an improved compatible system as the Ikonas RDS-3000 in 1980. (Retroactively, we named the prototype system the RDS-1000.) Ikonas was acquired by Adage Inc in 1982 and the Ikonas system continued to be marketed as the Adage 3000 Raster Display System. I'd guess almost 400 systems were sold before Adage finally pulled the plug around 1987. As of 7/05 at least five were still in daily use, a minor miracle in the computer business. 

There were lots of great people who were part of Ikonas and Adage and we had lots of great (and patient) customers. 

Thanks for the wonderful experience.
Nick England

Further Info - For some more info on the system, see an article I wrote in the January 1986 IEEE Computer Graphics and Applications magazine. Also see Tim Van Hook's SIGGRAPH 86 paper covering some amazing real-time solid modeling microcode he wrote for the Ikonas graphics processor.

June 1985 -  Tim Van Hook's ray tracing code rendering bi-cubic B-spline and polygonal surfaces entirely within the Ikonas Programmable Graphics Processor (world's first GPU ray-tracing)
ik-poster-1.JPG (105661 bytes) ray-pda-01.jpg (201591 bytes) ray-pda-02.jpg (189260 bytes) blender-01.jpg (171975 bytes)

MARKETING LITERATURE

1978 - SIGGRAPH '78 handout (no exhibit) - first purchase order (thanks to OSU)

ik-br-78-01r.JPG (195272 bytes) ik-br-78-02r.JPG (213039 bytes) ik-br-78-03r.JPG (253030 bytes) ik-br-78-04r.JPG (170341 bytes)

1978 mailings - RDS-1000 system

ik-br-78-05r.JPG (160274 bytes) ik-br-78-06r.JPG (139828 bytes) ik-br-78-07r.JPG (221474 bytes) ik-br-78-08r.JPG (180401 bytes)

1979 - SIGGRAPH '79 exhibitor - RDS-2000 introduction

ik-br-79-01r.JPG (137376 bytes) ik-br-79-02r.JPG (235941 bytes) ik-br-79-03r.JPG (191923 bytes) ik-br-79-04r.JPG (307924 bytes)
ik-71.jpg (1292965 bytes) ik-72.jpg (848198 bytes)

1980-82 - RDS-3000 Introduction - See "Summary of RDS-2000/RDS-3000 Differences".

ik-br-80-01r.JPG (199619 bytes) ik-br-80-02r.JPG (294545 bytes) ik-br-80-03r.JPG (270949 bytes) ik-br-80-04r.JPG (339875 bytes)
ik-73.jpg (1288287 bytes) ik-80-02.JPG (226620 bytes) ik-br-81-01r.JPG (330974 bytes) ik-br-81-02r.JPG (269698 bytes)
1980 magazine ad
ik-ad-80-1r.JPG (292963 bytes)
1981-82 magazine ad
ik-ad-81-1r.JPG (333184 bytes)
1982 magazine ad
ik-ad-82-1r.JPG (292711 bytes)
1985 Poster - Ray-tracing in Ikonas GPU

ik-poster-2.JPG (108354 bytes)

1984 - pdf download of brochure shown below - Ikonas 3000 renamed Adage 3000

ad3000-1.JPG (197215 bytes) ad3000-2.JPG (254303 bytes) ad3000-3.JPG (289317 bytes) ad3000-4.JPG (332247 bytes)
ad3000-5.JPG (263203 bytes) ad3000-6.JPG (343910 bytes) ad3000-7.JPG (295779 bytes) ad3000-8.JPG (405692 bytes)

Architecture - Download Ikonas User's Manual

Ikonas developed flexible, programmable, high end graphics and imaging hardware for research and advanced application groups. The system was based around a 32 bit data, 24 bit address synchronous bus into which various boards could be plugged. Everything within the system was memory mapped into this 24 bit address space. A host interface was provided with address registers to access anything on the bus. Thus, unlike other systems at that time, the host computer could transfer data directly to/from image memory, or could communicate with the optional programmable graphics processor via shared memory.

ik-block-301.jpg (336095 bytes)

Major elements of the Ikonas system were a flexible frame buffer for display and a user-programmable graphics processor for performing graphics and imaging functions. The frame buffer resolution and timing could be set via control registers. The graphics processor included 32 bit integer ALU and 16x16 bit integer multiplier along with address counters, loop counters and the like, all controlled by a 64 bit instruction word. Initially we just had a microcode assembly language compiler (IKASM), but later Preston Gurd at University of Waterloo developed a C compiler as did Gary Bishop at UNC-CH. Our customers wrote many different kinds of applications  that ran on the Programmable Graphics Processor - from image processing to 2D paint (flood fill) to advanced 3D image synthesis. Our group also developed code for functions like solid modeling, ray tracing, volumetric rendering, as well as conventional 3D graphics and image processing.

Other plug-in boards developed during the lifetime of the system include:

  • programmable 16 bit graphics processor with 16 pixel-at-once parallel write AGG4
  • programmable 16x16 bit matrix multiplier MA1024
  • programmable floating point matrix multiplier
  • hardware Z-buffer (frame buffer memory with internal compare and conditional write)
  • real-time alpha-blend hardware for two RGB images
  • 68000 processor with hard disk running UNIX(tm)
  • real-time RGB video frame grabber VI24
  • interfaces to DEC, ModComp, Rolm, Data General, and a bunch more computers
  •  
  • Our customers also developed some special purpose plug-in boards

 

RDS-2000 Front Panel
ikonas-2000.jpg (101977 bytes)

Hardware -  more photos to be added some day - see below

RDS-1000 prototype frame buffer (512 x 512 x 8) in rack, Heathkit LSI-11, 8" floppy disks, ADM-3 terminal, Summagraphics BitPad tablet
ikonas-lab.jpg (164447 bytes)

RDS-1000 system 512 x 512 8
4 memory boards, frame buffer controller, video lookup memory, video DACs. interface to host computer
rds1000-201.JPG (1780875 bytes)

 

RDS-2000 with Heathkit H-11
(Q-bus to Unibus converter below RDS-2000)
ik-2000-01.jpg (301586 bytes)

RDS-2000 power supplies +5V (for TTL), +12V (for DRAM), -5.2V (for ECL and DRAM bias), +/-15V (for video A/D and D/A)
PICT0017.JPG (1939609 bytes)
RDS-3000
dr64-01.jpg (173196 bytes)

DR64B frame buffer board - about 15" x 15" with 128 16K DRAM chips

Each board displayed  512x512x8 or 1024x1024x2. Twelve boards were needed for a 1024x1024x24 full color system.

dr64-02.jpg (283863 bytes)

DR64B wire-wrap side.

This one is machine-wrapped.
Earlier ones were hand-wrapped.
Later ones were multi-layer printed circuit.

 

 

CB12 - card cage for 12 wire-wrap boards
3000-cb12-301.jpg (315942 bytes)

3000-front-301.jpg (312407 bytes)

CB12 rear views showing power supplies
3000-rear-301.jpg (306938 bytes)

3000-ps-301.jpg (295125 bytes)

BPS32 processor (center), MCM4 microcode RAM (right), SR8 scratch pad RAM (left)
PICT0010.JPG (2207714 bytes)
RDS-3000 in CB24 card cage
PICT0009.JPG (797948 bytes)
Dave Sieg's collection of RDS-3000 systems left over from Omnibus
Dave_Seig.jpg (106273 bytes)
periph-01.JPG (63107 bytes)
PCP Peripheral Control Panel analog & digital interface with Switch Box and Dial Box

Software

Download Ikonas Programming Reference Manual

We developed a great deal of microcode, covering 3-D graphics, image processing, seismic data display, flight simulation, ray tracing, and interactive solid modeling. Download PDF of data sheets shown below for FSS, Seismic-3000, Solid-3000 packages

Solid-3000 Microcode Package

3000-sol-01.JPG (1282834 bytes)

This package of microcode routines provided anti-aliased lines, z-buffered polygons, Phong shading, texture mapping, bump mapping, transparency, adaptive subdivision of bi-cubic B-spline surfaces, etc.

NEW 10/05/14 - Video - 1984 demo reel of Solid 3000 microcode package in action

NEW 10/11/14 - Video - 1984 demo of real time image decoding & animation

teapot.png (272770 bytes)

Teapot display at the Computer Museum in Boston 1985-89?
On the left was a monitor case with Martin Newell's famous teapot, lit by various colored lights.

On the right was a display driven by an Ikonas RDS-3000 running our Solid-3000 microcode, with adaptive subdivision B-spline patch rendering. Press the "RENDER" button and the Ikonas would re-render with shading to match the physical lights. - Photo courtesy of Steve Baker & his Utah Teapot site

3000-sol-02.JPG (1130568 bytes) 3000-sol-03.JPG (1029109 bytes) 3000-sol-04.JPG (749342 bytes) 3000-sol-05.JPG (649323 bytes)

Seismic-3000 Microcode Package

3000-seis-01.JPG (1164281 bytes)

3000-seis-02.JPG (367490 bytes)

seis-02.jpg (272991 bytes)
"Wiggle Trace" display - interactive curves drawn directly in microcode from seismic data

This package of microcode routines provided a variety of display techniques useful for 2D and 3D seismic data set interpretation.

seis-03.jpg (38087 bytes)
Sub-surface display using transparent surfaces

 

NEW 10/11/14 - Video - 1984 demo of Seismic 3000 display package

seis-01.jpg (176148 bytes)
Interactive 3D volume slicing of seismic data. Most of the same functions got included in our medical imaging package.

3000-seis-03.JPG (1258893 bytes) 3000-seis-04.JPG (1146776 bytes) 3000-seis-05.JPG (1161977 bytes) 3000-seis-06.JPG (703768 bytes)

IDL2 Ikonas Display Language Microcode Package

A real-time display language including anti-aliased vectors, 3-D transformation, and visible surface sorting. The entire display program would be compiled in the host computer, get downloaded and then run completely in the Ikonas processor, with the host processor updating transformation parameters, etc. in shared memory.

eadi-01.jpg (32256 bytes)
Real time display for cockpit instrumentation - written by RTI for NASA-LRC
 NEW 10/11/14 - Video - 1984 demo of IDL and real time graphics

NEW 10/12/14 - Video - 1984 demo of RTI/NASA cockpit display using IDL

 --

FSS - Fortran-callable graphics routines for general 3-D graphics

NEW 10/11/14 - Video - 1984 demo of FSS graphics subroutine package

3000-fss-01.JPG (1006865 bytes) 3000-fss-02.JPG (991356 bytes) 3000-fss-03.JPG (707663 bytes)

Customers

Early customers got a set of interface drivers, Fortran read/write/display control routines, and for the optional programmable graphics processor, a microcode compiler (IKASM) and 3D graphics routines (IDL). Later, several C compilers and application libraries were available for the programmable graphics processor. Customers were strongly encouraged (!) to develop their own code. They came up with all sorts of interesting and imaginative ways to use the system. Ikonas display systems were used for the "Genesis Planet Sequence" in Star Trek:The Wrath of Khan, for the video games in Superman III and for a bunch of TV commercials, as well as for a lot of serious scientific and engineering work.

Customer List - We put together an Ikonas customer list for the SIGGRAPH retrospective. Please e-mail me with any additions or corrections.

texas-01.jpg (37643 bytes)
Z-buffered polygon rendering microcode written by our first customer - UT Health Science Center-Dallas
phillips.jpg (59415 bytes)
Paul Hauge at Phillips Petroleum
 USC/ISI packet video with their add-on Video Engine
isi-video-01.jpg (395047 bytes)
Tufts-New England Medical Center
ik-cust-01.JPG (398084 bytes)
AT&T Bell Labs Murray Hill
ik-cust-02.JPG (407786 bytes)
Ship Analytics
ik-cust-03.JPG (352811 bytes)
Digicon Inc.
ik-cust-05.JPG (205392 bytes)
ik-cust-01a.JPG (402346 bytes) ik-cust-02a.JPG (398962 bytes) ik-cust-03a.JPG (399877 bytes) ik-cust-05a.JPG (430329 bytes)


From "Life Before the Chips: Simulating Digital Video Interactive Technology" by Douglas F. Dixon. Communications of the ACM, July 1989, pp 824-831.
"From our first Ikonas system delivered in November 1981, this remarkably powerful and flexible machine was a major part of our success in communicating the vision of DVI, and nurturing it until the chips arrived in December 1987. Some of that flexibility and power also lives on in its influence on the design of the DVI chip set. The more expressive the simulation environment for a product concept, the more ideas can be explored and prototyped for the final design, and the more likely that features of the simulation system become incorporated in the product."

From "Hardware Support for Multitasking Graphics" by William Cowan, Christopher Wein, Marcelli Wein, Kellogg S. Booth. Graphics Interface '91 proceedings, June 1991, pp 199-206.
"Finally, it is interesting to note that the interface construction discussed in this paper and the further enhancements discussed in this last section are easy to carry out in the [Ikonas] RDS-3000, a decade old design. Its flexibility, modularity, and openness make it possible to design and substitute components in a way that cannot be done with newer designs offering higher graphics performance at the cost of closed hardware. Systems like the RDS-3000 may be unsuitable for the production graphics that makes up the vast bulk of the market, but they are the life blood of laboratories that conduct research into new techniques for combining computation and graphics."


Ikonas People - many more photos to be added some day

 1978-79 - 1200 Carlton Ave - Nick & Mary's back room - RDS-1000 prototype

Partially-completed model railroad was disassembled to make room for Ikonas
carlton-rr-01.jpg (159842 bytes)
carlton-rr-02.jpg (138184 bytes)

 

Turned into office and lab space - Mary writing code for the Heathkit LSI-11
carlton-mcw-01.jpg (1906860 bytes)
The prototype 8-bit frame buffer 
ncsu-11.jpg (64771 bytes)

1979-81 - 403 Glenwood Avenue  - RDS-2000 + early RDS-3000 systems

PICT0017.JPG (2072115 bytes) PICT0019.JPG (1372137 bytes) PICT0020.JPG (1742660 bytes) PICT0030.JPG (1496993 bytes)
Early Ikonas manufacturing - RDS-2000 wire-wrap boards and testing - part-time NCSU student labor
PICT0010.JPG (1829046 bytes)
PICT0034.JPG (1168779 bytes) PICT0004.JPG (1944874 bytes) PICT0001.JPG (1361466 bytes)
PICT0032.JPG (1468424 bytes) PICT0029.JPG (1774507 bytes) PICT0027.JPG (1104706 bytes) PICT0033.JPG (1542086 bytes)

Robert McCracken
PICT0014.JPG (1476273 bytes)
PICT0021.JPG (1418344 bytes) Stan Ferrell
PICT0028.JPG (1255907 bytes)
Mary at the PC layout light table
PICT0024.JPG (1660006 bytes)
Jay Blair
PICT0025.JPG (1405302 bytes)
Jackie Brickey
PICT0009.JPG (1373412 bytes)
Robert McCracken
PICT0011.JPG (1613200 bytes)
Mary
PICT0012.JPG (1265603 bytes)
Pete Evans
PICT0003.JPG (1261452 bytes)
Barbara Evans
PICT0002.JPG (1536526 bytes)
Greg Reynolds
PICT0008.JPG (1533844 bytes)
Mike Brown (Univ. of Miami) and Mary
PICT0007.JPG (1402892 bytes)
Mary with Bob Evans (Univ. of Miami)
PICT0005.JPG (1407714 bytes)
PICT0006.JPG (1292991 bytes) Nick
PICT0031.JPG (1728021 bytes)
PICT0015.JPG (1606704 bytes)
PICT0014.JPG (1843791 bytes) PICT0015.JPG (1784914 bytes) Mike King using switch box test stand
PICT0018.JPG (1897974 bytes)
PICT0019.JPG (1948072 bytes)

Christmas Party 1980

PICT0001.JPG (1102184 bytes) PICT0002.JPG (1051922 bytes) PICT0003.JPG (1337954 bytes) PICT0004.JPG (1041855 bytes)
PICT0005.JPG (1376521 bytes) PICT0006.JPG (697280 bytes) PICT0007.JPG (1413118 bytes) PICT0008.JPG (831698 bytes)
PICT0009.JPG (797387 bytes) PICT0010.JPG (1233624 bytes) PICT0011.JPG (1108201 bytes) PICT0012.JPG (876679 bytes)
PICT0013.JPG (890195 bytes) PICT0014.JPG (630101 bytes) PICT0015.JPG (912773 bytes) PICT0016.JPG (2090336 bytes)
PICT0017.JPG (1395103 bytes) PICT0018.JPG (1128141 bytes) PICT0019.JPG (599573 bytes) PICT0020.JPG (941811 bytes)
PICT0021.JPG (493212 bytes) PICT0023.JPG (1920408 bytes) PICT0024.JPG (1142094 bytes) PICT0025.JPG (1183116 bytes)

Miscellaneous 

MA1024 matrix multiplier
ma1024-chip-hr.JPG (1771058 bytes)
MA1024 matrix multiplier
ma1024-ww-hr.JPG (2285204 bytes)
RDS-1000 prototype
ncsu-11.jpg (64771 bytes)
RDS-2000 with Heathkit H-11 and Qniverter (Q-bus to Unibus converter)
ik-2000-01.jpg (301586 bytes)
Ray- traced entirely by RDS-3000
ray-pda-01.jpg (201591 bytes)
Ray- traced entirely by RDS-3000
ray-pda-02.jpg (189260 bytes)
Ray- traced entirely by RDS-3000
blender-01.jpg (171975 bytes)
RDS-3000 in CB24 card cage
PICT0006.JPG (1328155 bytes)
RDS-3000 in CB24 card cage
PICT0009.JPG (797948 bytes)
BPS32 processor (center), MCM4 microcode RAM (right), SR8 scratch pad RAM (left)
PICT0010.JPG (2207714 bytes)
RDS-2000 power supplies +5V@200A (for TTL), +12V@60A (for DRAM), -5.2V (for ECL and DRAM bias), +/-15V (for video A/D and D/A)
PICT0017.JPG (1939609 bytes)
IEEE CG&A Magazine Vol 1, No, 1
cga-v1-n1.jpeg (3058461 bytes)
glen-ikonas-2036.jpg (733314 bytes) -- -- --

Trade Shows

PICT0022.JPG (1494475 bytes) -- -- --

 


Nick's personal home page - Nick England
Last modified:  14 Aug 2023