Please use this identifier to cite or link to this item:
http://10.1.7.192:80/jspui/handle/123456789/4780
Title: | Embedded Firmware Device Driver Development, Performance Analysis and Optimizations |
Authors: | Vaghela, Maulik V. |
Keywords: | EC 2012 Project Report Project Report 2012 EC Project Report EC (ES) Embedded Systems Embedded Systems 2012 12MEC 12MECE 12MECE26 |
Issue Date: | 1-Jun-2014 |
Publisher: | Institute of Technology |
Series/Report no.: | 12MECE26; |
Abstract: | Now days smart devices such as mobile, wearable devices uses sensors to sense the environment surrounding them and makes decision based on sensors data, simplest example is smart phone which adjusts brightness of screen automatically based on ambient light. Sensors are designed to continuously sense the surrounding hence they will use CPU every time and it will cause problem for battery operated devices. Now day mobile boasts processors which are on par with desktop processors and hence use much more power and to process data of a sensors, this power is too much. In order to reduce battery consumption, idea of sensor hub is born. Sensor hub is a co-processor which has very low power consumption and operates at very less frequency (few hundred of mega Hz) thus reducing loading on main processor. It results in much power saving because main processor can go to sleep and low power sensor co-processor can keep running. Sensor hub requires firmware which calculates data of sensors and sends it to main processor when requested by main processor. Firmware development requires development of device driver for various sensors, developing supporting API (Application Programming Interface), developing arbitration logic for various tasks such as frequency setting; range setting etc. and also some algorithms to process sensor data take various decision. Since firmware requires calculation in real time, performance of firmware should meet real time requirement. Performance should be measured accurately in order to meet timeliness and it can be done using RDTSC ticks and if performance doesn’t meet requirement design needs to be changed to meet requirement. Memory is also limited in this embedded system so code needs to be fit in limited memory. 1. Development of micodrivers for various sensors: Firmware requires sensor drivers to access data of hardware sensors, so micro-driver for sensor is a must for any firmware. If current drivers have some bug or missing functionality that also needs to be fixed. Focus on development of micro-drivers (which is different from Linux device drivers) such as accelerometer, gyro-scope, magnetometer etc., adding functionalities such as range arbitration, enabling dynamic interrupt mode etc., _x bugs in existing micro-drivers and test its functionality. 2. Performance analysis and optimizations: This task includes measuring performance of firmware accurately on early hardware prototype (FPGA) and optimizes it to meet certain timing requirements. Code also needs to be optimized to meet memory and timing requirement of an embedded system. |
URI: | http://hdl.handle.net/123456789/4780 |
Appears in Collections: | Dissertation, EC (ES) |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
12MECE26.pdf | 12MECE26 | 3.7 MB | Adobe PDF | ![]() View/Open |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.