Thought Leadership

More embedded software articles – C++ and multicore

I am continuing to catch up with highlighting articles that I have had published at embedded.com. This time they are focused on C++ and on multicore embedded applications …

Overloading or obfuscation?

Operator overloading is a powerful feature of the C++ language. Used with care, it can yield readable, maintainable and efficient code. However, it is just as easy to write “clever” code which is apparently elegant, but, in reality, is hard to understand and, hence, unmaintainable. This article gives examples of good and bad practice and investigates how and where an embedded developer might make good use of operator overloading.

Inline Code in C and C++

The replacement of a function call by a copy of the code of the function can be a very effective optimization, particularly if execution speed is the priority. This article takes a look at how inlining works, when it can be effective and how it may happen automatically in C++.

Vintage Multicore

Multicore and multiple CPU embedded systems are becoming mainstream, after many years of hype. There are many articles about multicore design that address different hardware architectures (homogeneous and heterogeneous multicore) and software architectures (AMP: asymmetrical multi-processing and SMP: symmetrical multi-processing). In this article the development of an AMP system is outlined, highlighting various challenges that were addressed. What is unusual is that the design was completed in 1981!

Introducing MCAPI

MCAPI is a standardized API for communication and synchronization between closely distributed cores and/or processors in embedded systems, defined and maintained by the Multicore Association. This article outlines what MCAPI is, how it works and how it may be deployed in multicore systems, including review of the API.

Colin Walls

I have over thirty years experience in the electronics industry, largely dedicated to embedded software. A frequent presenter at conferences and seminars and author of numerous technical articles and two books on embedded software, I am a member of the marketing team of the Mentor Graphics Embedded Systems Division, and am based in the UK. Away from work, I have a wide range of interests including photography and trying to point my two daughters in the right direction in life. Learn more about Colin, including his go-to karaoke song and the best parts of being British: http://go.mentor.com/3_acv

More from this author

Leave a Reply

This article first appeared on the Siemens Digital Industries Software blog at https://blogs.sw.siemens.com/embedded-software/2014/11/10/more-embedded-software-articles-c-and-multicore/