Skip to main content

Model-based Performance Evaluation of Dynamic Partial Reconfigurable Datapaths for FPGA-based Systems

  • Chapter
  • First Online:
Embedded Systems Design with FPGAs
  • 3210 Accesses

Abstract

Dynamic partial-reconfigurable (DPR) FPGAs have the property that all or part of their functionality can be time-multiplexed at run-time. This is achieved by dynamically transferring partial configuration bitstreams from off-chip memory to FPGA configuration memory via a specialized datapath. The performance of this datapath can have a significant impact on overall system performance and should be considered early in the design cycle. Unfortunately, performance measures for such systems can typically be determined only after development. Such measures are heavily dependent upon the detailed characteristics of the datapath and on the particular workload imposed on the system during measurement and thus can only be used to make predictions for systems similar to that used for initial measurements. In this chapter, we outline an approach to model the DPR datapath early in the design cycle using queueing networks. This modeling approach is essential for experimenting with system parameters and for providing statistical insight into the effectiveness of candidate architectures. A case study is provided to demonstrate the usefulness and flexibility of the modeling scheme.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 129.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Baskett F, Chandy KM, Muntz RR, Palacios FG (1975) Open, closed, and mixed networks of queues with different classes of customers. J ACM 22:248–260. URL DOI http://doi.acm.org/10.1145/321879.321887. URL http://doi.acm.org/10.1145/321879.321887

    Google Scholar 

  2. Bertoli M, Casale G, Serazzi G (2009) Jmt: performance engineering tools for system modeling. SIGMETRICS Perform Eval Rev 36(4):10–15. DOI http://doi.acm.org/10. 1145/1530873.1530877

  3. Claus C, Ahmed R, Altenried F, Stechele W (2010) Towards rapid dynamic partial reconfiguration in video-based driver assistance systems. In: ARC, pp 55–67

    Google Scholar 

  4. Claus C, Zhang B, Stechele W, Braun L, Hübner M, Becker J (2008) A multi-platform controller allowing for maximum dynamic partial reconfiguration throughput. In: FPL, pp 535–538

    Google Scholar 

  5. Galindo J, Peskin E, Larson B, Roylance G (2008) Leveraging firmware in multichip systems to maximize fpga resources: an application of self-partial reconfiguration. In: Proceedings of the 2008 international conference on reconfigurable computing and FPGAs, pp 139–144. IEEE Computer Society, Washington, DC, USA DOI 10.1109/ReConFig.2008.81. URL http://portal.acm.org/citation.cfm?id=1494647.1495194

  6. Griese B, Vonnahme E, Porrmann M, Rückert U (2004) Hardware support for dynamic reconfiguration in reconfigurable soc architectures. In: FPL, pp 842–846

    Google Scholar 

  7. Gross D, Harris CM (1985) Fundamentals of queueing theory, 2nd edn. Wiley, New York

    Google Scholar 

  8. Hsiung PA, Lin CS, Liao CF (2008) Perfecto: a systemc-based design-space exploration framework for dynamically reconfigurable architectures. ACM Trans Reconfigurable Technol Syst 1:17:1–17:30

    Google Scholar 

  9. Jackson JR (1957) Networks of waiting lines. Oper Res 5(4):518–521. URL http://www.jstor.org/stable/167249

    Google Scholar 

  10. Papadimitriou K, Dollas A, Hauck S (2011) Performance of partial reconfiguration in FPGA systems: A survey and a cost model. ACM Trans Reconfigurable Technol Syst 4:36:1–36:24. New York, NY, USA. URL http://doi.acm.org/10.1145/2068716.2068722

  11. Pattipati KR, Kostreva MM, Teele JL (1990) Approximate mean value analysis algorithms for queuing networks: existence, uniqueness, and convergence results. J ACM 37:643–673. DOI http://doi.acm.org/10.1145/79147.214074. URL http://doi.acm.org/10.1145/79147.214074

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Rehan Ahmed .

Editor information

Editors and Affiliations

1 Appendix

Fig. 10

(a) Single-node queueing system, (b) birth-death process

Queueing theory includes mechanisms for calculating several useful measures including the average wait time in the queue (W q ) and the system (W), the expected number of customers in the queue (L q ) and the system (L), and the response time of a queue, its utilization, and system throughput. Suppose that the number of customers in the system at time t is Nt, then the probability of having n customers in the system is \({p}_{n}\left (t\right ) = Pr\left \{N\left (t\right ) = n\right \}\), and \({p}_{n} = Pr\left \{N = n\right \}\) in steady state. For a system with up to c queues, the expected value of the mean number of customers in the system and in the queue is

$$L = E\left [N\right ] ={ \sum \limits_{n=0}^{\infty }}n{p}_{ n},$$
(2)
and
$$L = E\left [{N}_{q}\right ] ={ \sum \limits_{n=c+1}^{\infty }}\left (n - c\right ){p}_{ n},$$
(3)
respectively. Little’s formulas [7] relates these estimates for both the queue and the system using
$$L = \lambda W$$
(4)
and
$${L}_{q} = \lambda {W}_{q}.$$
(5)
A system can be represented by a set of states with state transitions for which states are defined by the number of customers in the system. The system can occupy only one state at any given time and will evolve by moving from state to state with some probability. The set of all states defines the state space of the system. If the future evolution of the system depends only its current state and not on its past history, then the system is said to be memoryless. Such a system is said to have the markov property and can be represented by a Markov chain. The state space corresponding to the single-node system in Fig. 10a can be represented by the Markov chain shown in Fig. 2b.

The Markov chain shown in Fig. 10b is a birth-death process for which an arrival at a node increases the number in the queue by one and a departure decreases it by one. A first-come-first-serve queue dictated by a birth-death process with a Poisson arrival rate and an exponential service-time distribution is called an M/M/1 queue.

Once the state space model of a system has been specified, a set of flow balance equations can be determined based on the balance of flow of incoming and outgoing customers for each state of the system. The flow balance equation corresponding to the state space shown in Fig. 10b is as follows:

$$({\lambda }_{n} {+\mu }_{n}){\rho }_{n} = {\lambda {}_{n-1}\mu }_{n-1} {+\mu }_{n+1}{\rho }_{n+1},(n \geq 1)$$
(6)
and
$${\lambda }_{0}{p}_{0} {=\mu }_{0}{p}_{1}.$$
(7)
where λ n and ρ n are the arrival and departure rates in state n, respectively.

The flow-balance equations can be used to solve for the probability of the system being in a state, p n . p n can then be used to calculate Eqs. 2 and 3.

Fig. 11

An example of a queueing network

An important measure of queueing networks is the joint probability \({p}_{{n}_{1},{n}_{2},\ldots,{n}_{k}}\), which is the probability that a network of k nodes is in the state n 1, n 2, , n k . As the complexity of a network increases, the ease at which this probability can be solved grows correspondingly. Jackson showed that the joint probability can be expressed as the product of its single-node station marginal probabilities [9]:

$${p}_{{n}_{1},{n}_{2},\ldots,{n}_{k}} = \frac{1} {G}{\rho }_{1}^{{n}_{1} }{\rho }_{2}^{{n}_{2} }\cdots {\rho }_{k}^{{n}_{k} },$$
(8)
where
$$G ={ \sum \limits_{{n}_{1}+{n}_{2}+\cdots +{n}_{k}=N}}{\rho }_{1}^{{n}_{1} }{\rho }_{2}^{{n}_{2} }\cdots {\rho }_{k}^{{n}_{k} },$$
(9)
is a normalizing constant equal to 1 representing the sum of all possible joint probabilities. From this, equations similar to Eqs. 2 and 3 can be used to calculate performance numbers for the entire system.

One limitation of Jackson networks is that all customers belong to the single class and therefore have the same routing, arrival-rate, and service-rate characteristics. This is often a limiting factor when modeling real-life systems for which customers have different behaviors. BCMP networks are an extension of Jackson networks such that several classes of customer can exist in the system each with their own statistical characteristics [1]. As discussed in Sect. 4, BCMP networks are used in the proposed modeling approach to model the partial reconfiguration process for FPGAs.

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer Science+Business Media, LLC

About this chapter

Cite this chapter

Ahmed, R., Hallschmid, P. (2013). Model-based Performance Evaluation of Dynamic Partial Reconfigurable Datapaths for FPGA-based Systems. In: Athanas, P., Pnevmatikatos, D., Sklavos, N. (eds) Embedded Systems Design with FPGAs. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-1362-2_5

Download citation

  • DOI: https://doi.org/10.1007/978-1-4614-1362-2_5

  • Published:

  • Publisher Name: Springer, New York, NY

  • Print ISBN: 978-1-4614-1361-5

  • Online ISBN: 978-1-4614-1362-2

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics