電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子書籍>Principles of Asynchronous Cir

Principles of Asynchronous Cir

2009-07-11 | rar | 2048 | 次下載 | 免費

資料介紹

Preface xi
Part I Asynchronous circuit design – A tutorial
Author: Jens Spars?
1
Introduction 3
1.1 Why consider asynchronous circuits? 3
1.2 Aims and background 4
1.3 Clocking versus handshaking 5
1.4 Outline of Part I 8
2
Fundamentals 9
2.1 Handshake protocols 9
2.1.1 Bundled-data protocols 9
2.1.2 The 4-phase dual-rail protocol 11
2.1.3 The 2-phase dual-rail protocol 13
2.1.4 Other protocols 13
2.2 The Muller C-element and the indication principle 14
2.3 The Muller pipeline 16
2.4 Circuit implementation styles 17
2.4.1 4-phase bundled-data 18
2.4.2 2-phase bundled data (Micropipelines) 19
2.4.3 4-phase dual-rail 20
2.5 Theory 23
2.5.1 The basics of speed-independence 23
2.5.2 Classification of asynchronous circuits 25
2.5.3 Isochronic forks 26
2.5.4 Relation to circuits 26
2.6 Test 27
2.7 Summary 28
3
Static data-flow structures 29
3.1 Introduction 29
3.2 Pipelines and rings 30
v
vi PRINCIPLES OF ASYNCHRONOUS CIRCUIT DESIGN
3.3 Building blocks 31
3.4 A simple example 33
3.5 Simple applications of rings 35
3.5.1 Sequential circuits 35
3.5.2 Iterative computations 35
3.6 FOR, IF, and WHILE constructs 36
3.7 A more complex example: GCD 38
3.8 Pointers to additional examples 39
3.8.1 A low-power filter bank 39
3.8.2 An asynchronous microprocessor 39
3.8.3 A fine-grain pipelined vector multiplier 40
3.9 Summary 40
4
Performance 41
4.1 Introduction 41
4.2 A qualitative view of performance 42
4.2.1 Example 1: A FIFO used as a shift register 42
4.2.2 Example 2: A shift register with parallel load 44
4.3 Quantifying performance 47
4.3.1 Latency, throughput and wavelength 47
4.3.2 Cycle time of a ring 49
4.3.3 Example 3: Performance of a 3-stage ring 51
4.3.4 Final remarks 52
4.4 Dependency graph analysis 52
4.4.1 Example 4: Dependency graph for a pipeline 52
4.4.2 Example 5: Dependency graph for a 3-stage ring 54
4.5 Summary 56
5
Handshake circuit implementations 57
5.1 The latch 57
5.2 Fork, join, and merge 58
5.3 Function blocks – The basics 60
5.3.1 Introduction 60
5.3.2 Transparency to handshaking 61
5.3.3 Review of ripple-carry addition 64
5.4 Bundled-data function blocks 65
5.4.1 Using matched delays 65
5.4.2 Delay selection 66
5.5 Dual-rail function blocks 67
5.5.1 Delay insensitive minterm synthesis (DIMS) 67
5.5.2 Null Convention Logic 69
5.5.3 Transistor-level CMOS implementations 70
5.5.4 Martin’s adder 71
5.6 Hybrid function blocks 73
5.7 MUX and DEMUX 75
5.8 Mutual exclusion, arbitration and metastability 77
5.8.1 Mutual exclusion 77
5.8.2 Arbitration 79
5.8.3 Probability of metastability 79
Contents vii
5.9 Summary 80
6
Speed-independent control circuits 81
6.1 Introduction 81
6.1.1 Asynchronous sequential circuits 81
6.1.2 Hazards 82
6.1.3 Delay models 83
6.1.4 Fundamental mode and input-output mode 83
6.1.5 Synthesis of fundamental mode circuits 84
6.2 Signal transition graphs 86
6.2.1 Petri nets and STGs 86
6.2.2 Some frequently used STG fragments 88
6.3 The basic synthesis procedure 91
6.3.1 Example 1: a C-element 92
6.3.2 Example 2: a circuit with choice 92
6.3.3 Example 2: Hazards in the simple gate implementation 94
6.4 Implementations using state-holding gates 96
6.4.1 Introduction 96
6.4.2 Excitation regions and quiescent regions 97
6.4.3 Example 2: Using state-holding elements 98
6.4.4 The monotonic cover constraint 98
6.4.5 Circuit topologies using state-holding elements 99
6.5 Initialization 101
6.6 Summary of the synthesis process 101
6.7 Petrify: A tool for synthesizing SI circuits from STGs 102
6.8 Design examples using Petrify 104
6.8.1 Example 2 revisited 104
6.8.2 Control circuit for a 4-phase bundled-data latch 106
6.8.3 Control circuit for a 4-phase bundled-data MUX 109
6.9 Summary 113
7
Advanced 4-phase bundled-data
protocols and circuits
115
7.1 Channels and protocols 115
7.1.1 Channel types 115
7.1.2 Data-validity schemes 116
7.1.3 Discussion 116
7.2 Static type checking 118
7.3 More advanced latch control circuits 119
7.4 Summary 121
8
High-level languages and tools 123
8.1 Introduction 123
8.2 Concurrency and message passing in CSP 124
8.3 Tangram: program examples 126
8.3.1 A 2-place shift register 126
8.3.2 A 2-place (ripple) FIFO 126
viii PRINCIPLES OF ASYNCHRONOUS CIRCUIT DESIGN
8.3.3 GCD using while and if statements 127
8.3.4 GCD using guarded commands 128
8.4 Tangram: syntax-directed compilation 128
8.4.1 The 2-place shift register 129
8.4.2 The 2-place FIFO 130
8.4.3 GCD using guarded repetition 131
8.5 Martin’s translation process 133
8.6 Using VHDL for asynchronous design 134
8.6.1 Introduction 134
8.6.2 VHDL versus CSP-type languages 135
8.6.3 Channel communication and design flow 136
8.6.4 The abstract channel package 138
8.6.5 The real channel package 142
8.6.6 Partitioning into control and data 144
8.7 Summary 146
Appendix: The VHDL channel packages 148
A.1 The abstract channel package 148
A.2 The real channel package 150
Part II Balsa - An Asynchronous Hardware Synthesis System
Author: Doug Edwards, Andrew Bardsley
9
An introduction to Balsa 155
9.1 Overview 155
9.2 Basic concepts 156
9.3 Tool set and design flow 159
9.4 Getting started 159
9.4.1 A single-place buffer 161
9.4.2 Two-place buffers 163
9.4.3 Parallel composition and module reuse 164
9.4.4 Placing multiple structures 165
9.5 Ancillary Balsa tools 166
9.5.1 Makefile generation 166
9.5.2 Estimating area cost 167
9.5.3 Viewing the handshake circuit graph 168
9.5.4 Simulation 168
10
The Balsa language 173
10.1 Data types 173
10.2 Data typing issues 176
10.3 Control flow and commands 178
10.4 Binary/unary operators 181
10.5 Program structure 181
10.6 Example circuits 183
10.7 Selecting channels 190
Contents ix
11
Building library components 193
11.1 Parameterised descriptions 193
11.1.1 A variable width buffer definition 193
11.1.2 Pipelines of variable width and depth 194
11.2 Recursive definitions 195
11.2.1 An n-way multiplexer 195
11.2.2 A population counter 197
11.2.3 A Balsa shifter 200
11.2.4 An arbiter tree 202
12
A simple DMA controller 205
12.1 Global registers 205
12.2 Channel registers 206
12.3 DMA controller structure 207
12.4 The Balsa description 211
12.4.1 Arbiter tree 211
12.4.2 Transfer engine 212
12.4.3 Control unit 213
Part III Large-Scale Asynchronous Designs
13
Descale 221
Joep Kessels & Ad Peeters, Torsten Kramer and Volker Timm
13.1 Introduction 222
13.2 VLSI programming of asynchronous circuits 223
13.2.1 The Tangram toolset 223
13.2.2 Handshake technology 225
13.2.3 GCD algorithm 226
13.3 Opportunities for asynchronous circuits 231
13.4 Contactless smartcards 232
13.5 The digital circuit 235
13.5.1 The 80C51 microcontroller 236
13.5.2 The prefetch unit 239
13.5.3 The DES coprocessor 241
13.6 Results 243
13.7 Test 245
13.8 The power supply unit 246
13.9 Conclusions 247
14
An Asynchronous Viterbi Decoder 249
Linda E. M. Brackenbury
14.1 Introduction 249
14.2 The Viterbi decoder 250
14.2.1 Convolution encoding 250
14.2.2 Decoder principle 251
14.3 System parameters 253
14.4 System overview 254
x PRINCIPLES OF ASYNCHRONOUS CIRCUIT DESIGN
14.5 The Path Metric Unit (PMU) 256
14.5.1 Node pair design in the PMU 256
14.5.2 Branch metrics 259
14.5.3 Slot timing 261
14.5.4 Global winner identification 262
14.6 The History Unit (HU) 264
14.6.1 Principle of operation 264
14.6.2 History Unit backtrace 264
14.6.3 History Unit implementation 267
14.7 Results and design evaluation 269
14.8 Conclusions 271
14.8.1 Acknowledgement 272
14.8.2 Further reading 272
15
Processors 273
Jim D. Garside
15.1 An introduction to the Amulet processors 274
15.1.1 Amulet1 (1994) 274
15.1.2 Amulet2e (1996) 275
15.1.3 Amulet3i (2000) 275
15.2 Some other asynchronous microprocessors 276
15.3 Processors as design examples 278
15.4 Processor implementation techniques 279
15.4.1 Pipelining processors 279
15.4.2 Asynchronous pipeline architectures 281
15.4.3 Determinism and non-determinism 282
15.4.4 Dependencies 288
15.4.5 Exceptions 297
15.5 Memory – a case study 302
15.5.1 Sequential accesses 302
15.5.2 The Amulet3i RAM 303
15.5.3 Cache 307
15.6 Larger asynchronous systems 310
15.6.1 System-on-Chip (DRACO) 310
15.6.2 Interconnection 310
15.6.3 Balsa and the DMA controller 312
15.6.4 Calibrated time delays 313
15.6.5 Production test 314
15.7 Summary 315
Epilogue 317
References 319
Index 333
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費下載
  2. 0.00 MB  |  1490次下載  |  免費
  3. 2單片機典型實例介紹
  4. 18.19 MB  |  92次下載  |  1 積分
  5. 3S7-200PLC編程實例詳細資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關(guān)電源原理及各功能電路詳解
  10. 0.38 MB  |  10次下載  |  免費
  11. 6基于AT89C2051/4051單片機編程器的實驗
  12. 0.11 MB  |  4次下載  |  免費
  13. 7藍牙設(shè)備在嵌入式領(lǐng)域的廣泛應(yīng)用
  14. 0.63 MB  |  3次下載  |  免費
  15. 89天練會電子電路識圖
  16. 5.91 MB  |  3次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費
  15. 8開關(guān)電源設(shè)計實例指南
  16. 未知  |  21539次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537791次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233045次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191183次下載  |  免費
  13. 7十天學(xué)會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138039次下載  |  免費