Embedded

Software dominates the embedded system design process; according to some estimates, software development can now consume up to 70% of a project’s resources.

Traditionally, software development started when the hardware arrived, but not any more: software designers are using virtual prototypes to get their projects started in time to meet the deadlines.

But there are also operating systems, which manage this growing complexity. The choices are numerous and have an impact at the system level, as well for deeply embedded products. And C is no longer the only programming language.

Whatever the complexity of the embedded system you’re developing software for, New Electronics addresses the issues regularly by looking at the latest tools and techniques available.

Why do multicore systems make it harder to find and diagnose bugs?

Concurrency takes on a new dimension in multicore platforms, since true parallelism comes into play and communication between threads is often achieved using shared memory. Writing a correct concurrent program is notoriously difficult and the advent of multicore architectures makes it significantly harder again due to their added complexity.

Software tool finds bugs in real time

Getting bug free code can be time consuming. The loop created between a developer passing over code for testing, only to get it back for revision, can be a long one. It becomes longer when more developers are working on the same project – as the matrix which becomes the solution shifts with every new input from a member of the team.

Software development: Cost vs. value

Depending upon who you talk to and the scale of the design, software development can represent around 60% of the cost of of an embedded system project. With costs rising and budgets stretched, some companies may choose to look at less expensive tools. How can the industry help developers to measure the benefits of particular tools?

How the Automata architecture could boost processing efficiency

Micron Technology appeared at the 2013 Supercomputing conference, where it claimed the development of a massively parallel architecture built around its memory technology could provide a huge speed boost for some of the applications that today need supercomputers. At the same time, the memory maker said it is setting up a research centre based at the University of Virginia to focus on what it calls the Automata architecture.

New Electronics roundtable: The issues involved in embedded software development

Developing software for embedded systems isn't getting any easier. As systems offer more functions, code size grows and checking that code becomes a challenge. Software is also being developed for multiple processor platforms and for different operating systems. Meanwhile, security is growing in importance, particularly as more systems include wireless connectivity.

Long term view of embedded software development will improve quality and reduce development time

Many embedded applications are developed with a limited view of the need for long term reusability, yet almost all organisations can benefit by establishing a development framework that provides a high degree of platform independence and which facilitates reusability. The benefits are not only future proof embedded software components, but also long term improvements in quality and reduced development time.

Efficient GPGPU programming with OpenCL

Today's graphics processors are highly programmable, massively parallel compute engines. In this role, they are commonly called general purpose graphics processing units, or GPGPUs. You can program them with the open and standard based OpenCL framework, distributing compute chores to CPUs, GPUs, and DSPs to optimise a system's overall performance.

Intelligent debug tools becoming a commercial necessity

When developers start a new microprocessor based project, they are faced with a critical choice – which debug solution should they use? This article seeks to explain why many developers are choosing a new generation of intelligent trace analysis tools and why, in many instances, these tools have become a commercial necessity.

Extensions to FreeRTOS bring productivity gains to embedded design engineers

Operating systems can be a major source of stress for embedded design engineers. Factors such as size, cost and support all contribute to make the development process more complex. The process can become even more fraught when engineers look to develop products with real time operating systems. An off the shelf operating system can play an important role in keeping costs and development time as low as possible.

Subscribe to our Newsletter

Editor's Choice

Electronics Design Show 2014

Building on the success of last year's inaugural show, the award winning Electronics ...

Making the IoT happen

It depends upon who you talk to and their interpretation of what the Internet of ...

Camera pill technology

Colonoscopies can be an uncomfortable procedure for patients who may already be ...