|A R T I C L E S|
SHAPE YOUR CAREER WITH MICRO-CONTROLLERS
From debugging a system to designing new chips for sophisticated automation and control, micro-controllers promise a career full of challenges
Are you a budding electronics professional? And confused about selecting the right path to achieve your dream job? A lot depends on your capabilities. The statistics suggest microcontroller-related skillsets as the ones in demand by the industry. Before you acquire them, consider the following commandments for your survival.
A brief on micro-controllers
In simple words, microcontrollers are tiny computer-like processors that make electronics products intelligent. These are required for all electronic control units. To cite an example, an average consumer uses about 100 microcontroller-enhanced products ranging from microwave oven to copier and phone at workplace and remote control for television viewing at home.
According to Databeans, 32-bit microcontrollers are growing the fastest, at a compound growth rate of 16 per cent each year. Shares of 4-bit and 8-bit microcontrollers have been declining, while that of 16-bit device controllers have accelerated.
The Indian scenario
Currently, the Indian semiconductor market represents only one per cent of the $280-billion global market. But you may be surprised to know that it is growing faster than the global average.
“The use of microcontrollers is now increasing steadily as numerous applications now use electronic control. Applications ranging from entertainment to power train and body electronics increasingly use electronic control circuits for better reliability and performance. Severe competition, stringent pollution and safety norms, and fuel economy are some of the factors influencing the automotive industry to look for new technologies using electronic controls,” says Anil Kumar, president of Indian Printed Circuit Association (IPCA).
The subcontracting of microcontroller design work to Indian companies has been prevalent for more than a decade now. Microcontroller-related designing (both software and hardware) indirectly contributes to 20-30 per cent of a company’s revenues.
However, the new trend in the last five years has been the setting up of subsidiaries in India by multinational OEMs such as Microchip Technology, Texas Instruments, Infineon and Freescale Semiconductor to capture the embedded control solutions market for consumer, automotive, office-automation, communications and industrial control electronics.
32-bit microcontrollers are growing the fastest, at a compound growth rate of 16 per cent each year. Shares of 4-bit and 8-bit microcontrollers have been declining, while that of 16-bit device controllers have accelerated.
According to NASSCOM, in India, $750 million were spent on R&D of embedded systems in year 2006. The figure would rise to $1.1 billion by 2009. This is, however, just a minuscule portion of the global opportunity that is waiting to be tapped.
The growing demand for better energy management is expected to increase adoption of digitally programmable microcontroller solutions in motor, lighting and power related applications.
Opportunities for aspirants
The microcontrollers industry provides you with a lot of career options. It is because of the vast applications of microcontroller-based products. Most of the roles, however, can be grouped under some broad categories.
If you have interest in quality control, you may become a test engineer. In this role, you will be responsible for formulating test strategies, ensuring end-product quality and carrying out system testing accordingly.
Else, you may utilise your logical mind as a software developer. You have to analyse and optimise embedded software meant for the targeted real-time operating system. Often the tasks like developing installable and built-in device drivers, kernel modifications and embedded applications are also a part of ‘what to do’ list.
Those who have a passion for solving mystery may choose to become a firmware engineer. It involves mainly debugging and troubleshooting and often testing of various protocols within an embedded firmware stack used in the microcontroller.
Another interesting role is that of hardware engineers. Hardware engineers are responsible for micro-controller -based hardware design and develop ment.
If you would like to explore howIf you would like to bank largely on your communication skills, then also there is a role. You may begin as a field application engineer who is responsible for maintenance, servicing and customer care related operations.
microcontrollers can be made more operative or how a system can use a microcontroller to meet some specific need, then the suitable role for you is of an R&D engineer. You will be responsible for instrumentation, design and development in programmable logic control (PLC), drives or SCADA related fields and microcontroller instructions.
Major recruiters. Similar to the wide applications of microcontrollers, you will find that a wide variety of industries are recruiting microcontroller professionals. The major recruiters are Texas Instrument, Conzerv, Infineon Technology, Freescale Semiconductor, Safenet InfoTech, Robert Bosch, Mah India, Acculogix Inc, Methode Electronics, Reinfold Physical In, Multi Services, Emerson Design Engineering, VVDESIGN, Minilec India and Microchip technology.
However, you can’t ignore the small-and medium-scale players in this field. In fact, around 60 per cent of the recruitment occurs in the small and medium sector.
Basic criteria for entry
If you define a fresher as a direct passout without any industrial exposure, the recruitment possibilities narrow down to some big firms like Texas Instruments and Microchip Technology. These select candidates from various institutes of repute and train them according to their needs. Most of the recruiters prefer candidates with at least a small degree of industry exposure. However, they need not be full-time employees. Any equivalent training is also well accepted.
As regards the basic criteria for entry, diploma holders, engineering (as well as science) graduates, postgraduates and even doctorates with the background of electronics/electrical engineering or computer science may try their luck here.
If you ask any industry spokesperson about the skill sets expected of freshers and what fresh graduates bring to the table, only a huge gap is revealed. It is in fact a significant drawback of our educational system.
"According to NASSCOM, in India, $750 million were spent on r&d of embedded systems in year 2006. The figure would rise to $1.1 billion by 2009. This is, however, just a minuscule portion of the global opportunity that is waiting to be tapped."
Most of the microcontroller firms find gap in areas such as architecture and design. In particular, getting people in ARM and data acquisition is a challenge.
It won’t be too much of an exaggeration to say that you will probably find this field as one which offers enough provisions for learning as well as earning. The remuneration is quite good even at starting point.
The existing government or public-sector players offer a starting salary in the range of Rs 8000 to Rs 10,000 per month (excluding allowances) for diploma holders and Rs 15,000 to Rs 20,000 per month for degree holders.
In the private sector, the starting salary may range from Rs 5000 per month to Rs 30,000 per annum for a fresher. The variation depends on several factors like the nature of the organisation and competency level and academic background of the candidate. The minimum figure describes the salary for a fresh diploma holder in a not-so-established SMU and the higher figure is for an engineering degree holder in an MNC of repute. But the private sector is ready to offer more lofty figures for the candidates who have suitable practical exposure in the form of a specialised training course, proper industrial training or systematic industry-defined project work.As regards yearly growth in salaries,
at this moment, with the economy on the skids and jobs under threat, it’s really difficult to predict the future salaries. However, if we analyse the industry feedback for the previous years, an engineer may expect 20 to 25 per cent hike per year. For a diploma holder, it will be in the range of 10 to 15 per cent. Though you may find job switching an easy way to increase your salary, it is advisable to stick to your first job for at least one year to create a strong foothold.
As an aspiring candidate, you may be on the fast track of growth in the micro-controller segment, provided you are a competent, hard working and constant learner. Except field application, most of the job profiles available at the beginning are typically at the technical end. With strong inclination towards technological nitty-gritty, you may climb the ladder gradually to a senior engineer, technical lead engineer or project head position. You can even start technical consultancy after gaining sufficient knowledge. The techno-commercial route may be another way of climbing up if you really want to know the business process. Starting with any of the roles mentioned earlier, you may reach the position of a senior manager by simply banking on your soft skill sets.
Tips for students
Before building your skills for a possible employment opportunity, you need to know what’s in demand there. Let’s therefore focus on the industry expectations. I will highlight some of the basic things that your potential employer may be looking at when he interviews you. As an employer is hiring you at a junior level, no expertise is expected. But the basic understanding of the subject and the urge to learn are must.
I am using the term ‘basic understanding’ to cover the fundamentals of electronics, such as functional and component level knowledge of electronic circuits (including PCBs, ICs, resistors, amplifiers, multipliers, transistors, etc) and basic-level knowledge of allied fields like electrical engineering, mechanical engineering and mathematics. Don’t get surprised if your employer asks something beyond your course curriculum. He may even expect you to know statistics or project management.
Your key skill sets in the relevant fields are knowledge of the micro-controller architecture (especially advanced ones like ARM, PPC and MIPS for SoCs), object-oriented programming for PLCs and SCADA, testing protocols and tools, networking and instrumentation procedures and protocols, and basics of analogue and digital design.
It is possible that you are aware of most of these terms from a theoretical perspective only. But industries do not rely on bookish knowledge. So keep yourself updated on the current trends in technologies and explore the application-oriented part of the theory.
Remember that hard skills alone won’t take
Formatting for the industry
Digest those technical nuts and bolts in a logical way. Instead of following a particular manufacturer’s reference databook, follow a generic approach to know the microcontrollers. Learn how the general principles are implemented in practice. Then mug up the marketable stuff, whether it is a specific architecture, operation of a specific controller or syntax of any object-oriented program.
Explore the microcontroller systems step by step. Start with the foundation level, i.e., the architecture. From the architectural point of view, a microcontroller—the dedicated application system—and other general-purpose computers are quite similar. So the basic operation of a general-purpose computer is to be assimilated first. Get acquainted with registers, the arithmetic and logic units, read-write memory for data storage, read-only memory for program storage, flash memory for permanent data storage, peripherals, input/output interfaces and how a computer works.
Turn now to the central processor: the steps you take here will be the same as for any processor you may come across later in your career. Evaluate a processor by looking at the hardware resources. At the basic level, these include the registers in the CPU, such as accu-mulators, memory addressing registers and condition code registers. For some advanced processors, such as Motorola’s M8HC11 or Intel’s 8051 microcontroller, the CPU may contain other hardware resources like timers, parallel and serial I/Os, and analogue I/O. Pay attention to the programmer’s model concept associated with each type of processor.
Next, see how these principles are applied in a specific RISC (reduced instruction set computing) microcontroller. In this phase, you can explore the architecture of 16-bit, 32-bit or the high-end ones like ARM, MIPS and PPC. Working knowledge of any of these high-end microcontrollers may make you the potential candidate for a job.
How to proceed further?
The system is unveiled. What’s next? The key is with you. Walk through the execution of micro-controller instructions. At this point, you will encounter operands and operations. The combination of an operation and an operand generates an instruction in Assembly language program. Fundamentals of any Assembly language program such as operation and operand fields, comment fields and mnemonics should be registered properly to step through the instruction execution cycle. It is important to understand system timing and control instructions to get control over the subject.
The instruction set of a real processor has only a few categories of instru-ctions, such as data transfer, arithmetic and logic ope rations, and brunch and control instructions. But most of these have a variety of ways to address operands. The different ways in which an instruction can specify operands are called addressing modes. If you learn these along with the few categories of instructions, generating programs in any Assembly language will no longer be a daunting task.
As you begin programming in Assembly language, you will use the addressing modes. Your task is to look through the instructions in this category, to find the correct mnemonic for the operation required and then to find the correct addressing mode and the suitable assembler.
Here are some tricks of the Assembly language trade:
1. Use register addressing when possible
2. Use register indirect or indexed addressing
3. Use the stack for temporary data storage
4. Do not use magic number
Advanced programming related skills
While programming with a definite purpose, you have to experience the programmer’s nightmare—your program does not work, sometimes it doesn’t even appear to run. It’s time for debugging.
Program debugging is like solving a mystery. You start the program expecting it to work perfectly, and it doesn’t. And you conclude it’s doing nothing. But the processor can’t be in a ‘nothing to do’ condition. It may be fetching operational code, executing it, incrementing the program counter and fetching the next operating code. The operating codes are your creation. You have to detect the difference between what you expect the program to do and what it is actually doing. Debugging is the process of finding those clues and interpreting them to find the problem.
All debugging programs offer a variety of tools. Among them Gdb and Kgdb are of industrial importance at present.
Satisfying the real-world requirements
After getting familiar with the basic components, it’s important to specify real-world requirements. A system is to be designed to meet them. Consider the design procedures applicable to both hardware and software projects, but remember that rarely in the real world we have the opportunity to follow the ideals of any design philosophy. Take a look at RTOS (real-time operating systems). An RTOS is one that does some process either at a specific time, say, midnight, or at specific intervals, say, every 15 seconds, or at a time required by some external device or event.
Now turn to problem specification. The preliminary problem specification is to design the hardware interface to transfer information from multiple sources to the processor, and vice versa using a computer bus. You have to explore the parallel bus architectures and how to create the interfaces between the external device and the processor. DMA (direct memory access) and other schemes associated with bus masters and slaves are must to learn. MODBUS and CANBUS are the effective tools of industrial importance.
After creating the channels for program flow, it’s time to consider the events that can interrupt the normal flow of the program. Most processors have a software interrupt instruction that is useful for debugging also.
Is the formatting complete for you?
Now you are almost at the end of formatting. Put a little more effort to comprehend the basic principles of memory elements and the design of memory systems. Along with RAM and ROM, look at firmware to understand how memory chips work. Next, take a look at the interface between memory and the processor. Knowledge of advanced devices like pseudo static RAMs, programmable ROMs (EPROMs and UV-erasable EEPROMs), flash and NVRAMs is desired.
Basically, memory designing is a balancing act involving:
1. Choosing the amount of RAM and ROM to be used
2. Choosing the address in the memory map for each type
3. Choosing the memory chips with timing requirements which match processor timing
Matching often requires a detailed analysis of hardware, especially input /output inter-faces. It may be a wise decision to assimilate the details of memory interfaces and especially timing signals.
If you take a poll, you will find that many professionals have a terrible experience with serial interfaces. It is because they do not understand why all the signals in the standard interface are there. Try to develop an idea of the handshaking signals developed for communication channels, and interface cables for various common interface standards such as RS-232-C, RS-485, RS-422 and RS-423.
The formatting should be concluded by putting it all together for a definite application. At the basic level, any microcontroller application is always related to data acquisition and conversion. A processor has to read analogue information and act upon it in many applications. This requires analogue-to-digital conversion and vice versa. A clear-cut understanding of both the processes is a must if you would like to stick to this field.
Learning beyond the textbook
Major recruiters often need to spend quality time and resources on freshers in order to tailor them for their specific needs. But, as suggested earlier, you can overcome this ‘gap’ by being part of an industry-oriented project or strategically chosen alternative course run by an educational/technical centre. So explore the Internet, go through the technology related magazines, concentrate on your project work and try to identify a course that can increase your chances to be picked up.
Project-driven learning, backed by a steady exposure to seminars on contemporary topics and interaction with the industry people, gives the course structure an edge. A microcontroller-based project in the area of data acquisition or automation may be a turnkey to enter a good organisation; any parallel course on microcontrollers may also be helpful.
You can learn about ‘chip to ship’ of a system after completing a proper project. Nearly all Indian institutes, barring a handful, are woefully unable in providing students with such opportunities.
But, the industry is always ready to help deserving candidates. Ravikumar, technical director-university relations, Texas Instruments, explains that their extensive ‘internship programme’ provides enough learning opportunity for a student. The only thing to do on your part is to complete the groundwork about microcontrollers by using the steps we have already discussed above. Remember any useful project needs time; so start the process as early as possible. This can go a long way in providing you an edge over other contenders.
If you feel that you may lag behind due to lack of practical exposure, a strategically chosen course may be the solution. I emphasise on the word ‘strategically’ because it decides whether you will get the passport to a job or your money will be drained out. So before choosing the course, judge the reputation of the institute, the certification system, the industry accreditation and also the course curriculum.
Ultimately, everyone wants a best-fit. So first be clear about your goals. Then you can go ahead and make that call!
The author is a research analyst cum journalist at EFY
Electronics for You
LINUX for You
Facts for You
Electronics Annual Guide
Linux & Open Source
Science & Technology
|© Copyright 2012 EFY Enterprises Pvt. Ltd. All rights reserved.
Reproduction in whole or in part in any form or medium without written permission is prohibited. Usage of the content from the web site is subjectT etor ms and Conditions