signal computation
electro-optic & mechatronic design
reconfigurable computing
social and domestic communication
demographic and lifestyle studies
new graphic architecture
human studies
new media experiments
tangible interfaces
portable and wearable devices
home media tools
digital home entertainment systems
  Reconfigurable Computing  
 
    PARTS board
Reconfigurable computing systems are computers based on hardware, most of which can be arbitrarily defined to suit the needs of the particular problem to be solved.

At Interval, we are studying both the development of reconfigurable computing systems and a number of the specific applications they make possible. Because of their inherent parallelism and low-level hardware base, reconfigurable computing systems can offer significantly better levels of performance for certain applications than conventional computing architectures. But there is much that we don't understand about reconfigurable computing. Here are some of the issues that interest us:

How should reconfigurable systems be organized? Is it possible to create a single organization that can address a wide range of problems? How do the specific requirements of an application result in bottlenecks in a reconfigurable computing system? How can these systems be programmed effectively? What kinds of languages and tools are suited to the task?

To pursue these questions, we have built a reconfigurable computer we call PARTS (Programmable and Reconfigurable Tool Set), a PCI board which can be plugged into a conventional PC.

Currently, reconfigurable computing systems are constructed from integrated circuit chips called Field Programmable Gate Arrays, or FPGAs for short. These chips typically contain a large array of small logic elements, a set of wires for connecting them, and a set of programmable switches that can be used in conjunction with the wires to create arbitrary circuits between the logic elements. The switches are controlled by data bits stored in memory on the chip. Once a particular pattern of data has been loaded into an FPGA, a corresponding complex hardware structure will be realized in it. Physical pins on the FPGA can also be connected to the logical elements in the chip allowing the hardware structure in a particular FPGA to interact with other FPGAs and other types of devices like memories or bus interfaces.

 
  The structure of an FPGA.  


The PARTS board consists of a 4 X 4 array of large FPGAs that have random access memory chips interspersed among them. Connectors on the board allow us to tie it directly to high-speed sources of data such as video cameras.


One area of interest to us has been the use of the PARTS board as a vehicle to explore applications in image and signal processing. A particularly interesting application of the PARTS board that we've studied extensively is the computation of stereo depth.

Stereo vision

References:

Shoup, R., "Parameterized Convolution Filtering in a Field Programmable Gate Array," in proceedings of IEEE FPGA '93.