Embedded Systems Engineering
|
I have to give the usual disclaimer that that these are my own personal views and not those of the ESE Editor and publisher. or those of my employer at the time..... I now work for Phaedrus Systems Ltd!
This is one of the more difficult columns to write. It is for the November/December issue so it is for Christmas and the new-year but due to deadlines I am writing at the end of October! This means I need to plan ahead. Something we all do but in the current high-speed world we had to plan very differently to the way things were done in the past.
In the commercial world, especially in electronics and consumer goods, products and devices come and go in a matter of years. Remember bubble memory was going to save the world? The PC arrived powered by the 8086 and the advanced (and now forgotten) 286 came and went in a coupe of years. Closely followed by the 386 and 486. There was an recently article in one of the IEE journals discussing that some MCU that were new when one aircraft project started might well be obsolete by the time the aircraft came into service! I think it was a justification for using Java which is supposedly platform independant..
Education, however still works seasons, terms or semesters and often years in advance. Ok, so you can get a degree course, or at least modules for it, up and running in three or four years from idea to first students taking the first lecture. However this needs suitably qualified A level students. So we need to get students interested in taking the right A levels 3 years before they arrive at University…. I am assuming that they take a broad range of O-Levels. I know, it is GCSE but the older engineers reading this will still call them O-levels.
The point of this rambling is that to get students onto an engineering or technical degrees they have to start thinking "Engineering" when they are in the first year of their GCSE's or at age 13/14 The trouble is that whilst many aspire to be pilots, doctors, lawyers, interior designers, astronauts or that new profession of Celebrity, "engineering" is still seen as working in a garage, factory or on a building site. It is also seen as a dead or dying career with all the interesting or exciting technical stuff happening in Silicon Valley or the USA, where they invent "everything". It is not seen as an interesting career in the UK.
Despite the downturn in heavy engineering and manufacturing there is still a healthy R&D and high tech industry in the UK. In fact there is a shortage of good engineers. This is partly thanks to the Government and the Inland Revenue (IR35 Section 660 etc) killing off a lot of contractors who retired or left the country. To make matters worse Universities are saying that there is a decline in the numbers of students going into engineering disciplines such as electronics and computing such that many courses are undersubscribed to the point where they may stop. Maths and computing science are suffering though I believe computer science less so as many still want to write computer games! I have noticed more computer science graduates with a background in Visual C++ and Java in embedded work.
This is where I will probably get lots of complaints from all my readers (both of them and my Mum) I see some programmers who work in Visual studio and write using MSVC++ "in C mode" and them "port" the code to the embedded compiler. IE keep tweaking it until it compiles. This may work for some targets but it is not good for the 8 and 16 bit systems and any safety critical system. We need more properly trained embedded engineers.
The industry is shooting itself in the foot with the advent of flash memory in MCU. At one time it was a 30-minute cycle with burning and erasing EPROM's. Care was taken to get things right. Now it is easy, especially with JTAG or ISP to write, compile, flash and run. So less care is taken because "it is easy to reprogram". People are happy to do this and go round the loop rather than do things propperly which will, in the long run, work out cheaper and produce more robust systems.
The other disturbing thing I have been hearing is that the maths of most students arriving at university for Engineering subjects is not as good as it was in the past… The universities have to do a lot more foundation maths. It was a couple of weeks now it is a term or more. It was for one or two students now it is for most of them…. This is very worrying given that 90% are getting A passes at A-Level according to the current affairs programs. Something does not add up!
Whilst some of you might be thinking "Oh good! It there is a shortage of good engineers I will be in work for ever at in increasing hourly rate!" Think again! If there are not enough Engineers in the UK there will be no work for any of us. If the number drops too low The Big Companies will go elsewhere , there by removing a lot of the work for the smaller companies. Once we loose our technological base we will never get it back. As has been shown many times before you can put a factory almost anywhere and train up production staff in weeks but it takes a decade or more to train up high quality hi-tech Engineers when you start from scratch. More to the point if we loose the numbers of student we will loose the courses at University and with them the lecturers… If the UK drops below critical mass we will never get it back… at least not for a generation (25years) you have to train the lecturers and find the experience. Then train the students. In that time we would loose all the high tech industry in the UK as over that time 60-70% the current engineers retire, go abroad, change career etc.
So we need to encourage youngsters at, and before, the GCSE (O-level) stage to look at science, engineering and maths, so that the take the right GCSEs and A levels to let them go into engineering.
The DTI and DfEE, that's Trade and Industry and Education/Employment, have come up with a scheme to encourage youngsters into Science, Technology, Engineering and Maths. Its called STEM. Another TLA (or rather FLA) They want Science and Engineering Ambassadors or SEA (ie volunteers from Industry) with science, technology, engineering or mathematics (STEM) backgrounds and skills, who are willing and able to inspire and encourage children and young people in these subjects and related careers by running activities in schools.
They say that this is a win-win situation for all, it promotes STEM subjects overall, helps companies to develop their employees, individuals pick up new skills and schools get an insight into the latest technology industry are using. See Http://www.setnet.org.uk and Http://www.cwsetpoint.co.uk. I got my information from the Warwickshire coordinator: Mukund Kothari (mukund.kothari@warksebp.co.uk)
What you can do is help by influencing teachers. Correcting miss-conceptions. Remember the majority of teachers are professional teachers. They have never worked in industry. In any event the hi-tech industry moves faster than most so any teacher that moved from indussty more than 10 years ago is well out of date. Look at what you were doing 10 years ago.
Get involved and you can get the teachers giving real up to-date information. I dare say you will find, this being a government scheme, you will get some publicity out of it. It might even help you find kids for work experience who become apprentices or junior staff in a year or three. It certainly can't hurt the good company name locally.
On the other hand you could even try talking directly to the students by giving presentations etc. Firing their imaginations. Letting them see there is interesting work in the technical professions. Point out a pilot is a good job but it is electronics engineers who do the flight control and the autopilot! Doctors only save lives using machines made by electronics Engineers etc.
Whilst on the subject of giving something back… There was an interesting item on just that in an IEEE online journal (Benigni 2004) " 'Getting Back' Rather Than 'Giving Back' " The author was saying that he got more out of his voluntary work than he put in! He was trying to put something back into the system but found that the benefits outweighed the effort. So think on that over Christmas and contact STEM to see what you can do. You might find that there are unexpected benefits. See Http://www.setnet.org.uk and Http://www.cwsetpoint.co.uk. I got my information from the Warwickshire coordinator: Mukund Kothari (mukund.kothari@warksebp.co.uk) whilst I was at the IEE stand at the Warwickshire Town and Country Show. We were both "volunteering" to do a couple of hours in the Imagineering section. Not a bad idea.
Two hours helping the IEE out got myself and partner into the Town and Country Show for the day with free coffee and sandwiches ( I was tempted to say a free lunch but I know better than that!) You can often get more out than you put in. However, what surprised me was that several IEE members had committed to doing a couple of hours, and like the rest of us, specified a morning or afternoon and day, but just did not turn up leaving the rest of us in a jam. If you do volunteer please do what you promise. Those IEE members are lucky that the organiser is more charitable than I am. I suggested listing their names on the web sight asking them to explain why they didn't turn up!! However, the Organiser declined the offer to save their embarrassment whilst frantically trying to find people to help the overstretched team we had.
Over the last month I have been wondering about Standards and are they worth it. As you may know I work on the MISRA-C guide and am currently the Convenor of the ISO-C committee for the UK. Well the MISRA-C guide has taken off (literally in several cases) in many parts of the industry. The second version, MISRA-C:2004 has also seen a great deal of interest in the month it has been available. At the same time the current version of the ISO-C standard (9899:1999), which has been around almost as long as MISRA-C, has been all but ignored by most vendors.
There have been discussions on this in the main C standards reflectors. Much of it appears to be people who haven't read iMISRA-C and a few that have, picking holes in MISRA-C1 and saying it was clearly done by incompetent people whilst ignoring the fact that the current ISO-C standard was 8 years in the making from the first standard (C90) and has in the last five years needed two long corrigendum correcting and clarifying yet it still has many defects outstanding. Also, fewer people have taken it up than MISRA-C.
Standards are only any use if the industry they are aimed at needs or wants them and they serve the purpose. I found the quote: "The lifetime of a standard is limited to the time it enables innovation in its connected areas." Various people have told me that they think that the standard that will be adhered to is the GNU GCC "standard" which differs from ISO C in some areas. So it remains to be seen if MISRA-C3 is ISO-C0x or GCC compliant.
The Good News is that the MISRA-Steering Committee that was set up over a decade ago by MISRA and the DTI to oversee various initiatives has decided to "promote" the MISRA-C Working Group to a Steering Committee in it's own right! This means that there will be a compliance suite, a technical Corrigendum (if/when required) and various other projects. We are drawing up the terms of reference now. We also have a budget and the jury is out as to weather this means better sandwiches at lunch int he meetings at MIRA or meetings in Hawaii :-)!
The MISRA news is good for embedded Engineering in general. It appears that whilst 50% of the people intrested in MISRA-C are automotive the other 50% are in many other areas of high-integrity embedded systems. However what is not good is that the ISO-C panel seems bent on self-destruction thanks to one or two egos and, unfortunately the view of the importants, or rather lack of, C standards taken by "the management" in most UK companies. As it is all "ongoing" I can say little more but will be able to give a full report in the next issue. Though I did find an intresting item by Bell. A Time and Place for Standards: History shows how abuses of the standards process have impeded progress.
Whilst I am on about standards, some reading matter for Christmas is the "Standards and Intellectual Property Rights: A Practical Guide for Innovative Business" from NSSF You can download it from: http://www.nssf.info//IPR/Intellectualfinal.pdf It is worth thinking about who owns intellectual property and copyrights in the embedded and software business.
I had a call about my "obsession" with China from an interested party this month. He declined to be identified as he is now running a start-up and not at the company where he was doing this. He was directly involved. Ie this is not an un-named friend of a friend.
His comment was that they used the East Coast of the USA for production and assembly! They found that it was 50% cheaper than UK but the quality was good. They had tried China but found that it was 10-20% more expensive than the USA and that the quality was not as good. Also he said that, currently, the US did not have a wholesale culture of pirating client's work that China had. He also mentioned that Macdonald Douglas used China for production and it was a right mess.I will see what I can find on this. If anyone has any information let me know at contact phaedsys
A couple of things to end with and for idle though:- Apparently IBM had/has* a rule of thumb that a project will produce 3 lines of debugged code per day over the project. I know you can write a couple of 100 lines a day. However from start to finish of a project overall the number of lines in the project averaged out at 3 per person per day. Does anyone have any other estimates? Remember this is start to finish. From initial start fo the project (not the coding) to the sign off. Total number of person days into the total number of lines of released code. email me with the IBM-LOC for your project. I will think of a suitable prize for the...... I can't do that as I have no way of veryfying the answers. Sorry.
The final though it when you call tech support… (That is a real person who you can contact again not just an anonymous "support@ " or a call centre) and they give you a solution that solves, or helps you solve, the problem let them know. Often when doing tech support you give advice to an email request or phone cal from someone you have never had contact with before. Sometimes it is over thre or four calls and emails. You give the assistance and hear no more. You do not know if it fixed the problem or not or if the fix came from somewhere else. Maybe the user just gave up and used something else.
A little feedback would go a long way. Especially if it is just a one line email of "Sorted. Thanks for the help". Just so we know what fixed it. Remember you may be the next caller withthe problem not the first. Also we all need a pat on the back occasionally. With that I wish you all the seasons greetings and best wishes for the New Year. I shall have some surprises, changes and New Year Resolutions for all.
* I could check this but it would ruin a good myth! On the other hand a there is a prize for any one who can confirm/deny this and confirm if it still holds true in IBM
Mukund Kothari STEM Co-ordinator, Warwickshire Education Business Partnership
Tel: 024 7685 7835 Email: mukund.kothari@warksebp.co.uk
Website : www.cwsetpoint.co.uk
Benigni, D. R. (2004). "Getting Back" Rather Than "Giving Back". The Institute. D. PATEL, IEEE. 2004 (November): Monthly on line newsletter.
Bell A Time and Place for Standards: History shows how abuses of the standards
process have impeded progress. By.
http://www.acmqueue.com/modules.php?name=Content&pa=showpage&pid=210&page=1
Eur Ing Chris Hills BSc CEng MIET MBCS MIEEE FRGS FRSA is a Technical Specialist and can be reached at This Contact
Copyright Chris A Hills 2003 -2008
The right of Chris A Hills to be identified as the author of this work has been asserted by him in accordance with the Copyright, Designs and Patents Act 1988