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

Similar documents
Asynchronous Circuit Design

6.2.2 Coffee machine example in Uppaal

Environmental Monitoring for Optimized Production in Wineries

Smart Plunger TM by PCS

Firebox X Edge e-series Hardware

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

MATH Section 5.4

AWRI Refrigeration Demand Calculator

FURUNO Multi-GNSS Disciplined Oscillator

For Beer with Character

Cloud Computing CS

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

CMC DUO. Standard version. Table of contens

ClearFlux. Dialyzer Regeneration System

Master planning in semiconductor manufacturing exercise

Small with big capacity.

Introduction to Management Science Midterm Exam October 29, 2002

Asynchronous Circuit Design

Geographic Information Systemystem

KNOWLEDGE/SKILL REQUIRED

POSITION DESCRIPTION

XioSynth MIDI IMPLEMENTATION

Recent Developments in Rheological Instruments

KRONES fillers for wine and sparkling wine Filling of glass containers

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

Flexible Imputation of Missing Data

Operating the Rancilio Silvia after PID kit modification Version 1.1

Predicting Wine Quality

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

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

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

INSTRUCTION MANUAL FOR BUILT-IN OVENS

Product Consistency Comparison Study: Continuous Mixing & Batch Mixing

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

Ovens. A+: Energy efficiency class A+ helps to save up to 10% energy compared to class A. Maximum performance with minimum consumption is guaranteed.

Analysis of Things (AoT)

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

The Scoop 2-Way Brewer

Viticulture Managing System. The dawn of a new viticulture.

Given a realistic scenario depicting a new site install, the learner will be able to install and setup the brewer for retail turnover without error.

John Perry. Fall 2009

Decision making with incomplete information Some new developments. Rudolf Vetschera University of Vienna. Tamkang University May 15, 2017

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

Project Statement. Bluetooth Enabled Coffee Machine. ECE 4901 Senior Design I. Fall 2013

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

PUBLICIMBALI /2016 FEME Gruppo Cimbali S.p.A. Via Manzoni, Binasco (MI) Italy Tel

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

White Paper. Dry Ingredient Chilling for Bakery Manufacturers.

openlca case study: Conventional vs Organic Viticulture

GRIDDLES & GRIDDLE TOASTERS

Simulation of the Frequency Domain Reflectometer in ADS

Better air. Leading the new era in air conditioning

Barista at a Glance BASIS International Ltd.

The Economics Surrounding Premium Wine Production

Roux Bot Home Cooker. UC Santa Cruz, Baskin Engineering Senior Design Project 2015

Development of Safe Job Procedure Job Hazard Analysis (JHA)

Equipment Reference Guide

MAGNETIC HID BALLASTS Ballasts-to-Lamp Remote Mounting Distances

Slow Rot or Not! By Jennifer Goldstein

ELECTROLUX HIGH SPEED GRILL - Panini. HSG Panini

Cafeteria Ron software

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

S m a rtset Control for Convection Models

Handling Missing Data. Ashley Parker EDU 7312

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

Topic: Succeed in Wine Storage Management Systems Certification Scheme

thermorollomat MIWE makes baking simple: With a range of classical baking ovens that includes not only efficient in-store ovens and

FREQUENTLY ASKED QUESTIONS (FAQS)

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

OF THE VARIOUS DECIDUOUS and

CS 322: (Social and Information) Network Analysis Jure Leskovec Stanford University

So small, but yet so big.

Programming Guide For EXTRACTOR Coffee Brewers (CBS 2000e Series)

FOR GENTLY SEPARATING FOREIGN BODIES - DESTEMMERS. Testimonial

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

Medfusion 3500 V6. Syringe Infusion Pump. Quick Reference Card

Trade Promotion in the Wine Sector

E N T E R P R I S E S

The Premium Benefits of Steam Infusion UHT Treatment

Please sign and date here to indicate that you have read and agree to abide by the above mentioned stipulations. Student Name #4

Custom Grind Deluxe Coffee Grinder

MDD. High Speed Mixer. Member of the

Whether to Manufacture

Starbucks Coffee Company Company Headquarters

PRODUCT FULL-LINE CATALOG

Saeco, for Coffee Lovers. Like us.

South County Outreach Meetings

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

STACKING CUPS STEM CATEGORY TOPIC OVERVIEW STEM LESSON FOCUS OBJECTIVES MATERIALS. Math. Linear Equations

Starbucks Geography Summary

Biosignal Processing Mari Karsikas

The Challenge of Using Regionalized LCA at Nestlé

TRUSTED RELIABLE QUALITY

TRADITION MADE NEW. THE EVOLUTION.

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

Academic Year 2014/2015 Assessment Report. Bachelor of Science in Viticulture, Department of Viticulture and Enology

Mini Project 3: Fermentation, Due Monday, October 29. For this Mini Project, please make sure you hand in the following, and only the following:

+ = Power up your Smart Cup while pressing the corresponding button to reach different program modes. Heat Exchange fill/tank Drain Page:

APPLIED. Measuring Caffeine Concentration. Application Summary. Analytes: caffeine (C 8 H 10 N 4 O 2

Given a realistic scenario depicting a new site install, the learner will be able to install and setup the brewer for retail turnover without error.

Transcription:

Synchronous Systems Asynchronous ircuit Design All events are synchronized to a single global clock. INPUTS hris J. Myers Lecture 1: Introduction Preface and hapter 1 omb. Logic Register OUTPUTS STATE LOK hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 1 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 2 / 1 Synchronous Advantages Synchronous Disadvantages Simple way to implement sequencing. Widely taught and understood. Available components. Simple way to deal with noise and hazards. lock distribution is difficult due to clock skew. Worst-case design. Sensitive to variations in physical parameters. Not modular. Power consumption. hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 3 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 4 / 1 Asynchronous Systems Asynchronous Advantages Synchronization is achieved without a global clock. INPUTS omb. Logic Delay OUTPUTS Elimination of clock distribution problems. Average-case performance. Adaptivity to processing and environmental variations. omponent modularity. Lower system power requirements. STATE hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 5 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 6 / 1

Asynchronous hallenges Asynchronous ircuit History Lack of mature computer-aided design tools. Large area overhead for the removal of hazards. Average-case delay can be large. Lack of designer eperience. Every design method traces its roots to one of two individuals: Huffman - fundamental-mode circuits. Muller - speed-independent circuits. hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 7 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 8 / 1 Key Asynchronous ircuit Designs Asynchronous Startups ILLIA (1952) and ILLA2 (1962) - U. of Illinois Atlas (1962) and MU-5 (1966) - U. of Manchester Macromodules (60s-70s) - Washington U., St. Louis First commercial graphics system (70s) - Evans & Sutherland DDM dataflow computer (1978) - U. of Utah First asynchronous microprocessor (1989) - altech First code-compatible processor (1994) - U. of Manchester ommercial pager (90s) - Phillips RAPPID (1995-9) - Intel Handshake Solutions - Microcontrollers (Phillips) Fulcrum - Ethernet Switches (altech) Silisti - Self-timed interconnect (U. of Manchester) Achroni Semiconductor - Asynchronous FPGAs (ornell) hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 9 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 10 / 1 Wine Shop Problem Specification hannels of ommunication Small winery and wine shop in Southern Utah. Only a single wine patron. Wine shop only has a single small shelf. Winery WineryShop Shop ShopPatron Patron Synchronous versus asynchronous wine shopping. hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 11 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 12 / 1

hannels of ommunication in VHDL Event Protocol Winery:process send(wineryshop,bottle); Shop:process receive(wineryshop,shelf); send(shoppatron,shelf); Patron:process receive(shoppatron,bag); Shop:process ; - call winery ; - wine arrives ; - call patron ; - patron buys wine hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 13 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 14 / 1 Signal Protocol 2-Phase Protocol Shop:process assign(, 1 ); - call winery guard(, 1 ); - wine arrives assign(, 1 ); - call patron guard(, 1 ); - patron buys wine Shop_2Phase:process assign(, 1 ); - call winery guard(, 1 ); - wine arrives assign(, 1 ); - call patron guard(, 1 ); - patron buys wine assign(, 0 ); - call winery guard(, 0 ); - wine arrives assign(, 0 ); - call patron guard(, 0 ); - patron buys wine hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 15 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 16 / 1 Waveform for 2-Phase Protocol 4-Phase Protocol: Active/Active Shop_4Phase:process assign(, 1 ); - call winery guard(, 1 ); - wine arrives assign(, 0 ); - reset guard(, 0 ); - resets assign(, 1 ); - call patron guard(, 1 ); - patron buys wine assign(, 0 ); - reset guard(, 0 ); - resets hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 17 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 18 / 1

Waveform for 4-Phase Protocol 4-Phase Protocol: Passive/Active Shop_PA:process guard(, 1 ); - winery calls assign(, 1 ); - wine is received guard(, 0 ); - resets assign(, 0 ); - reset assign(, 1 ); - call patron guard(, 1 ); - patron buys wine assign(, 0 ); - reset guard(, 0 ); - resets hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 19 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 20 / 1 4-Phase Protocol: Passive/Passive Active/Active Protocol Shop_AA:process assign(, 1 ); - call winery guard(, 1 ); - wine arrives assign(, 0 ); - reset guard(, 0 ); - resets assign(, 1 ); - call patron guard(, 1 ); - patron buys wine assign(, 0 ); - reset guard(, 0 ); - resets hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 21 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 22 / 1 Active/Active Reshuffled Active/Active ircuit Shop_AA_reshuffled:process assign(, 1 ); - call winery guard(, 1 ); - wine arrives assign(, 1 ); - call patron guard(, 1 ); - patron buys wine assign(, 0 ); - reset guard(, 0 ); - resets assign(, 0 ); - reset guard(, 0 ); - resets hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 23 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 24 / 1

Passive/Active Reshuffled Passive/Active ircuit Shop_PA_reshuffled:process guard(, 1 ); - winery calls assign(, 1 ); - receives wine guard(, 0 ); - resets assign(, 1 ); - call patron guard(, 0 ); - resets assign(, 0 ); - reset guard(, 1 ); - patron buys wine assign(, 0 ); - reset hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 25 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 26 / 1 AFSM and Huffman Flow Table (A/A reshuffled) Petri-net (P/A reshuffled) + / 0 1, 10 0, 00 1 1, 10 2, 11 2 3, 01 2, 11 3 0, 00 3, 01 / - + + + hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 27 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 28 / 1 Petri-net (P/A reshuffled) Petri-net (P/A reshuffled) + + - + - - + - - + - - + - + + hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 29 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 30 / 1

TEL Structure (P/A reshuffled) A/A Reshuffled ircuit + [] - [~] + [~] [] + - [] + [~] - [~] - [] hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 31 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 32 / 1 P/A Reshuffled ircuit Active/Active State Variable Shop_AA_state_variable:process assign(, 1 ); - call winery guard(, 1 ); - wine arrives assign(, 1 ); - set state variable assign(, 0 ); - reset guard(, 0 ); - resets assign(, 1 ); - call patron guard(, 1 ); - patron buys wine assign(, 0 ); - reset state variable assign(, 0 ); - reset guard(, 0 ); - resets hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 33 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 34 / 1 A/A SV ircuit AFSM and Huffman Flow Table (A/A SV) u6 u5 u1 u3 u4 u2 / 0 1, 0 0, 00 1 1, 10 2, 0 2 3, 0 2, 00 3 3, 01 0, 0 / +, +, +, -, -, +, + u2-, -, u6- glitches! hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 35 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 36 / 1

Reduced AFSM and Huffman Flow Table (A/A SV) Karnaugh Maps for Huffman s A/A SV ircuit / 0 0, 10 0, 00 1, 0 1 1, 01 0, 0 1, 00 / / 0 1 0 1 0 0 0 / 0 0 0 1 1 1 0 1 / 0 0 0 0 1 1 0 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 37 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 38 / 1 Huffman s A/A SV ircuit Huffman s Assumptions X u5 u1 u4 u6 u2 u7 u3 Bounded gate and wire delay model. ircuit 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. hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 39 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 40 / 1 Huffman s A/A SV ircuit Muller s Active/Active SV ircuit X u1 u4 u6 u2 u7 u3 u5 +, +, X+, +, -, -, +, + will not go low until after both u2- and u6- due to feedback delay assumption. hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 41 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 42 / 1

Muller s Assumptions Muller s Active/Active SV ircuit Unbounded gate delay model. Wire delays are assumed to be negligible. Forks are assumed to be isochronic. Model called speed-independent. +, +, +, -, -, +, + change felt at both and gates simultaneously due to isochronic fork assumption. hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 43 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 44 / 1 Timed Wine Shop Timed Winery and Patron Shop_AA_timed:process assign(, 1,0,1); - call winery assign(, 1,0,1); - call patron - wine arrives and patron arrives guard_and(, 1,, 1 ); assign(, 0,0,1); assign(, 0,0,1); - wait for and to reset guard_and(, 0,, 0 ); winery:process guard(, 1 ); - wine requested assign(, 1,2,3); - deliver wine guard(, 0 ); assign(, 0,2,3); patron:process guard(, 1 ); - shop called assign(, 1,5,inf); - buy wine guard(, 0 ); assign(, 0,5,7); hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 45 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 46 / 1 TEL Structure for Timed Wine Shop Eample State Graph for Timed Wine Shop Eample + [2,3] [~] - + [5,7] [~] [2,3] [] [5,inf] [] + [ & ] [~ & ~] + - + - R01R F10F + - 00R0-0F00 - FF00 RR11 + 1R11 + 11F1 - - State vector: (,,, ) hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 47 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 48 / 1

Karnaugh Maps for Timed ircuit Timed ircuit / / 00 1 0 0 01 0 11 1 0 1 10 1 / 00 0 0 0 01 0 11 1 1 1 10 1 [2,3] [5,inf; 5,7] hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 49 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 50 / 1 Performance Analysis Validation versus Verification ycle 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 ecept that the patron is etremely 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 Timed circuit - 15.8 minutes Validation is simulation of interesting situations. Verification is ehaustive checks of all possible situations. an check that circuit conforms to the specification. an check that protocol has certain properties. hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 51 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 52 / 1 Sample Properties Summary of ourse Topics The wine arrives before the patron: Always( ) When the wine is requested, it eventually arrives: Eventually() ommunication hannels ommunication Protocols Graphical Representations Huffman ircuits Muller ircuits Timed ircuits Verification Applications hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 53 / 1 hris J. Myers (Lecture 1: Introduction) Asynchronous ircuit Design 54 / 1