Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Under the Hood of the Xbox 360

Posted by ScuttleMonkey on Mon Dec 12, 2005 03:09 PM
from the love-the-smell-of-solder-in-the-morning dept.
An anonymous reader writes "IBM DeveloperWorks is running a behind the design story for the making of the Xbox 360. The 360 has but a single chip with 165 million transistors for it's CPU " From the article: "This chip is in fact a three-way symmetric multiprocessor design. The three PowerPC cores are identical, except that they are physically reflected through the X and Y axis. Each of the CPU cores is a specialized PowerPC chip with a VMX128 extension related to (and partially compatible with) the VMX instructions in the G4 and G5 CPUs. The three CPU cores share a 1MB Level2 cache. Each processor has 32KB each of data and instruction Level1 cache. The chip's front-side bus/physical interface has a 21.6GB/second bandwidth, and runs at 5.4GHz."
+ -
story
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • by MarcoAtWork (28889) on Monday December 12 2005, @03:12PM (#14241000)
    I haven't been doing microelectronics since my university days (over 10 years ago) and the block named "testing/debug" intrigued me quite a bit: exactly what test/debug functions do you put on CPUs nowadays? do they contain burned in test cases? some sort of programmable logic to get access to internal CPU states? I'd definitely be interested in learning more about this.
    • by Anonymous Coward on Monday December 12 2005, @03:26PM (#14241126)
      This is probably a JTAG block. Depending on what it's built for, you get:

      - instruction single-step
      - register and memory peek/poke
      - control suitable for burning on- and off-chip flash/eeprom
      - trace buffer that contains the most recently-executed opcodes
      - breakpoints
      - access to profiling and instrumentation registers

      JTAG is a serial protocol that runs much, much slower than the core -- but it's an extremely nice way of getting into a running chip and poking around.
    • by Anonymous Coward on Monday December 12 2005, @03:27PM (#14241135)
      It's probably the JTAG debug logic. Most modern CPUs use a JTAG port (full-duplex, multi-device serial port) to provide access to internal CPU state, as well as providing hooks for starting and stopping the processor.

      JTAG is a hardware test standard, but chip vendors define their own extensions to it to provide software debug hooks. Most PowerPC chips use what's called the Common On-Chip Processor (COP), which is controlled through the JTAG port. The specific details of COP and its implementation on each chip is proprietary, and usually only available to IBM, Freescale, and a few select tool vendors with NDAs. Here's a link to some more information on PowerPC COP:

      http://www.elecdesign.com/Articles/ArticleID/3675/ 3675.html [elecdesign.com]
        • by Anonymous Coward
          Not a chance :) The COP interfaces contain bit vectors that are thousands of bits long, and only a handful of those bits are actually safe/useful to interact with for debugging the chip. Thats where the NDAs come in.
  • Tiny cache... (Score:4, Interesting)

    by keesh (202812) on Monday December 12 2005, @03:16PM (#14241039) Homepage
    What's the deal with the tiny cache? My ten year old HyperSparc has more cache than that... You'd think that when dealing with high throughput graphics applications, a larger cache would make far more of a difference than a few hundred MHz either way.
    • Re:Tiny cache... (Score:5, Insightful)

      by realmolo (574068) on Monday December 12 2005, @03:23PM (#14241104)
      Actually, no.

      A big cache is good when you are dealing with programs that could access ANY data at ANY time (or you're running multiple programs). With games, that doesn't really happen. Game code is sort of "linear", and you're only running one at a time.. So the cache can be filled with what needs to be there, and nothing else.

        • Re:Tiny cache... (Score:5, Insightful)

          by Keeper (56691) on Monday December 12 2005, @05:11PM (#14242034)
          Who wouldn't? Wouldn't you like a 100mb cache? Hell, wouldn't you like all of main ram to actually be as fast as an L2 cache?

          This is a game console, not a multi-tasking general purpose PC. This is reflected in both the power a programer has over the hardware, and it is reflected in the fact it depends on the programmer to make up for cost saving measures implemented in the hardware.

          You're thinking about thread scheduling the way a general purpose PC would schedule threads. It doesn't work that way in a game system. When talking about threads on a game console, we're talking about hardware threads. The programmer decides what core runs what logic, when it runs that logic; there aren't any context switches, and threads don't "change" cores when running.

          The cache design on this chip is actually quite cool. If you're only going to use a piece of data once (or infrequently), you can instruct the processor to not store the data in the L2 cache (leaving data that you're using more freqently in the cache). Additionally, the L1 and L2 cache can hold separate data, and a load into the L1 cache doesn't require a storing that data into the L2 cache. When writing data out to main memory, a program can instruct the processor not to store it in the cache. Software can also reserve chunks of cache for whatever purpose it wants. Finally, a direct link between the CPU and the GPU can be established where the GPU reads data directly off of the L2 cache as the CPU generates it.

          These abilitys make it possible to utilize L2 cache better than you would with any general purpose PC. However, it requires more thinking and more effort to do so. That's the price/performance tradeoff you get.
    • by EXTomar (78739) on Monday December 12 2005, @03:45PM (#14241274)
      The PS2 Emotion Engine has the same design philosophy: choosing to do small memory/cache in favor for very wide bandwidth. It makes for some interesting programming juggling and kung-fu since the data comes straight from memory dumped to the graphics so nothing is cached. The results speak for themselves since the PS2 is the oldest and the most dated performance the fact that the performance is extremely dynamic and probably *still not maxed*. People are still pulling tricks that no one could predict the PS2 to do. I suspect we wouldn't have games on the PS2 like GT4 or the beautiful Shadow of the Collosius if it had been made with more cache yet small bandwidth.
      • Yes, but the 4MB VRAM of the PS2 have made life much more difficult than it should have been. Even a small growth in that area and/or texture compression could have drastically improved performance because during most of the later life cycle of PS2 developers were constantly juggling bandwidth between textures and polygons. This let to both, washed out (because low-res) textures and -to a lesser degree- blocky models. Were it easier to store textures where they are needed the PS2 probably could give GC and
    • Not for games (Score:5, Informative)

      by Andy Dodd (701) <atd7 AT cornell DOT edu> on Monday December 12 2005, @04:10PM (#14241536) Homepage
      Games often have far smaller cache requirements than many other applications, and as a result, it is preferable to go with a higher speed cache and higher CPU speed than a slower but larger cache/CPU.

      The Celeron in the 300A era are one of the best examples of this. They had half the cache of their Pentium III counterparts, BUT the P3 cache ran at half the CPU speed while the Celeron cache ran at full speed. The Celeron's performance was crap despite the faster cache for many applications (including server machines and most office applications) due to its smaller cache, but gamers discovered that for games, the situation was exactly the opposite - clock for clock the Celeron was significantly faster than the P3 due to the fact that most games in that era could fit almost all of their rendering pipeline within even the Celeron's small cache. Rare cache misses and twice the cache speed = much better performance. It also happened that that on-die cache allowed the Celerons to be overclocked like crazy, a significant added bonus. :)

      The Xbox 360's CPU takes the whole idea much farther. While most desktop CPUs are designed to perform well over the widest range of situations (with some tradeoffs always being evident - note that Athlons eat P4s for lunch in many cases such as games, while Athlons do actually lose most of their advantages in performance per clock cycle when performing video compression and decompression because most video codecs don't have significant amounts of branching resulting in pipeline stalls from branch mispredictions.) The Xbox 360 CPU goes a step further by optimizing for one thing and one thing only - gaming. Instruction reordering which is critical in most desktop CPUs turns out to be not as necessary for gaming (specifically graphics rendering), and as a result the 360 drops instruction reordering capability completely in favor of having multiple cores at a low cost. (Instruction scheduling takes a LOT of die space in modern CPUs compared to the size of the rest of the CPU core.)
  • by Nom du Keyboard (633989) on Monday December 12 2005, @03:20PM (#14241072)
    A year ago this article would have been fascinating. Now it hardly seems to contribute anything new -- unless you've been sleeping for a year.
  • A beowulf Heater of these... :)
  • by mkcmkc (197982) on Monday December 12 2005, @03:33PM (#14241184)
    The three PowerPC cores are identical, except that they are physically reflected through the X and Y axis.

    Must be this "reversible computing" I keep hearing about...

  • by Kaenneth (82978) on Monday December 12 2005, @03:38PM (#14241220) Homepage Journal
    Little endian, or Big endian?
  • Dear Apple (Score:5, Interesting)

    by Flying pig (925874) on Monday December 12 2005, @04:10PM (#14241532)
    You suck, love, IBM

    Seriously, though, these are fascinating little beasts. It looks as if the concept has its roots in the Transputer, which also relied on fast and narrow point to point external links. When I first read the blurb I guessed from the description that there were 4 cores per chip and the bad ones were disabled to get the yield up, but clearly the yield is much much better than that. However, anybody silly enough to think about overclocking will need to note that the working CPU voltage is hard coded; it looks like, to get the yield at the clock speed, each device has to be individually tuned. Which suggests that the tolerances for reliable functioning are tight. Perhaps the overall error rate is not good enough for a truly general purpose computer which needs to be able to tolerate a range of operating conditions without significant error. Which doesn't suggest a range of motherboards and retail boxed processors any time soon. Just like Apple, in fact. This reminds me of good old ECL based computers (whose CPU voltage had to be adjusted on the fly for reliable operation rather than set up once for all, but I'm sure you take the point).

    It's perhaps a pity that the design teams for the Mac Mini and the XBox couldn't be locked up in a development lab with a progressively increasing caffeine level in the coffee until they create the hybrid that would really be the future of home computing. Apple's thermal management and sound level control, IBMs obvious chip development capability, and Microsoft's willingness to spend some of its cash pile would be a formidable combination. The trouble is, you'd probably end up with Apple's's ability to design chips, IBMs willingness to lose money, and Microsoft's thermal management and general aesthetics.

  • by Bilbo (7015) on Monday December 12 2005, @04:19PM (#14241623) Homepage
    I'm wondering, how much work is required to hack into the box, not necessarily to run illegally copied games, but to run Linux or something else? I know there was a lot of talk about hacking into the original Xbox, mostly because the internal guts were primarily OTS PC components. The 360 sounds like a lot more custom work. However, being able to run a triple-core Power box would be pretty interesting, even if it was tweaked out for gaming rather than general purpose programming.
  • by hyperbotfly (934309) on Monday December 12 2005, @04:37PM (#14241764)
    Hate to burst alot of bubbles, BUT:
    The Xenon CPU IS NOT the same as 3 G5's all on one chip! Read the arstechnica article here:

    http://arstechnica.com/articles/paedia/cpu/xbox360 -2.ars/2 [arstechnica.com]

    Basically it says: "The basic idea behind both Cell and Xenon is to make the execution core less complex by stripping out hardware that's intended to optimize instruction scheduling at runtime. Neither the Xenon nor the Cell have an instruction window, which means that these two processor designs largely forget about instruction-level parallelism. Instead, instructions pass through the processor in the order in which they're fetched, with the twist that two adjacent, non-dependent instructions are executed in parallel where possible."

    This means that standard PPC code (OS X, etc) WILL NOT RUN on this. This is also the reason that IBM is selling these things at only $106 a pop to M$. Have you checked the prices for SINGLE CORE G5s for Apple? Their like $600-700 a piece! So, I am guessing that stripping these down makes them much easier and therefore faster and cheaper to mass produce, and therefore the price difference.

    Anyway, there are reports that only one core is availble to intitial game developers, and one of the cores is strictly for M$ bullshit content protection TC such as the hypervisor, etc.

    Not to mention from the article:

    Microsoft and IBM engineers worked together during the definition phase of the project to specify a design to satisfy the constraints of a mass-produced consumer device

    Sounds like a shitload of TC shit build right into the chip, so I am NOT holding my breath for linux to be ported to this (not that I wouldn't be thrilled to see this). Cetainly not when the port to STI Cell architecture has been under dev for what, over a year? Damn, can't wait for PS3 release.
    • Wrong! (Score:4, Informative)

      by Henriok (6762) on Monday December 12 2005, @05:11PM (#14242033)
      This is a fully PowerPC compliant chip. Make no mistake. It WILL run standard PowerPC code, as will Cell BE. From where did you get that the singe core G5 costs 5-600 dollars? An iMac G5 (singe core PowerPC 970FX costs $1300 and that's a complete computer with a GPU, harddrive, DVD-burner, webcam, 512 MB RAM, an 17" TFT, package, shipping, advetising and about 30% margin.
      The cost of a processor is directly related to the die size and since the size of the Xenon is larger than the dual core G5 (about 130 million transisotrs compared to 165 million in the Xenon) there's a good chance that Xenon is actually more expensive than the PowerPC 970MP to manufacture.

      Linux will run just fine on an Xbox 360 if one would fins a way around the DRM stuff. OSX too if Apple would want to. Same goes with the PS3. Hell.. Sony's boss even said so!
        • Re:Wrong! (Score:4, Insightful)

          by Keeper (56691) on Monday December 12 2005, @06:17PM (#14242526)
          An inability to execute instructions out of order does not prevent PPC code from running, nor is it crippling. Additionally, having an instruction window is rather pointless when instructions can't be executed out of order.

          You don't need these things with properly compiled code. But that's the trick; you can't take poorly compiled code and expect it to be performant.

          Traditionally general purpose CPU's need the capability to execute out of order because they're running code that wasn't written for their current design -- they have to run code designed to run on x previous iterations of the processor. And traditionally, CPU manufacturers like to tout how their new processor runs x benchmark 50 times faster -- and they can't do that without out of order execution.
    • Anyway, there are reports that only one core is availble to intitial game developers, and one of the cores is strictly for M$ bullshit content protection TC such as the hypervisor, etc.

      "Reports", yeah, but this isn't true. Several of the lanuch games were multi-clore, including Kameo and Perfect Dark. Numerous developers have commented on this. And as far as I know, Hypervisor on IBM systems has nothing to do with content protection and it's difficult to see why it would be implemented here.

      Sounds like a sh
    • by displaced80 (660282) on Monday December 12 2005, @03:17PM (#14241042)
      PowerPC's mainly an IBM-designed and promoted architecture, borne from the Apple-IBM-Motorola alliance.

      Apple are simply one of IBM and Motorola's (now Freescale) customers.
    • I thought Power PC was the mac? Why did Microsoft pick apple CPU's for their Xbox? Is Intel falling out of favor?

      The Power architecture is an IBM design intended for use in their large server machines. About the time that Motorola was struggling with producing better/faster 68000 chips, IBM designed a cut-down version of the Power chip called "PowerPC". Apple adopted PowerPC from IBM, thus leaving Motorola behind. However, Motorola realized that they were losing big business and licensed the PowerPC archit
    • by Blackforge (8018) on Monday December 12 2005, @03:24PM (#14241113)
      Microsoft went to ATI and IBM in order to "own" the designs for the graphics/processor chips. This way MS is able to get the parts fabbed out without having to get approval from ATI/IBM. (This is from memory of what I've read in the past). The CPU and graphics/bridge design in the XBox are owned and by Intel/Nvidia (respectively). MS had to buy the parts from them, which costs them more in the long run than being able to get their own produced.

      Correct me if I'm wrong...
    • by generic-man (33649) * on Monday December 12 2005, @03:26PM (#14241129) Homepage Journal
      The PlayStation 3 will be made by Sony, a company which distributes software that renders a personal computer quite unstable and open to attack by malfeasant users from across the Internet.

      The Xbox 360, on the other hand, is made by Microsoft.

      The choice is yours.
      • by Lord Haha (753617) on Monday December 12 2005, @04:15PM (#14241582) Homepage
        You forgot the most interesting option...

        - The Nintendo Revolution

        I don't want to sound like too much of a fanboy, but what can these consoles really give me that my PC can't? I'd rather have a console thats sole focus isn't trying to outpace my PC in terms of graphics... but to push the limits with new controllers, unique games and not costing me my 1st born child or my left arm to acquire.
      • by sedyn (880034) on Monday December 12 2005, @04:23PM (#14241654)
        "The choice is yours."

        Nintendo, I choose you!

        </pokemon reference>
    • "PS3 will have better graphical performance, up to 2x. High definition. Blu-ray. Up to 7 wireless controllers - those actually mean something. Xbox 360, will just have improved graphics over the original Xbox."

      Who says the PS3 will have two times the graphical performace? Speculation does, perhaps.

      The Xbox 360 is high definition out of the box.

      The Xbox 360 does NOT use proprietary disc formats that can, at the vendor or manufacturers will, brick your box.

      WHO NEEDS SEVEN CONTROLLERS ON ONE BOX!? Jesus. What
        • Agreed, the price is a big stopper for some people and, I also agree, there are not a ton of must-have games on the Xbox 360.

          However, it does have Perfect Dark: Zero, Project Gotham 3, Kameo (don't knock it 'till you try it) and soon, DOA4 and Battlefield.

          Battlefield + Xbox Live = Heaven.

          Granted, I don't know a whole lot about what games are coming soon to the Xbox 360 for lack of time, but by the time the Playstation 3 comes out, Xbox 360 will have a lot more games by great developers and I'm going to vent
    • by hal2814 (725639) on Monday December 12 2005, @03:34PM (#14241189)
      Much like Duffman, Sony promises lots of things. There were a lot of features that were supposed to be available on the PS2 that just never ended up in the final system. Not wanting a 360 because it's not that much an improvement over the current XBox is good reasoning. Not wanting a 360 because you just bought a new console a couple of years ago is good reasoning. Not wanting a 360 because of all the things Sony claims will be on the PS3 is just silly. We don't know the "Top 10 reasons for a PS3" because we don't know exactly what the PS3 is yet.

      Also, while the Revolution's controller does pose some unique possibilities for gameplay, it's only a controller. Any of the modern gaming consoles could implement such a controller. If it's that big a deal, expect MS and Sony to have their own versions by the end of 2006.
      • by Oliver Wendell Jones (158103) on Monday December 12 2005, @03:32PM (#14241174)
        so wait... we've got a Microsoft operating system (whatever the Xbox 360 OS is) running on what is commonly considered Apple-type processors *and* we'll soon have an Apple OS running on top of what is commonly considered Microsoft-type processors?

        What's next, dogs and cats living together?
    • by digidave (259925) on Monday December 12 2005, @03:44PM (#14241266)
      How is it a miracle when this is exactly what's been happening with consoles for many years?

      NES looked better than nearly any computer of its day. Ditto Genesis and SNES. Playstation and N64 packed an incredible amount of power into a cheap bundle. Remember the hype about PS2's Emotion Engine? There were rumors that exporting it would be restricted because it was going to be classified as a super computer. People were saying Iraq was going to use it to guide missiles. Xbox literally was a cheap PC, but gave more bang for the buck than your average beige box.

      Consoles do this by taking the right shortcuts. They have a very focused performance target for very specific tasks. No need to add anything more than the minimum. Plus, they sell more than nearly any OEM PC maker so they get good prices on the parts.
    • Re:Flaimbait (Score:5, Insightful)

      by external400kdiskette (930221) on Monday December 12 2005, @03:55PM (#14241365)
      Anyone who thinks it crashes regularly or that more than 1% of units are overheating is simply a moron. A lot of people here seem to have a fixated fantasy that they are so desperate to believe that they ignore the facts. The fantasy basically consists of that MS has rolled out an overheating worthless machine that when not overheating 95% of the time is crashing. Get real, I'd imagine the failure rates for units are about the same for any piece of consumer electronics.
      • Not that I really care but I've read that the failure rate is 2% to 5% with the return rate at 1%.
        It could be that the return rate is what Microsoft's official statement.
        If there is a manufactured shortage of units, it could be that Joe sixpack is waiting for Wal*Mart to restock before returning their overheating Xbox for a newer one.

        The news reports that they are out of the console but I haven't looked in the stores to verify.
        • Re:Flaimbait (Score:3, Informative)

          A 5% failure rate for an "appliance" type consumer electronics device is generally considered acceptable in the industry.

          The kind of "stress test" you propose would be unprecidented in the history of consumer electronics. It would also be the easiest way to make sure your production line is as inefficient as possible (think about the scale of what it is you are proposing). Finally, it still won't catch problems that are the result of damage occuring during transit.

          In a production line you depend on your s
        • Re:Flaimbait (Score:3, Interesting)

          You don't accept them. You utilize the warranty and get it fixed.

          It isn't reasonable to expect every unit to roll off the line and make it into your home flawless. Nothing would ever be make it out of the factory if that was the requirement.

          It is reasonable to expect a company to stand by their product if you get one with a defect. By all accounts, that is happening; replacements arriving in 5 days, with everything handled via overnight shipping.

          Justifying what I'm seeing here as "slashdot loves to bash
    • We are sorry to report that your XBox 360 crashed during the final race online of the world online championship of World Rally Cup 2006 V3. Would you like to play Patience, Minesweeper or Reboot?
    • Unless of course you don't care about any of that stuff. I own both a PS2 and an Xbox, and the Xbox gathers dust simply because the PS2 delivers a lot more quality single-player games than the Xbox does. I had a Live subscription for a while and didn't use it that much. I guess the appeal of having 12 year olds tell me how teh ghey you are is lost on some people.
    • I am amazed at the gigantic level of fanboyness on both sides. Lets face it. The x-box was supposed to have the higher tech and the live advantage and it bombed. Nintendo and Microsoft were left fighting for the number two spot while Sony was lightyears ahead. Some people even claim that Nintendo is the real winner as it was the only one to make a profit on both hardware and software (I got no clue wether this is true or not but it would explain why they are still in business and Sony is struggling economic
      • Bungie IS NOT a big name. They got 1 game and that is it.

        One game can make you a big name if that game is big enough. Ask Id.

        Bungie has never been prolific, but they have been at the forefront of science-fiction based first-person-shooter titles from the very beginning, with the Marathon series on the Mac (which was comparable to Doom graphically, with a better plot). The two Halo games have been widely acclaimed as console FPS milestones. There is reportedly a Halo movie coming out.

        I think that qualifies
    • by SmallFurryCreature (593017) on Monday December 12 2005, @05:02PM (#14241980) Journal
      First of it has eight cores with 1 central core wich is the boss and who runs the "application" and wich then hands out tasks to the other cores. The remaining 7 cores are said to have multimedia specific capabilties wich I think means that the master core does not and is perhaps more a regular cpu optimized for the controlling of the others.

      So the big difference is that the 360 is more like current multicore PC's while the PS3 seems to lean more towards a cluster setup like openmosix.

      As to wich is better? Well look at recent PS2 games. They show such graphical improvement that it might be true that PS2 still has untapped capabilties. The X-box on the other hand is pretty much at its limit. This was clear by developers complaining the PS2 was hard to develop for and the x-box was easy. Same with the next generation.

      Given that the cores have the same basic design (64bit power) and Sony claims the same or even higher clockspeeds it would be easy to assume that 7+1 core > then 3 cores. I also seen larger cache sizes being claimed and even faster bus speeds. Is it all true? And even if it is will game developers succeed in tapping those resources? And even if they do, will that result in fun games?

      Remember that currently the fast majority of games do not take advantage of dual core PC's even hyperthreading is rarely supported worse having it on can sometimes degrade performance. Now imagine having to write your code in such a way that it can be split across 7 processors. OR is that central core in te Cell processor capable of splitting up non- threaded applications? (Just random quesswork). After all it is supposed to be become more then the current PS3 chip it is supposed to be included in the next generation of TV's and other entertainment products.

      That would be a huge advancement. The holy grail of grid computing (the cell is supposed to be like that) were you no longer have to worry about the specifics of your enviroment but can just run your code and the system will take care of it.

      What I find a far more intresting proposition that with the PS3 supposedly so powerfull yet also so similar to the 360 is that it might just be possible to run 360 games on the PS3.

      As for using consoles for number work. Already being done with both systems. They are so cheap yet so powerfull that all you have to do is wait for someone to break them open. Same as PC GPU's are being used for number crunching work. However GPU's is no problem wereas circumventing the PS3 or 360's protections might be in more repressive goverments (such as found in the west).

      All off the above is just random speculation based on hilarious press reports. Any resemblance to the facts is unlikely.

    • Yes, it's good to [instruction cache miss...] step through [instruction cache miss...] every part of [instruction cache miss...] your code [instruction cache miss...] on every timestep. [instruction cache miss...] you'd never [instruction cache miss...] want to have [instruction cache miss...] different logi[instruction cache miss...]c in different [instruction cache miss...] instruction caches [instruction cache miss...], nor would you [instruction cache miss...] want different tasks [instruction cache mis