Original song |
Clementine |
Original artist |
Traditional |
Filk author |
Tony Duell |
Intro |
One of the best kept mysteries of the PERQ workstation CPU board is the operation of the 'Raster Op' machine - a circuit designed to combine two bitmaps and produce a result - obviously a useful function on a window-driven machine. Anyway, the following compuer filksong should at least partly remedy that. It's a virtually 100% accurate description of the graphics pipeline circuits and how the 2 bitmaps flow through them |
Raster Operations
In the wierd PERQ CPU board
Released in seventy-nine
Live some digital logic circuits
Graphics bitmaps to combine
Chorus:
Raster Ops Now! Raster Ops Now!
Through the shift and to combine
Watch the screen image updating
Through the raster op pipeline
The fifo is loaded straight from memory.
That's the first stage of our line.
Clocked in by the controlling logic
Quadwords loaded all the time.
Source data flows out of the fifo
To the shifter which shall align
The edges of updated regions
To make them easy to combine.
But each word of the destination
With 2 source words may combine
So the last word out of the fifo
is latched in the semi-pipeline
Take thirty-one bits of the source words
From the last stage of the line
The shifter shall select just sixteen
To feed on and thus combine
The destination words from memory
Through a single stage pipeline
That's all that's needed before they enter
Proms and thus with source combine
The Proms take source and destination
A new bitmap to combine
Edges of the updated region
The mask word shall now define
There is one more D-type register
The last stage of our pipeline
To send the data back to memory
Two clocks later - just in time (oooops Tine :-))
The source and destination bit fields
The shift value shall define
Subtracted by a control PROM
Thus the 2 bitmaps align
The width of the updated region
With the dest we now combine
This determines the edge positions
And the mask we can devine
A pair of small finite state machines
Shall ensure this runs to time
Control signals thus generating
For the raster op pipeline
|