A dual-core CPU combines two independent processors and their respective caches and cache controllers onto a single silicon chip, or integrated circuit.
The dual-core type of processor falls into the architectural class of a tightly-coupled multiprocessor. International Business Machines (IBM)'s POWER4, released in 2000, was the first dual-core microprocessor on the market.
Mainly two technologies are used in dual core processors, they are SMP (symmetric multi-Processing) and Hyper Threading.
Proximity of two CPU cores on the same die have the advantage that the cache coherency circuitry can operate at a much higher clock rate than is possible if the signals have to travel off-chip, so combining equivalent CPUs on a single die significantly improves the performance of cache snoop operations.
A dual-core processor uses slightly less power than two coupled single-core processors, principally because of the increased power required to drive signals external to the chip and because the smaller silicon process geometry allows the cores to operate at lower voltages.
A dual-core CPU combines two independent processors and their respective caches and cache controllers onto a single silicon chip, or integrated circuit. IBM's POWER4 was the first microprocessor to incorporate 2-cores on a single die. Various dual-core CPUs are being developed by companies such as Motorola, Intel and AMD, and began to appear in consumer products in 2005. Dual-core CPU technology first became a practical viability in 2001 as 180-nm CMOS process technology became feasible for volume production. At this size, multiple copies of the largest microprocessor architectures could be incorporated onto a single production die. (Alternative uses of this newly available "real estate" include widening the bus and internal registers of existing CPU cores, or incorporating more high-speed cache memory on-chip.) Dual CPU Core Chip
CPU Cwe CPU O
Bus IntBffac* and Li Catiws
Conceptual diagram of a dual-core chip, with CPU-local Level 1 caches, and shared, on-chip Level 2 caches.
2. Multi-Core Processor Architecture
Explained most simply, multi-core processor architecture entails silicon design engineers placing two or more PentiumÃ‚Â® processor-based "execution cores," or computational engines, within a single processor. This multi-core processor plugs directly into a single processor socket, but the operating system perceives each of its execution cores as a discrete logical processor, with all the associated execution resources.
The idea behind this implementation of the chip's internal architecture is in essence a "divide and conquer" strategy. In other words, by divvying up the computational work performed by the single Pentium microprocessor core in traditional microprocessors and spreading it over multiple execution cores, a multi-core processor can perform more work within a given clock cycle. Thus, it is designed to deliver a better overall user experience. To enable this improvement, the software running on the platform must be written such that it can spread its workload across multiple execution cores. This functionality is called thread-level parallelism or "threading," and applications and operating systems (such as Microsoft Windows* XP) that are written to support it are referred to as "threaded" or "multi-threaded."
A processor equipped with thread-level parallelism can execute completely separate threads of code. This can mean one thread running from an application and a second thread running from an operating system, or parallel threads running from within a single application. (Multimedia applications are especially conducive to thread-level parallelism because many of their operations can run in parallel.)
As software developers continue to design more threaded applications that capitalize on this architecture, multi-core processors can be expected to provide new and innovative benefits for PC users, at home and at work. Multi-core capability can also enhance the user experience in multitasking environments, namely, where a number of foreground applications run concurrently with a number of background applications such as virus protection and security, wireless, management, compression, encryption and synchronization.
Like other hardware-enhanced threaded capabilities advanced at Intel, multi-core capability reflects a shift to parallel processingâ€a concept originally conceived in the supercomputing world. For example, Hyper-Threading Technology (HT Technology), introduced by Intel in 2002 enables processors to execute tasks in parallel by weaving together multiple "threads" in a single-core processor. But whereas HT Technology is limited to a single core's using existing execution resources more efficiently to better enable threading, multi-core capability provides two or more complete sets of execution resources to increase compute throughput.
In a technical nutshell, Intel believes multi-core processing could support several key capabilities that will enhanZce the user experience, including the number of PC tasks a user can do at one time, do multiple bandwidth-intensive activities and increase the number of users utilizing the same PC.
3. Technologies used in dual core processors
Mainly two technologies are used in dual core processors, they are SMP (symmetric multi-Processing) and Hyper Threading.
3.1 SMP (Symmetric Multi-Processing)
SMP is the most common approach to creating a multi-processor system, in which two or more separate processors work together on the same motherboard. The processors co-ordinate and share information through the system bus, and the processors arbitrate the workload amongst themselves with the help of the motherboard chipset and the operating system.
The OS treats both processors more or less equally, assigning work as needed. Both AMD and Intel's new dual-core chips can be considered SMP capable (internally). AMD's dual-core Opteron server processors can be linked to other dual-core chips externally also, but this capability is not present in either company's desktop dual-core lines.
The major limitations of SMP have to do with software and operating system support. Many operating systems (such as Windows XP Home) are not SMP capable and will not make use of the second physical processor. Also, most modern programs are single-threaded, meaning that there is only ever one current set of linked instructions and data for them. This means that only one processor can effectively work on them at a time. Multi-threaded programs do exist, and can take better advantage of the potential power of dual- or multi-CPU configurations, but are not as common as we might like. No other current mainstream desktop processors are SMP capable, as Intel and AMD tend to restrict cutting edge technologies to the higher-end server processors such as the Opteron and Xeon. In the past though, mainstream processors have been SMP capable, most notably the later Intel Pentium 3 processors.
3.2 Highway to Hyperthreading
Hyperthreading was Intel's pre-emptive take on multi-core CPUs. The company cloned the front end of its high-end Pentium 4 CPUs, allowing the Pentium 4-HT to begin two operations at once. Once in process, the twin operation 'threads' both share the same set of execution resources, but one thread can take advantage of sections left idle by the other. The idea of Hyperthreading is to double the amount of activity in the chip in order to reduce the problem of 'missed' memory cache requests slowing down the operation of the processor. It also theoretically ensures that less of the processor's resources will be left idle at any given time.
While Hyperthreaded CPUs appear as two logical processors to most operating systems, they are not comparable with true dual-core CPUs since each parallel pair of threads being worked on share the same execution pipeline and same set of L1 and L2 cache memory. Essentially, Hyperthreading is smoke-and-mirrors multitasking, since a single Hyperthreaded processor cannot actually perform two identical actions at the same time.
Hyperthreading does speed up certain operations which would be multiÃ‚Â¬processor capable, but never as much as a true multi-processor system, dual core or not.
One of Intel's new dual-core chips, the higher-end Pentium Extreme Edition 840 processor, also support Hyperthreading within each core, meaning that to an operating system it would appear as four logical processors on a single die. How this will work out remains to be seen.
4. Two Chips on One Die... Why
So why are both Intel and AMD suddenly peddling dual-core pushcarts so quickly down the aisle
Several reasons; first of all; competition, competition, competition. As we will explore later in more detail, AMD built the potential for dual-core capability into its 64-bit processors right from the start. The necessary I/O structure for the second core already exists, even on single core chips. Neither company can afford to let the other get much of an edge, and AMD has already stolen way too much attention for Intel's comfort with its incredibly successful line of 64-bit processors. It is imperative for Intel to launch a 'pre-emptive strike' and get its own dual-core technology to market quickly, lest marketshare flutter away. As for why dual core processors are being developed in the first place, read on to reason number three.
Secondly, performance. Certain 'multi-threaded' applications can already benefit greatly by allowing more than one processor to work on them at once. Dual processor systems also gain from a general decline in latency. Simply put, while there is no current way to share the current operating system load evenly between two processors, the second processor can step in and keep the system running smoothly while the first is maxed out to 100% burning a CD or encoding a file (or from a software error).
Obviously, if dual-core systems become mainstream, which it looks like they are going to, future operating systems and applications will be designed with the feature in mind, leading to better functionality down the road. Thirdly, and less obviously, AMD and Intel are desperate. Both companies have run into barriers when it comes to increasing the raw speed of processors, or decreasing the die size. Until these roadblocks are cleared or until the general buying public understands that GHz does not directly translate to performance, both companies will be scrambling to discover any new improvements that will improve processor performance... without actually boosting core speed. This is why the idea of dual-core processors is now a reality, I'm willing to bet.
5. Commercial examples
International Business Machines (IBM)'s POWER4, released in 2000, was the first dual-core microprocessor on the market. Â¢ IBM's POWER5 dual-core chip is now in production, and the company has a PowerPC 970MP dual-core processor in development. Intel released its dual-core desktop x86 64-bit processors to OEMs on 12 April 2005. Its dual-core Xeon processors, code-named Paxville and Dempsey, are expected to ship to OEMs in the second half of 2005. The company is also currently developing dual-core versions of its Itanium high-end server CPU architecture.
AMD, Intel's chief rival, released its dual-core Opteron server/workstation processors on 22 April 2005, and its dual-core desktop processors, the Athlon 64 X2 family, were released on 31 May 2005. Motorola/Freescale has dual-core ICs based on the PowerPC e600 and e700 cores in development.
6. Architectural class
The dual-core type of processor falls into the architectural class of a tightly-coupled multiprocessor. In this class, a processing unit, with an independent instruction stream executes code from a pool of shared memory. Contention for the memory as a resource is managed by arbitration and by the processing unit specific caches. The localized caches make the architecture viable since modern CPUs are highly optimized to maximize bandwidth to the memory interface. Without them, each CPU would run near 50% efficiency. Multiple caches into the same resource must be managed with a cache coherency protocol. Beyond dual-core processors, there are examples of chips with multiple cores. Such chips include network processors which may have a large number of cores or microengines that may operate independently on different packet processing tasks within a networking application.
7. AMD's Approach to Dual Core
The current form factor of the Athlon 64 processor is very conducive to a dual core design. The fact that the memory controller and hypertransport links are built right into the die of the chip means that supporting a second full processor core is no huge logistical feat either for making the die of the chip or the motherboards it will operate in. This is not the biggest advantage that the Athlon 64 architecture has for dual operation though.
Due to the Northbridge-like provisions that AMD had to add to the Athlon 64 die in order to support the onboard memory controller and hypertransport link, it is possible for the dual cores to communicate with each other inside the processor itself.
While this might seem like an obvious thing, Intel dual-core processors cannot do
this at all (currently). Intel's solution must relay all information over the external
'frontside bus' link that connects the processor to the rest of the system.
AMD dual-core Athlon64 X2 processorss more than double the transistor count
of previous Athlon 64 processors. The Athlon 64 X2 4800+ chip sports 233million
transistors as opposed to the 106 million or so of the Athlon 64 FX-55.
Since the new dual-core chips use the 90nm fabrication method though, overall
chip size has just barely increased. Operating voltage will be 1.35 to 1.4V and
heat output will be just slightly increased over the high-end Athlon FX processors
AMD Athlonâ€žÂ¢ 64X2 Dual-Core Processor Design
Each processor core has its own L1 and L2 cache memory, 128KB for L1, and between 512KB and 1MB of L2, depending on the specific model.
On paper, it really appears that AMD has done its homework. More than that, its engineers appear to have done it months ago when the company first introduced the 64-bit Opteron processor.
The "crossbar switch" that accumulates and distributes address and data transfers from each core to the other core and the rest of the system already had an available connection for a second core.
Where AMD scores major points for paying attention to its user base is with the fact that the first run of dual-core Athlon 64 X2 chips will be compatible with any current Socket 939/940 motherboard, provided the manufacturer updates the BIOS to support the new feature.
Given the havoc that the company wreaked on its users and its bottom line by shifting to Socket 939 so early in the life of the Athlon 64, essentially orphaning Socket 754, this is the kind of good PR that AMD really needs. Here's hoping this is a return to the glory days of Socket A and the huge range of processors that that platform ended up supporting. Selling a dual-core desktop processor as a direct upgrade will be a lot easier than trying to persuade home users to update their motherboards... yet again.
8. Intel Approach to Dual-Core: Glue and Brown Paper
Intel Dual core architecture
Since Intel did not have a nice pre-existing resource space in which to add a second processor core like AMD did, it has been forced to improvise. The Pentium D essentially takes two identical P4 'Prescott' processor dies and sticks 'em together. This has the marked advantage of providing each processor with its own L1 and L2 cache memory.
Unfortunately, Intel's approach also has the marked disadvantage of forcing both processors to communicate through the Northbridge and FSB outside the processor, while AMD's dual-core approach allows the twin cores to exchange information within the processor itself.
Transistor counts for the new chips hit a high of 230million, and the heat output is a hefty 130W for the Pentium Extreme Edition 840 and the fastest Pentium D processors.
Alas, unlike AMD's almost Santa Claus-like decision to keep to the existing Socket 939 platform for the dual-core CPUs, Intel's dual-core solution requires a new pair of supporting chipsets, the Intel 955X and 945P. nVidia's recently released nForce 4 SLI Intel Edition will also support dual-core processors, but this must be added by the manufacturers so early adopters are likely out of luck. What it adds up to is that you are going to have to buy a new motherboard if you want to take advantage of Intel's approach to dual-core processors.
9. Heat and Bandwidth: Enemies of Dual-Core Processors
While everything we've looked at so far has been positive, let's take a look at some issues that may affect the performance of dual-core Athlons and Pentium 4s relative to their single core siblings. Given that everything inside the AMD processor is already adapted for dual-core as we pointed out above, there are surprisingly few possible pitfalls, but we're going to look at a couple. Intel's road isn't quite so straightforward.
Heat is one obvious worry. Single core Athlon 64 processors can crank up a fair bit by themselves, as witnessed by the enormous retail heatsinks they ship with. The same goes for the latest Pentium 4 chips. What's going to happen when you combine two cores capable of giving off that much heat in such a small space Are we going to need mandatory water cooling Apparently not, as AMD defines almost the same thermal envelope for their dual-core processors as for the single core versions. The Intel Dual-core chips give off more heat, but not drastically so.
How is this possible Well there are a few factors to consider: First of all, don't forget that both the AMD and Intel dual-core chips are being produced on the 90nm fabrication process, like the newest single core chips. As always, smaller fab size = less power = relatively less heat.
The second factor to consider when trying to figure out why dual-core processors are not thermal bombs is the slightly slower speed of the planned processors as compared to their single core equivalent. While not a huge difference, 400MHz or so less does make them a little cooler.
Finally, there's the fact that at least one core is going to be running at less than full capacity most of the time.
Bandwidth is a more troubling concern. It's not an enemy of the dual-core processors per se, but more of a limiting factor. Intel has to contend with using a
conventional FSB/Northbridge setup to allow it's dual-core processor to communicate with itself, and even with support for DDR2-667 in the new 955X chipset, this may bog things down. It just doesn't feel like an efficient way to do things.
On the other hand, the AMD dual-core offerings' internal communications abilities are doubtless more efficient, but in some ways unproven. We already know how dual-CPUs talk to each other over a conventional FSB, but AMD's method of in-chip communication has yet to be really tested. Also the 6.4GBps memory bandwidth of the dual-core Athlons is exactly the same as that of their single core bretheren.
One major concern when dual-core processors were first announced was how they would work with operating systems like Windows XP Home, which is limited to one physical processor. Apparently though, Home users do not need to fret, as both AMD and Intel's dual-core chips should work just fine. The operating system will see a single physical chip with two logical cores just as it currently does with Hyperthreading capable Pentium 4 processors. No word on how the Pentium Extreme Edition 840 with it's dual cores AND hyperthreading will work though...
10. Dual Single-Core vs. Single Dual-Core
AMD Opteron Processor design
AMD's Opteron chip is capable of SMP due to its multiple hypertransport links, so which is faster; a single dual-core chip or two single-core chips On paper, dual Opterons should be faster than a single dual-core Opteron at equivalent clock speed for one major reason: Due to the built-in memory controller, each Opteron has exclusive access to its own set of system memory.
The dual-core designs have to share the memory controller, leading to competition for resources that will inevitably drag down comparative
Intel SMP systems do not gain this advantage over dual-core siblings since they already share a single memory controller over the front-side bus of the motherboard. It's difficult to tell whether either design has any performance advantage in Intel's implementation.
The data has a shorter path to travel with the dual-core chips, but not so much as to make a radical difference. Certainly Intel dual-core chips should have a pricing advantage over SMP solutions, especially when you factor in the price premium that dual-socket motherboards demand.
It's time to talk money. At first glance, basic economics suggests that dual-core processors should be more affordable than buying a pair of single core processors. After all, the companies are integrating two cores into a single die, saving manufacturing effort.
Besides, there would be no point in charging extra money for the second core of a dual-core chip; no one would buy it, right Maybe, but let's not forget what dual-core chips have to offer besides convenience. The picture is quite different for Intel as opposed to AMD, so let's run through each company's pricing strategies for these chips.
11. AMD's Dual Core Lineup
As we mentioned, AMD's dual-core desktop processor is going to be known as 'Athlon 64 XZ. These CPUs will be available shortly at initial speeds of 2.2GHz, with only one other speed, 2.4GHz currently expected for release. Besides speed, L2 cache memory will differentiate the various versions of the processor, with some models having 512KB and some having a full 1MB cache. Let's look at the names and the feature breakdown. As you can see, the initial offering will be broken down into Toledo' core chips with 1MB of L2 memory per core and 'Manchester' core chips with 512KB.
Athlon 64 X2 4800+: (Toledo Core) 2.4GHz, 1MB 12 cache memory $1001 Athlon 64 X2 4600+: (Manchester core) 2.4GHz, 512KB 12 cache memory $803 Athlon 64 X2 4400+: (Toledo core) 2.2GHz, 1MB 12 cache memory $581 Athlon 64 X2 4200+: (Manchester core) 2.2GHz, 512KB 12 cache memory $537 As you can see, AMD's introductory dual-core prices are roughly twice that of its single-core chips, especially at the lower end. This seems reasonable, except for one thing; Intel has no such price doubling plans.
12. Intel's Dual Core Lineup
Like AMD, Intel is going to split its dual-core desktop offerings into two lines, though there will be more of a brand distinction between the two than we see in AMD's lineup. First up (and most expensive) will be the Pentium 840EE Extreme Edition Dual core processor (note that Intel have dropped the '4' from the title), clocked at 3.2GHz and featuring 1MB of L2 cache for each core. It will also feature hyperthreading support, allowing it to execute up to four threads at once. It is currently available from some retailers, tilting the scales at a laughable $1100 USD
Intel Dual-Coro Processor wtth HT TeehÃ‚Â»Ã‚Â»o1ogy
Following that will be the launch of the 'Pentium D' line of processors, still with 1MB of 12 cache per core, running from 2.8GHz to 3.2GHz in speed, but without hyperthreading. Intel's prices for these chips look to be much more aggressive than the somewhat ridiculous cost of the high-end dual cores from
both Intel and AMD. The chips will start in the mid-$200s shading up to the mid $500s for the 3.2GHz model. All processors listed here support Intel's EMT64 64-bit instructions.
So what we've got from Intel looks like this:
Pentium Extreme Edition 840: 3.2GHz, 1MB 12 cache memory, Hyperthreading $1100
Pentium D: 3.2GHz, 1MB 12 cache memory, $530 Pentium D: 3.0GHz, 1MB 12 cache memory, $320 Pentium D: 2.8GHz, 1MB 12 cache memory, $240
If the projected prices for the Pentium D chips hold true, AMD had better hope that its dual-core Athlon64 X2 has a considerable performance advantage, otherwise the company's hard-won processor advantage could be lost. Even if AMD blows Intel away in performance, the chip giant will still own the 'low end' dual-core market by default. This could get interesting.
13. Development motivation
13.1 Technical pressures
As CMOS process technologies continue to shrink, the high end constraints on the complexity that can be placed on a single die move back. In terms of CPU designs, the choice becomes adding more functions to the device (e.g. an Ethernet controller, memory controller, or high-speed CPU cache), or adding complexity to increase CPU throughput. Generally speaking, shrinking the features on the IC also means that they can run at lower power and at a higher clock rate.
Various potential architectures contend for the additional "real estate" on the die. One option is to widen the registers and/or the bus interface of an existing processor architecture. Widening the bus interface alone leads to superscalar processor architectures, and widening both usually requires new programming models. Other options include including multiple levels of memory cache, and developing system-on-a-chip solutions.
13.2 Commercial incentives
Several business motives drive the development of dual-core architectures. Since multiple-CPU SMP designs have been long implemented using discrete CPUs, the issues regarding implementing the architecture and supporting it in software are well known. Additionally, utilizing a proven processing core design (e.g. Freescale's e700 core) without architectural changes reduces design risk significantly. Finally, the connotations of the terminology "dual-core" (and other multiples) lends itself to marketing efforts.
Additionally, for general-purpose processors, much of the motivation for dual-core processors comes from the increasing difficulty of improving processor performance by increasing the operating frequency (frequency-scaling). In order to continue delivering regular performance improvements for general-purpose processors, manufacturers such as Intel have turned to dual-core designs, sacrificing lower manufacturing costs for higher performance in some applications and systems.
It should be noted that while dual-core architectures are being developed, so are the alternatives. An especially strong contender for established markets is to integrate more peripheral functions into the chip.
Proximity of two CPU cores on the same die have the advantage that the cache coherency circuitry can operate at a much higher clock rate than is possible if the signals have to travel off-chip, so combining equivalent CPUs on a single die significantly improves the performance of cache snoop operations. Assuming that the die can fit into the package, physically, the dual-core CPU designs require much less PCB space than multi-chip SMP designs. A dual-core processor uses slightly less power than two coupled single-core processors, principally because of the increased power required to drive signals external to the chip and because the smaller silicon process geometry allows the cores to operate at lower voltages.
In terms of competing technologies for the available silicon die area, the dual-core design can make use of proven CPU core library designs and produce a product with lower risk of design error than devising a new wider core design. Also, adding more cache suffers from diminishing returns.
Dual-core processors require operating system (OS) support to make optimal use of the second computing resource. Also, making optimal use of multiprocessing in a desktop context requires application software support. The higher integration of the dual-core chip drives the production yields down and are more difficult to manage thermally than lower density single-chip designs.
From an architectural point of view, ultimately, single CPU designs may make better use of the silicon surface area than multiprocessing cores, so a development commitment to this architecture may carry the risk of obsolescence. Scaling efficiency is largely dependent on the application or problem set. For example, applications that require processing large amounts of data with low computer-overhead algorithms may find this architecture has an I/O bottleneck, underutilizing the device.
If a dual-core processor has only 1 memory bus (which is often the case) the available memory bandwidth per core is half the one available in a dual-processor mono-core system.
Another issue that has surfaced in recent business development is the controversy over whether dual core processors should be treated as two separate CPUs for software licensing requirements. Typically enterprise server software is licensed per processor, and some software manufacturers feel that dual core processors, while a single CPU, should be treated as two processors and the customer should be charged for two licenses - one for each core. This has been challenged by some since not all dual core processor systems are running Operating Systems that can support the added dual core functionality. This remains an unresolved and thorny issue for software companies and customers.
This paper gives an overview of the dual-core processor issues. A dual-core CPU combines two independent processors and their respective caches and cache controllers onto a single silicon chip, or integrated circuit.Benefits of dual core processor are more performance due to parallelism and reduced power consumption. In future due to the impact of dual core processors there will be advancements in PC security and virtualization technologies and increased utility of home PC's.
ml ft. Â¢ J
' '. http://www.pcstats.com
1. Introduction 1
2. Multi-Core Processor Architecture 2
3. Technologies used in dual core processors 4
3.1. SMP (Symmetric Multi-Processing) 4
3.2. Highway to Hyperthreading 5
4. Two Chips on One Die... Why 6
5. Commercial examples 7
6. Architectural class 8
7. AMD's Approach to Dual Core 8
8. Intel Approach to Dual-Core: Glue and Brown Paper 11
9. Heat and Bandwidth: Enemies of Dual-Core Processors 13
10. Dual Single-Core vs. Single Dual-Core 15
11. AMD's Dual Core Lineup 17
12. Intel's Dual Core Lineup , 18
13. Development motivation 20
14. Advantages 22
15. Disadvantages 23
16. Conclusion 24
17. References 25