| |
Building sophisticated, real-time embedded systems from scratch is both time-consuming and inefficient. Nobody wants to debug hardware, software, firmware, the RTOS integration, and software drivers when all of the components are brand-new and unproven in and of themselves. Engineers like to isolate and modify one variable at a time when designing and debugging, but you have to start with something already working to make any quick progress. Waiting for the first proto-board to come back from layout usually takes weeks on the engineering schedule, while the software and firmware engineers try their best to develop code and drivers for a nonexistent platform. Building a temporary start-up system of off-the-shelf components is often just as problematic, piecing together pieces of the system that may come from different vendors. Am I debugging my system or a problem with a supplier’s component? Is this inoperable? Is it expensive? Enter low-cost but fully comprehensive embedded development kits based on a flexible, programmable platform. This development kit is not one of those toys where you have too little memory to do real designs – or so industry-specific in its features that you cannot port or scale it to your own application. For little more than the price of a high-end MP3 player and its accessories, you can now purchase a completely bundled kit that includes hardware, software, JTAG probe, communications cables, and pre-verified reference designs, supporting real embedded processing development and compatible with numerous types of applications. It includes everything you need to build fast and flexible embedded processing systems today. Intelligent tools, IP, and reference designs written specifically for a feature-rich hardware development board (or evaluation, reference, or demonstration board) will streamline your embedded development cycle. A good, integrated development kit allows you to focus on your own application without worrying about debugging flaws with a soldered connection, a broken white-wire, or software drivers that do not match the IP peripherals in the spec. A stable hardware environment makes all the difference to the software/firmware teams so that they can immediately write, test, and debug code well in advance of the first delivery of custom hardware boards. The Xilinx® MicroBlaze™ Development Kit, Spartan™-3E 1600E Edition, packages all of this platform flexibility in a low-cost and completely integrated development kit (Figure 1).
Soft Processing and Customizable IP BenefitsEngineers need options and flexibility when trying to satisfy demanding project requirements. Programmable platforms and innovative tools allow you to craft an embedded design with the perfect combination of feature set, area, cost, and performance. Instantiate a flexible soft-processor core, customize your IP, optimize the performance, and validate your software on a development board before you even have your custom hardware back from the shop. FPGA processing systems are by their nature programmable, reprogrammable, and field-upgradable, so they offer the unique advantage of getting your products to market quicker and having a longer, renewable life in the field. The Spartan family of Xilinx Platform FPGAs supports the 32-bit RISC MicroBlaze soft processor, which can be instantiated at will because it is built out of FPGA elements like other IP peripherals. Xilinx optimized the MicroBlaze soft-processor core for the best possible performance in the least amount of area to take advantage of low-cost Spartan applications. With the flexible nature of this soft MicroBlaze processing solution, you can instantiate updates, changes, or entirely new processor cores at any time during the design cycle. Imagine the longevity of your product if you could fix both hardware and software bugs, add enhancements and features, or even introduce support for new standards after deployment. IP peripherals are also soft and can be edited to trade-off individual core features with area requirements. Unlike discrete processing solutions, you choose what is optimal for your specific application and remove any extra unused device elements from your solution. With a soft, programmable processing system, the performance can be fine-tuned in a number of ways. This MicroBlaze Spartan kit enables you to explore the merits of co-processing and investigate the various ways that you can accelerate your design rather than the diminishing return of just toggling the clock faster. Adding engines in high-performance FPGA hardware almost always improves system performance over software-only applications run sequentially on a single processor core. Experimenting with multiple processors, plug-in floating-point units (FPUs), or hardware instructions might be advantageous to your application. With a programmable platform, your MicroBlaze processing experiments are free – you need not pin yourself down with discrete solutions from the initial paper spec. Integrated Components Work Out of the BoxThe Xilinx MicroBlaze Development Kit, Spartan-3E 1600E Edition, integrates a complete environment for embedded development. This bundle supports a wide variety of MicroBlaze soft processing and comprises: • Spartan 3E-1600E development board from partner Digilent • ISE™ (Integrated Software Environment) FPGA tools • Award-winning Platform Studio embedded tool suite (XPS) • MicroBlaze soft-processor license (no unit royalties) • JTAG probe, Ethernet, and serial cables • ChipScope Pro™ Analyzer (evaluation version) • Reference designs The low-cost Spartan-3E 1600E development board (see Figure 2) provides a robust set of features for the price, including multiple options for memory interfaces, clocks, displays, connectors, user interfaces, and other peripherals, enabling you to easily and cost-effectively prototype your own custom embedded design. The actual board and supplemental options include features such as: • Memory interfaces for DDR SDRAM, linear flash, flash PROM, and SPI serial flash • Connectors: USB download, Digilent JTAG 3 cable, 43 expansion I/O, and three 6-pin I/O ports • Numerous user interfaces: RS-232, SPI port, four buttons, eight LEDs, four DIP switches, rotary encoder USB, and tri-mode Ethernet • Peripherals: 10/100 Ethernet PHY, four-channel DAC, two-channel ADC • LCD display
This board enables not just single MicroBlaze processor design but also multiple instantiations of MicroBlaze processors or even co-processing applications, including hardware instructions in the FPGA fabric or FPU options to most effectively distribute the processing load over the entire design. Loading all software functions on a single processing engine can create bottlenecks in system performance, whereas implementing software algorithms in fast FPGA circuitry can offload and actually accelerate the overall design. In fact, by using co-processing, FPUs, or hardware instructions, you can improve system performance over software-only applications by leaps and bounds – 5x, 10x, even more than 40x in some real-world examples. Complementing the Spartan board, ISE FPGA tools are the design utilities executed for the FPGA implementation, including entry, synthesis, verification, and place and route. This design flow has even been integrated so that it can be invoked directly from the embedded tool suite integrated development environment (IDE). The XPS embedded tool suite is the design environment that really kick-starts the process for embedded engineers. This integrated development environment includes the design GUI, automated configuration wizards, compiler, and debugger. XPS is built on the Eclipse framework and supports the GNU tool chain for processing compiles and debugging. Design wizards like the popular Base System Builder automate the process of configuring the basic processor system, connect and customize the IP, and organize the project. Additionally, XPS can automatically generate example test code, software drivers, and even board support packages for some of the most popular embedded operating systems. These intelligent embedded tools are ”platform-aware” and can automate the flow for specific boards from a menu-driven environment. Xilinx and board partner companies like Avnet, Nu Horizons, and Digilent submit a board description file with their embedded hardware board; Platform Studio uses this file to build new menu support. This design-wizard method of configuring systems allows you to create basic embedded systems in just minutes, reducing learning curves and accelerating the design process. The MicroBlaze kit bundles an impressive embedded IP library and the actual MicroBlaze processor license. There is no royalty to pay for MicroBlaze designs shipped, and because MicroBlaze is soft, your designs are never obsolete. The IP catalog supports a large number of processing peripheral options. Target boards need a connection for the various kinds of communication coming from the host computer, where tools are executed and design files created. The most common method of connection to an embedded target board is through an industry-standard JTAG probe. Xilinx offers USB JTAG probes as the single connection method for both FPGA and embedded software download and debugging. This capability simplifies the process, reduces your need for multiple probes, and eliminates the inconvenience of constantly swapping probes for different functions. Ethernet and serial cables are also included to make sure you have all the connectivity you need to work the day you open the package. Reference Designs and Embedded OS SupportThe final and key components of the integrated development kit that can really empower your design process are a collection of reference designs and industry embedded OS support. Including pre-existing, working example designs with the bundle allows you to unpack the box and have the basic system up and running very quickly. These pre-verified reference systems can validate that the hardware and connections are working before you start creating new code or IP and prevent you from mistakenly debugging your design when what you really had was a bad board or cable. These reference systems also act as examples for the broad set of features on the Spartan-3E 1600E platform, such as DDR SDRAM, Ethernet, RS232, and LCD functions. You can use these examples as templates to get your own design features modeled or run as-is if your custom board targets the same feature. Example pre-verified reference systems include: • Hello word example configured from master serial mode • µClinux example configured from BPI Up mode • Simple webserver configured from BPI Down mode Using existing design examples can jump-start your own design, saving you days or even months of development time compared to manually generating all aspects of a complex system design yourself. You can find additional reference designs and updates at www.xilinx.com/sp3e1600e. Embedded operating system (eOS) support is also a key to many processing applications. The MicroBlaze development kit includes some validated eOS support for products/vendors like: • Mentor Graphics Nucleus • Petalogix µClinux • Micrium µC/OS-II Always see the suppliers themselves for specific support of their eOS and tool products. The Spartan and MicroBlaze combination of processing solutions is supported by many other third-party embedded RTOS or hardware/software design tool partners as well. Our embedded partners’ websites are listed at www.xilinx.com/ise/embedded/epartners/listing.htm. ConclusionXilinx offers clear advantages for embedded processing over traditional processing solutions, including the flexible and unique offering of soft processors, co-processing, and customizable IP. Our low-cost Spartan-3E 1600E Embedded Development Kit is not just a stand-alone board. You do not have to invest your valuable time hunting for all the right components just to prototype a solution. This kit includes pre-verified, working reference designs offering a significant acceleration in the development process for real-time engineers. Get embedded designs up and running quickly, right out of the box – a pretty reasonably priced box. To learn more about the low-cost MicroBlaze Development Kit, Spartan-3E 1600E Edition, please visit www.xilinx.com/embdevkits. A good starting point to learn about all of our embedded processing solutions is www.xilinx.com/processor. by Jay Gould Sr. Product Manager, Embedded Solutions Marketing and Jim Burnham, Embedded Product Marketing, Embedded Processing Division March 22, 2007 Comments on this article? Send them to comments@fpgajournal.com |
All
material on this site copyright © 2003-2007 techfocus media, inc.
All rights reserved. FPGA and Structured ASIC Journal Privacy Statement |