SlideShare a Scribd company logo
Synchronization And Arbitration In Digital
Systems David J Kinnimentauth download
https://ebookbell.com/product/synchronization-and-arbitration-in-
digital-systems-david-j-kinnimentauth-4312852
Explore and download more ebooks at ebookbell.com
Here are some recommended products that we believe you will be
interested in. You can click the link to download.
Synchronization And Control Of Chaos An Introduction For Scientists
And Engineers J M Gonzalezmiranda
https://ebookbell.com/product/synchronization-and-control-of-chaos-an-
introduction-for-scientists-and-engineers-j-m-gonzalezmiranda-2603032
Synchronization And Title Sequences Audiovisual Semiosis In Motion
Graphics Michael Betancourt
https://ebookbell.com/product/synchronization-and-title-sequences-
audiovisual-semiosis-in-motion-graphics-michael-betancourt-33962834
Synchronization And Waves In Active Media 1st Ed Jan Frederik Totz
https://ebookbell.com/product/synchronization-and-waves-in-active-
media-1st-ed-jan-frederik-totz-10485290
Synchronization And Triggering From Fracture To Earthquake Processes
Laboratory Field Analysis And Theories 1st Edition Teimuraz
Matcharashvili
https://ebookbell.com/product/synchronization-and-triggering-from-
fracture-to-earthquake-processes-laboratory-field-analysis-and-
theories-1st-edition-teimuraz-matcharashvili-1640818
Synchronization And Control Of Multiagent Systems Automation And
Control Engineering 1st Edition Dong Sun
https://ebookbell.com/product/synchronization-and-control-of-
multiagent-systems-automation-and-control-engineering-1st-edition-
dong-sun-1657670
Chaos Synchronization And Cryptography For Secure Communications
Applications For Encryption 1st Edition Santo Banerjee
https://ebookbell.com/product/chaos-synchronization-and-cryptography-
for-secure-communications-applications-for-encryption-1st-edition-
santo-banerjee-23859910
Mathematical Models Of Rhythm Synchronization And Anticipation Iran R
Roman
https://ebookbell.com/product/mathematical-models-of-rhythm-
synchronization-and-anticipation-iran-r-roman-52387214
Brain Dynamics Synchronization And Activity Patterns In Pulsecoupled
Neural Nets With Delays And Noise Hermann Haken
https://ebookbell.com/product/brain-dynamics-synchronization-and-
activity-patterns-in-pulsecoupled-neural-nets-with-delays-and-noise-
hermann-haken-2192002
Digital Clocks For Synchronization And Communications Masami Kihara
https://ebookbell.com/product/digital-clocks-for-synchronization-and-
communications-masami-kihara-1617604
Synchronization And Arbitration In Digital Systems David J Kinnimentauth
Synchronization and
Arbitration in Digital Systems
Synchronization and Arbitration in Digital Systems D. J. Kinniment
© 2007 John Wiley & Sons, Ltd. ISBN: 978-0-470-51082-7
Synchronization and
Arbitration in Digital Systems
David J. Kinniment
School of EECE, University of Newcastle, UK
Copyright © 2007 John Wiley & Sons Ltd, The Atrium, Southern Gate, Chichester,
West Sussex PO19 8SQ, England
Telephone (⫹44) 1243 779777
Email (for orders and customer service enquiries): cs-books@wiley.co.uk
Visit our Home Page on www.wileyeurope.com or www.wiley.com
All Rights Reserved. No part of this publication may be reproduced, stored in a
retrieval system or transmitted in any form or by any means, electronic, mechanical,
photocopying, recording, scanning or otherwise, except under the terms of the Copyright,
Designs and Patents Act 1988 or under the terms of a licence issued by the Copyright
Licensing Agency Ltd, 90 Tottenham Court Road, London W1T 4LP, UK, without the
permission in writing of the Publisher. Requests to the Publisher should be addressed
to the Permissions Department, John Wiley & Sons Ltd, The Atrium, Southern Gate,
Chichester, West Sussex PO19 8SQ, England, or emailed to permreq@wiley.co.uk, or
faxed to (⫹44) 1243 770620.
This publication is designed to provide accurate and authoritative information in regard to
the subject matter covered. It is sold on the understanding that the Publisher is not engaged
in rendering professional services. If professional advice or other expert assistance is
required, the services of a competent professional should be sought.
Other Wiley Editorial Offices
John Wiley & Sons Inc., 111 River Street, Hoboken, NJ 07030, USA
Jossey-Bass, 989 Market Street, San Francisco, CA 94103-1741, USA
Wiley-VCH Verlag GmbH, Boschstr. 12, D-69469 Weinheim, Germany
John Wiley & Sons Australia Ltd, 42 McDougall Street, Milton, Queensland 4064,
Australia
John Wiley & Sons (Asia) Pte Ltd, 2 Clementi Loop #02-01, Jin Xing Distripark, Singapore
129809
John Wiley & Sons Canada Ltd, 6045 Freemont Blvd, Mississauga, ONT, L5R 4J3
Wiley also publishes its books in a variety of electronic formats. Some content that appears
in print may not be available in electronic books.
Anniversary Logo Design: Richard J. Pacifico
British Library Cataloguing in Publication Data
A catalogue record for this book is available from the British Library
ISBN 978-0470-51082-7
Typeset in 10.5/13pt Sabon by Thomson Digital
Printed and bound in Great Britain by TJ International Ltd, Padstow, Cornwall
This book is printed on acid-free paper responsibly manufactured from sustainable forestry
in which at least two trees are planted for each one used for paper production.
Contents
Preface ix
List of Contributors xiii
Acknowledgements xv
1 Synchronization, Arbitration and Choice 1
1.1 Introduction 1
1.2 The Problem of Choice 2
1.3 Choice in Electronics 3
1.4 Arbitration 5
1.5 Continuous and Discrete Quantities 6
1.6 Timing 7
1.7 Book Structure 9
Part I 11
2 Modelling Metastability 13
2.1 The Synchronizer 14
2.2 Latch Model 21
2.3 Failure Rates 23
2.3.1 Event Histograms and MTBF 28
2.4 Latches and Flip-flops 32
2.5 Clock Back Edge 35
3 Circuits 39
3.1 Latches and Metastability Filters 39
3.2 Effects of Filtering 41
vi CONTENTS
3.3 The Jamb Latch 42
3.3.1 Jamb Latch Flip-flop 45
3.4 Low Coupling Latch 47
3.5 The Q-flop 49
3.6 The MUTEX 50
3.7 Robust Synchronizer 52
3.8 The Tri-flop 55
4 Noise and its Effects 59
4.1 Noise 59
4.2 Effect of Noise on a Synchronizer 62
4.3 Malicious Inputs 63
4.3.1 Synchronous Systems 63
4.3.2 Asynchronous Systems 66
5 Metastability Measurements 69
5.1 Circuit Simulation 69
5.1.1 Time Step Control 70
5.1.2 Long-term τ 71
5.1.3 Using Bisection 73
5.2 Synchronizer Flip-flop Testing 75
5.3 Rising and Falling Edges 79
5.4 Delay-based Measurement 81
5.5 Deep Metastability 83
5.6 Back Edge Measurement 95
5.7 Measure and Select 97
5.7.1 Failure Measurement 97
5.7.2 Synchronizer Selection 98
6 Conclusions Part I 101
Part II 103
7 Synchronizers in Systems 105
7.1 Latency and Throughput 105
7.2 FIFO Synchronizer 108
7.3 Avoiding Synchronization 110
7.4 Predictive Synchronizers 113
7.5 Other Low-latency Synchronizers 115
7.5.1 Locally Delayed Latching (LDL) 115
7.5.2 Speculative Synchronization 118
CONTENTS vii
7.6 Asynchronous Communication Mechanisms (ACM) 125
7.6.1 Slot Mechanisms 128
7.6.2 Three-slot Mechanism 128
7.6.3 Four-slot Mechanism 130
7.6.4 Hardware Design and Metastability 132
7.7 Some Common Synchronizer Design Issues 133
7.7.1 Unsynchronized Paths 133
7.7.2 Moving Metastability Out of Sight 135
7.7.3 Multiple Synchronizer Flops 138
8 Networks and Interconnects 143
8.1 Communication on Chip 143
8.1.1 Comparison of Network Architectures 147
8.2 Interconnect Links 150
8.3 Serial Links 155
8.3.1 Using One Line 155
8.3.2 Using Two Lines 157
8.4 Differential Signalling 159
8.5 Parallel Links 161
8.5.1 One Hot Codes 162
8.5.2 Transition Signalling 166
8.5.3 n of m Codes 167
8.5.4 Phase Encoding 168
8.5.5 Time Encoding 175
8.6 Parallel Serial Links 180
9 Pausible and Stoppable Clocks in GALS 183
9.1 GALS Clock Generators 184
9.2 Clock Tree Delays 188
9.3 A GALS Wrapper 190
10 Conclusions Part II 193
Part III 197
11 Arbitration 199
11.1 Introduction 199
11.2 Arbiter Definition 200
11.3 Arbiter Applications, Resource Allocation Policies
and Common Architectures 202
viii CONTENTS
11.4 Signal Transition Graphs, Our Main Modelling
Language 205
12 Simple Two-way Arbiters 209
12.1 Basic Concepts and Conventions 209
12.1.1 Two-phase or Non-return-to-zero (NRZ)
Protocols 210
12.1.2 Four-phase or Return-to-zero (RTZ)
Protocols 211
12.2 Simple Arbitration Between Two Asynchronous
Requests 212
12.3 Sampling the Logic Level of an Asynchronous
Request 217
12.4 Summary of Two-way Arbiters 222
13 Multi-way Arbiters 225
13.1 Multi-way MUTEX Using a Mesh 226
13.2 Cascaded Tree Arbiters 227
13.3 Ring-based Arbiters 230
14 Priority Arbiters 235
14.1 Introduction 235
14.2 Priority Discipline 236
14.3 Daisy-chain Arbiter 238
14.4 Ordered Arbiter 239
14.5 Canonical Structure of Priority Arbiters 240
14.6 Static Priority Arbiter 241
14.7 Dynamic Priority Arbiter 246
15 Conclusions Part III 253
References 255
Index 261
Preface
Most books on digital design only briefly touch on the design of
synchronizers and arbiters, with maybe two or three pages in a 300
page book, or a chapter at most. This is because there was no real need
for it in the early years of computer design. Processors were largely self-
contained and used a single clock, so interfacing the processor to slow
peripherals, or other processors was not seen as a major task. The fact
that it is not simple emerged in the 1970s and 1980s when data rates
between processors increased, and sometimes systems with more than
one time zone were being designed. Despite frequent synchronization
failures because of lack of understanding of the design principles at
that time, synchronization still did not make it into the standard litera-
ture, and very little has been written since about how they should be
designed. More recently processors are being designed with many more
high-speed ports linked to networks, and the systems themselves are
often made up of several core processors connected to an internal bus
or network on chip. This means that processors operating on different
time frames must communicate at high data rates, and when two or
more processors request access to a common resource, there has to be
some arbitration to decide which request to deal with first.
The need for synchronizers to ensure that data coming from one time
frame is readable in another, and arbiters to ensure that a clean deci-
sion is taken has always been there, but the understanding has not. Our
aim is to promote good design in these areas because the number of
timing interface circuits is escalating as the number of multiprocessor
systems grows. A single processor interfacing to the real world through
a few slow peripherals will not have many problems, but as the number
of input/output ports increases, and the data rates increase, difficulties
with reliability, data latency and design robustness will also increase.
x PREFACE
This book has been written to meet the need for an understanding of
the design of synchronizers and arbiters. It is intended for those involved
in the design of digital hardware that has to interface to something else;
other hardware, a communication system, or in the end, people. Only
systems that do not interface to the outside world are free from the need
to deal with synchronization and arbitration. It is divided into three
sections. Section I deals with the fundamental problem of metastability.
Any system that has to make a choice between two similar alternatives
will end up taking longer and longer as the two alternatives approach
each other in desirability, and if the amount of time available is limited,
the decision mechanism will fail at a predictable rate. We describe the
theory of this and how it affects practical circuits, so that the reader
may be able to choose a suitable circuit for a particular application,
and how to measure its reliability and performance. Section II looks
at synchronizers in systems. In a multiprocessor system, the timing
in each processor may be completely independent, linked by stoppa-
ble clocks as in globally asynchronous locally synchronous (GALS)
systems, or partly linked for example by means of phase-locked loops.
To optimize the system performance and reliability the synchronization
method should be chosen to fit the methodology, and several examples
are given. Arbitration has a section of its own, Section III, where the
design of arbiters is approached by starting from a specification and
developing asynchronous arbiters from simple daisy-chain circuits up to
fully dynamic arbiters taking account of the priority required by each
packet of data.
I am indebted to many of my colleagues for discussions over the years
about the design of computer systems, but most particularly to those
involved with the ASYNC series of seminars where interfacing systems
using different timing methods, synchronous, asynchronous, and
clocks with different frequencies has been a recurring theme. Because
asynchronous systems are themselves made up of many high-speed
components interacting together, it is there that the problems of timing
are at their most acute, and many of the methods described had their
first outing at one of the ASYNC seminars. Colleagues at Newcastle
University have not only contributed to the text and reviewing of much
of the manuscript, but have also provided much to the ideas contained
in the book. In the end what matters is whether the techniques are
applicable in the industrial world, and for this reason I am grateful for
the input provided over many years from people who designed comput-
ers ranging from the Ferranti ATLAS in the early 1960s to SUN and
INTEL in 2007. Those that are interested in a fuller bibliography that
PREFACE xi
the references provide at the end of the book might like to look at Ian
Clark’s excellent website:
http://iangclark.net/metastability.html
David J. Kinniment
Newcastle, UK
List of Contributors
Although contributions to individual chapters have not been specified,
four of my colleagues have provided substantial input to this book and
their part in its preparation is gratefully acknowledged here.
Alexandre Bystrov University of Newcastle upon Tyne
Marc Renaudin INPG TIMA Laboratory, Grenoble
Gordon Russell University of Newcastle upon Tyne
Alexandre Yakovlev University of Newcastle upon Tyne
Acknowledgements
The authors would like to acknowledge the many contributions of
Charles E. Dike, Intel Corp, arising from collaborative work between
Intel and Newcastle University, and supported by UK EPSRC research
grant EP/C007298/1. The help of Ran Ginosar and Mark Greenstreet
in discussing the issues, and at Cambridge and Newcastle Universities,
RobertMullins,FeiXia,EnzoD’AlessandroandJunZhouincommenting
on several of the chapters is also gratefully acknowledged.
Some of the material in this book has been based on work published
in the following papers and is reproduced by permission of the IEEE:
Synchronization Circuit Performance, by D.J. Kinniment, A. Bystrov,
and A.V. Yakovlev which appeared in IEEE Journal of Solid-State Cir-
cuits, 37(2), 202–209 © 2002 IEEE.
Analysis of the oscillation problem in tri-flops, by O. Maevsky, D.J.
Kinniment, A.Yakovlev, and A. Bystrov which appeared in Proc. IS-
CAS’02, Scottsdale, Arizona, May 2002, IEEE, volume I, pp 381–384
© 2002 IEEE.
Priority Arbiters, by A Bystrov, D.J. Kinniment, and A. Yakovlev which
appeared in ASYNC’00, pp 128–137. IEEE CS Press, April 2000 © 2002
IEEE.
Measuring Deep Metastability, by D.J. Kinniment, K Heron, and G
Russell which appeared in Proc. ASYNC’06, Grenoble, France, March
2006, pp 2–11 © 2006 IEEE.
A Robust Synchronizer Circuit, by J Zhou, D.J. Kinniment, G Russell,
and A Yakovlev which appeared in Proc. ISVLSI’06, March 2006,
pp 442–443 © 2006 IEEE.
Multiple-Rail Phase-Encoding for NoC, by C. D’Alessandro, D.
Shang, A. Bystrov, A. Yakovlev, and O. Maevsky which appeared in
Proc. ASYNC’06, Grenoble, France, March 2006, pp 107–116 © 2006
IEEE.
Demystifying Data-Driven and Pausible Clocking Schemes, by R
Mullins and S Moore which appeared in Proc. 13th Intl. Symp. on
Advanced Research in Asynchronous Circuits and Systems (ASYNC),
2007 pp 175–185 © 2007 IEEE.
Efficient Self-Timed Interfaces for crossing Clock Domains by
Chakrabortyand M.Greenstreet,whichappearedinProc.ASYNC2003,
Vancouver, 12–16 May 2003, pp 78–88 © 2003 IEEE.
xvi ACKNOWLEDGEMENTS
1
Synchronization, Arbitration
and Choice
1.1 INTRODUCTION
Digital systems have replaced their analog counterparts in computers, signal
processing and much of communications hardware at least partly because
they are much more reliable. They operate in a domain of absolutes where
all the data moving from one place to another is quantized into defined high
or low voltages, or binary coded combinations of highs and lows. The great
advantage of this is that the data represented by the voltages can be pre-
served in the presence of small amounts of noise, or variations in component
or power supplies, which can affect the voltages. A small variation in a high
is still easily distinguished from a low, and a simple circuit, such as a gate or
an inverter, can easily restore the correct output level.
In a synchronous system the signal states are also held by flip-flops
when the clock ticks. Clocking digitizes time into discrete intervals of
time, which are multiples of the clock cycle, with data computed dur-
ing the first part of the cycle, and guaranteed correct on the next clock
rising edge. Small variations in the time taken to evaluate a partial result
have no effect on a correctly designed digital system, the data is always
correct when it is next clocked. This discipline of two discrete voltage
levels and time measured in multiples of the clock period allows most
digital components to operate in a controlled environment, provided
their outputs do not vary by more than a certain amount from the
specified highs and lows, and their output times change only within
Synchronization and Arbitration in Digital Systems D. J. Kinniment
© 2007 John Wiley & Sons, Ltd. ISBN: 978-0-470-51082-7
2 SYNCHRONIZATION, ARBITRATION AND CHOICE
a narrow band of times, a processor built on the components can be
shown to operate correctly.
While this idea has worked well in electronic design for over 50 years
the ideal world of a single system of discrete voltage levels and time
intervals is not the real world. Within a processor binary data can be
moved from one place to another under the control of a single clock, but
to be useful the processor must be able to interact with inputs from the
outside world, and to send its results back to the real world. Events in
the real world are uncertain and unpredictable, the voltage levels from
sensors are, at least initially, not the standard high or low voltage, they
can occur at any time and can be any voltage level. We can try to hide
this problem by using an analog-to-digital converter component which
attempts to provide only standard outputs from analog inputs, but this
can only ever be partly successful, since it involves a decision when an
input is approximately halfway between two possible discrete output
representations and one or the other output must be chosen. The map-
ping of input signal changes to discrete times also presents a problem.
When a new input occurs that needs attention from a digital processor,
the closed world of the processors discrete voltages and times must be
interrupted so that the input can be dealt with. Again, there is a choice,
which one out of an integral number of discrete clock cycles should be
used to start the processing of that input? Since the input change can
occur at any time, there will be occasions when the input is just before
the next clock tick, and occasions when it is just after. If it is just before,
it gets processed on the next tick, if it is after; it waits until the follow-
ing tick to be noticed. The problem comes when it happens very close to
the clock tick, because then there are two possibilities, this cycle, or the
next cycle, and both of them are more or less equally desirable.
1.2 THE PROBLEM OF CHOICE
It looks as if it is easy to make the choices, and it is not a new problem.
Whether you can make the choice in an acceptable time, and what it is
that determines the choice it something that worried philosophers in the
middle ages [1]. One of the first clear statements of the arguments was
given by the Arab philosopher Abu Hamid Muhammad Ibn Muhammad
al-Tusi al-Shafi’i al-Ghazali who wrote around 1100 AD:
Suppose two similar dates in front of a man who has a strong desire for them,
but who is unable to take them both. Surely he will take one of them through
a quality in him, the nature of which is to differentiate between two similar
things.
He felt that it was obvious that a man or woman would be able to make
the choice, and more specifically, to make the choice before starving to
death from lack of food. But in order to decide you have to have some
basis for choosing one course of action or another when they appear to
be equal in value. His ‘differentiating quality’ was free will, which was
thought to be inherent in mankind, but not in animals or machines.
The counter-argument is best given by Jehan Buridan, Rector of Paris
University around 1340, in his example of the problem of choice which
is usually known as the paradox of Buridan’s Ass. In this example a
dog is presented with two bowls, or an ass with two bales of hay. It
has to choose one of them to eat or else starve to death. Animals were
chosen deliberately here because they were not thought to be capable of
free will, but even so, he discounts free will as the determining factor
writing:
Should two courses be judged equal, then the will cannot break the deadlock, all
it can do is to suspend judgment until the circumstances change, and the right
course of action is clear.
His insight was that the time required for a difficult decision would
depend on the evidence available to make it, and if there is insufficient
evidence it takes a long time. The implication is that there would be cases
when even a man could starve to death because he could not decide.
1.3 CHOICE IN ELECTRONICS
As a philosophical discussion, the problem of choice without preference
does not have much impact on real life, but it began to acquire real
importance in the 1950s when the first digital computers were designed.
For the first time many inputs could be processed in a very short space
of time, and each input had first to be synchronized to the processor
clock [2].
The solution seems obvious, if a digital signal represents the presence
of an input, then it may appear at any time, but it can be synchronized
to the clock with a simple flip-flop. This circuit is shown in Figure 1.1.
When the system clock goes high, the output of the flip-flop will go high
if the input was present, and not if it was absent so that the request can
CHOICE IN ELECTRONICS 3
4 SYNCHRONIZATION, ARBITRATION AND CHOICE
be processed in the next clock cycle. The difficulty with this solution is
that the input request timing may violate the conditions for which the
flip-flop specification is valid. A flip-flop data input must not change
after a specified set-up time before the clock rising edge, or before a
specified hold time after the clock edge. If it does, any guarantee that
the output time will be within the specified times cannot hold.
In fact, as the input change gets closer to the clock edge, the flip-flop
takes and longer to respond because the energy supplied by the overlap
between data and clock inputs gets less and less, so it takes longer and
longer to decide whether or not to interrupt the processor. Eventually,
it reaches a level that is just sufficient to bring the Q output of the flip-
flop to half way between a high, and a low value. At this point the
flip-flop output is exactly balanced between high and low when the
clock edge has finished, with no determining factor to push it one way
or the other, so it can stay there for a relatively long time. This halfway
state is known as a metastable state because it is not stable in the long
term, it will eventually go on to be high or fall back to low, but in the
metastable state the circuit has no drive towards either the high or low
output values. The final outcome may be decided by internal noise, and
though a metastable circuit will eventually settle in a well-defined state,
the time taken is indeterminate, and could be very long.
Input request
System clock
Data
Clock
Q
Process
this cycle
Input request
System clock
Set-up
time
Hold
time
Change not
allowed
Figure 1.1 Flip-flop specification.
If the input time cannot be constrained to change before the set-up
time and after the hold time, then the flip-flop output time cannot be
constrained either, so all output times relative to the clock also have a
finite probability. This can have a knock on effect. If the output can
change at any time between one clock edge and the next, it has not been
truly synchronized to the clock, and might change part way through
a clock cycle. This breaks the rules for a reliable digital system, with
the result that systems may fail unpredictably because the processing
of the interrupt may not be correct. The probability of a failure in the
synchronization process can be very low for an individual interrupt,
but because digital processors have to deal with very many inputs per
second, the probability of catastrophic failure over a long period of time
is not low, and must be at least quantified. It can only be eliminated by
removing the need to synchronize, or reduced by allowing more time
for the synchronizer to settle. Since there is always a small possibility
of a very long settling time we must accept the possibility of failure in
systems with a fixed clock period.
This fundamental problem was known to a few people in the early
years of computing [2,3], but many, if not most engineers were not aware
of the problems presented by synchronizers. In 1973 a special work-
shop on synchronizer failures was held by Charles Molnar, Director of
the Computer Systems Laboratory of Washington University, St Louis
to publicize the problem and following this, more people began to
accept that computers had been, and were being designed that were
unreliable because the designers did not fully understand the problem
of metastability. In an article in Scientific American that year a Digital
Equipment Corporation engineer is quoted as saying ‘ninety-nine out of
a hundred engineers would probably deny the existence of the problem.
They believe that conservative design is all you need; you simply allow
enough time for a flip-flop to reach a decision. But as computers are
designed to run faster and faster the safety factor gets squeezed out…
the problem looks irresolvable.’ Even as late as the 1980s a major glitch
in the early warning missile radar system was attributed to a poor
understanding by designers of the issue of synchronization.
1.4 ARBITRATION
A related problem occurs even if there is no clock. Without a clock, there
is no need for synchronization between the input and the clock, but
there is a need for arbitration between two competing inputs. Suppose
ARBITRATION 5
6 SYNCHRONIZATION, ARBITRATION AND CHOICE
two entirely seperate processors are competing for access to a memory,
and only one can be allowed access at a time. The first to request access
might get it, and when the memory access is complete, the second is
allowed in. But if both make the request within a very short space of
time, something must arbitrate between the requests to decide which
gets the first access and which the second. As far as the hardware is
concerned arbitration is much the same as synchronization, instead
of deciding whether the request or the clock tick came first, we are
deciding between two (or more) requests. It is only different in the way
the arbiter output is treated. If there is no clock in the memory, it does
not matter when the arbiter decides which input to accept, provided the
data returned by the memory can be processed by the requester at any
time. An arbiter can be designed which does not ever fail as a synchro-
nizer might do, because it does not have to make the decision within a
clock cycle. As the two requests get closer and closer in time, the arbi-
tration takes longer and longer, and since the requests can occur within
an infinitesmally small time, the response can take an infinitely long
time. Instead of a failure rate there is a small probability of very long
times, which may matter just as much in a real-time application as small
probability of failure. Does it matter if a plane flies into a mountain
because the navigation system fails, or it flies into the mountain because
it cannot decide in time which way to go around?
1.5 CONTINUOUS AND DISCRETE QUANTITIES
Are we stuck with computer systems that may fail, or may not provide
answers in the time we need them, or is there some circuit solution that
will solve the problem? Unfortunately the basic problem has little to do
with circuits. It is that real world inputs are continuous in both voltage
and time. A continuous voltage input can have any value between the
maximum and the minimum voltage level, say between 0 and 1V, and
there are an infinite number of possible values, 0.1, 0.2, 0.5V, etc.
between those two limits. On the other hand there are only two possible
voltages for a binary coded signal, which might be 0 or 1V. To decide
which we must make a comparison between a fixed value, maybe 0.5V,
and the input. If the input is less than 0.5V the output is 1, and if
it is greater than 0.5V the output is zero. It is possible to choose a
voltage of 0.49V as an input. This will be only 0.01V different from the
comparison value, so the comparison circuit has only a small voltage to
work on. Any real physical circuit takes some time to produce an output
of 1V, and the smaller the input, the longer it takes. With a 0.4999V
input the circuit has an input of only 0.0001V to work on, so it takes
much longer to make the comparison, and in general there is no limit to
the time that might be required for the comparison, because the input
to the comparator circuit can be infinitesimally small.
Similarly, the processor interrupt can occur at an infinite number of
instants between one clock edge and the next, and comparisons may
have to be made on an infinitesimally small time interval. Again that
could mean an infinite response time, and there will be a resulting
probability of failure. To compute the failure rate you only need to
decide the maximum time that the synchronizer has available to make
its comparison, and then estimate how often the comparator input is
small enough to cause the output to exceed that maximum.
1.6 TIMING
Synchronization of data passing between two systems is only necessary
if the timing of the systems is different. If both systems work to the
same clock, then they are synchronous and changes in the data from
one system are always made at the same time in its clock cycle. The
receiving system knows when the data is stable relative to its own clock
and can sample it at that time so no synchronization is necessary. There
are many possible clocking schemes for systems on a chip and Figure 1.2
shows three of them. In (a) a single clock is fed to all the processors, so
that the whole system is essentially synchronous.
If the two clocks are not the same but linked, maybe through a phase
locked loop, the relative timing might vary a little, but is essentially
stable. Provided this phase variation is limited, it is still possible to
transfer data at mutually compatible times without the need to use a
synchronizer. The relationship is known as mesochronous. In (b), the
individual processor clocks are all linked to the same source so that the
timing is still synchronous or mesochronous. Often it is not possible
to link the clocks of the sending and receiving system as they may be
some distance apart. This is the situation in (c). Both clock frequen-
cies may be nominally the same, but the phase difference can drift over
a period of time in an unbounded manner. This relationship is called
plesiochronous and there are times when both clocks are in phase and
times where they are not. These points are to some extent predictable
in advance, so synchronization can be achieved by predicting when
conflicts might occur, and avoiding data transfers when the two clocks
TIMING 7
8 SYNCHRONIZATION, ARBITRATION AND CHOICE
Processor 1
Processor 5
Processor 4
Processor 3
Proces
(a)
(b)
sor 2
Clock
Processor 1
Processor 5
Processor 4
Processor 3
Processor 2
High
frequency
Clock
f/3
f/5
φ/3
f/2
Proc
(c)
essor 1
Clock 1
Processor 5
Clock 5
Processor 4
Clock 4
Processor 3
Clock 3
Processor 2
Clock 2
Figure 1.2 Clocking schemes: (a) single clock, multiple domains; (b) rational clock
frequencies; (c) multiple clocks.
conflict. If the time frame of one system is completely unknown to the
other, there is no way that a conflict can be avoided and it is essential
that data transfers are synchronized every time. In this case the path
is heterochronous. Heterochronous, plesiochronous and mesochronous
are all examples of asynchronous timing.
1.7 BOOK STRUCTURE
The rest of this book has three main Parts. Part I is concerned with
basic models of metastability in circuits, Part II with synchronization in
systems, and Part III with arbitration.
In Part I, Chapters 2-5, mathematical models for metastability are
derived which can be applied to simple synchronizer circuits with a view
to explaining how the failure rates vary in different conditions. Having
established the mathematical tools for comparing different circuits we
present the key circuits used for synchronization and arbitration, the
mutual exclusion element (MUTEX), the synchronizer Jamb latch,
and the Q-flop. Modifications of these basic circuits to achieve higher
performance and arbitration between more than two inputs are also
described. Chapter 4 shows how thermal and other noise effects affect
metastability, and the basic assumptions that must be satisfied in a system
to allow the simple MTBF formulas to be used. Chapter 5 describes
how metastability and synchronizer reliability can be measured. The
metastability Tw and resolution time constant τ are defined and then
methods for plotting typical histograms of failures against output time.
From this we derive mean time between synchronizer failure in a system
against synchronizer time, and input time against output time. Test
methods suitable for on and off chip synchronizer measurement, both
for custom ICs and field programmable devices, are discussed together
with appropriate time measuring circuits. System reliability is depend-
ent on metastable events occurring very late in the clock cycle, where
the final state is determined by noise, or ‘deep metastability’. Methods
for measuring effects in this region including the effect of the back edge
of the clock are explained.
In Part II, Chapters 6 and 7 discuss how synchronizers fit into a
digital system. In Chapter 6, a system level view of synchronizers in
presented. Where synchronization occurs in a multiply clocked system,
how it can be avoided, and where it cannot be avoided, how to mitigate
the effects of latency due to synchronizer resolution time are discussed.
BOOK STRUCTURE 9
10 SYNCHRONIZATION, ARBITRATION AND CHOICE
High-throughput, low-latency, and speculative systems are described in
Chapter 7, with the trade-offs between these two aspects of design. An
alternative to multiple independent clocks is to use stoppable or pau-
sible clocks. How these fit into a GALS system shown in Chapter 8.
Chapter 9 concludes this Part.
Chapters 10–14 (Part III) present ideas about designing complex
asynchronous arbiters using the building blocks studied in the previous
chapters, such as synchronizers and mutual exclusion elements. These
arbiters are built as speed-independent circuits, a class of circuits that
guarantees their robust operation regardless of gate delays and any delay
in handshake interconnects with the environment. A general definition
for an arbiter is given and then a range of arbiters is covered, from simple
two-way arbiters to tree-based and ring-based arbiters, finishing with
a detailed examination of various types of priority arbiters, including
static and dynamic priority schemes. The behaviour of arbiters is
described throughout by Petri nets and their special interpretation signal
transition graphs. The latter replace sets of traditional timing diagrams
and provide a compact and formal specification of nontrivial dynamic
behaviour of arbiters, potentially amenable to formal verification by
existing Petri net analysis tools. The presented models and circuits
enable solving complex arbitration problems encountered in a wide
range of applications such as system-on-chip buses, network-on-chip
and asynchronous distributed system in a more general sense.
Part I
2
Modelling Metastability
Asynchronous data originating from outside a clocked system has to be
synchronized to the clock before it can be used. This usually involves
a choice made on the basis of the arrival time of the data, which is a
continuous variable, and the result of the decision, which clock edge to
use, is discrete. In this situation it is possible to have very small input
time differences between the data available signal and the clock. Such
choices are difficult as the input energy to the synchronizer circuit falls
towards zero when the time difference becomes small, and the response
time of the circuit then approaches infinity. In fact there is always a
point at which the synchronizer time response can become longer than
the available time, and the synchronizer circuit fails because its output
has not reached a stable state [4,5].
Asynchronous systems have a similar problem where the system must
decide which of two or more asynchronous requests for a common
processing resource is to be granted first. In this case the circuit that
makes the decision is called an arbiter, and the input energy to the arbiter
is also derived from the time differences between the inputs. Again, this
time difference is a continuous variable and can also approach zero, with
the result that the arbitration time can approach infinity [5,6]. In both
cases the decision element, usually a flip-flop, has become metastable,
and the resolution time of metastability in a flip-flop is important to the
reliability of the system.
Synchronization and Arbitration in Digital Systems D. J. Kinniment
© 2007 John Wiley & Sons, Ltd. ISBN: 978-0-470-51082-7
14 MODELLING METASTABILITY
2.1 THE SYNCHRONIZER
Most commonly metastability is seen in synchronization of data passing
from one time domain into another. If the receiving domain is clocked,
but the data input comes from a sending zone which may be clocked, but
whose timing is unrelated to the receiver clock, we must first synchronize
the data available signal to the receiving clock before any processing can
be done. Typical synchronizer circuits use two edge-triggered flip-flops
clocked by the receiving clock to achieve synchronization, as shown in
Figure 2.1 with a time delay between the clocking of the first and second
flip-flops.
The time delay is there to allow metastable levels in the first flip-
flop to resolve before the second flip-flop is clocked, and therefore has
a strong impact on the reliability of the synchronizer. The longer the
flip-flop is given to resolve metastability the less likely it is that the syn-
chronizer will fail. A flip-flop normally has two stable states, but the
transition time between them is only guaranteed if the inputs conform
to the set-up and hold times between data and clock. In the synchro-
nizer the set-up and hold conditions will often be violated because the
data available and clock timing are unrelated, so in a typical situation
any value of time difference between them is possible. When the data
input changes at a time close to the clock edge, the circuit outputs can
be left in a metastable state, and the synchronizer designer needs to
know how much time to allow in order to keep the chance of failure to
an acceptable level
The edge-triggered flip-flops in the synchronizer are usually made
from two level triggered latches in a master slave arrangement as shown
in Figure 2.2. When the clock level is low, the master is transparent,
Receiver Clock
Data
Available
Delayed ReceiverClock
Synchronized
Data Available
Data
Sender Receiver
Q
D
C
Q
D
C
Figure 2.1 Synchronizer.
that is, its data input is copied to the master output, but the slave is
opaque and holds the previous value of the data input. When the clock
goes high, the master becomes opaque, and the slave transparent.
Because the clock and data times are unrelated in a synchronizer the
set-up and hold times of the master latch are frequently violated. The
master output may then go into a metastable state, and it may take
some time to resolve to a well-defined digital level. While the clock is
still high, any metastable level at the master output will also violate the
conditions for the slave to act digitally and metastability can appear
on the slave output. Since the problem is caused by master metast-
ability the synchronization time will depend only on the metastability
resolution time of the master. If the clock goes low before metastabil-
ity is resolved in the master, the slave clock goes high at the same time
and so the slave may now be metastable. From this point onwards any
additional resolution time required depends on the characteristics of
the slave.
To determine what these characteristics are, we need to examine what
happens when the individual master and slave latch circuits become
metastable.
Figure 2.2 Edge-triggered flip-flop made from two latches.
THE SYNCHRONIZER 15
16 MODELLING METASTABILITY
A very simple design for a latch is shown in Figure 2.3. When the
clock is high, both R1 and R2 are high, and the latch is opaque, that
is, it is not affected by the data input and simply retains its previous
state. When the clock goes low, R2 follows the data input, and R1
is the inverse of the data input. If the data input is high, R2 must be
high, and Q is high. If the data input is low R1 is high, R2 low, and Q
becomes high.
There are two ways that the circuit can become metastable, either the
inputs are not digital levels, or the timing conditions are not observed.
In the synchronizer circuit it the data can go high just before the clock
goes high, so in this circuit there may be a runt pulse on R1, followed by
both R1 and R2 going high. At this time the latch output Q may not yet
have reached a high state, but the input from the D input is now inactive
and only the cross-coupled feedback inputs can determine whether it
ends up high or low.
Since R1 and R2 are now high, they take no further part in determining
Q, so what happens then can be illustrated by considering a simple latch
circuit made from two inverters.
This is shown in Figure 2.4(a). Here the input to the inverter on the
left is the same as the output of the one on the right V2, and the input of
the right hand one is the output of the left hand one V1. When the latch
is metastable input and output voltages which are not just high or low
can appear at the two points which are both inputs and outputs to the
inverters. We can plot how the the output changes against the input for
R2
R1
Data
Clock
Q
Q
Figure 2.3 D latch.
each inverter on different graphs, (b), or we can plot them both on the
same graph by flipping the right-hand graph over and superimposing it
on the line for the inverter on the left (c), so that only points, which lie
on both input/output characteristics, are possible for both inverters in
the long term.
One point has V1 0 and V2 1, and another has V1 1 and V2 0.
These points are the two normal stable states. There is also a third point
where V1 V2 1/2, which is the metastable state.
THE SYNCHRONIZER 17
1
0
1
0
V1
V2
1
0
1
0
V2
V1
1
0
1
0
V1
V2
V1=0
Metastable
V1=1
(b)
(c)
V1
V2
(a)
Figure 2.4 Metastability: (a) Latch bistable; (b) Static characteristics of inverters;
(c) Superimposed characteristics.
18 MODELLING METASTABILITY
To see this, suppose that the voltage V1 is held by a voltage source,
and then slowly increased from zero to Vdd as in Figure 2.5.
Suppose V1 is held by the voltage source at a value of Va volts. Because
its input is at Va, the output of the lower inverter in Figure 2.5 is at
Vx. Vx at the input of the upper inverter would normally produce Vb
at its output, but since it is held at a different voltage, Va, a current
is drawn from the voltage source, which is proportional to Va Vb.
Now let’s change the voltage V1 slowly from zero to Vdd. The current
first increases, as the difference between Va and Vb increases, and then
decreases to zero at the central point. Beyond that point, current has to
be pulled out of the of the upper inverter to hold its output down, and
this current only drops to zero at the second stable point where V1 is
high. The two superimposed characteristics are shown in Figure 2.6,
V1
V2
I1
Figure 2.5 Output current against voltage.
0
0.5
1
1.5
2
2.5
3
3.5
3.5
3
2.5
2
1.5
1
0.5
0
–0.5
–0.5
V1
V2
Inverter 1
Inverter 2
Va
Vb
Vx
Figure 2.6 Superimposed characteristics.
and the resulting plot of Va Vb, which is a measure of the current,
against V1 is shown in Figure 2.7.
In a real circuit there is always some stray capacitance associated with
each node, so with a capacitor connected to the output rather than a
voltage source, we can see what will happen when the node is metast-
able. In Figure 2.7 the capacitor is discharged when V1 is on the left-
hand side of the central point, pulling V1 lower, and charged if it is on
the right-hand side, pulling it higher. The central point is not stable.
This kind of instability is analogous to a ball placed on top of a hill
(Figure 2.8) if we make the slope of the hill the same as Figure 2.7,
i.e. positive on the left-hand side and negative on the right-hand side,
there are two stable points where the slope is zero, on either side of the
central, unstable point where the slope is also zero. When the ball is let
go it will eventually roll down to one side or the other, but with careful
placement it can stay in the metastable state at the top for some time.
The analogy of Figure 2.8 shows that the output moves rapidly to either
the V1 1 and V2 0 state or the V1 0 and V2 1 state, the differences
between the actual operating trajectory and the static characteristics being
accounted for by the output capacitance which absorbs the difference
current. The smaller the capacitance, the faster it goes. The central point
is usually called the metastable point, and a latch is said to be metastable if
it is in balance between a 1 and a 0, with the drive towards the two stable
points, called attractors, close to equal. The difficulty with metastability
is that with a net drive of zero, the capacitances are neither charged, nor
discharged, and the circuit can remain at the metastable point for a long
time, much longer than its normal response time with digital inputs.
Figure 2.7 Va Vb drive for different values of V1.
–1.5
–1
–0.5
0
0.5
1
1.5
3.5
3
2.5
2
1.5
1
0.5
0
–0.5
V1
Va
-
Vb
THE SYNCHRONIZER 19
20 MODELLING METASTABILITY
If the input clock/data overlap is very close to a critical point, metast-
ability can be reached from either stable state as shown in Figure 2.9.
This particular photograph was taken by selecting all the metastable
events in a level triggered latch, which lasted longer than 10ns (two
divisions) [6]. Several traces are superimposed, with outputs starting
from both high and low values, then reaching a metastable value about
halfway between high and low, and finally going to a stable low level.
It can be seen that the traces become fainter to the right, showing that
there are some with long metastability times, but fewer than the short
metastability time responses.
If only one flip-flop is used for synchronization, the master latch in
the flip-flop will often be left in a metastable state and a long time may
elapse before its output escapes to a stable high or low. A half level
input, or a change in level as the clock changes in the slave may then
-0.5
0
0.5
1
1.5
2
2.5
3.5
3
2.5
2
1.5
1
0.5
0
-0.5
V1
Height
Figure 2.8 The ball on the hill.
Figure 2.9 Output from a metastable latch.
result in a long time delay in the output data available signal which is
first read by following circuits as a low level, and then later as high.
Figure2.10showstheoutputofaCMOSflip-flopusedinasynchronizer
situation. Many outputs have been captured on a digital oscilloscope at
1ns/division, and though the circuit is specified to have a response time
of around 3ns some of the high-going outputs are 5ns or more after the
clock time. As time increases from left to right, the density of the traces
reduces, because the probability of the output changing reduces. A his-
togram of the number of outputs changing at a particular time is also
shown in this figure (the white area, in which the height at a particular
time is proportional to the number of outputs crossing the Ax line at that
time). If the output changes late, there may be synchronizer failures, but
the longer the delay allowed, the less likely is the synchronizer to fail by
indecision. We can explain metastability qualitatively this way, but to
produce reliable designs a more accurate quantified model is needed.
2.2 LATCH MODEL
In the metastable state both inverters making up the flip-flop are
operating in a linear mode. If they were not, the circuit would never
escape from metastability, and to compute its escape time it is necessary
to analyse the analog response of the basic circuits used. Most models
of flip-flop circuits operating as synchronizers assume that the cross-
coupled gate circuits making up the flip-flop are in a small signal mode,
never far from the metastable state. Here to make the analysis simpler
by eliminating constants, we will assume that the metastable state of the
gates is at 0V, rather than Vdd/2. This means that a digital high output
is Vdd/2, and a low output is Vdd/2.
Figure 2.10 Synchronizer output times.
LATCH MODEL 21
22 MODELLING METASTABILITY
The gates can now be modelled as two linear amplifiers [6–8]. Each
gate is represented by an amplifier of gain A and time constant CR, as
shown in Figure 2.11. Differing time constants due to different loading
conditions can also be taken into account [8].
The small signal model for each gate has a gain A and its output time
constant is determined by C/G, where G is the gate output conductance
and is equal to 1/R. In a synchronizer, both the data and clock timing
may change within a very short time, but no further changes will occur
for a full clock period, so we can also assume that the input is monotonic,
and the response is unaffected by input changes.
For each inverter we can write:
  
C
V
t
G V AG V
2
2
2 2 2 1
d
d
(2.1)
  
C
V
t
G V AG V
1
1
1 1 1 2
d
d
The two time constants can be simplified to:
τ τ
1
1
1
2
2
2
 
C
AG
C
AG
, (2.2)
Figure 2.11 Small signal models of gate and flip-flop. Reproduced from Figure 13,
“Synchronization Circuit Performance” by D.J.Kinniment, A Bystrov, A.V.Yakovlev,
published in IEEE Journal of Solid-State Circuits, 37(2), pp. 202–209 © 2002 IEEE.
Q1 Q2
-A*V1 R2
C2
+
- V2
V2
V1
V1
V2
Eliminating V1, this leads to
0
1
1
1 2
2
1
2
1 2 1
2
 

 
τ τ
τ τ
. .
( )
d
d
d
d
V
t A
V
t A





 V
V1 (2.3)
This is a second-order differential equation, and has a solution of the
form:
V K e K e
a
t
b
t
a b
1  

τ τ
(2.4)
In most practical cases, the inverters have a high gain, and are identical,
so A1, τ τ τ τ
a b
  1 2
.
Both Ka and Kb are determined by the initial conditions, τa and τb by
τ1, τ2, and A. Typical values of τ1, τ2, and A for a, 0.18µ, process, are
35ps for τ1 and τ2 (depending on the loading of the inverters) and 20 for
A. Usually the values of τ1 and τ2 are similar to those of an inverter with
a fan-out of 4, since both times are determined by the capacitances,
conductances, and gain of the transistors in the circuits.
This model is valid within the linear region of about 50mV either side
of the metastable point. Outside this region the gain falls to less than 1
at a few hundred mV, but the output resistance of the inverter and the
load capacitance also drop significantly, R by a factor of more than 10,
and C by a factor of about 2. Thus, even well away from the metast-
able point the values of τ1 and τ2 still have values similar to those at the
metastable point.
2.3 FAILURE RATES
Using the model of metastability above, it is possible to estimate the
input conditions necessary to produce a metastable response of a given
time, and hence how often this time will be exceeded in a synchronizer.
If we assume that we are only interested in metastable events that take
a much longer time than the normal flip-flop response time, we can
neglect the first term in Equation (2.4) for the output voltage and use:
V K e
b
t
1  τ (2.5)
The initial condition Kb depends on the input time overlap between
clock and data. If the data input changes to a high much earlier than
FAILURE RATES 23
24 MODELLING METASTABILITY
the clock, Kb will be positive, so the output voltage will reach the digital
high value of Vdd/2 quickly. If it changes from low to high much later
than the clock Kb will be negative, so the output voltage will reach a
low value quickly. In between, the value of Kb will vary according to
the relative clock data timing, and at some critical point Kb 0, so
the output voltage is stuck at zero. We will call the clock data timing
that gives Kb 0, the balance point, where in the previous analogy, the
ball is exactly balanced on top of the hill and we will measure input
times relative to this point using the symbol ∆tin. The value of Kb is
given by:
K t
b in
θ ∆ (2.6)
where θ is a circuit constant which determines the rate at which the
clock data overlap converts into a voltage difference between the two
nodes. If the cross coupled gates in the flip-flop are 2 input NAND gates
either Vdd, or 0V, and are connected via a conductance Gs to the output
capacitor C for a time ∆tin as shown in Figure 2.12, the output node
will charge or discharge, moving its voltage away from the central point
Vdd/2. Gs is usually less than AG, and τs C/Gs is similar to the rise or
fall time of that gate, so θ≈Vdd/2τs.
Metastability is over when the latch output has reached normal levels,
either high or low. The time taken to reach Ve , the exit voltage where
the trajectory leaves the linear region and can be regarded as a stable
high, or low voltage, can be calculated from Equation (2.5) by putting
V1 Ve. Since Kb θ ∆ tin, this means that the exit time is given by:
t
V
t
e
in
τ
θ
ln
∆





 (2.7)
If the timing relationship between data and clock changes is unknown,
all values of ∆tin are equally probable. In these circumstances It is usual
to assume that the probability of any input smaller than given overlap,
∆tin, is proportional to the size of the overlap, very small values being
Dtin Gs
C
V
Vdd
Figure 2.12 Input time constant.
therefore much less common than large ones. This is usually true if
the timing of both send and receive clocks are independent oscillators.
When the sending data rate is, on average fd and the receiving clock
frequency fc, each data item sent could occur at any time between 0
and 1/fc of the next receiving clock edge, so the probability of that data
available signal having an overlap of ∆tin or less, is fc ∆tin.
Within some long time T there will be fd T data items transmitted, so
the probability of at least one of the overlaps being less than ∆tin is fd fc
T ∆tin.
If the synchronizer fails when the input overlap is shorter than ∆tin by
giving an output response longer than the resolution time allowed, the
mean time between failures will be:
MTBF
f f t
d c in

1
∆
(2.8)
Failure occurs when
∆t
V
e
e
t
in 

θ
τ
so we can get the mean time between failures of the synchronizer as:
MTBF
e
f f V
t
d c e

τθ
(2.9)
This is more usually written as
MTBF
e
f f T
t
d c w

τ
(2.10)
where Tw Ve /θ, and Tw is known as the metastability window.
MTBF depends on fc and fd, which are system parameters rather
than circuit parameters, so we can use Equations (2.8) and (2.10) to
get a characterization of a synchronizer which is dependent only on
the circuit parameters τ and Tw:
∆t T e
in w
t


τ (2.11)
The metastability window is the input time interval for which output
times are longer than normal. If 0∆tin Tw, then the output response
time to Ve, t, is greater than zero, and the circuit is metastable. Input
FAILURE RATES 25
26 MODELLING METASTABILITY
time differences outside this range either cause a normal response or no
change. The value of Tw is determined by the input time constant θ and
the point at which the flip-flop exits from metastability Ve; thus, if
V
V
e
dd

2
Tw is the same order of magnitude as the rise time of the gate. The
value of τ is mainly determined by the feedback loop time constants,
and since both Tw and τ are determined by channel conductances and
gate capacitances, they are likely to be similar. This analysis applies to
most simple latches, but may not hold for more complex devices, made
from gates with more than one time constant in the feedback loop, or
with long interconnections. It is very important for any flip-flop used
for synchronization that it is characterized as a single cell with a fixed
layout, and not assembled from individual gates or, for example, FPGA
cells, because the feedback interconnection may have additional time
constants, and the differential equation that describes the small signal
beviour will be correspondingly complex. An example of multiple time
constants is shown in Figure 2.13, where a latch has been assembled out
of two FPGA cells. In this figure the latch output change is being used
to trigger the oscilloscope, and the figure shows a histogram of clock
events. The time scale is 0.5ns/division. Because of the additional delay
in the feedback loop the resolution time constant is nearly 1ns, and the
histogram of clock to output times rises and falls as a result of oscillation
in the output trajectory. For comparison the histogram from a standard
100
1000
10000
100000
1000000
10000000
5.00E–10
0.00E+00
–5.00E–10
–1.00E–09
–1.50E-09
–2.00E–09
Time, s
Events
Two cells
One cell
Figure 2.13 Multiple FPGA cell latch.
latch on the same FPGA is also shown. Here, the resolution time constant
is much faster at around 40ps and there is no sign of oscillation.
If there is enough delay in the feedback loop, as is the case with latches
constructed from more than one cell, the amplitude of the oscillation
produced can be sufficient to take the gates outside the linear region,
and the oscillation can look like a square wave, which persists for much
longer than the times shown even in Figure 2.13.
If the time allowed for metastability is short, we must also take into
account the first term in the response equation. For many metastable
events, the initial conditions are such that Kb, which is the voltage difference
between output nodes at the start, is less than 10mV, and while Ka, the
common offset at the start, may be as much as 0.5V. In these circumstances
the Ka term is important, but only in determining the response times for
metstable events resolving early. This is because simple circuits using gates
with only one time constant, always reach the linear region quickly. τa is
small outside the linear region and so the Ka term becomes small very
quickly. The metastable events that cause synchronizer failures last a long
time, and will have trajectories that spend most of their time in the linear
region and so we can usually still use the simplified second-order model to
predict the time it takes flip-flop circuits to escape from metastability.
The difference between early and late trajectories, and how they are
affected by the Ka term can be seen in Figure 2.14.
This figure shows the response of the two outputs in a latch against
time as predicted by the small signal model when both outputs start from
a point higher than the metastable level and from a point lower. There
is a common mode initial offset of both outputs given by Ka 150mV
Vout
0.4
0.45
0.5
0.55
0.6
0.65
0.7
140
120
100
80
60
40
20
0
ps
Volts
High Start
Ve
Low Start
Figure 2.14 Model response. Reproduced from Figure 2, “Synchronization Cir-
cuit Performance” by D.J.Kinniment, A Bystrov, A.V.Yakovlev, published in IEEE
Journal of Solid-State Circuits, 37(2), pp. 202–209 © 2002 IEEE.
FAILURE RATES 27
28 MODELLING METASTABILITY
and  150mV from the metastable level of 0.55V for the high start
and low start curves respectively. For both these trajectories Kb 4mV,
representing the initial difference between the two outputs. We use
τa 25ps and τb 42.5ps to represent a typical situation where A is
about 5–10.
It is common for the exit from metastability to be detected by an
inverter with a slightly different threshold from the metastability level
of the flip-flop. Thus when Vout exceeds that level the inverter output
changes from a high to a low. The metastability level of the flip-flop here
is 0.55V, and the threshold level is 0.58V (the dotted line). Vout exceeds
0.58V at 80ps for the high start of 0.7V and at 93ps for the low start
of 0.4V. Note that the time difference depends upon the threshold level,
and that if the high start trajectory never goes below 0.58V, that is
if Kb 4.7mV, metastability is not detectable for output time delays
between 0 and 65ps because the detecting inverter output remains low
all the time. From these curves it can be seen that the metastability
resolution time depends on the value of Ka during the first 100ps, but
not beyond that.
2.3.1 Event Histograms and MTBF
Measurements of flip-flop performance in metastability have been done
in at least two different ways.
The most common measure is to count the number of times in a given
period that metastability lasts longer than a particular time t. This is
a measure of MTBF when the resolution time is t (Equation 2.10). If T
is the time period over which the events are counted, MTBFT/(total
events) (Equation 2.12). A plot of the total events lasting longer than
a particular resolution time for a synchronizer flip-flop is shown in
Figure 2.15 where it is compared with the second measure.
Total events 

T
MTBF
f f T T e
d c w
t
τ (2.12)
The alternative is to count the number of times the output escapes
from metastability within δt of t (events). Again T is the period over
which events are measured, and the number of events that resolve
within δt is


d
dt
f f T e t
d c w
t
τ δ






or
δ
τ
τ
t
f f T T e
d c w
t






 (2.13)
These events are also shown in Figure 2.15. Because the events scale
is logarithmic, and many more events appear if the resolution time is
only slightly reduced, the total events curve is only slightly above the
events curve in most places. The main differences between the two sets
of results are that small variations in the slope of the curve tend to be
slightly exaggerated in the events curve, so that the change in slope
shown in Figure 2.15 at around 6ns appears to be sharper, and the two
curves diverge for output times below the normal propagation time of
the flip-flop.
The same data can be presented in a more useful form (Figure 2.16)
which shows the MTBF against resolution (synchronization) time as
well as the input time required to give a particular resolution time. Using
Equation (2.12) total events can be divided by the time T, during which
the events were collected to give 1/MTBF , and (2.11) enables the value
of ∆tin to be calculated. Graphs like this are also used to find the values
of the circuit parameters τ, and Tw. If at any point we draw a tangent
to the curve (shown by the dashed line in Figure 2.16) the slope of the
tangent is 1/τ, so τ can be calculated. Here it is about 125ps, and the
intercept on the ∆tin axis is Tw. Tw can be measured at the normal propa-
gation time, or at t0, in which case the value of Tw0.107
s here, but if
it is measured from the normal propagation time of the flip-flop, about
3.9ns, Tw 3107
.
1.00E+01
1.00E+02
1.00E+03
1.00E+04
1.00E+05
1.00E+06
1.00E+07
8
7
6
5
4
3
Resolution time, ns
events
Events Total events
Figure 2.15 Events against resolution time.
FAILURE RATES 29
30 MODELLING METASTABILITY
The methods used to measure event histograms from typical circuits
are described in more detail in Section 4.2.
Figure 2.17 shows how an initial offset affects the measurement of
metastability. In Figure 2.17, Ka150mV for the high start curve, and
150mV for the low start, both with τaτb33ps. This is a histogram of
the probability of an output trajectory escaping metastability within 3.3ps
of a particular output time. In order to calculate the model responses in
Figure 2.17 a uniform distribution of voltage offsets Kb has been derived
from a distribution of input time differences by using the relationship be-
tween Kb and ∆tin given in Equation (2.6), where θ10mV/ps in this case.
∆tin vs synchronization time
1.00E-18
1.00E-16
1.00E-14
1.00E-12
1.00E-10
1.00E-08
1.00E-06
8
7
6
5
4
3
Synchronization time, ns
∆
∆
t
in
,
seconds
0.00000001
0.000001
0.0001
0.01
1
100
10000
MTBF,
secs
Figure 2.16 MTBF, τ, and Tw.
Figure 2.17 Events per unit time as a function of metastability time. Repro-
duced from Figure 3, “Synchronization Circuit Performance” by D.J.Kinniment,
A Bystrov, A.V.Yakovlev, published in IEEE Journal of Solid-State Circuits, 37(2),
pp. 202–209 © 2002 IEEE.
Model Response
0.001
0.01
0.1
1
10
200
150
100
50
0
Output time, ps
Events
Low Start
High Start
Slope
In a real experiment the number of events at a particular time is given
by Equation (2.13). In Figure 2.17, τ33ps, Tw Ve/θ33mV/10mV/
ps3.3ps, and δt3.3ps, so this figure shows the output event histo-
gram against output time for the low start and the high start situations
corresponding to the two values of Ka.
We use T3.3ms, fc and fd 30MHz, to get a number of events (in
this case a probability of a number of events if the number is less than
one) of around 1 when t0, though in practice a time T of seconds
would give many more events. The two curves deviate from the expected
straight-line relationship, the high start curve recording no events before
65ps because trajectories with large enough initial conditions do not
intersect the output threshold of 0.58V, and then events are recorded
earlier than expected.
In the low start curve, events are delayed rather than accelerated by
the effects of the Ka et/τa
term in Equation (2.4), so the event histograms
can look quite different at low values of t, though they converge for high
values. This is important if we are going to use the slope of early events
to predict MTBF values for much longer synchronization times, and we
must use the full expression including Ka as well as Kb for calculating
the mean time between synchronizer failures. Putting Vs for the initial
common mode offset voltage Ve for the final voltage where the trajec-
tory leaves the linear region, as before, we have:
V V e t e
e s
t
in
t
a b
 

τ τ
θ ∆ (2.14)
Hence, by the same argument that we used earlier, we can show:
MTBF
e
V V e
f f
t
e s
t
c d
b
a



/τ
τ
θ










(2.15)
Now
T
V V e
w
e s
t



τ
θ
and is no longer constant. In many circuits the initial offset is not
negligible, and so the initial value of Tw can be different from its final
value; either higher, or lower, depending on the polarity of the differ-
ence between Ve and Vs, and it is dangerous to use early values of slope
to calculate τ
FAILURE RATES 31
32 MODELLING METASTABILITY
2.4 LATCHES AND FLIP-FLOPS
If a synchronizer is made from two latches, its reliability depends
straightforwardly on the time allowed for the first latch to resolve
between the rise time of the first and the second latch clocks C1 and
C2 as in Figure 2.18. The MTBF calculation given by Equation (2.10)
applies. The throughput of the two latch arrangement is limited, as the
input data can only be sampled when C1 goes high, and C1 cannot
be taken low until C2 goes high. The resolution time available for the
latch1 output is then only half the cycle time.
To increase the throughput, synchronizers are normally made from
two edge-triggered flip-flops as shown in Figure 2.1. This allows a reso-
lution time approximately equal to the cycle time, but calculation of the
reliability is more complex. The reliability now depends on resolution of
metastability in the master–slave combination, and the important factor
is the probability of resolution before the end of the second half of the
clock cycle, because that is when the synchronized output appears. In
Figure 2.1 both FF1 and FF2 are made from two latches, and the output
of FF1 can become metastable either as a result of metastability in the
master of FF1 being copied through the slave in the first half of the clock
cycle, or metastability in the slave being induced by set-up and hold
C2
C1
D
C
Q
Data
Latch1 Out
D
C
Q
Synchronized
Data Out
Latch1 Latch2
C1
C2
Data
Figure 2.18 Latch-based synchronizer.
condition being violated for the slave of FF1 when the clock goes low at
the beginning the second half of the clock cycle. Slave metastability is
usually caused by metastable events at the output of the master latch in
FF1 that resolve very close to the falling edge of the clock. The number
of such events within a time δt of the clock half-period t/2 is given by
Equation (2.13), and is:
δ
τ
τ
t
f f T T e
d c w
t

2





 (2.16)
Any metastability must be resolved by the slave latch of FF1 in the
second half of the cycle, within a time t/2, so according to Equation
(2.11) only events within a time ∆tin of the balance point of the latch
will cause failures where:
∆t T e
in w
t


2τ (2.17)
Putting ∆tin δt in Equation (2.16) we get the number of events that
cause the synchronizer fail in a long period of time T, which is:
T e
f f T T e
T
f f T T
w
t
d c w
t
w
d c



2
2
τ
τ
τ τ





 w
w
t
e

τ (2.18)
From this we can compute the MTBF of the master slave combination:
MTBF
e
f f T T
t
d c w w

τ τ
(2.19)
The form of Equation (2.19) is exactly the same as Equation (2.10), but
the value of Tw for the edge triggered flip-flop combination is Tw
2
/τ, which
is slightly different from the value of Tw for its component latches.
As well as having a different Tw the flip-flop has a different behaviour
when the input is outside the metastability window. For inputs much
earlier than the clock, a latch is transparent, so that the output follows
the input with a short delay and the output time can go negative. On
the other hand the output of an edge-triggered flip-flop does not change
until after the clock edge, so no output events are seen with times earlier
than the clock edge time.
LATCHES AND FLIP-FLOPS 33
34 MODELLING METASTABILITY
This analysis assumes that both latches are identical, and does not
take into account factors like the propagation delay of signals through
a transparent latch which will affect the proportion of the clock cycle
available for metastability resolution.
Figure 2.19 Edge-triggered flop-flop-based synchronizer.
Figure 2.20 Latch input time vs output time showing negative values for output
time.
0.001
0.01
0.1
1
10
100
1000
800
600
400
200
0
–200
Output time, ps
Input
time,
ps
2.5 CLOCK BACK EDGE
Because of the internal construction of an edge-triggered flip-flop, there
is often a significant increase in the failure rate in the second half of the
clock cycle due to the delay in the slave latch of the flip-flop. We can
now extend the theory presented so far to show what happens when the
back edge of the clock occurs.
Consider two similar master and slave level triggered latch circuits cas-
caded to form a single edge-triggered circuit as shown in Figure 2.21.
Here the master and slave can both be reset so that both Out1 and Out2
are low. When the clock is low, the master is transparent and any change
in In1 is copied through to Out1 with a delay Td determined mainly by
internal large signal gate delays. In normal operation In1 does not change
within the set-up time before the clock rising edge, or inside the hold
time after the rising edge, thus Out1 is steady when the master latch goes
opaque and input changes no longer have any effect. At around the same
time as the clock rising edge, the slave clock falls and so the slave goes
transparent. Now the Out1 level is transferred to Out2 with a delay Td.
If the circuit is used as a synchronizer the input can go high at any
time and so a rising edge on the input In1 which occurs just before
the clock rising edge may cause the master to go into metastability. If
the metastability is resolved well before the falling edge of the clock the
change in Out1 is copied through the transparent slave to Out2 with the
normal delay Td and if it is resolved after the falling edge the timing of
Out2 is unaffected. Because the change in Out1 and consequently In2
may happen very close to the falling clock edge of the master, an input
change can fall in the metastability window of the slave. Consequently
there is a low, but finite probability that metastability in the master can
produce metastability in the slave.
The two latch circuits are normally similar, so that the metastability
time constant τ, in both is about the same and it is often assumed that
CLOCK BACK EDGE 35
Clock
D
C
Q
In1
Out1
D
C
Q
In2
Out2
Master Slave
Reset
Figure 2.21 Edge-triggered synchronizer.
36 MODELLING METASTABILITY
the total resolution time of a metastable output, tOut2 follows the natural
logarithmic form described in Equation (2.7).
t
T
t
Out
w
In
2
0
1
τ ln
∆





 (2.20)
In this equation ∆tin1 is the input time relative to the balance point. In
fact, this relationship does not quite hold for an edge-triggered flip-flop,
as the following analysis shows. In Figure 2.22 the waveforms of the
master and slave are shown when both are close to metastability. In this
figure the rising edge of the clock occurs at a time tclock 0 and all times
are measured with reference to this time. If the slave output occurs at a
Figure 2.22 Waveforms of master and slave in metastability.
time, tOut1 late in the first half-cycle of the clock, its timing depends on
the input time ∆tin1, before the balance point. The closer ∆tin1 is to the
balance point of the master, the later is tOut1: We can plot ∆tin1 against
tOut1 for the latch on its own by observing that
t
T
t
I
Out
w
n
1
0
1
τ ln
∆








(2.21)
From this it is possible to find the output time of the slave tout2. There
are two cases:
Case 1: tOut1 happens well before the back edge of the clock, so that
the slave is transparent when its input changes. In this case the constant
delay of the slave Td is simply added to tOut1, so tOut2 is given by:
t T
T
t
Out d
w
in
2
0
1
 τ ln
∆





 (2.22)
Case 2: the slave may go metastable. In this case tOut1 must be very
close to the absolute slave balance point time. We have already seen
Equation (2.1) that in the second half of the cycle,
MTBF
e
f f T T
t
d c w w

τ τ
so using the relationship between MTBF and ∆tin in Equation (2.8) we
can write
t
T
t
Out
w
in
2
0
2
1
τ
τ
ln
∆





 (2.23)
Here, the balance point has changed. In case 1, the balance point was
the input that gave equal probability of a high and low outputs in the
master, but in case 2, it is the point that gives equal probability of a high
and low outputs in the slave. The balance point for the master–slave
combination is therefore the input time that gives a slave input exactly
at the balance point of the slave.
∆t T e
SBP w
tSBP


0
τ (2.24)
When compared with a latch, the balance point for the combination
is shifted by this amount. Any plot of the input times against output
CLOCK BACK EDGE 37
38 MODELLING METASTABILITY
times for a flip-flop made from two latches must therefore be measured
from this new point. The change makes little difference for values of for
values of tOut1 tBackEdge, since
∆t T e
In w
tBackEdge
1 0


τ
but it becomes important when tOut1 ≈tBackEdge .
Figure 2.23 Illustrates the input time against output time that may
be expected from a master–slave flip-flop. Case 1, on the left shows the
relationship of Equation (2.22) with a slope of τ, normally seen between
∆tin1 and tOut2 when tOut2 tBackEdge. On the right, the slope of the curve
given by Equation (2.23) when tOut2 tBackEdge remains the same, but there
is a displacement which is given by the difference between the two cases:
τ
τ
τ
ln ln
T T
t
Td
T
t
w w
In
w
In
0 0
1
0
1
∆ ∆









 




or simplifying,
τ
τ
ln
T
Td
w0





 (2.25)
Here it can be seen that the offset depends on the circuit constants τ,
Tw0 and Td.
Figure 2.23 Case 1: slave transparent, case 2: slave metastable.
Another Random Document on
Scribd Without Any Related Topics
CHAPTER X
A GLEAM AFAR
As warm weather approached, the children grew restless under so
much schooling, and Robert made Saturday a holiday. In order to
help his uncle more efficiently, he was trying to learn the Indian
tongue, but found it far more difficult than Greek and Latin, and
made many ludicrous mistakes. Mackenzie was very patient with
him, and Black Partridge made occasional comments and
suggestions, being deeply flattered by the college man's desire to
learn from him.
The trader had told him of the great school in the East, where
Forsyth had learned everything that was written down in books, and
yet could not talk with the Indians, or make a fire by rubbing sticks
together; and the implied superiority of the chief had its own subtle
gratification.
The women at the Fort were very fond of Beatrice, and she made
daily visits there, but time began to hang heavily upon her hands.
Without knowing why, she was restless and unhappy, and, after the
manner of her sex, attributed it to some hidden illness of the body
rather than the mind.
I feel as if I simply must go somewhere or do something, she said
to Doctor Norton, in a vain effort to explain her unrest.
He examined her pulse and tongue, then laughed at her. You're all
right, he said; there's nothing on earth the matter with you.
There is, too, she contradicted. I don't feel right and I need
medicine.
Quinine?
She made a wry face. No, I don't need that.
Sulphur and molasses?
Beatrice turned up her nose in high disdain. Is that all you can think
of?
No, replied the Doctor, I have other remedies, but I want to give
you something that would please you. If you feel that you need
medicine, my entire stock is at your service. I ask only for the right
to supervise your selection, as we don't want you poisoned.
They were sitting on the piazza, and the girl's laugh reached the
schoolroom and set the teacher's heart to throbbing. He could steel
himself against her smiles and her playful pouting, but when she
laughed, he was lost.
I don't think you'd care much, observed Beatrice, whether I was
poisoned or not, just so you didn't have to give up any of your
precious medicines. You're selfish—that's all.
What more can I do, Miss Manning? I've offered you all my worldly
goods. Which bottle do you want?
Thank you, I've decided not to rob you. I'll die, if I have to, without
medical aid.
Some people prefer it, murmured Norton.
How did you happen to come here? she asked abruptly.
He started slightly, remembering the face that led him, like a star,
from one frontier post to another, but he merely said: An army
surgeon has no choice. We go where we are sent by the powers that
be.
I'd hate to be sent anywhere.
I believe you, replied the Doctor, smiling; and if you were told you
couldn't go anywhere that place would immediately become
desirable.
Wonderful insight, commented Beatrice. Or perhaps some one
has told you?
No, I don't always have to be told. I can see some things, you
know.
That's what Katherine told me. She said you could see through
anything or anybody, especially a woman. Your glance goes right
through us and ties in a bow-knot behind. I can feel the strings
dangling from my shoulders now.
Robert came to the door, followed by the children, who were eager
to get outdoors for the short recess they had every day. Beatrice had
a little insight of her own, and had noted the change in Norton's face
when Katherine was mentioned, and the quick, inquiring look in
Robert's eyes as he greeted them both.
Forsyth, said the Doctor, I'm going now, and I turn this refractory
patient over to you. She needs to get outdoors and walk till she
drops—it's the only cure for impudence. Will you see that she does
it?
Certainly, if she will go with me.
I'll go, put in Beatrice, if I have to take medicine.
They watched the Doctor until he started across the river. Perhaps,
said Robert, you'd rather some one else would go with you. If so, it
can be easily arranged.
Now, Cousin Rob, said the girl, coaxingly, don't be horrid to me.
You're the only cousin I have, except Katherine and the infants; and
as long as I'm here you'd better make the best of me.
His heart suddenly contracted. Are you going away?
I can't, she laughed. I have nowhere to go.
Robert smiled curiously. When do you want to go, and where?
Saturday morning, she replied; to the woods, after flowers.
Very well, he said, quietly, turning away.
To one of them the days passed slowly, but on Saturday, when
Beatrice expressed surprise at the rapid flight of time, Forsyth
unhesitatingly chimed in. She looked at him narrowly when she
thought he did not know it, and put him down as a self-absorbed
prig.
She was at odds with herself when they started, but it was one of
those rare mornings which May sets like a jewel upon the rosary of
the year. They walked north along the lake shore, and, since silence
seemed to suit her, he wisely said nothing.
Gradually peace crept into her heart, and as they approached the
woods they turned to the west, where white blossoms were set on
thorny boughs and budded maples were crimson with new leaves.
You were good to bring me here, she said gratefully; it seems like
an enchanted way.
I am glad to give you pleasure, he replied conventionally.
The ground was still hidden under the brown leaves of October, that
rustled gently with a passing breeze or echoed the fairy tread of the
Little People of the Forest, playing hide-and-seek in the wake of
Spring. As Beatrice walked ahead of him, it seemed to Forsyth that
she belonged to the woods, as truly as did the nymphs and dryads
of old.
Buttercups scattered garish gold around them, and beyond, among
the trees, the wild geranium rose on its slender stalk, making a
phantom bit of colour against the background of dead leaves.
Between the mossy stumps budded mandrakes were huddled closely
together, afraid to bloom till others had led the way. Beatrice looked
around her and drew a long breath, then gently stroked a satin bud
upon a bare stalk of hickory.
Why don't you pick something? asked Robert, with a laugh. That's
what we came for, isn't it?
No, I can't pick things. I feel as if I were hurting them. Suppose you
lived here in this lovely place and a giant came along and broke you
off at the waist to take your head home with him—how do you
suppose you'd feel?
I don't think I'd feel anything after the break. Besides, that's not a
fair hypothesis. There is no real analogy.
Hy-poth-e-sis, repeated Beatrice, looking at him, mischievously;
did I pronounce it right?
Of course—why?
Because, she answered, with her eyes dancing, it's a nice word
and I'd like to learn it. I want to say it to Doctor Norton. Some of his
words are as long at that, but they're not nearly so complicated, and
I yearn to excel in his own specialty.
The girl's mock reverence for his learning irritated him unspeakably,
and he closed his lips in a thin, tight line.
Cousin Rob, she said, putting her hand on his arm, and with
bewildering kindness in her tone, can't you take me just as I am?
The temptation to take her, just as she was, into his arms, made him
draw back a step or two. I always make a point of that, he said,
clearing his throat.
Then a vista opened before them, which might have been a field of
Paradise. Across the plain, where the dead goldenrod of Autumn still
lingered, there were white blossoms on invisible branches, set
against the turquoise sky, as still as stars of frost. It was as though a
cloud of white butterflies had paused for an instant, with every dusty
wing longing for flight.
Great white triliums bloomed in clusters farther on, with here and
there a red one, lonely as a lost child. Far to the right was a little
hollow filled with wild phlox, shading from white to deepest lavender,
and breathing the haunting fragrance which no one ever forgets.
Let's go to the lake, she said.
Tall bluffs rose on either side where they turned eastward, with
triliums and dog-tooth violets within easy reach, and a robin's cheery
chirp was answered by another far away. Slanting sunbeams came
like arrows of light into the shadow of the woods, and at the shore
line was an expanse of sand which shone like silver under the white
light of noon.
Why do you stand there? asked Beatrice. Why don't you sit
down?
I was just looking at something.
What?
Come here—perhaps you can see.
She strained her eyes in the direction he indicated, but
unsuccessfully. I don't see anything, she said; what is it like?
I don't know. It's something shiny, but it isn't a bird, because it
doesn't move.
Birds aren't shiny, anyway, objected Beatrice. Let's eat our lunch.
I'm willing, for it's getting heavy, and I'd rather carry it inside.
Beatrice laughed until the tears rolled down her cheeks. That's the
first time I ever heard you say anything funny, she said, wiping her
eyes. Mr. Ronald is always saying funny things.
A dubious smile crossed Robert's face, and there was a long silence.
I wish you'd show me that shiny thing again, Cousin Rob, she said
at length; I'm interested in it.
You didn't seem to be.
That's because I was hungry, she explained. I feel better now,
and by the time we've finished our lunch I'll be absorbingly
interested in it.
Robert stood on the sand, in the same place as before, and saw the
silvery gleam again. Then she took his place and saw it, too. Why,
she said, isn't it queer? Do you think it's the sun on a birch?
No, it's too high, and birches don't often grow on the very edge of
the shore.
That isn't the edge.
Well, it's near it. The light just hangs in the air. There doesn't seem
to be anything behind it. I've often seen stray gleams in the woods
and tried to find them, but I never found anything. It's a daylight
will-o'-the-wisp.
Let's follow this one, suggested Beatrice.
They walked along the hard sand, close to the water, stopping every
few steps to find the gleam. Sometimes it was only a thread of light,
detached and unrelated to anything around it, then in other places it
was a white glare, like the reflection thrown from a mirror.
Often they lost it, but found it again a little farther on. Beatrice was
tired but determined, and kept on for what seemed miles. Then they
stopped several times without finding it. Let's go up into the
woods, she said; perhaps we'll see it again from there.
They climbed the steep bluff of sand, with the aid of bushes and
cotton wood saplings, and for an instant caught the light again, then
it vanished. The girl was pale, and Robert feared they had come too
far.
We'll go back, he said, as soon as you rest for a little while. Why
didn't you tell me you were tired?
Because I'm not, she retorted. I'm willing to rest a little while, but
I'm going to find it.
They sat down under the spreading branches of an elm for a few
minutes, then, in spite of his expostulations, Beatrice started north
again. We can walk till midnight, he pleaded, without finding it,
and it's foolish, anyway.
No, it isn't; see there!
In the air, between the bluff and the lake, hung a shimmering thread
of light which seemed close by, and all at once he became as eager
as she. They walked rapidly for a few moments, then Beatrice
stopped.
Why, she said, in a high key, it's a house!
Be careful, warned Robert, we'd better go back.
I'm not going back till I see. I've come too far!
A little farther on, they came to it. Set far back into the bluff, so that
only the face of it was visible, was a little one-roomed cabin, built of
logs. The door was open, but the place was empty, as Beatrice
discovered. Come in, she said hospitably.
We'd better go back, said Forsyth, warningly. Come!
I will, in just a minute.
She took a long look about the room, then came out. From the top
of the cabin, which projected only a foot or so from the bluff, and
suspended from a whittled branch not quite weather-worn, hung a
silver cross, fully eight inches high, with a wondrously moulded
figure of the Christ stretched upon it.
Robert's eyes followed hers, and for a few minutes neither spoke.
That's what we saw, she murmured, in a low tone; that's the light
that led us here—the sun upon the cross!
Come, said Robert, firmly, taking her by the arm.
Reluctantly she let him lead her away, and they turned south,
keeping close to the lake shore, but out of the sand.
Who lives there? she asked.
Why, I don't know—how should I?
It was neat inside, and there was blue clay and chips in the cracks,
just as there is at home. There was a fireplace, too, but I didn't see
any chimney.
There was a chimney, though, of some dark-coloured stone. It
looked like a stump on the bluff. I noticed it while you were inside.
There's no dark-coloured stone around here.
Then it must have been limestone darkened with mud. I didn't get
near enough to see.
Somebody lives there, said Beatrice. There was a narrow bed,
with a blue-and-white patchwork quilt upon it, and two chairs made
out of barrels, and a little table and shelves,—do you think Indians
live there?
It's possible. Some of them may be more civilised than the rest and
prefer to live in a house—in the Winter, at least, he added,
remembering the panes of glass in the front of the house, either side
of the door.
It's queer that a cross like that should be there.
Stolen, he suggested promptly, from some Catholic church in the
wilderness.
I'll tell you what, she said, after a long silence; let's say nothing
about it to any one—just keep it a secret for the present. What do
you say?
I'm willing. The idea of a secret with his pretty cousin was far from
unpleasant to Robert.
Because, if the others knew, some of the soldiers would go there—
Mr. Ronald would be the first one. Besides, I've noticed that if you
really want to find out about anything, you always can, though it
takes time. I'd rather we'd find out by ourselves, wouldn't you?
Robert thought he would.
I think, she continued, that some of the Indians live there, as you
said, and that the cross was stolen and hung over the door for an
ornament. Perhaps Black Partridge lives there—he seems to know
more than the rest.
Yes; that's possible. Anyhow, we'll find out without asking anybody,
—is that it?
That's a bargain. Whoever lives there doesn't want to be bothered,
for you can't see the house at all except from the shore; and in
Summer, when the canoes are passing, it must be pretty well hidden
by the saplings and the undergrowth on the ledge in front of it.
There's just one place there where anybody can get down—a steep
little path, worn smooth.
You saw a great deal in a few minutes, didn't you? asked Robert,
admiringly.
Of course, she answered, with a toss of her head. A woman can
see more in one minute than a man can see in sixty—didn't you
know that?
I didn't, but I do now.
Silver-winged gulls glistened in the sun for a moment, then plunged
into the cool softness below. A rabbit track wound a leisurely way
across the sand and disappeared at the bluff. Down a ravine came a
tiny stream, murmuring sleepily all along its way to the lake.
Beatrice sighed and her eyes drooped. Take me home, she said.
The blue of the water grew deeper, then changed to grey. The white
clouds turned to rose and gold, touched with royal purple, and the
wings of the gulls no longer shone. A bluejay with slow-beating
wings sank to his nest in a lofty maple, and, somewhere, a robin
chirped mournfully, as if he, too, were tired.
At last they came to the edge of the woods and saw the house, with
the four tall poplars at the gate, the shimmering gold of sunset upon
the river, and the Fort beyond. The exquisite peace of the woods had
been like that of another sphere. There was a twittering of little birds
in swaying nests, a sudden chill, a shadow, and a mist. The fairy
patter was hurried and hushed, the rustling leaves were quiet, and
she leaned wearily upon his arm.
Tired? he asked tenderly.
Yes, she answered, smiling back at him, but happy. Thank you for
a perfect day.
Synchronization And Arbitration In Digital Systems David J Kinnimentauth
CHAPTER XI
A JUNE DAY
On a warm morning in June, Beatrice took her despised sewing
under an unwilling arm and went over to Mrs. Howard's. Mrs.
Franklin was there also, and they all sat on the porch, under the
impression that it was cooler there than indoors.
I wish you girls would show me how this goes, pleaded Beatrice.
She was making herself a gown of pink calico, and encountering new
difficulties at every turn.
Where's your pattern, asked Katherine.
I haven't any map, returned Beatrice; I lost it. I sawed this out by
an old one.
It looks as if it had been sawed, laughed Mrs. Franklin. Why didn't
you ask Mrs. Mackenzie to help you cut it?
Because I didn't want Aunt Eleanor to be ashamed of me.
She doesn't mind us, put in Katherine.
Stop teasing, commanded Beatrice, and show me how to put the
thing together. Which piece goes where?
Mrs. Franklin took the skirt and Katherine went to work at the waist,
pinning and basting firmly, so that there could be no mistake in the
result. Beatrice leaned lazily against the side of the house and
watched them admiringly, praising their skill now and then in accents
suspiciously soft.
She's been taking lessons from George, remarked Mrs. Franklin.
That's the way he gets things done.
Speaking of angels—— said Katherine.
Ronald crossed the parade-ground and joined the group. What's
that thing? he asked, contemptuously indicating the pink calico.
It's clothes, replied Beatrice, with spirit; don't you wish you were
going to have new ones?
The Ensign's answering laugh had a hollow sound to it, for the
shabby clothing at Fort Dearborn was a sore spot with both officers
and men, even though new and proper raiment was said to be on
the way.
You might make me some, he suggested, and I'll promise to
encourage you while you do it.
No, thank you, she returned loftily; you'd be in the way.
I expect I'm in the way now, he observed, making himself more
comfortable against the pillar of the porch. When needles fly,
women's tongues fly faster; when women sew, they rip their
husbands to pieces.
A faint flush came into Mrs. Franklin's face as she bent over her
work.
I'll wager, now, continued Ronald, that when you saw me coming,
you had to change the subject. Mrs. Franklin was explaining the
vagaries of the Captain, Mrs. Howard was telling what she was
obliged to put up with, and Miss Manning was talking about me.
The implication sharpened the edge of the girl's tongue. You ought
to be very glad you're not married, she said sweetly; and it goes
without saying that you never will be. Nobody on earth would have
you!
Don't quarrel, children, put in Katherine, hastily. Here comes
Ralph.
The Lieutenant sat down opposite Ronald and wiped his forehead.
Lord! he exclaimed, isn't it hot!
Get a little closer to Miss Manning, advised the Ensign. She's in an
icy mood this morning.
Beatrice and Howard smiled at each other understandingly. Be
careful what you say, warned Mrs. Franklin; they've decided that
they're cousins.
Yes, replied the Lieutenant, we've got it all settled. We're step-
cousins-in-law once removed. Want to go for a ride, Ronald? Forsyth
and I are going a little way down the trail.
Which trail?
Fort Wayne, of course.
Yes, I'll go, said the Ensign, rising; it can't be any hotter on
horseback than it is here.
When the three men rode off, Beatrice pouted. Why didn't they ask
me to go?
I guess they're going swimming, returned Mrs. Franklin, for Mr.
Forsyth had some towels.
Here's your waist, said Katherine; did you shrink the goods?
Did I what?
Shrink it. Wash it, you know.
Indeed I didn't. Why should I wash it when it's new?
Here's your skirt, said Mrs. Franklin. You'd better make a narrow
hem and run a tuck or two above it so you can let it down. I'm going
home now, because Wallace is all alone. Good-bye.
Beatrice went to work gingerly, and Mrs. Howard watched her for a
few moments, then took pity. I'll help you, she said, I have
nothing else to do.
The work progressed rapidly, and they went into the house
frequently to fit the gown. I can wear it to-night, I believe, said the
girl, delightedly. I didn't know sewing was so easy!
Don't be too hopeful—there's lots to do yet.
Noon came on apace and the heat increased. Shimmering waves
hung over the parade-ground and vibrated visibly. There was not a
tree within the enclosure of the Fort, and the flag hung limply from
the staff, stirring only when the hot wind from the south-west swept
over the sandy plains.
Doctor Norton came out, looked around the deserted Fort, and
crossed to Lieutenant Howard's.
Where are you going? asked Beatrice, indicating an Indian basket
he was carrying.
I'm going to the woods—primarily, to find a cool place, and,
secondarily, to gather roots and simples. Some of my medicines
have given out and I'm going to make a new supply if I can find the
proper plants.
Katherine was sewing busily and took no part in the conversation,
but there was a scarlet signal on either cheek.
If you get enough of anything, said Beatrice, the poor souls under
your care can have some of it, can't they?
Certainly.
What do you expect to get around here?
Oh, lots of things. Wild ginger, for instance—would you like some of
that?
Don't care for it, she answered conclusively.
Would you like a concoction of May apples?
I believe I would—it sounds well.
My dear girl, said Norton, seriously, the root of the mandrake is
such a deadly poison that the Indians give it to their enemies.
I must remember that, murmured the girl. I may need it for
mine.
The Doctor laughed, then turned to Mrs. Howard. Are you well? he
asked anxiously.
Katherine's eyes met his. Yes, she answered, but her voice was
scarcely audible. There was an uneasy moment for both of them,
then he went away.
Beatrice took up her sewing again and saw that Katherine's hands
were trembling. He's an abrupt person, she said; don't you think
so?
Yes, answered the other, in a low tone.
He's lovable in a way, though, don't you think so? I wonder why he
has never married?
Katherine started and her lips moved, but there was no sound.
Beatrice looked into her face for an illuminating instant—then she
knew.
Katherine! she cried, in horror.
Mrs. Howard dropped her work and fled into the house, trying to
lock the door, but the girl was too quick for her.
Katherine, dear! cried Beatrice, with her arms around the
trembling woman, don't be afraid of me! You poor child, don't you
know a friend when you see one?
Friend? repeated Katherine, in a rush of unwilling tears; I have
none!
Yes you have, dear; now listen to me. I'm your friend, and there's
nothing in the world that could make me anything else. Tell me, and
let me help you!
The words brought back the memory of another day, when the
winter snows lay deep upon the ground, and a man's voice,
dangerously tender, said the same thing.
There's nothing wrong, Bee—don't, oh, don't think that of me!
I couldn't, dear—no one could!
The curtains were drawn and the house was dark and comparatively
cool. Within that soothing shadow, Katherine gathered courage to
face the girl, and, little by little, hint at the tempest raging in her
soul.
It was the old, common story of a proud woman with a hungry
heart, denied love and sympathy where she had a right to expect it,
and tempted unwillingly, but tempted none the less.
Men are beasts! exclaimed Beatrice, angrily.
Don't say that, Bee! Ralph has a great deal to bother him, but I
can't help wishing he were different. If he were only as he used to
be! If I knew, or even thought he loved me—if he would try to
understand me—if he wouldn't always misjudge me—but now——
You're brave enough to fight it out and win, Kit—I know you are!
I hope so; but what hurts me most is the fear that he—that he
knows—that I—that I care—and pities me!
Who? Ralph?
No—the—the——
I understand, said Beatrice, quickly; you mustn't let him know.
Besides, you don't really care. Women often mistake loneliness for
something else—don't you think so?
Perhaps. Oh, if he would only go away, where I would never see
him again—if he only would—sometime, in the long years, things
would come right between Ralph and me!
You'll have to wait, Kit. Life is made up of waiting, for women, and
it's the hardest thing for us to do. Oh, I know, continued Beatrice,
with a harsh laugh; I fought something out myself once, but I won.
It was hard, but I did it, and I'd do it again—I wouldn't be coward
enough to run away. When things hurt you, you don't have to let
anybody know. You can shut your lips tight, and if you bite your
tongue hard it keeps back the tears. I always pretend I'm a rock,
with the waves beating against me. Let it hurt inside, if it wants to—
you don't have to let anybody see!
The girl's fine courage insensibly strengthened the woman. I'm so
glad you know, she sighed.
I'm glad, too. I'm going now, Kit, and I wish you'd lie down a little
while. Don't forget I'm your friend, and I'll always help you when I
can, and anyhow, I'll always try.
It was characteristic of Beatrice that she went home without any
demonstrative farewell. She had been gentle, sympathetic, and
genuinely sorry for her cousin, but there was an inner hardness
somewhere which the other felt.
Overwrought by emotion, Katherine slept for hours, and when she
awoke a cool breeze had risen from the lake and was moving her
white curtains to and fro. Dull sorrow was gnawing at her heart, but
the stab was gone.
She dressed and went out, without any particular object in view. The
loneliness of the house depressed her, and she felt that she must get
away from it; yet she did not wish to talk to any one.
As she went toward the gate the Captain's wife met her. Where are
you going? she asked.
To—to the little lad, faltered Katherine.
Oh, said the other, quickly, turning away as if she had been hurt.
For a moment the childless woman envied the other her grave.
Half a mile from the Fort, in a hollow near the river, was a little
mound, marked only by a rude slab of limestone and the willow that
grew above it. At the sight of it her eyes filled.
Oh, Baby, she sobbed, pressing her face against the cold turf
above him, I wish I was down there beside you, as still and as
dreamless as you! You don't know what it means—you never would
have known! Oh, I'd rather be a stone than a woman with a heart!
Katherine! cried a man's voice beside her; Katherine! Norton's
arm lifted her from the grave and held her close. Dear heart, he
said, is the world unkind?
She drew away from him, but he still held her cold hand in his. My
heart aches for you, Katherine—can't you tell me?
You never lost a child, she whispered, clutching at the straw.
That is true, but I have lost far more. I—— He stopped and bit his
lips upon the words that struggled for utterance. Come away, he
said, gently.
He led her to the bank of the stream, where they sat down under a
tree. She leaned against it, unconscious that he still held her hand.
There was a long silence, in which she regained, in some measure,
her self-control. I can't think what's wrong with me, she sighed.
I've cried more in the last six months than in all my life before. I'm
not the crying kind—naturally, that is.
Don't think about that, for nature knows a great deal more than we
do. Cry all you want to, and thank God you have no grief beyond the
reach of tears.
Beyond—tears?
Yes; there is another kind, which I am glad you do not know. It cuts
and burns and stings till it is the very refinement of torture, and
there is no veil of mist to blind the eyes.
She looked at him curiously. You——?
Yes, he answered, with his head bowed; that is the kind of grief I
know the best.
I—I'm sorry, she said, stirred to pity.
Why should you be sorry for me? he asked, with a rare smile.
There are countless joys in the world, but the griefs are few and
old. The humblest of us can find new happiness, but there has been
no increase of sorrow since the world was first made. There is a
fixed and unvariable quantity of it, and we take turns bearing it—
that's all. Nothing comes to any of us that some one before us has
not met like a soldier, bravely and well.
You are strong, but I have no strength.
There are different kinds of strength, Katherine, and of these the
one most to be prized is what we call endurance, for lack of a better
word. One can always bear a little more, for we live only one day at
a time, and to-morrow may bring us new gifts of which we do not
dream.
Lengthening shadows lay on the river and the sun hung low in the
west, but they talked on. She forgot everything but the peace of the
moment, which came to her sore heart like a benediction. Without
knowing it, she was very near to happiness then.
The Doctor's voice was soothing, as if he were talking to a child, and
she did not dream that he was fighting the exquisite danger of her
nearness with all the power at his command. At last she leaned
forward with her eyes shining, and put her hand on his. Thank
you, she said, softly, for helping me!
The man's blood leaped in his veins, and he sprang to his feet. He
walked back and forth on the bank of the river for some time before
he dared trust himself to speak.
Your happiness is very near to me, he said, trying hard to keep his
voice even, you must always remember that. And for me, it is
enough to be near you, even if——
She stretched out her hands and he lifted her to her feet. I must
go, she said.
Yes, you must go, and go alone. I will stay here until you have had
time to get back.
The deference to circumstances jarred upon her and she did not
answer. Her hat was lying by the child's grave, and as he picked it up
for her, she said: Why, there are violets all around. I never saw
those before.
Didn't you? he asked diffidently; I thought you came often.
No, she said, in a low voice, not very often. Who put them there?
He lowered his eyes at her question, and then she understood. Did
you plant flowers on my baby's grave? she cried.
There was a tense moment before he dared to look at her. Yes, he
answered, slowly, because——
They were standing face to face, with the little grave between them,
and the woman's heart quivered with a strange and terrible joy.
There was no need of words, for, all at once, she knew why, during
the four years of her marriage, he had followed her from one post to
another. She saw a new meaning in his sympathy when the little lad
died and her husband blamed her so bitterly; moreover, she knew
that her battle was with herself, not him, for the unyielding edge of
Honour lay between them, and, even if she would, he would not let
her cross.
For his part he, too, was uplifted, because without words she
understood, and answered with love in her eyes. Undisguised and
unashamed, her heart leaped toward him, but he stood with his
hands clenched so tightly that the nails cut deep into the flesh.
Neither had heard nor seen, but she felt an alien presence, and
turned. Not six feet away from them stood Lieutenant Howard, with
his face ashen grey. He had an armful of flowers—purple flags and
yellow lilies from the marsh and clover from the fields.
When he knew that she saw him, he came to the grave, stooped,
and put the flowers upon it. The Doctor stepped back, but Howard
took no note of him whatever. It is a strange place for a tryst, he
said, with forced calmness. Katherine, will you come home?
They went all the way to the Fort without speaking, and when they
reached their own house, he stood aside for her to enter, then
followed her in and locked the door.
Trembling with weakness, he sat down and drew her toward him.
Katherine, have you anything to say to me?
Strangely enough, she was not afraid, and the terrible joy was still
surging in her heart.
Only this, Ralph—that you have wronged me and misjudged me;
but you know this—that I never told you a lie in my life. As long as I
bear your name I will bear it rightly; while I call myself your wife,
you may know that I am faithful to you and to myself. That is all I
have to say, but for your sake and my own—and for the little lad's
sake—be just a little kind to me!
Her voice broke at the last words, but he rushed past her and went
out. From the window of her room she saw him pacing back and
forth on the plains beyond the Fort, fighting his battle with himself.
She knew she had hurt him past all healing and pitied him
subconsciously; the dominant knowledge warred with her instincts.
When he came in to supper, his face was still pale, but his voice was
even and controlled. He ate but little, and they talked commonplaces
until afterward.
Katherine, he said, I remove the embargo; you may have—him—
or any of your other friends at the house as often as you please. I
will not force my wife to make clandestine appointments outside!
He laughed harshly and went out, but, though she waited for him till
long past midnight, he did not return.
For her there was no rest. Pity, shame, fear, pride, and ecstasy
struggled for mastery in her soul. The sound of moving waters
murmured through the night with insistent repetition as the waves
came to the shore. In the dark hours before dawn she saw a man,
indistinctly, walking on the prairie, with his hands clasped behind
him and his head bowed.
At first she thought it was Ralph, but, straining her eyes through the
darkness, she saw that it was the other, and her heart beat hard
with pain.
Dear God, she murmured brokenly, oh, give him peace, and help
me to be true!
Synchronization And Arbitration In Digital Systems David J Kinnimentauth
CHAPTER XII
IN THE NORTH WOODS
Come on, Doc, said Ronald.
Where? asked Norton, lazily.
Across the river, of course; don't you see the mob over there?
The large yard in front of the Mackenzie house was fairly well filled
with people when they arrived. Mr. and Mrs. Mackenzie, Forsyth,
Chandonnais, Lieutenant and Mrs. Howard, and Mrs. Franklin were
standing behind Beatrice, who was painting in water colours. Black
Partridge, in all the glory of his feather head-dress and his most
gorgeous blanket, was posing for his picture. The chief endeavoured
to preserve the appearance of calm, but in reality he was greatly
excited.
Doctor Norton and the Lieutenant exchanged cool salutations, and
Katherine was scarcely more cordial. All three of them had decided
to ignore past events, but there was an element of difficulty in the
situation, none the less.
How do you suppose Birdie can wear a blanket in July? asked
Ronald. I should think he'd be roasted to a turn.
It's his best blanket, explained Beatrice, selecting another brush,
and he wants it in his picture.
I'd rather my clothes would be painted separately on a day like
this, murmured Ronald.
I didn't know you had more than one suit, remarked the artist,
with a flourish of her brush; you can't properly say 'clothes.'
Well, 'clo', then, retorted the Ensign, if it suits you better; but
some day you'll see me in a brand-new uniform.
It's what I'm living for, answered Beatrice. Somebody get me
some more water.
A dozen hands were outstretched, but it was Forsyth who secured
the cup, and he was rewarded with a radiant smile when he
returned.
Ain't that smart, now! exclaimed the trader, delightedly, as the
unmistakable features of Black Partridge appeared upon the paper.
Chandonnais was grinning broadly, and even Ronald and the
Lieutenant condescended to praise.
To think that we've had a real artist here for months and never
knew it! exclaimed Mrs. Franklin. Why didn't you let us know about
it before?
Because, answered the girl, as an old lady at Fort Mackinac would
have said, I didn't 'feel to paint.'
Mrs. Mackenzie was restraining the children with difficulty, for each
and every one of them yearned to take a brush and assist in the
delicate task. At last she took the baby and went into the house,
leaving Maria Indiana to Katherine, and the two older children to
their father and Forsyth.
There, said Beatrice, with a critical squint at her work; it's almost
done.
Against a background of delicate green, the Indian, in his scarlet
blanket, stood boldly and properly pictured. The colouring was very
good and she had caught the spirit of the pose.
Let me show it to him, suggested Robert.
She was wiping her brushes and did not see the expression of
dismay on the chief's face when he beheld his counterfeit
presentment, but she saw him snatch the picture out of Robert's
hand and heard his indistinct mutterings when he fled like a deer.
Well, what do you think of that! she gasped. What was he saying,
Uncle John?
I didn't catch it, Bee—did you, Rob?
Forsyth had made a little progress in the language, but had
understood only a word or two. It was something about the 'Great
Spirit,' I think, but I didn't get the connection.
That's gone, anyhow, said the Doctor. You meant it for him, didn't
you?
Why, yes, eventually; but it wasn't done.
It was done enough for him, evidently, observed Ronald; he
seems to prefer his pictures a little rare. Are you ready to make mine
now?
Indeed, I'm not going to paint you. I'm going in to help Aunt
Eleanor.
Mrs. Howard followed her. The Doctor offered to row Mrs. Franklin
across the river, Chan disappeared, and the Lieutenant went over to
the Agency House with Mackenzie. Ronald looked at Forsyth and
laughed.
Everybody's moving, he said. Let's go over and get Major and go
swimming.
You go after Major, suggested Robert, and I'll get some towels of
Aunt Eleanor. We'll go up north.
Ronald embarked in a pirogue and Forsyth went into the house. I
don't see where it's gone to, Mrs. Mackenzie was saying. Are you
sure you haven't it, Katherine?
What have you lost, Aunt Eleanor? he asked.
Why, my blue-and-white patchwork quilt—a white one with blue
stars in it. It was washed and put away clean last Fall, and now it's
gone.
Beatrice was looking at him in a way that puzzled him. I'm sure I
haven't seen it, he hastened to say. Am I suspected?
Of course not, returned Mrs. Mackenzie; but it's a strange thing to
happen right here in the house. I wish you'd go up to the loft and
see if it's on Chan's bed—he may have taken it by mistake.
Forsyth climbed the ladder to the empty loft, but no quilt was to be
seen. The rude shakedown on which the half-breed slept had only
blankets for covering. He looked around curiously, for he had never
been in the loft before, but he did not envy Chan his quarters. There
was only one window in the desolate place, and that scarcely
deserved the name, for it was merely a small aperture in the front of
the house. The floor was comparatively clean, but there was a pile
of rubbish in one corner, which he promptly investigated. He had
hardly expected to find the quilt, but he was surprised when he
discovered a ham, a side of bacon, and a large piece of dark blue
calico hidden under the nondescript heap.
I expect he gets hungry in the night, thought Robert, remembering
Chan's ferocious appetite.
No quilt there, Aunt Eleanor, he said, when he went down. May I
have some towels?
The Indians must have taken it, she sighed, but I don't know
when nor how.
Beatrice was in a brown study, but Robert, even though he was
gifted with rather more than the average man's discernment, did not
know what she was thinking about. Remembering the conversation
he had overheard the night of the barbecue, he had thought it likely
that the cross over the door of the house in the woods had been
stolen from the half-breed by an Indian, or else, after the manner of
others somewhat higher in the social scale, Chan had taken unto
himself an Indian wife.
Except as it concerned Beatrice, the matter did not interest him, and
he forbore to tell her what he knew, lest the secret between them
should come to an end. Her curiosity about the mysterious cabin had
increased rather than diminished; but Robert had refused to go with
her when she wanted to investigate it again, and she did not quite
dare to go alone.
Ronald was waiting for him outside, and the dog trotted along
beside them in high spirits, lavishing moist caresses upon his master,
and punctuating his expressions of affection with exuberant barks.
Down, Major, down! commanded Ronald, or I'll throw you into the
lake.
The shadowy coolness of the woods was invigorating, and they
walked on, heedless of the distance. When we find a deep place,
said Forsyth, we'll dive into it from the bluff.
No we won't, returned Ronald, conclusively. I knew a fool once
who broke his neck in just that way. No loss to the world particularly,
but unpleasant. They'd miss us mightily at the Fort.
When Robert saw that they were approaching the neighbourhood of
the cabin, he said that he was tired.
So 'm I, answered the other. Let's sit down and get cooled off
before we go in.
Major was far ahead, ranging back and forth eagerly in pursuit of
some small animal that had escaped him. Something has
happened, continued Ronald; guess!
Couldn't guess—what is it?
That's right, laughed the Ensign, slapping his knee; nobody could
guess. We've actually got our new uniforms!
You don't say so! Where are they?
At Fort Wayne.
Oh, you haven't got them, then?
No, but we've almost got 'em. Some of the boys are going this
week sometime, as soon as the Captain can make up his mind to
send 'em. I wish I could go, too, but they'll need nearly all the
horses—fifty-eight new uniforms, you know. I've thought seriously of
borrowing Miss Manning's horse and taking the trip—I need a
change.
She wouldn't let you have it.
I hadn't intended to ask her, explained Ronald. Lord, but she'd be
mad! I'd give a pretty penny to see her when she found out I'd done
it! I'd really rather see her good and mad than to take the trip, but I
can't do both. If I have one pleasure, you'll have the other.
I'd rather not, thank you—I'd much prefer to be out of the way of
the storm. I hope you won't do it.
Well, I'm not going to, said the Ensign; at least, I don't think I
am. I'm more or less subject to impulses, however.
A shrill feminine scream brought both men to their feet. What was
that? cried Forsyth.
Major came toward them from the north, on a dead run, with his tail
between his legs and panting for breath. What's the matter, old
boy? shouted Ronald. The dog took shelter behind his master,
trembling violently.
He isn't hurt, said the Ensign, after looking him over carefully, he's
just scared. Do you think we'd better go up and see what's wrong?
No, answered Forsyth; everything is quiet now. Major probably
got into trouble with a squaw. It was a woman's scream.
Maybe so, assented Ronald, sitting down again. Anyhow, it was
none of the women at the Fort, and I'm in favour of letting the
Indians fight their own battles.
The dog, still frightened, insisted on lying uncomfortably close to his
master. Move over a bit, Major, he suggested; you're too warm to
sit by.
He's all right, laughed Forsyth, as the dog refused to move; let
him alone.
Do you know, said Ronald, after a silence, that scream sounded
like Mad Margaret's voice. Don't you think so?
Perhaps, now that you speak of it; but I haven't seen her for a long
time.
Neither have I, and I don't want to. Do you remember the night
you came?
Forsyth nodded.
I can't get that out of my head—the way she looked at me when
she told me I should never have my heart's desire. Someway, it
sticks.
You're not superstitious, are you?
Not exactly, but it was rather uncanny, if you remember,—at least it
would have seemed so if she had said it to you.
That's true, admitted Robert.
I'm not afraid of anything in this world, resumed the Ensign; but I
don't want to tackle the next before I get to it—if there is any next.
What do you think about the next world, anyway?
Well, answered Ronald, seriously, I don't think much about it, and
that's a fact. Nobody knows any more about it than anybody else,
and I don't see why one man's opinion isn't as good as another's.
Personally, I have always felt that if I was decent and honest and
minded my own business, I'd get my share of anything good that
night be coming after I got through here. Actions, to my mind, are a
good deal more important than beliefs.
That's so, too, but I've learned to keep pretty still about those
things, for I've been accused more than once of too much liberality.
The chaplain at West Point was a nice old fellow, and he used to tell
us that if we were good soldiers and abided by the army regulations,
we wouldn't get into trouble after we died. I've always remembered
it and I've marched by it ever since.
Welcome to our website – the perfect destination for book lovers and
knowledge seekers. We believe that every book holds a new world,
offering opportunities for learning, discovery, and personal growth.
That’s why we are dedicated to bringing you a diverse collection of
books, ranging from classic literature and specialized publications to
self-development guides and children's books.
More than just a book-buying platform, we strive to be a bridge
connecting you with timeless cultural and intellectual values. With an
elegant, user-friendly interface and a smart search system, you can
quickly find the books that best suit your interests. Additionally,
our special promotions and home delivery services help you save time
and fully enjoy the joy of reading.
Join us on a journey of knowledge exploration, passion nurturing, and
personal growth every day!
ebookbell.com

More Related Content

PDF
Satellite Networking Principles and Protocols 1st Edition Zhili Sun
PDF
Display Interfaces Fundamentals Standards 1st Edition Robert L Myers
PDF
Mobile Telecommunications Protocols For Data Networks Anna Hac
PDF
Linux Process Manager The Internals Of Scheduling Interrupts And Signals John...
PDF
Computer architecture and organization
PDF
System Design For Telecommunication Gateways Alexander Bachmutsky
PDF
Convergence Technologies For 3g Networks Ip Umts Egprs And Atm 1st Edition Je...
PDF
Emerging Wireless Multimedia Services And Technologies Apostolis Salkintzis
Satellite Networking Principles and Protocols 1st Edition Zhili Sun
Display Interfaces Fundamentals Standards 1st Edition Robert L Myers
Mobile Telecommunications Protocols For Data Networks Anna Hac
Linux Process Manager The Internals Of Scheduling Interrupts And Signals John...
Computer architecture and organization
System Design For Telecommunication Gateways Alexander Bachmutsky
Convergence Technologies For 3g Networks Ip Umts Egprs And Atm 1st Edition Je...
Emerging Wireless Multimedia Services And Technologies Apostolis Salkintzis

Similar to Synchronization And Arbitration In Digital Systems David J Kinnimentauth (20)

PDF
Realtime Digital Signal Processing Implementations And Applications 2nd Editi...
PDF
Rapidio The Embedded System Interconnect 1st Edition Sam Fuller
PDF
Protocols And Architectures For Wireless Sensor Networks 1st Edition Holger Karl
PDF
Global Networks Engineering Operations and Design 1st Edition G. Keith Cambron
PDF
Wireless Local Loops Theory and Applications 1st Edition Peter Stavroulakis
PDF
Full download Real Time Digital Signal Processing Implementation and Applicat...
PDF
Broadband Wireless Mobile 3G and Beyond 1st Edition Willie W. Lu
PDF
VSAT Networks 2nd ed Edition Gerard Maral
PDF
Umts Networks Architecture Mobility And Services Second Edition Heikki Kaaranen
PDF
Convergence Technologies for 3G Networks IP UMTS EGPRS and ATM 1st Edition Je...
PDF
Converged Multimedia Networks 1st Edition Juliet Bates Chris Gallon
PDF
Programming Mobile Devices An Introduction for Practitioners 1st Edition Tomm...
PDF
Umts Performance Measurement A Practical Guide To Kpis For The Utran Environm...
PDF
Web Application Architecture Principles Protocols And Practices 1st Edition L...
PDF
Real Time Digital Signal Processing Implementations Applications And Experime...
PDF
Computer Organization Basic Processor Structure Gil De Lamadrid
PDF
Globus Toolkit 4 Programming Java Services 1st Edition Borja Sotomayor
PDF
Wcdma Mobile Communications System Tachikawa K
PDF
Signaling And Switching For Packet Telephony Matthew Stafford
PDF
Design And Performance Of 3g Wireless Networks And Wireless Lans 1st Edition ...
Realtime Digital Signal Processing Implementations And Applications 2nd Editi...
Rapidio The Embedded System Interconnect 1st Edition Sam Fuller
Protocols And Architectures For Wireless Sensor Networks 1st Edition Holger Karl
Global Networks Engineering Operations and Design 1st Edition G. Keith Cambron
Wireless Local Loops Theory and Applications 1st Edition Peter Stavroulakis
Full download Real Time Digital Signal Processing Implementation and Applicat...
Broadband Wireless Mobile 3G and Beyond 1st Edition Willie W. Lu
VSAT Networks 2nd ed Edition Gerard Maral
Umts Networks Architecture Mobility And Services Second Edition Heikki Kaaranen
Convergence Technologies for 3G Networks IP UMTS EGPRS and ATM 1st Edition Je...
Converged Multimedia Networks 1st Edition Juliet Bates Chris Gallon
Programming Mobile Devices An Introduction for Practitioners 1st Edition Tomm...
Umts Performance Measurement A Practical Guide To Kpis For The Utran Environm...
Web Application Architecture Principles Protocols And Practices 1st Edition L...
Real Time Digital Signal Processing Implementations Applications And Experime...
Computer Organization Basic Processor Structure Gil De Lamadrid
Globus Toolkit 4 Programming Java Services 1st Edition Borja Sotomayor
Wcdma Mobile Communications System Tachikawa K
Signaling And Switching For Packet Telephony Matthew Stafford
Design And Performance Of 3g Wireless Networks And Wireless Lans 1st Edition ...
Ad

Recently uploaded (20)

PDF
Microbial disease of the cardiovascular and lymphatic systems
PPTX
master seminar digital applications in india
PPTX
Cell Types and Its function , kingdom of life
PDF
01-Introduction-to-Information-Management.pdf
PDF
Classroom Observation Tools for Teachers
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
PPTX
202450812 BayCHI UCSC-SV 20250812 v17.pptx
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PDF
Chinmaya Tiranga quiz Grand Finale.pdf
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPTX
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PDF
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
PPTX
Institutional Correction lecture only . . .
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PDF
A systematic review of self-coping strategies used by university students to ...
PDF
VCE English Exam - Section C Student Revision Booklet
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
Microbial disease of the cardiovascular and lymphatic systems
master seminar digital applications in india
Cell Types and Its function , kingdom of life
01-Introduction-to-Information-Management.pdf
Classroom Observation Tools for Teachers
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
202450812 BayCHI UCSC-SV 20250812 v17.pptx
Pharmacology of Heart Failure /Pharmacotherapy of CHF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
Chinmaya Tiranga quiz Grand Finale.pdf
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
STATICS OF THE RIGID BODIES Hibbelers.pdf
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
Institutional Correction lecture only . . .
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
A systematic review of self-coping strategies used by university students to ...
VCE English Exam - Section C Student Revision Booklet
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
Ad

Synchronization And Arbitration In Digital Systems David J Kinnimentauth

  • 1. Synchronization And Arbitration In Digital Systems David J Kinnimentauth download https://ebookbell.com/product/synchronization-and-arbitration-in- digital-systems-david-j-kinnimentauth-4312852 Explore and download more ebooks at ebookbell.com
  • 2. Here are some recommended products that we believe you will be interested in. You can click the link to download. Synchronization And Control Of Chaos An Introduction For Scientists And Engineers J M Gonzalezmiranda https://ebookbell.com/product/synchronization-and-control-of-chaos-an- introduction-for-scientists-and-engineers-j-m-gonzalezmiranda-2603032 Synchronization And Title Sequences Audiovisual Semiosis In Motion Graphics Michael Betancourt https://ebookbell.com/product/synchronization-and-title-sequences- audiovisual-semiosis-in-motion-graphics-michael-betancourt-33962834 Synchronization And Waves In Active Media 1st Ed Jan Frederik Totz https://ebookbell.com/product/synchronization-and-waves-in-active- media-1st-ed-jan-frederik-totz-10485290 Synchronization And Triggering From Fracture To Earthquake Processes Laboratory Field Analysis And Theories 1st Edition Teimuraz Matcharashvili https://ebookbell.com/product/synchronization-and-triggering-from- fracture-to-earthquake-processes-laboratory-field-analysis-and- theories-1st-edition-teimuraz-matcharashvili-1640818
  • 3. Synchronization And Control Of Multiagent Systems Automation And Control Engineering 1st Edition Dong Sun https://ebookbell.com/product/synchronization-and-control-of- multiagent-systems-automation-and-control-engineering-1st-edition- dong-sun-1657670 Chaos Synchronization And Cryptography For Secure Communications Applications For Encryption 1st Edition Santo Banerjee https://ebookbell.com/product/chaos-synchronization-and-cryptography- for-secure-communications-applications-for-encryption-1st-edition- santo-banerjee-23859910 Mathematical Models Of Rhythm Synchronization And Anticipation Iran R Roman https://ebookbell.com/product/mathematical-models-of-rhythm- synchronization-and-anticipation-iran-r-roman-52387214 Brain Dynamics Synchronization And Activity Patterns In Pulsecoupled Neural Nets With Delays And Noise Hermann Haken https://ebookbell.com/product/brain-dynamics-synchronization-and- activity-patterns-in-pulsecoupled-neural-nets-with-delays-and-noise- hermann-haken-2192002 Digital Clocks For Synchronization And Communications Masami Kihara https://ebookbell.com/product/digital-clocks-for-synchronization-and- communications-masami-kihara-1617604
  • 5. Synchronization and Arbitration in Digital Systems Synchronization and Arbitration in Digital Systems D. J. Kinniment © 2007 John Wiley & Sons, Ltd. ISBN: 978-0-470-51082-7
  • 6. Synchronization and Arbitration in Digital Systems David J. Kinniment School of EECE, University of Newcastle, UK
  • 7. Copyright © 2007 John Wiley & Sons Ltd, The Atrium, Southern Gate, Chichester, West Sussex PO19 8SQ, England Telephone (⫹44) 1243 779777 Email (for orders and customer service enquiries): cs-books@wiley.co.uk Visit our Home Page on www.wileyeurope.com or www.wiley.com All Rights Reserved. No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except under the terms of the Copyright, Designs and Patents Act 1988 or under the terms of a licence issued by the Copyright Licensing Agency Ltd, 90 Tottenham Court Road, London W1T 4LP, UK, without the permission in writing of the Publisher. Requests to the Publisher should be addressed to the Permissions Department, John Wiley & Sons Ltd, The Atrium, Southern Gate, Chichester, West Sussex PO19 8SQ, England, or emailed to permreq@wiley.co.uk, or faxed to (⫹44) 1243 770620. This publication is designed to provide accurate and authoritative information in regard to the subject matter covered. It is sold on the understanding that the Publisher is not engaged in rendering professional services. If professional advice or other expert assistance is required, the services of a competent professional should be sought. Other Wiley Editorial Offices John Wiley & Sons Inc., 111 River Street, Hoboken, NJ 07030, USA Jossey-Bass, 989 Market Street, San Francisco, CA 94103-1741, USA Wiley-VCH Verlag GmbH, Boschstr. 12, D-69469 Weinheim, Germany John Wiley & Sons Australia Ltd, 42 McDougall Street, Milton, Queensland 4064, Australia John Wiley & Sons (Asia) Pte Ltd, 2 Clementi Loop #02-01, Jin Xing Distripark, Singapore 129809 John Wiley & Sons Canada Ltd, 6045 Freemont Blvd, Mississauga, ONT, L5R 4J3 Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic books. Anniversary Logo Design: Richard J. Pacifico British Library Cataloguing in Publication Data A catalogue record for this book is available from the British Library ISBN 978-0470-51082-7 Typeset in 10.5/13pt Sabon by Thomson Digital Printed and bound in Great Britain by TJ International Ltd, Padstow, Cornwall This book is printed on acid-free paper responsibly manufactured from sustainable forestry in which at least two trees are planted for each one used for paper production.
  • 8. Contents Preface ix List of Contributors xiii Acknowledgements xv 1 Synchronization, Arbitration and Choice 1 1.1 Introduction 1 1.2 The Problem of Choice 2 1.3 Choice in Electronics 3 1.4 Arbitration 5 1.5 Continuous and Discrete Quantities 6 1.6 Timing 7 1.7 Book Structure 9 Part I 11 2 Modelling Metastability 13 2.1 The Synchronizer 14 2.2 Latch Model 21 2.3 Failure Rates 23 2.3.1 Event Histograms and MTBF 28 2.4 Latches and Flip-flops 32 2.5 Clock Back Edge 35 3 Circuits 39 3.1 Latches and Metastability Filters 39 3.2 Effects of Filtering 41
  • 9. vi CONTENTS 3.3 The Jamb Latch 42 3.3.1 Jamb Latch Flip-flop 45 3.4 Low Coupling Latch 47 3.5 The Q-flop 49 3.6 The MUTEX 50 3.7 Robust Synchronizer 52 3.8 The Tri-flop 55 4 Noise and its Effects 59 4.1 Noise 59 4.2 Effect of Noise on a Synchronizer 62 4.3 Malicious Inputs 63 4.3.1 Synchronous Systems 63 4.3.2 Asynchronous Systems 66 5 Metastability Measurements 69 5.1 Circuit Simulation 69 5.1.1 Time Step Control 70 5.1.2 Long-term τ 71 5.1.3 Using Bisection 73 5.2 Synchronizer Flip-flop Testing 75 5.3 Rising and Falling Edges 79 5.4 Delay-based Measurement 81 5.5 Deep Metastability 83 5.6 Back Edge Measurement 95 5.7 Measure and Select 97 5.7.1 Failure Measurement 97 5.7.2 Synchronizer Selection 98 6 Conclusions Part I 101 Part II 103 7 Synchronizers in Systems 105 7.1 Latency and Throughput 105 7.2 FIFO Synchronizer 108 7.3 Avoiding Synchronization 110 7.4 Predictive Synchronizers 113 7.5 Other Low-latency Synchronizers 115 7.5.1 Locally Delayed Latching (LDL) 115 7.5.2 Speculative Synchronization 118
  • 10. CONTENTS vii 7.6 Asynchronous Communication Mechanisms (ACM) 125 7.6.1 Slot Mechanisms 128 7.6.2 Three-slot Mechanism 128 7.6.3 Four-slot Mechanism 130 7.6.4 Hardware Design and Metastability 132 7.7 Some Common Synchronizer Design Issues 133 7.7.1 Unsynchronized Paths 133 7.7.2 Moving Metastability Out of Sight 135 7.7.3 Multiple Synchronizer Flops 138 8 Networks and Interconnects 143 8.1 Communication on Chip 143 8.1.1 Comparison of Network Architectures 147 8.2 Interconnect Links 150 8.3 Serial Links 155 8.3.1 Using One Line 155 8.3.2 Using Two Lines 157 8.4 Differential Signalling 159 8.5 Parallel Links 161 8.5.1 One Hot Codes 162 8.5.2 Transition Signalling 166 8.5.3 n of m Codes 167 8.5.4 Phase Encoding 168 8.5.5 Time Encoding 175 8.6 Parallel Serial Links 180 9 Pausible and Stoppable Clocks in GALS 183 9.1 GALS Clock Generators 184 9.2 Clock Tree Delays 188 9.3 A GALS Wrapper 190 10 Conclusions Part II 193 Part III 197 11 Arbitration 199 11.1 Introduction 199 11.2 Arbiter Definition 200 11.3 Arbiter Applications, Resource Allocation Policies and Common Architectures 202
  • 11. viii CONTENTS 11.4 Signal Transition Graphs, Our Main Modelling Language 205 12 Simple Two-way Arbiters 209 12.1 Basic Concepts and Conventions 209 12.1.1 Two-phase or Non-return-to-zero (NRZ) Protocols 210 12.1.2 Four-phase or Return-to-zero (RTZ) Protocols 211 12.2 Simple Arbitration Between Two Asynchronous Requests 212 12.3 Sampling the Logic Level of an Asynchronous Request 217 12.4 Summary of Two-way Arbiters 222 13 Multi-way Arbiters 225 13.1 Multi-way MUTEX Using a Mesh 226 13.2 Cascaded Tree Arbiters 227 13.3 Ring-based Arbiters 230 14 Priority Arbiters 235 14.1 Introduction 235 14.2 Priority Discipline 236 14.3 Daisy-chain Arbiter 238 14.4 Ordered Arbiter 239 14.5 Canonical Structure of Priority Arbiters 240 14.6 Static Priority Arbiter 241 14.7 Dynamic Priority Arbiter 246 15 Conclusions Part III 253 References 255 Index 261
  • 12. Preface Most books on digital design only briefly touch on the design of synchronizers and arbiters, with maybe two or three pages in a 300 page book, or a chapter at most. This is because there was no real need for it in the early years of computer design. Processors were largely self- contained and used a single clock, so interfacing the processor to slow peripherals, or other processors was not seen as a major task. The fact that it is not simple emerged in the 1970s and 1980s when data rates between processors increased, and sometimes systems with more than one time zone were being designed. Despite frequent synchronization failures because of lack of understanding of the design principles at that time, synchronization still did not make it into the standard litera- ture, and very little has been written since about how they should be designed. More recently processors are being designed with many more high-speed ports linked to networks, and the systems themselves are often made up of several core processors connected to an internal bus or network on chip. This means that processors operating on different time frames must communicate at high data rates, and when two or more processors request access to a common resource, there has to be some arbitration to decide which request to deal with first. The need for synchronizers to ensure that data coming from one time frame is readable in another, and arbiters to ensure that a clean deci- sion is taken has always been there, but the understanding has not. Our aim is to promote good design in these areas because the number of timing interface circuits is escalating as the number of multiprocessor systems grows. A single processor interfacing to the real world through a few slow peripherals will not have many problems, but as the number of input/output ports increases, and the data rates increase, difficulties with reliability, data latency and design robustness will also increase.
  • 13. x PREFACE This book has been written to meet the need for an understanding of the design of synchronizers and arbiters. It is intended for those involved in the design of digital hardware that has to interface to something else; other hardware, a communication system, or in the end, people. Only systems that do not interface to the outside world are free from the need to deal with synchronization and arbitration. It is divided into three sections. Section I deals with the fundamental problem of metastability. Any system that has to make a choice between two similar alternatives will end up taking longer and longer as the two alternatives approach each other in desirability, and if the amount of time available is limited, the decision mechanism will fail at a predictable rate. We describe the theory of this and how it affects practical circuits, so that the reader may be able to choose a suitable circuit for a particular application, and how to measure its reliability and performance. Section II looks at synchronizers in systems. In a multiprocessor system, the timing in each processor may be completely independent, linked by stoppa- ble clocks as in globally asynchronous locally synchronous (GALS) systems, or partly linked for example by means of phase-locked loops. To optimize the system performance and reliability the synchronization method should be chosen to fit the methodology, and several examples are given. Arbitration has a section of its own, Section III, where the design of arbiters is approached by starting from a specification and developing asynchronous arbiters from simple daisy-chain circuits up to fully dynamic arbiters taking account of the priority required by each packet of data. I am indebted to many of my colleagues for discussions over the years about the design of computer systems, but most particularly to those involved with the ASYNC series of seminars where interfacing systems using different timing methods, synchronous, asynchronous, and clocks with different frequencies has been a recurring theme. Because asynchronous systems are themselves made up of many high-speed components interacting together, it is there that the problems of timing are at their most acute, and many of the methods described had their first outing at one of the ASYNC seminars. Colleagues at Newcastle University have not only contributed to the text and reviewing of much of the manuscript, but have also provided much to the ideas contained in the book. In the end what matters is whether the techniques are applicable in the industrial world, and for this reason I am grateful for the input provided over many years from people who designed comput- ers ranging from the Ferranti ATLAS in the early 1960s to SUN and INTEL in 2007. Those that are interested in a fuller bibliography that
  • 14. PREFACE xi the references provide at the end of the book might like to look at Ian Clark’s excellent website: http://iangclark.net/metastability.html David J. Kinniment Newcastle, UK
  • 15. List of Contributors Although contributions to individual chapters have not been specified, four of my colleagues have provided substantial input to this book and their part in its preparation is gratefully acknowledged here. Alexandre Bystrov University of Newcastle upon Tyne Marc Renaudin INPG TIMA Laboratory, Grenoble Gordon Russell University of Newcastle upon Tyne Alexandre Yakovlev University of Newcastle upon Tyne
  • 16. Acknowledgements The authors would like to acknowledge the many contributions of Charles E. Dike, Intel Corp, arising from collaborative work between Intel and Newcastle University, and supported by UK EPSRC research grant EP/C007298/1. The help of Ran Ginosar and Mark Greenstreet in discussing the issues, and at Cambridge and Newcastle Universities, RobertMullins,FeiXia,EnzoD’AlessandroandJunZhouincommenting on several of the chapters is also gratefully acknowledged. Some of the material in this book has been based on work published in the following papers and is reproduced by permission of the IEEE: Synchronization Circuit Performance, by D.J. Kinniment, A. Bystrov, and A.V. Yakovlev which appeared in IEEE Journal of Solid-State Cir- cuits, 37(2), 202–209 © 2002 IEEE. Analysis of the oscillation problem in tri-flops, by O. Maevsky, D.J. Kinniment, A.Yakovlev, and A. Bystrov which appeared in Proc. IS- CAS’02, Scottsdale, Arizona, May 2002, IEEE, volume I, pp 381–384 © 2002 IEEE. Priority Arbiters, by A Bystrov, D.J. Kinniment, and A. Yakovlev which appeared in ASYNC’00, pp 128–137. IEEE CS Press, April 2000 © 2002 IEEE. Measuring Deep Metastability, by D.J. Kinniment, K Heron, and G Russell which appeared in Proc. ASYNC’06, Grenoble, France, March 2006, pp 2–11 © 2006 IEEE. A Robust Synchronizer Circuit, by J Zhou, D.J. Kinniment, G Russell, and A Yakovlev which appeared in Proc. ISVLSI’06, March 2006, pp 442–443 © 2006 IEEE. Multiple-Rail Phase-Encoding for NoC, by C. D’Alessandro, D. Shang, A. Bystrov, A. Yakovlev, and O. Maevsky which appeared in
  • 17. Proc. ASYNC’06, Grenoble, France, March 2006, pp 107–116 © 2006 IEEE. Demystifying Data-Driven and Pausible Clocking Schemes, by R Mullins and S Moore which appeared in Proc. 13th Intl. Symp. on Advanced Research in Asynchronous Circuits and Systems (ASYNC), 2007 pp 175–185 © 2007 IEEE. Efficient Self-Timed Interfaces for crossing Clock Domains by Chakrabortyand M.Greenstreet,whichappearedinProc.ASYNC2003, Vancouver, 12–16 May 2003, pp 78–88 © 2003 IEEE. xvi ACKNOWLEDGEMENTS
  • 18. 1 Synchronization, Arbitration and Choice 1.1 INTRODUCTION Digital systems have replaced their analog counterparts in computers, signal processing and much of communications hardware at least partly because they are much more reliable. They operate in a domain of absolutes where all the data moving from one place to another is quantized into defined high or low voltages, or binary coded combinations of highs and lows. The great advantage of this is that the data represented by the voltages can be pre- served in the presence of small amounts of noise, or variations in component or power supplies, which can affect the voltages. A small variation in a high is still easily distinguished from a low, and a simple circuit, such as a gate or an inverter, can easily restore the correct output level. In a synchronous system the signal states are also held by flip-flops when the clock ticks. Clocking digitizes time into discrete intervals of time, which are multiples of the clock cycle, with data computed dur- ing the first part of the cycle, and guaranteed correct on the next clock rising edge. Small variations in the time taken to evaluate a partial result have no effect on a correctly designed digital system, the data is always correct when it is next clocked. This discipline of two discrete voltage levels and time measured in multiples of the clock period allows most digital components to operate in a controlled environment, provided their outputs do not vary by more than a certain amount from the specified highs and lows, and their output times change only within Synchronization and Arbitration in Digital Systems D. J. Kinniment © 2007 John Wiley & Sons, Ltd. ISBN: 978-0-470-51082-7
  • 19. 2 SYNCHRONIZATION, ARBITRATION AND CHOICE a narrow band of times, a processor built on the components can be shown to operate correctly. While this idea has worked well in electronic design for over 50 years the ideal world of a single system of discrete voltage levels and time intervals is not the real world. Within a processor binary data can be moved from one place to another under the control of a single clock, but to be useful the processor must be able to interact with inputs from the outside world, and to send its results back to the real world. Events in the real world are uncertain and unpredictable, the voltage levels from sensors are, at least initially, not the standard high or low voltage, they can occur at any time and can be any voltage level. We can try to hide this problem by using an analog-to-digital converter component which attempts to provide only standard outputs from analog inputs, but this can only ever be partly successful, since it involves a decision when an input is approximately halfway between two possible discrete output representations and one or the other output must be chosen. The map- ping of input signal changes to discrete times also presents a problem. When a new input occurs that needs attention from a digital processor, the closed world of the processors discrete voltages and times must be interrupted so that the input can be dealt with. Again, there is a choice, which one out of an integral number of discrete clock cycles should be used to start the processing of that input? Since the input change can occur at any time, there will be occasions when the input is just before the next clock tick, and occasions when it is just after. If it is just before, it gets processed on the next tick, if it is after; it waits until the follow- ing tick to be noticed. The problem comes when it happens very close to the clock tick, because then there are two possibilities, this cycle, or the next cycle, and both of them are more or less equally desirable. 1.2 THE PROBLEM OF CHOICE It looks as if it is easy to make the choices, and it is not a new problem. Whether you can make the choice in an acceptable time, and what it is that determines the choice it something that worried philosophers in the middle ages [1]. One of the first clear statements of the arguments was given by the Arab philosopher Abu Hamid Muhammad Ibn Muhammad al-Tusi al-Shafi’i al-Ghazali who wrote around 1100 AD: Suppose two similar dates in front of a man who has a strong desire for them, but who is unable to take them both. Surely he will take one of them through
  • 20. a quality in him, the nature of which is to differentiate between two similar things. He felt that it was obvious that a man or woman would be able to make the choice, and more specifically, to make the choice before starving to death from lack of food. But in order to decide you have to have some basis for choosing one course of action or another when they appear to be equal in value. His ‘differentiating quality’ was free will, which was thought to be inherent in mankind, but not in animals or machines. The counter-argument is best given by Jehan Buridan, Rector of Paris University around 1340, in his example of the problem of choice which is usually known as the paradox of Buridan’s Ass. In this example a dog is presented with two bowls, or an ass with two bales of hay. It has to choose one of them to eat or else starve to death. Animals were chosen deliberately here because they were not thought to be capable of free will, but even so, he discounts free will as the determining factor writing: Should two courses be judged equal, then the will cannot break the deadlock, all it can do is to suspend judgment until the circumstances change, and the right course of action is clear. His insight was that the time required for a difficult decision would depend on the evidence available to make it, and if there is insufficient evidence it takes a long time. The implication is that there would be cases when even a man could starve to death because he could not decide. 1.3 CHOICE IN ELECTRONICS As a philosophical discussion, the problem of choice without preference does not have much impact on real life, but it began to acquire real importance in the 1950s when the first digital computers were designed. For the first time many inputs could be processed in a very short space of time, and each input had first to be synchronized to the processor clock [2]. The solution seems obvious, if a digital signal represents the presence of an input, then it may appear at any time, but it can be synchronized to the clock with a simple flip-flop. This circuit is shown in Figure 1.1. When the system clock goes high, the output of the flip-flop will go high if the input was present, and not if it was absent so that the request can CHOICE IN ELECTRONICS 3
  • 21. 4 SYNCHRONIZATION, ARBITRATION AND CHOICE be processed in the next clock cycle. The difficulty with this solution is that the input request timing may violate the conditions for which the flip-flop specification is valid. A flip-flop data input must not change after a specified set-up time before the clock rising edge, or before a specified hold time after the clock edge. If it does, any guarantee that the output time will be within the specified times cannot hold. In fact, as the input change gets closer to the clock edge, the flip-flop takes and longer to respond because the energy supplied by the overlap between data and clock inputs gets less and less, so it takes longer and longer to decide whether or not to interrupt the processor. Eventually, it reaches a level that is just sufficient to bring the Q output of the flip- flop to half way between a high, and a low value. At this point the flip-flop output is exactly balanced between high and low when the clock edge has finished, with no determining factor to push it one way or the other, so it can stay there for a relatively long time. This halfway state is known as a metastable state because it is not stable in the long term, it will eventually go on to be high or fall back to low, but in the metastable state the circuit has no drive towards either the high or low output values. The final outcome may be decided by internal noise, and though a metastable circuit will eventually settle in a well-defined state, the time taken is indeterminate, and could be very long. Input request System clock Data Clock Q Process this cycle Input request System clock Set-up time Hold time Change not allowed Figure 1.1 Flip-flop specification.
  • 22. If the input time cannot be constrained to change before the set-up time and after the hold time, then the flip-flop output time cannot be constrained either, so all output times relative to the clock also have a finite probability. This can have a knock on effect. If the output can change at any time between one clock edge and the next, it has not been truly synchronized to the clock, and might change part way through a clock cycle. This breaks the rules for a reliable digital system, with the result that systems may fail unpredictably because the processing of the interrupt may not be correct. The probability of a failure in the synchronization process can be very low for an individual interrupt, but because digital processors have to deal with very many inputs per second, the probability of catastrophic failure over a long period of time is not low, and must be at least quantified. It can only be eliminated by removing the need to synchronize, or reduced by allowing more time for the synchronizer to settle. Since there is always a small possibility of a very long settling time we must accept the possibility of failure in systems with a fixed clock period. This fundamental problem was known to a few people in the early years of computing [2,3], but many, if not most engineers were not aware of the problems presented by synchronizers. In 1973 a special work- shop on synchronizer failures was held by Charles Molnar, Director of the Computer Systems Laboratory of Washington University, St Louis to publicize the problem and following this, more people began to accept that computers had been, and were being designed that were unreliable because the designers did not fully understand the problem of metastability. In an article in Scientific American that year a Digital Equipment Corporation engineer is quoted as saying ‘ninety-nine out of a hundred engineers would probably deny the existence of the problem. They believe that conservative design is all you need; you simply allow enough time for a flip-flop to reach a decision. But as computers are designed to run faster and faster the safety factor gets squeezed out… the problem looks irresolvable.’ Even as late as the 1980s a major glitch in the early warning missile radar system was attributed to a poor understanding by designers of the issue of synchronization. 1.4 ARBITRATION A related problem occurs even if there is no clock. Without a clock, there is no need for synchronization between the input and the clock, but there is a need for arbitration between two competing inputs. Suppose ARBITRATION 5
  • 23. 6 SYNCHRONIZATION, ARBITRATION AND CHOICE two entirely seperate processors are competing for access to a memory, and only one can be allowed access at a time. The first to request access might get it, and when the memory access is complete, the second is allowed in. But if both make the request within a very short space of time, something must arbitrate between the requests to decide which gets the first access and which the second. As far as the hardware is concerned arbitration is much the same as synchronization, instead of deciding whether the request or the clock tick came first, we are deciding between two (or more) requests. It is only different in the way the arbiter output is treated. If there is no clock in the memory, it does not matter when the arbiter decides which input to accept, provided the data returned by the memory can be processed by the requester at any time. An arbiter can be designed which does not ever fail as a synchro- nizer might do, because it does not have to make the decision within a clock cycle. As the two requests get closer and closer in time, the arbi- tration takes longer and longer, and since the requests can occur within an infinitesmally small time, the response can take an infinitely long time. Instead of a failure rate there is a small probability of very long times, which may matter just as much in a real-time application as small probability of failure. Does it matter if a plane flies into a mountain because the navigation system fails, or it flies into the mountain because it cannot decide in time which way to go around? 1.5 CONTINUOUS AND DISCRETE QUANTITIES Are we stuck with computer systems that may fail, or may not provide answers in the time we need them, or is there some circuit solution that will solve the problem? Unfortunately the basic problem has little to do with circuits. It is that real world inputs are continuous in both voltage and time. A continuous voltage input can have any value between the maximum and the minimum voltage level, say between 0 and 1V, and there are an infinite number of possible values, 0.1, 0.2, 0.5V, etc. between those two limits. On the other hand there are only two possible voltages for a binary coded signal, which might be 0 or 1V. To decide which we must make a comparison between a fixed value, maybe 0.5V, and the input. If the input is less than 0.5V the output is 1, and if it is greater than 0.5V the output is zero. It is possible to choose a voltage of 0.49V as an input. This will be only 0.01V different from the comparison value, so the comparison circuit has only a small voltage to work on. Any real physical circuit takes some time to produce an output
  • 24. of 1V, and the smaller the input, the longer it takes. With a 0.4999V input the circuit has an input of only 0.0001V to work on, so it takes much longer to make the comparison, and in general there is no limit to the time that might be required for the comparison, because the input to the comparator circuit can be infinitesimally small. Similarly, the processor interrupt can occur at an infinite number of instants between one clock edge and the next, and comparisons may have to be made on an infinitesimally small time interval. Again that could mean an infinite response time, and there will be a resulting probability of failure. To compute the failure rate you only need to decide the maximum time that the synchronizer has available to make its comparison, and then estimate how often the comparator input is small enough to cause the output to exceed that maximum. 1.6 TIMING Synchronization of data passing between two systems is only necessary if the timing of the systems is different. If both systems work to the same clock, then they are synchronous and changes in the data from one system are always made at the same time in its clock cycle. The receiving system knows when the data is stable relative to its own clock and can sample it at that time so no synchronization is necessary. There are many possible clocking schemes for systems on a chip and Figure 1.2 shows three of them. In (a) a single clock is fed to all the processors, so that the whole system is essentially synchronous. If the two clocks are not the same but linked, maybe through a phase locked loop, the relative timing might vary a little, but is essentially stable. Provided this phase variation is limited, it is still possible to transfer data at mutually compatible times without the need to use a synchronizer. The relationship is known as mesochronous. In (b), the individual processor clocks are all linked to the same source so that the timing is still synchronous or mesochronous. Often it is not possible to link the clocks of the sending and receiving system as they may be some distance apart. This is the situation in (c). Both clock frequen- cies may be nominally the same, but the phase difference can drift over a period of time in an unbounded manner. This relationship is called plesiochronous and there are times when both clocks are in phase and times where they are not. These points are to some extent predictable in advance, so synchronization can be achieved by predicting when conflicts might occur, and avoiding data transfers when the two clocks TIMING 7
  • 25. 8 SYNCHRONIZATION, ARBITRATION AND CHOICE Processor 1 Processor 5 Processor 4 Processor 3 Proces (a) (b) sor 2 Clock Processor 1 Processor 5 Processor 4 Processor 3 Processor 2 High frequency Clock f/3 f/5 φ/3 f/2 Proc (c) essor 1 Clock 1 Processor 5 Clock 5 Processor 4 Clock 4 Processor 3 Clock 3 Processor 2 Clock 2 Figure 1.2 Clocking schemes: (a) single clock, multiple domains; (b) rational clock frequencies; (c) multiple clocks.
  • 26. conflict. If the time frame of one system is completely unknown to the other, there is no way that a conflict can be avoided and it is essential that data transfers are synchronized every time. In this case the path is heterochronous. Heterochronous, plesiochronous and mesochronous are all examples of asynchronous timing. 1.7 BOOK STRUCTURE The rest of this book has three main Parts. Part I is concerned with basic models of metastability in circuits, Part II with synchronization in systems, and Part III with arbitration. In Part I, Chapters 2-5, mathematical models for metastability are derived which can be applied to simple synchronizer circuits with a view to explaining how the failure rates vary in different conditions. Having established the mathematical tools for comparing different circuits we present the key circuits used for synchronization and arbitration, the mutual exclusion element (MUTEX), the synchronizer Jamb latch, and the Q-flop. Modifications of these basic circuits to achieve higher performance and arbitration between more than two inputs are also described. Chapter 4 shows how thermal and other noise effects affect metastability, and the basic assumptions that must be satisfied in a system to allow the simple MTBF formulas to be used. Chapter 5 describes how metastability and synchronizer reliability can be measured. The metastability Tw and resolution time constant τ are defined and then methods for plotting typical histograms of failures against output time. From this we derive mean time between synchronizer failure in a system against synchronizer time, and input time against output time. Test methods suitable for on and off chip synchronizer measurement, both for custom ICs and field programmable devices, are discussed together with appropriate time measuring circuits. System reliability is depend- ent on metastable events occurring very late in the clock cycle, where the final state is determined by noise, or ‘deep metastability’. Methods for measuring effects in this region including the effect of the back edge of the clock are explained. In Part II, Chapters 6 and 7 discuss how synchronizers fit into a digital system. In Chapter 6, a system level view of synchronizers in presented. Where synchronization occurs in a multiply clocked system, how it can be avoided, and where it cannot be avoided, how to mitigate the effects of latency due to synchronizer resolution time are discussed. BOOK STRUCTURE 9
  • 27. 10 SYNCHRONIZATION, ARBITRATION AND CHOICE High-throughput, low-latency, and speculative systems are described in Chapter 7, with the trade-offs between these two aspects of design. An alternative to multiple independent clocks is to use stoppable or pau- sible clocks. How these fit into a GALS system shown in Chapter 8. Chapter 9 concludes this Part. Chapters 10–14 (Part III) present ideas about designing complex asynchronous arbiters using the building blocks studied in the previous chapters, such as synchronizers and mutual exclusion elements. These arbiters are built as speed-independent circuits, a class of circuits that guarantees their robust operation regardless of gate delays and any delay in handshake interconnects with the environment. A general definition for an arbiter is given and then a range of arbiters is covered, from simple two-way arbiters to tree-based and ring-based arbiters, finishing with a detailed examination of various types of priority arbiters, including static and dynamic priority schemes. The behaviour of arbiters is described throughout by Petri nets and their special interpretation signal transition graphs. The latter replace sets of traditional timing diagrams and provide a compact and formal specification of nontrivial dynamic behaviour of arbiters, potentially amenable to formal verification by existing Petri net analysis tools. The presented models and circuits enable solving complex arbitration problems encountered in a wide range of applications such as system-on-chip buses, network-on-chip and asynchronous distributed system in a more general sense.
  • 29. 2 Modelling Metastability Asynchronous data originating from outside a clocked system has to be synchronized to the clock before it can be used. This usually involves a choice made on the basis of the arrival time of the data, which is a continuous variable, and the result of the decision, which clock edge to use, is discrete. In this situation it is possible to have very small input time differences between the data available signal and the clock. Such choices are difficult as the input energy to the synchronizer circuit falls towards zero when the time difference becomes small, and the response time of the circuit then approaches infinity. In fact there is always a point at which the synchronizer time response can become longer than the available time, and the synchronizer circuit fails because its output has not reached a stable state [4,5]. Asynchronous systems have a similar problem where the system must decide which of two or more asynchronous requests for a common processing resource is to be granted first. In this case the circuit that makes the decision is called an arbiter, and the input energy to the arbiter is also derived from the time differences between the inputs. Again, this time difference is a continuous variable and can also approach zero, with the result that the arbitration time can approach infinity [5,6]. In both cases the decision element, usually a flip-flop, has become metastable, and the resolution time of metastability in a flip-flop is important to the reliability of the system. Synchronization and Arbitration in Digital Systems D. J. Kinniment © 2007 John Wiley & Sons, Ltd. ISBN: 978-0-470-51082-7
  • 30. 14 MODELLING METASTABILITY 2.1 THE SYNCHRONIZER Most commonly metastability is seen in synchronization of data passing from one time domain into another. If the receiving domain is clocked, but the data input comes from a sending zone which may be clocked, but whose timing is unrelated to the receiver clock, we must first synchronize the data available signal to the receiving clock before any processing can be done. Typical synchronizer circuits use two edge-triggered flip-flops clocked by the receiving clock to achieve synchronization, as shown in Figure 2.1 with a time delay between the clocking of the first and second flip-flops. The time delay is there to allow metastable levels in the first flip- flop to resolve before the second flip-flop is clocked, and therefore has a strong impact on the reliability of the synchronizer. The longer the flip-flop is given to resolve metastability the less likely it is that the syn- chronizer will fail. A flip-flop normally has two stable states, but the transition time between them is only guaranteed if the inputs conform to the set-up and hold times between data and clock. In the synchro- nizer the set-up and hold conditions will often be violated because the data available and clock timing are unrelated, so in a typical situation any value of time difference between them is possible. When the data input changes at a time close to the clock edge, the circuit outputs can be left in a metastable state, and the synchronizer designer needs to know how much time to allow in order to keep the chance of failure to an acceptable level The edge-triggered flip-flops in the synchronizer are usually made from two level triggered latches in a master slave arrangement as shown in Figure 2.2. When the clock level is low, the master is transparent, Receiver Clock Data Available Delayed ReceiverClock Synchronized Data Available Data Sender Receiver Q D C Q D C Figure 2.1 Synchronizer.
  • 31. that is, its data input is copied to the master output, but the slave is opaque and holds the previous value of the data input. When the clock goes high, the master becomes opaque, and the slave transparent. Because the clock and data times are unrelated in a synchronizer the set-up and hold times of the master latch are frequently violated. The master output may then go into a metastable state, and it may take some time to resolve to a well-defined digital level. While the clock is still high, any metastable level at the master output will also violate the conditions for the slave to act digitally and metastability can appear on the slave output. Since the problem is caused by master metast- ability the synchronization time will depend only on the metastability resolution time of the master. If the clock goes low before metastabil- ity is resolved in the master, the slave clock goes high at the same time and so the slave may now be metastable. From this point onwards any additional resolution time required depends on the characteristics of the slave. To determine what these characteristics are, we need to examine what happens when the individual master and slave latch circuits become metastable. Figure 2.2 Edge-triggered flip-flop made from two latches. THE SYNCHRONIZER 15
  • 32. 16 MODELLING METASTABILITY A very simple design for a latch is shown in Figure 2.3. When the clock is high, both R1 and R2 are high, and the latch is opaque, that is, it is not affected by the data input and simply retains its previous state. When the clock goes low, R2 follows the data input, and R1 is the inverse of the data input. If the data input is high, R2 must be high, and Q is high. If the data input is low R1 is high, R2 low, and Q becomes high. There are two ways that the circuit can become metastable, either the inputs are not digital levels, or the timing conditions are not observed. In the synchronizer circuit it the data can go high just before the clock goes high, so in this circuit there may be a runt pulse on R1, followed by both R1 and R2 going high. At this time the latch output Q may not yet have reached a high state, but the input from the D input is now inactive and only the cross-coupled feedback inputs can determine whether it ends up high or low. Since R1 and R2 are now high, they take no further part in determining Q, so what happens then can be illustrated by considering a simple latch circuit made from two inverters. This is shown in Figure 2.4(a). Here the input to the inverter on the left is the same as the output of the one on the right V2, and the input of the right hand one is the output of the left hand one V1. When the latch is metastable input and output voltages which are not just high or low can appear at the two points which are both inputs and outputs to the inverters. We can plot how the the output changes against the input for R2 R1 Data Clock Q Q Figure 2.3 D latch.
  • 33. each inverter on different graphs, (b), or we can plot them both on the same graph by flipping the right-hand graph over and superimposing it on the line for the inverter on the left (c), so that only points, which lie on both input/output characteristics, are possible for both inverters in the long term. One point has V1 0 and V2 1, and another has V1 1 and V2 0. These points are the two normal stable states. There is also a third point where V1 V2 1/2, which is the metastable state. THE SYNCHRONIZER 17 1 0 1 0 V1 V2 1 0 1 0 V2 V1 1 0 1 0 V1 V2 V1=0 Metastable V1=1 (b) (c) V1 V2 (a) Figure 2.4 Metastability: (a) Latch bistable; (b) Static characteristics of inverters; (c) Superimposed characteristics.
  • 34. 18 MODELLING METASTABILITY To see this, suppose that the voltage V1 is held by a voltage source, and then slowly increased from zero to Vdd as in Figure 2.5. Suppose V1 is held by the voltage source at a value of Va volts. Because its input is at Va, the output of the lower inverter in Figure 2.5 is at Vx. Vx at the input of the upper inverter would normally produce Vb at its output, but since it is held at a different voltage, Va, a current is drawn from the voltage source, which is proportional to Va Vb. Now let’s change the voltage V1 slowly from zero to Vdd. The current first increases, as the difference between Va and Vb increases, and then decreases to zero at the central point. Beyond that point, current has to be pulled out of the of the upper inverter to hold its output down, and this current only drops to zero at the second stable point where V1 is high. The two superimposed characteristics are shown in Figure 2.6, V1 V2 I1 Figure 2.5 Output current against voltage. 0 0.5 1 1.5 2 2.5 3 3.5 3.5 3 2.5 2 1.5 1 0.5 0 –0.5 –0.5 V1 V2 Inverter 1 Inverter 2 Va Vb Vx Figure 2.6 Superimposed characteristics.
  • 35. and the resulting plot of Va Vb, which is a measure of the current, against V1 is shown in Figure 2.7. In a real circuit there is always some stray capacitance associated with each node, so with a capacitor connected to the output rather than a voltage source, we can see what will happen when the node is metast- able. In Figure 2.7 the capacitor is discharged when V1 is on the left- hand side of the central point, pulling V1 lower, and charged if it is on the right-hand side, pulling it higher. The central point is not stable. This kind of instability is analogous to a ball placed on top of a hill (Figure 2.8) if we make the slope of the hill the same as Figure 2.7, i.e. positive on the left-hand side and negative on the right-hand side, there are two stable points where the slope is zero, on either side of the central, unstable point where the slope is also zero. When the ball is let go it will eventually roll down to one side or the other, but with careful placement it can stay in the metastable state at the top for some time. The analogy of Figure 2.8 shows that the output moves rapidly to either the V1 1 and V2 0 state or the V1 0 and V2 1 state, the differences between the actual operating trajectory and the static characteristics being accounted for by the output capacitance which absorbs the difference current. The smaller the capacitance, the faster it goes. The central point is usually called the metastable point, and a latch is said to be metastable if it is in balance between a 1 and a 0, with the drive towards the two stable points, called attractors, close to equal. The difficulty with metastability is that with a net drive of zero, the capacitances are neither charged, nor discharged, and the circuit can remain at the metastable point for a long time, much longer than its normal response time with digital inputs. Figure 2.7 Va Vb drive for different values of V1. –1.5 –1 –0.5 0 0.5 1 1.5 3.5 3 2.5 2 1.5 1 0.5 0 –0.5 V1 Va - Vb THE SYNCHRONIZER 19
  • 36. 20 MODELLING METASTABILITY If the input clock/data overlap is very close to a critical point, metast- ability can be reached from either stable state as shown in Figure 2.9. This particular photograph was taken by selecting all the metastable events in a level triggered latch, which lasted longer than 10ns (two divisions) [6]. Several traces are superimposed, with outputs starting from both high and low values, then reaching a metastable value about halfway between high and low, and finally going to a stable low level. It can be seen that the traces become fainter to the right, showing that there are some with long metastability times, but fewer than the short metastability time responses. If only one flip-flop is used for synchronization, the master latch in the flip-flop will often be left in a metastable state and a long time may elapse before its output escapes to a stable high or low. A half level input, or a change in level as the clock changes in the slave may then -0.5 0 0.5 1 1.5 2 2.5 3.5 3 2.5 2 1.5 1 0.5 0 -0.5 V1 Height Figure 2.8 The ball on the hill. Figure 2.9 Output from a metastable latch.
  • 37. result in a long time delay in the output data available signal which is first read by following circuits as a low level, and then later as high. Figure2.10showstheoutputofaCMOSflip-flopusedinasynchronizer situation. Many outputs have been captured on a digital oscilloscope at 1ns/division, and though the circuit is specified to have a response time of around 3ns some of the high-going outputs are 5ns or more after the clock time. As time increases from left to right, the density of the traces reduces, because the probability of the output changing reduces. A his- togram of the number of outputs changing at a particular time is also shown in this figure (the white area, in which the height at a particular time is proportional to the number of outputs crossing the Ax line at that time). If the output changes late, there may be synchronizer failures, but the longer the delay allowed, the less likely is the synchronizer to fail by indecision. We can explain metastability qualitatively this way, but to produce reliable designs a more accurate quantified model is needed. 2.2 LATCH MODEL In the metastable state both inverters making up the flip-flop are operating in a linear mode. If they were not, the circuit would never escape from metastability, and to compute its escape time it is necessary to analyse the analog response of the basic circuits used. Most models of flip-flop circuits operating as synchronizers assume that the cross- coupled gate circuits making up the flip-flop are in a small signal mode, never far from the metastable state. Here to make the analysis simpler by eliminating constants, we will assume that the metastable state of the gates is at 0V, rather than Vdd/2. This means that a digital high output is Vdd/2, and a low output is Vdd/2. Figure 2.10 Synchronizer output times. LATCH MODEL 21
  • 38. 22 MODELLING METASTABILITY The gates can now be modelled as two linear amplifiers [6–8]. Each gate is represented by an amplifier of gain A and time constant CR, as shown in Figure 2.11. Differing time constants due to different loading conditions can also be taken into account [8]. The small signal model for each gate has a gain A and its output time constant is determined by C/G, where G is the gate output conductance and is equal to 1/R. In a synchronizer, both the data and clock timing may change within a very short time, but no further changes will occur for a full clock period, so we can also assume that the input is monotonic, and the response is unaffected by input changes. For each inverter we can write: C V t G V AG V 2 2 2 2 2 1 d d (2.1) C V t G V AG V 1 1 1 1 1 2 d d The two time constants can be simplified to: τ τ 1 1 1 2 2 2 C AG C AG , (2.2) Figure 2.11 Small signal models of gate and flip-flop. Reproduced from Figure 13, “Synchronization Circuit Performance” by D.J.Kinniment, A Bystrov, A.V.Yakovlev, published in IEEE Journal of Solid-State Circuits, 37(2), pp. 202–209 © 2002 IEEE. Q1 Q2 -A*V1 R2 C2 + - V2 V2 V1 V1 V2
  • 39. Eliminating V1, this leads to 0 1 1 1 2 2 1 2 1 2 1 2 τ τ τ τ . . ( ) d d d d V t A V t A       V V1 (2.3) This is a second-order differential equation, and has a solution of the form: V K e K e a t b t a b 1 τ τ (2.4) In most practical cases, the inverters have a high gain, and are identical, so A1, τ τ τ τ a b 1 2 . Both Ka and Kb are determined by the initial conditions, τa and τb by τ1, τ2, and A. Typical values of τ1, τ2, and A for a, 0.18µ, process, are 35ps for τ1 and τ2 (depending on the loading of the inverters) and 20 for A. Usually the values of τ1 and τ2 are similar to those of an inverter with a fan-out of 4, since both times are determined by the capacitances, conductances, and gain of the transistors in the circuits. This model is valid within the linear region of about 50mV either side of the metastable point. Outside this region the gain falls to less than 1 at a few hundred mV, but the output resistance of the inverter and the load capacitance also drop significantly, R by a factor of more than 10, and C by a factor of about 2. Thus, even well away from the metast- able point the values of τ1 and τ2 still have values similar to those at the metastable point. 2.3 FAILURE RATES Using the model of metastability above, it is possible to estimate the input conditions necessary to produce a metastable response of a given time, and hence how often this time will be exceeded in a synchronizer. If we assume that we are only interested in metastable events that take a much longer time than the normal flip-flop response time, we can neglect the first term in Equation (2.4) for the output voltage and use: V K e b t 1 τ (2.5) The initial condition Kb depends on the input time overlap between clock and data. If the data input changes to a high much earlier than FAILURE RATES 23
  • 40. 24 MODELLING METASTABILITY the clock, Kb will be positive, so the output voltage will reach the digital high value of Vdd/2 quickly. If it changes from low to high much later than the clock Kb will be negative, so the output voltage will reach a low value quickly. In between, the value of Kb will vary according to the relative clock data timing, and at some critical point Kb 0, so the output voltage is stuck at zero. We will call the clock data timing that gives Kb 0, the balance point, where in the previous analogy, the ball is exactly balanced on top of the hill and we will measure input times relative to this point using the symbol ∆tin. The value of Kb is given by: K t b in θ ∆ (2.6) where θ is a circuit constant which determines the rate at which the clock data overlap converts into a voltage difference between the two nodes. If the cross coupled gates in the flip-flop are 2 input NAND gates either Vdd, or 0V, and are connected via a conductance Gs to the output capacitor C for a time ∆tin as shown in Figure 2.12, the output node will charge or discharge, moving its voltage away from the central point Vdd/2. Gs is usually less than AG, and τs C/Gs is similar to the rise or fall time of that gate, so θ≈Vdd/2τs. Metastability is over when the latch output has reached normal levels, either high or low. The time taken to reach Ve , the exit voltage where the trajectory leaves the linear region and can be regarded as a stable high, or low voltage, can be calculated from Equation (2.5) by putting V1 Ve. Since Kb θ ∆ tin, this means that the exit time is given by: t V t e in τ θ ln ∆       (2.7) If the timing relationship between data and clock changes is unknown, all values of ∆tin are equally probable. In these circumstances It is usual to assume that the probability of any input smaller than given overlap, ∆tin, is proportional to the size of the overlap, very small values being Dtin Gs C V Vdd Figure 2.12 Input time constant.
  • 41. therefore much less common than large ones. This is usually true if the timing of both send and receive clocks are independent oscillators. When the sending data rate is, on average fd and the receiving clock frequency fc, each data item sent could occur at any time between 0 and 1/fc of the next receiving clock edge, so the probability of that data available signal having an overlap of ∆tin or less, is fc ∆tin. Within some long time T there will be fd T data items transmitted, so the probability of at least one of the overlaps being less than ∆tin is fd fc T ∆tin. If the synchronizer fails when the input overlap is shorter than ∆tin by giving an output response longer than the resolution time allowed, the mean time between failures will be: MTBF f f t d c in 1 ∆ (2.8) Failure occurs when ∆t V e e t in θ τ so we can get the mean time between failures of the synchronizer as: MTBF e f f V t d c e τθ (2.9) This is more usually written as MTBF e f f T t d c w τ (2.10) where Tw Ve /θ, and Tw is known as the metastability window. MTBF depends on fc and fd, which are system parameters rather than circuit parameters, so we can use Equations (2.8) and (2.10) to get a characterization of a synchronizer which is dependent only on the circuit parameters τ and Tw: ∆t T e in w t τ (2.11) The metastability window is the input time interval for which output times are longer than normal. If 0∆tin Tw, then the output response time to Ve, t, is greater than zero, and the circuit is metastable. Input FAILURE RATES 25
  • 42. 26 MODELLING METASTABILITY time differences outside this range either cause a normal response or no change. The value of Tw is determined by the input time constant θ and the point at which the flip-flop exits from metastability Ve; thus, if V V e dd 2 Tw is the same order of magnitude as the rise time of the gate. The value of τ is mainly determined by the feedback loop time constants, and since both Tw and τ are determined by channel conductances and gate capacitances, they are likely to be similar. This analysis applies to most simple latches, but may not hold for more complex devices, made from gates with more than one time constant in the feedback loop, or with long interconnections. It is very important for any flip-flop used for synchronization that it is characterized as a single cell with a fixed layout, and not assembled from individual gates or, for example, FPGA cells, because the feedback interconnection may have additional time constants, and the differential equation that describes the small signal beviour will be correspondingly complex. An example of multiple time constants is shown in Figure 2.13, where a latch has been assembled out of two FPGA cells. In this figure the latch output change is being used to trigger the oscilloscope, and the figure shows a histogram of clock events. The time scale is 0.5ns/division. Because of the additional delay in the feedback loop the resolution time constant is nearly 1ns, and the histogram of clock to output times rises and falls as a result of oscillation in the output trajectory. For comparison the histogram from a standard 100 1000 10000 100000 1000000 10000000 5.00E–10 0.00E+00 –5.00E–10 –1.00E–09 –1.50E-09 –2.00E–09 Time, s Events Two cells One cell Figure 2.13 Multiple FPGA cell latch.
  • 43. latch on the same FPGA is also shown. Here, the resolution time constant is much faster at around 40ps and there is no sign of oscillation. If there is enough delay in the feedback loop, as is the case with latches constructed from more than one cell, the amplitude of the oscillation produced can be sufficient to take the gates outside the linear region, and the oscillation can look like a square wave, which persists for much longer than the times shown even in Figure 2.13. If the time allowed for metastability is short, we must also take into account the first term in the response equation. For many metastable events, the initial conditions are such that Kb, which is the voltage difference between output nodes at the start, is less than 10mV, and while Ka, the common offset at the start, may be as much as 0.5V. In these circumstances the Ka term is important, but only in determining the response times for metstable events resolving early. This is because simple circuits using gates with only one time constant, always reach the linear region quickly. τa is small outside the linear region and so the Ka term becomes small very quickly. The metastable events that cause synchronizer failures last a long time, and will have trajectories that spend most of their time in the linear region and so we can usually still use the simplified second-order model to predict the time it takes flip-flop circuits to escape from metastability. The difference between early and late trajectories, and how they are affected by the Ka term can be seen in Figure 2.14. This figure shows the response of the two outputs in a latch against time as predicted by the small signal model when both outputs start from a point higher than the metastable level and from a point lower. There is a common mode initial offset of both outputs given by Ka 150mV Vout 0.4 0.45 0.5 0.55 0.6 0.65 0.7 140 120 100 80 60 40 20 0 ps Volts High Start Ve Low Start Figure 2.14 Model response. Reproduced from Figure 2, “Synchronization Cir- cuit Performance” by D.J.Kinniment, A Bystrov, A.V.Yakovlev, published in IEEE Journal of Solid-State Circuits, 37(2), pp. 202–209 © 2002 IEEE. FAILURE RATES 27
  • 44. 28 MODELLING METASTABILITY and 150mV from the metastable level of 0.55V for the high start and low start curves respectively. For both these trajectories Kb 4mV, representing the initial difference between the two outputs. We use τa 25ps and τb 42.5ps to represent a typical situation where A is about 5–10. It is common for the exit from metastability to be detected by an inverter with a slightly different threshold from the metastability level of the flip-flop. Thus when Vout exceeds that level the inverter output changes from a high to a low. The metastability level of the flip-flop here is 0.55V, and the threshold level is 0.58V (the dotted line). Vout exceeds 0.58V at 80ps for the high start of 0.7V and at 93ps for the low start of 0.4V. Note that the time difference depends upon the threshold level, and that if the high start trajectory never goes below 0.58V, that is if Kb 4.7mV, metastability is not detectable for output time delays between 0 and 65ps because the detecting inverter output remains low all the time. From these curves it can be seen that the metastability resolution time depends on the value of Ka during the first 100ps, but not beyond that. 2.3.1 Event Histograms and MTBF Measurements of flip-flop performance in metastability have been done in at least two different ways. The most common measure is to count the number of times in a given period that metastability lasts longer than a particular time t. This is a measure of MTBF when the resolution time is t (Equation 2.10). If T is the time period over which the events are counted, MTBFT/(total events) (Equation 2.12). A plot of the total events lasting longer than a particular resolution time for a synchronizer flip-flop is shown in Figure 2.15 where it is compared with the second measure. Total events T MTBF f f T T e d c w t τ (2.12) The alternative is to count the number of times the output escapes from metastability within δt of t (events). Again T is the period over which events are measured, and the number of events that resolve within δt is d dt f f T e t d c w t τ δ      
  • 45. or δ τ τ t f f T T e d c w t       (2.13) These events are also shown in Figure 2.15. Because the events scale is logarithmic, and many more events appear if the resolution time is only slightly reduced, the total events curve is only slightly above the events curve in most places. The main differences between the two sets of results are that small variations in the slope of the curve tend to be slightly exaggerated in the events curve, so that the change in slope shown in Figure 2.15 at around 6ns appears to be sharper, and the two curves diverge for output times below the normal propagation time of the flip-flop. The same data can be presented in a more useful form (Figure 2.16) which shows the MTBF against resolution (synchronization) time as well as the input time required to give a particular resolution time. Using Equation (2.12) total events can be divided by the time T, during which the events were collected to give 1/MTBF , and (2.11) enables the value of ∆tin to be calculated. Graphs like this are also used to find the values of the circuit parameters τ, and Tw. If at any point we draw a tangent to the curve (shown by the dashed line in Figure 2.16) the slope of the tangent is 1/τ, so τ can be calculated. Here it is about 125ps, and the intercept on the ∆tin axis is Tw. Tw can be measured at the normal propa- gation time, or at t0, in which case the value of Tw0.107 s here, but if it is measured from the normal propagation time of the flip-flop, about 3.9ns, Tw 3107 . 1.00E+01 1.00E+02 1.00E+03 1.00E+04 1.00E+05 1.00E+06 1.00E+07 8 7 6 5 4 3 Resolution time, ns events Events Total events Figure 2.15 Events against resolution time. FAILURE RATES 29
  • 46. 30 MODELLING METASTABILITY The methods used to measure event histograms from typical circuits are described in more detail in Section 4.2. Figure 2.17 shows how an initial offset affects the measurement of metastability. In Figure 2.17, Ka150mV for the high start curve, and 150mV for the low start, both with τaτb33ps. This is a histogram of the probability of an output trajectory escaping metastability within 3.3ps of a particular output time. In order to calculate the model responses in Figure 2.17 a uniform distribution of voltage offsets Kb has been derived from a distribution of input time differences by using the relationship be- tween Kb and ∆tin given in Equation (2.6), where θ10mV/ps in this case. ∆tin vs synchronization time 1.00E-18 1.00E-16 1.00E-14 1.00E-12 1.00E-10 1.00E-08 1.00E-06 8 7 6 5 4 3 Synchronization time, ns ∆ ∆ t in , seconds 0.00000001 0.000001 0.0001 0.01 1 100 10000 MTBF, secs Figure 2.16 MTBF, τ, and Tw. Figure 2.17 Events per unit time as a function of metastability time. Repro- duced from Figure 3, “Synchronization Circuit Performance” by D.J.Kinniment, A Bystrov, A.V.Yakovlev, published in IEEE Journal of Solid-State Circuits, 37(2), pp. 202–209 © 2002 IEEE. Model Response 0.001 0.01 0.1 1 10 200 150 100 50 0 Output time, ps Events Low Start High Start Slope
  • 47. In a real experiment the number of events at a particular time is given by Equation (2.13). In Figure 2.17, τ33ps, Tw Ve/θ33mV/10mV/ ps3.3ps, and δt3.3ps, so this figure shows the output event histo- gram against output time for the low start and the high start situations corresponding to the two values of Ka. We use T3.3ms, fc and fd 30MHz, to get a number of events (in this case a probability of a number of events if the number is less than one) of around 1 when t0, though in practice a time T of seconds would give many more events. The two curves deviate from the expected straight-line relationship, the high start curve recording no events before 65ps because trajectories with large enough initial conditions do not intersect the output threshold of 0.58V, and then events are recorded earlier than expected. In the low start curve, events are delayed rather than accelerated by the effects of the Ka et/τa term in Equation (2.4), so the event histograms can look quite different at low values of t, though they converge for high values. This is important if we are going to use the slope of early events to predict MTBF values for much longer synchronization times, and we must use the full expression including Ka as well as Kb for calculating the mean time between synchronizer failures. Putting Vs for the initial common mode offset voltage Ve for the final voltage where the trajec- tory leaves the linear region, as before, we have: V V e t e e s t in t a b τ τ θ ∆ (2.14) Hence, by the same argument that we used earlier, we can show: MTBF e V V e f f t e s t c d b a /τ τ θ           (2.15) Now T V V e w e s t τ θ and is no longer constant. In many circuits the initial offset is not negligible, and so the initial value of Tw can be different from its final value; either higher, or lower, depending on the polarity of the differ- ence between Ve and Vs, and it is dangerous to use early values of slope to calculate τ FAILURE RATES 31
  • 48. 32 MODELLING METASTABILITY 2.4 LATCHES AND FLIP-FLOPS If a synchronizer is made from two latches, its reliability depends straightforwardly on the time allowed for the first latch to resolve between the rise time of the first and the second latch clocks C1 and C2 as in Figure 2.18. The MTBF calculation given by Equation (2.10) applies. The throughput of the two latch arrangement is limited, as the input data can only be sampled when C1 goes high, and C1 cannot be taken low until C2 goes high. The resolution time available for the latch1 output is then only half the cycle time. To increase the throughput, synchronizers are normally made from two edge-triggered flip-flops as shown in Figure 2.1. This allows a reso- lution time approximately equal to the cycle time, but calculation of the reliability is more complex. The reliability now depends on resolution of metastability in the master–slave combination, and the important factor is the probability of resolution before the end of the second half of the clock cycle, because that is when the synchronized output appears. In Figure 2.1 both FF1 and FF2 are made from two latches, and the output of FF1 can become metastable either as a result of metastability in the master of FF1 being copied through the slave in the first half of the clock cycle, or metastability in the slave being induced by set-up and hold C2 C1 D C Q Data Latch1 Out D C Q Synchronized Data Out Latch1 Latch2 C1 C2 Data Figure 2.18 Latch-based synchronizer.
  • 49. condition being violated for the slave of FF1 when the clock goes low at the beginning the second half of the clock cycle. Slave metastability is usually caused by metastable events at the output of the master latch in FF1 that resolve very close to the falling edge of the clock. The number of such events within a time δt of the clock half-period t/2 is given by Equation (2.13), and is: δ τ τ t f f T T e d c w t 2       (2.16) Any metastability must be resolved by the slave latch of FF1 in the second half of the cycle, within a time t/2, so according to Equation (2.11) only events within a time ∆tin of the balance point of the latch will cause failures where: ∆t T e in w t 2τ (2.17) Putting ∆tin δt in Equation (2.16) we get the number of events that cause the synchronizer fail in a long period of time T, which is: T e f f T T e T f f T T w t d c w t w d c 2 2 τ τ τ τ       w w t e τ (2.18) From this we can compute the MTBF of the master slave combination: MTBF e f f T T t d c w w τ τ (2.19) The form of Equation (2.19) is exactly the same as Equation (2.10), but the value of Tw for the edge triggered flip-flop combination is Tw 2 /τ, which is slightly different from the value of Tw for its component latches. As well as having a different Tw the flip-flop has a different behaviour when the input is outside the metastability window. For inputs much earlier than the clock, a latch is transparent, so that the output follows the input with a short delay and the output time can go negative. On the other hand the output of an edge-triggered flip-flop does not change until after the clock edge, so no output events are seen with times earlier than the clock edge time. LATCHES AND FLIP-FLOPS 33
  • 50. 34 MODELLING METASTABILITY This analysis assumes that both latches are identical, and does not take into account factors like the propagation delay of signals through a transparent latch which will affect the proportion of the clock cycle available for metastability resolution. Figure 2.19 Edge-triggered flop-flop-based synchronizer. Figure 2.20 Latch input time vs output time showing negative values for output time. 0.001 0.01 0.1 1 10 100 1000 800 600 400 200 0 –200 Output time, ps Input time, ps
  • 51. 2.5 CLOCK BACK EDGE Because of the internal construction of an edge-triggered flip-flop, there is often a significant increase in the failure rate in the second half of the clock cycle due to the delay in the slave latch of the flip-flop. We can now extend the theory presented so far to show what happens when the back edge of the clock occurs. Consider two similar master and slave level triggered latch circuits cas- caded to form a single edge-triggered circuit as shown in Figure 2.21. Here the master and slave can both be reset so that both Out1 and Out2 are low. When the clock is low, the master is transparent and any change in In1 is copied through to Out1 with a delay Td determined mainly by internal large signal gate delays. In normal operation In1 does not change within the set-up time before the clock rising edge, or inside the hold time after the rising edge, thus Out1 is steady when the master latch goes opaque and input changes no longer have any effect. At around the same time as the clock rising edge, the slave clock falls and so the slave goes transparent. Now the Out1 level is transferred to Out2 with a delay Td. If the circuit is used as a synchronizer the input can go high at any time and so a rising edge on the input In1 which occurs just before the clock rising edge may cause the master to go into metastability. If the metastability is resolved well before the falling edge of the clock the change in Out1 is copied through the transparent slave to Out2 with the normal delay Td and if it is resolved after the falling edge the timing of Out2 is unaffected. Because the change in Out1 and consequently In2 may happen very close to the falling clock edge of the master, an input change can fall in the metastability window of the slave. Consequently there is a low, but finite probability that metastability in the master can produce metastability in the slave. The two latch circuits are normally similar, so that the metastability time constant τ, in both is about the same and it is often assumed that CLOCK BACK EDGE 35 Clock D C Q In1 Out1 D C Q In2 Out2 Master Slave Reset Figure 2.21 Edge-triggered synchronizer.
  • 52. 36 MODELLING METASTABILITY the total resolution time of a metastable output, tOut2 follows the natural logarithmic form described in Equation (2.7). t T t Out w In 2 0 1 τ ln ∆       (2.20) In this equation ∆tin1 is the input time relative to the balance point. In fact, this relationship does not quite hold for an edge-triggered flip-flop, as the following analysis shows. In Figure 2.22 the waveforms of the master and slave are shown when both are close to metastability. In this figure the rising edge of the clock occurs at a time tclock 0 and all times are measured with reference to this time. If the slave output occurs at a Figure 2.22 Waveforms of master and slave in metastability.
  • 53. time, tOut1 late in the first half-cycle of the clock, its timing depends on the input time ∆tin1, before the balance point. The closer ∆tin1 is to the balance point of the master, the later is tOut1: We can plot ∆tin1 against tOut1 for the latch on its own by observing that t T t I Out w n 1 0 1 τ ln ∆         (2.21) From this it is possible to find the output time of the slave tout2. There are two cases: Case 1: tOut1 happens well before the back edge of the clock, so that the slave is transparent when its input changes. In this case the constant delay of the slave Td is simply added to tOut1, so tOut2 is given by: t T T t Out d w in 2 0 1 τ ln ∆       (2.22) Case 2: the slave may go metastable. In this case tOut1 must be very close to the absolute slave balance point time. We have already seen Equation (2.1) that in the second half of the cycle, MTBF e f f T T t d c w w τ τ so using the relationship between MTBF and ∆tin in Equation (2.8) we can write t T t Out w in 2 0 2 1 τ τ ln ∆       (2.23) Here, the balance point has changed. In case 1, the balance point was the input that gave equal probability of a high and low outputs in the master, but in case 2, it is the point that gives equal probability of a high and low outputs in the slave. The balance point for the master–slave combination is therefore the input time that gives a slave input exactly at the balance point of the slave. ∆t T e SBP w tSBP 0 τ (2.24) When compared with a latch, the balance point for the combination is shifted by this amount. Any plot of the input times against output CLOCK BACK EDGE 37
  • 54. 38 MODELLING METASTABILITY times for a flip-flop made from two latches must therefore be measured from this new point. The change makes little difference for values of for values of tOut1 tBackEdge, since ∆t T e In w tBackEdge 1 0 τ but it becomes important when tOut1 ≈tBackEdge . Figure 2.23 Illustrates the input time against output time that may be expected from a master–slave flip-flop. Case 1, on the left shows the relationship of Equation (2.22) with a slope of τ, normally seen between ∆tin1 and tOut2 when tOut2 tBackEdge. On the right, the slope of the curve given by Equation (2.23) when tOut2 tBackEdge remains the same, but there is a displacement which is given by the difference between the two cases: τ τ τ ln ln T T t Td T t w w In w In 0 0 1 0 1 ∆ ∆              or simplifying, τ τ ln T Td w0       (2.25) Here it can be seen that the offset depends on the circuit constants τ, Tw0 and Td. Figure 2.23 Case 1: slave transparent, case 2: slave metastable.
  • 55. Another Random Document on Scribd Without Any Related Topics
  • 56. CHAPTER X A GLEAM AFAR As warm weather approached, the children grew restless under so much schooling, and Robert made Saturday a holiday. In order to help his uncle more efficiently, he was trying to learn the Indian tongue, but found it far more difficult than Greek and Latin, and made many ludicrous mistakes. Mackenzie was very patient with him, and Black Partridge made occasional comments and suggestions, being deeply flattered by the college man's desire to learn from him. The trader had told him of the great school in the East, where Forsyth had learned everything that was written down in books, and yet could not talk with the Indians, or make a fire by rubbing sticks together; and the implied superiority of the chief had its own subtle gratification. The women at the Fort were very fond of Beatrice, and she made daily visits there, but time began to hang heavily upon her hands. Without knowing why, she was restless and unhappy, and, after the manner of her sex, attributed it to some hidden illness of the body rather than the mind. I feel as if I simply must go somewhere or do something, she said to Doctor Norton, in a vain effort to explain her unrest. He examined her pulse and tongue, then laughed at her. You're all right, he said; there's nothing on earth the matter with you. There is, too, she contradicted. I don't feel right and I need medicine. Quinine?
  • 57. She made a wry face. No, I don't need that. Sulphur and molasses? Beatrice turned up her nose in high disdain. Is that all you can think of? No, replied the Doctor, I have other remedies, but I want to give you something that would please you. If you feel that you need medicine, my entire stock is at your service. I ask only for the right to supervise your selection, as we don't want you poisoned. They were sitting on the piazza, and the girl's laugh reached the schoolroom and set the teacher's heart to throbbing. He could steel himself against her smiles and her playful pouting, but when she laughed, he was lost. I don't think you'd care much, observed Beatrice, whether I was poisoned or not, just so you didn't have to give up any of your precious medicines. You're selfish—that's all. What more can I do, Miss Manning? I've offered you all my worldly goods. Which bottle do you want? Thank you, I've decided not to rob you. I'll die, if I have to, without medical aid. Some people prefer it, murmured Norton. How did you happen to come here? she asked abruptly. He started slightly, remembering the face that led him, like a star, from one frontier post to another, but he merely said: An army surgeon has no choice. We go where we are sent by the powers that be. I'd hate to be sent anywhere. I believe you, replied the Doctor, smiling; and if you were told you couldn't go anywhere that place would immediately become desirable.
  • 58. Wonderful insight, commented Beatrice. Or perhaps some one has told you? No, I don't always have to be told. I can see some things, you know. That's what Katherine told me. She said you could see through anything or anybody, especially a woman. Your glance goes right through us and ties in a bow-knot behind. I can feel the strings dangling from my shoulders now. Robert came to the door, followed by the children, who were eager to get outdoors for the short recess they had every day. Beatrice had a little insight of her own, and had noted the change in Norton's face when Katherine was mentioned, and the quick, inquiring look in Robert's eyes as he greeted them both. Forsyth, said the Doctor, I'm going now, and I turn this refractory patient over to you. She needs to get outdoors and walk till she drops—it's the only cure for impudence. Will you see that she does it? Certainly, if she will go with me. I'll go, put in Beatrice, if I have to take medicine. They watched the Doctor until he started across the river. Perhaps, said Robert, you'd rather some one else would go with you. If so, it can be easily arranged. Now, Cousin Rob, said the girl, coaxingly, don't be horrid to me. You're the only cousin I have, except Katherine and the infants; and as long as I'm here you'd better make the best of me. His heart suddenly contracted. Are you going away? I can't, she laughed. I have nowhere to go. Robert smiled curiously. When do you want to go, and where? Saturday morning, she replied; to the woods, after flowers. Very well, he said, quietly, turning away.
  • 59. To one of them the days passed slowly, but on Saturday, when Beatrice expressed surprise at the rapid flight of time, Forsyth unhesitatingly chimed in. She looked at him narrowly when she thought he did not know it, and put him down as a self-absorbed prig. She was at odds with herself when they started, but it was one of those rare mornings which May sets like a jewel upon the rosary of the year. They walked north along the lake shore, and, since silence seemed to suit her, he wisely said nothing. Gradually peace crept into her heart, and as they approached the woods they turned to the west, where white blossoms were set on thorny boughs and budded maples were crimson with new leaves. You were good to bring me here, she said gratefully; it seems like an enchanted way. I am glad to give you pleasure, he replied conventionally. The ground was still hidden under the brown leaves of October, that rustled gently with a passing breeze or echoed the fairy tread of the Little People of the Forest, playing hide-and-seek in the wake of Spring. As Beatrice walked ahead of him, it seemed to Forsyth that she belonged to the woods, as truly as did the nymphs and dryads of old. Buttercups scattered garish gold around them, and beyond, among the trees, the wild geranium rose on its slender stalk, making a phantom bit of colour against the background of dead leaves. Between the mossy stumps budded mandrakes were huddled closely together, afraid to bloom till others had led the way. Beatrice looked around her and drew a long breath, then gently stroked a satin bud upon a bare stalk of hickory. Why don't you pick something? asked Robert, with a laugh. That's what we came for, isn't it? No, I can't pick things. I feel as if I were hurting them. Suppose you lived here in this lovely place and a giant came along and broke you
  • 60. off at the waist to take your head home with him—how do you suppose you'd feel? I don't think I'd feel anything after the break. Besides, that's not a fair hypothesis. There is no real analogy. Hy-poth-e-sis, repeated Beatrice, looking at him, mischievously; did I pronounce it right? Of course—why? Because, she answered, with her eyes dancing, it's a nice word and I'd like to learn it. I want to say it to Doctor Norton. Some of his words are as long at that, but they're not nearly so complicated, and I yearn to excel in his own specialty. The girl's mock reverence for his learning irritated him unspeakably, and he closed his lips in a thin, tight line. Cousin Rob, she said, putting her hand on his arm, and with bewildering kindness in her tone, can't you take me just as I am? The temptation to take her, just as she was, into his arms, made him draw back a step or two. I always make a point of that, he said, clearing his throat. Then a vista opened before them, which might have been a field of Paradise. Across the plain, where the dead goldenrod of Autumn still lingered, there were white blossoms on invisible branches, set against the turquoise sky, as still as stars of frost. It was as though a cloud of white butterflies had paused for an instant, with every dusty wing longing for flight. Great white triliums bloomed in clusters farther on, with here and there a red one, lonely as a lost child. Far to the right was a little hollow filled with wild phlox, shading from white to deepest lavender, and breathing the haunting fragrance which no one ever forgets. Let's go to the lake, she said. Tall bluffs rose on either side where they turned eastward, with triliums and dog-tooth violets within easy reach, and a robin's cheery
  • 61. chirp was answered by another far away. Slanting sunbeams came like arrows of light into the shadow of the woods, and at the shore line was an expanse of sand which shone like silver under the white light of noon. Why do you stand there? asked Beatrice. Why don't you sit down? I was just looking at something. What? Come here—perhaps you can see. She strained her eyes in the direction he indicated, but unsuccessfully. I don't see anything, she said; what is it like? I don't know. It's something shiny, but it isn't a bird, because it doesn't move. Birds aren't shiny, anyway, objected Beatrice. Let's eat our lunch. I'm willing, for it's getting heavy, and I'd rather carry it inside. Beatrice laughed until the tears rolled down her cheeks. That's the first time I ever heard you say anything funny, she said, wiping her eyes. Mr. Ronald is always saying funny things. A dubious smile crossed Robert's face, and there was a long silence. I wish you'd show me that shiny thing again, Cousin Rob, she said at length; I'm interested in it. You didn't seem to be. That's because I was hungry, she explained. I feel better now, and by the time we've finished our lunch I'll be absorbingly interested in it. Robert stood on the sand, in the same place as before, and saw the silvery gleam again. Then she took his place and saw it, too. Why, she said, isn't it queer? Do you think it's the sun on a birch? No, it's too high, and birches don't often grow on the very edge of the shore.
  • 62. That isn't the edge. Well, it's near it. The light just hangs in the air. There doesn't seem to be anything behind it. I've often seen stray gleams in the woods and tried to find them, but I never found anything. It's a daylight will-o'-the-wisp. Let's follow this one, suggested Beatrice. They walked along the hard sand, close to the water, stopping every few steps to find the gleam. Sometimes it was only a thread of light, detached and unrelated to anything around it, then in other places it was a white glare, like the reflection thrown from a mirror. Often they lost it, but found it again a little farther on. Beatrice was tired but determined, and kept on for what seemed miles. Then they stopped several times without finding it. Let's go up into the woods, she said; perhaps we'll see it again from there. They climbed the steep bluff of sand, with the aid of bushes and cotton wood saplings, and for an instant caught the light again, then it vanished. The girl was pale, and Robert feared they had come too far. We'll go back, he said, as soon as you rest for a little while. Why didn't you tell me you were tired? Because I'm not, she retorted. I'm willing to rest a little while, but I'm going to find it. They sat down under the spreading branches of an elm for a few minutes, then, in spite of his expostulations, Beatrice started north again. We can walk till midnight, he pleaded, without finding it, and it's foolish, anyway. No, it isn't; see there! In the air, between the bluff and the lake, hung a shimmering thread of light which seemed close by, and all at once he became as eager as she. They walked rapidly for a few moments, then Beatrice stopped.
  • 63. Why, she said, in a high key, it's a house! Be careful, warned Robert, we'd better go back. I'm not going back till I see. I've come too far! A little farther on, they came to it. Set far back into the bluff, so that only the face of it was visible, was a little one-roomed cabin, built of logs. The door was open, but the place was empty, as Beatrice discovered. Come in, she said hospitably. We'd better go back, said Forsyth, warningly. Come! I will, in just a minute. She took a long look about the room, then came out. From the top of the cabin, which projected only a foot or so from the bluff, and suspended from a whittled branch not quite weather-worn, hung a silver cross, fully eight inches high, with a wondrously moulded figure of the Christ stretched upon it. Robert's eyes followed hers, and for a few minutes neither spoke. That's what we saw, she murmured, in a low tone; that's the light that led us here—the sun upon the cross! Come, said Robert, firmly, taking her by the arm. Reluctantly she let him lead her away, and they turned south, keeping close to the lake shore, but out of the sand. Who lives there? she asked. Why, I don't know—how should I? It was neat inside, and there was blue clay and chips in the cracks, just as there is at home. There was a fireplace, too, but I didn't see any chimney. There was a chimney, though, of some dark-coloured stone. It looked like a stump on the bluff. I noticed it while you were inside. There's no dark-coloured stone around here.
  • 64. Then it must have been limestone darkened with mud. I didn't get near enough to see. Somebody lives there, said Beatrice. There was a narrow bed, with a blue-and-white patchwork quilt upon it, and two chairs made out of barrels, and a little table and shelves,—do you think Indians live there? It's possible. Some of them may be more civilised than the rest and prefer to live in a house—in the Winter, at least, he added, remembering the panes of glass in the front of the house, either side of the door. It's queer that a cross like that should be there. Stolen, he suggested promptly, from some Catholic church in the wilderness. I'll tell you what, she said, after a long silence; let's say nothing about it to any one—just keep it a secret for the present. What do you say? I'm willing. The idea of a secret with his pretty cousin was far from unpleasant to Robert. Because, if the others knew, some of the soldiers would go there— Mr. Ronald would be the first one. Besides, I've noticed that if you really want to find out about anything, you always can, though it takes time. I'd rather we'd find out by ourselves, wouldn't you? Robert thought he would. I think, she continued, that some of the Indians live there, as you said, and that the cross was stolen and hung over the door for an ornament. Perhaps Black Partridge lives there—he seems to know more than the rest. Yes; that's possible. Anyhow, we'll find out without asking anybody, —is that it? That's a bargain. Whoever lives there doesn't want to be bothered, for you can't see the house at all except from the shore; and in
  • 65. Summer, when the canoes are passing, it must be pretty well hidden by the saplings and the undergrowth on the ledge in front of it. There's just one place there where anybody can get down—a steep little path, worn smooth. You saw a great deal in a few minutes, didn't you? asked Robert, admiringly. Of course, she answered, with a toss of her head. A woman can see more in one minute than a man can see in sixty—didn't you know that? I didn't, but I do now. Silver-winged gulls glistened in the sun for a moment, then plunged into the cool softness below. A rabbit track wound a leisurely way across the sand and disappeared at the bluff. Down a ravine came a tiny stream, murmuring sleepily all along its way to the lake. Beatrice sighed and her eyes drooped. Take me home, she said. The blue of the water grew deeper, then changed to grey. The white clouds turned to rose and gold, touched with royal purple, and the wings of the gulls no longer shone. A bluejay with slow-beating wings sank to his nest in a lofty maple, and, somewhere, a robin chirped mournfully, as if he, too, were tired. At last they came to the edge of the woods and saw the house, with the four tall poplars at the gate, the shimmering gold of sunset upon the river, and the Fort beyond. The exquisite peace of the woods had been like that of another sphere. There was a twittering of little birds in swaying nests, a sudden chill, a shadow, and a mist. The fairy patter was hurried and hushed, the rustling leaves were quiet, and she leaned wearily upon his arm. Tired? he asked tenderly. Yes, she answered, smiling back at him, but happy. Thank you for a perfect day.
  • 67. CHAPTER XI A JUNE DAY On a warm morning in June, Beatrice took her despised sewing under an unwilling arm and went over to Mrs. Howard's. Mrs. Franklin was there also, and they all sat on the porch, under the impression that it was cooler there than indoors. I wish you girls would show me how this goes, pleaded Beatrice. She was making herself a gown of pink calico, and encountering new difficulties at every turn. Where's your pattern, asked Katherine. I haven't any map, returned Beatrice; I lost it. I sawed this out by an old one. It looks as if it had been sawed, laughed Mrs. Franklin. Why didn't you ask Mrs. Mackenzie to help you cut it? Because I didn't want Aunt Eleanor to be ashamed of me. She doesn't mind us, put in Katherine. Stop teasing, commanded Beatrice, and show me how to put the thing together. Which piece goes where? Mrs. Franklin took the skirt and Katherine went to work at the waist, pinning and basting firmly, so that there could be no mistake in the result. Beatrice leaned lazily against the side of the house and watched them admiringly, praising their skill now and then in accents suspiciously soft. She's been taking lessons from George, remarked Mrs. Franklin. That's the way he gets things done. Speaking of angels—— said Katherine.
  • 68. Ronald crossed the parade-ground and joined the group. What's that thing? he asked, contemptuously indicating the pink calico. It's clothes, replied Beatrice, with spirit; don't you wish you were going to have new ones? The Ensign's answering laugh had a hollow sound to it, for the shabby clothing at Fort Dearborn was a sore spot with both officers and men, even though new and proper raiment was said to be on the way. You might make me some, he suggested, and I'll promise to encourage you while you do it. No, thank you, she returned loftily; you'd be in the way. I expect I'm in the way now, he observed, making himself more comfortable against the pillar of the porch. When needles fly, women's tongues fly faster; when women sew, they rip their husbands to pieces. A faint flush came into Mrs. Franklin's face as she bent over her work. I'll wager, now, continued Ronald, that when you saw me coming, you had to change the subject. Mrs. Franklin was explaining the vagaries of the Captain, Mrs. Howard was telling what she was obliged to put up with, and Miss Manning was talking about me. The implication sharpened the edge of the girl's tongue. You ought to be very glad you're not married, she said sweetly; and it goes without saying that you never will be. Nobody on earth would have you! Don't quarrel, children, put in Katherine, hastily. Here comes Ralph. The Lieutenant sat down opposite Ronald and wiped his forehead. Lord! he exclaimed, isn't it hot! Get a little closer to Miss Manning, advised the Ensign. She's in an icy mood this morning.
  • 69. Beatrice and Howard smiled at each other understandingly. Be careful what you say, warned Mrs. Franklin; they've decided that they're cousins. Yes, replied the Lieutenant, we've got it all settled. We're step- cousins-in-law once removed. Want to go for a ride, Ronald? Forsyth and I are going a little way down the trail. Which trail? Fort Wayne, of course. Yes, I'll go, said the Ensign, rising; it can't be any hotter on horseback than it is here. When the three men rode off, Beatrice pouted. Why didn't they ask me to go? I guess they're going swimming, returned Mrs. Franklin, for Mr. Forsyth had some towels. Here's your waist, said Katherine; did you shrink the goods? Did I what? Shrink it. Wash it, you know. Indeed I didn't. Why should I wash it when it's new? Here's your skirt, said Mrs. Franklin. You'd better make a narrow hem and run a tuck or two above it so you can let it down. I'm going home now, because Wallace is all alone. Good-bye. Beatrice went to work gingerly, and Mrs. Howard watched her for a few moments, then took pity. I'll help you, she said, I have nothing else to do. The work progressed rapidly, and they went into the house frequently to fit the gown. I can wear it to-night, I believe, said the girl, delightedly. I didn't know sewing was so easy! Don't be too hopeful—there's lots to do yet.
  • 70. Noon came on apace and the heat increased. Shimmering waves hung over the parade-ground and vibrated visibly. There was not a tree within the enclosure of the Fort, and the flag hung limply from the staff, stirring only when the hot wind from the south-west swept over the sandy plains. Doctor Norton came out, looked around the deserted Fort, and crossed to Lieutenant Howard's. Where are you going? asked Beatrice, indicating an Indian basket he was carrying. I'm going to the woods—primarily, to find a cool place, and, secondarily, to gather roots and simples. Some of my medicines have given out and I'm going to make a new supply if I can find the proper plants. Katherine was sewing busily and took no part in the conversation, but there was a scarlet signal on either cheek. If you get enough of anything, said Beatrice, the poor souls under your care can have some of it, can't they? Certainly. What do you expect to get around here? Oh, lots of things. Wild ginger, for instance—would you like some of that? Don't care for it, she answered conclusively. Would you like a concoction of May apples? I believe I would—it sounds well. My dear girl, said Norton, seriously, the root of the mandrake is such a deadly poison that the Indians give it to their enemies. I must remember that, murmured the girl. I may need it for mine. The Doctor laughed, then turned to Mrs. Howard. Are you well? he asked anxiously.
  • 71. Katherine's eyes met his. Yes, she answered, but her voice was scarcely audible. There was an uneasy moment for both of them, then he went away. Beatrice took up her sewing again and saw that Katherine's hands were trembling. He's an abrupt person, she said; don't you think so? Yes, answered the other, in a low tone. He's lovable in a way, though, don't you think so? I wonder why he has never married? Katherine started and her lips moved, but there was no sound. Beatrice looked into her face for an illuminating instant—then she knew. Katherine! she cried, in horror. Mrs. Howard dropped her work and fled into the house, trying to lock the door, but the girl was too quick for her. Katherine, dear! cried Beatrice, with her arms around the trembling woman, don't be afraid of me! You poor child, don't you know a friend when you see one? Friend? repeated Katherine, in a rush of unwilling tears; I have none! Yes you have, dear; now listen to me. I'm your friend, and there's nothing in the world that could make me anything else. Tell me, and let me help you! The words brought back the memory of another day, when the winter snows lay deep upon the ground, and a man's voice, dangerously tender, said the same thing. There's nothing wrong, Bee—don't, oh, don't think that of me! I couldn't, dear—no one could! The curtains were drawn and the house was dark and comparatively cool. Within that soothing shadow, Katherine gathered courage to
  • 72. face the girl, and, little by little, hint at the tempest raging in her soul. It was the old, common story of a proud woman with a hungry heart, denied love and sympathy where she had a right to expect it, and tempted unwillingly, but tempted none the less. Men are beasts! exclaimed Beatrice, angrily. Don't say that, Bee! Ralph has a great deal to bother him, but I can't help wishing he were different. If he were only as he used to be! If I knew, or even thought he loved me—if he would try to understand me—if he wouldn't always misjudge me—but now—— You're brave enough to fight it out and win, Kit—I know you are! I hope so; but what hurts me most is the fear that he—that he knows—that I—that I care—and pities me! Who? Ralph? No—the—the—— I understand, said Beatrice, quickly; you mustn't let him know. Besides, you don't really care. Women often mistake loneliness for something else—don't you think so? Perhaps. Oh, if he would only go away, where I would never see him again—if he only would—sometime, in the long years, things would come right between Ralph and me! You'll have to wait, Kit. Life is made up of waiting, for women, and it's the hardest thing for us to do. Oh, I know, continued Beatrice, with a harsh laugh; I fought something out myself once, but I won. It was hard, but I did it, and I'd do it again—I wouldn't be coward enough to run away. When things hurt you, you don't have to let anybody know. You can shut your lips tight, and if you bite your tongue hard it keeps back the tears. I always pretend I'm a rock, with the waves beating against me. Let it hurt inside, if it wants to— you don't have to let anybody see!
  • 73. The girl's fine courage insensibly strengthened the woman. I'm so glad you know, she sighed. I'm glad, too. I'm going now, Kit, and I wish you'd lie down a little while. Don't forget I'm your friend, and I'll always help you when I can, and anyhow, I'll always try. It was characteristic of Beatrice that she went home without any demonstrative farewell. She had been gentle, sympathetic, and genuinely sorry for her cousin, but there was an inner hardness somewhere which the other felt. Overwrought by emotion, Katherine slept for hours, and when she awoke a cool breeze had risen from the lake and was moving her white curtains to and fro. Dull sorrow was gnawing at her heart, but the stab was gone. She dressed and went out, without any particular object in view. The loneliness of the house depressed her, and she felt that she must get away from it; yet she did not wish to talk to any one. As she went toward the gate the Captain's wife met her. Where are you going? she asked. To—to the little lad, faltered Katherine. Oh, said the other, quickly, turning away as if she had been hurt. For a moment the childless woman envied the other her grave. Half a mile from the Fort, in a hollow near the river, was a little mound, marked only by a rude slab of limestone and the willow that grew above it. At the sight of it her eyes filled. Oh, Baby, she sobbed, pressing her face against the cold turf above him, I wish I was down there beside you, as still and as dreamless as you! You don't know what it means—you never would have known! Oh, I'd rather be a stone than a woman with a heart! Katherine! cried a man's voice beside her; Katherine! Norton's arm lifted her from the grave and held her close. Dear heart, he said, is the world unkind?
  • 74. She drew away from him, but he still held her cold hand in his. My heart aches for you, Katherine—can't you tell me? You never lost a child, she whispered, clutching at the straw. That is true, but I have lost far more. I—— He stopped and bit his lips upon the words that struggled for utterance. Come away, he said, gently. He led her to the bank of the stream, where they sat down under a tree. She leaned against it, unconscious that he still held her hand. There was a long silence, in which she regained, in some measure, her self-control. I can't think what's wrong with me, she sighed. I've cried more in the last six months than in all my life before. I'm not the crying kind—naturally, that is. Don't think about that, for nature knows a great deal more than we do. Cry all you want to, and thank God you have no grief beyond the reach of tears. Beyond—tears? Yes; there is another kind, which I am glad you do not know. It cuts and burns and stings till it is the very refinement of torture, and there is no veil of mist to blind the eyes. She looked at him curiously. You——? Yes, he answered, with his head bowed; that is the kind of grief I know the best. I—I'm sorry, she said, stirred to pity. Why should you be sorry for me? he asked, with a rare smile. There are countless joys in the world, but the griefs are few and old. The humblest of us can find new happiness, but there has been no increase of sorrow since the world was first made. There is a fixed and unvariable quantity of it, and we take turns bearing it— that's all. Nothing comes to any of us that some one before us has not met like a soldier, bravely and well.
  • 75. You are strong, but I have no strength. There are different kinds of strength, Katherine, and of these the one most to be prized is what we call endurance, for lack of a better word. One can always bear a little more, for we live only one day at a time, and to-morrow may bring us new gifts of which we do not dream. Lengthening shadows lay on the river and the sun hung low in the west, but they talked on. She forgot everything but the peace of the moment, which came to her sore heart like a benediction. Without knowing it, she was very near to happiness then. The Doctor's voice was soothing, as if he were talking to a child, and she did not dream that he was fighting the exquisite danger of her nearness with all the power at his command. At last she leaned forward with her eyes shining, and put her hand on his. Thank you, she said, softly, for helping me! The man's blood leaped in his veins, and he sprang to his feet. He walked back and forth on the bank of the river for some time before he dared trust himself to speak. Your happiness is very near to me, he said, trying hard to keep his voice even, you must always remember that. And for me, it is enough to be near you, even if—— She stretched out her hands and he lifted her to her feet. I must go, she said. Yes, you must go, and go alone. I will stay here until you have had time to get back. The deference to circumstances jarred upon her and she did not answer. Her hat was lying by the child's grave, and as he picked it up for her, she said: Why, there are violets all around. I never saw those before. Didn't you? he asked diffidently; I thought you came often. No, she said, in a low voice, not very often. Who put them there?
  • 76. He lowered his eyes at her question, and then she understood. Did you plant flowers on my baby's grave? she cried. There was a tense moment before he dared to look at her. Yes, he answered, slowly, because—— They were standing face to face, with the little grave between them, and the woman's heart quivered with a strange and terrible joy. There was no need of words, for, all at once, she knew why, during the four years of her marriage, he had followed her from one post to another. She saw a new meaning in his sympathy when the little lad died and her husband blamed her so bitterly; moreover, she knew that her battle was with herself, not him, for the unyielding edge of Honour lay between them, and, even if she would, he would not let her cross. For his part he, too, was uplifted, because without words she understood, and answered with love in her eyes. Undisguised and unashamed, her heart leaped toward him, but he stood with his hands clenched so tightly that the nails cut deep into the flesh. Neither had heard nor seen, but she felt an alien presence, and turned. Not six feet away from them stood Lieutenant Howard, with his face ashen grey. He had an armful of flowers—purple flags and yellow lilies from the marsh and clover from the fields. When he knew that she saw him, he came to the grave, stooped, and put the flowers upon it. The Doctor stepped back, but Howard took no note of him whatever. It is a strange place for a tryst, he said, with forced calmness. Katherine, will you come home? They went all the way to the Fort without speaking, and when they reached their own house, he stood aside for her to enter, then followed her in and locked the door. Trembling with weakness, he sat down and drew her toward him. Katherine, have you anything to say to me? Strangely enough, she was not afraid, and the terrible joy was still surging in her heart.
  • 77. Only this, Ralph—that you have wronged me and misjudged me; but you know this—that I never told you a lie in my life. As long as I bear your name I will bear it rightly; while I call myself your wife, you may know that I am faithful to you and to myself. That is all I have to say, but for your sake and my own—and for the little lad's sake—be just a little kind to me! Her voice broke at the last words, but he rushed past her and went out. From the window of her room she saw him pacing back and forth on the plains beyond the Fort, fighting his battle with himself. She knew she had hurt him past all healing and pitied him subconsciously; the dominant knowledge warred with her instincts. When he came in to supper, his face was still pale, but his voice was even and controlled. He ate but little, and they talked commonplaces until afterward. Katherine, he said, I remove the embargo; you may have—him— or any of your other friends at the house as often as you please. I will not force my wife to make clandestine appointments outside! He laughed harshly and went out, but, though she waited for him till long past midnight, he did not return. For her there was no rest. Pity, shame, fear, pride, and ecstasy struggled for mastery in her soul. The sound of moving waters murmured through the night with insistent repetition as the waves came to the shore. In the dark hours before dawn she saw a man, indistinctly, walking on the prairie, with his hands clasped behind him and his head bowed. At first she thought it was Ralph, but, straining her eyes through the darkness, she saw that it was the other, and her heart beat hard with pain. Dear God, she murmured brokenly, oh, give him peace, and help me to be true!
  • 79. CHAPTER XII IN THE NORTH WOODS Come on, Doc, said Ronald. Where? asked Norton, lazily. Across the river, of course; don't you see the mob over there? The large yard in front of the Mackenzie house was fairly well filled with people when they arrived. Mr. and Mrs. Mackenzie, Forsyth, Chandonnais, Lieutenant and Mrs. Howard, and Mrs. Franklin were standing behind Beatrice, who was painting in water colours. Black Partridge, in all the glory of his feather head-dress and his most gorgeous blanket, was posing for his picture. The chief endeavoured to preserve the appearance of calm, but in reality he was greatly excited. Doctor Norton and the Lieutenant exchanged cool salutations, and Katherine was scarcely more cordial. All three of them had decided to ignore past events, but there was an element of difficulty in the situation, none the less. How do you suppose Birdie can wear a blanket in July? asked Ronald. I should think he'd be roasted to a turn. It's his best blanket, explained Beatrice, selecting another brush, and he wants it in his picture. I'd rather my clothes would be painted separately on a day like this, murmured Ronald. I didn't know you had more than one suit, remarked the artist, with a flourish of her brush; you can't properly say 'clothes.'
  • 80. Well, 'clo', then, retorted the Ensign, if it suits you better; but some day you'll see me in a brand-new uniform. It's what I'm living for, answered Beatrice. Somebody get me some more water. A dozen hands were outstretched, but it was Forsyth who secured the cup, and he was rewarded with a radiant smile when he returned. Ain't that smart, now! exclaimed the trader, delightedly, as the unmistakable features of Black Partridge appeared upon the paper. Chandonnais was grinning broadly, and even Ronald and the Lieutenant condescended to praise. To think that we've had a real artist here for months and never knew it! exclaimed Mrs. Franklin. Why didn't you let us know about it before? Because, answered the girl, as an old lady at Fort Mackinac would have said, I didn't 'feel to paint.' Mrs. Mackenzie was restraining the children with difficulty, for each and every one of them yearned to take a brush and assist in the delicate task. At last she took the baby and went into the house, leaving Maria Indiana to Katherine, and the two older children to their father and Forsyth. There, said Beatrice, with a critical squint at her work; it's almost done. Against a background of delicate green, the Indian, in his scarlet blanket, stood boldly and properly pictured. The colouring was very good and she had caught the spirit of the pose. Let me show it to him, suggested Robert. She was wiping her brushes and did not see the expression of dismay on the chief's face when he beheld his counterfeit presentment, but she saw him snatch the picture out of Robert's hand and heard his indistinct mutterings when he fled like a deer.
  • 81. Well, what do you think of that! she gasped. What was he saying, Uncle John? I didn't catch it, Bee—did you, Rob? Forsyth had made a little progress in the language, but had understood only a word or two. It was something about the 'Great Spirit,' I think, but I didn't get the connection. That's gone, anyhow, said the Doctor. You meant it for him, didn't you? Why, yes, eventually; but it wasn't done. It was done enough for him, evidently, observed Ronald; he seems to prefer his pictures a little rare. Are you ready to make mine now? Indeed, I'm not going to paint you. I'm going in to help Aunt Eleanor. Mrs. Howard followed her. The Doctor offered to row Mrs. Franklin across the river, Chan disappeared, and the Lieutenant went over to the Agency House with Mackenzie. Ronald looked at Forsyth and laughed. Everybody's moving, he said. Let's go over and get Major and go swimming. You go after Major, suggested Robert, and I'll get some towels of Aunt Eleanor. We'll go up north. Ronald embarked in a pirogue and Forsyth went into the house. I don't see where it's gone to, Mrs. Mackenzie was saying. Are you sure you haven't it, Katherine? What have you lost, Aunt Eleanor? he asked. Why, my blue-and-white patchwork quilt—a white one with blue stars in it. It was washed and put away clean last Fall, and now it's gone.
  • 82. Beatrice was looking at him in a way that puzzled him. I'm sure I haven't seen it, he hastened to say. Am I suspected? Of course not, returned Mrs. Mackenzie; but it's a strange thing to happen right here in the house. I wish you'd go up to the loft and see if it's on Chan's bed—he may have taken it by mistake. Forsyth climbed the ladder to the empty loft, but no quilt was to be seen. The rude shakedown on which the half-breed slept had only blankets for covering. He looked around curiously, for he had never been in the loft before, but he did not envy Chan his quarters. There was only one window in the desolate place, and that scarcely deserved the name, for it was merely a small aperture in the front of the house. The floor was comparatively clean, but there was a pile of rubbish in one corner, which he promptly investigated. He had hardly expected to find the quilt, but he was surprised when he discovered a ham, a side of bacon, and a large piece of dark blue calico hidden under the nondescript heap. I expect he gets hungry in the night, thought Robert, remembering Chan's ferocious appetite. No quilt there, Aunt Eleanor, he said, when he went down. May I have some towels? The Indians must have taken it, she sighed, but I don't know when nor how. Beatrice was in a brown study, but Robert, even though he was gifted with rather more than the average man's discernment, did not know what she was thinking about. Remembering the conversation he had overheard the night of the barbecue, he had thought it likely that the cross over the door of the house in the woods had been stolen from the half-breed by an Indian, or else, after the manner of others somewhat higher in the social scale, Chan had taken unto himself an Indian wife. Except as it concerned Beatrice, the matter did not interest him, and he forbore to tell her what he knew, lest the secret between them should come to an end. Her curiosity about the mysterious cabin had
  • 83. increased rather than diminished; but Robert had refused to go with her when she wanted to investigate it again, and she did not quite dare to go alone. Ronald was waiting for him outside, and the dog trotted along beside them in high spirits, lavishing moist caresses upon his master, and punctuating his expressions of affection with exuberant barks. Down, Major, down! commanded Ronald, or I'll throw you into the lake. The shadowy coolness of the woods was invigorating, and they walked on, heedless of the distance. When we find a deep place, said Forsyth, we'll dive into it from the bluff. No we won't, returned Ronald, conclusively. I knew a fool once who broke his neck in just that way. No loss to the world particularly, but unpleasant. They'd miss us mightily at the Fort. When Robert saw that they were approaching the neighbourhood of the cabin, he said that he was tired. So 'm I, answered the other. Let's sit down and get cooled off before we go in. Major was far ahead, ranging back and forth eagerly in pursuit of some small animal that had escaped him. Something has happened, continued Ronald; guess! Couldn't guess—what is it? That's right, laughed the Ensign, slapping his knee; nobody could guess. We've actually got our new uniforms! You don't say so! Where are they? At Fort Wayne. Oh, you haven't got them, then? No, but we've almost got 'em. Some of the boys are going this week sometime, as soon as the Captain can make up his mind to send 'em. I wish I could go, too, but they'll need nearly all the
  • 84. horses—fifty-eight new uniforms, you know. I've thought seriously of borrowing Miss Manning's horse and taking the trip—I need a change. She wouldn't let you have it. I hadn't intended to ask her, explained Ronald. Lord, but she'd be mad! I'd give a pretty penny to see her when she found out I'd done it! I'd really rather see her good and mad than to take the trip, but I can't do both. If I have one pleasure, you'll have the other. I'd rather not, thank you—I'd much prefer to be out of the way of the storm. I hope you won't do it. Well, I'm not going to, said the Ensign; at least, I don't think I am. I'm more or less subject to impulses, however. A shrill feminine scream brought both men to their feet. What was that? cried Forsyth. Major came toward them from the north, on a dead run, with his tail between his legs and panting for breath. What's the matter, old boy? shouted Ronald. The dog took shelter behind his master, trembling violently. He isn't hurt, said the Ensign, after looking him over carefully, he's just scared. Do you think we'd better go up and see what's wrong? No, answered Forsyth; everything is quiet now. Major probably got into trouble with a squaw. It was a woman's scream. Maybe so, assented Ronald, sitting down again. Anyhow, it was none of the women at the Fort, and I'm in favour of letting the Indians fight their own battles. The dog, still frightened, insisted on lying uncomfortably close to his master. Move over a bit, Major, he suggested; you're too warm to sit by. He's all right, laughed Forsyth, as the dog refused to move; let him alone.
  • 85. Do you know, said Ronald, after a silence, that scream sounded like Mad Margaret's voice. Don't you think so? Perhaps, now that you speak of it; but I haven't seen her for a long time. Neither have I, and I don't want to. Do you remember the night you came? Forsyth nodded. I can't get that out of my head—the way she looked at me when she told me I should never have my heart's desire. Someway, it sticks. You're not superstitious, are you? Not exactly, but it was rather uncanny, if you remember,—at least it would have seemed so if she had said it to you. That's true, admitted Robert. I'm not afraid of anything in this world, resumed the Ensign; but I don't want to tackle the next before I get to it—if there is any next. What do you think about the next world, anyway? Well, answered Ronald, seriously, I don't think much about it, and that's a fact. Nobody knows any more about it than anybody else, and I don't see why one man's opinion isn't as good as another's. Personally, I have always felt that if I was decent and honest and minded my own business, I'd get my share of anything good that night be coming after I got through here. Actions, to my mind, are a good deal more important than beliefs. That's so, too, but I've learned to keep pretty still about those things, for I've been accused more than once of too much liberality. The chaplain at West Point was a nice old fellow, and he used to tell us that if we were good soldiers and abided by the army regulations, we wouldn't get into trouble after we died. I've always remembered it and I've marched by it ever since.
  • 86. Welcome to our website – the perfect destination for book lovers and knowledge seekers. We believe that every book holds a new world, offering opportunities for learning, discovery, and personal growth. That’s why we are dedicated to bringing you a diverse collection of books, ranging from classic literature and specialized publications to self-development guides and children's books. More than just a book-buying platform, we strive to be a bridge connecting you with timeless cultural and intellectual values. With an elegant, user-friendly interface and a smart search system, you can quickly find the books that best suit your interests. Additionally, our special promotions and home delivery services help you save time and fully enjoy the joy of reading. Join us on a journey of knowledge exploration, passion nurturing, and personal growth every day! ebookbell.com