spi home    people    projects    publications       gallery    courses    internal    demos    media lab home
         
 
     
 

 

  

  

Our holovideo-cheops is diagrammed below. Although cheops itself can be used to compute holograms, we primarily use it as a framebuffer for the display. Our cheops contains an M1 memory card, a P2 processor card, 6 O1 output cards, a HIPPI module, and some special-purpose hardware (not shown) for assembling holographic stereograms.

 
 

 

 

 

Cheops is an image processing system developed by the Entertainment and Information Systems group at the MIT Media Lab. It was designed to be a modular and bus-oriented system, and was intended for video coding and other image processing -intensive applications. The hybrid cheops system shown above was developed for our holographic video experiments.

Cheops M1, P2, and O1 modules are connected to each other through two types of buses as shown above, the Global bus and the Nile. The slower, 32-bit Global bus is used primarily for supervisory communication and for small data transfers between modules. The two 24-bit Nile buses (120MB/s) are used for high speed transfer of large blocks of data; the two Niles may be used independently, but each module can engage only one Nile transfer at a time. Further, only one module can drive a Nile bus at a given moment in time, but several modules can receive data from the Nile simultaneously.

The P2 contains 32MB (8 banks of 4MB each) of dual-ported memory, the local processor (an Intel 80960CA Microcontroller), and additional special-purpose processing units as well. The P2 supports two serial connections, and a SCSI interface to the host computer. In our setup, we use an SGI Onyx (running Irix 5.3) as the host. Cheops programs are cross-compiled for the P2's' i960 on a Decstation (running DEC ultrix 4.3), and are downloaded from the host SGI, initiated and communicated with by the chex (cheops execute) utility, also running on the host SGI. For instance, utilities for loading and displaying both single and sequences of hologram frames (along with hologram data) are downloaded to and executed on the P2 in this fashion.

Approximately 10 36MB holograms can be downloaded and stored on Cheop's M1 memory module, from which they can subsequently be transferred rapidly, via the Nile, to the output cards for display. Holograms can be slowly loaded from the host to the M1 over the SCSI link (at about 10Mbits/s), or can be sent via a faster HIPPI connection (100MB/s) to either the M1 or the O1s for immediate display. The latter is the fastest channel available from a host machine to the output cards.

Holovideo's cheops has 6 O1 output modules which function as the display framebuffer. The O1s are configured to support the unconventional aspect ratio of the mark-II's holographic frames (256Ksamples x 144). The O1s represent and display data in rgb format; to take advantage of this built-in3-channel structure (reflected throughout cheops), we store and transfer our hologram lines in groups of three, called triplets. So for instance, instead of outputting 3 channels of (r,g,b) plus sync, a single O1 outputs hologram lines (0,1,2) or (18,19,20) plus sync. All together, the 6 O1s clock 18 hologram lines out of cheops simultaneously; after 8 cycles, all 144 hologram lines have been sent out to the display.

We are currently phasing out cheops, the cross-compile environment and the host computer, and are replacing them with a newer computational subsystem (CHIDI), also being developed at the Media Lab for the mark-II holovideo system.

 

For more information on cheops, visit the cheops project page, or the cheops publications page.