Student Projects

Mechanical computers with logic-in-memory

Project Video

Team Members

Team Members:

卞之隽 Zhijun Bian, 纪陶然 Taoran Ji, Naina Mittal, 沈端勰 Duanxie Shen, 张群一 Qunyi Zhang

Instructors:

Jigang Wu

Project Description

  • Problem

    Mechanical computing is a function based on the successful application of mechanical computers, which can date back to ancient mechanical structures with gears and linkages. The modern mechanical computer has a principle rather similar to conventional electronic computers, yet they also differ in several aspects. For a computing machine, it can be described into a three-level hierarchy structure: computing model, computing architecture, and physical substrate. For a modern mechanical computer, it adopts the same computing model as electronic ones such as the Turing machine. For computing architecture, non-Von-Neumann architecture is a new trend for mechanical computers to adopt due to the great advantage of making calculations and storage in the same place. The physical substrate is the basic element of circuits. It regulates bit representation, defining the binary state of bits. Its structure also determines the validity of input and output types. Traditional representations mainly use motion and maneuver as input and output types, and the corresponding physical substrate passes and processes these physical signals to achieve lower-level calculation. Other properties such as heat, wave, and elastic deformation have been used as new representation methods in several new designs.


    Mechanical computers and conventional electronic computers maintain a trade-off relationship in many characteristics. In terms of computing power, a mechanical computer can solve problems that a Turing machine model can solve, yet at a relatively low speed in comparison. Mechanical computers consume much less energy during calculation at the expense of speed, making them ideal machines to serve as a supplement to a hierarchy system.

    In terms of the internal comparison of mechanical computers, there are several designs to fulfill the diversity of basic physical substrates. Origami structure, for instance, is a kind of physical substrate that make use of the elastic deformation of the material to achieve a bi-stable state to represent basic IO, and this structure can achieve 3D structural arrangement easily. Here is a short list of several designs and the comparison between them.


    The recent development of mechanical computing mainly focuses on innovations in the physical substrate and computing architecture. Since mechanical logic is targeted at certain fields, its research has not reached an advanced stage. Current study on mechanical logic attempts with a wide range of materials, but the basic principle is to use force or pressure to realize logical operation and transition. Compared to electronic computing systems, mechanic ones have an advantage in heat dissipation because they generate less amount of heat. Also, mechanic ones are more sustainable and durable because of their materials. Moreover, mechanical computers are more resistant to physical stressors and environmental conditions.

    For our mechanical computer, there are two main innovations. For the computing architecture, we will use the buffer-integrated framework instead of the traditional combinational circuit in electronic computing systems. And for the physical substrate, we will develop reprogrammable and non-volatile gates which enable signal transfer between modules. The following figure shows our basic structure of mechanical logic gates. Every logic gate has four terminals, and signals can be passed in or out through them according to the interior structure. For the meaning of signals, we assumed that when the beam bends inwards, the signal is 1, and otherwise the signal is 0.

    The figures below show the structure of our OR gate and AND gate provided by our faculty sponsor and graduate mentor, both gates have two inputs and one output, signals are passed in through the left and right side of the gate and the output is at the top of the gate. However, to simplify the mechanical circuit, we may need to come out with more designs of these gates that change the relative positions between inputs and outputs. We will also need to design structures such as XOR gate and buffer to pass signals between blocks.


  • Concept Generation

    The basic concept of this mechanical computer possesses a similar inner core as a conventional Turing machine, yet it achieves this model with apparently different means by adopting different concepts and structures. With the emphasis on properties such as stability under high radiation conditions and the ability to satisfy logic-in-memory, this design of mechanical computer generates several new concepts and applications in terms of mechanical properties and structures, from top model to basic units, in order to realize a kind of mechanical calculation unit, and providing further ideas to similar objectives.

    The top model of this machinal computer is to realize the locality of calculation and memory storage. In this model, the entire machine is considered as both a calculation component that processes the input and produces the output but also stores the input and output state inside the machine. The benefit of this feature is that no other special memory storage is needed, and it is possible to extract the signal from the circuit at any point if one wants to observe the partial result. 

    To achieve this model, this project firstly designed a series of basic calculation units, noted as ‘gates’, to both do the calculation and memory storage. A gate is a re-programmable unit that responds to the input and produces a stable output according to the Bool logic. For instance, there are gates that can realize ‘AND’, ‘OR’, ‘NOT’, ‘XOR’, and buffer gates. These gates use elastic deformation properties our their TPU beams to realize these functions. Since these gates can achieve basic Bool logic, it is possible to re-program them to different complex circuits just as conventional ICs. The second property is the bi-stable property of these gates. As the gates remain stable under two states, it is possible to directly use them as memory storage.

    The second initiative to realize the top model is to use different basic units with similar principles. It is possible to design and adopt gates that can recognize thermal differences or ultrasound wave differences. After many considerations, elastic deformation gates are adopted in this project, and we welcome others to go deeper in other directions.

    To achieve the elastic deformation gates, we proposed several different designs regarding the gate design. Mainly, in order to ensure functionality and correctness, parameters of the gate such as location, thickness, and shape of the beam are of vital importance. For the concept generation part, we eliminated several not reliable designs such as the AND gate, replacing them with the OR gate, which has a thicker central beam and a smaller possibility of breaking down.

    In conclusion of this part, we chose finally decide to use reliable computing units to ensure both functionality of calculation and the ability of memory storage.


    The main goal of the logical circuit design part is to design a logic circuit for a 1-bit full adder based on realistic logic gate blocks. 

    The theoretical reference diagram of a 1-bit full adder is shown in the figure below. The 1-bit full adder has three inputs: A,B and Cin, and two outputs: S and Cout. The logical circuit design should accomplish the same function to add two binary numbers and find the sum using the mechanical logical gates.

    The logical circuit design is completed under the premise that all the basic gates can work normally, and different types of gates used is increased or decreased according to the specific design situation.

    Taking the simplification of structure and the convenience of practical application into consideration, the third logical circuit design of one-layer structure is created. A total of 14 gates are used in the design, including 8 Buffer gates, 1 OR gate, 2 symmetric AND gates, 1 Bridge Buffer gate and 2 asymmetric XOR gates. its dimensions are three blocks horizontally and five blocks longitudinally. The logical circuit design is shown in the figure below, where the blank block represents the Buffer gate.



  • Design Description

    A figure of our final product is shown below. The PLA base has two different types. One is for common gates and the other is for bridges. Both can be produced by 3D printing. Each base can be connected to a neighboring one by inserting the tiny PLA piece in the slots at the corner. The layout of all the gates we used is also listed below. They are also produced by 3D printing. All gates except for the bridge are uniform in the vertical direction. The input and output terminals are set to zero initially. When an input terminal is pushed or pulled, the result at the output terminals will change accordingly. All parts in our product are made using the devices in SJTU without additional cost.


  • Validation

    So far, manufacturing of a non-volatile logic in memory system through the use of bi-stable mechanical gates is done, achieving fast communication speed through specially designed transmission modules. Also, the product has low spatial consumption due to layout optimization, which reduces the number of gates needed to 15. The factor of being environmentally friendly by using TPU, PLA, and Aluminum materials is also considered. Additionally, it also helps reduce the project budget to 0 because all of them can be done for free using the services provided by JI and SJTU.

    Besides all the qualitative engineering specifications listed above, there are also several quantitative specifications that can be tested for the prototype.

    The longest transmission path needs to be larger or equal to 8 since 8 is the critical path for the final design. It will be tested by connecting several buffers together and checking how long the deformation of logic gates spread. For the calculation speed, the record of the time between the signal input and output is computed, it must be less than 1s so that it can demonstrate a better performance. For the minimum force, a spring dynamo meter is used to record the force it needs to input the first signal, the expected outcome is less than 60N since it's the force that normal people can inflict through fingers. Finally, for maximum input frequency, it must be larger than 4Hz since it's the fastest speed so one can switch the logic gates, and test it by observing whether it can function correctly under such speed. For durability, several trials are conducted to ensure the logic gate can bare at least 1000 times signal transferring. The expected outcome is set to only 1000 times since the final design is just a prototype made of basic materials that we can get on campus.

  • Modeling and Analysis

    As a newly developed field, mechanical computing needs further investigation and research, with plenty of difficulties and obstacles awaiting. Here we present several potential problems, having the expectation of solving them in the future.

    The first potential problem is the difficulty in transferring the signal to a relatively long distance, or in other words, the absence of an equivalent concept of wires in electronic circuits. In practice, to pass the signal without changing the digital state of it, this project uses long buffers to transfer the signal from one end to another. This characteristic, however, disables many possible layouts due to the difficulty of overlapping the signal. It also raises many potential restrictions to gate directions layout inside the circuit, as the buffer can only redirect the signal in certain directions.

    The second problem is that the circuit has a limit in the critical path due to its non-volatile properties. To change one gate from one bi-stable state to another, a force is needed to push the beam to make it deform. Since in the critical path, such force is responsible for the elastic deformation of all gates along the path, when the number of gates increases, it becomes more and more difficult to change states.

    The last problem that can be researched in the future is the logic synesis process of the circuit. It is possible to conclude each gate as a mathematical expression with dimensions regarding IO and direction. After that, it is also possible to use this abstract expression for circuit layout optimization when the number of gates increases exponentially.

  • Conclusion

    This project primarily focuses on the design and manufacturing of a mechanical computing device that incorporates various types of logic gates. These logic gates serve as components capable of transferring signals within the circuit. Furthermore, they possess properties such as logic-in-memory and state storage features. These characteristics have become increasingly important in recent years due to the advantages they offer over electronic computing systems. Although mechanical computing may be slower in comparison, it provides greater reliability, considering factors such as heat dissipation, environmental impact, and durability. Moreover, mechanical systems exhibit resilience against physical stressors and environmental conditions, which electronic systems are susceptible to, such as radiation and extreme temperatures.

    The objective of the project is to design mechanical transistor-based logic gates using a computing architecture and physical substrate. By utilizing these logic gates, a basic full adder is constructed to perform fundamental arithmetic calculations.

    In a nutshell, this project strives to explore improved designs of mechanical computing devices as a viable alternative to electronic computing, presenting a significant challenge to the existing mechanical computing devices currently in use. As this concept is relatively new in terms of research interest, it presents both challenges and opportunities.

    Regarding challenges, there are several key areas to address, including the development of new design rules and computing techniques, surpassing binary abstraction, and establishing compiler design rules for unconventional substrates. Despite these challenges, the field offers numerous opportunities, making it worthwhile to invest efforts in this area.

  • Acknowledgement

    We would like to express our gratitude towards Professor Jigang Wu, Professor Jaehyung Ju, Ph.D. student Bihui Zou and everyone that helped us through organizing and manufacturing during this project.
  • Reference

    [1] YASUDA H, R.BUSKOHL P, GILLMAN A, et al. Mechanical computing[J/OL].Nature, 2021, 598: 39-48.https://www.nature.com/articles/s41586-021-03623-y. DOI: https://doi.org/10.1038/s41586-021-03623-y.

    [2] ION A, WALL L, KOVACS R, et al. Digital mechanical metamaterials[C/OL]//2017. DOI: 10.1145/3025453.3025624.

    [3] HELOU C E, GROSSMANN B, TABOR C E, et al. Mechanical integrated circuitmaterials[J/OL]. Nature, 2022, 608: 699-703. https://www.nature.com/articles/s41586-022-05004-5. DOI: https://doi.org/10.1038/s41586-022-05004-5.

    [4] Aluminum alloy[EB/OL]. www.makeitfrom.com/compare/6061-AlMg1SiCu-3.3214-H20-A96061-Aluminum/Polylactic-Acid-PLA-Polylactide.

    [5] Acrylonitrile butadiene styrene[EB/OL]. https://www.makeitfrom.com/material-properties/Acrylonitrile-Butadiene-Styrene-ABS.

    [6] Material property dataallowbreak[EB/OL].https://www.matweb.com/search/DataSheet.aspx?MatGUID=d8372f02c783431cb1c630fa078aa092&ckck