4th International Conference on Electrical and Computer Engineering ICECE 2006, 19-21 December 2006, Dhaka, Bangladesh GRADING A MICROCONTROLLER: A TRAVELLING SALESMAN PROBLEM APPLICATION Nitesh Goyal Tata Consultancy Services Ltd, India 5B-80, TCS, Yantra Park, Thane, Maharashtra, India Nitesh. Goyal. 84@ggmail. com ABSTRACT One of the most financial and temporal investments in embedded systems business is the decision involved in selecting the right components, in particular, the microcontroller. Each microcontroller is made for a particular application. Since, with time, the applications get more complex, the lifespan of existing microcontrollers gets reduced. Currently industry chooses microcontrollers in an unsystematic manner, thus reducing the possibilities of employing a perfectly suited microcontroller, albeit originally meant for a different application. This paper solves this dilemma by using a modified version of Travelling Salesman Problem to grade microcontroller and find out to what extents it would be successful when used in other applications(except for the one it was designed for). This paper starts by mentioning a few common applications of embedded systems and what differentiates them. Then the proposed grading process is described and correlated with TSP, solvable by Genetic Algorithms. 1. INTRODUCTION 1.1. Application Centric Demands Embedded systems in various applications are routinely expected to maintain 100% reliability while running continuously for long periods of time, sometimes measured in years [1]. Different embedded system applications have different demands from components of the devised embedded systems. For example, the following applications need to specifically emphasize more on particular requirements as listed below: ATM architectures must be Reliable 24 x 7 but do not have much interfacing requirements. Cellular Telephone architectures have to be Power saving, Cost effective but do not need much Legacy Support Engine Controllers have to be Performance intensive and should withstand varied working temperature conditions. Toys should be cheap and relatively have less performance and reliability requirements. 1.2. Travelling Salesman Problem TSP is a NP-hard combinatorial problem, easier to state than solve. Given a collection of cities and the cost of travel between each pair of them, TSP, is to find the cheapest way of visiting all the cities and returning to the starting point. Mathematically, In TSP we are given n points (or "cities") c(1). . . c(n) and a positive distance d[c(i), c(j)] for each distinct pair of cities. Our goal is to find an ordering II, or tour, of the cities that minimizes the length of the tour, 1 given by the following equation: I = d[cri(n), cri(1)] + E (i=1 to n-I) d(cri(i), cri(i+ 1)) 1.3. Problem Definition Thus, problem at hand can be defined as: To generate a Microcontroller-Application Mapset with graded microcontroller suitability. To do the same we need to consider the microcontroller as a salesman which "goes to each application" and finds out the lowest possible distance (described in section 2). In case multiple cities are found, these are compared amongst each other to find out a unique answer (described in section 3). So, to convert the problem to TSP, we have to do the following: 1. Reduce Applications to "Cities" (section 2) 2. Find the Distance Function (section 3) 3. Find the Fitness Function (section 4) 4. Implement GA to solve TSP problem (section 5) 2. MEASURING APPLICATIONS 2.1. Applications and Parameters Owing to their unique requirements, the applications have been categorized into 12 major sets called APPLICATIONS. They are: Listl: Defence, Space, Toys, Automobiles, Consumer Electronics, Wireless Devices, Medical Imaging, Entertainment Equipment, Control Devices/Battery, Manufacturing/Robotics, N/W Equipment, Others. 320