Modern-day System-on-Chip (SoC) platforms use a large number of embedded processors and application specific hardware components . An integration of these heterogeneous components into a single chip makes communication among them critical. Besides, these components are pre-verified and optimized. Hence, communication architecture emerges as a key performance determining component of these multiprocessor SoC (MP-SoC) platforms. Furthermore, availability of several commercial communication architectures such as, AMBA, CoreConnect and their customization facilitate the designer with variety of design alternatives. Therefore, system level performance estimation is essential for selection of optimum communication architecture from a wide design space at an early stage of design cycle.
System-on-Chip applications use different types of communication architectures viz. bus-based, Network-on-Chip (NoC) based, hybrid bus-NoC architecture and crossbar architecture. Bus based architectures can be further classified as dedicated buses, single shared bus and network of shared buses. In SoCs and embedded applications, bus based architectures are popular because these are simple, consume less power and area. Moreover, performance of bus based architectures not only suffices for low end and high volume applications but also results in cheaper design. This has been motivation for our efforts for estimating performance of bus based communication architectures at the system level.
In this paper, we propose system level performance estimation of bus based communication architectures based on Stochastic Automata Network (SAN). Mainly, we focus on formulation of SAN model for a Single Shared Bus (SSB) architecture and its extension for Hierarchical Bus Bridge (HBB) architecture. The approach has been proposed as an extension of GSMP based performance model of these architectures . In Section II, we present basic concepts and terminology of SAN, related work and our contribution. In Section III, we propose the SAN framework of a SSB architecture for performance estimation. Section IV contains enhancement of the SAN formulation for HHB architecture. We present the results in Section V. We conclude in Section VI.
Ii-a Stochastic Automata Network: an overview
A stochastic automata network consist of a number of modules or stochastic automata. A module is modeled by a set of states and a set of transitions which determines dynamic behavior of a component of the parallel system. The state of one module is called local state, while global or system state is the collection of local states of all modules. In short, the SAN model is modular representation of parallel system. The modules of a SAN model interact with each other using local and synchronizing events
. Local event changes the state of a single component module by triggering local transition. Synchronizing event modifies the states of more than one modules by simultaneous transitions in those modules. Probabilities of local and synchronizing transition can befunctional or non-functional. In functional transition, transition probability is the function of the states of other modules whereas it is constant in non-functional transition.
For formal description, let us consider a SAN model with N component modules and a set of events E. The automaton, (where ) with a set of states having cardinality . Local state variable of is denoted by
. Hence, global state of the SAN is the collection of all local states i.e. a vector) whereas x x … x is called the global state space . The details of SAN can be found in  and references there in.
Ii-B Related Work
Work reported in , uses static performance estimation technique for allocation of communication channels. Our previous work , proposes an analytical performance evaluation of SSB and HBB architectures based on GSMP model. Analytical approach as in , estimates communication overhead in the pipelined communication path, which considers an impact of various protocol parameters on data transfer. Work in  proposes simulation based approach based on Operation State Machine for performance estimation of the system. Authors in  have proposed two phase hybrid performance estimation approach which first performs initial co-simulation with abstract communication and then analyzes time inaccurate communication graph by specifying communication architecture. A large body of work dealing SAN formalization is available in  . Authors in  use SAN model for performance analysis in platform based design.
Ii-C Contribution of the paper
Main contribution of the paper lies in the proposal for system level performance estimation of a SSB architecture and HBB architecture. The formulation is based on the SAN model of communication architectures. We present high level simulation model of these architectures in the Stateflow component of MATLAB.
Proposed modeling approach provides an early estimation of memory bandwidth (BW), average queue length () and average waiting time () for a SSB architecture; whereas in case of HBB architecture, we estimate local bandwidth (), local average queue length (), local average waiting time (), global memory bandwidth (), global average queue length () and global average waiting time (). The input parameters to the model are number of Processing Elements (PEs) (N), the mean computation time () and first and second moment of connection time of PEs (, ). Additional input parameters for HBB architecture are: probability of local and global requests ( and ), first and second moment of local and global connection times (, , , ).
Iii SAN based model for SSB architecture
In this section, we propose the SAN model of a heterogeneous SSB architecture for evaluating performance metrics. The model has been proposed as an extension of GSMP based performance model of a homogeneous SSB architecture . Two types of abstract communication models are being used in SoC platforms- (i) massage passing communication model and (ii) shared memory communication model. Our formulation is based on the latter model, in which SoC function involves communication of the PEs with the memories. Figure 1 shows synchronous SSB architecture which consists of N heterogeneous processing elements, , ,…, competing for the use of a bus. We assume that a bus arbitration is based on the fixed priorities of PEs. The lowest priority is assigned to while the highest to . The bus access is assumed to be non-preemptive. Arbiter of N-user one-server type resolves the bus access conflict.
Iii-a Model formulation
Stochastic automata network of a heterogeneous SSB architecture is modeled as a collection of interacting modules of PEs. We employ GSMP model  for each module which represents dynamic behavior of a PE. We use functional and synchronizing transitions to describe an interactions among these modules. Figure 2 depicts SAN model of a SSB architecture, whereas Fig. 3 shows details of one automaton that represents GSMP model of . Computing state labelled as , corresponds to the situation when the is computing. In Accessing state , the accesses MEM. In full waiting state labelled as , the waits for MEM for full connection time of another PE which is accessing MEM; while in residual waiting state labelled as , the
waits for MEM for residual connection time of a accessing PE. In each state, model spends random amount of time with mean value, called mean sojourn time of state ().
We express state transition probabilities of the SAN model in terms of transition probabilities of GSMP model of a homogeneous SSB architecture . These are explained as follows. (i) - a local transition involves only , with constant probability . (ii) - the functional transition which depends on the global state of the system. This transition takes place if all high priorities PEs are in computing states. (iii) - a synchronizing transition which synchronizes with event (any transitions of higher priority PEs) with probability and alternate probability 1. (iv) - a functional transition which takes place if any one of the PEs is in accessing state.
Performance parameters of the PE are computed from steady state probabilities  viz. , , and (where, is steady state probability of the state).
Iv SAN based model for HBB architecture
In this section, we extend SAN modeling approach for HBB architecture. HBB architecture is composed of two shared buses and , and connected by a bus bridge as shown in Fig. 4. Here, N number of PEs on each bus, compete to access shared memories or . At the bridge level communications on two buses are concurrent whereas at bus level behavior of PEs are concurrent. For simplicity, let us consider a scenario when a PE mapped to generates either a local request to access or global request to access . With reference to this PE, parameters of and are referred to as local and global parameters, respectively. Let be the probability of local request, implying only would be used to access , and arbitration of is sufficient. Whereas be the probability of global request where both and would be used to access , and two stage arbitration of and is essential.
Iv-a Model formulation
We propose two level SAN model for HBB architecture. At bridge level the SAN consist of two automata correspond to and and are similar to the Fig. 2. At bus level, each module is composed of automata of PEs. At bridge level two automata of buses interact with each other while at bus level interaction among automata of PEs is modeled.
Automata of the in aforementioned scenario (mapped to ) is depicted in Fig. 5. State , state and state correspond to local memory and are similar to the states of automata of a of SSB architecture (Fig. 3). Global accessing state labelled as state , global full waiting state labelled as state and global residual waiting state labelled as state are analogous states when a PE attempts to access . Detail discussion of model equations and performance parameters is omitted.
In this section, we present performance evaluation results of SSB and HBB architectures obtained using the proposed modeling approach. We have captured the SAN model of both architectures with fixed arbitration scheme in Stateflow component of MATLAB. Simulation was performed on on P-IV, 1 GB Linux-workstation. In both examples, random computation and communication times of PEs were generated by using MATLAB m-functions with generalized distribution.
As first example, we have considered a SSB architecture with three PEs- , and . We assigned the lowest priority to and the highest to . We assigned mean values of computation times of PEs as: = 2 cycles. We varied mean communication time () of with and as parameters. Various performance parameters of the PEs viz. , and have been estimated. For brevity, we present results of and of , as shown in Fig. 6(a) and 6(b).
As observed from the Fig. 6(a), bandwidth increases with communication time which is due to increase in mean sojourn time of state. The Fig. also shows influence of and/or on . Reduction in bandwidth is observed when we changed and/or from two to four cycles, since has to wait more time in waiting states. received maximum bandwidth (25 %) when ==2 cycles and =20 cycles; and minimum bandwidth (3 %) when = = 4 cycles and =2 cycles. Figure 6(b) reveals converse observations for queue length, . For higher values of and/or , and/or access MEM for more time than . As a consequence spends more time in waiting states. Hence, higher value of is noted for = = 4 cycles.
In second example, we have considered a HBB architecture with two PEs mapped to each bus. Processing elements, and are mapped to ; while and are mapped to . We assigned descending priorities from global requests of , , and ; and then local requests in the same order. Various model input parameters are assigned values as follows- =0.7, =0.8, =0.7, ==== 2 cycles, === 2 cycles, and === 2 cycles (here, and g denote local and global parameters followed by PE number). From various evaluated performance parameters of PEs, we present local and global bandwidth (,) of . We varied for local bandwidth and for global bandwidth. Figure 7(a) and 7(b) show plot of these parameters with probability of local request, with and as parameters.
We observe that local bandwidth, increases with increase in as well as with . At higher values of , is more sensitive to . An influence of on is clearly noted from the Fig. 7(a). Share of local bandwidth declined as we increased from two cycles to four cycles. In case of global bandwidth, gradual decrease is observed with increase in . At the same value of , the received more bandwidth with higher . Variations in with at higher values of are not significant.
This paper presents SAN based modeling approach for system level performance evaluation of SSB and HBB architectures. We have evaluated performance metric viz. bandwidth, queue length and waiting time with communication times of processing elements for SSB architecture. For HBB architecture performance parameters for local and global memories are evaluated with local requesting probabilities. Proposed approach provides an early estimation of performance metrics that can help the designer to select the appropriate communication architecture for SoC and embedded applications.
We gratefully acknowledge the financial support provided by the Department of IT, Ministry of Communication & IT, Govt. of India under SMDP-VLSI-II project.
-  (1995-09) Synthesis of system-level communication by an allocation-based approach. In Pro. of the 8th Int. Sym. on System Synthesis, 1995, pp. 150–155. Cited by: §II-B.
-  (2008-09) Interactive generalized semi Markov process model for evaluating arbitration schemes of SoC bus architectures. In Second UKSIM European Sym. on Computer Modeling and Simulation, pp. 578–583. Cited by: §I, §II-B, §III-A, §III-A, §III.
-  Note: [online] Available: http://public.itrs.net. Cited by: §I.
-  (1998-12) Integrating communication protocol selection with partitioning in hardware/software codesign. In Proc. 11th Int. Sym. on System Synthesis, pp. 111–116. Cited by: §II-B.
-  (2001-06) System-level performance analysis for designing on-chip communication architectures. IEEE Trans. on CAD of ICs 20 (6), pp. 768–783. Cited by: §II-B.
-  (2001) System-level power/performance analysis for embedded systems design. In DAC, pp. 599–604. Cited by: §II-B.
-  (1991) Stochastic automata network for modeling parallel systems. IEEE Trans. on Software Eng. 17 (10), pp. 1093–1108. Cited by: §II-A, §II-B.
-  (1995) The nuemerical solution of stochastic automata networks. European Journal of Operation research 86 (3), pp. 503–525. Cited by: §II-B.
-  (2006-07) Modeling operation and microarchitecture concurrency for communication architectures with application to retargetable simulation. IEEE Trans. VLSI Systems 14 (7), pp. 707–716. Cited by: §II-B.