Genera

Christopher J. Vogt vogt@computer.org
Fri, 3 Apr 1998 09:43:37 -0600


At 8:48 AM -0600 4/3/98, reti@wilson.ai.mit.edu wrote:
>    Date: Fri, 3 Apr 1998 09:26 EST
>    From: Chris Bitmead <chrisb@Ans.Com.Au>
>
>    > It is an application under Unix.  There was talk of extending it to
>    > taking over the whole machine, but that has (so far) never been done.
>    >
>    > Genera, on which it is based, is an entire operating system which runs
>    > on (among others) the Ivory chip architecture which Open Genera's
>emulator
>    > emulates.
>
>    To what extent is the Ivory chip specialized for running Lisp?
>    What features does it have that make running Lisp fast?
>
>Most importantly, it carries the 8-bits of tag through the entire datapath and
>memory interface.  The microengine can do tag comparison and dispatch in
>parallel
>with an operation, so for example an add instruction can assume that the
>operands
>are both fixnums and start doing the addition at the same time that the tag
>comparison hardware is comparing the tags.  If there is a mismatch, that
>microcycle
>causes the result not to be stored and a trap to be taken.
>
>The tags are not only used to identify datatypes, but also for internal
>purposes,
>i.e. the copying garbage collector has GC-FORWARD tags to serve as a
>placeholder
>for an object whose contents have been moved but for which there might
>still be
>references in virtual memory using the old addresses.
>
>CDR-coding, headers for compound structures, locatives, logic-variables,
>and even
>the instruction stream all use tag bits, and hence the tag checking
>hardware that
>is on the chip.
>
>The chip also has hardware support for ephemeral garbage collection, an
>interface
>to a co-processor, a way to do efficient burst mode transfers on the
>memory bus,
>and a special limited mode (FEP mode) for running some much more stylized Lisp
>code the load the virtual image, etc.

Kalman, did anything ever get published on the I-machine architecture?  I can't
seem to find anything.

Here are a couple of references I dug up about Genera and the 3600 architecture
that might be informative to those interested but unfamiliar with the Symbolics
hardware/software environment.

Symbolics Architecture - IEEE Computer, January 1987
The Symbolics Genera Programming Environment - IEEE Software November 1987

Christopher (Chris) J. Vogt - Computer Consultant - Lisp, AI, Graphics, etc.
http://members.home.com/vogt/