A funny thing happened on the way to the future. Because of the laws of physics and economic realities, processors took a detour, getting off the path they had been on for decades.
That is one way to read the development of multi-core processors, chips that have two or more largely independent instruction execution engines in them. As is the case with some other detours, this one could prove beneficial, particularly for automation applications. Control systems based on multi-core processors will have more computing power, greater reliability and lower overall cost than equivalent single core solutions.
In this white paper, we will look at why multi-core processors were developed, explore the characteristics of an industrial automation computer and then examine what features a multi-core system should have. The paper will then detail the advantages a multi-core system offers for automation applications and describe a real-world example. It will conclude by looking at what the future holds.
Two, or more, are better than one
Around the year 2000, the steady march of semiconductor processors toward greater and greater performance ran afoul of physics. For years, the industry had been able to shrink feature size and pack more transistors into a given area. That was the basis for Moore's Law, the empirical observation that the number of transistors in a chip doubled every few years. This trend toward smaller features did more than increase the number of transistors on a chip. As an added bonus, the smaller transistors ran faster. The result was greater and greater computing power, all at an ever decreasing cost on a per transistor basis.
However, around the turn of the century this progress started running up against the laws of physics. The problem was that the shrinking of feature size was taking place in three dimensions, not just two. Eventually, the various layers grew to be too thin. As a consequence, processors were on their way to becoming extremely power hungry and hot. If the trend had continued, some projections indicated chips eventually would put out as much energy, on an area basis, as the surface of the Sun.
Clearly, such chips, if they even could be made to work, would never be commercially viable. They would not only demand prodigious power to run but they would also require lots of power to cool. Other barriers to continuing along this path involved the speed differences between processors and memory chips, as well as the difficulty in doing more and more parallel processing on a single core. Yet, both industry and consumers demanded increased computing power with each chip generation.
The industry, then, had to come up with a way to continue to improve performance and overcome these problems. The solution adopted by Intel and others was to create two or more execution cores in each chip, instead of the one that had been the standard. Each core was essentially its own largely independent processor, although it would share some resources with its neighbors.
In the case of Intel's implementation, for example, the shared resources include the L2 cache. By dynamically distributing this fast memory between the cores while having separate L1 caches for each, Intel’s processors are able to significantly reduce memory latency and improve system performance.
A dual core chip delivers about twice the computing power as its single core counterpart, provided that the software is configured to take advantage of multiple cores. The increase is slightly less than double because there is some overhead associated with managing two cores. Each chip, for example, contains logic to coordinate the cores and maximise resource utilisation. This coordination does steal some compute cycles from other tasks.
However, even with such added complexity the benefit of a multi-core approach is significant. There is considerably more computing power on a per watt basis, as well as easier coordination between the cores than is the case with the equivalent setup based on two completely separate processor chips. In addition, the communication between the cores is much more robust than it would be between separate processors. The wiring, after all, between the two is not external to, but instead is integrated on, the chip.
Now, the choice of which processor technology is best depends on the application. For its part, Advantech offers products based on both single and multi-core processors, as shown by the use of the Intel Core Duo Processor and Core 2 Duo Processor in different products.
For the full story, email firstname.lastname@example.org, please metnion the heading.