Application-driven development of flexible packet-oriented communication interfaces [Elektronische Ressource] / Christian Sauer
176 pages
English

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris

Application-driven development of flexible packet-oriented communication interfaces [Elektronische Ressource] / Christian Sauer

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus
176 pages
English
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Informations

Publié par
Publié le 01 janvier 2010
Nombre de lectures 44
Langue English
Poids de l'ouvrage 2 Mo

Extrait

Technische Universit˜at Munc˜ hen
Lehrstuhl fur˜ Integrierte Systeme
Application-driven Development of Flexible
Packet-oriented Communication Interfaces
Christian Sauer
Vollst˜andiger Abdruck der von der Fakult˜at fur˜ Elektrotechnik und
Informationstechnik der Technischen Universit˜at Munc˜ hen zur Erlangung
des akademischen Grades eines
Doktor-Ingenieurs (Dr.-Ing.)
genehmigten Dissertation.
Vorsitzender:
Univ.-Prof. Dr.-Ing. Ulf Schlichtmann
Prufer˜ der Dissertation:
1. Univ.-Prof. Dr. sc. techn. Andreas Herkersdorf
2. Prof. Kurt Keutzer, Ph.D. (University of California, Berkeley, USA)
Die Dissertation wurde am 2.6.2009 bei der Technischen Universit˜at Munc˜ hen
eingereicht und durch die Fakult˜at fur˜ Elektrotechnik und
Informationstechnik am 13.7.2010 angenommen.Contents
1 Introduction 1
1.1 The reality of the interface zoo . . . . . . . . . . . . . . . . . . . 1
1.2 The promise of exible interfaces . . . . . . . . . . . . . . . . . . 4
1.3 Leveraging the programmable platform. . . . . . . . . . . . . . . 6
1.4 Objectives of research . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Structure of this dissertation . . . . . . . . . . . . . . . . . . . . 8
2 Review of Communication Interfaces 9
2.1 Application domains . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Usage-based classiflcation . . . . . . . . . . . . . . . . . . . . . . 10
2.3 Interfaces deployed with network processors . . . . . . . . . . . . 11
2.4 Residential gateways & integrated access devices . . . . . . . . . 14
2.5 Wireless application processors . . . . . . . . . . . . . . . . . . . 18
2.6 Discussion and selection of interfaces . . . . . . . . . . . . . . . . 20
3 Analysis of Packet Interfaces 25
3.1 Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.1.1 Interface surroundings . . . . . . . . . . . . . . . . . . . . 25
3.1.2 Functional layers . . . . . . . . . . . . . . . . . . . . . . . 26
3.1.3 Elementary tasks . . . . . . . . . . . . . . . . . . . . . . . 27
3.2 Modeling packet-based interfaces in Click . . . . . . . . . . . . . 29
3.2.1 Click characteristics . . . . . . . . . . . . . . . . . . . . . 29
3.2.2 Interface speciflcs . . . . . . . . . . . . . . . . . . . . . . . 30
3.2.3 Model setup . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.3 Application models . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.3.1 PCI Express model . . . . . . . . . . . . . . . . . . . . . . 32
3.3.2 RapidIO model . . . . . . . . . . . . . . . . . . . . . . . . 34
3.3.3 Hypertransport model . . . . . . . . . . . . . . . . . . . . 34
3.3.4 Gigabit Ethernet model . . . . . . . . . . . . . . . . . . . 36
3.3.5 Wireless LAN model . . . . . . . . . . . . . . . . . . . . . 38
3.4 Related work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.4.1 Comparing protocols . . . . . . . . . . . . . . . . . . . . . 41
3.4.2 Modeling packet processing applications . . . . . . . . . . 42
3.5 Comparison and conclusion . . . . . . . . . . . . . . . . . . . . . 47
iii CONTENTS
4 An Application-driven Methodology 51
4.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.2 Methodology fundamentals . . . . . . . . . . . . . . . . . . . . . 53
4.2.1 SystemC modeling and performance evaluation . . . . . . 53
4.2.2 Click extensions for speciflc architectures . . . . . . . . . 54
4.2.3 Common Y-chart methodology . . . . . . . . . . . . . . . 55
4.2.4 Evaluation frameworks based on the Y-chart . . . . . . . 56
4.3 Application-driven ow using the Y-chart . . . . . . . . . . . . . 59
4.3.1 Five phase methodology . . . . . . . . . . . . . . . . . . . 59
4.3.2 Prerequisites and tools . . . . . . . . . . . . . . . . . . . . 61
4.4 Code generation for embedded cores . . . . . . . . . . . . . . . . 63
4.4.1 Why not Click for embedded processors? . . . . . . . . . 63
4.4.2 CRACC { Click Rapidly adapted to C Code . . . . . . . 64
4.4.3 Targeting CRACC to embedded cores . . . . . . . . . . . 66
4.5 Hardware encapsulation, platform mapping . . . . . . . . . . . . 67
4.5.1 Packet I/O . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.5.2 Special purpose hardware . . . . . . . . . . . . . . . . . . 68
4.5.3 Inter-element communication . . . . . . . . . . . . . . . . 68
4.5.4 Data layout and distinct memories . . . . . . . . . . . . . 69
4.5.5 Mapping annotation and multi core code generation . . . 70
4.6 NOVA - A Network-Optimized Versatile Architecture . . . . . . 72
4.6.1 NOVA hardware platform . . . . . . . . . . . . . . . . . . 72
4.6.2 Programming model . . . . . . . . . . . . . . . . . . . . . 74
4.6.3 Platform evaluation . . . . . . . . . . . . . . . . . . . . . 76
4.6.4 Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.7 SystemClick { Performance models in SystemC . . . . . . . . . . 77
4.7.1 Platform representation . . . . . . . . . . . . . . . . . . . 77
4.7.2 Performance annotation . . . . . . . . . . . . . . . . . . . 78
4.7.3 Embedding Click in SystemC . . . . . . . . . . . . . . . . 80
4.7.4 Resource managers . . . . . . . . . . . . . . . . . . . . . . 82
4.7.5 Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
4.8 Quality of Results . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.8.1 Simulation performance . . . . . . . . . . . . . . . . . . . 86
4.8.2 Sim accuracy . . . . . . . . . . . . . . . . . . . . . 87
4.9 Chapter summary and conclusion . . . . . . . . . . . . . . . . . . 87
5 A Programmable Interface Architecture 89
5.1 Fully programmable solution . . . . . . . . . . . . . . . . . . . . 90
5.1.1 Architecture setup . . . . . . . . . . . . . . . . . . . . . . 90
5.1.2 Proflling results . . . . . . . . . . . . . . . . . . . . . . . . 91
5.1.3 Performance analysis . . . . . . . . . . . . . . . . . . . . . 94
5.1.4 Observations . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.2 Design trade-ofis and consequences . . . . . . . . . . . . . . . . . 97
5.2.1 Core type and conflguration . . . . . . . . . . . . . . . . . 98
5.2.2 Application-speciflc hardware accelerators . . . . . . . . . 99
5.2.3eciflc vs. general purpose ISA. . . . . . . . 101
5.2.4 Multiple processors . . . . . . . . . . . . . . . . . . . . . . 105
5.2.5 Communication Topology . . . . . . . . . . . . . . . . . . 112
5.3 Proposal for an optimized architecture . . . . . . . . . . . . . . . 116
5.3.1 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . 116CONTENTS iii
5.3.2 Hardware building blocks . . . . . . . . . . . . . . . . . . 117
5.3.3 Synthesis results and cost estimation . . . . . . . . . . . . 119
5.3.4 Performance & further optimization potential . . . . . . . 121
5.4 Costs of modularity and programmability . . . . . . . . . . . . . 123
5.4.1 Hardware modularity . . . . . . . . . . . . . . . . . . . . 123
5.4.2 Software moy . . . . . . . . . . . . . . . . . . . . . 124
5.4.3 A less modular architecture experiment . . . . . . . . . . 125
5.5 Related work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
5.5.1 Modular platform architectures . . . . . . . . . . . . . . . 129
5.5.2 Flexible interface implementations . . . . . . . . . . . . . 131
5.5.3 Complexity of individual protocol implementations . . . . 134
5.6 Chapter summary and discussion . . . . . . . . . . . . . . . . . . 136
6 Conclusion 143
6.1 Application-driven methodology. . . . . . . . . . . . . . . . . . . 144
6.2 Architecture exploration . . . . . . . . . . . . . . . . . . . . . . . 145
6.3 Is a programmable solution feasible? . . . . . . . . . . . . . . . . 146
6.4 Directions for further research . . . . . . . . . . . . . . . . . . . . 147
Bibliography 149iv CONTENTSList of Figures
1.1 IXP1200 die photograph . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Nexperia die . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Area increase in PCI protocol versions . . . . . . . . . . . . . . . 3
1.4 Bandwidth vs.pin count of recent network processor interfaces. . 4
1.5 Processing core topologies in MPSoC platforms.. . . . . . . . . . 6
1.6 MPSoC platform with programmable IO elements . . . . . . . . 7
2.1 Interfaces and deployment of network processors on line cards . . 11
2.2 Exemplary interfaces of residential gateways . . . . . . . . . . . . 15
3.1 A communication interface and its environment. . . . . . . . . . 26
3.2 Layers of a packet-oriented communication interface . . . . . . . 27
3.3 Click example: graphical and textual representations. . . . . . . 30
3.4 Basic simulation setup for point-to-point communication . . . . . 31
3.5 Simulation setup for shared communication channels . . . . . . . 31
3.6 PCI-Express end-point device interface model. . . . . . . . . . . 32
3.7 Hypertransport end-point device interface model. . . . . . . . . . 35
3.8 Gigabit Ethernet MAC and PHY (1000Base-X) model. . . . . . . 37
3.9 Model of an 802.11 a/b/g wireless LAN station with QoS . . . . 39
3.10 Atomic data frame transfer (IEEE 802.11). . . . . . . . . . . . . 41
4.1 The Y-chart methodology for design space exploration. . . . . . . 55
4.2 The Y-chart based on CRACC and NOVA. . . . . . . . . . . . . 62
4.3 The Y-chart on SystemClick performance models. . . . . . 62
4.4 The CRACC code generation ow and framework. . . . . . . . . 64
4.5 Mapping a Click application onto a concurrent platfor

  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents