11 August 2009

Divide and conquer, or…

Divide and conquer is a valid strategy for solving complex problems. In essence, one seemingly insurmountable problem is broken down into smaller, manageable parts. These parts are solved separately and the results combined to produce an overall solution.

One of the greatest exponents of divide and conquer were the ancient Romans. They successfully used a technique they termed 'divide and rule' to amass and manage a vast empire that covered three continents. They got so good at it, that it became an entrenched and unquestioned part of the empire's day to day activity and governance. Indeed, many historians believe that Rome's blind faith in the necessity of dividing and isolating the different groups it ruled played a big part in the empire's stagnation and eventual decline. As one Roman senator put it at the time: "We spend so much of our energy dividing, we sometimes forget to rule!"

At a fundamental level, electronics designers employ divide and conquer to get around the increasing complexity of the devices and products they develop. Today we take a design problem, divide it into hardware, programmable hardware and software portions, and pretty much work independently on each bit. At some point these pieces are brought together to create the final product.

While this approach to design has served us well in the past, I believe we are approaching a somewhat Romanesque crossroads when it comes to the way we develop electronics products. Our comfortable acceptance of a set of siloed design flows is in danger of blinding us to greater possibilities that exist.

Programmable logic devices have now reached a performance/capacity/price tipping point and offer the tantalising prospect of a quantum jump in our design capabilities. We can start to create hardware with the same ease with which we currently create software. We can move functionality between hardware and software at will. And we can update hardware virtually without limits in the field.

If we are to blur the lines between hardware and software, using programmable devices as the filter, then we need to design in a way that allows a natural collaboration between all of the elements that go to make up the final product. We need to be able to push functionality between different domains at will, and keep all the elements in sync as we do.

In short, we have the opportunity to raise the abstraction level at which we do the whole of the design process. And I'm not talking about incrementally improving the individual pieces of the design puzzle. Simply finding efficiencies in software development or hardware design is not enough. We need to raze the walls between our disparate design processes and elevate our entire design stratagem to a new level. It's this that will give us a whole new world of design opportunities.

For this to occur, both designers and design tool companies need to look beyond whatever division they currently sit in, abandon their preconceptions about how electronics design should be done, and start discovering how we can pull our different communities into a coherent whole.

Author
Rob Irwin, product manager, Altium

Supporting Information

Websites
http://www.altium.com

Companies
Altium Ltd

This material is protected by Findlay Media copyright
See Terms and Conditions.
One-off usage is permitted but bulk copying is not.
For multiple copies contact the sales team.

Do you have any comments about this article?

Add your comments

Name
 
Email
 
Comments
 

Your comments/feedback may be edited prior to publishing. Not all entries will be published.
Please view our Terms and Conditions before leaving a comment.

 

Related Articles

FPGA design tools upgraded

Leading fpga developer Xilinx has undertaken a 'ground up' review of its design ...

FPGA breaks 2Tb/s bandwidth

Xilinx has announced shipments of the Virtex-7 X690T fpga, said to combine the ...

Mathworks enhances range

In a move described as a 'significant enhancement' to its product range, ...

Countering complexity

Mobile has embraced increasingly complex technologies to boost data rates ...

Vision for the future

When digital signal processors first appeared commercially in the early 1980s, ...

Avoid counterfeit electronics

It's been discussed and analysed for years, yet there does not seem to be an ...

XMOS XS1 Architecture

An XS1 combines a number of XCore processors, each with its own memory, on a ...

LED Reference Design

The XMOS LED Reference Design is an Ethernet-based system featuring daisychains ...

Targeted design platforms

Introducing the Xilinx targeted design platform: Fulfilling the programmable ...

Embedded World: Altera

Altera will showcase a suite of embedded fpga solutions at Embedded World 2012 ...

Industrial fpga USB modules

FPGA specialist, Opal Kelly, has announced two industrial temperature versions ...

Front end modules from Murata

Murata has unveiled a new range of microwave monolithic integrated devices for ...

Implementing PCIe

24th May 2012, Reading, UK

Virtex-7 2000T

Click on the link to watch the video of the demo of the world's highest ...

Power Solutions for Altera Arria II GX FPGA

This video covers the Power Solutions for Altera's Arria II GX FPGA.

C6A8168 Integra™ Peripherals

The C6A8168 is the industry's highest-speed DSP plus ARM processor with a 1.5 ...

Bloodhound Project diary

The thing about setting a land speed record is that speeding up is only half of ...

Do we need a second switch?

With the digital switchover largely complete after the London region turned off ...

Andy Green’s Bloodhound diary

What's the fastest and scariest thing you've ever done? For me, they are two ...

Claire Jeffreys, NEW

Claire Jeffreys, events director, National Electronics Week, talks with Chris ...