Original Link: http://www.anandtech.com/show/853
Hardware Behind the Consoles - Part I: Microsoft's Xboxby Anand Lal Shimpi on November 21, 2001 3:47 AM EST
- Posted in
Hardware and games go hand in hand; since it is the gaming industry which drives a significant portion of hardware sales, at least for enthusiast users. Companies like NVIDIA wouldn't have a reason to put out $300 and $400 graphics cards if it weren't for gamers. But although PC gamers have taken the lime light recently, every true PC gamer and most PC users in general can trace their roots back to the earliest of computer-entertainment devices: videogame consoles.
There is just something special about videogame consoles that have kept them around even in light of the power of the PC and the incredible multiplayer capabilities offered by the internet. Although ports of various console favorites have been brought to the PC, it's difficult to reproduce the feeling of playing through Mario or a good bout in Street Fighter on the PC. Sports games generally fall victim to that same awkward feeling on the PC; although they may run at much higher resolutions and have more multiplayer options on the PC, you can't cram four friends onto a couch in front of your monitor and really have at it in Madden.
The same can be said for videogame consoles receiving titles that were meant to be played on a PC. Try to be as effective under a fast paced first person shooter like Quake III: Revolution on the Playstation 2 as you would play Quake III Arena on the PC and you'll quickly see the reason why a keyboard and mouse are the tools of choice for PC FPS gamers.
Although we've tried to portray the PC and the console as two separate worlds, there is one aspect in which these two worlds collide: hardware. Now you see the tie-in; at AnandTech we like to deal with the most interesting hardware and technology out there and for years the hardware behind videogame consoles was rarely that interesting. What we ended up finding were platforms that were starved for memory and a useful storage medium; and with the release of cards like the original 3dfx Voodoo and NVIDIA's first TNT line we quickly noticed that videogame consoles like Nintendo's N64 were also deprived of the graphics power we as PC users had been used to.
When Microsoft announced the development of their Xbox gaming platform the specs listed it as a moderately fast PC that would be considered no more than entry-level upon its release in late 2001. The platform did not appear interesting by any means and it has only been within these past few months that our interest has truly piqued as the Xbox has shaped up to be far from a set-top PC.
Microsoft does face competition from the most successful player in the videogame console business: Nintendo. Nintendo's recently released GameCube is also very PC-like in its hardware although Nintendo's approach is much more conventional to the console market than what Microsoft is doing with Xbox.
Leaving no stone unturned we have created a short series of articles entitled the Hardware Behind the Consoles that will detail the hardware that powers consoles such as Microsoft's Xbox, Sony's Playstation 2 and Nintendo's GameCube. AnandTech isn't a gaming site and although a number of our readers (and our staff) are avid gamers we won't focus on reviewing the titles that are shipping for these consoles individually. Instead they will be used, as are games in our video card reviews, as demonstrations of what the hardware is capable of doing.
In this first article we will have a look at Microsoft's Xbox and the underlying hardware that powers the software giant's first entry into the console gaming market.
Understanding the Hardware – The X-CPU
As PC hardware enthusiasts you already understand quite a bit about the fundamentals of building a high-performance gaming console. You first understand that the concept of "bits" is much more of a marketing tool for videogame consoles than anything else. You'll find uneducated discussions all over the net about the Xbox's inferiority because it is only a "32-bit" console whereas even the N64 was a "64-bit" console. Remember that a 64-bit processor would give developers larger registers and greater memory addressability among other features, most of which are not useful for a gaming console at this time. An understanding of what those bits are in reference to is key to doing what we always like to do, separating the truth from the marketing.
The Xbox does indeed feature a 32-bit CPU; this CPU has actually been the topic of much controversy surrounding the Xbox. Not too long ago, Microsoft was looking for a CPU manufacturer to supply the Xbox with CPUs and of course the top runners were the CPU manufacturers that Microsoft was most friendly to: AMD and Intel. AMD was supposedly offering a K7 derived part while Intel had a Coppermine based solution. Supposedly as a surprise to everyone at AMD, Intel won the bid for the Xbox and was allowed to produce a derivative of the 0.18-micron Coppermine core for the console.
The CPU that powers the Xbox is a Coppermine based Pentium III with only 128KB L2 cache. While this would make many think that the processor is indeed a Celeron, one of the key performance factors of the Pentium III that is lost in the Celeron core was left intact for this core. The Coppermine core was left with an 8-way set associative L2 cache instead of the 4-way set associative cache of the Celeron. Based on what we've seen with the Coppermine and Coppermine128 (Celeron) cores we estimate that the 8-way set associative L2 cache gives this particular core a 10% performance advantage over the Coppermine128 core of the Celeron.
The fact that Intel decided to go with a 128KB version of the Coppermine core indicates that there is a way of disabling half of the L2 cache without modifying the mapping associativity. We fully expect the Xbox's CPUs to be nothing more than Coppermine processors with half of their 256KB L2 cache disabled.
The other aspects of the CPU remain unchanged; the core does not have SSE2 support, only support for Intel's SSE instructions. It still has a 16KB L1 instruction cache and 16KB L1 data-cache and also very important is its 133MHz FSB. We've proved time and time again about how critical a high-speed FSB is to overall system performance, and the situation is no different inside a gaming console.
The 0.18-micron CPU is contained within Intel's mobile FC-BGA package that is soldered directly onto the Xbox's motherboard. This not only prevents anyone from attempting to upgrade the CPU but it also reduces the space necessary for the CPU.
The BGA back of the Xbox CPU. Note the size of the CPU compared to a quarter.
The CPU itself runs at 733MHz which would make you think that Microsoft could have done much better with a solution from AMD. However if AMD had supplied a 200MHz FSB processor with a L2 cache similar in size to the Duron, then the performance of an equivalently clocked solution from AMD wouldn't have outshined this Coppermine-derived processor too much. The other thing to take into consideration is heat and power supply requirements. In order for the Xbox to be taken seriously as a gaming console and not just a PC in a black case it would have to be no louder than a DVD player and put out no more heat than an A/V receiver. It is a widely known fact that the Coppermine core runs significantly cooler and with lower current requirements than the Athlon/Duron cores.
So although on the surface it seems as if Microsoft may have made the wrong decision with the Xbox's CPU (we even thought so at first), if you think about it, the decision isn't all that bad.
nForce in Action - The X-IGP
Although the chipset made its "debut" at Computex 2001 we are just now seeing NVIDIA's nForce appear on retail boards most of which won't ship for a few more weeks. In spite of NVIDIA's disappointing launch on the PC side, the nForce platform has played a huge role in the development of the Xbox.
Months ago NVIDIA told us that it was the nForce design that won them Xbox; the PC derivative came afterwards. It was no surprise then to find out that the nForce chipset could work just as fine as a Pentium III solution or an Athlon solution. Of course us PC users get to see nForce paired with an Athlon, but because of Microsoft's licensing of the P6 bus from Intel the world is able to see the Pentium III on the nForce platform as well.
The chipset behind the Xbox does veer slightly from the nForce 420-D design for the PC. The Integrated Graphics Processor (IGP) still functions as the effective North Bridge for the platform however it features a much more powerful graphics core than the PC's nForce IGP. Whereas the nForce IGP on the PC features a GeForce2 MX (NV11) core, the Xbox IGP features a custom designed core internally known as the NV2A. You can take the codename to mean that the integrated graphics offers performance and features somewhere in-between the currently available NV20 (GeForce3) core and the upcoming NV25 core.
The NV2A features the same 4 pixel pipelines of the GeForce3 core and operates at 233MHz. This puts the fill rate of the NV2A in between that of the GeForce3 and the GeForce3 Ti 500. Naturally the NV2A features the same DirectX 8.1 pixel and vertex shader support that was introduced with the GeForce3 with one major modification - the NV2A has two vertex shaders. The addition of a second vertex shader is a huge performance gain for games the reason being that most instructions that will be sent to the vertex shader require at least two instructions to execute. Providing the GPU with dual vertex shaders will tremendously increase the throughput of these vertex programs allowing some operations to be completed in a single clock cycle. Considering that a very impressive feature of the vertex shader is the ability to do the setup for DOT3 bump-mapping, the dual vertex shaders will definitely help performance tremendously in titles that make extensive use of per-pixel DOT3 bump-mapping.
The core also supports the same multisampling AA formats as the GeForce3 including Quincunx. This is actually a very important feature since most games are rendered and displayed at 640 x 480 where aliasing is especially bad.
The rest of the features of the Xbox IGP are identical to that of the nForce IGP which we've covered extensively here.
nForce in Action (continued) – The MCP-X
In spite of the Xbox's host CPU being an Intel processor, the IGP and MCP of the platform are still connected by AMD's HyperTransport bus. The bus is of course processor independent and is still just as important in Xbox as it is on nForce. The characteristics of this HyperTransport link are unchanged from the nForce platform; it still offers 800MB/s of bidirectional bandwidth between the IGP and MCP along with isochronous virtual channels that offer dedicated bandwidth to memory for things like the network controller and APU. Again, we've already covered this in great detail here.
The Xbox Media & Communications Processor (MCP) is identical to the nForce's MCP-D with Dolby Digital encoding support. The ability to do real time Dolby Digital encoding is very important on a console for many reasons including one of the most basic – it would be a pain to feature 6 analog outputs on the Xbox console itself as well as expect gamers to have a free set of 6 channel inputs on their receivers. Xbox was designed to bring 5.1 channel gaming to the mainstream market and with Dolby Digital encoding and a single toslink optical audio cable coming out of the optional Advanced or HD A/V boxes, it has the hardware to do it.
While 5.1 audio solutions have been around on the PC for years, games have yet to take full use of the capabilities. However on Xbox, even the launch titles are making use of some of the 5.1 capabilities of the platform. It is clear that there is much room to improve as titles such as Halo don't make proper use of the center channel in a 5.1 setup.
The integrated 10/100 Ethernet controller of the MCP-D makes the Xbox very internet-ready as it ships with a built in 10/100 Ethernet port. Microsoft has yet to announce their official plans for taking the Xbox online and unfortunately by default the Xbox's Ethernet port is not set to receive an IP from a DHCP server so for now the only use for the Ethernet port on the unit is to link multiple Xbox systems together. This is done through the use of conventional CAT5 crossover cables when going from system to system; Microsoft sells a system link cable for $15 that is nothing more than a conventional CAT5 crossover cable. It's very interesting to note that Microsoft isn't charging a much higher price for the link cable considering that they could claim much higher profit margins on the relatively cheap part.
nForce in Action (continued) - The X-Motherboard
The motherboard itself is manufactured by Intel and is a 4 layer design. Intel's trademark debug pins are also present on the motherboard although the pins themselves are missing. For those of you that have never used an Intel motherboard before, shorting the debug pins allows you to enter the BIOS configuration utility. We have yet to try shorting the debug pins on our unit but we'd be surprised if doing so didn't have a similar effect. You shouldn't expect too much to be contained within the Xbox BIOS but it'd be something interesting to toy around with in any case.
The power connector on the board is reminiscent of an AT style connector in that it is a single row of 10 pins however it's clearly a proprietary power interface. The power supply is not covered (the same is true for the PS2 PSU, it's done to save space) so you should exercise much caution when working on the inside of the Xbox.
Memory Bandwidth Galore
The Xbox features a 64MB memory subsystem made up of four 4x32Mb DDR SDRAM chips. Our unit featured Samsung chips but as time goes on Microsoft may choose to explore other DRAM manufacturers for memory. The memory used on the Xbox is very fast by PC memory standards but only decent by video memory standards. The Samsung chips used on our unit are 5ns parts that run at 200MHz DDR offering the effective bandwidth of a 400MHz solution. When combined with NVIDIA's 128-bit TwinBank memory architecture this offers a total of 6.4GB/s of memory bandwidth that is to be shared between the IGP and the CPU.
The 133MHz FSB path to the CPU limits the maximum amount that the CPU can ever use of that bandwidth to 1.06GB/s, leaving a minimum of 5.34GB/s to be used by the rest of the system. However you also must realize that these are peak theoretical bandwidth numbers which will really never be reached in a real-world scenario. In the end you're looking at a graphics solution that falls between a GeForce2 GTS and a GeForce3 Ti 200 in terms of memory bandwidth. However as we showed in our original review of the GeForce3, that is more than enough memory bandwidth when running at 640 x 480 x 32 which is what the vast majority of Xbox titles (at least for now) will be rendered at internally. Only when AA is enabled will memory bandwidth constraints have to be taken into account and as you'll see later on, there is unfortunately very little use of the GPU's AA capabilities in current games.
With NVIDIA's GeForce3 Ti 500 shipping with 250MHz DDR memory thus offering 25% more memory bandwidth we would have preferred to see that memory used on the Xbox; after all, this system is expected to last for the next couple of years so it would have been nice for it to feature a little more time-enduring memory.
Then there is the issue of memory size; if the 64MB the Xbox is equipped with was only to be used as the framebuffer for the GPU then it would be more than enough, but this memory is also used for keeping a running copy of the game code to be executed as well as any other pertinent data. For this reason we felt that it would also make sense for the Xbox to have a full 128MB of memory since it would make the job of the developers somewhat easier. While the 64MB the system does have is much more than any competing console (Sony's PS2 has 32MB and Nintendo's GameCube has 40MB), we're always wanting more and having to use that 64MB as a frame buffer and as execution data storage can force developers to make some sacrifices going forward.
There are 8 solder pads for DDR SDRAM chips, only 4 are populated.
Looking at the Xbox motherboard itself you'll see solder pads for the additional 64MB of DDR SDRAM. Although you could theoretically solder on an additional 64MB of memory, with games already written with 64MB of memory in mind there wouldn't be any performance improvement.
A true PC – The X-Hard Drive
The decision to include a hard drive with the Xbox was a very good decision on Microsoft's part, as consoles (especially CD/DVD based systems) are in dire need of a faster mass-storage medium. The role of the hard drive in the Xbox isn't to receive game installations, rather it is used to store save games, user profiles, and act as a cache for the DVD drive to store frequently used data that must be available quicker than the DVD drive can deliver it.
Microsoft elected Seagate and Western Digital to provide drives for the Xbox so if you open a unit up you're likely to find either a Seagate U Series 5 or a Western Digital Protégé WD80EB drive. Both are very slow (by PC standards) 5400 RPM drives that are also extremely quiet. Both drives are single platter designs meaning that they inherently run quieter and cooler than multiplatter drives.
In the case of the U Series 5 drive there is a single 20GB platter in the drive of which only one side is used. The remaining platter side is not tested for defects so it could very well be fully functional or completely worthless; in either case the size of the Seagate U Series 5 drive is 10GB which was Microsoft's original spec for the Xbox. Whether all of that 10GB is usable is another question, but that's how large the drive is. In theory it would not cost any more for Seagate to supply Microsoft with drives that have both sides of the platter enabled thus making it a 20GB drive.
The Western Digital WD80EB drive isn't one that is publicly available, unlike the U Series 5. The closest drive WD manufactures for the mass public is the WD84EB which is very similar in specifications to the WD80EB. This is indeed an 8GB drive and is again composed of only a single platter.
In terms of specifications, as we mentioned earlier both drives are extremely slow which was a necessary sacrifice in order to get the cool and quiet operation. In terms of performance, the U Series 5 does have faster overall specs especially in terms of seek performance. Since the Xbox will primarily be writing small amounts of data, sustained transfer rate should not matter. The average seek time (the time it takes to get from one track to another random track) of the Seagate drive is 8.9ms while on the WD drive it is 12.1ms. We would be surprised if the 35% increase in seek time was not noticeable unfortunately our unit was equipped with the WD drive. While both drives do have a 2MB buffer, the Seagate drive does have a faster platter-to-buffer transfer rate; in this case the Seagate drive is around 18% faster but in real world scenarios we'd be very surprised if the performance difference was any more than 1 – 2%.
Begging for a faster drive
Case in point of how slow the hard drive is can be seen under the titles Project Gotham Racing (PGR) and Dead or Alive 3 (DOA3). In PGR's car select screen and in DOA3's character select screen there is a delay between the time when you select a car/character and when the picture actually appears on the screen. Originally we assumed that this delay was because the system was reading off of the DVD, but upon closer inspection it's clear that the delay was in accessing the hard drive. What's even more interesting is that the delay continues to exist regardless of how many times the car or character is selected in succession, indicating that the data isn't being cached to main memory. With a larger 128MB memory subsystem, it is quite possible that developers would have been able to circumvent this small but noticeable delay by caching the models to memory.
In the DOA3 Character Select screen we've selected the character but his model has yet to appear as it is still searching for it on the hard drive. This delay is usually around 1 - 2 seconds at most.
Here in Project Gotham, we've selected the Boxster S but the car on the screen is still the Audi TT coupe. It will be another couple of seconds before the car model switches as the slow hard drive must send data off to memory. With a faster hard drive this process wouldn't take as long, and with more system memory this type of information would be cached in RAM.
In terms of hacking potential to improve performance, soldering on another 64MB of DDR SDRAM wouldn't help since the games are already only expecting 64MB of memory. What would help however is a faster hard drive, but there are numerous problems associated with performing a hard drive upgrade:
1) Getting the Xbox image onto the hard drive. Without modification, no OS will let you access the Xbox hard drive making it very difficult to create a ghosted image of the drive.
2) Getting the Xbox to recognize the hard drive. Currently no hard drive will be recognized by the Xbox. Instead of booting it will spit out a service error. It is still unknown whether or not simply putting the image on the drive would solve this issue.
3) Getting a fast but cool running hard drive. There is no flow of air over the hard drive in the Xbox. In fact, it is mounted on a plastic tray over the CPU and IGP meaning that if anything, it's in the worst possible place from a cooling standpoint. Replacing the drive with a 7200RPM IDE drive would raise many cooling issues which could lead to a reduction in stability or accelerate component failure.
The plastic hard drive tray.
Another thing to note is that there is no shock protection on the hard drive itself. Although the use of only a single platter can arguably reduce the damage incurred by dropping the system, the fact remains that the plastic tray that holds the hard drive does not do a very good job of absorbing shocks. In other words don't drop your Xbox.
Also a DVD player
The Xbox marks Microsoft's entry into the living room; a place normally reserved for TVs, VCRs and not computers. With the NV2A able to handle DVD output and the 733MHz processor more than fast enough to perform the majority of the MPEG-2 decoding, it's no wonder that the Xbox ships with DVD playback support. The Xbox games themselves are stored on DVD-9 (9GB single sided, double layer) formatted discs and are actually written in a very interesting fashion. The games are written from the outside of the DVD-9 discs to the inside, meaning that most discs will actually have the majority of their data stored around the outer perimeter of the disc. Since the DVD drive in the Xbox is a Constant Angular Velocity (CAV) drive, it can read more data per second off of the outermost tracks making this a highly optimized way of storing data on the DVDs to reduce load times. Obviously the drive can also read regular CDs and DVDs as well.
Aside from the faceplate, this is a regular PC DVD-ROM drive.
The DVD drive itself is no more than a PC DVD drive capable of reading at 2X off the innermost tracks and 5X off the outermost tracks. Remember that when dealing with DVD drives, 1X = 1250KBps of data which is a little more than what an 8X CD-ROM drive can deliver. With the majority of information stored on the outer portion of the Xbox game DVDs that means that most of the time the drive will be reading at 4 – 5X. Only when dealing with movie DVDs and audio CDs as well as game discs that use the entire 9GB (no game currently meets this requirement) will the drive receive data at the lower speeds. Obviously for movie/audio discs it doesn't matter and it will be a while before games hit 9GB in size (hopefully a very long while). For comparison, the PS2 DVD player is a 4X CAV unit with an inner track speed of around 1 - 2X.
DVD-ROM: Power is supplied by the custom connector to the left and you'll recognize the IDE cable to the right.
The drive is manufactured by Thomson Multimedia and only deviates from a standard PC DVD-ROM drive in its back panel connectors. Of course there is the standard 40-pin IDE connector which accepts the slave position on the IDE cable going from the motherboard to the hard drive. Instead of a conventional power connector however there is a proprietary 12-pin cable that powers the drive directly from the motherboard. This is the only barrier that stands between you and upgrading the DVD drive in the Xbox to a faster 10X unit. Of course if you want to keep the sleek front look of the Xbox you'll want to open up the replacement DVD drive and swap trays with the Xbox DVD drive. In order to power the drive you could always attach a y-splitter to the power cable going to the hard drive and use that to power the new DVD drive which is adjacent to the hard drive; just some food for thought.
Unfortunately in order to enable DVD movie playback Microsoft forces you to purchase their $30 DVD playback kit which consists of nothing more than a remote and an IR receiver for the remote that plugs into a controller port. The quality of the DVD playback is definitely respectable. We compared it to a Sony DVP-NS700P and in interlaced (480i) mode the quality of the Xbox DVD output through component video cables was respectable. True home theater enthusiasts will scoff at the output resolution limitation of the Xbox's DVD playback as it cannot output a 480p or progressive scan DVD movie signal. This isn't because of a hardware limitation rather that it does not support Macrovision in 480p mode. It shouldn't be too hard for a few skilled individuals to get around this limitation however.
Compared to the 480p output of the NS700P, the Xbox's DVD output is definitely not as sharp but it is easily competitive with most entry level players. Compared to the initial DVD playback of the Playstation 2, the Xbox is considerably better however we will be upgrading the DVD software on our PS2 unit later this week and performing another comparison to see how things have changed with the latest revision of the DVD software. In the version of the software our PS2 is currently running there are some serious issues with image quality apparently caused by poorly done 3:2 pulldown conversion. The bottom line is that the Xbox's DVD player functions very well as a entry level to mid-range solution but without 480p support is far from a higher end player.
We also have a few quibbles with the $30 DVD remote itself. First of all there is no way to remotely power or shut down the Xbox which may be a limitation of the hardware itself. Secondly there is no remote eject button which again may be a limitation of the Xbox hardware. The remote is very easy to use and the display options during the playback of a movie are very easily accessible including a very easy to use zoom feature. In terms of ease of use the Xbox remote gets an A+ however in terms of features for the DVD savvy user, the Xbox remote falls behind. We'd expect better for one of the more expensive Xbox accessories.
It's clear that the remote is made for the mainstream population and not the more savvy home theater enthusiasts.
The Resolution Game
One of the biggest debates that raged on among hardware enthusiasts before the Xbox's launch was in regards to what resolutions we could expect games to run at. You must first understand that interlaced NTSC television offers an effective resolution of close to 640 x 480 meaning that there would be no reason to render at above that resolution for the vast majority of the population. Because of the interlaced nature of NTSC video it is only necessary to have half of the horizontal resolution lines in the frame buffer at any given time which is why some PS2 games actually only store 640 x 240 images in the frame buffer. This unfortunately ruins the potential of the PS2 having any reasonable HD output at resolutions higher than 640 x 480 or what is known as 480i. The Xbox however was designed with support for so called high-definition (HD) resolutions in mind.
Most PC users are used to resolutions such as 1024 x 768 but in the world of HDTVs, resolutions are measured in the number of horizontal scan lines. For example, on a 4:3 aspect ratio (width:height) TV, the resolution 1024 x 768 would be represented as 768p since the signal is non-interlaced or progressive scan (at any given time there are 768 horizontal resolution lines). The HD standards do not offer any 768p standard; rather the most popular are 720p and 1080i - both of which are 16:9 standards. The equivalent in terms of resolutions you're used to seeing would be 1280 x 720 and 1920 x 1080; the latter would be interlaced because currently no TVs have enough available bandwidth to offer a true 1920x 1080 resolution.
The Xbox features a Conexant video encoder chip that supports the following TV output resolutions: 480i, 480p, 720p and 1080i. However the input of that chip is governed to a maximum (according to Conexant's tech-docs) of 1024 x 768. Note that the input resolution and the resolution outputted to your TV don't have to be the same, but if they are not the same you're just going to be scaling or shrinking the image and won't get any additional quality out of it.
HD support is enabled through the $20 HD A/V pack. The pack comes with RCA audio and component video cables. The connectors are as follows (from left to right): digital audio out (toslink/optical), analog audio out L/R, component video out (Y Pr Pb).
All currently shipping Xbox games, as far as we know, are rendered internally at 640 x 480 and then sent to the Conexant chip which either interlaces the frames for output to a regular 480i or HD 1080i display or leaves the full resolution lines intact for every frame when being sent to a 480p or 720p output. This means that even for HDTV owners, 480p is the best you're going to get for now. Because of the sheer memory bandwidth requirements, 1080i doesn't make much sense for game developers. At 1920 x 1080 there are 153,600 more pixels (8% more) to be rendered than at 1600 x 1200 and we already know how memory bandwidth intensive 1600 x 1200 can be. Considering that the Xbox only has 6.4GB/s of memory bandwidth to work with, only in games with relatively small textures and low detail can we expect 1080i to be a reality. The much more desirable option is 720p.
In 720p mode there are 135,168 more pixels to be rendered than at 1024 x 768 which is very easily done at above 60 fps by every card since the GeForce2 GTS. The problem you run into next is that most HDTVs don't support 720p but instead support 1080i. This isn't as big of a problem since the conexant chip can scale the output to 1080i and most TVs even scale unsupported inputs to resolutions they do support. This then becomes a question of what is a better scaler, the conexant chip or your HDTV. In the future we hope to see more use of 720p in games because currently even 480p without AA enabled does result in quite a few jagged edges.
This brings us to the next issue which is the lack of AA use in current games. None of the titles we've played with (DOA3, Halo, NFL Fever or Project Gotham) enable any of the multisample AA modes supported by the NV2A GPU. The games inherently look very good because of their higher resolution textures and use of pixel and vertex shader programs however aliasing is still present at varying degrees among these titles. Because of the benefits of multisampled AA, enabling NVIDIA's Quincunx mode would not hurt performance all that much, especially at 640 x 480. The only problem that would occur would be an increased blurriness and a blurring of text which would require some workarounds to reduce but it's definitely possible. The use of a higher render resolution such as 960 x 720 (720p) would tremendously reduce the amount of aliasing; for non-HD users, who make up the majority of the Xbox buying population, it would make much more sense to render at 640 x 480 and enable some form of AA whether it be Quincunx, 2X or 4X mode depending on the memory bandwidth usage patterns of the game itself. While all hope is lost of AA to be enabled in this first generation of titles, hopefully we'll see more use of the technology as developers learn from the mistakes of those before them.
USB Controllers? We think so.
Conflicting opinions have surrounded the release of the US Xbox's controllers mainly because of the controller's incredible size. Holding the controller is not as bad as it seems however this is one area where the Xbox, in our opinion, falls significantly behind the GameCube. Nintendo's controller just feels much more natural than the US Xbox controller. The reason we specifically mention the US Xbox controller is because Mcirosoft will be releasing a smaller controller in Japan that should retain all of the functionality of the US controller but with a smaller overall footprint for the demands of that market. Due out in February, you can expect the controller to be an import favorite because of its smaller size.
The controllers have a generously long 9 ft cable that features two connectors. The first connector is a breakaway connector that is located at the very end of the cable. This connector will detach from the rest of the cable should the wire be tugged on.
This end plugs into the Xbox
The second and final connector plugs directly into the Xbox system and is a much stronger connection than the breakaway connector. The reason for the breakaway connector is obviously to improve the ruggedness of the Xbox but even more importantly it will prevent someone from tugging too hard on the controller to cause the Xbox itself to fall. Remember that there is a spinning hard drive in there.
The USB controllerboard on the inside of the Xbox. Each one of the white ports drives two controller ports.
Looking at the controller connector itself it just screams USB. We originally hypothesized that the controllers would be USB derived with maybe an additional power line to drive the rumble motors inside of the controller since they would eat up a significant amount of power; potentially more than the USB spec would provide. On the inside of the Xbox the four controller ports plug into a controller board that then plugs into the Xbox motherboard.
The 4-port USB hubby Texas Instruments
On this controller board there is a very small USB chip-hub that obviously drives the controllers. We're not yet sure why the hub is necessary considering that the MCP-D should be capable of driving 6 USB ports. The hub is a 4 port hub manufactured by Texas Instruments and drives the four controller ports on the front of the Xbox.
Disassembling the Unit
Taking apart the Xbox is actually not all that difficult, provided that you have an Allen wrench set in order to unscrew the torque screws. As usual, we accept no responsibility for any harm this causes to your Xbox. Opening up the unit will void your warranty.
1) First remove all of the external screws. There is a single screw located under each one of the feet of the unit as well as two hidden screws. One is under the FCC sticker and the other is under the serial number label.
2) Flip the Xbox back over and you should be able to pull the cover straight off, this is what you will see:
3) Unplug the IDE cable and power cable from the hard drive. There is one screw holding the hard drive tray in place, remove it. This will allow you to remove the hard drive tray. Be sure to untangle the power cord from its guides on the hard drive tray.
4) There are two screws holding the DVD-ROM drive in place, both are at the very front of the system; one on each side. Remove those and be sure to disconnect the yellow power and IDE cables going to the drive before pulling it out of its resting place.
5) Now you should have access to everything. If you wish to take out the motherboard, it is held in by screws just like any other motherboard would. Be sure to handle it with care and please wear static protection when doing so.
Challenging the Playstation 2
In part 2 of this series we'll focus on Nintendo's GameCube but for now it's time to talk about how the hardware stacks up to the Playstation 2, the current hardware champ in the console market.
PS2 vs. Xbox: CPUs
Let's start off with host CPUs; the PS2 is driven by what Sony likes to call their Emotion Engine. The Emotion Engine (EE) is a 128-bit MIPS processor that operates at 300MHz. The idea of the EE being a 128-bit processor came about because it features 128-bit general purpose and SIMD registers as well as dual 64-bit integer units. The MIPS ISA gives the EE a bit of an advantage from the standpoint of having more general purpose registers (GPRs) and not having to undergo any significant decoding stages just to reduce instructions to more manageable RISC operations.
Sony also claims that the EE has a dedicated MPEG-2 decoding block which should help in DVD playback however this is offset by the hardware motion compensation features of the NV2A GPU in the Xbox and shouldn't be blown out of proportion as a feature.
The biggest issue with the EE is that it has a very small on-die cache and relies on having a very high-speed memory bus, more on that later though. A 16KB instruction cache is more than enough for the processor however the 32KB data cache leaves much to be desired. During its design phase the idea of having a fast 3.2GB/s bus to main memory may have been impressive but you are all very aware of how important a fast, high-bandwidth L2 cache is to performance.
The true power of the EE comes from its two vector units which are known as VU0 and VU1. These are referred to by Sony as two additional floating point units and aid the basic FPU in 3D T&L calculations. The power provided by these vector units is tremendous however their downfall is in their implementation. The power of the two VUs exists in the proper use of them as serial counterparts in handling the T&L calculations necessary during 3D rendering, but with the PS2 being relatively new architecture and dramatically different from what most developers had seen in the past, getting the most out of the host CPU was quite difficult. This is where the majority of the learning curve for developers came from when dealing with the PS2, especially considering that the PS2 shipped to developers without any C libraries. Writing assembly to control the interaction between these two units and the rest of the CPU is not an easy task to say the least and led to many frustrated PS2 developers. Internally to the CPU, the VUs and the rest of the CPU are connected by 128-bit pathways meaning that moving data around the CPU from VU to VU isn't done as easily as possible.
The Xbox host CPU however is the very well known Coppermine derived core which although has the unfortunate limitations of the x86 ISA, also carries the benefits of being a very well known architecture with much ISV support. The processor runs at a higher clock rate than the EE but we all know the meaninglessness of clock rate as a single performance metric. What is important to note is the 128KB L2 cache with a 256-bit data bus comes in quite handy in keeping the execution units of the processor busy and even more important is that the CPU does not have to handle any of the T&L calculations. If games are written properly the host CPU should only be used for AI, physics and other such calculations, leaving the GPU to handle all of the T&L and actual 3D rendering. Removing developers from the mindset of the host CPU handling T&L has apparently proved somewhat difficult but the better looking games are testament to the potential of the Xbox GPU when utilized properly.
PS2 vs. Xbox: Graphics Processors
Here is where the PS2 and Xbox differ tremendously in approaches to graphics processor design. Again we'll start out with the PS2 first. The task of rendering is left to the Graphics Synthesizer (GS) which is a massively parallel graphics core running at 150MHz. The low clock speed of the core is theoretically made up for by the fact that it has 16 pixel pipelines giving a theoretical pixel fill rate of 2.4 gigapixels/s and a peak theoretical texel fill rate of 1.2 gigatexels/s for single textured games. We all know how reliable theoretical fill rates are so we'll leave the specs at that, but it is pertinent to point out that these fill rates are entirely dependent on 100% utilization of the 16 pixel pipelines of the GS. As we know from our experience with execution units in CPUs, that sort of assumption should never be made.
In order to keep those pipelines filled, Sony designed the GS around 4MB of embedded DRAM on the die of the GS and connected to the pixel pipelines by a 2560-bit (that's not a typo) bus. When operating at 150MHz this gives the GS a 48GB/s path to its 4MB of eDRAM. The theory behind this is that with that much bandwidth, keeping all 16 pixel pipes filled should not be a problem. This is one of the strong points of the GS design although it is highly unconventional due to the sheer die space and bandwidth requirements of the massively parallel pixel pipeline design.
The problem is that as you very well know, 4MB is not enough to store all of the information necessary to render frames that are supposed to be displayed at 60 fps. Thus the GS is in need of a high speed external memory bus. As with all consoles, the graphics processor and host CPU share the same memory space and bus. In the case of the PS2, Sony decided to go the Rambus route and outfitted the PS2 with 32MB of dual channel PC800 RDRAM. This is the same memory bus configuration as the Pentium 4 and thus offers 3.2GB/s of memory bandwidth to be shared between the EE and GS. This is hardly enough memory bandwidth and hardly enough memory storage for game execution code as well as high resolution textures. This is generally why most PS2 games are limited to relatively low resolution textures compared to what we're used to seeing on PCs. While the embedded DRAM of the GS core definitely helps out, there is still room for improvement.
Anti-aliasing can be done by the GS however memory bandwidth and fill rate constraints are very present since as far as we know, the GS was not designed around a multisampling AA algorithm in mind. The culmination of all of this is that PS2 games have been branded as being very aliased and poor in image quality mostly because of the lower resolution and lower detail levels that game developers are forced to use for textures combined with the usual aliasing issues.
We've already discussed the merits of the Xbox GPU as it is undoubtedly the most powerful GPU on the market today. It's a tried and true solution that is a direct derivative of the NV20/NV25 cores and is given twice the memory bandwidth of the PS2's GS. In fact, the only area in which the NV2A core falls behind is in the lack of any embedded DRAM. What is quite important is that developers are currently taking advantage of the NV2A's pixel and vertex shaders which bodes very well for the PC gaming market since it will hopefully show PC developers how easy these programs are to implement and how stunning the after effects can be.
The AA support provided for by the GPU also makes a lot of sense however developers do need to enable it in order for gamers to realize its benefits. Another limitation is that most developers are used to having the host CPU handle the T&L calculations while with the Xbox they must get used to using the GPU and its programmable T&L pipeline for all of that.
PS2 vs. Xbox: Audio & I/O
Although the PS2 features an integrated toslink optical audio output on the console itself, it is only used for AC-3 and DTS passthrough as the console itself does not support any form of Dolby Digital encoding. With the release of SSX Tricky and NHL 2002 both by EA Sports, the second vector unit of the EE has actually been put to use in generating DTS sound effects for in-game 5.1 audio. This gives you an idea of the power of the VUs and now that EA has done it you can expect game developers to attempt to duplicate EA's success in future titles. The unfortunate downside to this is that it takes a decent amount of power to enable DTS encoding through one of the VUs which is power taken away from physics, AI or a 3D setup engine.
The Xbox's MCP-D has an extremely powerful DSP from Parthus that enables real-time Dolby Digital encoding which makes high quality DD5.1 gaming a reality provided that developers take advantage of it. We've seen mediocre to decent support for 5.1 gaming on the currently shipping titles for Xbox but what we have seen makes it clear that 5.1 audio in games should not only be limited to Xbox but also available on PC games. Gaming, after all, is about putting the gamer in the position of the character they're playing; true 5.1 audio tracks definitely help accomplish this.
From an I/O processing standpoint, Sony actually made a very good decision with the PS2's I/O processor in that the processor is capable of running any original Playstation (PSX) games because of its 2MB of embedded DRAM. While the graphics of those original PSX titles are slightly improved the main benefit is that the PSX user base can easily migrate over to the new platform.
Upon the PS2's release Sony should have outfitted the system with a hard drive since the memory cards are not only very expensive but also very slow to access. The PS2's expansion bay is actually the perfect size for a hard drive add-on which Sony has been planning for a while now but with the release of the Xbox and GameCube it may be too little, too late for the platform.
The USB and i.Link (IEEE-1394) support of the PS2 has gone relatively unused and with online gaming as the clear future for consoles, the platform is in dire need of an Ethernet controller as well. Luckily with USB support it shouldn't be too hard for Sony to release a 10BaseT Ethernet to USB adapter but judging by Sony's history of overcharging for accessories, you shouldn't expect to see something like that for under $50.
Microsoft on the other hand has been very strict with what expansion options they wish to offer for the Xbox. With the job of diffusing the public opinion that the Xbox is nothing more than a PC, Microsoft has been extra careful to remove any notion of its PC roots from the console including not releasing a keyboard/mouse for the console, as well as not including any ports outside of the A/V and Ethernet ports on the system itself.
Final Words: On to Part II…
Overall we've been extremely impressed with the Xbox from a hardware standpoint but as any gamer would understand, it's not the hardware that makes the console, it's the games that do. The hardware behind this console has the ability to give developers more than any other manufacturer has in the past; the real question is whether developers will catch on.
The first wave of Xbox titles have been met with overwhelmingly positive response. Titles such as Tecmo's Dead or Alive 3 even outshine the best looking PC games despite its 640 x 480 native resolution. Microsoft's first party FPS, Halo has also been the center of attention as it brings gamers back to the feeling we all had after playing through games that actually involved you like Half-Life. The trend must continue in order for the platform to succeed, but what if developers don't support the Xbox? What other option do they have?
It's that other option that we'll be looking at in Part II of this series as we focus on Nintendo's GameCube.