Implementing Rotation Matrix Constraints in Analog VLSI

David B. Kirk, Alan H. Barr
California Institute of Technology

From Proceedings of SIGGRAPH 1993, Computer Graphics Proceedings, Annual Conference Series, New York: Association for Computing Machinery Special Interest Group on Computer Graphics (ACM SIGGRAPH), 1993, p. 45-52.


We describe an algorithm for continuously producing a 3x3 rotation matrix from 9 changing input values that form an approximate rotation matrix, and we describe the implementation of that constraint in analog VLSI circuits. This constraint is useful when some source (e.g., sensors, a modeling system, other analog VLSI circuits), produces a potentially "imperfect" matrix, to be used as a rotation. The 9 values are continuously adjusted over time to find the "nearest" true rotation matrix, based on a least-squares metric.

The constraint solution is implemented in analog VLSI circuitry; with appropriate design methodology (D. Kirk, Ph.D. thesis, Caltech, 1993), adaptive analog VLSI is a fast, accurate, and low-power computational medium. The implementation is potentially interesting to the graphics community because there is an opportunity to apply adaptive analog VLSI to many other graphics problems.

CR Categories and Subject Descriptors:

  1. C.1.2--- [Processor Architectures]: Multiprocessors - parallel processors;
  2. C.1.3--- [Processor Architectures]: Other Architecture Styles;
  3. I.3.1--- [Computer Graphics]: Hardware Architecture - raster display devices;
  4. I.3.3--- [Computer Graphics]: Picture/Image Generation;
  5. I.3.5--- [Computer Graphics]: Computational Geometry and Object Modeling;
  6. I.3.7--- [Computer Graphics]: Three-Dimensional Graphics and Realism

General Terms: Algorithms, Graphics, Hardware

Additional Key Words and Phrases: Animation, rotation, robotics, simulation, constraint solution, interaction, adaptive, analog, CMOS, VLSI.