SlideShare a Scribd company logo
1 of 8
Download to read offline
International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014
DOI : 10.5121/vlsic.2014.5601 1
DYNAMIC TASK SCHEDULING ON MULTICORE
AUTOMOTIVE ECUS
Geetishree Mishra1
, K S Gurumurthy2
1
BMS College of Engineering, Bangalore, India,
2
Reva Intitute of Technology, Bangalore, India
ABSTRACT
Automobile manufacturers are controlled by stringent govt. regulations for safety and fuel emissions and
motivated towards adding more advanced features and sophisticated applications to the existing electronic
system. Ever increasing customer’s demands for high level of comfort also necessitate providing even more
sophistication in vehicle electronics system. All these, directly make the vehicle software system more
complex and computationally more intensive. In turn, this demands very high computational capability of
the microprocessor used in electronic control unit (ECU). In this regard, multicore processors have
already been implemented in some of the task rigorous ECUs like, power train, image processing and
infotainment. To achieve greater performance from these multicore processors, parallelized ECU software
needs to be efficiently scheduled by the underlaying operating system for execution to utilize all the
computational cores to the maximum extent possible and meet the real time constraint. In this paper, we
propose a dynamic task scheduler for multicore engine control ECU that provides maximum CPU
utilization, minimized preemption overhead, minimum average waiting time and all the tasks meet their
real time deadlines while compared to the static priority scheduling suggested by Automotive Open Systems
Architecture (AUTOSAR).
KEYWORDS
OEM, ECU, Multicore, Scheduling, AUTOSAR.
1. INTRODUCTION
Electronic Control Units (ECUs) fulfill the objectives and requirements of a modern automobile
which is designed to be safer, more comfortable and fuel efficient. Therefore the number of ECUs
has been increased continuously over the years. Advanced functionalities demand higher
computational capabilities from ECUs. Multicore processors have emerged to be the current
processing unit not only for high-end servers but also for embedded control systems [10, 11].
Multicore processor features with parallel processing, compact chip size and lower power
consumption. Performance is improved, the amount of processes per core is reduced and better
reliability of the on-chip communication is assured by the multicore implementation. In the
current scenario, OEMs are moving towards multicore to exploit parallelism, to accommodate
more functions on one ECU and distribute them across the computational cores [1, 3]. In effect,
some of the task intensive ECUs catering to telematics, infotainment and power train are already
upgraded with multicore processors. Performance optimization of such multicore ECUs can be
International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014
2
achieved by utilizing parallelism effectively for which, numerous runnables should be efficiently
scheduled for each core [3,4]. The operating system should have an efficient scheduling
mechanism to schedule the tasks without corrupting the shared data and without leaving any CPU
core idle at any running instant [5]. Without an optimal schedule, there can be considerable
variations in average task response times and logical correctness of the results [6]. Such
anomalies can cause instabilities in the physical system leading to performance degradation and
even safety hazards. In this paper, a hybrid dynamic scheduler is proposed for the most task
intensive engine control ECU.
2. CASE STUDY - ENGINE CONTROL UNIT
In this work, engine control unit is chosen as the target ECU for task scheduling, as it has
maximum number tasks to be executed both periodic and event driven and it has already been
implemented with multicore. Engine control unit is usually connected to a large cluster of sensors
like, intake air temperature sensor, engine coolant temperature sensor, intake manifold absolute
pressure (MAP) sensor, mass air flow sensor, throttle position sensor, crankshaft speed sensor,
camshaft sensor and knock sensor. It is connected to various actuators like idle speed motor,
electronic throttle body, fuel pressure regulator and fuel injector and delivery control. Basically
those are stepper motors and solenoids directly connected to the ECU [7]. For each sensor, there
has to be a task to receive the sensory signal after being conditioned, a task to process it as
required according to the control algorithm and another task to send appropriate signal to the
intended actuator. Each task has a large number of threads to be executed sequentially with data
dependency. Independent threads are executed in parallel by multiple cores. For each engine
ECU functionality like, air charge management, engine cooling management, battery
management, air fuel management or on-board diagnostics, a large number of inputs to be
received, parameters and local variables to be managed and many outputs are expected to be
delivered. Because of high level of interaction between the control functions, the shared data are
required to be protected efficiently [4, 6]. Three different task schedulers used are, synchronous
scheduler, asynchronous scheduler and background scheduler [7]. Synchronous scheduler is used
for tasks that need to be executed at certain crank teeth. Asynchronous scheduler also called the
time-base scheduler is executed just after the power up scheduler initialization. Background tasks
run, when the CPU is idle basically they are busy-wait loops [12, 13]. Besides that, various
interrupt service routines are executed to respond to hardware events. Right from the engine start
till stop of the vehicle, engine ECU runs with its software of several 1000 lines of code.
3. AUTOSAR ON MULTICORE SCHEDULING
According to AUTOSAR 4.0, there are certain limitations on multicore software implementation.
• The scheduling algorithms strictly assign tasks statically to cores to ensure deterministic
response for the real time critical tasks.
• The resource algorithm is not supported across cores. Resources can be shared between
tasks that are allocated to the same core but not among tasks/ISRs which are bound to
different cores.
OSEK counter and auto started alarms can be used to implement task activation mechanism. The
task synchronization issue is addressed by implementing schedule table. The Autosar schedule
International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014
3
table shown in Figure.1. has certain defined set of expiry points. Each expiry point has certain
tasks to be activated, settings to be done for some events and offset from the start of the schedule
table [8]. OSEK counter drives the iteration over these expiry points on the schedule table. So one
tick on the counter corresponds to one tick on the schedule table. Constraints apply to the delays
between adjacent expiry points and the delay to the logical end of the schedule table. According
to Autosar, the hard real time safety critical tasks are scheduled statically to computational cores
as per the fixed priority assigned. In this static priority scheduling approach, the tasks have to be
partitioned well with the order of criticality and an appropriate priority assignment scheme has to
be adopted to assign priorities prior to run time, which is always a tedious job. The computational
cores are sometimes underutilized and the lower priority tasks often miss their deadline though
not the most safety critical ones. In this paper, a global dynamic priority approach has been
explored.
Figure.1. Schedule table for AUTOSAR ECU
4. THE PROPOSED SCHEDULER MODEL
Figure.2. Scheduler model
International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014
4
The scheduler model shown in above Fig.2. has a combination of both global and partitioned
queue architecture. All the tasks arrive at the global queue, where the slack is calculated for each
and priorities are assigned dynamically. The task with least slack gets highest priority. Then the
three tasks pass on to three partitioned queues to utilize all the available cores. When a new task
arrives at the partitioned queue in the presence of previous task, a comparison happens between
their slack and tasks are arranged in ascending order of their slack in the queue with an effort to
meet the deadlines. In this simulation setup, a task set of 10 number of tasks are considered for an
asynchronous or timebase scheduler. The task attributes for the ith task are: {releasing instant ri,
WCET wi and period pi }, where WCET is the worst case execution time. Precedence constraint
is imposed on some of the tasks based on dependency. A tri-core processor implementation is
considered for these tasks to be scheduled for. The scheduled tasks are released for execution by
the dispatcher task which is characterized by a dispatching table of definite duration.
5. SCHEDULING PROBLEM
The scheduling problems are categorized by notation (α|β|γ) proposed by Graham and Blazewicz
[14,15]. This notation consists of three parts. The first part ‘α’ describes the processor
environment, the second part ‘β’ describes the task characteristics and constraints of the
scheduling problem and the last part ‘γ’ denotes the optimality criterion. In this simulation set up,
for a three processor environment, α=3. Since all the tasks are release time constrained and they
are periodic, period is the implied deadline for each instance and precedence constraint is also
imposed on some of the tasks, β=|release time, precedence & deadline constraint| and γ= Cmax,
the maximum completion time to achieve an optimal schedule.
6. WORKING OF THE PROPOSED MINIMUM SLACK FIRST ALGORITHM
At a new arriving instant at global queue,
• Calculate the slack of each task arrived .Where, Slack= Period-WCET.
• Sort the tasks in increasing order of their slack i,e S1< S2 <S3…….Sn.
• Assign priorities to these tasks dynamically by giving highest priority to the task with least
slack.
• If precedence constraint imposed on the task, Pass the task to a partitioned queue preferably
to the one where its precedence task has been allocated.
• If no precedence constraint, pass that task to a local queue based on early availability of that
CPU core.
• If :
the no. of tasks arrived at the global queue at a particular instant is > the no. of CPU
cores,
o Compare the total WCET of all the tasks at each partitioned queue.
o Assign the first task in the remaining list at global queue to the core that has least WCET.
• Else:
wait for the next new arriving instant.
At the local partitioned queue,
• If: new task arrives in the presence of previous task,
o If the precedence task of the new arrival is the last task waiting in the queue, no
comparison required.
International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014
5
o Else
Compare the slack of the new task with the WCET of the previous task.
If: S new arrival < WCET previous task + Remaining WCET running task & Sprevious task> WCETnew
arrival ,
• Swap the waiting position of these tasks in the queue.
Else if : Snew arrival < WCETprevious task + Remaining WCETrunning task & Sprevious task<
WCETnew arrival ,
• Get the tasknew to migrate to another local queue whose CPU core is expected to
be available early, getting information from the global queue.
7. TASK ATTRIBUTES TABLE
Table.1. Task attributes table
The task attributes table given in above table. 1 has release time Ri, worst case execution time
WCET, period and static priorities assigned for each of the ten tasks considered [2, 9]. These are
the parameters used for static priority scheduling. In addition to these parameters, the precedence
constraints are considered for dynamic priority scheduling. The slack is the calculated parameter
based on which dynamic priorities are assigned. For example, at 0th
instant, four number of tasks
i,e T1, T3, T5 and T7 are released. So there could be only four levels of priorities that can be
assigned. These priorities are assigned at the global queue to dispatch the tasks to the local
partitioned queues based on their corresponding core’s early availabilities. The first instance of all
the tasks according to minimum slack based dynamic scheduling is shown in the last column of
the attributes table.
8. SEQUENCER TABLE AS PER STATIC PRIORITY
Figure.2. Sequencer table
International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014
6
Fig.2 shows a sequencer table for the tasks to be executed in three computational cores in an
expected sequence as it is given. At every single unit of time the scheduler has to take the
decision in favor of three highest priority tasks among the ready list of tasks arrived as well as
tasks with remaining execution time. In the priority list, the smallest number indicates highest
priority for the most frequent task.
Figure. 3. Simulation result
9. IMPLEMENTATION OF DYNAMIC SCHEDULER AND RESULTS
Figure. 4. Simulation result
The simulation results are shown in the above fig. 3 and fig. 4. These result graphs are Gantt
charts of ten number of tasks being scheduled for three computational cores. Fig. 3 shows the
Gantt chart results of the simulation of static priority scheduling. In this simulation, few
noticeable features are there. Tasks T6, T9 and T10 being assigned with least priorities, are not
International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014
7
getting scheduled and have missed their deadlines even for the first instance. T3 has migrated
from core3 to core2 to complete its WCET after being preempted by T2. Based on the parameter
attributes and constraints imposed on the tasks, both the static and the dynamic algorithms have
run through the global and partitioned queues one after the other. Fig. 4 shows the Gantt chart
results of the simulation of dynamic priority based minimum slack first scheduling. At every
arrival instant at the global queue, slack for each task is calculated and dynamic priorities are
assigned. For this dynamic priority scheduling, precedence constraints have been imposed on
certain tasks. Tasks with the precedence constraints are mostly collocated at a CPU core. At every
arrival instant at the partitioned queue, the slack of the new task is compared with the total WCET
of previous tasks and the currently running task. Either the tasks are sorted in ascending order of
their slack and scheduled for execution or tasks have been preempted and migrated to other
available core in case there is a probability of missing the deadlines. In the result Gantt chart, T6
has migrated from core2 to core3. All the tasks have satisfied their precedence constraints and all
have met with their deadlines. None of the CPU cores is idle at any point of time. So 100% CPU
utilization is achieved within the simulation duration. To minimize the preemption overhead, the
tasks are allowed to continue their execution unless there is a probability of missing the deadline.
Table 2 given below shows the number of periodic instances of each of the 10 tasks within the
simulation duration for both the static and dynamic scheduling and Table 3 shows the comparison
of performance parameters based on the results out of both static and dynamic scheduling run for
the given task set.
Table 2: Tasks with no of instances
Scheduling Methods T1 T2 T3 T4 T5 T6 T7 T8 T9 T10
Static 3 3 2 4 4 0 2 1 0 0
Dynamic 2 2 2 2 2 1 2 1 1 1
Table 3: parameter comparison
10. CONCLUSION
In this paper, a dynamic task scheduling algorithm has been proposed for multicore Engine
control ECU of Automotive electronic system. Engine control ECU being a safety critical, hard
real time system and highly task intensive, the stringent requirement is, all the tasks have to meet
their deadlines. Fixed static priority and partitioned task scheduling for multicore ECUs have
been suggested by AUTOSAR. While adhering to it, there is always a challenge in assigning
priorities to the tasks and high level of difficulty in partitioning the tasks by which certain CPU
cores remain under utilized [3, 8]. In this work, a model taskset with appropriate time attributes
has been tested both with static priority scheduling and the proposed dynamic priority algorithm,
where slack is the utilizing parameter. The performance parameters are compared for the results
of both the algorithms. It is observed that, in static priority scheduling, CPUs are highly utilized
International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014
8
by higher priority tasks only and the lowest priority tasks are consistently missing their deadlines
while in dynamic priority case, there is a significant improvement in terms of missing deadlines
and there is a fair allocation across all priorities. Average response time, number of pre-emption
and migration have been improved considerably. Since slack is considered to assign dynamic
priorities and to calculate the relative deadlines, unless there is a probability of missing the
deadline, the task does not get preempted or migrated to other core. So the context switching
overhead is also reduced.
REFERENCES
[1] Yu Hua, Lei Rao, Xue Liu, Dan Feng “Co-operative and Efficient Real-Time Scheduling for
Automotive Communications”. IEEE international conference on Distributed Computing Systems
2014; ISBN-978-1-4799-5168-0; DOI- 10.1109/ICDCS.2014.22.
[2] Aurélien Monot, Nicolas Navet, Bernard Bavoux, and Françoise Simonot-Lion, “Multisource
Software on Multicore Automotive ECUs—Combining Runnable Sequencing”, IEEE Transactions
on Industrial Electronics, Vol. 59, No. 10, pp 3934-3942, October 2012
[3] Rajeshwari Hegde, Geetishree Mishra, K S Gurumurthy, “Software and Hardware Challenges in
Automotive Embedded Systems”, International Journal of VLSI design and Communication Systems
(VLSICS) Vol.2, No.3, pp 165-174, Sep 2011 DOI: 10.512/VLSIC.2011.2314.
[4] A. Monot, N. Navet, F. Simomot, and B. Bavoux. “Multicore scheduling in automotive ecus”. In
Proc. of The Embedded Real-Time Software and Systems (ERTS2), May 2010.
[5] N. Navet, A. Monot, B. Bavoux, and F. Simonot-Lion. “Multi-source and multicore automotive ecus:
Os protection mechanisms and scheduling”. In Proc. of IEEE Int’l Symposium on Industrial
Electronics, Jul. 2010.
[6] C. Aussagues, D. Chabrol, V. David, D. Roux, N. Willey, A. Tournadre, and M. Graniou. Pharos, “A
multicore os ready for safety-related automotive systems: results and future prospects”. In Proc. of
The Embedded Real-Time Software and Systems (ERTS2), May 2010.
[7] http://www.bosch motorsport.de/media/msd/ downloads/dokumentation/ steuergeraete_1/ Databook_
Engine_ Control_Units_2014.pdf
[8] AUTOSAR 4.0 specification, available at: www.autosar .org.
[9] Zhang Jie, Yang Fumin, Tu Gang, “A Dynamic Scheduling Model for Real-Time Tasks in Reliable
System” 2009 International Conference on Networks Security, Wireless Communications and Trusted
Computing.
[10] P. Leteinturier (Infineon Technologies). “Multi-core processors: Driving the evolution of automotive
electronics architectures”; http://www.embedded.com/design/multicore/, 2007.
[11] Tao Xie, Andrew Sung, Xiao Qin, “Dynamic Task Scheduling with Security Awareness in Real-Time
Systems” Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium
(IPDPS’05) 1530-2075, 2005.
[12] Anita Mittal, G.Manimaran, C.Siva Ram Murthy, “Integrated Dynamic Scheduling of Hard and QoS
Degradable Real-Time Tasks in Multiprocessor Systems” Journal of Systems Architecture, Vol. 46,
Issue-9, Pages-793-807, July 2000.
[13] G. Manimaran, C. Siva Ram Murthy, and K. Ramamritham. A new approach for Scheduling of
parallelizable tasks in real-time multiprocessor systems, Real-Time Systems, 15:39-60, July 1998.
[14] RL Graham, EL Lawler, JK Lenstra, A.H.G Rinnooy Kan - “Optimization and Approximation in
deterministic sequencing and Scheduling –A Survey” Annalysis of Discrete Mathematics, 5; 1977,
Pages 287-326.
[15] J Blazewicz, J K Lenstra, A.H.G Rinnooy Kan, “Scheduling Subject to resourse constraints:
classification and complexity” , Dicrete Applied Mathematics V-5; Jan 1983, Pages- 11-24.

More Related Content

What's hot

An Enhanced Throttled Load Balancing Approach for Cloud Environment
An Enhanced Throttled Load Balancing Approach for Cloud EnvironmentAn Enhanced Throttled Load Balancing Approach for Cloud Environment
An Enhanced Throttled Load Balancing Approach for Cloud EnvironmentIRJET Journal
 
Design Alternative for Parallel Systems
Design Alternative for Parallel SystemsDesign Alternative for Parallel Systems
Design Alternative for Parallel SystemsAnkit Singh
 
E03403027030
E03403027030E03403027030
E03403027030theijes
 
Operating Systems Part I-Basics
Operating Systems Part I-BasicsOperating Systems Part I-Basics
Operating Systems Part I-BasicsAjit Nayak
 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)inventionjournals
 
ISPRS: COMPARISON OF MULTIPLE IMUs IN AN EXPERIMENTAL FLIGHT TEST
ISPRS: COMPARISON OF MULTIPLE IMUs IN AN EXPERIMENTAL FLIGHT TESTISPRS: COMPARISON OF MULTIPLE IMUs IN AN EXPERIMENTAL FLIGHT TEST
ISPRS: COMPARISON OF MULTIPLE IMUs IN AN EXPERIMENTAL FLIGHT TESTLaura Samsó, MSc
 
Real-Time Scheduling Algorithms
Real-Time Scheduling AlgorithmsReal-Time Scheduling Algorithms
Real-Time Scheduling AlgorithmsAJAL A J
 
eTPU to GTM Migration
eTPU to GTM MigrationeTPU to GTM Migration
eTPU to GTM MigrationParker Mosman
 
Operating Systems Part II-Process Scheduling, Synchronisation & Deadlock
Operating Systems Part II-Process Scheduling, Synchronisation & DeadlockOperating Systems Part II-Process Scheduling, Synchronisation & Deadlock
Operating Systems Part II-Process Scheduling, Synchronisation & DeadlockAjit Nayak
 
OS scheduling
OS schedulingOS scheduling
OS schedulinganand hd
 
VTU 5TH SEM CSE OPERATING SYSTEMS SOLVED PAPERS
VTU 5TH SEM CSE OPERATING SYSTEMS SOLVED PAPERSVTU 5TH SEM CSE OPERATING SYSTEMS SOLVED PAPERS
VTU 5TH SEM CSE OPERATING SYSTEMS SOLVED PAPERSvtunotesbysree
 
Design and Development of Arm-Based Control System for Nursing Bed
Design and Development of Arm-Based Control System for Nursing Bed Design and Development of Arm-Based Control System for Nursing Bed
Design and Development of Arm-Based Control System for Nursing Bed IJCSES Journal
 
Lecture 3
Lecture 3Lecture 3
Lecture 3Mr SMAK
 
REAL-TIME SCHEDULING ALGORITHMS FOR WIRELESS SENSOR NETWORK
REAL-TIME SCHEDULING ALGORITHMS FOR WIRELESS SENSOR NETWORKREAL-TIME SCHEDULING ALGORITHMS FOR WIRELESS SENSOR NETWORK
REAL-TIME SCHEDULING ALGORITHMS FOR WIRELESS SENSOR NETWORKcsijjournal
 

What's hot (18)

An Enhanced Throttled Load Balancing Approach for Cloud Environment
An Enhanced Throttled Load Balancing Approach for Cloud EnvironmentAn Enhanced Throttled Load Balancing Approach for Cloud Environment
An Enhanced Throttled Load Balancing Approach for Cloud Environment
 
Design Alternative for Parallel Systems
Design Alternative for Parallel SystemsDesign Alternative for Parallel Systems
Design Alternative for Parallel Systems
 
E03403027030
E03403027030E03403027030
E03403027030
 
Operating Systems Part I-Basics
Operating Systems Part I-BasicsOperating Systems Part I-Basics
Operating Systems Part I-Basics
 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)
 
ISPRS: COMPARISON OF MULTIPLE IMUs IN AN EXPERIMENTAL FLIGHT TEST
ISPRS: COMPARISON OF MULTIPLE IMUs IN AN EXPERIMENTAL FLIGHT TESTISPRS: COMPARISON OF MULTIPLE IMUs IN AN EXPERIMENTAL FLIGHT TEST
ISPRS: COMPARISON OF MULTIPLE IMUs IN AN EXPERIMENTAL FLIGHT TEST
 
Real-Time Scheduling Algorithms
Real-Time Scheduling AlgorithmsReal-Time Scheduling Algorithms
Real-Time Scheduling Algorithms
 
Real Time System
Real Time SystemReal Time System
Real Time System
 
eTPU to GTM Migration
eTPU to GTM MigrationeTPU to GTM Migration
eTPU to GTM Migration
 
Operating Systems Part II-Process Scheduling, Synchronisation & Deadlock
Operating Systems Part II-Process Scheduling, Synchronisation & DeadlockOperating Systems Part II-Process Scheduling, Synchronisation & Deadlock
Operating Systems Part II-Process Scheduling, Synchronisation & Deadlock
 
Rtos Concepts
Rtos ConceptsRtos Concepts
Rtos Concepts
 
OS scheduling
OS schedulingOS scheduling
OS scheduling
 
VTU 5TH SEM CSE OPERATING SYSTEMS SOLVED PAPERS
VTU 5TH SEM CSE OPERATING SYSTEMS SOLVED PAPERSVTU 5TH SEM CSE OPERATING SYSTEMS SOLVED PAPERS
VTU 5TH SEM CSE OPERATING SYSTEMS SOLVED PAPERS
 
20120140506012
2012014050601220120140506012
20120140506012
 
Design of H_∞ for induction motor
Design of H_∞ for induction motorDesign of H_∞ for induction motor
Design of H_∞ for induction motor
 
Design and Development of Arm-Based Control System for Nursing Bed
Design and Development of Arm-Based Control System for Nursing Bed Design and Development of Arm-Based Control System for Nursing Bed
Design and Development of Arm-Based Control System for Nursing Bed
 
Lecture 3
Lecture 3Lecture 3
Lecture 3
 
REAL-TIME SCHEDULING ALGORITHMS FOR WIRELESS SENSOR NETWORK
REAL-TIME SCHEDULING ALGORITHMS FOR WIRELESS SENSOR NETWORKREAL-TIME SCHEDULING ALGORITHMS FOR WIRELESS SENSOR NETWORK
REAL-TIME SCHEDULING ALGORITHMS FOR WIRELESS SENSOR NETWORK
 

Viewers also liked

ENHANCING MULTIPLIER SPEED IN FAST FOURIER TRANSFORM BASED ON VEDIC MATHEMATICS
ENHANCING MULTIPLIER SPEED IN FAST FOURIER TRANSFORM BASED ON VEDIC MATHEMATICSENHANCING MULTIPLIER SPEED IN FAST FOURIER TRANSFORM BASED ON VEDIC MATHEMATICS
ENHANCING MULTIPLIER SPEED IN FAST FOURIER TRANSFORM BASED ON VEDIC MATHEMATICSVLSICS Design
 
CMOS LOW POWER CELL LIBRARY FOR DIGITAL DESIGN
CMOS LOW POWER CELL LIBRARY FOR DIGITAL DESIGNCMOS LOW POWER CELL LIBRARY FOR DIGITAL DESIGN
CMOS LOW POWER CELL LIBRARY FOR DIGITAL DESIGNVLSICS Design
 
Analysis of pocket double gate tunnel fet for low stand by power logic circuits
Analysis of pocket double gate tunnel fet for low stand by power logic circuitsAnalysis of pocket double gate tunnel fet for low stand by power logic circuits
Analysis of pocket double gate tunnel fet for low stand by power logic circuitsVLSICS Design
 
Analytical modeling of electric field distribution in dual material junctionl...
Analytical modeling of electric field distribution in dual material junctionl...Analytical modeling of electric field distribution in dual material junctionl...
Analytical modeling of electric field distribution in dual material junctionl...VLSICS Design
 
Design of 6 bit flash analog to digital converter using variable switching vo...
Design of 6 bit flash analog to digital converter using variable switching vo...Design of 6 bit flash analog to digital converter using variable switching vo...
Design of 6 bit flash analog to digital converter using variable switching vo...VLSICS Design
 
Advanced atpg based on fan, testability measures and fault reduction
Advanced atpg based on fan, testability measures and fault reductionAdvanced atpg based on fan, testability measures and fault reduction
Advanced atpg based on fan, testability measures and fault reductionVLSICS Design
 
Crdom cell re ordering based domino on-the-fly mapping
Crdom  cell re ordering based domino on-the-fly mappingCrdom  cell re ordering based domino on-the-fly mapping
Crdom cell re ordering based domino on-the-fly mappingVLSICS Design
 
Feasible methodology for
Feasible methodology forFeasible methodology for
Feasible methodology forVLSICS Design
 
Optimization of Cmos 0.18 µM Low Noise Amplifier Using Nsga-Ii for UWB Applic...
Optimization of Cmos 0.18 µM Low Noise Amplifier Using Nsga-Ii for UWB Applic...Optimization of Cmos 0.18 µM Low Noise Amplifier Using Nsga-Ii for UWB Applic...
Optimization of Cmos 0.18 µM Low Noise Amplifier Using Nsga-Ii for UWB Applic...VLSICS Design
 
Accelerating system verilog uvm based vip to improve methodology for verifica...
Accelerating system verilog uvm based vip to improve methodology for verifica...Accelerating system verilog uvm based vip to improve methodology for verifica...
Accelerating system verilog uvm based vip to improve methodology for verifica...VLSICS Design
 
POWER EFFICIENT CARRY PROPAGATE ADDER
POWER EFFICIENT CARRY PROPAGATE ADDERPOWER EFFICIENT CARRY PROPAGATE ADDER
POWER EFFICIENT CARRY PROPAGATE ADDERVLSICS Design
 
Low power reduced instruction set architecture using clock gating technique
Low power reduced instruction set architecture using clock gating techniqueLow power reduced instruction set architecture using clock gating technique
Low power reduced instruction set architecture using clock gating techniqueVLSICS Design
 
DESIGN OF HIGH EFFICIENCY TWO STAGE POWER AMPLIFIER IN 0.13UM RF CMOS TECHNOL...
DESIGN OF HIGH EFFICIENCY TWO STAGE POWER AMPLIFIER IN 0.13UM RF CMOS TECHNOL...DESIGN OF HIGH EFFICIENCY TWO STAGE POWER AMPLIFIER IN 0.13UM RF CMOS TECHNOL...
DESIGN OF HIGH EFFICIENCY TWO STAGE POWER AMPLIFIER IN 0.13UM RF CMOS TECHNOL...VLSICS Design
 
Low Power-Area Design of Full Adder Using Self Resetting Logic with GDI Techn...
Low Power-Area Design of Full Adder Using Self Resetting Logic with GDI Techn...Low Power-Area Design of Full Adder Using Self Resetting Logic with GDI Techn...
Low Power-Area Design of Full Adder Using Self Resetting Logic with GDI Techn...VLSICS Design
 
A New Transistor Sizing Approach for Digital Integrated Circuits Using Firefl...
A New Transistor Sizing Approach for Digital Integrated Circuits Using Firefl...A New Transistor Sizing Approach for Digital Integrated Circuits Using Firefl...
A New Transistor Sizing Approach for Digital Integrated Circuits Using Firefl...VLSICS Design
 
Low cost reversible signed comparator
Low cost reversible signed comparatorLow cost reversible signed comparator
Low cost reversible signed comparatorVLSICS Design
 
ESTABLISHING A MOLECULAR COMMUNICATION CHANNEL FOR NANO NETWORKS
ESTABLISHING A MOLECULAR COMMUNICATION  CHANNEL FOR NANO NETWORKSESTABLISHING A MOLECULAR COMMUNICATION  CHANNEL FOR NANO NETWORKS
ESTABLISHING A MOLECULAR COMMUNICATION CHANNEL FOR NANO NETWORKSVLSICS Design
 

Viewers also liked (18)

ENHANCING MULTIPLIER SPEED IN FAST FOURIER TRANSFORM BASED ON VEDIC MATHEMATICS
ENHANCING MULTIPLIER SPEED IN FAST FOURIER TRANSFORM BASED ON VEDIC MATHEMATICSENHANCING MULTIPLIER SPEED IN FAST FOURIER TRANSFORM BASED ON VEDIC MATHEMATICS
ENHANCING MULTIPLIER SPEED IN FAST FOURIER TRANSFORM BASED ON VEDIC MATHEMATICS
 
CMOS LOW POWER CELL LIBRARY FOR DIGITAL DESIGN
CMOS LOW POWER CELL LIBRARY FOR DIGITAL DESIGNCMOS LOW POWER CELL LIBRARY FOR DIGITAL DESIGN
CMOS LOW POWER CELL LIBRARY FOR DIGITAL DESIGN
 
Analysis of pocket double gate tunnel fet for low stand by power logic circuits
Analysis of pocket double gate tunnel fet for low stand by power logic circuitsAnalysis of pocket double gate tunnel fet for low stand by power logic circuits
Analysis of pocket double gate tunnel fet for low stand by power logic circuits
 
Analytical modeling of electric field distribution in dual material junctionl...
Analytical modeling of electric field distribution in dual material junctionl...Analytical modeling of electric field distribution in dual material junctionl...
Analytical modeling of electric field distribution in dual material junctionl...
 
Design of 6 bit flash analog to digital converter using variable switching vo...
Design of 6 bit flash analog to digital converter using variable switching vo...Design of 6 bit flash analog to digital converter using variable switching vo...
Design of 6 bit flash analog to digital converter using variable switching vo...
 
Advanced atpg based on fan, testability measures and fault reduction
Advanced atpg based on fan, testability measures and fault reductionAdvanced atpg based on fan, testability measures and fault reduction
Advanced atpg based on fan, testability measures and fault reduction
 
Crdom cell re ordering based domino on-the-fly mapping
Crdom  cell re ordering based domino on-the-fly mappingCrdom  cell re ordering based domino on-the-fly mapping
Crdom cell re ordering based domino on-the-fly mapping
 
Feasible methodology for
Feasible methodology forFeasible methodology for
Feasible methodology for
 
Optimization of Cmos 0.18 µM Low Noise Amplifier Using Nsga-Ii for UWB Applic...
Optimization of Cmos 0.18 µM Low Noise Amplifier Using Nsga-Ii for UWB Applic...Optimization of Cmos 0.18 µM Low Noise Amplifier Using Nsga-Ii for UWB Applic...
Optimization of Cmos 0.18 µM Low Noise Amplifier Using Nsga-Ii for UWB Applic...
 
Accelerating system verilog uvm based vip to improve methodology for verifica...
Accelerating system verilog uvm based vip to improve methodology for verifica...Accelerating system verilog uvm based vip to improve methodology for verifica...
Accelerating system verilog uvm based vip to improve methodology for verifica...
 
POWER EFFICIENT CARRY PROPAGATE ADDER
POWER EFFICIENT CARRY PROPAGATE ADDERPOWER EFFICIENT CARRY PROPAGATE ADDER
POWER EFFICIENT CARRY PROPAGATE ADDER
 
Vlsics08
Vlsics08Vlsics08
Vlsics08
 
Low power reduced instruction set architecture using clock gating technique
Low power reduced instruction set architecture using clock gating techniqueLow power reduced instruction set architecture using clock gating technique
Low power reduced instruction set architecture using clock gating technique
 
DESIGN OF HIGH EFFICIENCY TWO STAGE POWER AMPLIFIER IN 0.13UM RF CMOS TECHNOL...
DESIGN OF HIGH EFFICIENCY TWO STAGE POWER AMPLIFIER IN 0.13UM RF CMOS TECHNOL...DESIGN OF HIGH EFFICIENCY TWO STAGE POWER AMPLIFIER IN 0.13UM RF CMOS TECHNOL...
DESIGN OF HIGH EFFICIENCY TWO STAGE POWER AMPLIFIER IN 0.13UM RF CMOS TECHNOL...
 
Low Power-Area Design of Full Adder Using Self Resetting Logic with GDI Techn...
Low Power-Area Design of Full Adder Using Self Resetting Logic with GDI Techn...Low Power-Area Design of Full Adder Using Self Resetting Logic with GDI Techn...
Low Power-Area Design of Full Adder Using Self Resetting Logic with GDI Techn...
 
A New Transistor Sizing Approach for Digital Integrated Circuits Using Firefl...
A New Transistor Sizing Approach for Digital Integrated Circuits Using Firefl...A New Transistor Sizing Approach for Digital Integrated Circuits Using Firefl...
A New Transistor Sizing Approach for Digital Integrated Circuits Using Firefl...
 
Low cost reversible signed comparator
Low cost reversible signed comparatorLow cost reversible signed comparator
Low cost reversible signed comparator
 
ESTABLISHING A MOLECULAR COMMUNICATION CHANNEL FOR NANO NETWORKS
ESTABLISHING A MOLECULAR COMMUNICATION  CHANNEL FOR NANO NETWORKSESTABLISHING A MOLECULAR COMMUNICATION  CHANNEL FOR NANO NETWORKS
ESTABLISHING A MOLECULAR COMMUNICATION CHANNEL FOR NANO NETWORKS
 

Similar to Dynamic task scheduling on multicore automotive ec us

AN EFFICIENT HYBRID SCHEDULER USING DYNAMIC SLACK FOR REAL-TIME CRITICAL TASK...
AN EFFICIENT HYBRID SCHEDULER USING DYNAMIC SLACK FOR REAL-TIME CRITICAL TASK...AN EFFICIENT HYBRID SCHEDULER USING DYNAMIC SLACK FOR REAL-TIME CRITICAL TASK...
AN EFFICIENT HYBRID SCHEDULER USING DYNAMIC SLACK FOR REAL-TIME CRITICAL TASK...ijesajournal
 
ENERGY EFFICIENT SCHEDULING FOR REAL-TIME EMBEDDED SYSTEMS WITH PRECEDENCE AN...
ENERGY EFFICIENT SCHEDULING FOR REAL-TIME EMBEDDED SYSTEMS WITH PRECEDENCE AN...ENERGY EFFICIENT SCHEDULING FOR REAL-TIME EMBEDDED SYSTEMS WITH PRECEDENCE AN...
ENERGY EFFICIENT SCHEDULING FOR REAL-TIME EMBEDDED SYSTEMS WITH PRECEDENCE AN...IJCSEA Journal
 
SCHEDULING DIFFERENT CUSTOMER ACTIVITIES WITH SENSING DEVICE
SCHEDULING DIFFERENT CUSTOMER ACTIVITIES WITH SENSING DEVICESCHEDULING DIFFERENT CUSTOMER ACTIVITIES WITH SENSING DEVICE
SCHEDULING DIFFERENT CUSTOMER ACTIVITIES WITH SENSING DEVICEijait
 
CS 301 Computer ArchitectureStudent # 1 EID 09Kingdom of .docx
CS 301 Computer ArchitectureStudent # 1 EID 09Kingdom of .docxCS 301 Computer ArchitectureStudent # 1 EID 09Kingdom of .docx
CS 301 Computer ArchitectureStudent # 1 EID 09Kingdom of .docxfaithxdunce63732
 
TIME CRITICAL MULTITASKING FOR MULTICORE MICROCONTROLLER USING XMOS® KIT
TIME CRITICAL MULTITASKING FOR MULTICORE MICROCONTROLLER USING XMOS® KITTIME CRITICAL MULTITASKING FOR MULTICORE MICROCONTROLLER USING XMOS® KIT
TIME CRITICAL MULTITASKING FOR MULTICORE MICROCONTROLLER USING XMOS® KITijesajournal
 
Procesamiento multinúcleo óptimo para aplicaciones críticas de seguridad
 Procesamiento multinúcleo óptimo para aplicaciones críticas de seguridad Procesamiento multinúcleo óptimo para aplicaciones críticas de seguridad
Procesamiento multinúcleo óptimo para aplicaciones críticas de seguridadMarketing Donalba
 
A tricky task scheduling technique to optimize time cost and reliability in m...
A tricky task scheduling technique to optimize time cost and reliability in m...A tricky task scheduling technique to optimize time cost and reliability in m...
A tricky task scheduling technique to optimize time cost and reliability in m...eSAT Publishing House
 
IRJET - Efficient Load Balancing in a Distributed Environment
IRJET -  	  Efficient Load Balancing in a Distributed EnvironmentIRJET -  	  Efficient Load Balancing in a Distributed Environment
IRJET - Efficient Load Balancing in a Distributed EnvironmentIRJET Journal
 
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...ijics
 
Reinforcement learning based multi core scheduling (RLBMCS) for real time sys...
Reinforcement learning based multi core scheduling (RLBMCS) for real time sys...Reinforcement learning based multi core scheduling (RLBMCS) for real time sys...
Reinforcement learning based multi core scheduling (RLBMCS) for real time sys...IJECEIAES
 
Time critical multitasking for multicore
Time critical multitasking for multicoreTime critical multitasking for multicore
Time critical multitasking for multicoreijesajournal
 
Scheduling of Heterogeneous Tasks in Cloud Computing using Multi Queue (MQ) A...
Scheduling of Heterogeneous Tasks in Cloud Computing using Multi Queue (MQ) A...Scheduling of Heterogeneous Tasks in Cloud Computing using Multi Queue (MQ) A...
Scheduling of Heterogeneous Tasks in Cloud Computing using Multi Queue (MQ) A...IRJET Journal
 
A Survey on Task Scheduling and Load Balanced Algorithms in Cloud Computing
A Survey on Task Scheduling and Load Balanced Algorithms in Cloud ComputingA Survey on Task Scheduling and Load Balanced Algorithms in Cloud Computing
A Survey on Task Scheduling and Load Balanced Algorithms in Cloud ComputingIRJET Journal
 
LEARNING SCHEDULER PARAMETERS FOR ADAPTIVE PREEMPTION
LEARNING SCHEDULER PARAMETERS FOR ADAPTIVE PREEMPTIONLEARNING SCHEDULER PARAMETERS FOR ADAPTIVE PREEMPTION
LEARNING SCHEDULER PARAMETERS FOR ADAPTIVE PREEMPTIONcscpconf
 
Learning scheduler parameters for adaptive preemption
Learning scheduler parameters for adaptive preemptionLearning scheduler parameters for adaptive preemption
Learning scheduler parameters for adaptive preemptioncsandit
 

Similar to Dynamic task scheduling on multicore automotive ec us (20)

AN EFFICIENT HYBRID SCHEDULER USING DYNAMIC SLACK FOR REAL-TIME CRITICAL TASK...
AN EFFICIENT HYBRID SCHEDULER USING DYNAMIC SLACK FOR REAL-TIME CRITICAL TASK...AN EFFICIENT HYBRID SCHEDULER USING DYNAMIC SLACK FOR REAL-TIME CRITICAL TASK...
AN EFFICIENT HYBRID SCHEDULER USING DYNAMIC SLACK FOR REAL-TIME CRITICAL TASK...
 
ENERGY EFFICIENT SCHEDULING FOR REAL-TIME EMBEDDED SYSTEMS WITH PRECEDENCE AN...
ENERGY EFFICIENT SCHEDULING FOR REAL-TIME EMBEDDED SYSTEMS WITH PRECEDENCE AN...ENERGY EFFICIENT SCHEDULING FOR REAL-TIME EMBEDDED SYSTEMS WITH PRECEDENCE AN...
ENERGY EFFICIENT SCHEDULING FOR REAL-TIME EMBEDDED SYSTEMS WITH PRECEDENCE AN...
 
itsc_final
itsc_finalitsc_final
itsc_final
 
SCHEDULING DIFFERENT CUSTOMER ACTIVITIES WITH SENSING DEVICE
SCHEDULING DIFFERENT CUSTOMER ACTIVITIES WITH SENSING DEVICESCHEDULING DIFFERENT CUSTOMER ACTIVITIES WITH SENSING DEVICE
SCHEDULING DIFFERENT CUSTOMER ACTIVITIES WITH SENSING DEVICE
 
CS 301 Computer ArchitectureStudent # 1 EID 09Kingdom of .docx
CS 301 Computer ArchitectureStudent # 1 EID 09Kingdom of .docxCS 301 Computer ArchitectureStudent # 1 EID 09Kingdom of .docx
CS 301 Computer ArchitectureStudent # 1 EID 09Kingdom of .docx
 
TIME CRITICAL MULTITASKING FOR MULTICORE MICROCONTROLLER USING XMOS® KIT
TIME CRITICAL MULTITASKING FOR MULTICORE MICROCONTROLLER USING XMOS® KITTIME CRITICAL MULTITASKING FOR MULTICORE MICROCONTROLLER USING XMOS® KIT
TIME CRITICAL MULTITASKING FOR MULTICORE MICROCONTROLLER USING XMOS® KIT
 
Procesamiento multinúcleo óptimo para aplicaciones críticas de seguridad
 Procesamiento multinúcleo óptimo para aplicaciones críticas de seguridad Procesamiento multinúcleo óptimo para aplicaciones críticas de seguridad
Procesamiento multinúcleo óptimo para aplicaciones críticas de seguridad
 
PORTFOLIO_MJ
PORTFOLIO_MJPORTFOLIO_MJ
PORTFOLIO_MJ
 
A tricky task scheduling technique to optimize time cost and reliability in m...
A tricky task scheduling technique to optimize time cost and reliability in m...A tricky task scheduling technique to optimize time cost and reliability in m...
A tricky task scheduling technique to optimize time cost and reliability in m...
 
IRJET - Efficient Load Balancing in a Distributed Environment
IRJET -  	  Efficient Load Balancing in a Distributed EnvironmentIRJET -  	  Efficient Load Balancing in a Distributed Environment
IRJET - Efficient Load Balancing in a Distributed Environment
 
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...
 
Reinforcement learning based multi core scheduling (RLBMCS) for real time sys...
Reinforcement learning based multi core scheduling (RLBMCS) for real time sys...Reinforcement learning based multi core scheduling (RLBMCS) for real time sys...
Reinforcement learning based multi core scheduling (RLBMCS) for real time sys...
 
Time critical multitasking for multicore
Time critical multitasking for multicoreTime critical multitasking for multicore
Time critical multitasking for multicore
 
Scheduling of Heterogeneous Tasks in Cloud Computing using Multi Queue (MQ) A...
Scheduling of Heterogeneous Tasks in Cloud Computing using Multi Queue (MQ) A...Scheduling of Heterogeneous Tasks in Cloud Computing using Multi Queue (MQ) A...
Scheduling of Heterogeneous Tasks in Cloud Computing using Multi Queue (MQ) A...
 
ERTS_IV_ECE.pptx
ERTS_IV_ECE.pptxERTS_IV_ECE.pptx
ERTS_IV_ECE.pptx
 
Matter new
Matter newMatter new
Matter new
 
035
035035
035
 
A Survey on Task Scheduling and Load Balanced Algorithms in Cloud Computing
A Survey on Task Scheduling and Load Balanced Algorithms in Cloud ComputingA Survey on Task Scheduling and Load Balanced Algorithms in Cloud Computing
A Survey on Task Scheduling and Load Balanced Algorithms in Cloud Computing
 
LEARNING SCHEDULER PARAMETERS FOR ADAPTIVE PREEMPTION
LEARNING SCHEDULER PARAMETERS FOR ADAPTIVE PREEMPTIONLEARNING SCHEDULER PARAMETERS FOR ADAPTIVE PREEMPTION
LEARNING SCHEDULER PARAMETERS FOR ADAPTIVE PREEMPTION
 
Learning scheduler parameters for adaptive preemption
Learning scheduler parameters for adaptive preemptionLearning scheduler parameters for adaptive preemption
Learning scheduler parameters for adaptive preemption
 

Recently uploaded

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 

Recently uploaded (20)

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 

Dynamic task scheduling on multicore automotive ec us

  • 1. International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014 DOI : 10.5121/vlsic.2014.5601 1 DYNAMIC TASK SCHEDULING ON MULTICORE AUTOMOTIVE ECUS Geetishree Mishra1 , K S Gurumurthy2 1 BMS College of Engineering, Bangalore, India, 2 Reva Intitute of Technology, Bangalore, India ABSTRACT Automobile manufacturers are controlled by stringent govt. regulations for safety and fuel emissions and motivated towards adding more advanced features and sophisticated applications to the existing electronic system. Ever increasing customer’s demands for high level of comfort also necessitate providing even more sophistication in vehicle electronics system. All these, directly make the vehicle software system more complex and computationally more intensive. In turn, this demands very high computational capability of the microprocessor used in electronic control unit (ECU). In this regard, multicore processors have already been implemented in some of the task rigorous ECUs like, power train, image processing and infotainment. To achieve greater performance from these multicore processors, parallelized ECU software needs to be efficiently scheduled by the underlaying operating system for execution to utilize all the computational cores to the maximum extent possible and meet the real time constraint. In this paper, we propose a dynamic task scheduler for multicore engine control ECU that provides maximum CPU utilization, minimized preemption overhead, minimum average waiting time and all the tasks meet their real time deadlines while compared to the static priority scheduling suggested by Automotive Open Systems Architecture (AUTOSAR). KEYWORDS OEM, ECU, Multicore, Scheduling, AUTOSAR. 1. INTRODUCTION Electronic Control Units (ECUs) fulfill the objectives and requirements of a modern automobile which is designed to be safer, more comfortable and fuel efficient. Therefore the number of ECUs has been increased continuously over the years. Advanced functionalities demand higher computational capabilities from ECUs. Multicore processors have emerged to be the current processing unit not only for high-end servers but also for embedded control systems [10, 11]. Multicore processor features with parallel processing, compact chip size and lower power consumption. Performance is improved, the amount of processes per core is reduced and better reliability of the on-chip communication is assured by the multicore implementation. In the current scenario, OEMs are moving towards multicore to exploit parallelism, to accommodate more functions on one ECU and distribute them across the computational cores [1, 3]. In effect, some of the task intensive ECUs catering to telematics, infotainment and power train are already upgraded with multicore processors. Performance optimization of such multicore ECUs can be
  • 2. International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014 2 achieved by utilizing parallelism effectively for which, numerous runnables should be efficiently scheduled for each core [3,4]. The operating system should have an efficient scheduling mechanism to schedule the tasks without corrupting the shared data and without leaving any CPU core idle at any running instant [5]. Without an optimal schedule, there can be considerable variations in average task response times and logical correctness of the results [6]. Such anomalies can cause instabilities in the physical system leading to performance degradation and even safety hazards. In this paper, a hybrid dynamic scheduler is proposed for the most task intensive engine control ECU. 2. CASE STUDY - ENGINE CONTROL UNIT In this work, engine control unit is chosen as the target ECU for task scheduling, as it has maximum number tasks to be executed both periodic and event driven and it has already been implemented with multicore. Engine control unit is usually connected to a large cluster of sensors like, intake air temperature sensor, engine coolant temperature sensor, intake manifold absolute pressure (MAP) sensor, mass air flow sensor, throttle position sensor, crankshaft speed sensor, camshaft sensor and knock sensor. It is connected to various actuators like idle speed motor, electronic throttle body, fuel pressure regulator and fuel injector and delivery control. Basically those are stepper motors and solenoids directly connected to the ECU [7]. For each sensor, there has to be a task to receive the sensory signal after being conditioned, a task to process it as required according to the control algorithm and another task to send appropriate signal to the intended actuator. Each task has a large number of threads to be executed sequentially with data dependency. Independent threads are executed in parallel by multiple cores. For each engine ECU functionality like, air charge management, engine cooling management, battery management, air fuel management or on-board diagnostics, a large number of inputs to be received, parameters and local variables to be managed and many outputs are expected to be delivered. Because of high level of interaction between the control functions, the shared data are required to be protected efficiently [4, 6]. Three different task schedulers used are, synchronous scheduler, asynchronous scheduler and background scheduler [7]. Synchronous scheduler is used for tasks that need to be executed at certain crank teeth. Asynchronous scheduler also called the time-base scheduler is executed just after the power up scheduler initialization. Background tasks run, when the CPU is idle basically they are busy-wait loops [12, 13]. Besides that, various interrupt service routines are executed to respond to hardware events. Right from the engine start till stop of the vehicle, engine ECU runs with its software of several 1000 lines of code. 3. AUTOSAR ON MULTICORE SCHEDULING According to AUTOSAR 4.0, there are certain limitations on multicore software implementation. • The scheduling algorithms strictly assign tasks statically to cores to ensure deterministic response for the real time critical tasks. • The resource algorithm is not supported across cores. Resources can be shared between tasks that are allocated to the same core but not among tasks/ISRs which are bound to different cores. OSEK counter and auto started alarms can be used to implement task activation mechanism. The task synchronization issue is addressed by implementing schedule table. The Autosar schedule
  • 3. International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014 3 table shown in Figure.1. has certain defined set of expiry points. Each expiry point has certain tasks to be activated, settings to be done for some events and offset from the start of the schedule table [8]. OSEK counter drives the iteration over these expiry points on the schedule table. So one tick on the counter corresponds to one tick on the schedule table. Constraints apply to the delays between adjacent expiry points and the delay to the logical end of the schedule table. According to Autosar, the hard real time safety critical tasks are scheduled statically to computational cores as per the fixed priority assigned. In this static priority scheduling approach, the tasks have to be partitioned well with the order of criticality and an appropriate priority assignment scheme has to be adopted to assign priorities prior to run time, which is always a tedious job. The computational cores are sometimes underutilized and the lower priority tasks often miss their deadline though not the most safety critical ones. In this paper, a global dynamic priority approach has been explored. Figure.1. Schedule table for AUTOSAR ECU 4. THE PROPOSED SCHEDULER MODEL Figure.2. Scheduler model
  • 4. International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014 4 The scheduler model shown in above Fig.2. has a combination of both global and partitioned queue architecture. All the tasks arrive at the global queue, where the slack is calculated for each and priorities are assigned dynamically. The task with least slack gets highest priority. Then the three tasks pass on to three partitioned queues to utilize all the available cores. When a new task arrives at the partitioned queue in the presence of previous task, a comparison happens between their slack and tasks are arranged in ascending order of their slack in the queue with an effort to meet the deadlines. In this simulation setup, a task set of 10 number of tasks are considered for an asynchronous or timebase scheduler. The task attributes for the ith task are: {releasing instant ri, WCET wi and period pi }, where WCET is the worst case execution time. Precedence constraint is imposed on some of the tasks based on dependency. A tri-core processor implementation is considered for these tasks to be scheduled for. The scheduled tasks are released for execution by the dispatcher task which is characterized by a dispatching table of definite duration. 5. SCHEDULING PROBLEM The scheduling problems are categorized by notation (α|β|γ) proposed by Graham and Blazewicz [14,15]. This notation consists of three parts. The first part ‘α’ describes the processor environment, the second part ‘β’ describes the task characteristics and constraints of the scheduling problem and the last part ‘γ’ denotes the optimality criterion. In this simulation set up, for a three processor environment, α=3. Since all the tasks are release time constrained and they are periodic, period is the implied deadline for each instance and precedence constraint is also imposed on some of the tasks, β=|release time, precedence & deadline constraint| and γ= Cmax, the maximum completion time to achieve an optimal schedule. 6. WORKING OF THE PROPOSED MINIMUM SLACK FIRST ALGORITHM At a new arriving instant at global queue, • Calculate the slack of each task arrived .Where, Slack= Period-WCET. • Sort the tasks in increasing order of their slack i,e S1< S2 <S3…….Sn. • Assign priorities to these tasks dynamically by giving highest priority to the task with least slack. • If precedence constraint imposed on the task, Pass the task to a partitioned queue preferably to the one where its precedence task has been allocated. • If no precedence constraint, pass that task to a local queue based on early availability of that CPU core. • If : the no. of tasks arrived at the global queue at a particular instant is > the no. of CPU cores, o Compare the total WCET of all the tasks at each partitioned queue. o Assign the first task in the remaining list at global queue to the core that has least WCET. • Else: wait for the next new arriving instant. At the local partitioned queue, • If: new task arrives in the presence of previous task, o If the precedence task of the new arrival is the last task waiting in the queue, no comparison required.
  • 5. International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014 5 o Else Compare the slack of the new task with the WCET of the previous task. If: S new arrival < WCET previous task + Remaining WCET running task & Sprevious task> WCETnew arrival , • Swap the waiting position of these tasks in the queue. Else if : Snew arrival < WCETprevious task + Remaining WCETrunning task & Sprevious task< WCETnew arrival , • Get the tasknew to migrate to another local queue whose CPU core is expected to be available early, getting information from the global queue. 7. TASK ATTRIBUTES TABLE Table.1. Task attributes table The task attributes table given in above table. 1 has release time Ri, worst case execution time WCET, period and static priorities assigned for each of the ten tasks considered [2, 9]. These are the parameters used for static priority scheduling. In addition to these parameters, the precedence constraints are considered for dynamic priority scheduling. The slack is the calculated parameter based on which dynamic priorities are assigned. For example, at 0th instant, four number of tasks i,e T1, T3, T5 and T7 are released. So there could be only four levels of priorities that can be assigned. These priorities are assigned at the global queue to dispatch the tasks to the local partitioned queues based on their corresponding core’s early availabilities. The first instance of all the tasks according to minimum slack based dynamic scheduling is shown in the last column of the attributes table. 8. SEQUENCER TABLE AS PER STATIC PRIORITY Figure.2. Sequencer table
  • 6. International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014 6 Fig.2 shows a sequencer table for the tasks to be executed in three computational cores in an expected sequence as it is given. At every single unit of time the scheduler has to take the decision in favor of three highest priority tasks among the ready list of tasks arrived as well as tasks with remaining execution time. In the priority list, the smallest number indicates highest priority for the most frequent task. Figure. 3. Simulation result 9. IMPLEMENTATION OF DYNAMIC SCHEDULER AND RESULTS Figure. 4. Simulation result The simulation results are shown in the above fig. 3 and fig. 4. These result graphs are Gantt charts of ten number of tasks being scheduled for three computational cores. Fig. 3 shows the Gantt chart results of the simulation of static priority scheduling. In this simulation, few noticeable features are there. Tasks T6, T9 and T10 being assigned with least priorities, are not
  • 7. International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014 7 getting scheduled and have missed their deadlines even for the first instance. T3 has migrated from core3 to core2 to complete its WCET after being preempted by T2. Based on the parameter attributes and constraints imposed on the tasks, both the static and the dynamic algorithms have run through the global and partitioned queues one after the other. Fig. 4 shows the Gantt chart results of the simulation of dynamic priority based minimum slack first scheduling. At every arrival instant at the global queue, slack for each task is calculated and dynamic priorities are assigned. For this dynamic priority scheduling, precedence constraints have been imposed on certain tasks. Tasks with the precedence constraints are mostly collocated at a CPU core. At every arrival instant at the partitioned queue, the slack of the new task is compared with the total WCET of previous tasks and the currently running task. Either the tasks are sorted in ascending order of their slack and scheduled for execution or tasks have been preempted and migrated to other available core in case there is a probability of missing the deadlines. In the result Gantt chart, T6 has migrated from core2 to core3. All the tasks have satisfied their precedence constraints and all have met with their deadlines. None of the CPU cores is idle at any point of time. So 100% CPU utilization is achieved within the simulation duration. To minimize the preemption overhead, the tasks are allowed to continue their execution unless there is a probability of missing the deadline. Table 2 given below shows the number of periodic instances of each of the 10 tasks within the simulation duration for both the static and dynamic scheduling and Table 3 shows the comparison of performance parameters based on the results out of both static and dynamic scheduling run for the given task set. Table 2: Tasks with no of instances Scheduling Methods T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 Static 3 3 2 4 4 0 2 1 0 0 Dynamic 2 2 2 2 2 1 2 1 1 1 Table 3: parameter comparison 10. CONCLUSION In this paper, a dynamic task scheduling algorithm has been proposed for multicore Engine control ECU of Automotive electronic system. Engine control ECU being a safety critical, hard real time system and highly task intensive, the stringent requirement is, all the tasks have to meet their deadlines. Fixed static priority and partitioned task scheduling for multicore ECUs have been suggested by AUTOSAR. While adhering to it, there is always a challenge in assigning priorities to the tasks and high level of difficulty in partitioning the tasks by which certain CPU cores remain under utilized [3, 8]. In this work, a model taskset with appropriate time attributes has been tested both with static priority scheduling and the proposed dynamic priority algorithm, where slack is the utilizing parameter. The performance parameters are compared for the results of both the algorithms. It is observed that, in static priority scheduling, CPUs are highly utilized
  • 8. International Journal of VLSI design & Communication Systems (VLSICS) Vol.5, No.6, December 2014 8 by higher priority tasks only and the lowest priority tasks are consistently missing their deadlines while in dynamic priority case, there is a significant improvement in terms of missing deadlines and there is a fair allocation across all priorities. Average response time, number of pre-emption and migration have been improved considerably. Since slack is considered to assign dynamic priorities and to calculate the relative deadlines, unless there is a probability of missing the deadline, the task does not get preempted or migrated to other core. So the context switching overhead is also reduced. REFERENCES [1] Yu Hua, Lei Rao, Xue Liu, Dan Feng “Co-operative and Efficient Real-Time Scheduling for Automotive Communications”. IEEE international conference on Distributed Computing Systems 2014; ISBN-978-1-4799-5168-0; DOI- 10.1109/ICDCS.2014.22. [2] Aurélien Monot, Nicolas Navet, Bernard Bavoux, and Françoise Simonot-Lion, “Multisource Software on Multicore Automotive ECUs—Combining Runnable Sequencing”, IEEE Transactions on Industrial Electronics, Vol. 59, No. 10, pp 3934-3942, October 2012 [3] Rajeshwari Hegde, Geetishree Mishra, K S Gurumurthy, “Software and Hardware Challenges in Automotive Embedded Systems”, International Journal of VLSI design and Communication Systems (VLSICS) Vol.2, No.3, pp 165-174, Sep 2011 DOI: 10.512/VLSIC.2011.2314. [4] A. Monot, N. Navet, F. Simomot, and B. Bavoux. “Multicore scheduling in automotive ecus”. In Proc. of The Embedded Real-Time Software and Systems (ERTS2), May 2010. [5] N. Navet, A. Monot, B. Bavoux, and F. Simonot-Lion. “Multi-source and multicore automotive ecus: Os protection mechanisms and scheduling”. In Proc. of IEEE Int’l Symposium on Industrial Electronics, Jul. 2010. [6] C. Aussagues, D. Chabrol, V. David, D. Roux, N. Willey, A. Tournadre, and M. Graniou. Pharos, “A multicore os ready for safety-related automotive systems: results and future prospects”. In Proc. of The Embedded Real-Time Software and Systems (ERTS2), May 2010. [7] http://www.bosch motorsport.de/media/msd/ downloads/dokumentation/ steuergeraete_1/ Databook_ Engine_ Control_Units_2014.pdf [8] AUTOSAR 4.0 specification, available at: www.autosar .org. [9] Zhang Jie, Yang Fumin, Tu Gang, “A Dynamic Scheduling Model for Real-Time Tasks in Reliable System” 2009 International Conference on Networks Security, Wireless Communications and Trusted Computing. [10] P. Leteinturier (Infineon Technologies). “Multi-core processors: Driving the evolution of automotive electronics architectures”; http://www.embedded.com/design/multicore/, 2007. [11] Tao Xie, Andrew Sung, Xiao Qin, “Dynamic Task Scheduling with Security Awareness in Real-Time Systems” Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05) 1530-2075, 2005. [12] Anita Mittal, G.Manimaran, C.Siva Ram Murthy, “Integrated Dynamic Scheduling of Hard and QoS Degradable Real-Time Tasks in Multiprocessor Systems” Journal of Systems Architecture, Vol. 46, Issue-9, Pages-793-807, July 2000. [13] G. Manimaran, C. Siva Ram Murthy, and K. Ramamritham. A new approach for Scheduling of parallelizable tasks in real-time multiprocessor systems, Real-Time Systems, 15:39-60, July 1998. [14] RL Graham, EL Lawler, JK Lenstra, A.H.G Rinnooy Kan - “Optimization and Approximation in deterministic sequencing and Scheduling –A Survey” Annalysis of Discrete Mathematics, 5; 1977, Pages 287-326. [15] J Blazewicz, J K Lenstra, A.H.G Rinnooy Kan, “Scheduling Subject to resourse constraints: classification and complexity” , Dicrete Applied Mathematics V-5; Jan 1983, Pages- 11-24.