Preface |
|
xiii | |
Authors |
|
xvii | |
|
|
1 | (12) |
|
1.1 System-on-Chip Integration and Its Challenges |
|
|
1 | (2) |
|
1.2 SoC to Network-on-Chip: A Paradigm Shift |
|
|
3 | (2) |
|
1.3 Research Issues in NoC Development |
|
|
5 | (3) |
|
1.4 Existing NoC Examples |
|
|
8 | (2) |
|
|
10 | (3) |
|
|
10 | (3) |
|
2 Interconnection Networks in Network-on-Chip |
|
|
13 | (40) |
|
|
13 | (1) |
|
|
14 | (15) |
|
|
25 | (1) |
|
|
25 | (4) |
|
|
29 | (1) |
|
|
30 | (13) |
|
2.4.1 Routing-Dependent Deadlock |
|
|
31 | (2) |
|
2.4.1.1 Deterministic Routing in M × N MoT Network |
|
|
33 | (8) |
|
2.4.2 Avoidance of Message-Dependent Deadlock |
|
|
41 | (2) |
|
2.5 Flow Control Protocol |
|
|
43 | (2) |
|
2.6 Quality-of-Service Support |
|
|
45 | (1) |
|
|
46 | (2) |
|
|
48 | (5) |
|
|
48 | (5) |
|
3 Architecture Design of Network-on-Chip |
|
|
53 | (22) |
|
|
53 | (1) |
|
3.2 Switching Techniques and Packet Format |
|
|
53 | (1) |
|
3.3 Asynchronous FIFO Design |
|
|
54 | (3) |
|
3.4 GALS Style of Communication |
|
|
57 | (1) |
|
3.5 Wormhole Router Architecture Design |
|
|
57 | (6) |
|
3.5.1 Input Channel Module |
|
|
58 | (1) |
|
3.5.2 Output Channel Module |
|
|
58 | (5) |
|
3.6 VC Router Architecture Design |
|
|
63 | (7) |
|
3.6.1 Input Channel Module |
|
|
65 | (1) |
|
|
66 | (1) |
|
|
66 | (3) |
|
|
69 | (1) |
|
3.7 Adaptive Router Architecture Design |
|
|
70 | (3) |
|
|
73 | (2) |
|
|
73 | (2) |
|
4 Evaluation of Network-on-Chip Architectures |
|
|
75 | (44) |
|
4.1 Evaluation Methodologies of NoC |
|
|
75 | (6) |
|
4.1.1 Performance Metrics |
|
|
78 | (2) |
|
|
80 | (1) |
|
|
81 | (3) |
|
4.3 Selection of Channel Width and Flit Size |
|
|
84 | (1) |
|
4.4 Simulation Results and Analysis of MoT Network with WH Router |
|
|
84 | (6) |
|
4.4.1 Accepted Traffic versus Offered Load |
|
|
85 | (1) |
|
4.4.2 Throughput versus Locality Factor |
|
|
85 | (1) |
|
4.4.3 Average Overall Latency at Different Locality Factors |
|
|
86 | (2) |
|
4.4.4 Energy Consumption at Different Locality Factors |
|
|
88 | (2) |
|
4.5 Impact of FIFO Size and Placement in Energy and Performance of a Network |
|
|
90 | (3) |
|
4.6 Performance and Cost Comparison of MoT with Other NoC Structures Having WH Router under Self-Similar Traffic |
|
|
93 | (10) |
|
4.6.1 Network Area Estimation |
|
|
94 | (2) |
|
4.6.2 Network Aspect Ratio |
|
|
96 | (1) |
|
4.6.3 Performance Comparison |
|
|
97 | (1) |
|
4.6.3.1 Accepted Traffic versus Offered Load |
|
|
97 | (1) |
|
4.6.3.2 Throughput versus Locality Factor |
|
|
98 | (1) |
|
4.6.3.3 Average Overall Latency under Localized Traffic |
|
|
99 | (3) |
|
4.6.4 Comparison of Energy Consumption |
|
|
102 | (1) |
|
4.7 Simulation Results and Analysis of MoT Network with Virtual Channel Router |
|
|
103 | (6) |
|
4.7.1 Throughput versus Offered Load |
|
|
104 | (1) |
|
4.7.2 Latency versus Offered Load |
|
|
104 | (1) |
|
|
105 | (3) |
|
|
108 | (1) |
|
4.8 Performance and Cost Comparison of MoT with Other NoC Structures Having VC Router |
|
|
109 | (5) |
|
4.8.1 Accepted Traffic versus Offered Load |
|
|
109 | (1) |
|
4.8.2 Throughput versus Locality Factor |
|
|
109 | (1) |
|
4.8.3 Average Overall Latency under Localized Traffic |
|
|
110 | (1) |
|
|
111 | (2) |
|
|
113 | (1) |
|
4.9 Limitations of Tree-Based Topologies |
|
|
114 | (1) |
|
|
115 | (4) |
|
|
116 | (3) |
|
5 Application Mapping on Network-on-Chip |
|
|
119 | (36) |
|
|
119 | (1) |
|
|
120 | (3) |
|
|
123 | (5) |
|
5.3.1 Other ILP Formulations |
|
|
127 | (1) |
|
5.4 Constructive Heuristics for Application Mapping |
|
|
128 | (6) |
|
5.4.1 Binomial Merging Iteration |
|
|
130 | (1) |
|
5.4.2 Topology Mapping and Traffic Surface Creation |
|
|
131 | (1) |
|
5.4.3 Hardware Cost Optimization |
|
|
132 | (2) |
|
5.5 Constructive Heuristics with Iterative Improvement |
|
|
134 | (7) |
|
5.5.1 Initialization Phase |
|
|
134 | (1) |
|
5.5.2 Shortest Path Computation |
|
|
135 | (1) |
|
5.5.3 Iterative Improvement Phase |
|
|
136 | (1) |
|
5.5.4 Other Constructive Strategies |
|
|
137 | (4) |
|
5.6 Mapping Using Discrete PSO |
|
|
141 | (9) |
|
|
141 | (1) |
|
5.6.2 Evolution of Generations |
|
|
142 | (1) |
|
5.6.3 Convergence of DPSO |
|
|
143 | (1) |
|
5.6.4 Overall PSO Algorithm |
|
|
144 | (1) |
|
5.6.5 Augmentations to the DPSO |
|
|
144 | (1) |
|
|
144 | (1) |
|
5.6.5.2 Initial Population Generation |
|
|
145 | (3) |
|
5.6.6 Other Evolutionary Approaches |
|
|
148 | (2) |
|
|
150 | (5) |
|
|
150 | (5) |
|
6 Low-Power Techniques for Network-on-Chip |
|
|
155 | (36) |
|
|
155 | (3) |
|
6.2 Standard Low-Power Methods for NoC Routers |
|
|
158 | (8) |
|
|
158 | (1) |
|
6.2.2 Gate Level Power Optimization |
|
|
159 | (1) |
|
6.2.3 Multivoltage Design |
|
|
160 | (1) |
|
6.2.3.1 Challenges in Multivoltage Design |
|
|
161 | (3) |
|
|
164 | (1) |
|
|
165 | (1) |
|
6.3 Standard Low-Power Methods for NoC Links |
|
|
166 | (6) |
|
|
167 | (1) |
|
|
168 | (2) |
|
6.3.3 On-Chip Serialization |
|
|
170 | (1) |
|
6.3.4 Low-Swing Signaling |
|
|
171 | (1) |
|
6.4 System-Level Power Reduction |
|
|
172 | (16) |
|
6.4.1 Dynamic Voltage Scaling |
|
|
172 | (2) |
|
6.4.1.1 History-Based DVS |
|
|
174 | (4) |
|
6.4.1.2 Hardware Implementation |
|
|
178 | (1) |
|
6.4.1.3 Results and Discussions |
|
|
179 | (1) |
|
6.4.2 Dynamic Frequency Scaling |
|
|
179 | (2) |
|
6.4.2.1 History-Based DFS |
|
|
181 | (2) |
|
|
183 | (1) |
|
|
183 | (1) |
|
6.4.2.4 Results and Discussions |
|
|
184 | (1) |
|
|
185 | (1) |
|
6.4.4 Runtime Power Gating |
|
|
186 | (2) |
|
|
188 | (3) |
|
|
188 | (3) |
|
7 Signal Integrity and Reliability of Network-on-Chip |
|
|
191 | (44) |
|
|
191 | (2) |
|
7.2 Sources of Faults in NoC Fabric |
|
|
193 | (11) |
|
|
194 | (1) |
|
7.2.2 Faults due to Aging Effects |
|
|
194 | (1) |
|
7.2.2.1 Negative-Bias Temperature Instability |
|
|
194 | (1) |
|
7.2.2.2 Hot Carrier Injection |
|
|
195 | (1) |
|
|
195 | (1) |
|
7.2.3.1 Capacitive Crosstalk |
|
|
195 | (4) |
|
|
199 | (4) |
|
7.2.3.3 Some Other Sources of Transient Faults |
|
|
203 | (1) |
|
7.3 Permanent Fault Controlling Techniques |
|
|
204 | (1) |
|
7.4 Transient Fault Controlling Techniques |
|
|
205 | (16) |
|
7.4.1 Intra-Router Error Control |
|
|
205 | (1) |
|
7.4.1.1 Soft Error Correction |
|
|
206 | (4) |
|
7.4.2 Inter-Router Link Error Control |
|
|
210 | (1) |
|
7.4.2.1 Capacitive Crosstalk Avoidance Techniques |
|
|
210 | (6) |
|
7.4.2.2 Error Detection and Retransmission |
|
|
216 | (4) |
|
|
220 | (1) |
|
7.5 Unified Coding Framework |
|
|
221 | (6) |
|
7.5.1 Joint CAC and LPC Scheme (CAC + LPC) |
|
|
222 | (1) |
|
7.5.2 Joint LPC and ECC Scheme (LPC + ECC) |
|
|
223 | (1) |
|
7.5.3 Joint CAC and ECC Scheme (CAC + ECC) |
|
|
224 | (3) |
|
7.5.4 Joint CAC, LPC, and ECC Scheme (CAC + LPC + ECC) |
|
|
227 | (1) |
|
7.6 Energy and Reliability Trade-Off in Coding Technique |
|
|
227 | (3) |
|
|
230 | (5) |
|
|
231 | (4) |
|
8 Testing of Network-on-Chip Architectures |
|
|
235 | (28) |
|
|
235 | (1) |
|
8.2 Testing Communication Fabric |
|
|
236 | (9) |
|
|
237 | (1) |
|
8.2.2 Testing NoC Switches |
|
|
238 | (1) |
|
8.2.3 Test Data Transport |
|
|
239 | (2) |
|
8.2.4 Test Transport Time Minimization---A Graph Theoretic Formulation |
|
|
241 | (1) |
|
8.2.4.1 Unicast Test Scheduling |
|
|
242 | (2) |
|
8.2.4.2 Multicast Test Scheduling |
|
|
244 | (1) |
|
|
245 | (15) |
|
8.3.1 Core Wrapper Design |
|
|
246 | (4) |
|
|
250 | (3) |
|
8.3.3 Heuristic Algorithms |
|
|
253 | (5) |
|
|
258 | (1) |
|
8.3.4.1 Particle Structure and Fitness |
|
|
258 | (1) |
|
8.3.4.2 Evolution of Generations |
|
|
259 | (1) |
|
|
260 | (3) |
|
|
260 | (3) |
|
9 Application-Specific Network-on-Chip Synthesis |
|
|
263 | (26) |
|
|
263 | (1) |
|
9.2 ASNoC Synthesis Problem |
|
|
264 | (1) |
|
|
265 | (3) |
|
9.4 System-Level Floorplanning |
|
|
268 | (3) |
|
|
268 | (1) |
|
9.4.1.1 Independent Variables |
|
|
268 | (1) |
|
9.4.1.2 Dependent Variables |
|
|
268 | (1) |
|
|
269 | (1) |
|
|
269 | (1) |
|
9.4.4 Constraints for Mesh Topology |
|
|
270 | (1) |
|
9.5 Custom Interconnection Topology and Route Generation |
|
|
271 | (6) |
|
|
272 | (1) |
|
9.5.1.1 Independent Variables |
|
|
272 | (1) |
|
9.5.1.2 Derived Variables |
|
|
273 | (1) |
|
|
273 | (1) |
|
|
274 | (3) |
|
9.6 ASNoC Synthesis with Flexible Router Placement |
|
|
277 | (7) |
|
9.6.1 ILP for Flexible Router Placement |
|
|
278 | (1) |
|
|
278 | (1) |
|
9.6.1.2 Objective Function |
|
|
279 | (1) |
|
|
279 | (2) |
|
9.6.2 PSO for Flexible Router Placement |
|
|
281 | (1) |
|
9.6.2.1 Particle Structure and Fitness Function |
|
|
282 | (1) |
|
9.6.2.2 Local and Global Bests |
|
|
282 | (1) |
|
9.6.2.3 Evolution of Generation |
|
|
283 | (1) |
|
|
283 | (1) |
|
|
283 | (1) |
|
|
284 | (5) |
|
|
284 | (5) |
|
10 Reconfigurable Network-on-Chip Design |
|
|
289 | (28) |
|
|
289 | (1) |
|
|
290 | (1) |
|
10.3 Local Reconfiguration Approach |
|
|
291 | (13) |
|
|
292 | (1) |
|
|
293 | (1) |
|
|
294 | (1) |
|
|
294 | (2) |
|
|
296 | (2) |
|
10.3.5.1 Construction of CCG |
|
|
298 | (1) |
|
|
299 | (1) |
|
10.3.5.3 Configuration Generation |
|
|
299 | (1) |
|
10.3.6 ILP-Based Approach |
|
|
299 | (1) |
|
10.3.6.1 Parameters and Variables |
|
|
300 | (1) |
|
10.3.6.2 Objective Function |
|
|
300 | (1) |
|
|
300 | (1) |
|
|
301 | (1) |
|
10.3.7.1 Particle Formulation and Fitness Function |
|
|
302 | (1) |
|
10.3.8 Iterative Reconfiguration |
|
|
303 | (1) |
|
10.4 Topology Reconfiguration |
|
|
304 | (7) |
|
10.4.1 Modification around Routers |
|
|
305 | (1) |
|
10.4.2 Reconfiguration Architecture |
|
|
306 | (1) |
|
10.4.2.1 Application Mapping |
|
|
307 | (2) |
|
10.4.2.2 Core-to-Network Mapping |
|
|
309 | (1) |
|
10.4.2.3 Topology and Route Generation |
|
|
310 | (1) |
|
10.5 Link Reconfiguration |
|
|
311 | (1) |
|
10.5.1 Estimating Channel Bandwidth Utilization |
|
|
311 | (1) |
|
|
312 | (5) |
|
|
314 | (3) |
|
11 Three-Dimensional Integration of Network-on-Chip |
|
|
317 | (36) |
|
|
317 | (1) |
|
11.2 3D Integration: Pros and Cons |
|
|
318 | (5) |
|
11.2.1 Opportunities of 3D Integration |
|
|
319 | (2) |
|
11.2.2 Challenges of 3D Integration |
|
|
321 | (2) |
|
11.3 Design and Evaluation of 3D NoC Architecture |
|
|
323 | (27) |
|
11.3.1 3D Mesh-of-Tree Topology |
|
|
326 | (1) |
|
11.3.1.1 Number of Directed Edges |
|
|
326 | (1) |
|
11.3.1.2 Average Distance |
|
|
327 | (4) |
|
11.3.2 Performance and Cost Evaluation |
|
|
331 | (5) |
|
11.3.2.1 Network Area Estimation |
|
|
336 | (3) |
|
11.3.2.2 Network Aspect Ratio |
|
|
339 | (1) |
|
11.3.3 Simulation Results with Self-Similar Traffic |
|
|
340 | (1) |
|
11.3.3.1 Accepted Traffic versus Offered Load |
|
|
340 | (1) |
|
11.3.3.2 Throughput versus Locality Factor |
|
|
341 | (1) |
|
11.3.3.3 Average Overall Latency under Localized Traffic |
|
|
342 | (3) |
|
11.3.3.4 Energy Consumption |
|
|
345 | (4) |
|
11.3.4 Simulation Results with Application-Specific Traffic |
|
|
349 | (1) |
|
|
350 | (3) |
|
|
351 | (2) |
|
12 Conclusions and Future Trends |
|
|
353 | (6) |
|
|
353 | (1) |
|
|
354 | (1) |
|
|
354 | (1) |
|
|
354 | (1) |
|
12.3 Comparison between Alternatives |
|
|
355 | (4) |
|
|
357 | (2) |
Index |
|
359 | |