# Energy efficiency of task allocation for embedded JPEG systems.

1. IntroductionSmarter, smaller, and portable characteristics make embedded systems to serve diverse functionalities. Nowadays, embedded systems have rapidly increasing requirements in the applications as in automobiles, avionics, and mobile devices. According to the IDC [1] reports, nearly 1 billion smart connected devices were shipped in 2011 and it would be double by 2016. Likewise, the Intel [2] predicts that there will be more than 30 billion devices constantly linked and another 150 billion fitfully connected in the end of this decade. It will greatly increase the demand of energy while these devices are served. However, the more embedded systems that are served, the more energy they consume. As a result, Bernd [3] summarizes the market and technology analysis which are towards energy efficiency for mobile devices, cloud computing, and storage services.

From an architectural perspective, all embedded systems have hardware and software components. These hardware components, such as application specific integrated circuits (ASIC) or standard logic, offer specific functionalities or programmable gates when developing hardware circuits. Conversely, the software components, such as micro-controllers or programmable digital signal processing (DSPs), provide an environment for various application programs. By assembling these programmable hardware and software, any embedded system canbe developed depending on system specifications.

Inside the embedded systems there are a few tasks that are designed by programmable hardware or software components. Each task consumes energy regardless of the forms in either programmable hardware or software components. Energy consumption is classified as dynamic and static energy consumption based on its mode of state. The dynamic energy consumption is defined while the task is working for providing functionalities. On the other hand, task consumes static energy dissipation when its state is idle. For an embedded system with n tasks, executing one task consumes dynamic energy and the other tasks arise static energy consumption. For example, when task 1 runs, task 2, task 3 till task n occur static energy consumption. In consideration of task 2 runs, it consumes dynamic energy consumption, at the same time, task 1, task 3, task 4 till task n occur static energy consumption. To iterate the process for every task execution, the energy consumption of embedded system can be assessed.

The aforementioned statements manifest embedded systems to incessantly consume energy for repeatedly performing a few particular tasks. In order to improve energy consumption, this study proposes hyperrectangle technology (HT) to embedded system target to obtain energy saving. This paper is organized as five sections. In Section 2, we investigate some previous works with respect to energy saving for embedded system. Section 3 describes HT for embedded systems to achieve energy saving. Section 4 demonstrates experimental results of joint photographic experts group (JPEG) encoding system that is performed by HT. We conclude this work in Section 5.

2. Preliminary Works

Researchers pay much attention to energy consumption of embedded systems with respect to the fields of processor energy consumption, real-time power consumption, dynamic power consumption, and scheduling power consumption. From the processors viewpoints, Vilcu [4] aims at real time embedded system to minimize the CPU power consumption. First, he studies task execution in the power consumption of processor(s). Then, he finds the effects of optimal configuration processor(s) for energy consumption. Finally, he defines globally optimal scheduling which gains minimal energy consumption for homogeneous multiprocessor system. Gao et al. [5] present energy-efficient architecture for embedded Software (EAES) and dynamic energy-saving method to solve energy-saving problem. The former uses a processor with dynamic voltage scaling capability, FPGA modules, and extends directed acyclic graph to embedded system. The latter adopts preassignment to achieve dynamic runtime scheduling and minimize energy consumption. Qiu et al. [6] discuss the execution time of tasks with conditional instructions or operations problem. They adopt probabilistic random variable approach to model execution time of tasks. Then, they propose practical algorithm VACP to minimize energy consumption for uniprocessor embedded systems. Silva-Filho and Lima [7] state that memory hierarchy consumes power up to 50% in microprocessor system. Consequently, they propose an automated architecture exploration mechanism to NIOS II processor and memory hierarchy with parameter variation. The experimental results show the reduction of energy consumption is approximately 27%. In 2008, Zeng et al. [8] present generalized dynamic energy performance scaling (DEPS) framework to hard real-time embedded systems for exploring application-specific energy-saving potential issue. Three energy performance tradeoff technologies, DHRC, DVFS, and DPM, are integrated into DEPS. Their experimental results of simulation show the static DEPS has been improved, respectively, 13.6% and 13.7% in DVFS and DHRC. Also, dynamic DEPS improves 5.7% when comparing to static DEPS.

Real-time power information is a valuable data for software designer for battery-powered embedded systems. Genser et al. [9] propose power profiling approach to collect real-time power information at early designing stages. Moreover, they present an emulation-based power profiling approach to achieve real-time power analysis for embedded systems. Because the power information is collected at early designing stages, the development efficiency and time to market are improved. In 2008, Elewi et al. [10] first discuss the real-time scheduling of dependent tasks problem and then present enhanced multispeed (MS) algorithm for energy saving. With energy consumption problem of battery-powered embedded systems, Casares et al. [11] aim at embedded smart camera to analyze the power consumption and performance. Not only graph of energy consumption but also instructions of collections are presented. They conclude the importance of lightweight algorithm, the time of transfer data, and transferred data type.

Dynamic power consumption offield programmable gate array (FPGA) is discussed in [12, 13]. In 2009, Tsang and So [12] adopt precomputation approach to reduce dynamic power consumption in commercial off-the-shelf FPGAs. The experimental results of comparator show that 83% of dynamic power in logic or 43.1% of total dynamic power is reduced if the increased resource consumption can be negligible. In 2010, Bhandari et al. [13] present fly partial reconfiguration as well as scaling the clock on FPGA for reducing dynamic power consumption in embedded system. They conclude that the factors of dynamic power dissipation consist of application, architecture, and reconfigurable time.

The application of different algorithms to arrange scheduling issues for reducing power consumption is discussed in [14, 15]. In 2010, Bashiri and Miremadi [14] investigate earliest-deadline-first (EDF) and rate-monotonic (RM) algorithms on power efficiency of task scheduling. The results show that the BF-EDF and FF-EDF have the best power efficiency. In 2011, Cho et al. [15] propose power-saving scheduling algorithm and use soft-deadline to reduce energy consumption by about 40%. However, it is a trade off on performance and power savings for embedded systems. Kan et al. [16] present a heuristic algorithm called TGPMALL with interior point method to handle the frequency assignment on multiple soft-deadlines embedded systems. Their empirical results show the effectiveness in comparing TGPM-ALL with TGPM-1 and BEST algorithms.

3. Hyperrectangle Approach

Task graph (TG) is a conceptual graph that facilitates to describe operation for embedded system. TG comprises of vertices (U), edges (A), and levels (L) that can be represented by a 3-tuple set, G(V, A, L). The V is a unit of work which may take dependencies one or more antecedents. The A is used to exhibit the flow among V. The L indicates the order of works for V. Based on TG, we propose energy-consumed task graph (ETG) as system model of HT that adds a factor of energy consumption on TG.

3.1. System Model. ETG comprises of vertices (V), edges (A), levels (L), and energy consumption (J) that can be represented by a 4-tuple set, G(V, A, L, J). Symbol V stands for task that is a working unit on embedded system. For example, one task is represented as [V.sub.1] and a number of tasks are labeled as [V.sub.2], [V.sub.3], and V4, and so forth. Hence, application program inside embedded system can be defined as a set of tasks as [V.sub.1], [V.sub.2], and [V.sub.3] to [V.sub.n]. Another symbol A is used to direct work flow of applications among Vs. For instance, symbol [A.sub.1] guides the working flow from task [V.sub.1] to another task [V.sub.2]. Moreover, two tasks are connected by A 1 that implies their location on different levels. Label L defines the state of V and the height of ETG. The state is organized into two categories. One state is named working (W) and the other idle (7). Both states simultaneously incur when a symbol [A.sub.1] activates. For instance, working state [W.sub.1] on [V.sub.2] and idle state [I.sub.1] on [V.sub.1] separately form when A 1 activates. Sign J denotes the energy consumption of V. Each task consumes energy depending on either W or I. Figure 1 displays a ETG with 2 vertices (i.e., [V.sub.1] and [V.sub.2]), 1 edge, 2 energy consumption (i.e., [J.sub.1] and [J.sub.2]), and 2 levels (i.e., [L.sub.1] and [L.sub.2]).

3.2. Energy Consumption Definition. Power consumption of the task is classified into dynamic or static power consumption according to their state of work. Dynamic power consumption D occurs while the task locates W. On the contrary, the task in I consumes static power consumption S. Take Figure 1 as an example, the [V.sub.1] and [V.sub.2] first consume D and S separately in [L.sub.1] because the former locates at W and the latter places on I. After that, the [A.sub.1] directs the work flow to [L.sub.2]. In [L.sub.2], the [V.sub.2] and [V.sub.1] individually consume D on W and S on I. In summary, both D and S are consumed by V depending on W or I. It should be noticed that each task must consume energy at any time even though it is idle.

Low power dissipation model and analysis for embedded systems are discussed by Fan et al. [17]. They derive power dissipation with dynamic and static power dissipation from TG. The expression of the sum of power consumption for embedded system is calculated by using

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (1)

where L is the height of TG, Ps is static power consumption, [P.sub.d] is dynamic power consumption, and [t.sub.1], [t.sub.2], ..., [t.sub.n] is a set of task. In consideration of energy consumption, the energy consumption is formulated as follows:

E = P x T, (2)

where P is power dissipation and T represents execution time. Owing to power consumption which is divided into D and S, the energy consumption is categorized into dynamic ([E.sub.d]) and static ([E.sub.s]) energy dissipation. Moreover, each task can be separately implemented as two forms of f as hardware circuit (HC) and software component (SC) so that the energy consumption of embedded system can be formulated as follows:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (3)

where d is dynamic energy consumption, s is static energy consumption, f is a form of hardware circuit or software component, and v is task, i = 1,2, ..., n. In summarizing equations from (1) to (3), the total energy consumption can be derived as follows:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (4)

where L is the height of ETG, [E.sub.s] is static energy consumption, and [E.sub.d] is dynamic energy consumption.

3.3. Hyperrectangle Model. To construct hyperrectangle model of energy consumption for embedded system, we first analyze the energy consumption of ETG with two tasks which is shown in Figure 1. Then derive complicated model from it. By holding the principle of one task that has two forms (i.e., HC and SC), a ETG with two tasks (i.e., [v.sub.1] and [v.sub.2]) can be constructed four embedded systems namely HC-HC ([E.sub.1]), HC-SC ([E.sub.2]), SC-HC ([E.sub.3]), and SC-SC ([E.sub.4]). According to (3), the energy consumption of [E.sub.1], [E.sub.2], [E.sub.3], and [E.sub.4] can be defined in the following:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (5)

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (6)

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (7)

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (8)

The first and the second terms or the third and the fourth terms from (5) to (8) prove the description in Section 3.1, which indicates that W and I simultaneously incur while a symbol [A.sub.1] activates. Moreover, the third and the fourth terms can be regarded as mutual functions as the second and the first terms. Consequently, the third and the fourth terms from (5) to (8) can be formulated as the third term in the following:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (9)

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (10)

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (11)

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. (12)

From the axial coordination's perspective, the first and the second terms from (9) to (12) can be represented as four points of a rectangle [R.sub.1]. Moreover, the third term from (9) to (12) forms four points in another rectangle [R.sub.2] in the tridimensionality. As a result, the hyperrectangle model of energy consumption for embedded system with two tasks is constructed and transferred to the three-dimensional space.

Based on the previous description, the hyperrectangle model of energy consumption for embedded system with two tasks can be defined in the following.

For a rectangle [R.sup.2], it has vertex ([x.sub.i], [y.sub.j]) i, j = 1,2, and a solution set D [subset or equal to] [R.sup.2]. A given function f: D [right arrow] R, f(x, y) = u and b [member of] R, the solution can be obtained as follows:

[x.sub.i] + [y.sub.j] f([x.sub.i], [y.sub.j]) [??] b, where i, j = 1, 2. (13)

Example 1. Figure 2(a) shows a set of vertex D = {(2, 5), (5, 5), (2,11), (5,11)}. Figure 2(b) displays f: D [right arrow] R where f(2, 5) = 8, f(5, 5) = 11, f(2,11) = 14, and f(5, 11) = 16. For a given b = 20, the solution comprises {(2, 5), (5, 5)} since it meets [x.sub.i] + [y.sub.j] + f([x.sub.i], [y.sub.j]) [??] b.

Example 2. Table 1 displays an energy consumption example of embedded system with two tasks. The evaluating factors of energy consumption include the name of task, dynamic, and static energy consumption of HC and SC. Figure 3 shows a hyperrectangle schema of embedded system with two tasks (i.e., [v.sub.1] and [v.sub.2]). According to (9) to (12), the first and the second term are transferred to XY axes for [E.sub.1], [E.sub.2], [E.sub.3], and [E.sub.4], where locates at points A, D, B, and C. Points E, H, F, and G are marked for the third term from (9) to (12). We observe the most energy consumption occurring at point G (i.e., 13 + 10 + 23 = 46), which comprises SC-SC ([E.sub.4]). On the other hand, the HC-HC ([E.sub.1]) consumes the fewest energy consumption. Eventually, the energy consumption can be improved if one task is substituted from SC to HC where less energy is consumed.

Similarly, an embedded system with three tasks can be defined as follows. For a cuboid [R.sup.3], it has vertex ([x.sub.i], [y.sub.j], [z.sub.k]), i, j, k = 1,2, and a solution set D [subset or equal to] [R.sup.3]. A given function f : D [right arrow] R, f(x, y, z) = v and b [member of] R, the solution can be obtained from the following:

[x.sub.i] + [y.sub.j] + [z.sub.k] + f([x.sub.i], [y.sub.j], [z.sub.k]) [??] b, where i, j, k = 1,2. (14)

According to (13) and (14), we summarize the general expression for embedded system with n tasks as follows. For a hyperrectangle [R.sup.n], it has vertex, [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], [i.sub.j] = 1,2, and a solution set D [subset or equal to] [R.sup.n] where D is shown in (15). Given a function f: D [right arrow] R and b [member of] R, the solution can be obtained as follows:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (15)

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (16)

where 1 [??] j [??] un.

Applying hyperrectangle approach to embedded systems for gaining energy consumption consists of the following steps. First, the number of tasks U of embedded system must be defined. Next, separately constructing the number of tasks [U.sub.hc,i]; with HC and [U.sub.sc,j] with SC being the same as U. Third, constructing sets of f([U.sub.hc,i]) and f([U.sub.sc,j]) depicts energy consumption for each task. Therefore, energy consumption of each task can be fast evaluated. Fourth, constructing the first embedded system [ES.sub.a] that comprises a set of tasks with [U.sub.sc]. Fifth, the task with the most energy consumption in f([U.sub.sc,a]) is swapped with f([U.sub.hc,a]). After the swapping process

is iterated until each task is made of [U.sub.hc], the HT exploits a set of embedded systems [HT.sub.x] according to the number of [U.sub.hc] and [U.sub.sc]. The first embedded System [ES.sub.1] is assembled by one of two [U.sub.hc] and [U.sub.sc]. If U is odd, extra SC is set preceding privilege to deploy to the [ES.sub.1]. The second embedded system ES2 is set where the number of tasks with SC is more than HC. Alternatively, the number of tasks with HC that is more than SC is set to the third embedded system ES3. In setting ES2 and [ES.sub.3] until [ES.sub.m], the above process is executed repeatedly. We observe that ES2i and [ES.sub.(2i+1)] form the drift effect with SC and HC, respectively.

4. Experimental Results and Analysis

The experimental platform is Xilinx FPGA ML507 [18]. Table 2 presents the technology of system parameters. The tested example is joint photographic experts group (JPEG) encoding system that consists of 22 tasks and 9 levels. From level 1 to 9 in Figure 4(a), the number of tasks is 2, 2, 2, 3, 2, 3, 3, 3, and 2, respectively. Each task is individually implemented as hardware circuit and software component form, which are designed by Verilog programming language and C programming language. Figure 4 demonstrates the flow chart of experimental setup.

The measured data of energy consumption is shown in Table 3. In the Task column, it shows the name of task that works in the JPEG encoding system. For the dynamic and static energy consumption of hardware circuit, it is displayed in column 2 and 3. The Software tasks with dynamic and static energy consumption are illustrated in column 4 and 5.

Table 4 lists the experimental results of the proposed approach. Embedded systems column displays the results according to (16). In the energy dissipation column, it is calculated via (4). The [ES.sub.1] is set to [ES.sub.1], [ES.sub.k], and [ES.sub.m] is set to [ES.sub.2] and [ES.sub.3], respectively. On one hand, the SC drift effect, respectively, diffuses from [ES.sub.k] to [ES.sub.a]. Similarly, the HC drift effect diffuses from [ES.sub.m] to [ES.sub.w], respectively. All designs by HT to embedded systems can be fast explored for energy consumption.

To present the efficiency of the proposed HT, we compare HT to genetic algorithm (GA) [19], GHO [20], and Lin [21] via JPEG benchmarks. Four structures shown in Figure 4 of energy consumption are used to demonstrate the effects of HT. The energy consumption of each structure is set to 0.1, 0.09, 0.08, and 1 joule, respectively. The structure 1 is shown in Figure 4(a) and the experimental result is depicted in Figure 5(a). The HT gains the energy saving in comparison with GA [19], GHO [20], and Lin [21]. Moreover, the HT improves the energy consumption by 30.00%, 2.38%, and 61.49% on average to GA [19], GHO [20], and Lin [21], respectively. Figure 5(b) displays the results of structure 2 (Figure 4(b)), in which the HT separately improves the energy consumption by 31.89%, 1.52%, and 63.40% on average to GA [19], gHo [20], and Lin [21]. Figure 5(c) shows the results of structure 3 (Figure 4(c)), in which the HT individually improves the energy consumption by 23.18%, 0.44% and, 61.69% on average to GA [19], GHO [20], and Lin [21]. Figure 5(d) exhibits the results of structure 4 (Figure 4(d)), in which the HT separately improves the energy consumption by 34.28%, 3.93%, and 88.62% on average to GA [19], GHO [20], and Lin [21]. In summary, the HT achieves the energy saving by 29.84%, 2.07%, and 68.80% on average to GA [19], GHO [20], and Lin [21], respectively.

5. Conclusion

Energy saving issue is always discussed and concerned in electronic devices. Nowadays, nearly any electronic device either already has existed or will embed computing systems resulting in the applications of embedded systems that are more diverse. It reveals that embedded systems are growing exponentially. While more and more embedded systems are repeated day by day in order to provide various functionalities, the speed of energy consumption is greatly increased.

This study presents hyperrectangle technology (HT) to embedded systems target to achieve energy saving. The drift effect on HT facilitates the designer to fast explore energy consumption of embedded systems. The effectiveness of the proposed approach is demonstrated by assessing a JPEG benchmarks. Experimental results demonstrate that the HT achieves the energy saving by 29.84%, 2.07%, and 68.80% on average to GA, GHO, and Lin, respectively. Consequently, this work is valuable for developing energy-saving embedded systems.

http://dx.doi.org/10.1155/2014/718348

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgment

The authors would like to thank the National Science Council, Taiwan, for financially supporting this research under Con tract nos. NSC 101-2221-E-143-002 and NSC 102-2221-E-143 002.

References

[1] Businesswire web site, http://www.Businesswire.com/news/ home/20120328005370/en/1-Billion-Smart-Connected-DevicesShipped- 2011#.U0QSr_mSx8E.

[2] Intel web site, February 2013, http://www.intel.com/content/ dam/www/public/us/en/documents/white-papers/consumerization-of-it-trends- whitepaper.pdf.

[3] P. S. Bernd, "Technology, market and cost trends 2012," CERN IT Report, 2012, https://espace.cern.ch/WLCG-document- repository/TechnicaLDocuments/Technology_Market_Cost_Trends_ 2012_v23.pdf.

[4] D. V?lcu, "Real time scheduling and CPU power consumption in embedded systems," in Proceedings of the 2008 IEEE International Conference on Automation, Quality and Testing, Robotics, pp. 261-266, May 2008.

[5] Z. Gao, G. Dai, P. Liu, and P. Zhang, "Energy-efficient architecture for embedded software with hard real-time requirements in partial reconfigurable systems," in Proceedings of the 2009 IEEE International Conference on Embedded Computing, Scalable Computing, and Communications, pp. 387-392, September 2009.

[6] M. Qiu, J. Wu, F. Hu, S. Liu, and L. Wang, "Voltage assignment for soft real-time embedded systems with continuous probability distribution," in Proceedings of the 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, pp. 413-418, August 2009.

[7] A. G. Silva-Filho and S. M. L. Lima, "Energy consumption reduction mechanism by tuning cache configuration using nios II processor," in Proceedings of the 2008 IEEE International SOC Conference, pp. 291-294, September 2008.

[8] G. Zeng, H. Tomiyama, H. Takada, and T Ishihara, "A generalized framework for system-wide energy savings in hard real-time embedded systems," in Proceedings of the IEEE/IFIP International Conference on Embedded and Ubiquitous Computing (EUC '08), pp. 206-213, December 2008.

[9] A. Genser, C. Bachmann, J. Haid, C. Steger, and R. Weiss, "An emulation-based real-time power profiling unit for embedded software," in Proceedings of the IEEE International Symposium on Systems, Architectures, Modelling, and Simulation, pp. 67-73, July 2009.

[10] A. M. Elewi, M. H. A. Awadalla, and M. I. Eladawy, "Energy-efficient multi-speed algorithm for scheduling dependent real-time tasks," in Proceedings of the International Conference on Computer Engineering and Systems (ICCES '08), pp. 237-242, November 2008.

[11] M. Casares, A. Pinto, Y. Wang, and S. Velipasalar, "Power consumption and performance analysis of object tracking and event detection with wireless embedded smart cameras,"

in Proceedings of the 3rd International Conference on Signal Processing and Communication Systems (ICSPCS '09), pp. 1-8, September 2009.

[12] C. C. Tsang and H. K.-H. So, "Reducing dynamic power consumption in FPGAs using precomputation," in Proceedings of the IEEE International Conference on Field-Programmable Technology (FPT '09), pp. 407-410, December 2009.

[13] S. U. Bhandari, S. Subbaraman, and S. Pujari, "Power reduction in embedded system on FPGA using on the fly partial reconfiguration," in Proceedings of the 2010 IEEE International Symposium on Electronic System Design, pp. 77-80, December 2010.

[14] M. Bashiri and S. G. Miremadi, "Investigating the effects of schedulability conditions on the power efficiency of task scheduling in an embedded system," in Proceedings of the 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing, pp. 102-106, May 2010.

[15] K. Cho, C. Liang, J. Huang, and C. Yang, "Design and implementation of a general purpose power-saving scheduling algorithm for embedded systems," in Proceedings of the IEEE International Conference on Signal Processing, Communications and Computing (ICSPCC '11), pp. 1-5, September 2011.

[16] E. Y. Y. Kan, W. K. Chan, and T. H. Tse, "Leveraging performance and power savings for embedded systems using multiple target deadlines," in Proceedings of the IEEE International Conference on Quality Software, pp. 473-480, July 2010.

[17] Y.-H. Fan, J.-O. Wu, and S.-F. Wang, "Low power dissipation model analysis for embedded systems," Journal of Research Notes in Information Science, vol. 13, pp. 184-188, 2013.

[18] Xilinx ML507 website, http://www.xilinx.com.

[19] Y. Zou, Z. Zhuang, and H. Chen, "HW-SW partitioning based on genetic algorithm," in Proceedings of the 2004 Congress on Evolutionary Computation (CEC '04), pp. 628-633, Portland, Ore, USA, June 2004.

[20] T.-Y. Lee, Y.-H. Fan, Y.-M. Cheng, and C.-C. Tsai, "Hardware-software partitioning for embedded multiprocessor FPGA systems," Journal of Innovative Computing, Information and Control A, vol. 5, no. 10, pp. 3071-3083, 2009.

[21] T. Y. Lin, Y. T. Hung, and R. G. Chang, "Efficient hardware/software partitioning approach for embedded multiprocessor systems," in Proceedings of the International Symposium on VLSI Design, Automation and Test (VLSI-DAT '06), pp. 231-234, Hsinchu, Taiwan, April 2007.

Yang-Hsin Fan, (1) Jan-Ou Wu, (2) and San-Fu Wang (3)

(1) Department of Computer Science and Information Engineering, National Taitung University, Taitung 95002, Taiwan

(2) Department of Electronic Engineering, De Lin Institute of Technology, New Taipei 23654, Taiwan

(3) Department of Electronic Engineering, MingChi University of Technology, New Taipei 24301, Taiwan

Correspondence should be addressed to Yang-Hsin Fan; yhfan@nttu.edu.tw

Received 28 February 2014; Accepted 17 March 2014; Published 10 April 2014

Academic Editors: N. Barsoum, V. N. Dieu, and P. Vasant

TABLE 1: Energy consumption of embedded system with 2 tasks. Energy consumption Tasks [E.sup.HC.sub.d] [E.sup.HW.sub.s] [v.sub.1] 5 1 [v.sub.2] 6 2 Energy consumption Tasks [E.sup.SC.sub.d] [E.sup.SC.sub.s] 13 9 14 10 TABLE 2: Technology of system parameters. GA GHO Number of chromosomes 100000 100000 Number of populations 500 500 Probability of crossover 1 1 Probability of mutation 1 1 TABLE 3: Measured data of tasks for JPEG encoding system. Energy Consumption Tasks HC ([10.sup.-6]) [E.sup.HC.sub.d] [E.sup.HC.sub.s] [v.sub.0] (LevelOffset) 0.0180504 0.0119968 [v.sub.1] (DCT) 1.414320718 0.631151123 [v.sub.2] (DCT) 1.414320718 0.631151123 [v.sub.3] (DCT) 1.414320718 0.631151123 [v.sub.4] (Quant.) 0.629914608 0.123049296 [v.sub.5] (Quant.) 0.629914608 0.123049296 [v.sub.6] (Quant.) 0.629914608 0.123049296 [v.sub.7] (DPCM) 0.000575667 0.000336501 [v.sub.8] (ZigZag) 0.02977856 0.003429459 [v.sub.9] (DPCM) 0.000575667 0.000336501 [v.sub.10] (ZigZag) 0.02977856 0.003429459 [v.sub.11] (DPCM) 0.000575667 0.000336501 [v.sub.12] (ZigZag) 0.02977856 0.003429459 [v.sub.13] (VLC) 0.086972024 0.028369015 [v.sub.14] (RLE) 0.046884314 0.023175988 [v.sub.15] (VLC) 0.093019754 0.030341698 [v.sub.16] (RLE) 0.046884314 0.023175988 [v.sub.17] (VLC) 0.093019754 0.030341698 [v.sub.18] (RLE) 0.046884314 0.023175988 [v.sub.19] (VLC) 0.116959532 0.022825184 [v.sub.20] (VLC) 0.116959532 0.022825184 [v.sub.21] (VLC) 0.116959532 0.022825184 Energy Consumption Tasks SC ([10.sup.-6]) [E.sup.SC.sub.d] [E.sup.SC.sub.s] [v.sub.0] (LevelOffset) 0.591286362 0.590508 [v.sub.1] (DCT) 181.6586949 138.7103292 [v.sub.2] (DCT) 181.6586949 138.7103292 [v.sub.3] (DCT) 181.6586949 138.7103292 [v.sub.4] (Quant.) 0.93692231 0.934971 [v.sub.5] (Quant.) 0.93692231 0.934971 [v.sub.6] (Quant.) 0.93692231 0.934971 [v.sub.7] (DPCM) 0.040158143 0.040154544 [v.sub.8] (ZigZag) 0.561685068 0.5609826 [v.sub.9] (DPCM) 0.040158143 0.040154544 [v.sub.10] (ZigZag) 0.561685068 0.5609826 [v.sub.11] (DPCM) 0.040158143 0.040154544 [v.sub.12] (ZigZag) 0.561685068 0.5609826 [v.sub.13] (VLC) 0.054136441 0.0541299 [v.sub.14] (RLE) 0.838115122 0.836553 [v.sub.15] (VLC) 0.054136441 0.0541299 [v.sub.16] (RLE) 0.838115122 0.836553 [v.sub.17] (VLC) 0.054136441 0.0541299 [v.sub.18] (RLE) 0.838115122 0.836553 [v.sub.19] (VLC) 0.996227367 0.9940218 [v.sub.20] (VLC) 0.976457285 0.9743382 [v.sub.21] (VLC) 0.976457285 0.9743382 TABLE 4: Energy consumption of HT Embedded systems HT (ours) Energy dissipation (J) [v.sub.1] [v.sub.22] Structure 1: Structure 2: Figure 4(a) Figure 4(b) [ES.sub.a](0000000000000000000000) 3.9713661 3.544421533 [ES.sub.b](0100000000000000000000) 2.680031235 2.391796366 [ES.sub.c](0110000000000000000000) 1.38869637 1.239171199 [ES.sub.d](0111000000000000000000) 0.097361505 0.086546032 [ES.sub.e](0111000000000000000100) 0.088413403 0.078591929 [ES.sub.f](0111000000000000000110) 0.079642539 0.070795381 [ES.sub.g](0111000000000000000111) 0.070871676 0.062998833 [ES.sub.h](0111100000000000000111) 0.0624566 0.055518605 [ES.sub.i](0111110000000000000111) 0.054041524 0.048038377 [ES.sub.j](0111111000000000000111) 0.045626448 0.040558149 [ES.sub.k](0111111000000010000111) 0.038096141 0.033864372 [ES.sub.l](0111111000000010100111) 0.030565834 0.027170595 [ES.sub.m](0111111000000010101111) 0.023035527 0.020476818 [ES.sub.n](1111111000000010101111) 0.017720291 0.015752077 [ES.sub.o](1111111010000010101111) 0.012670802 0.011263568 [ES.sub.p](1111111010100010101111) 0.007621314 0.006775058 [ES.sub.q](1111111010101010101111) 0.002571825 0.002286549 [ES.sub.r](1111111010101110101111) 0.002084963 0.001853789 [ES.sub.s](1111111010101111101111) 0.001598124 0.001421048 [ES.sub.t](1111111010101111111111) 0.001111284 0.000988308 [ES.sub.u](1111111110101111111111) 0.000749892 0.000667071 [ES.sub.v](1111111111101111111111) 0.000388501 0.000345834 [ES.sub.w](1111111111111111111111) 2.711E--05 2.4597-E--05 Embedded systems HT (ours) Energy dissipation (J) [v.sub.1] [v.sub.22] Structure 3: Structure 4: Figure 4(c) Figure 4(d) [ES.sub.a](0000000000000000000000) 3.117476966 2.69053 [ES.sub.b](0100000000000000000000) 2.103561497 1.81533 [ES.sub.c](0110000000000000000000) 1.089646028 0.94012 [ES.sub.d](0111000000000000000000) 0.075730559 0.06492 [ES.sub.e](0111000000000000000100) 0.068770455 0.05895 [ES.sub.f](0111000000000000000110) 0.061948222 0.05310 [ES.sub.g](0111000000000000000111) 0.05512599 0.04725 [ES.sub.h](0111100000000000000111) 0.04858061 0.04164 [ES.sub.i](0111110000000000000111) 0.04203523 0.03603 [ES.sub.j](0111111000000000000111) 0.03548985 0.03042 [ES.sub.k](0111111000000010000111) 0.029632602 0.02540 [ES.sub.l](0111111000000010100111) 0.023775355 0.02038 [ES.sub.m](0111111000000010101111) 0.017918108 0.01536 [ES.sub.n](1111111000000010101111) 0.013783864 0.01182 [ES.sub.o](1111111010000010101111) 0.009856333 0.00845 [ES.sub.p](1111111010100010101111) 0.005928803 0.00508 [ES.sub.q](1111111010101010101111) 0.002001273 0.00172 [ES.sub.r](1111111010101110101111) 0.001622614 0.00139 [ES.sub.s](1111111010101111101111) 0.001243973 0.00107 [ES.sub.t](1111111010101111111111) 0.000865333 0.00074 [ES.sub.u](1111111110101111111111) 0.00058425 0.00050 [ES.sub.v](1111111111101111111111) 0.000303167 0.00026 [ES.sub.w](1111111111111111111111) 2.20841E--05 1.95711E--05

Printer friendly Cite/link Email Feedback | |

Title Annotation: | Research Article |
---|---|

Author: | Fan, Yang-Hsin; Wu, Jan-Ou; Wang, San-Fu |

Publication: | The Scientific World Journal |

Article Type: | Report |

Date: | Jan 1, 2014 |

Words: | 5466 |

Previous Article: | Brain embolism secondary to cardiac myxoma in fifteen Chinese patients. |

Next Article: | QoS-oriented high dynamic resource allocation in vehicular communication networks. |

Topics: |