[
    {
        "id": "authors:thcpj-wfb23",
        "collection": "authors",
        "collection_id": "thcpj-wfb23",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20160901-124814686",
        "type": "book_section",
        "title": "DD1: A QDI, Radiation-Hard-by-Design, Near-Threshold 18uW/MIPS Microcontroller in 40nm Bulk CMOS",
        "book_title": "Asynchronous Circuits and Systems (ASYNC), 2015",
        "author": [
            {
                "family_name": "Keller",
                "given_name": "Sean",
                "clpid": "Keller-S"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Moore",
                "given_name": "Chris",
                "clpid": "Moore-Chris"
            }
        ],
        "abstract": "This paper describes DD1, an asynchronous radiation-hard 8-bit AVR^\u00ae microcontroller (MCU) implemented in TSMC 40LP, a low-power bulk 40nm CMOS process. Designed for extreme reliability, DD1 uses quasi-delay-insensitive (QDI) asynchronous logic and contains full-custom radiation-hard memories and logic cells. The chip was found fully functional on first silicon over a range of operating voltages from near-threshold (500mV) to above the nominal V_(DD) (1.1V). It qualifies as both ultra-low power (&lt;;100\u03bcW/MHz) and radiation-hard by design. At 550mV the MCU operates at 1MIPS with a power consumption of 18\u03bcW/MIPS. At 1.1V it runs at 20MIPS consuming 75\u03bcW/MIPS (1.5mW total). After extensive testing, it was found to be total-dose and latch-up immune and has an upset immunity of 2E-6 SEE/device-day (CREME96 geosynchronous near-earth orbit).",
        "doi": "10.1109/ASYNC.2015.15",
        "isbn": "978-1-4799-8716-0",
        "publisher": "IEEE",
        "place_of_publication": "Piscataway, NJ",
        "publication_date": "2015-05",
        "pages": "37-44"
    },
    {
        "id": "authors:m9w4x-8r742",
        "collection": "authors",
        "collection_id": "m9w4x-8r742",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20141106-133106801",
        "type": "article",
        "title": "A Compact Transregional Model for Digital CMOS Circuits Operating Near Threshold",
        "author": [
            {
                "family_name": "Keller",
                "given_name": "Sean",
                "clpid": "Keller-S"
            },
            {
                "family_name": "Harris",
                "given_name": "David Money",
                "clpid": "Harris-D-M"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "Power dissipation is currently one of the most important design constraints in digital systems. In order to reduce power and energy demands in the foremost technology, namely CMOS, it is necessary to reduce the supply voltage to near the device threshold voltage. Existing analytical models for MOS devices are either too complex, thus obscuring the basic physical relations between voltages and currents, or they are inaccurate and discontinuous around the region of interest, i.e., near threshold. This paper presents a simple transregional compact model for analyzing digital circuits around the threshold voltage. The model is continuous, physically derived (by way of a simplified inversion-charge approximation), and accurate over a wide operational range: from a few times the thermal voltage to approximately twice the threshold voltage in modern technologies.",
        "doi": "10.1109/TVLSI.2013.2282316",
        "issn": "1063-8210",
        "publisher": "IEEE",
        "publication": "IEEE Transactions on Very Large Scale Integration (VLSI) Systems",
        "publication_date": "2014-10",
        "series_number": "10",
        "volume": "22",
        "issue": "10",
        "pages": "2041-2053"
    },
    {
        "id": "authors:92yk4-35643",
        "collection": "authors",
        "collection_id": "92yk4-35643",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20140206-111915844",
        "type": "monograph",
        "title": "25 Years Ago: The First Asynchronous Microprocessor",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "Twenty-five years ago, in December 1988, my\nresearch group at Caltech submitted the world's\nfirst asynchronous (\"clockless\") microprocessor\ndesign for fabrication to MOSIS. We received\nthe chips in early 1989; testing started in February 1989. The chips were found fully functional on first silicon. The results were presented at the Decennial Caltech VLSI Conference in March of the same year. The first entirely\nasynchronous microprocessor had been designed\nand successfully fabricated. As the technology finally reaches industry, and with the benefit of a\nquarter-century hindsight, here is a recollection\nof this landmark project.",
        "doi": "10.7907/Z9QR4V3H",
        "publisher": "California Institute of Technology",
        "publication_date": "2014-01-27"
    },
    {
        "id": "authors:1f4c9-16z49",
        "collection": "authors",
        "collection_id": "1f4c9-16z49",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20141125-133400175",
        "type": "monograph",
        "title": "Quantifying Near-Threshold CMOS Circuit Robustness",
        "author": [
            {
                "family_name": "Keller",
                "given_name": "Sean",
                "clpid": "Keller-S"
            },
            {
                "family_name": "Bhargav",
                "given_name": "Siddharth S.",
                "clpid": "Bhargav-S-S"
            },
            {
                "family_name": "Moore",
                "given_name": "Chris",
                "clpid": "Moore-Chris"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "In order to build energy efficient digital CMOS circuits, the supply voltage must be reduced to near-threshold.\nProblematically, due to random parameter variation, supply\nscaling reduces circuit robustness to noise. Moreover, the effects of parameter variation worsen as device dimensions diminish, further reducing robustness, and making parameter variation one of the most significant hurdles to continued CMOS scaling. This paper presents a new metric to quantify circuit robustness with respect to variation and noise along with an efficient method of calculation. The method relies on the statistical analysis of standard cells and memories resulting an an extremely compact representation of robustness data. With this metric and method of\ncalculation, circuit robustness can be included alongside energy, delay, and area during circuit design and optimization.",
        "doi": "10.7907/Z9M043CG",
        "publisher": "California Institute of Technology",
        "publication_date": "2014"
    },
    {
        "id": "authors:ebmvh-dk943",
        "collection": "authors",
        "collection_id": "ebmvh-dk943",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20170320-175344479",
        "type": "book_section",
        "title": "Asynchronous logic for high variability nano-CMOS",
        "book_title": "16th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2009)",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "At the nanoscale level, parameter variations in fabricated devices cause extreme variability in delay. Delay variations are also the main issue in subthreshold operation. Consequently, asynchronous logic seems an ideal, and probably unavoidable choice, for the design of digital circuits in nano CMOS or other emerging technologies. This paper examines the robustness of one particular asynchronous logic: quasi-delay insensitive or QDI. We identify the three components of this logic that can be affected by extreme variability: staticizer, isochronic fork, and rings. We show that staticizers can be eliminated, and isochronic forks and rings can be made arbitrarily robust to timing variations.",
        "doi": "10.1109/ICECS.2009.5410925",
        "isbn": "978-1-4244-5090-9",
        "publisher": "IEEE",
        "place_of_publication": "Piscataway, NJ",
        "publication_date": "2009-12",
        "pages": "69-72"
    },
    {
        "id": "authors:4h10d-82w11",
        "collection": "authors",
        "collection_id": "4h10d-82w11",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20100506-101621122",
        "type": "book_section",
        "title": "A Necessary and Sufficient Timing Assumption for Speed-Independent Circuits",
        "book_title": "15th International Symposium on Advanced Research in Asynchronous Circuits and Systems : (ASYNC 2009) : proceedings : 17-19 May 2009 Chapel Hill, North Carolina, USA",
        "author": [
            {
                "family_name": "Keller",
                "given_name": "Sean",
                "clpid": "Keller-S"
            },
            {
                "family_name": "Katelmany",
                "given_name": "Michael",
                "clpid": "Katelmany-M"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "This paper presents a proof that the adversary path timing\nassumption is both necessary and sufficient for correct SI\ncircuit operation. This assumption requires that the delay\nof a wire on one branch of a fork be less than the delay\nthrough a gate sequence beginning at another branch in the\nsame fork. Both the definition of the timing assumption and\nthe proof build on a general, formal notion of computation\ngiven with respect to production rule sets. This underlying\nframework can be used for a variety of proof efforts or\nas a basis for defining other useful notions involving asynchronous\ncomputation.",
        "doi": "10.1109/ASYNC.2009.27",
        "isbn": "9781424439331",
        "publisher": "IEEE Computer Society",
        "place_of_publication": "Los Alamitos, CA",
        "publication_date": "2009-05-29",
        "pages": "65-76"
    },
    {
        "id": "authors:086p7-shn78",
        "collection": "authors",
        "collection_id": "086p7-shn78",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20100722-151724013",
        "type": "book_section",
        "title": "Asynchronous Nano-Electronics: Preliminary Investigation",
        "book_title": "14th IEEE International Symposium on Asynchronous Circuits and Systems : ASYNC 2008",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Prakash",
                "given_name": "Piyush",
                "clpid": "Prakash-P"
            }
        ],
        "abstract": "This paper is a preliminary investigation in implementing\nasynchronous QDI logic in molecular nano-electronics,\ntaking into account the restricted geometry, the lack of control\non transistor strengths, the high timing variations. We\nshow that the main building blocks of QDI logic can be successfully\nimplemented; we illustrate the approach with the\nlayout of an adder stage. The proposed techniques to improve\nthe reliability of QDI apply to nano-CMOS as well.",
        "doi": "10.1109/ASYNC.2008.22",
        "isbn": "978-0-7695-3107-6",
        "publisher": "IEEE Computer Society",
        "place_of_publication": "Los Alamitos, CA",
        "publication_date": "2008-07-09",
        "pages": "58-68"
    },
    {
        "id": "authors:x2ttg-dxf63",
        "collection": "authors",
        "collection_id": "x2ttg-dxf63",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:MARprocieee06",
        "type": "article",
        "title": "Asynchronous techniques for system-on-chip design",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Nystr\u00f6m",
                "given_name": "Mika",
                "clpid": "Nystr\u00f6m-M"
            }
        ],
        "abstract": "SoC design will require asynchronous techniques as the large parameter variations across the chip will make it impossible to control delays in clock networks and other global signals efficiently. Initially, SoCs will be globally asynchronous and locally synchronous (GALS). But the complexity of the numerous asynchronous/synchronous interfaces required in a GALS will eventually lead to entirely asynchronous solutions. This paper introduces the main design principles, methods, and building blocks for asynchronous VLSI systems, with an emphasis on communication and synchronization. Asynchronous circuits with the only delay assumption of isochronic forks are called quasi-delay-insensitive (QDI). QDI is used in the paper as the basis for asynchronous logic. The paper discusses asynchronous handshake protocols for communication and the notion of validity/neutrality tests, and completion tree. Basic building blocks for sequencing, storage, function evaluation, and buses are described, and two alternative methods for the implementation of an arbitrary computation are explained. Issues of arbitration, and synchronization play an important role in complex distributed systems and especially in GALS. The two main asynchronous/synchronous interfaces needed in GALS-one based on synchronizer, the other on stoppable clock-are described and analyzed.",
        "doi": "10.1109/JPROC.2006.875789",
        "issn": "0018-9219",
        "publisher": "Proceedings of the IEEE",
        "publication": "Proceedings of the IEEE",
        "publication_date": "2006-06",
        "series_number": "6",
        "volume": "94",
        "issue": "6",
        "pages": "1089-1120"
    },
    {
        "id": "authors:xyg8c-f3f93",
        "collection": "authors",
        "collection_id": "xyg8c-f3f93",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20110722-095429816",
        "type": "book_section",
        "title": "Can asynchronous techniques help the SoC designer?",
        "book_title": "IFIP VLSI-SoC 2006: IFIP TC 10/WG 10.5 International Conference on Very Large Scale Integration & System-on-Chip",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "contributor": [
            {
                "family_name": "De",
                "given_name": "G.",
                "clpid": "De-G"
            },
            {
                "family_name": "Reis",
                "given_name": "R.",
                "clpid": "Reis-R"
            },
            {
                "family_name": "Simeu",
                "given_name": "E.",
                "clpid": "Simeu-E"
            }
        ],
        "abstract": "As technological advances make it possible to integrate an entire system on a single die, the designer of a system-on-chip (SoC) is confronted with increasing difficulties concerning complexity, reliability, energy and power consumption, and clock distribution. All those issues are aggravated by increasing parameters variability as a result of the same technological advances. This paper argues that because of the quasi-independence of asynchronous (QDI) circuits of timing, asynchronous logic alleviates the problems posed by parameter variability, and eliminates the clock distribution problem altogether. Furthermore, as some researchers attempt to turn the liability into an asset by exploiting parameter variability to design truly probabilistic computation, the flexibility and time-independence of asynchronous logic could be a natural match.",
        "doi": "10.1109/VLSISOC.2006.313284",
        "isbn": "978-3-901882-19-7",
        "publisher": "IEEE",
        "place_of_publication": "Piscataway, NJ",
        "publication_date": "2006",
        "pages": "7-11"
    },
    {
        "id": "authors:1xvjv-x0y73",
        "collection": "authors",
        "collection_id": "1xvjv-x0y73",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20110225-095524705",
        "type": "book_section",
        "title": "Slack Matching Quasi Delay-Insensitive Circuits",
        "book_title": "12th IEEE International Symposium on Asynchronous Circuits and Systems",
        "author": [
            {
                "family_name": "Prakash",
                "given_name": "Piyush",
                "clpid": "Prakash-P"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "Slack matching is an optimization that determines\nthe amount of buffering that must be added to each channel of\na slack elastic asynchronous system in order to reduce its cycle\ntime to a specified target. We present two methods of expressing\nthe slack matching problem as a mixed integer linear programming\nproblem. The first method is applicable to systems composed\nof either full-buffers or half-buffers but not both. The second\nmethod is applicable to systems composed of any combination\nof full-buffers and half-buffers.",
        "doi": "10.1109/ASYNC.2006.27",
        "isbn": "0-7695-2498-2",
        "publisher": "IEEE",
        "place_of_publication": "Los Alamitos, CA",
        "publication_date": "2006",
        "pages": "195-204"
    },
    {
        "id": "authors:djnqn-n3y79",
        "collection": "authors",
        "collection_id": "djnqn-n3y79",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20170109-145144866",
        "type": "book_section",
        "title": "High-level synthesis of asynchronous systems by data-driven decomposition",
        "book_title": "DAC '03 Proceedings of the 40th annual Design Automation Conference",
        "author": [
            {
                "family_name": "Wong",
                "given_name": "Catherine G.",
                "clpid": "Wong-Catherine-G"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "contributor": [
            {
                "family_name": "Getreu",
                "given_name": "Ian",
                "clpid": "Getreu-I"
            }
        ],
        "abstract": "We present a method for decomposing a high-level program description of a circuit into a system of concurrent modules that can each be implemented as asynchronous pre-charge half-buffer pipeline stages (the circuits used in the asynchronous R3000 MIPS microprocessor). We apply it to designing the instruction fetch of an asynchronous 8051 microcontroller, with promising results. We discuss new clustering algorithms that will improve the performance figures further.",
        "doi": "10.1145/775832.775962",
        "isbn": "1-58113-688-9",
        "publisher": "ACM",
        "place_of_publication": "New York, NY",
        "publication_date": "2003-06",
        "pages": "508-513"
    },
    {
        "id": "authors:3b063-ca817",
        "collection": "authors",
        "collection_id": "3b063-ca817",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:2003.006a",
        "type": "monograph",
        "title": "An Architecture for Asynchronous FPGAs",
        "author": [
            {
                "family_name": "Wong",
                "given_name": "Catherine G.",
                "clpid": "Wong-Catherine-G"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Thomas",
                "given_name": "Peter",
                "clpid": "Thomas-P"
            }
        ],
        "abstract": "We present an architecture for a quasi delay-insensitive asynchronous field-programmable gate array. The logic cell is a complete asynchronous pipeline stage and the interconnects are entirely delay insensitive, eliminating all timing issues from the place-and-route procedure.",
        "publisher": "Proceedings of the IEEE International Conference on Field-Programmable Technology, 2003",
        "publication_date": "2003-01-01"
    },
    {
        "id": "authors:fbe8p-27d82",
        "collection": "authors",
        "collection_id": "fbe8p-27d82",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:2003.006",
        "type": "monograph",
        "title": "An Architecture for Asynchronous FPGAs",
        "author": [
            {
                "family_name": "Wong",
                "given_name": "Catherine G.",
                "clpid": "Wong-Catherine-G"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Thomas",
                "given_name": "Peter",
                "clpid": "Thomas-P"
            }
        ],
        "abstract": "We present an architecture for a quasi delay-insensitive asynchronous field-programmable gate array. The logic cell is a complete asynchronous pipeline stage and the interconnects are entirely delay insensitive, eliminating all timing issues from the place-and-route procedure.",
        "doi": "10.7907/Z9X9288B",
        "publisher": "California Institute of Technology",
        "publication_date": "2003-01-01"
    },
    {
        "id": "authors:dg8qx-4wh54",
        "collection": "authors",
        "collection_id": "dg8qx-4wh54",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20161207-170651411",
        "type": "book_section",
        "title": "Transistor sizing of energy-delay-efficient circuits",
        "book_title": "TAU '02 Proceedings of the 8th ACM/IEEE international workshop on Timing issues in the specification and synthesis of digital systems",
        "author": [
            {
                "family_name": "P\u00e9nzes",
                "given_name": "Paul I.",
                "clpid": "P\u00e9nzes-P-I"
            },
            {
                "family_name": "Nystr\u00f6m",
                "given_name": "Mika",
                "clpid": "Nystr\u00f6m-M"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "contributor": [
            {
                "family_name": "LaPotin",
                "given_name": "David P.",
                "clpid": "LaPotin-D-P"
            }
        ],
        "abstract": "This paper studies the problem of transistor sizing of CMOS circuits optimized for energy-delay efficiency, i.e., for optimal Etn where E is the energy consumption and t is the delay of the circuit, while n is a fixed positive optimization index that reflects the chosen trade-off between energy and delay.\n\nWe propose a set of analytical formulas that closely approximate the optimal transistor sizes. We then study an efficient iteration procedure that can further improve the original analytical solution. Based on these results, we introduce a novel transistor sizing algorithm for energy-delay efficiency.",
        "doi": "10.1145/589411.589439",
        "isbn": "1-58113-526-2",
        "publisher": "ACM",
        "place_of_publication": "New York, NY",
        "publication_date": "2002-12",
        "pages": "126-133"
    },
    {
        "id": "authors:462qm-phg17",
        "collection": "authors",
        "collection_id": "462qm-phg17",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20161207-165804629",
        "type": "book_section",
        "title": "Energy-Delay Efficiency of VLSI Computations",
        "book_title": "GLSVLSI '02 Proceedings of the 12th ACM Great Lakes symposium on VLSI",
        "author": [
            {
                "family_name": "P\u00e9nzes",
                "given_name": "Paul I.",
                "clpid": "P\u00e9nzes-P-I"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "contributor": [
            {
                "family_name": "Ghose",
                "given_name": "Kanad",
                "clpid": "Ghose-K"
            },
            {
                "family_name": "Madden",
                "given_name": "Patrick H.",
                "clpid": "Madden-P-H"
            }
        ],
        "abstract": "In this paper we introduce an energy-delay efficiency metric that captures any trade-off between the energy and the delay of the computation. \n\nWe apply this new concept to the parallel and sequential composition of circuits in general and in particular to circuits optimized through transistor sizing. We bound the delay and energy of the optimized circuit and we give necessary and sufficient conditions under which these bounds are reached. We also give necessary and sufficient conditions under which subcomponents of a design can be optimized independently so as to yield global optimum when recomposed. \n\nWe demonstrate the utility of a minimum-energy function to capture high level compositional properties of circuits. The use of this minimum-energy function yields practical insight into ways of improving the overall energy-delay efficiency of circuits.",
        "doi": "10.1145/505306.505330",
        "isbn": "1-58113-462-2",
        "publisher": "ACM",
        "place_of_publication": "New York, NY",
        "publication_date": "2002-04",
        "pages": "104-111"
    },
    {
        "id": "authors:pqps5-hr425",
        "collection": "authors",
        "collection_id": "pqps5-hr425",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:2002.003",
        "type": "monograph",
        "title": "Transistor Sizing of Energy-Delay-Efficient Circuits",
        "author": [
            {
                "family_name": "P\u00e9nzes",
                "given_name": "Paul I.",
                "clpid": "P\u00e9nzes-P-I"
            },
            {
                "family_name": "Nystr\u00f6em",
                "given_name": "Mika",
                "clpid": "Nystr\u00f6em-M"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "This paper studies the problem of transistor sizing of CMOS circuits optimized for energy-delay efficiency, \ni.e., for optimal Et^n where E is the energy consumption and t is the delay of the circuit, while n is a fixed positive optimization index that reflects the chosen trade-off between energy and delay. We propose a set of analytical formulas that closely approximate the optimal transistor sizes. We then study an efficient iteration procedure that can further improve the original analytical solution. Based on these results, we introduce a novel transistor sizing algorithm for energy-delay efficiency.",
        "doi": "10.7907/Z9ZG6Q7T",
        "publisher": "California Institute of Technology",
        "publication_date": "2002-01-01"
    },
    {
        "id": "authors:9wccf-45n08",
        "collection": "authors",
        "collection_id": "9wccf-45n08",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:2001.012",
        "type": "monograph",
        "title": "Speed and Energy Performance of an Asynchronous MIPS R3000 Microprocessor",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Nystr\u00f6m",
                "given_name": "Mika",
                "clpid": "Nystr\u00f6m-M"
            },
            {
                "family_name": "Penzes",
                "given_name": "Paul",
                "clpid": "Penzes-P-I"
            },
            {
                "family_name": "Wong",
                "given_name": "Catherine",
                "clpid": "Wong-Catherine-G"
            }
        ],
        "abstract": "This paper presents the speed and energy figures for an asynchronous implementation of a MIPS R3000 microprocessor.  The design is almost entirely QDI and introduces a new fine-grained pipeline. The performance figures show that this design is four times as efficient as equivalent clocked designs and that its cycle time in FO4 units compares to that of high-performance dynamic pipelines.",
        "doi": "10.7907/Z99S1P11",
        "publisher": "California Institute of Technology",
        "publication_date": "2001-06-22"
    },
    {
        "id": "authors:45xh6-yv235",
        "collection": "authors",
        "collection_id": "45xh6-yv235",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:2001.007",
        "type": "monograph",
        "title": "ET^2: A Metric For Time and Energy Efficiency of Computation",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Nystr\u00f6em",
                "given_name": "Mika",
                "clpid": "Nystr\u00f6em-M"
            },
            {
                "family_name": "Penzes",
                "given_name": "Paul",
                "clpid": "Penzes-P"
            }
        ],
        "contributor": [
            {
                "family_name": "Melhem",
                "given_name": "Rami"
            },
            {
                "family_name": "Graybill",
                "given_name": "Robert"
            }
        ],
        "abstract": "We investigate an efficiency metric for VLSI computation that includes energy, E, and time, t, in the form E t^2.  We apply the metric to CMOS circuits operating outside velocity saturation when energy and delay can be exchanged\nby adjusting the supply voltage; we prove that under these assumptions, optimal Et^2 implies optimal energy and delay. We give experimental and simulation evidences of the range and limits of the assumptions. We derive\nseveral results about sequential, parallel, and pipelined computations optimized for E t^2, including a result about the optimal length of a pipeline. We discuss transistor sizing for optimal Et^2 and show that, for fixed, nonzero execution rates, the optimum is achieved when the sum of the transistor-gate capacitances is twice the sum of the parasitic capacitances-not for minimum transistor sizes. We derive an approximation for E t^n (for arbitrary n) of an optimally sized system that can be computed without actually sizing the transistors; we show that this approximation is accurate. We prove that when multiple, adjustable supply voltages are allowed, the optimal Et^2 for the sequential composition of components is achieved when the supply voltages are adjusted so that the components consume equal power. Finally, we give rules for computing the Et^2 of the sequential and parallel compositions of systems, when the Et^2 of the components are known.",
        "doi": "10.7907/Z9K935JZ",
        "publisher": "California Institute of Technology",
        "publication_date": "2001-01-01"
    },
    {
        "id": "authors:z0965-w7h55",
        "collection": "authors",
        "collection_id": "z0965-w7h55",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:2002.002",
        "type": "monograph",
        "title": "Global and local properties of asynchronous circuits optimized for energy efficiency",
        "author": [
            {
                "family_name": "P\u00e9nzes",
                "given_name": "Paul I.",
                "clpid": "P\u00e9nzes-P-I"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "In this paper we explore global and local properties of asynchronous circuits sized for the energy efficiency metric Et^2. We develop a theory that enables an abstract view on transistor sizing. These results allow us to accurately estimate circuit performance and compare circuit design choices at logic gate level without going through the costly sizing process. We estimate that the improvement in energy efficiency due to sizing is 2 to 3.5 times when compared to a design optimized for speed.",
        "doi": "10.7907/Z9FJ2DSS",
        "publisher": "California Institute of Technology",
        "publication_date": "2001-01-01"
    },
    {
        "id": "authors:t7b22-swj11",
        "collection": "authors",
        "collection_id": "t7b22-swj11",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20201210-161233167",
        "type": "book_section",
        "title": "Slack elasticity in concurrent computing",
        "book_title": "Mathematics of Program Construction",
        "author": [
            {
                "family_name": "Manohar",
                "given_name": "Rajit",
                "clpid": "Manohar-Rajit"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "contributor": [
            {
                "family_name": "Jeuring",
                "given_name": "Johan",
                "clpid": "Jeuring-Johan"
            }
        ],
        "abstract": "We present conditions under which we can modify the slack of a channel in a distributed computation without changing its behavior. These results can be used to modify the degree of pipelining in an asynchronous system. The generality of the result shows the wide variety of pipelining alternatives presented to the designer of a concurrent system. We give examples of program transformations which can be used in the design of concurrent systems whose correctness depends on the conditions presented.",
        "doi": "10.1007/bfb0054295",
        "isbn": "9783540645917",
        "publisher": "Springer",
        "place_of_publication": "Berlin, Heidelberg",
        "publication_date": "1998",
        "pages": "272-285"
    },
    {
        "id": "authors:rsjyk-jb663",
        "collection": "authors",
        "collection_id": "rsjyk-jb663",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20170409-083932724",
        "type": "article",
        "title": "Specifying the Caltech asynchronous microprocessor",
        "author": [
            {
                "family_name": "Back",
                "given_name": "R. J. R.",
                "clpid": "Back-R-J-R"
            },
            {
                "family_name": "Martin",
                "given_name": "A. J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Sere",
                "given_name": "K.",
                "clpid": "Sere-K"
            }
        ],
        "abstract": "The action systems framework for modelling parallel programs is used to formally specify a microprocessor. First the microprocessor is specified as a sequential program. The sequential specification is then decomposed and refined into a concurrent program using correctness-preserving program transformations. Previously this microprocessor has been specified at Caltech, where an asynchronous circuit for the microprocessor was derived from the specification. We propose a specification strategy that is based on the idea of spatial decomposition of the program variable space.",
        "doi": "10.1016/0167-6423(95)00023-2",
        "issn": "0167-6423",
        "publisher": "Elsevier",
        "publication": "Science of Computer Programming",
        "publication_date": "1996-05",
        "series_number": "1-3",
        "volume": "26",
        "issue": "1-3",
        "pages": "79-97"
    },
    {
        "id": "authors:xpnkr-fdn96",
        "collection": "authors",
        "collection_id": "xpnkr-fdn96",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1995.cs-tr-95-11",
        "type": "monograph",
        "title": "Quasi-Delay-Insensitive Circuits are Turing-Complete",
        "author": [
            {
                "family_name": "Manohar",
                "given_name": "Rajit",
                "clpid": "Manohar-R"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "Quasi-delay-insensitive (QDI) circuits are those whose correct operation does not depend on the delays of operators or wires, except for certain wires that form isochronic forks. In this paper we show that quasi-delay-insensitivity, stability and noninterference, and strong confluence are equivalent properties of a computation. In particular, this shows that QDI computations are deterministic. We show that the class of Turing-computable functions have QDI implementations by constructing a QDI Turing machine.",
        "doi": "10.7907/Z9H70CV1",
        "publisher": "California Institute of Technology",
        "publication_date": "1995-11-17"
    },
    {
        "id": "authors:h63hs-x5f75",
        "collection": "authors",
        "collection_id": "h63hs-x5f75",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20201124-174613902",
        "type": "book_section",
        "title": "An action system specification of the Caltech asynchronous microprocessor",
        "book_title": "Mathematics of Program Construction",
        "author": [
            {
                "family_name": "Back",
                "given_name": "R. J. R.",
                "clpid": "Back-R-J-R"
            },
            {
                "family_name": "Martin",
                "given_name": "A. J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Sere",
                "given_name": "K.",
                "clpid": "Sere-K"
            }
        ],
        "contributor": [
            {
                "family_name": "M\u00f6ller",
                "given_name": "Bernhard",
                "clpid": "M\u00f6ller-B"
            }
        ],
        "abstract": "The action system framework for modelling parallel programs is used to formally specify a microprocessor. First the microprocessor is specified as a sequential program. The sequential specification is then decomposed and refined into a concurrent program using correctness-preserving program transformations. Previously this microprocessor has been specified in a semi-formal manner at Caltech, where an asynchronous circuit for the microprocessor was derived from the specification. We propose a specification strategy that is based on the idea of spatial decomposition of the program variable space. Applying this strategy we give a completely formal derivation of a high level specification for the Caltech microprocessor. We also demonstrate the suitability of action systems and the stepwise refinement paradigm for formal VLSI circuit design.",
        "doi": "10.1007/3-540-60117-1_9",
        "isbn": "9783540601173",
        "publisher": "Springer",
        "place_of_publication": "Berlin, Heidelberg",
        "publication_date": "1995",
        "pages": "159-179"
    },
    {
        "id": "authors:qpaar-1eb62",
        "collection": "authors",
        "collection_id": "qpaar-1eb62",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:TIEieeedtc94",
        "type": "article",
        "title": "A 100-MIPS GaAs asynchronous microprocessor",
        "author": [
            {
                "family_name": "Tierno",
                "given_name": "Jos\u00e9 A.",
                "clpid": "Tierno-J-A"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Borkovic",
                "given_name": "Drazen",
                "clpid": "Borkovic-D"
            },
            {
                "family_name": "Lee",
                "given_name": "Tak Kwan",
                "clpid": "Lee-Tak-Kwan"
            }
        ],
        "abstract": "The authors describe how they ported an asynchronous microprocessor previously implemented in CMOS to gallium arsenide, using a technology-independent asynchronous design technique. They introduce new circuits including a sense-amplifier, a completion detection circuit, and a general circuit structure for operators specified by production rules. The authors used and tested these circuits in a variety of designs.",
        "doi": "10.1109/54.282444",
        "issn": "1084-7529",
        "publisher": "IEEE",
        "publication": "IEEE Design and Test of Computers",
        "publication_date": "1994",
        "series_number": "2",
        "volume": "11",
        "issue": "2",
        "pages": "43-49"
    },
    {
        "id": "authors:qbwq7-qze43",
        "collection": "authors",
        "collection_id": "qbwq7-qze43",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1994.cs-tr-94-21",
        "type": "monograph",
        "title": "Low-Energy Asynchronous Memory Design",
        "author": [
            {
                "family_name": "Tierno",
                "given_name": "Jose A.",
                "clpid": "Tierno-J-A"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "We introduce the concept of energy per operation as a measure of performance of an asynchronous circuit. We show how to model energy consumption based on the high-level language specification. This model is independent of voltage and timing considerations. We apply this model to memory design. We show first how to dimension a memory array, and how to break up this memory array into smaller arrays to minimize the energy per access. We then show how to use cache memory and pre-fetch mechanisms to further reduce energy per access.",
        "doi": "10.7907/Z9X9289S",
        "publisher": "California Institute of Technology",
        "publication_date": "1994"
    },
    {
        "id": "authors:z2zy9-d2m55",
        "collection": "authors",
        "collection_id": "z2zy9-d2m55",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1993.cs-tr-93-37",
        "type": "monograph",
        "title": "Submicron Systems Architecture: Semiannual Technical Report",
        "author": [
            {
                "family_name": "Seitz",
                "given_name": "Charles L.",
                "clpid": "Seitz-C-L"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Van de Snepscheut",
                "given_name": "Jan L. A.",
                "clpid": "Van-de-Snepscheut-J-L-A"
            }
        ],
        "abstract": "[No abstract]",
        "doi": "10.7907/Z9NS0RX7",
        "publisher": "California Institute of Technology",
        "publication_date": "1993-11-01"
    },
    {
        "id": "authors:4fh9g-yr824",
        "collection": "authors",
        "collection_id": "4fh9g-yr824",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1993.cs-tr-93-10",
        "type": "monograph",
        "title": "Submicron Systems Architecture",
        "author": [
            {
                "family_name": "Seitz",
                "given_name": "Charles L.",
                "clpid": "Seitz-C-L"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Van de Snepscheut",
                "given_name": "Jan L. A.",
                "clpid": "Van-de-Snepscheut-J-L-A"
            }
        ],
        "abstract": "The first attachment to this report, a paper titled \"The Design of the Caltech Mosaic C\nMulticomputer,\" appeared in the March 1993 proceedings of the University of Washington\nSymposium on Integrated Systems. This paper describes the architecture, design, and\nprogramming of the Mosaic C multicomputer, and the status of the project as of December\n1992.\n\nThe following sections supplement the detailed information in this paper with reports on\nother and subsequent Mosaic-project activities and results. In addition, research efforts that\nare using the prototype Mosaic multicomputers for programming experiments are described\nin sections 3.1, 3.2, and 3.4.",
        "doi": "10.7907/4fh9g-yr824",
        "publisher": "California Institute of Technology",
        "publication_date": "1993-04-01"
    },
    {
        "id": "authors:sq381-7zg42",
        "collection": "authors",
        "collection_id": "sq381-7zg42",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1993.cs-tr-93-38",
        "type": "monograph",
        "title": "An Asynchronous Microprocessor in Gallium Arsenide",
        "author": [
            {
                "family_name": "Tierno",
                "given_name": "Jose A.",
                "clpid": "Tierno-J-A"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Borkovic",
                "given_name": "Drazen",
                "clpid": "Borkovic-D"
            },
            {
                "family_name": "Lee",
                "given_name": "Tak Kwan",
                "clpid": "Lee-Tae-Kwan"
            }
        ],
        "abstract": "In this paper, several techniques for designing asynchronous circuits in Gallium Arsenide are presented. Several new circuits were designed, to implement specific functions necessary to the design of a full microprocessor. A sense-amplifier, a completion tree, and a general circuit structure for operators specified by production rules are introduced. These circuit were used and tested in a variety of designs, including two asynchronous microprocessors and two asynchronous static RAM's. One of the microprocessor runs at over 100 MIPS with a power consumption of 2 Watts.",
        "doi": "10.7907/Z9BC3WJ5",
        "publisher": "California Institute of Technology",
        "publication_date": "1993-01-01"
    },
    {
        "id": "authors:5qr64-pv618",
        "collection": "authors",
        "collection_id": "5qr64-pv618",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1993.cs-tr-93-26",
        "type": "monograph",
        "title": "Tomorrow's Digital Hardware will be Asynchronous and Verified",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "Encouraged by the results of almost a decade of research and experimentation, we claim that tomorrow's design methods for digital VLSI will be based on a concurrent programming approach to high-level synthesis, asynchronous techniques, and correctness-preserving program transformations.",
        "doi": "10.7907/Z9125QPR",
        "publisher": "California Institute of Technology",
        "publication_date": "1993"
    },
    {
        "id": "authors:tsdze-hh773",
        "collection": "authors",
        "collection_id": "tsdze-hh773",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1992.cs-tr-92-17",
        "type": "monograph",
        "title": "Submicron Systems Architecture Project : Semiannual Technical Report, 1 July 1992",
        "author": [
            {
                "family_name": "Seitz",
                "given_name": "Charles L.",
                "clpid": "Seitz-C-L"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Van de Snepscheut",
                "given_name": "Jan L. A.",
                "clpid": "Van-de-Snepscheut-J-L-A"
            }
        ],
        "abstract": "The Mosaic C is an experimental fine-grain multicomputer\nbased on single-chip nodes. The Mosaic C chip includes 64KB of fast dynamic RAM,\nprocessor, packet interface, ROM for bootstrap and self-test, and a two-dimensional selftimed\nrouter. The chip architecture provides low-overhead and low-latency handling of\nmessage packets, and high memory and network bandwidth. Sixty-four Mosaic chips are\npackaged by tape-automated bonding (TAB) in an 8 x 8 array on circuit boards that can, in\nturn, be arrayed in two dimensions to build arbitrarily large machines. These 8 x 8 boards are\nnow in prototype production under a subcontract with Hewlett-Packard. We are planning\nto construct a 16K-node Mosaic C system from 256 of these boards. The suite of Mosaic\nC hardware also includes host-interface boards and high-speed communication cables. The\nhardware developments and activities of the past eight months are described in section 2.1.\nThe programming system that we are developing for the Mosaic C is based on the\nsame message-passing, reactive-process, computational model that we have used with earlier\nmulticomputers, but the model is implemented for the Mosaic in a way that supports finegrain\nconcurrency. A process executes only in response to receiving a message, and may in\nexecution send messages, create new processes, and modify its persistent variables before\nit either exits or becomes dormant in preparation for receiving another message. These\ncomputations are expressed in an object-oriented programming notation, a derivative of\nC++ called C+-. The computational model and the C+- programming notation are\ndescribed in section 2.2. The Mosaic C runtime system, which is written in C+-, provides\nautomatic process placement and highly distributed management of system resources. The\nMosaic C runtime system is described in section 2.3.",
        "doi": "10.7907/Z9WS8RF5",
        "publisher": "California Institute of Technology",
        "publication_date": "1992-07-01"
    },
    {
        "id": "authors:tw7j6-a3r29",
        "collection": "authors",
        "collection_id": "tw7j6-a3r29",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1992.cs-tr-92-03",
        "type": "monograph",
        "title": "Delay-Insensitive Multiply-Accumulate Unit",
        "author": [
            {
                "family_name": "Nielsen",
                "given_name": "Christian D.",
                "clpid": "Nielsen-C-D"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "[No abstract]",
        "doi": "10.7907/Z9MG7MPP",
        "publisher": "California Institute of Technology",
        "publication_date": "1992-01-01"
    },
    {
        "id": "authors:b9wzv-xrc02",
        "collection": "authors",
        "collection_id": "b9wzv-xrc02",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1991.cs-tr-93-28",
        "type": "monograph",
        "title": "Synthesis of Asynchronous VLSI Circuits",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/b9wzv-xrc02",
        "publisher": "California Institute of Technology",
        "publication_date": "1991-01-01"
    },
    {
        "id": "authors:j14fv-twh92",
        "collection": "authors",
        "collection_id": "j14fv-twh92",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1991.cs-tr-91-08",
        "type": "monograph",
        "title": "Asynchronous Datapaths and the Design of an Asynchronous Adder",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "This paper presents a general method for designing delay insensitive datapath circuits. Its emphasis is on the formal derivation of a circuit from its specification. We discuss the properties required in a code that is used to transmit data asynchronously, and we introduce such a code. We introduce a general method (in the form of a theorem) for distributing the evaluation of a function over a number of concurrent cells. This method requires that the code be \"distributive.\" We apply the method to the familiar example of a ripple-carry adder, and we give a CMOS implementation of the adder.",
        "doi": "10.7907/j14fv-twh92",
        "publisher": "California Institute of Technology",
        "publication_date": "1991-01-01"
    },
    {
        "id": "authors:vbcxz-mtz48",
        "collection": "authors",
        "collection_id": "vbcxz-mtz48",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20170830-083320673",
        "type": "article",
        "title": "Distributed sorting",
        "author": [
            {
                "family_name": "Hofstee",
                "given_name": "H. Peter",
                "clpid": "Hofstee-H-P"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Van de Snepscheut",
                "given_name": "Jan L. A.",
                "clpid": "Van-de-Snepscheut-J-L-A"
            }
        ],
        "abstract": "In this paper we present a distributed sorting algorithm, which is a variation on exchange sort, i.e., neighboring elements that are out of order are exchanged. We derive the algorithm by transforming a sequential algorithm into a distributed one. The transformation is guided by the distribution of the data over processes. First we discuss the case of two processes, and then the general case of one or more processes. Finally we propose a more efficient solution for the general case.",
        "doi": "10.1016/0167-6423(90)90081-N",
        "issn": "0167-6423",
        "publisher": "Elsevier",
        "publication": "Science of Computer Programming",
        "publication_date": "1990-12",
        "series_number": "2-3",
        "volume": "15",
        "issue": "2-3",
        "pages": "119-133"
    },
    {
        "id": "authors:8274b-29b89",
        "collection": "authors",
        "collection_id": "8274b-29b89",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1990.cs-tr-90-17",
        "type": "monograph",
        "title": "Testing Delay-Insensitive Circuits",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Hazewindus",
                "given_name": "Pieter J.",
                "clpid": "Hazewindus-P-J"
            }
        ],
        "abstract": "We show that a single stuck-at fault in a non-redundant delay-insensitive circuit results in a transition either not taking place or firing prematurely, or both, during an execution of the circuit. A transition not taking place can be tested easily, as this always prevents a transition on a primary output from taking place. A premature firing can also be tested but the addition of testing points may be required to enforce the premature firing and to propagate the transition to a primary output. Hence all single stuck-at faults are testable. All test sequences can be generated from the high-level specification of the circuit. The circuits are hazard-free in normal operation and during the tests.",
        "doi": "10.7907/8274b-29b89",
        "publisher": "California Institute of Technology",
        "publication_date": "1990-01-01"
    },
    {
        "id": "authors:47710-bts58",
        "collection": "authors",
        "collection_id": "47710-bts58",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1990.cs-tr-90-09",
        "type": "monograph",
        "title": "Asynchronous Circuits for Token-Ring Mutual Exclusion",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/47710-bts58",
        "publisher": "California Institute of Technology",
        "publication_date": "1990-01-01"
    },
    {
        "id": "authors:b11q2-j0d17",
        "collection": "authors",
        "collection_id": "b11q2-j0d17",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1990.cs-tr-90-18",
        "type": "monograph",
        "title": "Performance Analysis and Optimization of Asynchronous Circuits",
        "author": [
            {
                "family_name": "Burns",
                "given_name": "Steven M.",
                "clpid": "Burns-S-M"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "We present a method for analyzing the time performance of asynchronous circuits, in paxticulax, those derived by program transformation from concurrent programs using the synthesis approach developed by the second author. The analysis method produces a performance metric (related to the time needed to perform an operation) in terms of the primitive gate delays of the circuit. Such a metric provides a quantitative means by which to compare competing designs. Because the gate delays are functions of transistor sizes, the performance metric can be optimized with respect to these sizes. For a large class of asynchronous circuits-including those produced by using our synthesis method-these techniques produce the global optimum of the performance metric. A CAD tool has been implemented to perform this optimization.",
        "doi": "10.7907/b11q2-j0d17",
        "publisher": "California Institute of Technology",
        "publication_date": "1990-01-01"
    },
    {
        "id": "authors:gwkvs-p4122",
        "collection": "authors",
        "collection_id": "gwkvs-p4122",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1990.cs-tr-90-02",
        "type": "monograph",
        "title": "Limitations to Delay-Insensitivity in Asynchronous Circuits",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/gwkvs-p4122",
        "publisher": "California Institute of Technology",
        "publication_date": "1990-01-01"
    },
    {
        "id": "authors:44vxf-0w021",
        "collection": "authors",
        "collection_id": "44vxf-0w021",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20161130-145428229",
        "type": "article",
        "title": "The first asynchronous microprocessor: the test results",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Burns",
                "given_name": "Steven M.",
                "clpid": "Burns-S-M"
            },
            {
                "family_name": "Lee",
                "given_name": "T. K.",
                "clpid": "Lee-T-K"
            },
            {
                "family_name": "Borkovic",
                "given_name": "Drazen",
                "clpid": "Borkovic-D"
            },
            {
                "family_name": "Hazewindus",
                "given_name": "Pieter J.",
                "clpid": "Hazewindus-P-J"
            }
        ],
        "abstract": "We have designed the first entirely asynchronous (also called self-timed or delay-insensitive)\nmicroprocessor. The design was reported at the Decennial Caltech Conference on VLSI, last March. The conference paper is included here as an appendix. Since the chips had not yet been fabricated at the moment of writing\nthe conference paper, the paper does not include the results of the experiment. The purpose of this note is to publish these results, which are quite remarkable\nbecause of the speed reached on this first design, and, as importantly, because of the surprising robustness of the chips to variations in temperature and VDD voltage\nvalues.",
        "doi": "10.1145/71317.71324",
        "issn": "0163-5964",
        "publisher": "ACM",
        "publication": "ACM SIGARCH Computer Architecture News",
        "publication_date": "1989-06",
        "series_number": "4",
        "volume": "17",
        "issue": "4",
        "pages": "95-98"
    },
    {
        "id": "authors:grxpn-mmm53",
        "collection": "authors",
        "collection_id": "grxpn-mmm53",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20161130-144153368",
        "type": "article",
        "title": "The design of an asynchronous microprocessor",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Burns",
                "given_name": "Steven M.",
                "clpid": "Burns-S-M"
            },
            {
                "family_name": "Lee",
                "given_name": "T. K.",
                "clpid": "Lee-T-K"
            },
            {
                "family_name": "Borkovic",
                "given_name": "Drazen",
                "clpid": "Borkovic-D"
            },
            {
                "family_name": "Hazewindus",
                "given_name": "Pieter J.",
                "clpid": "Hazewindus-P-J"
            }
        ],
        "abstract": "[no abstract]",
        "issn": "0163-5964",
        "publisher": "ACM",
        "publication": "ACM SIGARCH Computer Architecture News",
        "publication_date": "1989-06",
        "series_number": "4",
        "volume": "17",
        "issue": "4",
        "pages": "99-110"
    },
    {
        "id": "authors:bsky8-c6128",
        "collection": "authors",
        "collection_id": "bsky8-c6128",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1989.cs-tr-89-06",
        "type": "monograph",
        "title": "The First Aysnchronous Microprocessor: The Test Results",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Burns",
                "given_name": "Steven M.",
                "clpid": "Burns-S-M"
            },
            {
                "family_name": "Lee",
                "given_name": "T. K.",
                "clpid": "Lee-T-K"
            },
            {
                "family_name": "Borkovic",
                "given_name": "Drazen",
                "clpid": "Borkovic-D"
            },
            {
                "family_name": "Hazewindus",
                "given_name": "Pieter J.",
                "clpid": "Hazewindus-P-J"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/bsky8-c6128",
        "publisher": "California Institute of Technology",
        "publication_date": "1989-01-01"
    },
    {
        "id": "authors:avec3-s7f02",
        "collection": "authors",
        "collection_id": "avec3-s7f02",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1989.cs-tr-89-02",
        "type": "monograph",
        "title": "The Design of an Asynchronous Microprocessor",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/avec3-s7f02",
        "publisher": "California Institute of Technology",
        "publication_date": "1989-01-01"
    },
    {
        "id": "authors:zmy86-a1w29",
        "collection": "authors",
        "collection_id": "zmy86-a1w29",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1989.cs-tr-89-01",
        "type": "monograph",
        "title": "Programming in VLSI: From Communicating Processes to Delay-Insensitive Circuits",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No Abstract.",
        "doi": "10.7907/zmy86-a1w29",
        "publisher": "California Institute of Technology",
        "publication_date": "1989-01-01"
    },
    {
        "id": "authors:zaevr-tmm71",
        "collection": "authors",
        "collection_id": "zaevr-tmm71",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1989.cs-tr-90-06",
        "type": "monograph",
        "title": "Distributed Sorting",
        "author": [
            {
                "family_name": "Hofstee",
                "given_name": "H. Peter",
                "clpid": "Hofstee-H-P"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Van de Snepscheut",
                "given_name": "Jan L. A.",
                "clpid": "Van-de-Snepscheut-J-L-A"
            }
        ],
        "abstract": "In this paper we present a distributed sorting algorithm, which is a variation on exchange sort, i.e.,\nneighboring elements that are out of order are exchanged. We derive the algorithm by transforming a\nsequential algorithm into a distributed one. The transformation is guided by the distribution of the data\nover processes. First we discuss the case of two processes, and then the general case of one or more\nprocesses. Finally we propose a more efficient solution for the general case.",
        "doi": "10.7907/zaevr-tmm71",
        "publisher": "California Institute of Technology",
        "publication_date": "1989"
    },
    {
        "id": "authors:82sn8-s7y18",
        "collection": "authors",
        "collection_id": "82sn8-s7y18",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20201008-131242613",
        "type": "book_section",
        "title": "Design of Synchronization Algorithms",
        "book_title": "Constructive Methods in Computing Science",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Van de Snepscheut",
                "given_name": "Jan L. A.",
                "clpid": "Van-de-Snepscheut-J-L-A"
            }
        ],
        "contributor": [
            {
                "family_name": "Broy",
                "given_name": "Manfred",
                "clpid": "Broy-M"
            }
        ],
        "abstract": "In these notes we discuss the design of concurrent programs that consist of a set of communicating sequential processes. The processes communicate via shared variables and synchronize via semaphores. We present an axiomatic definition of semaphores, and prove properties about them. The split binary semaphore is introduced and it is shown how it can be used in constructing the synchronization part of concurrent processes in order to maintain a given synchronization condition.",
        "doi": "10.1007/978-3-642-74884-4_13",
        "isbn": "9783642748868",
        "publisher": "Springer Berlin Heidelberg",
        "place_of_publication": "Berlin, Heidelberg",
        "publication_date": "1989",
        "pages": "447-478"
    },
    {
        "id": "authors:585wz-fra78",
        "collection": "authors",
        "collection_id": "585wz-fra78",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1988.cs-tr-88-14",
        "type": "monograph",
        "title": "Syntax-Directed Translation of Concurrent Programs into Self-Timed Circuits",
        "author": [
            {
                "family_name": "Burns",
                "given_name": "Steven M.",
                "clpid": "Burns-S-M"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/585wz-fra78",
        "publisher": "California Institute of Technology",
        "publication_date": "1988-01-01"
    },
    {
        "id": "authors:3sb8a-cvh96",
        "collection": "authors",
        "collection_id": "3sb8a-cvh96",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1988.cs-tr-88-13",
        "type": "monograph",
        "title": "A Message-Passing Model for Highly Concurrent Computation",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/3sb8a-cvh96",
        "publisher": "California Institute of Technology",
        "publication_date": "1988-01-01"
    },
    {
        "id": "authors:4x77s-atd96",
        "collection": "authors",
        "collection_id": "4x77s-atd96",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20161130-143104095",
        "type": "book_section",
        "title": "A message-passing model for highly concurrent computation",
        "book_title": "C3P Proceedings of the third conference on Hypercube concurrent computers and applications: Architecture, software, computer systems, and general issues",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "contributor": [
            {
                "family_name": "Fox",
                "given_name": "Geoffrey",
                "clpid": "Fox-Geoffrey"
            }
        ],
        "abstract": "[no abstract]",
        "doi": "10.1145/62297.62360",
        "isbn": "0-89791-278-0",
        "publisher": "ACM",
        "place_of_publication": "New York, NY",
        "publication_date": "1988-01",
        "pages": "520-527"
    },
    {
        "id": "authors:6e783-84v22",
        "collection": "authors",
        "collection_id": "6e783-84v22",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20161215-172443490",
        "type": "book_section",
        "title": "The architecture and programming of the Ametek series 2010 multicomputer",
        "book_title": "Proceedings of the third conference on Hypercube concurrent computers and applications: Architecture, software, computer systems, and general issues",
        "author": [
            {
                "family_name": "Seitz",
                "given_name": "Charles L.",
                "clpid": "Seitz-C-L"
            },
            {
                "family_name": "Athas",
                "given_name": "William C.",
                "clpid": "Athas-W-C"
            },
            {
                "family_name": "Flaig",
                "given_name": "Charles M.",
                "clpid": "Flaig-C-M"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Seizovic",
                "given_name": "Jakov",
                "clpid": "Seizovic-J"
            },
            {
                "family_name": "Steele",
                "given_name": "Craig S.",
                "clpid": "Steele-C-S"
            },
            {
                "family_name": "Su",
                "given_name": "Wen-King",
                "clpid": "Su-Wen-King"
            }
        ],
        "contributor": [
            {
                "family_name": "Fox",
                "given_name": "Geoffrey",
                "clpid": "Fox-Geoffrey"
            }
        ],
        "abstract": "During the period following the completion of the Cosmic Cube experiment [1], and while commercial descendants of this first-generation multicomputer (message-passing concurrent computer) were spreading through a community that includes many of the attendees of this conference, members of our research group were developing a set of ideas about the physical design and programming for the second generation of medium-grain multicomputers. \n\nOur principal goal was to improve by as much as two orders of magnitude the relationship between message-passing and computing performance, and also to make the topology of the message-passing network practically invisible. Decreasing the communication latency relative to instruction execution times extends the application span of multicomputers from easily partitioned and distributed problems (eg, matrix computations, PDE solvers, finite element analysis, finite difference methods, distant or local field many-body problems, FFTs, ray tracing, distributed simulation of systems composed of loosely coupled physical processes) to computing problems characterized by \"high flux\" [2] or relatively fine-grain concurrent formulations [3, 4] (eg, searching, sorting, concurrent data structures, graph problems, signal processing, image processing, and distributed simulation of systems composed of many tightly coupled physical processes). Such applications place heavy demands on the message-passing network for high bandwidth, low latency, and non-local communication. Decreased message latency also improves the efficiency of the class of applications that have been developed on first-generation systems, and the insensitivity of message latency to process placement simplifies the concurrent formulation of application programs. \n\nOur other goals included a streamlined and easily layered set of message primitives, a node operating system based on a reactive programming model, open interfaces for accelerators and peripheral devices, and node performance improvements that could be achieved economically by using the same technology employed in contemporary workstation computers. \n\nBy the autumn of 1986, these ideas had become sufficiently developed, molded together, and tested through simulation to be regarded as a complete architectural design. We were fortunate that the Ametek Computer Research Division was ready and willing to work with us to develop this system as a commercial product. The Ametek Series 2010 multicomputer is the result of this joint effort.",
        "doi": "10.1145/62297.62302",
        "isbn": "0-89791-278-0",
        "publisher": "ACM",
        "place_of_publication": "New York, NY",
        "publication_date": "1988-01",
        "pages": "33-37"
    },
    {
        "id": "authors:cgpwa-2j421",
        "collection": "authors",
        "collection_id": "cgpwa-2j421",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1987.5253-tr-87",
        "type": "monograph",
        "title": "Synthesis of Self-Timed Circuits by Program Transformation",
        "author": [
            {
                "family_name": "Burns",
                "given_name": "Steven M.",
                "clpid": "Burns-S-M"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/cgpwa-2j421",
        "publisher": "California Institute of Technology",
        "publication_date": "1987-01-01"
    },
    {
        "id": "authors:7cknj-w1w80",
        "collection": "authors",
        "collection_id": "7cknj-w1w80",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1987.5240-tr-87",
        "type": "monograph",
        "title": "Submicron Systems Architecture: Semiannual Technical Report",
        "author": [
            {
                "family_name": "Seitz",
                "given_name": "Charles L.",
                "clpid": "Seitz-C-L"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "McEliece",
                "given_name": "Robert J.",
                "clpid": "McEliece-R-J"
            },
            {
                "family_name": "Rem",
                "given_name": "Martin",
                "clpid": "Rem-M"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/7cknj-w1w80",
        "publisher": "California Institute of Technology",
        "publication_date": "1987-01-01"
    },
    {
        "id": "authors:649ae-we761",
        "collection": "authors",
        "collection_id": "649ae-we761",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1987.5256-tr-87",
        "type": "monograph",
        "title": "A Synthesis Method for Self-Timed VLSI Circuits",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/649ae-we761",
        "publisher": "California Institute of Technology",
        "publication_date": "1987-01-01"
    },
    {
        "id": "authors:jssn5-rbp39",
        "collection": "authors",
        "collection_id": "jssn5-rbp39",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1986.5211-tr-86",
        "type": "monograph",
        "title": "Self-Timed FIFO: An exercise in Compiling Programs into VLSI Circuits",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No Abstract.",
        "doi": "10.7907/jssn5-rbp39",
        "publisher": "California Institute of Technology",
        "publication_date": "1986-01-01"
    },
    {
        "id": "authors:pnf93-qxd46",
        "collection": "authors",
        "collection_id": "pnf93-qxd46",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1986.5210-tr-86",
        "type": "monograph",
        "title": "Compiling Communicating Processes into Delay-Insensitive VLSI Circuits",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/pnf93-qxd46",
        "publisher": "California Institute of Technology",
        "publication_date": "1986-01-01"
    },
    {
        "id": "authors:brq3w-kj598",
        "collection": "authors",
        "collection_id": "brq3w-kj598",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1986.5221-tr-86",
        "type": "monograph",
        "title": "The Sync Model: A Parallel Execution Method for Logic Programming",
        "author": [
            {
                "family_name": "Li",
                "given_name": "Peggy Pey-yun",
                "clpid": "Li-P-P-y"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "The Sync Model, a parallel execution method for logic programming, is proposed. The Sync Model is a multiple-solution data-driven model that realizes AND parallelism and OR-parallelism in a logic program assuming a message-passing multiprocessor system. AND parallelism is implemented by constructing a dynamic data flow graph of the literals in the clause body with an ordering algorithm. OR parallelism is achieved by adding special Synchronization signals to the stream partial solutions and synchronizing the multiple streams with a merge algorithr\nThe ordering algorithm and the merge algorithm are described. The merge algrithm is proved to be correct and therefore, the Sync Model is proved complete, i.e\nthe execution of a logic program under the Sync Model generates all the solution",
        "doi": "10.7907/brq3w-kj598",
        "publisher": "California Institute of Technology",
        "publication_date": "1986-01-01"
    },
    {
        "id": "authors:my65t-e9565",
        "collection": "authors",
        "collection_id": "my65t-e9565",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1986.5235-tr-86",
        "type": "monograph",
        "title": "Submicron Systems Architecture: Semiannual Technical Report",
        "author": [
            {
                "family_name": "Seitz",
                "given_name": "Charles L.",
                "clpid": "Seitz-C-L"
            },
            {
                "family_name": "Kajiya",
                "given_name": "James T.",
                "clpid": "Kajiya-J-T"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "McEliece",
                "given_name": "Robert J.",
                "clpid": "McEliece-R-J"
            },
            {
                "family_name": "Rem",
                "given_name": "Martin",
                "clpid": "Rem-M"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/my65t-e9565",
        "publisher": "California Institute of Technology",
        "publication_date": "1986-01-01"
    },
    {
        "id": "authors:rzewj-csb10",
        "collection": "authors",
        "collection_id": "rzewj-csb10",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1986.5220-tr-86",
        "type": "monograph",
        "title": "Submicron Systems Architecture: Semiannual Technical Report",
        "author": [
            {
                "family_name": "Seitz",
                "given_name": "Charles L.",
                "clpid": "Seitz-C-L"
            },
            {
                "family_name": "Kajiya",
                "given_name": "James T.",
                "clpid": "Kajiya-J-T"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "McEliece",
                "given_name": "Robert J.",
                "clpid": "McEliece-R-J"
            },
            {
                "family_name": "Rem",
                "given_name": "Martin",
                "clpid": "Rem-M"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/rzewj-csb10",
        "publisher": "California Institute of Technology",
        "publication_date": "1986-01-01"
    },
    {
        "id": "authors:2gjaq-xex23",
        "collection": "authors",
        "collection_id": "2gjaq-xex23",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1986.5212-tr-86",
        "type": "monograph",
        "title": "On Seitz' Arbiter",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No Abstract.",
        "doi": "10.7907/2gjaq-xex23",
        "publisher": "California Institute of Technology",
        "publication_date": "1986-01-01"
    },
    {
        "id": "authors:7fbb9-smt37",
        "collection": "authors",
        "collection_id": "7fbb9-smt37",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1985.5178-tr-85",
        "type": "monograph",
        "title": "Submicron Systems Architecture: Semiannual Technical Report",
        "author": [
            {
                "family_name": "Seitz",
                "given_name": "Charles L.",
                "clpid": "Seitz-C-L"
            },
            {
                "family_name": "Kajiya",
                "given_name": "James T.",
                "clpid": "Kajiya-J-T"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "McEliece",
                "given_name": "Robert J.",
                "clpid": "McEliece-R-J"
            },
            {
                "family_name": "Rem",
                "given_name": "Martin",
                "clpid": "Rem-M"
            },
            {
                "family_name": "Van Tilborg",
                "given_name": "Henk",
                "clpid": "Van-Tilborg-H-C-A"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/7fbb9-smt37",
        "publisher": "California Institute of Technology",
        "publication_date": "1985-03"
    },
    {
        "id": "authors:mrh1j-cjp65",
        "collection": "authors",
        "collection_id": "mrh1j-cjp65",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1985.5202-tr-85",
        "type": "monograph",
        "title": "Submicron Systems Architecture: Semiannual Technical Report",
        "author": [
            {
                "family_name": "Seitz",
                "given_name": "Charles L.",
                "clpid": "Seitz-C-L"
            },
            {
                "family_name": "Kajiya",
                "given_name": "James T.",
                "clpid": "Kajiya-J-T"
            },
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "McEliece",
                "given_name": "Robert J.",
                "clpid": "McEliece-R-J"
            },
            {
                "family_name": "Rem",
                "given_name": "Martin",
                "clpid": "Rem-M"
            }
        ],
        "abstract": "No abstract available.",
        "doi": "10.7907/mrh1j-cjp65",
        "publisher": "California Institute of Technology",
        "publication_date": "1985-01-01"
    },
    {
        "id": "authors:cchf5-w1g63",
        "collection": "authors",
        "collection_id": "cchf5-w1g63",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1985.5193-tr-85",
        "type": "monograph",
        "title": "A Delay-insensitive Fair Arbiter",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No Abstract.  Note: report is dated June 1985, May 1986",
        "doi": "10.7907/cchf5-w1g63",
        "publisher": "California Institute of Technology",
        "publication_date": "1985-01-01"
    },
    {
        "id": "authors:0qedb-76g96",
        "collection": "authors",
        "collection_id": "0qedb-76g96",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1985.5195-tr-85",
        "type": "monograph",
        "title": "A New Generalization of Dekker's Algorithm for Mutual Exclusion",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No abstract.",
        "doi": "10.7907/0qedb-76g96",
        "publisher": "California Institute of Technology",
        "publication_date": "1985-01-01"
    },
    {
        "id": "authors:8nwds-15p23",
        "collection": "authors",
        "collection_id": "8nwds-15p23",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1984.5148-tr-84",
        "type": "monograph",
        "title": "Fair Mutual Exclusion with Unfair P and V Operations",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Burch",
                "given_name": "Jerry R.",
                "clpid": "Burch-J-R"
            }
        ],
        "abstract": "No Abstract.",
        "doi": "10.7907/8nwds-15p23",
        "publisher": "California Institute of Technology",
        "publication_date": "1984-01-01"
    },
    {
        "id": "authors:t0t4e-aq296",
        "collection": "authors",
        "collection_id": "t0t4e-aq296",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1984.5080-tr-83",
        "type": "monograph",
        "title": "Distributed Mutual Exclusion on a Ring of Processes",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "A set of processes called \"masters\" are sharing a critical section on a\nmutual exclusion basis. The servers communicate with each other in a ring. \nThree solutions for solving the mutual exclusion problem are presented. \nThey all rely on the\npresence of a unique privilege in the ring. The notation used extends CSP\ninput and output commands with a Boolean primitive, the \"probe\", which makes\nit possible to determine whether a communication action is pending on a\nchannel.\nA master communicates only with its private \"server\".\nIn the correctness proofs, the concept of \"trace\" is introduced, i.e. a\ntotal ordering of actions corresponding to a possible interleaving of the\natomic actions of a concurrent computation.\n[Note: report includes the date April 83/October 83 but published in 1984]",
        "doi": "10.7907/t0t4e-aq296",
        "publisher": "California Institute of Technology",
        "publication_date": "1984-01-01"
    },
    {
        "id": "authors:abxcf-t3r94",
        "collection": "authors",
        "collection_id": "abxcf-t3r94",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1984.5147-tr-84",
        "type": "monograph",
        "title": "Networks of Machines for Distributed Recursive Computations",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            },
            {
                "family_name": "Van de Snepscheut",
                "given_name": "Jan L. A.",
                "clpid": "Van-de-Snepscheut-J-L-A"
            }
        ],
        "abstract": "Distributed computations may be viewed as a set of communicating \nprocesses. If such a computation is to be executed by a multi-processor\nsystem, the processes have to be distributed over the processors and the\ncommunications have to be distributed over a network.\nThis leads to the questions of load balancing and message routing. In\nthis paper we consider distributed recursive computations and we propose a\nclass of processor networks that admits a homogeneous dist ribution of processes and trivial routing. Furthermore, we identify a subclass that\nadmits a planar embedding of the network.",
        "doi": "10.7907/abxcf-t3r94",
        "publisher": "California Institute of Technology",
        "publication_date": "1984-01-01"
    },
    {
        "id": "authors:w8azk-3fk36",
        "collection": "authors",
        "collection_id": "w8azk-3fk36",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1984.5124-tr-84",
        "type": "monograph",
        "title": "The Probe: An Addition to Communication Primitives",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No Abstract.",
        "doi": "10.7907/w8azk-3fk36",
        "publisher": "California Institute of Technology",
        "publication_date": "1984-01-01"
    },
    {
        "id": "authors:ghkt8-r2w95",
        "collection": "authors",
        "collection_id": "ghkt8-r2w95",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20161130-142130832",
        "type": "article",
        "title": "On David Gries's plateau problem",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "[no abstract]",
        "doi": "10.1145/1005968.1005974",
        "issn": "0163-5948",
        "publisher": "ACM",
        "publication": "ACM SIGSOFT Software Engineering Notes",
        "publication_date": "1984-01",
        "series_number": "1",
        "volume": "9",
        "issue": "1",
        "pages": "29-30"
    },
    {
        "id": "authors:8q5hm-qnk74",
        "collection": "authors",
        "collection_id": "8q5hm-qnk74",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20190111-145202534",
        "type": "article",
        "title": "A Characterization of Product-Form Queuing Networks",
        "author": [
            {
                "family_name": "Chandy",
                "given_name": "K. M.",
                "clpid": "Chandy-K-M"
            },
            {
                "family_name": "Martin",
                "given_name": "A. J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "Queuing network models have proved effective in the design and analysis of computing systems. The class of queuing network models having product-form solutions is amenable to efficient, general solution techniques. The purpose of this\npaper is to characterize such queuing systems. With this characterization it will be easy to determine whether the product-form algorithms can be used to analyze a system.",
        "doi": "10.1145/322374.322378",
        "issn": "0004-5411",
        "publisher": "Association for Computing Machinery",
        "publication": "Journal of the ACM",
        "publication_date": "1983-04",
        "series_number": "2",
        "volume": "30",
        "issue": "2",
        "pages": "286-299"
    },
    {
        "id": "authors:desx8-jhv04",
        "collection": "authors",
        "collection_id": "desx8-jhv04",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1983.5075-tr-83",
        "type": "monograph",
        "title": "A General Proof Rule for Procedures in Predicate Transformer Semantics",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "Given a general definition of the procedure call based on the\nsubstitution  rule for assignment, a general proof  rule is derived for\nprocedures with  unrestricted value, result, and value- result parameters,\nand global  variables in the body of the procedure. It is then extended\nfor recursive procedures. Assuming that it has been proved that the body\nestablishes a certain postcondition I,  the \"intention,\"  for a certain\nprecondition  J, the proof rule permitting to determine under which\nconditions a certain procedure call establishes the post condition E, the\n\"extension\", is based on finding an \"adaptation\" A , a s weak as possible,\nsuch that A ~ I  -- E  ( E ' is derived from E by some substitution of parameter variables.) It is preferable, but not essential, that the body\nbe  \"transparent \" for the value parameters, i.e . , that the value parameters are not changed by the body.",
        "doi": "10.7907/desx8-jhv04",
        "publisher": "California Institute of Technology",
        "publication_date": "1983-01-01"
    },
    {
        "id": "authors:b2dbm-s0762",
        "collection": "authors",
        "collection_id": "b2dbm-s0762",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1983.5097-tr-83",
        "type": "monograph",
        "title": "The Design of a Self-timed Circuit for Distributed Mutual Exclusion",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "No Abstract.",
        "doi": "10.7907/b2dbm-s0762",
        "publisher": "California Institute of Technology",
        "publication_date": "1983-01-01"
    },
    {
        "id": "authors:cazcq-6fz54",
        "collection": "authors",
        "collection_id": "cazcq-6fz54",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1982.5047-tr-82",
        "type": "monograph",
        "title": "The torus: an exercise in constructing a processing surface",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "A \"Processing Surface\" is defined as a large, dense, and\nregular arrangement of processor and storage modules on a two-dimensional surface, e.g. a VLSI chip. A general method is described for distributing parallel recursive computations over such a surface. Scope rules enforcing\nthe \"locality\" of variables and procedure parameters are introduced in the programming language. These rules and a particular interconnection of the modules on the surface make it possible to transmit parameter and variable\nvalues between modules without using extraneous communication actions.\n\nThe choice of the Processing Surface topology for binary recursive computations is discussed and a torus-like topology is chosen.",
        "doi": "10.7907/cazcq-6fz54",
        "publisher": "California Institute of Technology",
        "publication_date": "1982"
    },
    {
        "id": "authors:qsz11-hyb18",
        "collection": "authors",
        "collection_id": "qsz11-hyb18",
        "cite_using_url": "https://resolver.caltech.edu/CaltechCSTR:1982.5046-tr-82",
        "type": "article",
        "title": "An Axiomatic Definition of Synchronization Primitives",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "Alain J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "The semantics of a pair of synchronization primitives is characterized by three fundamental axioms: boundedness, progress, and fairness. The class of primitives fulfilling the three axioms is semantically defined. Unbuffered communication primitives, the symmetrical P and V operations, and the usual P and V operations are proved to be the three instances of this class. The definitions obtained are used to prove a series of basic\ntheorems on mutual exclusion, producer-consumer coupling, deadlock, and linear and circular arrangements of communicating buffer-processes. An implementation of P and V operations fulfilling the axioms is proposed.",
        "doi": "10.1007/BF00261260",
        "issn": "0001-5903",
        "publisher": "Springer-Verlag",
        "publication": "Acta Informatica",
        "publication_date": "1981-10",
        "series_number": "2",
        "volume": "16",
        "issue": "2",
        "pages": "219-235"
    },
    {
        "id": "authors:c1h76-gdn90",
        "collection": "authors",
        "collection_id": "c1h76-gdn90",
        "cite_using_url": "https://resolver.caltech.edu/CaltechAUTHORS:20120418-114041991",
        "type": "monograph",
        "title": "A Distributed Implementation Method for Parallel Programming",
        "author": [
            {
                "family_name": "Martin",
                "given_name": "A. J.",
                "clpid": "Martin-A-J"
            }
        ],
        "abstract": "A method is described for implementing on a finite network of processing \"cells\", called the \"implementation graph\", programs whose potential parallelism is not fixed by the implementation but varies according to the input parameters. First, programming constructs are described\npermitting a computation, regarded as a dynamic structure called the \"computation graph\", to diffuse through the implementation graph. Second, the implementation problem of\nmapping an unbounded number of computation nodes on a finite number of cells is tackled. Processor allocation and message buffering completely disappear from the programmer's concerns. The mechanism proposed is considered a generalization of the stack mechanism.",
        "doi": "10.7907/c1h76-gdn90",
        "publisher": "California Institute of Technology",
        "publication_date": "1980"
    }
]