Colin Walls has 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, Colin is an embedded software technologist with Mentor … More »
June 18th, 2018 by Colin Walls
I recently wrote about write-only ports and discussed how they worked and the challenges presented to software developers who need to program them. The solutions proposed were quite straightforward, but the challenge remained to ensure that all the code utilizing the ports complied with the requirements.
I commented at the time that there are several ways to mandate the correct handing of write-only ports, but an approach that interested me was the use of C++ … Read the rest of Write-only ports in C++
May 15th, 2018 by Colin Walls
First up, please remember that I am a software guy, not a chip designer. Please read this posting with that in mind.
I was chatting with someone at a conference recently and they planted an idea in my brain. I am not sure what to do with the idea, so I thought that I would exercise it here. The topic was the consideration of power consumption in embedded systems – a subject I have written about before, but this was a new angle … Read the rest of Designing a low power CPU
April 16th, 2018 by Colin Walls
I often joke that my job puts me in a difficult position, as I am a software guy and a very large proportion of Mentor employees are hardware design specialists; I am consorting with the “the enemy”. Although I am making a light-hearted comment, there is, sadly, something of an “us and them” attitude between software and hardware teams in many companies. It is in everybody’s interest to make this a thing of the past.
Sometimes, it seems as if this view is reasonable, when hardware seems to be designed specifically to make life hard for software developers … Read the rest of Write-only ports
March 15th, 2018 by Colin Walls
I like simple things. In particular, I like clean and simple ways to solve a problem. For example, user interaction with an embedded system might be something very slick – touch screen LCDs seem to be fitted to everything nowadays. But sometimes a simple LED indicator is enough. It is amazing how useful a simple blinking light can be … Read the rest of Blinking is good
February 15th, 2018 by Colin Walls
Nowadays, most embedded systems are built using 32-bit CPUs. These devices give plenty of scope for performing the arithmetical processing required for various applications. Calculations can be performed on signed or unsigned integers and 32 bits gives a good range of values: +/- 2 billion or up to 4 billion respectively. Extending to 64 bits is reasonably straightforward.
If you need to stray outside of these ranges of values or perform more sophisticated operations, then you need to think in terms of floating point and this presents a range of new challenges … Read the rest of Floating point
January 15th, 2018 by Colin Walls
Most of the time, I subscribe to the view that “the only stupid question is the one you did not ask”. However, I do have trouble with a question that I have been asked countless times at trade-shows, seminars etc. The question is “How much memory does Nucleus RTOS need?”
It is not that this is a stupid question. It is very sensible to be fully aware of resource utilization with deeply embedded systems. The problem is that I am rarely sure how to give a meaningful and useful answer, so I resort to generalities and this is often viewed with suspicion. The reason for this is that the answer is dependent upon a great many variables … Read the rest of RTOS memory footprint
December 19th, 2017 by Colin Walls
The term “interrupt latency” is widely used, but, like a lot of technical terms, its meaning is sometimes unclear. This is our first challenge – to define our terms. The second challenge is to make a meaningful measurement. Read the rest of Measurement of interrupt latency
November 15th, 2017 by Colin Walls
Not so long ago, I was having some trouble with my Internet connection. I will probably never know exactly what was wrong (as broadband is, for intents and purposes, magic), but investigating the problem was interesting. I am not a networking specialist, so I would expect that messing with the settings inside a router would be hard, but the manufacturers have made it very simple.
I began to wonder why there are not many devices that work in the same way … Read the rest of Who needs a Web server?
October 16th, 2017 by Colin Walls
I have historically been somewhat skeptical about open source software (OSS). I am always wary of anything that is “free” and subscribe to the TANSTAAFL (“there ain’t no such thing as a free lunch”) principle. It has taken me quite a few years to understand that open software is not free – it is just a different business model from the usual “we make it, you buy it” approach.
I am only now coming to grips with how the OSS model really works, why it is a good thing and how business can leverage it to mutual benefit … Read the rest of In an open-source world, it’s all about integration