13.03.2013 Views

Hacking the Xbox

Hacking the Xbox

Hacking the Xbox

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

244<br />

<strong>Hacking</strong> <strong>the</strong> <strong>Xbox</strong>: An Introduction to Reverse Engineering<br />

FPGAs before taping out <strong>the</strong> final silicon. A side benefit from this<br />

approach is that <strong>the</strong> software and hardware teams that are users of <strong>the</strong><br />

custom silicon can begin validating <strong>the</strong>ir designs using <strong>the</strong> FPGA mockup<br />

while <strong>the</strong> custom silicon is being fabricated; a process that can<br />

sometimes take a couple of months.<br />

For hackers, FPGAs are sort of a panacea for all kinds of complex<br />

projects. They are excellent choices for implementing cryptographic<br />

functions if you are interested in doing brute-force keysearches or<br />

encrypting large amounts of data quickly. They are also very useful for<br />

implementing signal processing functions, especially given <strong>the</strong> existence<br />

of free multiplier and digital filter cores. FPGAs can achieve higher<br />

performance for less power than a DSP, and thus <strong>the</strong>y have a unique<br />

niche in applications such as battery-powered robotics. FPGAs are also<br />

useful for embedded controller applications: A small microprocessor<br />

core, equivalent to or better than a PIC, can easily fit in an FPGA today.<br />

Add all your custom hardware peripherals, such as a serial port and<br />

PWM timing generators, and you’re in business.<br />

FPGAs are also useful in situations where <strong>the</strong> focus is not on big number<br />

crunching. An FPGA makes a great piece of glue logic in a tight spot,<br />

and well-placed FPGA can save you from having to ever add a wire<br />

jumper to patch a board due to a logic design error. FPGAs also make a<br />

cheap logic analyzer alternative for those of us who cannot afford a<br />

$10,000 Tek TLA mainframe. The high-speed I/O capabilities of <strong>the</strong><br />

latest FPGAs combined with large autogenerated FIFO-configured<br />

embedded memories make short work of designing a signal capture and<br />

analysis system.<br />

Finally, FPGAs have applications in mixed-signal situations that are not<br />

immediately obvious. The most common mixed-signal application is<br />

probably using an FPGA to drive <strong>the</strong> analog signals of a VGA monitor. A<br />

couple of resistive dividers or a well-chosen output driver type is all you<br />

need, and all <strong>the</strong> timing and logic necessary to generate color images can be<br />

handled with logic inside <strong>the</strong> FPGA. FPGAs can also be trivially used as<br />

PWM D/A converters, or even as part of a sigma-delta D/A or A/D<br />

converters.<br />

Where to Buy<br />

You’re probably thinking that any tool this versatile and powerful has to<br />

cost a fortune. While that was true about a decade ago, today you can buy<br />

100,000 gate FPGAs for well under $50, and <strong>the</strong> design tools are often<br />

free for educational users and/or hobbyists.<br />

Of course, an FPGA on its own is not so useful; it needs to be mounted<br />

to a board with <strong>the</strong> proper connections in order to be used. To this end,<br />

a company called XESS (www.xess.com) makes a line of fairly affordable<br />

FPGA starter kits. Their product line shifts as new FPGAs are introduced,<br />

but <strong>the</strong> current entry-level FPGA board is <strong>the</strong> XSA-50 board that

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!