Asynchronous Circuit Design

Similar documents
Synchronous Systems. Asynchronous Circuit Design. Synchronous Disadvantages. Synchronous Advantages. Asynchronous Advantages. Asynchronous Systems

6.2.2 Coffee machine example in Uppaal

Smart Plunger TM by PCS

Environmental Monitoring for Optimized Production in Wineries

Asynchronous Circuit Design

1. Continuing the development and validation of mobile sensors. 3. Identifying and establishing variable rate management field trials

Identification of Adulteration or origins of whisky and alcohol with the Electronic Nose

AWRI Refrigeration Demand Calculator

MATH Section 5.4

Firebox X Edge e-series Hardware

Software engineering process. Literature on UML. Modeling as a Design Technique. Use-case modelling. UML - Unified Modeling Language

Geographic Information Systemystem

POSITION DESCRIPTION

OPERATING MANUAL. Sample PRO 100 Series. Electric Heating. Applies to Versions: SPE1*, SPE2, SPE4, SPE6

KNOWLEDGE/SKILL REQUIRED

Operating the Rancilio Silvia after PID kit modification Version 1.1

Predicting Wine Quality

FURUNO Multi-GNSS Disciplined Oscillator

Guided Study Program in System Dynamics System Dynamics in Education Project System Dynamics Group MIT Sloan School of Management 1

The Challenge of Using Regionalized LCA at Nestlé

ETHIOPIA. A Quick Scan on Improving the Economic Viability of Coffee Farming A QUICK SCAN ON IMPROVING THE ECONOMIC VIABILITY OF COFFEE FARMING

For Beer with Character

The Scoop 2-Way Brewer

XioSynth MIDI IMPLEMENTATION

Growth and Market Validation of Compostable Coffee Capsules. Fabio Osculati, Innovation & Management Consultant

HONDURAS. A Quick Scan on Improving the Economic Viability of Coffee Farming A QUICK SCAN ON IMPROVING THE ECONOMIC VIABILITY OF COFFEE FARMING

Flexible Imputation of Missing Data

Small with big capacity.

MDD. High Speed Mixer. Member of the

Online Appendix to. Are Two heads Better Than One: Team versus Individual Play in Signaling Games. David C. Cooper and John H.

John Perry. Fall 2009

Cloud Computing CS

Unlike cookers made with a stamped. less time lifting the lid. Drippings fall onto the pan and vaporize to produce flavorful smoke.

Application & Method. doughlab. Torque. 10 min. Time. Dough Rheometer with Variable Temperature & Mixing Energy. Standard Method: AACCI

Recent Developments in Rheological Instruments

Fromage Frais and Quark Market in Portugal: Market Profile to 2019

Introduction to Management Science Midterm Exam October 29, 2002

Viticulture Managing System. The dawn of a new viticulture.

Temperature effect on pollen germination/tube growth in apple pistils

The Economics Surrounding Premium Wine Production

Improved Inverse Response of Boiler Drum Level using Fuzzy Self Adaptive PID Controller

Handling Missing Data. Ashley Parker EDU 7312

Topic: Succeed in Wine Storage Management Systems Certification Scheme

Analysis of Things (AoT)

Rootstock Traits 2013

Trade Promotion in the Wine Sector

Electronic Pasteurizing Machines for Confectionery and Gastronomy. And much, much more...

The Premium Benefits of Steam Infusion UHT Treatment

Saeco, for Coffee Lovers. Like us.

PRODUCT FULL-LINE CATALOG

Economic History of the US

Whether to Manufacture

Narrative. Description of Process. REVISED SEPTEMBER 2017 Commercial Processing Example: Wild Salmon Sushi Rolls

Starbucks Geography Summary

Barista at a Glance BASIS International Ltd.

Interdependence and the Gains from Trade. Premium PowerPoint Slides by Ron Cronovich

GRIDDLES & GRIDDLE TOASTERS

S m a rtset Control for Convection Models

Pressure vacuum mixing Speaker: Bob Woolley 41st Autumn Conference - 7th/8th October 1996

Economics Interdependence. Interdependence. Production Possibilities in the U.S. Our Example. Premium PowerPoint Slides by Ron Cronovich

MAGNETIC HID BALLASTS Ballasts-to-Lamp Remote Mounting Distances

Feasibility Study of Toronto Public Health's Savvy Diner Menu Labelling Pilot Project

Biosignal Processing Mari Karsikas

ClearFlux. Dialyzer Regeneration System

On-line NIR moisture measurement to control the degree of baking in biscuits and cookies

Extraction of Acrylamide from Coffee Using ISOLUTE. SLE+ Prior to LC-MS/MS Analysis

INSTRUCTION MANUAL FOR BUILT-IN OVENS

CMC DUO. Standard version. Table of contens

Learning Connectivity Networks from High-Dimensional Point Processes

Missing Data Methods (Part I): Multiple Imputation. Advanced Multivariate Statistical Methods Workshop

2 nd Midterm Exam-Solution

Master planning in semiconductor manufacturing exercise

Interdependence and the Gains from Trade

Technology Trends Driving the Adoption of UV LED Curing

Buying Filberts On a Sample Basis

Single-Serve Coffee Maker

Profiling of Aroma Components in Wine Using a Novel Hybrid GC/MS/MS System

E N T E R P R I S E S

Product Presentation. C-series Rack Ovens

MCS Ovens. Member of the

Case Study 8. Topic. Basic Concepts. Team Activity. Develop conceptual design of a coffee maker. Perform the following:

OF THE VARIOUS DECIDUOUS and

Modulating controlled actuators AME 10, AME 20, AME 30 AME 13, AME 23, AME 33 - with EN certified safety function (spring down)

STA Module 6 The Normal Distribution

STA Module 6 The Normal Distribution. Learning Objectives. Examples of Normal Curves

DOMESTIC MARKET MATURITY TESTING

openlca case study: Conventional vs Organic Viticulture

The Market Potential for Exporting Bottled Wine to Mainland China (PRC)

Cyclotherm Ovens. Direct Gas Fired Ovens. Member of the

Streamlining Food Safety: Preventive Controls Brings Industry Closer to SQF Certification. One world. One standard.

To make wine, to sell the grapes or to deliver them to a cooperative: determinants of the allocation of the grapes

AREA: TECHNOLOGY CLOTHED BY ITALIAN DESIGN.

The precious and authentic aroma of coffee. Discover our Compatible Capsules range

CENTER TRT EVALUATION PLAN. Kaiser Permanente Worksite Cafeteria Menu Labeling. Evaluation Plan:

Missing Data Treatments

Global Online Takeaway Food Delivery Market ( Edition) December 2018

FOR GENTLY SEPARATING FOREIGN BODIES - DESTEMMERS. Testimonial

Computerized Models for Shelf Life Prediction of Post-Harvest Coffee Sterilized Milk Drink

More information from: global-online-food-delivery-and-takeaway-marketanalysis-by-order-type

Simulation of the Frequency Domain Reflectometer in ADS

Transcription:

Asynchronous Circuit Design Synchronous Advantages Slide 1 Chris J. Myers Lecture 1: Introduction Preface and Chapter 1 Slide 3 Simple way to implement sequencing. Widely taught and understood. Available components. Simple way to deal with noise and hazards. Synchronous Systems All events are synchronized to a single global clock. Synchronous Disadvantages Clock distribution is difficult due to clock skew. Slide 2 INPUTS Comb. Logic Register OUTPUTS Slide 4 Worst-case design. Sensitive to variations in physical parameters. Not modular. STATE Power consumption. CLOCK 1 2

Slide 5 Asynchronous Systems Synchronization is achieved without a global clock. INPUTS Slide 7 Asynchronous Challenges Lack of mature computer-aided design tools. Large area overhead for the removal of hazards. Comb. Logic Delay OUTPUTS STATE Average-case delay can be large. Lack of designer experience. Asynchronous Advantages Elimination of clock distribution problems. Asynchronous Circuit History Slide 6 Average-case performance. Adaptivity to processing and environmental variations. Slide 8 Every design method traces its roots to one of two individuals: Huffman - fundamental-mode circuits. Component modularity. Muller - speed-independent circuits. Lower system power requirements. 3 4

Key Asynchronous Circuit Designs ILLIAC (1952) and ILLAC2 (1962) - U. of Illinois Atlas (1962) and MU-5 (1966) - U. of Manchester Slide 9 Macromodules (60s-70s) - Washington U., St. Louis First commercial graphics system (70s) - Evans & Sutherland DDM dataflow computer (1978) - U. of Utah Slide 11 Winery Channels of Communication WineryShop ShopPatron Shop Patron First asynchronous microprocessor (1989) - Caltech First code-compatible processor (1994) - U. of Manchester Commercial pager (90s) - Phillips RAPPID (1995-9) - Intel Channels of Communication in VHDL Winery:process Slide 10 Wine Shop Problem Specification Small winery and wine shop in Southern Utah. Only a single wine patron. Wine shop only has a single small shelf. Slide 12 send(wineryshop,bottle); Shop:process receive(wineryshop,shelf); send(shoppatron,shelf); Synchronous versus asynchronous wine shopping. Patron:process receive(shoppatron,bag); 5 6

2-Phase Protocol Event Protocol Shop 2Phase:process Slide 13 Shop:process req wine; -- call winery ack wine; -- wine arrives req patron; -- call patron ack patron; -- patron buys wine Slide 15 assign(req wine, 1 ); -- call winery guard(ack wine, 1 ); -- wine arrives assign(req wine, 0 ); -- call winery guard(ack wine, 0 ); -- wine arrives assign(req patron, 0 ); -- call patron guard(ack patron, 0 ); -- patron buys wine Signal Protocol Waveform for 2-Phase Protocol Shop:process Slide 14 assign(req wine, 1 ); guard(ack wine, 1 ); -- call winery -- wine arrives Slide 16 7 8

4-Phase Protocol: Active/Active 4-Phase Protocol: Passive/Active Slide 17 Shop 4Phase:process assign(req wine, 1 ); -- call winery guard(ack wine, 1 ); -- wine arrives assign(req wine, 0 ); -- reset req wine guard(ack wine, 0 ); -- ack wine resets assign(req patron, 0 ); -- reset req patron guard(ack patron, 0 ); -- ack patron resets Slide 19 Shop PA:process guard(req wine, 1 ); -- winery calls assign(ack wine, 1 ); -- wine is received guard(req wine, 0 ); -- req wine resets assign(ack wine, 0 ); -- reset ack wine assign(req patron, 0 ); -- reset req patron guard(ack patron, 0 ); -- ack patron resets 4-Phase Protocol: Passive/Passive Waveform for 4-Phase Protocol Slide 18 Slide 20 9 10

Active/Active Reshuffled Passive/Active Reshuffled Slide 21 Shop AA reshuffled:process assign(req wine, 1 ); -- call winery guard(ack wine, 1 ); -- wine arrives assign(req wine, 0 ); -- reset req wine guard(ack wine, 0 ); -- ack wine resets assign(req patron, 0 ); -- reset req patron guard(ack patron, 0 ); -- ack patron resets Slide 23 Shop PA reshuffled:process guard(req wine, 1 ); -- winery calls assign(ack wine, 1 ); -- receives wine guard(ack patron, 0 ); -- ack patron resets guard(req wine, 0 ); -- req wine resets assign(ack wine, 0 ); -- reset ack wine assign(req patron, 0 ); -- reset req patron Passive/Active Circuit Active/Active Circuit Slide 22 Slide 24 C C 11 12

AFSM and Huffman Flow Table (A/A reshuffled) TEL Structure (P/A reshuffled) 0 ack wine / ack patron + + Slide 25 00/10 1 10/11 2 11/01 3 01/00 00 01 11 10 0 1, 10 0, 00 1 1, 10 2, 11 2 3, 01 2, 11 3 0, 00 3, 01 req wine / req patron Slide 27 [] + [~] - [~] [] - [~] + [~] - [] [] Petri-net (P/A reshuffled) + A/A Reshuffled Circuit Slide 26 - + - Slide 28 - + - + 13 14

P/A Reshuffled Circuit A/A SV Circuit Slide 29 C C Slide 31 u5 u1 u3 C u4 x u6 u2 Slide 30 Active/Active State Variable Shop AA state variable:process assign(req wine, 1 ); -- call winery guard(ack wine, 1 ); -- wine arrives assign(x, 1 ); -- set state variable assign(req wine, 0 ); -- reset req wine guard(ack wine, 0 ); -- ack wine resets assign(x, 0 ); -- reset state variable assign(req patron, 0 ); -- reset req patron guard(ack patron, 0 ); -- ack patron resets Slide 32 AFSM and Huffman Flow Table (A/A SV) 0 00/10 1 10/00 01/00 2 00/01 3 ack wine / ack patron 00 01 11 10 0 1, 0 0, 00 1 1, 10 2, 0 2 3, 0 2, 00 3 3, 01 0, 0 req wine / req patron 15 16

Reduced AFSM and Huffman Flow Table (A/A SV) Huffman s A/A SV Circuit Slide 33 0 10/00 1 00/10 01/00 00/01 ack wine / ack patron 00 01 11 10 0 0, 10 0, 00 1, 0 1 1, 01 0, 0 1, 00 req wine / req patron Slide 35 X u5 u1 u4 u6 u2 u7 u3 x Karnaugh Maps for Huffman s A/A SV Circuit ack wine/ack patron x 00 01 11 10 0 1 0 ack wine/ack patron x 00 01 11 10 0 0 0 0 Huffman s Assumptions Bounded gate and wire delay model. Slide 34 1 0 0 0 1 1 0 req wine req patron ack wine/ack patron x 00 01 11 10 0 0 0 1 Slide 36 Circuit does not need to be closed. Single-input change fundamental mode. One input changes output changes state changes. May need to add delay in fed back state variables. 1 1 0 1 x 17 18

Muller s Active/Active SV Circuit Timed Wine Shop Shop AA timed:process Slide 37 x Slide 39 assign(req wine, 1,0,1); -- call winery assign(req patron, 1,0,1); -- call patron -- wine arrives and patron arrives guard and(ack wine, 1,ack patron, 1 ); x assign(req wine, 0,0,1); assign(req patron, 0,0,1); -- wait for ack wine and ack patron to reset guard and(ack wine, 0,ack patron, 0 ); Timed Winery and Patron winery:process guard(req wine, 1 ); -- wine requested Muller s Assumptions assign(ack wine, 1,2,3); -- deliver wine Slide 38 Unbounded gate delay model. Wire delays are assumed to be negligible. Forks are assumed to be isochronic. Model called speed-independent. Slide 40 guard(req wine, 0 ); assign(ack wine, 0,2,3); patron:process guard(req patron, 1 ); -- shop called assign(ack patron, 1,5,inf); -- buy wine guard(req patron, 0 ); assign(ack patron, 0,5,7); 19 20

TEL Structure for Timed Wine Shop Example Karnaugh Maps for Timed Circuit Slide 41 + [2,3] [~] + [5,7] [~] [2,3] [] [5,inf] [] + - + [0,1] [0,1] [ & ] [0,1] - - [0,1] [~ & ~] Slide 43 req wine/ req patron ack wine/ack patron 00 01 11 10 00 1 0 0 01 0 11 1 0 1 10 1 req wine ack wine/ack patron 00 01 11 10 00 0 0 0 01 0 11 1 1 1 10 1 req patron State Graph for Timed Wine Shop Example Timed Circuit Slide 42 + R01R + 00R0 - RR11 + Slide 44 [0,1] [5,inf; 5,7] 0F00 1R11 [0,1] - + [2,3] FF00 - - F10F 11F1 21 22

Performance Analysis Slide 45 Cycle time is the delay from when the patron gets one bottle of wine until he can get another. Assuming the timed circuit delays are uniformly distributed except that the patron is extremely unlikely to take more then 10 minutes, we obtain the following cycle times: Muller and Huffman s circuits (A/A SV) - 21.5 minutes Original (A/A reshuffled) - 20.6 minutes Slide 47 Sample Properties The wine arrives before the patron: Always(ack patron ack wine) When the wine is requested, it eventually arrives: req wine Eventually(ack wine) Timed circuit - 15.8 minutes Summary of Course Topics Communication Channels Validation versus Verification Communication Protocols Slide 46 Validation is simulation of interesting situations. Verification is exhaustive checks of all possible situations. Slide 48 Graphical Representations Huffman Circuits Can check that circuit conforms to the specification. Muller Circuits Can check that protocol has certain properties. Timing Circuits Verification Applications 23 24