ABSTRACT

CONTENTS 5.1 Introduction : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 106 5.2 Outline : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 108 5.3 Related work : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 108 5.4 Basic concepts : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 109

5.4.1 Category definition : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 109 5.4.1.1 Category as a graph : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 109 5.4.1.2 Identity morphism and composition of morphisms : : : : : : : : : 110 5.4.1.3 Identity and associativity for composition of morphisms : : : 112

5.4.2 Functor : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 112 5.4.3 Isomorphism : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 112 5.4.4 Natural isomorphism : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 113 5.4.5 Element of a set : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 113

5.5 Processing BioChipNet tasks : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 114 5.5.1 Parallel composition of BioChipNet tasks : : : : : : : : : : : : : : : : : : : : : : : : : : 114 5.5.2 BioChipNet Tasks : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 115 5.5.3 Categorical characteristics of BioChipNet tasks : : : : : : : : : : : : : : : : : : : : : 116 5.5.4 Core-to-core networks : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 118

5.5.4.1 Self-configuration of core-to-core networks : : : : : : : : : : : : : : : 118 5.5.4.2 Category of core-to-core networks : : : : : : : : : : : : : : : : : : : : : : : : 120 5.5.4.3 Extensional monoidal category of core-to-core networks : : : 121 5.5.4.4 Pushout of self-configuring core-to-core networks : : : : : : : : : 122

5.6 Processing BioChipNet data : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 124 5.6.1 BioChipNet agents : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 124 5.6.2 Category of BioChipNet data types : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 126 5.6.3 Extensional monoidal category of BioChipNet data types : : : : : : : : : : : 127 5.6.4 Parallel composition of BioChipNet agents : : : : : : : : : : : : : : : : : : : : : : : : : 129

5.7 Notes and remarks : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 132 5.8 Conclusions : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 134

A networking-on-chip paradigm is currently at crucial point in its evolution: autonomic networking-on-chip (ANoC), marked by the increasing developments of bioinspired on-chip networks (shortly called as BioChipNets). In ANoC, every computation is split up into tasks that run simultaneously on multiple IP (intellectual prop-

erty) cores communicating over a BioChipNet. Hence, ANoC is a form of parallel processing in decentralization, nondeterminism and dynamicity of the network. The overarching goal of ANoC is to support such BioChipNets capable of management and high performance. Meeting this grand challenge of ANoC requires a fundamental approach to the aspects of tasks and data parallel not tackled before. To this end, taking advantage of the categorical structures we establish, in this chapter, a firm formal basis for specifying tasks parallel, data parallel, core-to-core structures and self-organization on BioChipNets. All of these are to formalize parallel processing on BioChipNets.