THE AUTHORITATIVE JOURNAL FOR PROGRAMMABLE LOGIC USERS R Xcell journal Xcell journal THE AUTHORITATIVE JOURNAL FOR PROGRAMMABLE LOGIC USERS ISSUE 50, FALL 2004 XCELL JOURNAL XILINX, INC. COVER STORY FPGAs on Mars COVER STORY FPGAs on Mars MEMORY DESIGN Streaming Data at 10 Gbps Control Your QDR Designs PARTNERSHIP 20 Years of Partnership Author! Author! Programmable World 2004 SOFTWARE Algorithmic C Synthesis The Need for Speed MANUFACTURING Lower PCB Mfg. Costs Optimize PCB Routability MEMORY DESIGN Streaming Data at 10 Gbps Control Your QDR Designs PARTNERSHIP 20 Years of Partnership Author! Author! Programmable World 2004 SOFTWARE Algorithmic C Synthesis The Need for Speed MANUFACTURING Lower PCB Mfg. Costs Optimize PCB Routability Issue 50 Fall 2004
116
Embed
Xcell Journal Issue 50 - Xilinx...THE AUTHORITATIVE JOURNAL FOR PROGRAMMABLE LOGIC USERS R ISSUE 50, FALL 2004 XCELL JOURNAL XILINX, INC. Xcell journal COVER STORY COVER STORY FPGAs
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
T H E A U T H O R I T A T I V E J O U R N A L F O R P R O G R A M M A B L E L O G I C U S E R S
R
Xcell journalXcell journalT H E A U T H O R I T A T I V E J O U R N A L F O R P R O G R A M M A B L E L O G I C U S E R S
ISSUE 50, FALL 2004XCELL JOURNAL
XILINX, INC.
COVER STORY FPGAs on MarsCOVER STORY FPGAs on Mars
MEMORY DESIGN
Streaming Data at 10 Gbps
Control Your QDR Designs
PARTNERSHIP
20 Years of Partnership
Author! Author!
Programmable World 2004
SOFTWARE
Algorithmic C Synthesis
The Need for Speed
MANUFACTURING
Lower PCB Mfg. Costs
Optimize PCB Routability
MEMORY DESIGN
Streaming Data at 10 Gbps
Control Your QDR Designs
PARTNERSHIP
20 Years of Partnership
Author! Author!
Programmable World 2004
SOFTWARE
Algorithmic C Synthesis
The Need for Speed
MANUFACTURING
Lower PCB Mfg. Costs
Optimize PCB Routability
Issue 50Fall 2004
Your ASIC
The world’s lowest-cost FPGAs
Spartan-3 Platform FPGAs deliver everything you need at the price you want. Leading the way in 90nm
process technology, the new Spartan-3 devices are driving down costs in a huge range of high-capability,
cost-sensitive applications. With the industry’s widest density range in its class — 50K to 5 Million
gates — the Spartan-3 family gives you unbeatable value and flexibility.
Lots of features … without compromising on price
Check it out. You get 18x18 embedded multipliers for XtremeDSP™ processing in a low-cost
FPGA. Our unique staggered pad technology delivers a ton of I/Os for total connectivity
solutions. Plus our XCITE technology improves signal integrity, while eliminating hundreds
of resistors to simplify board layout and reduce your bill of materials.
With the lowest cost per I/O and lowest cost per logic cell, Spartan-3 Platform
FPGAs are the perfect fit for any design … and any budget.
EEver have one of those days where you’re working hard, nose to the grindstone, striving to make sureyour latest project is on time and on target; and then suddenly out of nowhere, you overhear some-one complimenting your efforts? It’s not a comment that you solicited, but independently you findout that all of your hard work is recognized as the best among your peers and you’re headed in theright direction.
CMP Media LLC, the parent company of EETimes, just dropped quite a few kudos on the Xilinxdoorstep. Most of you know that every year CMP conducts a PCB and IC electronic design toolindustry survey to sample the engineering community’s view on design tool providers. This year, at the2004 Design Automation Conference, CMP announced the results of their first FPGA vendor survey.
The ratings are striking. In 21 out of 22 categories measuring everything from best pre-sales supportto brand and tool awareness, from most ethical company to customer loyalty, FPGA designers choseXilinx as the top FPGA vendor. We received the highest rankings in best after-sales support, bestdocumentation, current technology leader, technology leader in three years, clear vision of thefuture, best integration with other vendors’ tools, well-managed company, and more.
We were also able to hear the industry concerns. Respondents cited the accuracy and integrity of FPGAtools as their biggest design issue, followed closely by functional verification, timing closure, and theability of those tools to easily handle complex designs. They also said that the majority of their designtime was spent in place and route, synthesis, and HDL simulation, followed by timing analysis andfloorplanning. One-third of the respondents also use formal verification, while almost half regularlyuse signal integrity and C language system-level tools.
On behalf of all of the employees at Xilinx, thank you. We hear you loud and clear. Our primary goalis to put a programmable device in every piece of electronic equipment over the next 10 years. It’s niceto hear that we’re on the right path to get there.
The Xcell Journal is published quarterly. XILINX, the Xilinxlogo, CoolRunner, RocketChips, Rocket IP, Spartan,StateBENCH, StateCAD, Virtex, Virtex-II, and XACT are regis-tered trademarks of Xilinx, Inc. ACE Controller, ACE Flash,Alliance Series, AllianceCORE, Bencher, ChipScope,Configuration Logic Cell, CORE Generator, CoreLINX, DualBlock, EZTag, Fast CLK, Fast CONNECT, Foundation, GigabitSpeeds…and Beyond!, HardWire, HDL Bencher, IRL, JDrive, Jbits, LCA, LogiBLOX, Logic Cell, Logic Professor,MicroBlaze, MicroVia, MultiLINX, NanoBlaze, PicoBlaze,PLUSASM, PowerGuide, PowerMaze, QPro, Real-PCI,RocketIO, RocketPHY, SelectIO, SelectRAM, SelectRAM+,Silicon Xpresso, Smartguide, Smart-IP, SmartSearch,SMARTswitch, System ACE, Testbench In A Minute, TrueMap,UIM, VectorMaze, VersaBlock, VersaRing, Virtex-4, Virtex-IIPro, Virtex-II Pro X, Virtex-II EasyPath, Wave Table,WebFITTER, WebPACK, WebPOWERED, XABLE, XAPP, X-BLOX+, XC designated products, XChecker, XDM, XEPLD,Xilinx Foundation Series, Xilinx XDTV, Xinfo, XtremeDSP,and ZERO+ are trademarks, and The Programmable LogicCompany is a service mark of Xilinx, Inc. Other brand orproduct names are registered trademarks or trademarks oftheir respective owners.
The articles, information, and other materials included inthis issue are provided solely for the convenience of ourreaders. Xilinx makes no warranties, express, implied,statutory, or otherwise, and accepts no liability with respectto any such articles, information, or other materials ortheir use, and any use thereof is solely at the risk of theuser. Any person or entity using such information in anyway releases and waives any claim it might have againstXilinx for any loss, damage, or expense caused thereby.
We recently emergedfrom a three-yearrecession that was oneof the longest anddeepest in our history,yet things are gettingbetter. The semicon-ductor industry typi-cally moves in atwo-year cycle, unlessit is influenced by
events such as the 9/11 tragedy. Therefore, aftertwo years of growth, an overbuilding of capacitywill likely occur, with another market correctionin 2006. This is a normal and predictable cycle;it’s the way our industry usually works.
These capacity-driven recessions tend to beshallow and short – the last one was in 1996and lasted about 18 months. For Xilinx® dur-ing that period, we had a few negative growthquarters, with an overall 1% growth.
The market recovery is still fragile, drivenprimarily by the U.S. and China. And not all ofthe industries that we deal with are yet in recov-ery, which I think is good because it helps usmaintain a steady growth pattern as they beginto improve later in the year.
Overall, Xilinx is in an extremely good posi-tion – our business processes, our manufactur-ing technology, our circuit innovation, and oursoftware are poised to take full advantage of thecurrent market conditions.
The economy is improving and most analysts predict that the semiconductor industry will grow for the next two years.Here’s what I see ahead for Xilinx.
Preparing for a Bright FuturePreparing for a Bright Future
Fall 2004 Xcell Journal 5
Viewfrom the top
by Wim RoelandtsCEO, Xilinx, Inc.
The Growing Asian MarketsA significant and quickly growing segmentof our business comes from the Japaneseand Asia-Pacific markets – our businessthere is now more than three times higherthan it was just four years ago. This comesboth from systems that are designed andmanufactured there as well as from manu-facturing outsourced from other countries.Plus, Japanese business is starting toexpand and is beginning to help drive theworld economy forward.
I believe our business in Asia will con-tinue to grow over the years to come. Wesee a big shift taking place, driven primarilyby the next big trend in our industry – dig-ital consumer electronics. The core of thisbusiness will be in Asia, and we are puttinga lot of our resources there to help meet thedemand. We recently began staffing a facil-ity in Singapore that will eventually housemore than 200 employees.
Going MainstreamEight years ago, when I joined Xilinx, I saidthat we will put a programmable chip inevery system, and it’s now becoming a reali-ty. Our ability to shrink our products intosmaller and smaller geometries at lowercosts, coupled with the recession (whichmeans that many of our customers can nolonger afford the high costs of designing andbuilding ASICs) is moving more and moreof our customers to take full advantage ofthe many benefits of programmable logic.
Market forces, combined with our low-cost technology advances, are driving pro-grammable logic into the mainstream – ourdevices are now used in all types of prod-ucts and the trend continues to grow. Overthe next two or three years, when these newdesigns go into production, our businesswill expand significantly. Programmablelogic is indeed taking over; it is becomingmainstream and finding new marketswhere it’s never been used before.
Because cores allow us to provide a morecomplete solution, our customers have todo less work to produce more and betterdesigns. And they want to buy cores fromXilinx because they want to have the assur-ance of ongoing long-term support. We arein fact increasing our investments in IP andcores to meet the increasing demand. Wealready have many more cores than ourcompetitors, and thus we are very wellpositioned to take advantage of thesetrends.
Xilinx Strategy for the FutureHere are some of the long-term objectivesthat define our strategy for the next five to10 years.
Setting the StandardWe will continue to set the standard forhow to manage a high-tech company. Ithink we have already done a phenomenal
job – we’re admired as a company thatmanages its people well, treats its peoplewell, and at the same time is innovative andwins in the market. And of course, the coreof our culture is innovation. We want tocontinue to bring new technologies, newcircuitries, new innovative marketing pro-grams, and new channels of distribution.This will continue to be the core of ourstrategy because it’s what makes Xilinxexcel in everything we do.
Leading Manufacturing TechnologyWe will continue to reduce our manufac-turing costs. We made a lot of progress inthe last year and now we need to move onto the next step. My intention is to makesure that all of our organizations arefocused on low-cost, high-volume capabili-ties. The consumer electronics and auto-motive industries require us to reduce costsand ramp production faster than everbefore. We will continue to innovate with-
Beating Moore’s LawSemiconductor technology typically fol-lows Moore’s Law, which states that everytwo years the number of transistors thatcan be fabricated on a chip will double –this law has held true for many years. As weapproach finer and finer process geome-tries, moving from 130 nm to 90 nm anddown to 65 nm, it becomes increasinglydifficult to manufacture devices. Xilinx isleading the industry in the developmentand use of these advanced technologies,which means that we are often the first tosolve difficult process problems – that’sboth the good and the bad news. We usu-ally get to market first with the mostadvanced manufacturing processes, but wealso put a lot of effort into getting it right.
We also have a strategy for significantlyimproving performance through innova-tive architectural designs – the best exam-ple is our new Virtex-4™ family. In fact,
most of our performance improvements inthe Virtex-4 family come from circuitenhancements. The Virtex-4 ASMBLarchitecture allows us to create devices thatare optimized for specific applications, pro-viding just the features and performancethat are needed at the lowest possible cost.As you can see, our innovation is not just inCMOS technology – we are way ahead ofour competition in both device manufac-turing technology and architecture.
Reducing Design Costs with IPOur marketplace is changing rapidly, andour customers must operate differentlytoday than they did four years ago. Theirown customers are much more cost-con-scious, and thus they are much more wor-ried about return on investments. Ourcustomers have fewer engineers because ofthe recession, so they demand more fromus – it’s one of the reasons why we areincreasing our investments in IP and cores.
6 Xcell Journal Fall 2004
V I E W F R O M T H E T O P
Programmable logic is indeed taking over; it is becoming mainstream and finding new markets where it’s never been used before.
in all of our organizations to achieve thisongoing objective. For programmable logicto achieve its full potential in mainstreamelectronics, we must become even moreefficient and productive – and we will.
Yet, while we continue to develop morehigh-volume strategies and products, wewill continue to lead the high-end, high-performance market that has traditionallybeen the core of our business. We are doinga phenomenal job with our Virtex productline, with 70% to 80% market share, andthat will continue as well.
Creating PartnershipsPartnerships are a key strategy that allowus to focus on what we do best whileallowing other companies to provide theproducts and services they do best – wecall it our Partner Ecosystem. We willcontinue to build strong partnerships notonly with our suppliers but with our cus-tomers as well.
We want to engage our customers earlyin their design process so that we can pro-vide the best possible service and supportthroughout their entire design and manu-facturing cycle. This requires a broad rangeof services from a number of ecosystempartners, and that requires a well coordi-nated and comprehensive approach. Wehave been successful with our partnershipprogram in the past and we intend tostrengthen it by making it easier for ourcustomer partners – and our technologypartners – to work more closely togetherfor the benefit of all.
Expanding Our MarketsWe are already the leader in programma-ble logic technology, and now it’s time forus to become a leader in all programma-ble technology, including DSP andembedded processing. Our technologyalready provides significant advantages inthese areas, and it’s time for us to capital-ize on these strengths. We want to be thechampion of programmability because we
are the only company that can providethe advantages of programmable logic,high-performance DSP, and embeddedprocessing all on one device.
We are the largest company in program-
mable logic, with 50% market segmentshare. However, the embedded processormarket and the DSP markets also offer sig-nificant market opportunity.
Brand RecognitionXilinx is already well respected and recog-nized in our marketplace, and we willcontinue to build our brand worldwide.Our success in the first 10 years was basedon two innovations: FPGAs and fablessmanufacturing. When we started in1985, neither of these ideas was credible.Only the Xilinx founders believed they
would work. Yet we made them possibleand we made them credible.
Our second 10 years were based on twothings: becoming the technology leader inour industry and establishing a unique
business culture that fostersinnovation. In that we havealso been very successful.
For the next 10 years, wewant to extend our brand andestablish Xilinx as a globalleader, recognized not only bythe engineering community butalso by the financial communi-ty. We want to be recognizednot only for our innovative cul-ture but also for our financialstability, management depth,the global reach and diversity ofour products, and by the brandname we create.
Going GlobalWe will continue to expandglobally and place ourresources close to the marketsthey serve. If 20% of our busi-ness is in Asia, we will strive toplace 20% of our resourcesthere because we want to beclose to our customers andunderstand their needs. That’swhy we opened up a new fac-tory headquarters in Singapore
and a new design center in India. We wantto have a presence in Asia just like we havein Europe and the United States.
ConclusionInnovation remains the core of Xilinx. I
believe innovation is the only thing thatmatters because if you innovate, there is nocompetition. That’s the reason why wehave gained market share every single yearin the last six years.
As you can see I’m very excited aboutour current situation, and I’m even moreexcited about our future.
V I E W F R O M T H E T O P
Fall 2004 Xcell Journal 7
For the next 10 years, we want to extend our brand and establish Xilinx as a global leader,recognized not only by the engineering community but also by the financial community.
by David RatterField Applications EngineerNu Horizons [email protected]
Selecting the correct components for any engi-neering project can be a critical and difficultchoice. This is clearly true for engineers at the JetPropulsion Laboratory (JPL) when they mustselect components used on high-stakes flight proj-ects, and especially important on high-profile mis-sions like the Mars Exploration Rover Mission.
On Mars there are no tow trucks or auto clubsto call if something stops working. So how didXilinx FPGAs go from performing a predomi-nantly flight ASIC prototyping role to beingdesigned into and flown in projects like the Marslander and rovers? And what does the future holdfor Xilinx and JPL space missions?
Xilinx FPGAs have transitioned from a flight ASIC prototyping platform to playing integral roles in the Mars Exploration Rover Mission.
Xilinx FPGAs have transitioned from a flight ASIC prototyping platform to playing integral roles in the Mars Exploration Rover Mission.
FPGAs on MarsFPGAs on Mars
8 Xcell Journal Fall 2004
The needs of JPL’s design engineers werethe main driving force behind the paradigmshift from ASIC prototype to flight-quali-fied part, as were the Xilinx testing, pro-cessing, and manufacturing flows for itsradiation-tolerant FPGAs. Engineeringneeds demand meeting mission require-ments, both from a functional/performanceviewpoint and a time-to-working-productviewpoint. Xilinx FPGAs provide inherentdesign advantages to meet those needs: highgate densities, rich on-board architecturalfeatures, large I/O counts with multiple I/Ostandards, and the ability to be repro-grammed at any time.
The second reason for the transitionwas JPL’s qualification of Xilinx radiation-tolerant FPGAs into more and more flightsituations.
The net results of these efforts can easi-ly be seen on the Mars Exploration Rovers.Inside of each rover (named Discovery andSpirit), two Virtex ™ XQVR1000s servedas the main brains that controlled themotors. Four Xilinx XQR4062XL devicesin the 4000XL family controlled the Marslander pyrotechnics, crucial to the success-ful multi-phase descent and landing proce-dure. Also evident, although not as visible,are the increasing number of future flightmissions that JPL engineers are designingwith Xilinx radiation-tolerant FPGAs.
In this article, we’ll briefly documentthe parts qualification and design steps,along with the past, present, and future ofFPGA-based flight opportunities at JPL.
Flight ConsiderationsThere are three steps that must be accom-plished before any part can be used in aflight application for JPL. The first is ageneral flight approval for a part. The sec-ond can be referred to as mission-specificapproval. The third is additional designrequirements for flight-based semicon-ductors.
General Flight ApprovalsJPL must give general flight approvalbefore any part can be used for a flightapplication. This process requires that themanufacturer perform numerous addition-al processing, testing, and quality steps
parameters might include the number oftemperature cycles, total ionizing dose, andpredicted rate of radiation exposure. It ispossible that parts with general flightapproval will not get mission-specific flightapproval.
Specific Flight Design ConsiderationsOnly after a part has met the above two cri-teria can it be used in a flight mission. Thedesign process entails incorporating space-specific flight design requirements thatinclude, but are not limited to, the follow-ing single-event phenomena:
• Single-event latch-up (SEL)
• Single-event upsets (SEU)
• Single-event transients (SET)
• Single-event functional interrupts(SEFIs)
In the case of Xilinx radiation-tolerantFPGAs, all single-event phenomena aretaken into account either through the radi-ation-tolerant manufacturing and process-ing steps or through well-documenteddesign practices:
• The epitaxial layer of Xilinx radiation-tolerant FPGAs eliminates SELs.
• Triple-mode redundancy (commonlyreferred to as TMR) mitigates SEUsand SETs.
• “Scrubbing,” or reprogramming theFGPA, takes care of SEFIs and theaccumulation of SEUs.
Let’s discuss the latter two design fea-tures in more detail.
In simple terms, a design with TMRrequires three sets of key logic elements, witha voting structure that allows only the major-ity decision to propagate through the circuit.The theory is that statistically you are goingto get an SEU over some time period. Whenthis upset occurs, it will disrupt a single ele-ment (net, route, or bit). When this happensand the element it disrupts is being used, theother two “correct” elements will have thecorrect value; thus, the correct value will bepassed out of the circuit. This is especiallyimportant in circuits that use feedback, suchas counters and state machines.
over and above the normal commercialprocessing steps.
JPL also meticulously examines devicestatistical and quality data that is constantlyupdated by the semiconductor manufactur-ers. They also examine additional parame-ters in this phase, including temperatureconsiderations and packaging materials aswell as semiconductor characteristics (forexample, are there voids or contaminantsthat in zero gravity could migrate and causefailures?). Only after JPL engineers haveconducted exhaustive research and analysisdo they approve parts for flight use.
JPL Radiation Effects Group scientistswork directly with Xilinx to unify andcontinually improve the testing, process-ing, and manufacturing steps used forXilinx radiation-tolerant parts. This closecustomer/manufacturer relationship hasresulted in a much superior radiation-tol-erant product from Xilinx, and for JPL, ahigh-reliability manufacturing processgives them the utmost confidence.
Specific Flight ApprovalsEven after a part or parts has general flightapproval, it still must receive mission-specific flight approval. Mission-specificapproval is exactly what the term implies:JPL scientists and engineers review themission-specific environments that theparts will encounter. This includes adetailed risk assessment.
JPL takes into account all aspects of theflight to predict what the part(s) will faceduring the mission’s lifetime. Some of these
Fall 2004 Xcell Journal 9
Numerous approaches can be takenwith respect to scrubbing, from simplyreprogramming the FPGA to partial recon-figuration. The simplest method of scrub-bing is to completely reprogram the FPGAat some periodic rate (typically 1/10 thecalculated upset rate).
For example, if an SEU will occur onceevery 10 days, then you would reprogramthe FPGA every day. However, when youreprogram the FPGA it is not operationalduring that reprogram time (on the orderof micro to milliseconds). For situationsthat cannot tolerate that type of interrup-tion, partial reconfiguration is available.This technique allows the FPGA to bereprogrammed while still operational.
The PastAlthough the both the Discovery and Spiritrovers are still on the surface of Mars andactive, they were launched in June and July2003 and landed on Mars in January 2004.This means, obviously, that the engineeringwas completed in the past.
As stated earlier, the Mars ExplorationRovers used XQVR1000 devices and thelander used XQR4062XLs. TheXQR4062XLs were used during thedescent and landing of the rovers on thesurface of Mars, while the XQVR1000swere used to control all of the brushed DCand stepper motors for the wheels, steering,antennas, camera, and other instrumentson the rovers themselves.
Both the XQR4062XL and XQVR1000designs used TMR for SEU and SET miti-gation as well as scrubbing. JPL engineersachieved TMR in their designs by analyz-ing the design for feedback nets and otherlow-level design details (as detailed inXilinx application note XAPP197), andthen inserted or replaced logic with TMRlibrary elements. After the designs werefunctionally implemented, the engineerswent back through the design and insertedthe TMR logic where necessary and madeother space-specific design changes.
Due to the critical nature of theXQR4062XL’s role, FPGA redundancy wasutilized to mitigate all single-event phe-nomena. The scrubbing techniqueemployed was a complete reconfiguration.
When an upset condition was detected, theFPGA in question was completely repro-grammed, while the redundant FPGAsremained functional. On the other hand,because of its non-time critical nature, whena fault condition was detected on one of theXQVR1000s, the rover was temporarilyhalted, the FPGA was reprogrammed, andthe rover went back on its merry way.
All of the mitigation techniques on theMars Exploration Rovers worked exactlyas designed by JPL engineers. During theseven-month voyage from Earth to Mars,the Xilinx radiation-tolerant FPGAs onthe lander were “left on.” During thattime JPL collected data of interest,including the upset rate. The upset ratespredicted for the FPGAs by JPL matchedalmost exactly the actual upset ratesobserved. Also, the upset detection andmitigation techniques implemented onthe FPGAs performed their functionsflawlessly and allowed for robust and reli-able operation.
The PresentJPL is currently working on flight designswith both Virtex-II™, the latest Xilinxradiation-tolerant family, as well as Virtexradiation-tolerant FPGAs. These new mis-sions will fly in the next two to five yearsand are becoming more and more sophisti-cated in both mission electronic require-ments and design implementation. Thesecurrent projects more fully utilize theFPGA’s inherent benefits.
JPL is particularly interested in the abil-ity to update or revise designs while thespacecraft is either in flight to its final des-tination or already there. This will allowengineers to implement algorithmenhancements after the spacecraft has leftEarth, enabling them to constantlyimprove design performance during a longmission timeline. This, coupled with par-tial reconfiguration, will allow an FPGA-based design to have one portion of itsdesign upgraded while the rest of thedesign remains completely operational.
There have been some breakthroughs inthe area of single event mitigation and cor-rection. Xilinx, in partnership with SandiaLabs, recently produced a TMR tool that
10 Xcell Journal Fall 2004
Animation by Dan Maas, Maas Digital LLC(c) 2002 Cornell University. All rights reserved.This work was performed for the Jet PropulsionLaboratory, California Institute of Technology,sponsored by the United States Government underPrime Contract # NAS7-1407 between theCalifornia Institute of Technology and NASA.Copyright and other rights in the design drawingsof the Mars Exploration Rover are held by theCalifornia Institute of Technology (Caltech)/ JetPropulsion Laboratory (JPL). Use of the MERdesign has been provided to Cornell courtesy ofNASA, JPL, and Caltech.
will XTMR a design. The XTMR tooltakes in a synthesized netlist, analyzes it,and applies the appropriate TMR measuresand space-specific design modifications toproduce a final XTMR netlist. Not onlydoes this guarantee a much more robustTMR design, it also takes what used to takean engineer days or weeks to perform andreduces the process to a matter of minutes.
The FutureWho knows that the future has in store?The new missions have more demandingrequirements: more speed and more inte-gration, with an ongoing goal of less spaceand less weight. On the Xilinx front, eachsubsequent family of radiation-tolerantFPGAs (like Virtex-II Pro™ devices) willprovide more integration, more architec-tural features, and more capabilities.
The need for more integration, speed,and reduced space and weight goes hand inhand with continually improving radia-tion-tolerant FPGAs. Xilinx advances inFPGA technology and the improvementsin radiation testing and processing madepossible by their relationship with JPLcome together to spell success.
ConclusionThe collaborative efforts between JPL, theXilinx aerospace and defense team, andlocal support (provided by the manufactur-er’s representative, Norcomp SC, and NuHorizons Electronics Distribution) helpedpave the way for Xilinx to go from a pre-dominantly ASIC prototyping role tobecome key components in the successfuldesign and implementation of the MarsExploration Rovers.
Current JPL flight projects that willlaunch in the years to come are alreadybeing designed using the latest Virtex andVirtex-II Xilinx high-reliability FPGAs.And the continual release of bigger, faster,and better Xilinx radiation-tolerant fami-lies means that with Xilinx and JPL, noteven the sky is the limit.
For more information, please visithttp: / /marsrovers . jpl .nasa.gov/home/ , w w w . x i l i n x . c o m / e s p / m i l _ a e r o /index.htm, www.norcompsc.com, andwww.nuhorizons.com.
Fall 2004 Xcell Journal 11
Would you like to write for Xcell Publications?
It’s easier than you think.
Would you like to write for Xcell Publications?
It’s easier than you think.We recently launched the Xcell Publishing Alliance
to help you publish your technical ideas. We can help you – from concept research and development, through planning and
implementation, all the way to publication and marketing.
Submit articles for our Web-based Xcell Online or our printed Xcell Journal and we will assign an editor and a graphics artist to work
with you to make your work look as good as possible. Submit yourbook concepts and we will bring our partnership with Elsevier,
the largest English language publisher in the world, and our broad industry resources to assist you in planning, research,
writing, editing, and marketing.
We recently launched the Xcell Publishing Alliance to help you publish your technical ideas. We can help you –
from concept research and development, through planning and implementation, all the way to publication and marketing.
Submit articles for our Web-based Xcell Online or our printed Xcell Journal and we will assign an editor and a graphics artist to work
with you to make your work look as good as possible. Submit yourbook concepts and we will bring our partnership with Elsevier,
the largest English language publisher in the world, and our broad industry resources to assist you in planning, research,
writing, editing, and marketing.
For more information on this exciting and highly rewarding program, please contact:
www.xilinx.com/services Xilinx offers the industry’s broadest portfolio of education, supportand design services to extend your technical capabilities, accelerateyour time to market, and build a competitive advantage.
• Reduce the learning curve
• Speed your design time
• Jump-start your product development cycle
• Lower your overall development costs
Finish FasterXilinx delivers industry-leading service and support through everystep of the design process—around the clock and around the world—to help you get to market faster. From technical support, consultativeservices, and dedicated design assistance to online support and train-ing, you can find it all at www.xilinx.com/services.
You’d like to use DDR-SDRAM as the stor-age medium for OC-192 test pattern gener-ation to dramatically increase the length ofpatterns available to you. However, whenyou take the standard approach to archi-tecting this interface and attempt imple-mentation in a FPGA, you find that theFIFO read clock enable signals don’t meetthe timing requirements. Your projectbudget can’t afford an ASIC. How can youget around this issue and make the FPGAwork as the needed interface?
Fortunately, the Xilinx® digital clockmanager (DCM) provides the answer. Aslong as you’ve got sufficient global clockresources available, you can use theDCM’s quadrature-phase outputs to clockthe outputs of the four FIFO groupsdirectly. This eliminates the need for clock
enable signals in the 320 MHz clockdomain and yields a design that willachieve timing closure at that speed.
Standard ArchitectureFigure 1 shows the standard architectureused to design a streaming data interfacebetween DDR-SDRAM and OC-192 seri-alizers. All of the design blocks shown inthis figure, with the exception of theFIFO/MUX controller, are available asdirectly instantiated elements (the DDRflip-flop), Xilinx CORE Generator™modules (MUX x and FIFO n), or Xilinx-provided reference designs (DDR-SDRAM controller).
DDR-SDRAM ControllerThe DDR-SDRAM controller is a modifiedXilinx-provided reference design. I modifiedit to provide a continuously streaming modeof operation. The controller provides thenecessary address and control signals fordriving a standard PC-1600/2100 DDR-
SDRAM module and also converts the databus from a 64-bit DDR mode to a 128-bitSDR mode to facilitate a simpler clockingscheme inside the FPGA.
The controller stops fetching data frommemory and disables the write enable sig-nal to the FIFOs when it detects thatFIFO_0’s high watermark signal has goneactive (not shown in Figure 1).
The frequency of clock 1 is 100 MHz,yielding a burst data rate of 12.8 Gbps.This data rate is 28% higher than thatrequired by the serializer, leaving room foroverhead tasks such as DRAM refresh.
FIFOsThe eight FIFO blocks represent standard,asynchronous FIFO elements generatedusing the CORE Generator tool. TheFIFOs serve a dual purpose. First, they pro-vide elastic buffering between two asyn-chronous clock domains. Second, theywork in conjunction with the MUX x andFIFO/MUX controller blocks to provide
Using a Virtex-II/Pro FPGA to stream data from DDR-SDRAM to OC-192 serializers.
Streaming Data at 10 Gbps
Fall 2004 Xcell Journal 13
the data bus width reduction. This is nec-essary to convert from the 128-bit data buspresented by the DDR-SDRAM controllerto the 16-bit data bus required by typicalOC-192 serializers. I will explain this func-tionality in more detail.
MUXsThe two multiplexer blocks represent stan-dard 4-to-1 synchronous 16-bit bus multi-plexers also generated using the COREGenerator tool.
DDR Flip-flopThe DDR flip-flop is a directly instantiat-ed element of the Virtex-II™/Pro™ archi-tecture. Its two inputs are multiplexed ontoits single output through successive clock-ing at both clock edges. In this way, thedata A input is clocked through to data outat the rising edge of the clock, while data Bis clocked through at the falling edge.
FIFO/MUX ControllerThe FIFO/MUX controller is the onlyfully custom element in the architecture
(1/[320 MHz]). The numbers identifyingthe various data intervals correspond to theindex of a particular 16-bit word in asequence of data, which is at least 24 16-bitwords in length. The FIFO outputs areupdated once every four clock cycles inquadrature succession, as shown in the tim-ing diagram.
The two multiplexers select from amongthe four FIFO groups in the same succes-sion. However, a delay is imposed on themultiplexer selection sequence such that the
FIFO outputs are allowedthree clock cycles to prop-agate to the multiplexerinputs before being select-ed, as shown.
By designing this way,I can apply a multi-cycledelay constraint to theFIFO outputs and thusease the task of the placeand route engine. This isvery helpful when design-ing in a 320 MHz clockdomain. The DDR flip-flop selects from amongits two inputs in standardfashion, as shown. Theresult is a 640 Mword/sdata stream at the output,yielding a data rate to theserializer of 10.24 Gbps.
Implementation ResultsUp to this point, the pro-posed architecture appearsto satisfy the designrequirements. However,when I tried to implement
this approach in a XC2V1000-6BG575part, I couldn’t get the propagation delays ofthe FIFO read clock enable signals underthe 3.125 ns period constraint imposed bythe 320 MHz clock. Therefore, I came upwith the following modification to the basicarchitecture (Figure 3), which resulted insuccessful timing closure.
Modification DescriptionIn the modified architecture shown inFigure 3, I eliminated the clock 1 domainsection of the design, as it is irrelevant to
(also shown in Figure 1). Its operation isstraightforward and you can easily under-stand it by looking at the timing diagramof Figure 2.
Note that while the signals generated bythe FIFO/MUX controller are not explicit-ly shown in the timing diagram, theirbehavior is implicitly depicted there. Forinstance, the outputs of FIFOs 0 and 1only change when the enable A signal fromthe FIFO/MUX controller is active.
Likewise, whenever a multiplexer out-
put changes, it is the respective select X sig-nal from the FIFO/MUX controller thatdictates which of the multiplexer’s fourinputs gets clocked through to its output.
Timing DiscussionAs mentioned previously, Figure 2 depicts atiming diagram that describes the dynamicbehavior of the architecture shown inFigure 1. The clock signal shown is clock 2from Figure 1. (The clock 1 domain doesnot contain any novel design features.)
The clock period “T” is 3.125 ns
14 Xcell Journal Fall 2004
CLK_1
ADDR/CNTRL
64 Bits
16 Bits 16 Bits 16 Bits
16 Bits
16 Bits
Enable A
Data A
Data B
ClkA
Clk B
Enable B
Select B
Select A
Enable C
Enable D
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits 16 Bits
16 Bits 16 Bits
16 Bits 16 Bits
16 Bits 16 Bits
16 Bits 16 Bits
16 Bits 16 Bits
16 Bits 16 Bits
To DDR-SRAMModule
DDR-SRAMCONTROLLER
CLK_1_DOMAIN CLK_2_DOMAIN
FIFO_0Write ClkWrite En
Data In Data Out
Read ClkRead En
FIFO_1
MUX_A
MUX_B
FIFO/MUXCONTROLLER
DDR_Flipflop
CLK_2
Write ClkWrite En
Data In Data Out
Read ClkRead En
FIFO_2Write ClkWrite En
Data In Data Out
Read ClkRead En
FIFO_3Write ClkWrite En
Data In Data Out
Read ClkRead En
FIFO_4Write ClkWrite En
Data In Data Out
Read ClkRead En
FIFO_5Write ClkWrite En
Data In Data Out
Read ClkRead En
FIFO_6Write ClkWrite En
Data In Data Out
Read ClkRead En
FIFO_7Write ClkWrite En
Data In Data Out
Read ClkRead En
From DDR-SRAMModule
Figure 1 – Standard architecture
the discussion. The only design block thatchanged in the modified architecture is theFIFO/MUX controller; all other designblocks remain unchanged.
Instead of generating clock-enable sig-
nals, the controller block generates four 80MHz clocks in a quadrature phase arrange-ment. This is very easy to accomplish whendesigning for the Xilinx Virtex-II/Pro archi-tecture, as the DCMs in that architecture
have quadrature phase outputs. All I had todo was divide down the 320 MHz clock by afactor of four, using an additional DCM, togenerate the original 80 MHz clock signal.
When I apply these quadrature-phased80 MHz clocks directly to the four FIFOgroups, respectively – without using anyclock enable signals – the data at all FIFOoutputs is exactly as required by the originalarchitecture. You can see this fairly easily byenvisioning these four clocks overlaid atopthe four FIFO n/n signals in the timing dia-gram of Figure 2.
Notice that the rising edges of the fourclocks line up perfectly with the changesin the outputs of the four FIFO groups.You no longer need to use clock enables togovern the FIFO read clocking and have,therefore, eliminated the one group of sig-nals that failed to achieve timing closure.Of course, you must have two additionalDCMs and five additional global clockbuffers available to make use of thisapproach.
ConclusionBy taking advantage of the designtechnique presented here, OC-192test pattern generation hardwaredesigners can avail themselves ofthe low cost and large capacity ofstandard DDR-SDRAM modules,thereby making possible the use ofextremely long test patterns orautomated testing with manyshorter patterns, all without incur-ring the cost of ASIC design andproduction.
The technique presented herewill also find applicability in thearea of direct digital synthesis(DDS) of arbitrary waveforms,where a high-speed digital wave-form is used, in conjunction withPWM or Sigma/Delta modula-tion and subsequent low-pass fil-tering, to produce arbitrarywaveforms with great precisionand repeatability.
If you have any questions or sug-gestions, please contact me, DavidBanas, at (415) 846-5837, or e-mailat [email protected].
Fall 2004 Xcell Journal 15
CLK
T
FIFO 0/1 0/1 8/9 16/17X
FIFO 2/3 2/3 10/11 18/19X
FIFO 4/5 4/5 12/13 20/21X
FIFO 6/7 6/7
3T
T
T
0
1
0 1 2 3 4 5 6 7 8 9 10 11 12 13
3 5 7 9 11 13 15
2 4 6 8 10 12 14
14/15X
MUX_A X
MUX_B X
DATA OUT X
CLK_2_DOMAIN
CLK_2
DDR_Flipflop
FIFO/MUXCONTROLLER
MU
X_A
MU
X_B
FIFO_0
80 MHz, 90o
270o
180o
90o
0o
80 MHz, 0o
Read Clk
Data Out
Read Clk
16 Bits 16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits Data A
Select B
Select A
DCM_1DCM_2
/4 OUT
CLK IN CLK IN
Data Out
DataB
Clk A
Clk A
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
16 Bits
Data Out
Read Clk
Data Out
Read Clk
Data Out
Read Clk
Data Out
Read Clk
Data Out
Read Clk
Data Out
Read Clk
Data Out
80 MHz, 270o
80 MHz, 180o
FIFO_1
FIFO_2
FIFO_3
FIFO_4
FIFO_6
FIFO_6
FIFO_7
Figure 2 – Output data timing
Figure 3 – Modified architecture
by Jerry A. LongTechnical Marketing Manager, Chronology Division Forte Design [email protected]
As design requirements push memoryinterfaces to operate at 200 MHz andbeyond, a new set of timing challengesenters the design arena. Timing analysisplays an increasingly prominent role inthe identification and resolution of systemoperation issues.
It’s likely that you will use doubledata rate (DDR) or Quad Data Rate(QDR™) memory devices in your nexthigh-speed design, which brings theadded need to design signal skew intothe memory controller to ensure properclock/data relationships.
Xilinx® has simplified the use of thesedevices by providing high-performanceexternal memory interfaces directly fromtheir Virtex-II™ FPGAs. And to clearlyunderstand interface timing and potentialissues, Chronology has added features toits TimingDesigner® tool to streamlinethe exchange of critical timing data withthe Xilinx ISE software suite.
A step-by-step guide to solving QDR memory data capture challenges with Virtex-II FPGAs.A step-by-step guide to solving QDR memory data capture challenges with Virtex-II FPGAs.
Control Your QDR DesignsControl Your QDR Designs
16 Xcell Journal Fall 2004
TimingDesigner generates place androute constraints, allowing direct use ofpost-place-and-route timing informationto verify desired FPGA interface operation.You can accurately determine the properclock/data relationship for yourDDR/QDR memory interface design,export the information as constraint datainto ISE, and automatically get visual veri-fication of design success.
For the purposes of this design guide,we’ll use a QDR SRAM device to illustrate asource-synchronous interface design.Stepping through the design flow, we imple-mented a QDR memory controller in aXilinx X2V50 Virtex-II Pro™ FPGA with afocus on the interface signals required for aread operation, utilizing a 133 MHz masterclock. The memory device is a Micron™ 18Mb QDR II four-word burst SRAM(MT54W1MH18J).
The features and principles outlined hereare not necessarily unique to high-speedmemory design. TimingDesigner’s robusttiming diagram-based analysis features, cou-pled with its Xilinx-specific import/exportcapabilities, allow a level of integration thatcan be applied to any timing-critical designinterface for Xilinx FPGAs.
QDR Interface Timing RequirementsQDR SRAM devices have unique timingrequirements for successful read operations.In order to guarantee accurate data capture,QDR devices require the capture clock to becenter-aligned within the valid data window.For source-synchronous designs, this meansshifting the optional-use echo data clocksupplied by the QDR device.
Center Alignment of Capture Clock EdgesProper timing for read operations of QDRSRAM interface designs requires you tocenter-align the edges of the capture clockwithin the valid window of the data bus foraccurate data capture, as shown in Figure 1.This is because most SRAM devices typi-cally have a positive setup and a positivehold requirement, and both are roughly thesame value. So it makes sense to center theclock edge within the data valid window tomaximize the safety margin for latchingdata. To accomplish this, the memory con-
clock/data relationship to ensure that vari-ous temperature effects the design mayencounter (or other unforeseen influences)won’t cause an excessive amount of drift insignal position during the read operationand result in a violation of the setup orhold time requirement of the receiving reg-ister. In theory, a center-aligned clock edgewill maximize the setup and hold times formost devices, allowing sufficient safetymargins for signal drift.
However, some devices, like the VirtexII-Pro device, have a negative hold timerequirement, which simply means that datacan transition to the next value before theclock edge that latches it. In effect, thischaracteristic places the clock edge to theright (delayed) of the data transition. So forthese devices, if you center-align the cap-ture clock within the actual data valid win-dow, you may be satisfying the setup/holdrequirements of the device, but the safetymargin achieved will be greater for the holdrequirement than for setup.
The ideal solution is to provide a maxi-mum safety margin for both the setup andhold requirements of a device, which trans-lates to “balancing” these margins. Thisprovides equal amounts of safety for both,as illustrated in Figure 2.
troller must skew the capture clock.For source-synchronous capture of read
data from a QDR device, you must use theoptional echo clock signals (typically CQand CQ#) provided from the QDR device.With the Virtex-II Pro family of FPGAs,skewing this clock is easily accomplishedusing one of the digital clock managers(DCM). However, the amount of phase shiftnecessary to achieve a safe margin is anunknown, given the external PCB skew
effects on both the incoming data and itsassociated clock, as well as the associatedrouting delays encountered within the FPGAfabric. TimingDesigner will help us to accu-rately determine this phase shift value.
Capturing Read Data in Virtex-II Pro DevicesYou can skew (or delay) the clock signal byusing PCB trace delay techniques, or bydesigning clock delay into the memory con-troller design. Because PCB trace delay tech-niques aren’t very flexible, it makes moresense to use the incidental PCB trace delaycoupled with internal FPGA routing delayand use the Virtex-II Pro DCM element asthe “adjustable” component for phase shiftwithin the FPGA memory controller design.
Typically, memory manufacturers rec-ommend center alignment of the
Fall 2004 Xcell Journal 17
Figure 1 – Illustration of center-aligned clock/data relationship
Figure 2 – Center alignment of device minimum data valid window
To accomplish this balance, you mustdetermine the minimum data valid windowfor the receiving device, and center that win-dow within the actual data valid windowprovided from the memory device, givenyour design parameters. Using the minimumsetup and hold characteristics of the receiv-ing device, determine a minimum “safe” datavalid window with the following formula:
Min Data Valid Window = Min Setup + Min Hold
Because the placement of the resultingminimum data valid window is tied to theplacement of the clock signal, skewing theclock will effectively skew the minimumdata valid window. As indicated in Figure
2, as long as the data bus transitions out-side of the receiver’s minimum data validwindow, safe data capture is ensured.
Determining the Clock/Data RelationshipTo determine the required clock skew,
you create a timing diagram illustrating theclock/data relationship of a read operationfor the QDR device based on the actualread timing diagrams acquired directlyfrom the memory device’s data sheet. To bemore descriptive of the signal relationshipsin the diagram, name the read data clocksignal C_Mem and the data bus signalQ_Mem to reflect the signals as they appearat the pins of the memory device.
To model those same signals as theyappear at the pins of the FPGA, after theiraccumulated flight path delay from theQDR device, create the signals C_FPGAand Q_FPGA. Figure 3 is a block diagramillustrating the signal path relationshipsjust described.
The resulting QDR memory read dia-gram is displayed in Figure 4. The data busrepresents the transition period necessaryfor all elements of the data bus betweenvalid data words. The PCB trace delayaccumulated by both data and clock is rep-resented with separate variables: tPCBdatafor the delay associated with the data sig-nal and tPCBclock for the delay associatedwith the clock. This allows you to easilyvary the values and see the effect on thedesign results.
Creating Constraints with TimingDesignerKnowing the timing relationship of anexternal clock and its associated data as itarrives at the pins of the FPGA provides aunique advantage for accurate data captureand design success. The Xilinx timing con-straint OFFSET is used along with its asso-ciated keywords to provide initial timinginformation to ISE, so that proper place-ment of data capture elements and theirassociated routing delays will be adequatefor the design. As illustrated in Figure 5,TimingDesigner provides direct dynamicaccess to any measurement within a timingdiagram for generation of a place and routeconstraint file (UCF).
For this design example, you need tomeasure the offset for the data (Q_FPGA)and clock (C_FPGA) signals, and the dura-tion of the valid data window at the pins ofthe FPGA controller. This can be donedirectly from the timing diagram usingTimingDesigner measurements, as indicat-ed in Figure 4. You’ll also need the readdata clock period measurement.
Generating Constraint InformationTimingDesigner’s Dynamic Text dialogbox offers a way to reference timing dia-gram measurements from within a vendor’sspecific timing constraint syntax. UsingISE’s OFFSET timing constraint syntax,you reference the measured offset values in
18 Xcell Journal Fall 2004
MasterClock
Qin_Data
Cin_Clock
Q_FPGA
C_FPGA
DCM Phase Skew (tSK)
Routing Delay (tRt)
Q_Mem
C_MemK, K#
R#
W#
Addr
D
CQ, CQ#Q
Internal Logic Element
DCM
QDRController
FPGA/ASIC
QDR
SRAM
Data Flight Time (tPCBdata)
Clock Flight Time (tPCBclock)
Figure 3 – Illustration of signal delay paths for QDR read operation
Figure 4 – Clock/data timing diagram of QDR read operation
the Dynamic Text dialog box to assembleconstraints for transfer into the ISE con-straints file. The syntax for this designexample is illustrated below:
OFFSET = IN %mOFFSET_IN.min VALID%mDVW.min ns BEFORE “rd_clk” TIMEGRPRdClkRisingFFs;OFFSET = IN %mOFFSET_IN_F.min VALID%mDVW.min ns BEFORE “rd_clk” TIMEGRPRdClkFallingFFs;
The VALID keyword is for specifyingthe duration of the incoming data validwindow, and is used for hold time calcula-tions in ISE. The signal rd_clk is the pinname in the design code associated withthe C_FPGA clock signal in the timing dia-gram. Notice that two offset specificationsmust be declared – one for the rising clockedge and one for the falling clock edge –because this is a dual-data rate read opera-tion. Also notice the “%” syntax that indi-cates dynamic text access of measuredvalues in the timing diagram.
The Dynamic Text dialog box willresolve the dynamically referenced meas-urements and allow direct transfer of theinformation into the UCF constraintsfile. Once the UCF file has been assem-bled, execute a place and route in the ISEtool set.
Take Control of Your DesignAfter initial place and routeis complete, you can gener-ate a timing report usingthe TRACE timing analysistool within ISE, andimport that into the timingdiagram. This will allowyou to determine the actualrouting delays so that youcan specify the necessaryphase shift for the readclock. You then enter thephase shift attribute intoISE, execute a final placeand route, and generate atiming report. When com-plete, you then re-importthe timing report to gaugehow well the constraintswere met.
Determining Routing DelaysFor this design example, ISE placed theread data capture registers into the I/Oblocks of the Virtex-II Pro devices,because they capture data from the inputpads and have a common clock and resetsignal. This is a default setting for ISE’smapping process and is appropriate forthis design example.
As the I/O blocks have only one routingpath for input data signals, the TRACEreport includes this data path delay in thesetup and hold requirements of the I/Oblock registers. However, the clock signalhas several possible paths from the inputpad to the capture register, and this designexample uses a path through the DCM ele-ment for phase shift control. So you mustdetermine the routing and element delaysfor the clock path to achieve proper phaseshifting of the clock.
A TRACE analysis report is generated inverbose mode to get the needed timinginformation. This report is limited to 16paths per constraint (the data bus is 16bits). Briefly look at the report and makenote of the worst-case setup path for thedata bus in preparation for import into thetiming diagram.
To import the desired TRACE analysisreport information (saved as a TWX file)
into TimingDesigner, map the worst-casesetup path identified earlier to the associ-ated waveform in the diagram(Q_FPGA), and then import the infor-mation to create variables for the routingand element delays. Mapping the FPGAports guides TimingDesigner to thedesired signal information, and allows forautomatic updates of existing variables ifsuccessive place and route executions arenecessary.
Visualization at the Capture RegisterAfter importing the timing results, createanother clock signal (Cin_FPGA) to rep-resent the clock characteristics at the datacapture register. You then add the setupand hold requirements obtained in theTRACE report import as TimingDesignerconstraints on the data signal relative tothe register clock, as shown in Figure 6.
Notice that the indicated setup andhold margin results from the diagrammatch the slack values from the initialTRACE timing report, and indicate thatthe setup paths are failing by about 2 ns,but the hold time paths have more thanenough margin. You need to shift theclock so that both the setup and hold timemeasurements are met with roughly thesame margin.
Fall 2004 Xcell Journal 19
PCBDesign Flow
TimingDesignerConcept
BlockDiagram
Verification
HDL and/orDesign Entry
PhysicalDesign
Production
Design InterfaceModeling
DesignCreation
Design InterfaceAnalysis
Design InterfaceDocumentation
UCF
*.txt
Synthesis
Map
Place and Route
BitGen
SpeedPrint
TRACE
TWXBIT
ISE
Timing BudgetsPartitioning Timing
Constraints
What-if AnalysisOptimization Static Timing
Analysis
End-User DocTiming Data Archival
Figure 5 – TimingDesigner offers an intuitive interface to ISE’s design flow.
Making AdjustmentsUsing the imported information obtainedfrom the TRACE timing analysis reportand the measured values from our timingdiagram, you can obtain the attribute valuefor the necessary DCM phase shift (seesidebar, “Balancing the Data ValidWindow”). For this example, the attributevalue was determined to be 108, for a shiftof 3.165 ns. You then enter this value intothe ISE tool flow, and execute a secondplace and route to shift the clock and prop-erly balance the setup/hold margins.
Verifying the ResultsRe-importing the new post-place-and-routetiming report using the previous import set-tings will automatically update all of thenecessary values, and correctly re-positionthe register clock signal (Cin_FPGA). This isillustrated in Figure 7. Examination of thesetiming results shows that the setup and hold
requirements for a read data capture in thedesign are now balanced with respect tomargin (slack), giving the safest possibleresult for any unforeseen signal drift.
ConclusionUsing TimingDesigner together withXilinx Virtex-II Pro devices allows opti-mal safety margins for setup and holdrequirements, which are necessary foraccurate data exchange with a QDRSRAM memory controller.
By following a design process that com-bines the use of TimingDesigner timingdiagrams and ISE’s post-place-and-routetiming reports, you can create an accurateanalysis of your design’s critical timingrelationships. Using timing diagrams, youcan account for PCB trace delays andother external factors that will affect thesignal relationship at the pins of yourFPGA device.
ISE’s TRACE timing analyzer providestiming reports that give you details on theroute delays and constraint requirements ofyour FGPA device. Together, these toolsallow you to accurately capture andexchange critical interface timing informa-tion, and allow visual verification that yourdesign will perform as desired.
To learn more about TimingDesignerand the Chronology Division of Forte Design Systems, please visitwww.timingdesigner.com.
Balancing the Data Valid Window
You can determine the amount ofDCM-generated phase shift neededfor the clock signal to balance the datawindow using the following procedure:
1. Subtract the minimum data valid window for the Virtex-II Pro devicefrom the design’s actual data validwindow, and divide that result by two.This accounts for the differencebetween the two valid data windows(DlyDVW).
DlyDVW = (DVWactual – DVW_VIImin) / 2
2. Subtract the offset measurement madeat the pins of the FPGA device fromthe required setup time for the captureregisters, to account for device setuprequirements (DlyRelSU).
Figure 7 – Balanced setup and hold of data capture register
Figure 6 – Setup and hold of data capture register after initial placement
20 Xcell Journal Fall 2004
by Xilinx Staff
“Partnership” might possibly be the mostoverused word in the high-technologyindustry. But at Xilinx®, it transcendscliché as a foundation principle behind thecompany’s highly successful business modelsince its inception.
Today, the Xilinx way of thinkingreflects a rare mindset about the value of aninterconnected ecosystem of like-mindedcompanies and the benefits such anapproach can bring to Xilinx, its customers,and to the partners themselves.
To say that Xilinx was founded on theSpirit of Partnership is no overstatement.In the original 1984 business plan, the sec-ond bullet under the “strategy” section(after the primary strategy point of “maxi-mizing our strength in product architectureand design”) articulated the idea to partnerwith complementary suppliers. The Xilinxfounders thought that through an extremefocus on a few core competencies, Xilinxcould deliver highly differentiated productsand drive technology innovation forward.
Most notably at the outset was the needfor a manufacturing partner. The foundersfundamentally believed that there was noneed to fund such a capability in-house – aradical concept in the era of “real men ownfabs.” (The average price tag for a fab at thetime was $300 million, about one-tenth oftoday’s going rate, but still a hefty invest-ment for a startup company in 1984.)
Turning an industry cliché into a successful business model.
Celebrating 20 Years of Partnership
Fall 2004 Xcell Journal 21
VP of Worldwide Marketing Sandeep Vij in the Xilinx Hall of Patents
Company founder Bernie Vonderschmittleveraged past relationships and his solid rep-utation for fair play to negotiate a manufac-turing deal with Japanese giant Seiko, whichagreed to allow Xilinx-designed chips to beproduced in its fabs. Sealed with only ahandshake, Xilinx had its first partner andthe industry had a new model – the fablesssemiconductor company.
In short order Xilinx signed up anothercritical partner as its first distributor,because the founders viewed the salesprocess as they did manufacturing: essen-tial, yes, but not necessarily something thecompany needed to “own.” As with Seiko,the distribution agreement was built onmutual trust and a benefit to both sides – abenefit that could be measured beyond justdollars and cents.
Since then, Xilinx has formed partner-ships with a wide range of other suppliersin the semiconductor supply chain, allguided by a consistent principle.
“When we look at forming a partner-ship, the first question we ask is ‘what’s init for you?’” Xilinx CEO Wim Roelandtssays, explaining a philosophy that mayseem counterintuitive to the traditionalapproach. “It really should be weighted51-49 in the partner’s favor. They need toget something out of it, as much – if notmore – than we do.”
Such an approach has helped Xilinxassemble critical components to fill the“solution gap” in its offerings, allowing it tofocus on developing the core technologyfor which it has gained the deserved repu-tation of a world-class innovator. It has alsomade Xilinx one of the most respectedcompanies in all of high technology and afavorite among complementary suppliersboth large and small.
“For us, a partnership is more than afinancial transaction or relationship. It real-ly is about shared goals and ways of think-ing,” says Sandeep Vij, vice president ofworldwide marketing at Xilinx. “Yes, we
“Programmable technology requires thesmallest geometries and advanced processes –and we must be a leader in those areas. Weare willing to invest to be able to achieve suchthings as producing the world’s largest dies,to be first to 90 nm. And our partners mustbe, too.”
Ooi also points out that because Xilinx isa mission-critical supplier to its customers,its partners must share that sense of urgencyand flexibility. “They have to be able to scalewith us,” he says of an increasingly valuableasset in the cyclical semiconductor industry.
Vincent Tong, vice president of prod-uct technology, agrees, adding that thenumber-one criterion for a Xilinx partneris to be a “technology leader.
“We can’t afford to partner with compa-nies that aren’t leaders in what they aredoing. Three or four years ago, when itcame to manufacturing, you could kind ofthrow a design over the wall. Today weneed to be engaged tightly with our part-ners to drive technology forward. We havemore than 80 process engineers and wedon’t even own a fab,” he says, underscor-ing the commitment level of Xilinx even inareas in which it chooses to partner.
Through its partnership strategy inmanufacturing, Xilinx is already pushinginto areas beyond the current state-of-the-art, including joint development work in75 and 65 nm process geometries.
The Link to the CustomerAs with manufacturing, Xilinx made thedecision early on that it would work withpartners to sell and distribute its products(notably, field support of those products wasalways viewed as a critical internal function).
“It was a decision borne out of necessityand practicality,” explains Vice President ofSales Steve Haynes, who’s been with thecompany for nearly 20 years. “We knewthat as a company we needed to focus onwhat we do best – design, technology, inno-vation. We needed a ready-made channel to
use partnerships to maintain our own focusand we know it doesn’t make sense econom-ically for us to invest in all areas. But itcomes down to results – our partnerships areaimed at making breakthroughs that allowour customers to scale new heights.”
Manufacturing PartnershipsManufacturing still represents the most sub-stantial of the Xilinx partnering strategies, ifonly because of the cost of today’s modern fab-rication facility. Xilinx has emerged as one ofonly a small handful of semiconductor com-panies that truly “pushes the envelope” whenit comes to implementing new technologyprocesses. Recently, it became the first compa-ny to ship a production device based on 90nm process geometries, considered the leadingedge of expertise. It also is among the leadersin the use of 300 mm wafers to produce itschips. Both manufacturing achievementsallow Xilinx to reach new price/performancemilestones with its products and further dis-tance itself from its competitors.
Although such advances are enabled bychoosing the right type of company to part-ner with (for manufacturing, Xilinx partnerswith UMC™ and IBM™), Xilinx itself is akey contributor to driving manufacturingadvancements. The company has more than100 engineers on-site at UMC, for example,working in tandem with their R&D teams.And because of the “regular” nature of itsstructure, programmable logic technology isan excellent means for manufacturers tocharacterize new processes, as UMC hasdone with its last several generations of newprocess nodes. But perhaps the secret ingre-dient is mindset.
“Our partners must share our view on risk-taking. They must be willing to engage injoint risk-taking and be willing to try newthings. It is the only way to stay on top of lead-ing-edge technology, to truly innovate,” saysB.C. Ooi, Xilinx vice president of operationsand the man responsible for seeing that Xilinxproducts stay on the leading edge.
22 Xcell Journal Fall 2004
...Programmable logic technology is an excellent means for manufacturers to characterize new processes...
get our technology in the hands of the cus-tomers. There were, and still are, firms thatbring an expertise and reach that we couldn’tor didn’t want to develop ourselves.”
Today Xilinx uses a network of close to30 partners to deliver its products to cus-tomers around the world. Some are broad-line distributors who sell complementarytechnology to round out the use of program-mable logic. Others are regional or verticalmarket specialists. In most cases, Xilinx is themost significant product line they represent,and in all cases the relationship is based onmutual trust and shared values.
“When a customer looks at a rep [resen-tative], they are looking at Xilinx. We haveto be on the same page in all facets of therelationship. We have to know them as wellas we know ourselves,” says Haynes.
Haynes and his team meet regularly withsales partners to align their goals and strate-gies, and make sure the company’s productsare being represented consistently with the“Xilinx Way.”
The formula is surely working, as Xilinxsales and customer satisfaction metricsshow. But it’s a constantly evolving process,as Haynes well knows. “Good partnershipsevolve. Our channel looks a lot differentthan it did 20 years ago. It’s like being in amarriage – you have to work at it.”
Comprehensive SolutionsThe design and use of programmable logichas become an increasingly complex process.In the early days of Xilinx, third-party designtools were just coming to market as the EDAindustry took shape, and commercial IP coreswere almost non-existent. Today, they, alongwith a set of other capabilities, are essential todeveloping multi-million gate, multi-func-tion systems on chip (SoCs). Thus, the Xilinxpartnership model has expanded significantlyto include technology partners who canround out the core offering.
“Today’s markets call for a completesolution, which includes the FPGA and afull set of components and tools,” saysSenior Manager of StrategicRelationships Jasbinder Bhoot, whooversees all of the partnership programsat Xilinx. “Xilinx has been successfullydelivering for years the best FPGA prod-ucts in the industry. Now, together withour partners, we have a focused emphasison providing comprehensive solutions toour customers. We seek out and collabo-rate with best-in-class companies tocomplement our product offerings withEDA tools, IP, design services, referencedesigns and manufacturing kits.”
Xilinx partners must share our senseof business integrity and win-win philos-ophy. “We are fairly selective inwho we work with. Yes,they must bring a best-of-breed offering,and yes, it mustmake econom-ic sense for
both sides. But these are the companieswith whom we will be on the front lineswith our customers, so we have to be insynch on many different levels,” explainsBhoot.
Bhoot and his team use well-definedmetrics to gauge how effective each andevery partnership is for Xilinx and itscustomers. And they are constantly onthe lookout for new areas to developpartnerships and make Xilinx technolo-gy more accessible and complete.
Today, Xilinx counts some 250 com-plementary technology and serviceproviders in its “ecosystem” of companiesthat help it deliver the most robust solu-tions in the industry. From industry lead-ers such as IBM™, Cadence™, MentorGraphics®, Synopsys™, Synplicity™
and Wind River™ to specializedexperts in key areas, Xilinx
partnerships provide maxi-mum breadth and
depth of technologyofferings.
Today, Xilinx counts some 250 complementary technology and service providers in its “ecosystem” of companies that
help it deliver the most robust solutions in the industry.
Fall 2004 Xcell Journal 23
Jasbinder Bhoot, Senior Manager of Strategic Relationships
24 Xcell Journal Fall 2004
Among the areas in which Xilinx partners are:
• Intellectual property cores. Xilinxworks closely with independent third-party core developers to produce abroad selection of industry-standardsolutions, deemed AllianceCORE™,dedicated for use in and optimizedfor Xilinx programmable logic.
• Design tools. Xilinx’s AllianceEDApartners are among the tool leadersfor each step in the design process,including such critical areas as high-level design, synthesis, logic verifica-tion, and complete PCB design.Xilinx and its partners develop themethodologies and tool flows thathelp make programmable logic usersproductive and well positioned totake full advantage of Xilinx devices.
• Design services. Xperts are a globalnetwork of certified design expertstrained to take full advantage of thefeatures present in the Xilinx PlatformFPGAs, software, and IP cores. Whencustomers need design expertise, theycan access a sophisticated resourcedatabase and quickly identify designconsultants in their own regions.
• Embedded development tools.Xilinx AllianceEmbedded partners are experts in the field of embeddedsystems – inclusive of compiler,debugger, IDE, and trace/visibility
tools – as well as RTOS require-ments. They support the Xilinx commitment to deliver high-per-formance, cost-effective embedded processor-based solutions.
• Reference designs. Xilinx teams upwith industry-leading semiconduc-tor vendors to develop referencedesigns for accelerating its cus-tomers’ product and system time to market.
The Spirit of PartnershipXilinx has developed a successfulformula for delivering a steadystream of innovation and technol-ogy firsts to the market in its first20 years. Its partnership approachis an essential element of that for-mula, and although no oneintends to alter the basic strategy,the technology industry mandatesthat change is a constant.
“Xilinx is in a much differ-ent position as a company nowthan when we first started 20years ago,” Roelandts says.“Resource-wise we could con-sider doing more things our-selves. But we know that thekey to our success has been ourfocus. That has enabled ourinnovation, which is why we area leader. In that respect, part-
nerships make even more sense, especiallyas the world gets more complicated. Ourchallenge is to continue to develop theright set of relationships with companiesthat share our vision and make sure we all
derive a benefit. We will not waver on thebasic principles that guide our partner-ship strategy, but we will keep the processdynamic to address new market needsand conditions.”
So don’t expect to see Xilinx buildingits own fab in the next 20 years. Butthanks to is unique Spirit of Partnership,it’s a safe bet that Xilinx and its partnerswill continue to set the standard for inno-vation and best business practices in thesemiconductor industry.
Xilinx has developed a successful formula for delivering a steady stream of innovation and technology firsts to
When reading a technical book, you maysometimes find yourself muttering, “Ha!The author is a complete and utter idiot! I could have done a better job than that!”
Or you may be working on an interest-ing project – or have just developed a novelsolution to some problem – when you sud-denly think, “I could write a really coolbook about this!”
That initial flush of enthusiasm sooncools, however, when you start to mull overthings in a little more detail, realizing thatyou don’t actually have a clue where tostart. Is there a market for such a book?What should it cover? Who will create thegraphics? How will you find a publisher foryour masterpiece?
Given these imponderables, it usuallydoesn’t take long before you’ve talked your-self out of becoming an author. This isunfortunate, because there may be a lot ofpotential readers out there who could real-ly benefit from your expertise. And ofcourse, being known as an author can onlyenhance your career prospects and makeyour family and friends very proud.
Turn your terrific idea into a technical tome through the Xcell Publishing Alliance.
Author! Author!
Fall 2004 Xcell Journal 25
To assist authors-to-be (like yourself?),Xilinx® has created an innovative new pro-gram called the Xcell Publishing Alliance.The program is designed to help you takeyour magnum opus from initial concept,through planning and implementation, allthe way to publication, fame, and glory.
In fact, as I pen these words, I’m bask-ing in the glow of having just received theauthor copies of my latest book, “TheDesign Warrior’s Guide to FPGAs:Devices, Tools, and Flows.” This book wasmade possible in large part by Xilinx andMentor Graphics®, both of whom provid-ed me with access to a wide variety ofexperts and information sources. Thus, inthis article I thought I’d walk you throughthe process of creating a book – using “TheDesign Warrior’s Guide” as an example –and then discuss what Xilinx can do to helpyou create your very own tour de force.
Topical QuestionsThe very first thing you have to decide onis a topic. What exactly would you like towrite about? There’s little point in spendingvast amounts of precious time and effortcreating a book that no one actually wantsto read.
I’ve been fortunate in this regard,because I’ve tended to write books on top-ics that interest me and that I would liketo read myself. Happily, the folks whoread my books seem to enjoy them also.For example, my very first effort – “Bebopto the Boolean Boogie: AnUnconventional Guide to Electronics” –was recently re-released in its second edi-tion due to popular demand.
Looking back, I realized that most ofmy tomes were introductory in nature, sothe time seemed right to focus on a partic-ular topic in more depth. FPGAs havebecome phenomenally powerful andsophisticated in recent years. Today’s
I felt that this background informationwould be useful to less-technical readers,while techno-weenies could leap directlyinto the more challenging middle sectionof the book. Among many other topics,this section takes an in-depth look at:
• FPGA versus ASIC design styles
• Schematic-based design flows (yes, theyare still used to support legacy designs)
• HDL-based design flows
• Silicon virtual prototyping for FPGAs
• C/C++-based design flows
• DSP-based design flows
• Embedded processor-based design flows
• Modular and incremental design
• High-speed design
• Migrating ASIC designs to FPGAs,and vice versa
One thing I recall from my collegedays is that despite having scores of text-books, I was unable to find the fact I waslooking for in any of them. For this rea-son, “The Design Warrior’s Guide”includes a third section boasting a host ofperipheral topics, including:
• Choosing the right device
• Gigabit serial interfaces
• Reconfigurable computing
• Field programmable node arrays(FPNAs)
• Independent design tools
• Creating a design flow based on open-source tools
Just looking at the above lists makes myeyes water, because I well remember theresearch and effort that went into fleshing
FPGA devices can be used to implementextremely large and complex functionsthat previously could be realized onlyusing ASICs, and thus an increasing num-ber of design engineers are starting to usethe little rascals. When I began to lookaround, however, there seemed to be adearth of useful material in this arena.
Readership to ShoreOnce you’ve decided on your topic, youwill have to flesh it out into an outline, andeventually grow it into a full-blown pro-posed contents list. An integral part of thisprocess is to decide who your audience is,because the type of information you willcover will typically vary depending onwhether you are talking to engineeringgurus or novices.
I personally dislike reading books thattalk down to me as though I am the villageidiot. But equally, I’m less than enamoredby books that try to impress me with theauthor’s brilliance, or those that require meto return to college just to wend my wearyway through the first chapter.
In the case of “The Design Warrior’sGuide to FPGAs,” I wanted to address theneeds of an unusually wide audience,including students, sales and marketingprofessionals in the EDA arena, and full-blown engineers. For this reason, I devotedthe first section of the book to fundamen-tal concepts such as:
• What are FPGAs and why are they ofinterest?
• Underlying technologies, such as anti-fuses, flash memory, and SRAM cells
• Alternative architectures and concepts
• Different programming techniques
• Who are the various players in the FPGA space?
26 Xcell Journal Fall 2004
The Xcell Publishing Alliance is designed to help you take your magnum opus from initial concept, through planning and
implementation, all the way to publication, fame, and glory.
out these topics when I finally got aroundto writing the book.
In StyleYet another point to ponder before you leapinto the fray is the style you intend to use.To a large extent this will be determined byyour target audience, but it will also bestrongly influenced by your personality.
I soon become disgruntled when read-ing boring books. Unfortunately, thisseems to cover the vast majority of techni-cal books out there (although there are afew notable exceptions). It’s almost asthough someone sent out a memo saying,“Whatever you do, don’t make engineeringbooks interesting – otherwise all sorts offolks might decide to read them.”
Fortunately, I didn’t receive this memo,so I don’t feel bound to follow it. As a sim-ple rule of thumb, I tend to write the sortof book that I personally would like toread. Thus, I use a somewhat informal,chatty style – much like this article – and Ialso like to include nuggets of trivia andtidbits of information, such as “Where didthis come from?” or “Why do we do thingsthis way rather than that?”
Furthermore, in my later books I’vestarted to include little pronunciationnotes as sidebar items for technicalacronyms and terms. I do this because ifyou mispronounce a word when talking tosomeone in the industry, you immediatelybrand yourself as an outsider. Some engi-neers have been known to scoff at me forthis, but I’ve received many e-mails fromless-technical readers that say, “Only theother day you saved me from a potentiallyembarrassing situation.”
Yes, There’s MoreAt some stage, of course, you are going tohave to actually put pen to paper (or fingersto keyboard). Writing a book-length proj-ect isn’t easy. You may start off full of vimand enthusiasm, but as you approach themiddle of the project things seem to slowdown and become increasingly difficult –much like wading through molasses. Andthen, suddenly, you’ll find that you’ve crest-ed the brow of the hill and are racing downthe other side towards the finish line.
Another consideration is creatinggraphics. I personally go by the adage that“a picture is worth a thousand words,” so
I festoon my writings with graphics wherev-er I can. For technical books and whitepapers, I tend to use line art created inMicrosoft™ Visio™, an incredibly usefuland easy-to-use tool. As an example, consid-er a sample illustration from “The DesignWarrior’s Guide” (Figure 1), which reflects asimple multiplexer-based FPGA architec-ture. Logic gates are not usually shown withgray fills and shadows, but I think it looksmore interesting – and it’s my book.
Another consideration is finding some-one to help you proofread and copyedityour work and to offer suggestions as topresentation and style. Although many edi-tors can discourse for hours on the manyand varied uses of the apostrophe, theloathsome split infinitive, and parallel sen-tence structure, actually finding one whohas a clue what you are talking about tech-nology-wise can be somewhat taxing.
And last, but certainly not least, onceyou’ve finally finished, you will need tofind a publisher who can take your master-piece, lay it out, print it, distribute it, andpromote it far and wide.
The Xcell Publishing AllianceAll of the above may seem a little over-whelming at first, but things aren’t asdaunting as they appear. The idea behindthe Xcell Publishing Alliance is to helpfolks write books on FPGA-related topics,where said “folks” may range from individ-ual engineers to small engineering housesto large Xilinx partner companies.
One key point to note is that it is not thepurpose of the Xcell Publishing Allianceprogram to flood the market with Xilinx-centric books. The guys and gals at Xilinxaren’t stupid, and they know that the lastthing engineers need is for technical booksto mutate into marketing brochures halfwaythrough. The only criteria are for the booksto address FPGA-related issues and to begenerally useful to a wide audience.
How can Xilinx help you create thebook of your dreams? Well, in the case ofpartner companies, Xilinx can put you intouch with authors (like me) who can writethe book on your behalf; they can help youdecide on the contents; and they can facil-itate your relationship with a publisher.
Fall 2004 Xcell Journal 27
Figure 1 – An example figure created in Visio.
For individual authors or small engi-neering houses who wish to write and pub-lish a book, the Xcell Publishing Alliancecan help in the following ways:
• Consulting with you on the topic, out-line, and eventual contents list
• Providing access to the appropriate tech-nical and marketing employees, both atXilinx and their partner companies
• Facilitating access to industry insiderssuch as technical experts, editors, andanalysts
• Helping to create any figures, dia-grams, and cover art
• Proofreading and copyediting your man-uscript (or finding someone who can)
• Providing access to a publishing house
• Helping you market, promote, andpublicize your book
Xilinx has recently committed to apartnership with Elsevier, whom I’minformed is the largest English languagepublisher in the world.
And as for to helping you market, pro-mote, and publicize your book, Xilinx canbe a powerhouse working on your behalf.For example, in addition to their insidecontacts at the various industry magazines,soon after your book rolls off the printingpresses, you could pen an article on it forthe Xcell Journal.
After all, since it is published quarterlyin five languages, distributed in 114 coun-tries, and directly targeted to more than50,000 programmable digital designusers, the Xcell Journal can carry a hugeamount of weight. And let’s not forget theadvantages of any publicity for yourselfand your company (see the info blurb onmy company, for example).
ConclusionWriting a book is much harder than mostpeople imagine, and there will be momentsthat you rue the day you ever had the ideafor such a project. It’s also true that thechances of ever getting rich from a techni-cal book are laughably slight.
On the bright side, however, the feelingyou get when holding the first copy of yourbaby when it comes back from the publish-er is absolutely fantastic. Be prepared torun around with a silly “aw shucks” grin onyour face. And don’t discount the fact thathaving a book in print is a wonderful wayto market yourself, open doors, reinforceyour career, and enhance your futureemployment prospects.
Embarking on a project like this is amajor task, but the chances of your suc-cess will be far greater if you have thesupport of the Xcell Publishing Alliance.For more information about this excitingnew program, please send an e-mail [email protected].
R
Let Xilinx help you get your
message out tothousands of
programmable logic users worldwide.
That’s right ... by advertising your product or service in the
Xilinx Xcell Journal, you’ll reach more than 50,000 engineers, designers, and engineering
managers worldwide.
The Xilinx Xcell Journal is an award-winning publication,
dedicated specifically to helping programmable
logic users – and it works.
We offer affordable advertising rates and a variety of advertisement
Join the other leaders in our industry and advertise
in the Xcell Journal!
Clive “Max” Maxfield is president of TechBites Interactive Inc.(www.techbites.com). A marketing consultancy, TechBites specializesin servicing high-technology companies, ranging from small “ Fred-in-a-shed” startups all the way to the “big boys” in EDA.
The services provided by TechBites include logo creation, corporate/product branding, marketing plans, web design anddevelopment, collateral design and production, technical and creative writing, technical translation, and digitizing.
by Jim CairnsDirector of Corporate Solutions MarketingXilinx, [email protected]
Making your products and subsystemscompetitive in performance, features, andcost requires constant awareness of newleading-edge programmable technologies.Making your designing as productive aspossible requires steady learning of leadingapplication solutions, tools, and techniques.
Beginning this October (see Table 1),Programmable World 2004 brings togetherthousands of engineers and system architectsfor an action-packed day of learning andnetworking around the most exciting newprogrammable technology in the world: theVirtex-4™ solution from Xilinx®.
Last year’s Programmable World 2003workshops packed new technical contentfrom the vast Xilinx partner ecosystem andits leading expert users into a highly pro-ductive day-long training event in 20 citiesaround the world. Xilinx and fellow indus-try leaders such as Agilent™, IBM™,Intel™, The MathWorks, MentorGraphics®, Texas Instruments™, andWind River™ led engineers throughworkshop tracks covering DSP, embeddedprocessing, high-speed connectivity, andsystem logic design.
Workshop attendees received a 556-pageworkbook filled with direction on key solu-tions to the most pressing design and verifi-cation issues facing hardware engineers,ASIC designers, system engineers andarchitects, and embedded software develop-ers in getting products to market quicklyand competitively.
At Programmable World 2004, Xilinx andits partners will showcase the new Virtex-4solution in each of four digital “domains” –DSP, processor, connectivity, and logic – witha full-day track dedicated to each.
Experience Programmable World 2004
Experience Programmable World 2004
30 Xcell Journal Fall 2004
Xilinx and fellow technology leaders offer one-day workshops to showcase the “state-of-the-art” in programmable digital design.
Xilinx and fellow technology leaders offer one-day workshops to showcase the “state-of-the-art” in programmable digital design.
DSP TrackLearn about the amazing price reductions,power improvements, and performanceacceleration that Virtex-4 solutions willbring to your video and digital communi-cations applications and algorithms. Seethe latest enhancements to the industry’seasiest end-to-end tool flow for designing,verifying, and debugging, from designentry in MathWorks tools to real-timeXilinx hardware in-the-loop.
This track will include reference designsand other real-life examples to help you getthe most out of your communications andvideo designs.
Connectivity TrackPreview the newest high-speed serial technol-ogy that enables data rates as high as 11 Gbpswith impeccable signal integrity chip-to-chip, across backplanes and even box-to-box.Share techniques for minimizing error rates,board cost, and system cost for your connec-tivity applications. Anticipate and under-stand potential signal integrity issues early inyour design cycle and apply the latest stream-lined methodologies to proactively preventsignal integrity issues.
This track will cover the use of XilinxRocketIO™ models in high-speed PCBsimulations as well as analyzing and sim-ulating GHz signal paths for via- and surface-mounted components in PCBdesign. You’ll see how signal integrityanalysis is used to reduce overshoot, ring-ing, cross talk, timing margins, inter-symbol interference, and radiatedemissions. Instructors will showHSPICE™ correlation, eye diagrams,signal pre-emphasis, and S-parameterconnector models using simulation tools.You’ll also work on predicting perform-ance using a combination of electromag-netic field simulation and circuit andsystem simulation, and on optimizationof interconnect and transitions used forhigh-performance PCB designs.
Processor TrackWalk through the comprehensive Virtex-4embedded processing solution, from thePicoBlaze™ 8-bit microcontroller refer-ence design, 32-bit MicroBlaze™ soft
“Ask the Experts” opportunities bring youtogether with leading technologists fromXilinx to discuss how their products, servic-es, and applications support can address yourspecific architecture and engineering chal-lenges. Interactive networking sessions willallow you to share best practices and trendswith other engineers and architects.
Conclusion Programmable World 2004 packs hundreds of new programmable digitalinnovations and techniques into a singleday of intense learning that you will notwant to miss. For more information, or toregister for the Programmable Worldworkshop in a location near you, visitwww.xilinx.com/pw2004/.
processor implementation, the enhanced on-chip PowerPC™ processor, and theUltraController solution that uses theembedded PowerPC. Delve into design toolsfrom Wind River, MontaVista Software™,and Mentor Graphics/ATI and learn aboutthe latest Virtex-4 RTOS support.
Mix and match the latest combinations of:
• Virtex-4 silicon architecture
• 32-bit RISC processor cores and periph-erals
• Third-party RTOS support
• Intelligent design tools
• Integrated hardware/software debug plat-forms
• Development boards
• Reference designs
• Board support packages
• Design services
• Technical support from Xilinx andindustry-leading partners
See how the newest Xilinx EmbeddedDevelopment Kit with the Platform StudioIDE automates and accelerates the develop-ment process, allowing hardware and soft-ware designers alike to design, debug, andboot a processor platform easily in time-frames never before possible.
Logic TrackSee how the latest design and debug toolsfrom Xilinx, Synplicity™, MentorGraphics, and Agilent help leverage theblazing fast Virtex-4 logic fabric and fea-tures. Learn the latest design techniques forthe fastest performance, shortest designtimes, and lowest project costs. Workthrough FPGA physical synthesis for high-est quality of results; high-speed memoryinterface design using real-time debug toslash verification times; and bench-top test-ing to verify signals in real time.
You’ll experience much beyond the inten-sive workshop sessions at ProgrammableWorld 2004. Technical demos will show howVirtex-4 solutions and partner offerings canhelp you solve real-world engineering prob-lems faster and easier.
Fall 2004 Xcell Journal 31
Programmable World 2004 Dates and Locations
October 2004 Paris, France
Munich, Germany Milan, Italy
Stockholm, Sweden San Diego, California San Jose, California
This article reports the work currentlybeing done in the European Union (EU)R&D project “Design Methodology and Environment for DynamicRECONFigurable FPGA,” whose shortname is RECONF2 (see www.cordis.lu/en/home.htm for more details on EU-fundedresearch projects). Targeting designers, thisproject aims to ease the access to changingthe configuration of part of an FPGA designwhile the circuit is running. Xilinx® alreadyoffers this technology, but the lack of a sim-ple methodology and appropriate tools is amajor limitation to its implementation.
Therefore, the partners of this project(both academic and industrial) defined acomplete and validated methodology, alongwith the required front-end tools, address-ing the complete design flow: dynamic par-titioning, control of the dynamic behavior,and dynamic verifications. Tools coveringall of the specifics related to dynamic recon-figuration are fully compatible with thestandard design flow (a clear request fromour industrial partners). Also, neither themethodology nor the tools are dedicated toa particular application domain and arethus suitable for any embedded application,especially real-time ones.
Many advantages exist in using thistechnique, including the ability to changethe behavior of a system while it still run-ning to adapt it to an externally changingenvironment.
In this article, two of the project part-ners – MBDA France and Deltatec – willdemonstrate these benefits through a shortpresentation of the methodological flow, aswell as citing one example.
Adapted methodology and tools available from RECONF2 make partial dynamic reconfiguration in Xilinx devices a reality.Adapted methodology and tools available from RECONF2 make partial dynamic reconfiguration in Xilinx devices a reality.
Managing Partial Dynamic Reconfiguration in Virtex-II Pro FPGAs
Managing Partial Dynamic Reconfiguration in Virtex-II Pro FPGAs
32 Xcell Journal Fall 2004
Adapted Design FlowThe goal of the RECONF2 project is tobuild a set of partial bitstreams represent-ing different features, so as to partiallyreconfigure the FPGA with those bit-streams when needed under the control ofthe FPGA itself or through the use of anexternal controller. To reduce the difficul-ty in managing such a dynamically recon-figured application and to provide areliable implementation, the academicpartners developed a set of tools and associated methodologies addressing thefollowing issues:
• Automatic or manual partitioning of aconventional design
• Specification of the dynamic constraints
• Verification of the dynamic implemen-tation through dynamic simulations atmajor steps of the design flow
• Automatic generation of the configura-tion controller core for VHDL or Cimplementation
• Dynamic floorplanning managementand guidelines for modular back-endimplementation
The resulting adapted design flowshown in Figure 1 is based on both stan-dard and RECONF2-specific CAD tools.The input of the design flow is a conven-tional VHDL static description of theapplication. You can also provide multipledescriptions of a given VHDL entity toenable dynamic switching between twoarchitectures sharing the same interfacesand area on the FPGA.
We have enriched the “classical” designflow with three major steps: partitioning ofthe design code, verification of the dynam-ic behavior, and generation of the configu-ration controller.
Partitioning the ApplicationBased on the knowledge of the design archi-tecture and the use of each sub-module intime, you can indicate which part of thefeature to dynamically load, and underwhich conditions. You can also specify datamanagement constraints to retain someinternal states of the application after
(in terms of content) and the associat-ed constraints for loading and unload-ing them. You can also specify dynamicrelations between two dynamic mod-ules, making them share the same areaof the FPGA or by declaring themmutually exclusive in time.
• A VHDL entity and architecture setcorresponding to the static part of thefinal implementation. This partincludes all primary design instanceson which no dynamic constraints havebeen applied. These instances willremain permanently inside the FPGA.
unloading and reloading the correspondingdynamic module.
By identifying portions of the design inthe code at instance level, VHDL process,or VHDL assignment, you can make thedynamic specification flexible and inde-pendent of the application coding style.The outputs of this partitioning task are:
• A VHDL entity and architecture setcorresponding to an identified dynam-ic module and containing the relevantHDL code.
• A dynamic constraint file (.dcf ) thatcontains the definition of each module
Verifying the Dynamic ImplementationImplementing such dynamic reconfigura-tion mechanisms must be checked – andwith standard simulation tools. To be ableto do so, we had to adapt the classical veri-fication flow to verify the dynamic behav-ior of the design and the coherence ofdynamic constraints applied to and the useof the design during simulation (Figure 2).As a result, you can perform this dynamicverification with behavioral, post-synthesis,or post-layout VHDL netlists.
Simply enter a partitioned database tothe post-processing tool, which generatesan equivalent VHDL description of thedynamic design that you can simulateunder standard static VHDL simulators.The unloading of each dynamic module ismodeled by a wrapper that isolates theinputs and outputs of each dynamic mod-ule from the rest of the design according torelevant dynamic constraints (Figure 3).When a dynamic module is not presentinside the device, its outputs generate “X”or “Z” states to the rest of the design.
The post-processing tool also automati-cally generates two VHDL configurationcontroller cores:
• The functional configuration controller(FCC) is used during dynamic behav-ioral simulation. The FCC controlsisolation switches by detecting eventsinside the application, according to the.dcf constraints. To assist with the veri-fication process, the FCC can also issuedifferent warnings each time a dynamicmodule is requested in violation ofexclusivity rules defined in the .dcf.
• The physical configuration controller(PCC) is a synthesizable version of theFCC and is mapped as a static part ofthe FPGA. As with the FCC, it detectsthe loading and unloading conditionsaccording to the .dcf and manages thedynamic reconfiguration of the FPGAby reading bistreams in storage memo-ries and rewriting the FPGA’s configura-tion. The PCC also provides an interfaceto monitor the reconfiguration processfor hardware debugging purposes.
For dynamic behavioral verification,you can enter an estimation of the bit-stream lengths into the post-processingtool to take into account reconfigurationdelays. After layout, you can replace themwith accurate ones, while a back-annotat-ed VHDL netlist can replace the VHDL-partitioned code to obtain accurate vitalverifications.
Placement and RoutingYou would synthesize the static part of thedesign and the VHDL code of eachdynamic module separately to obtain sepa-rate electronic design interchange format(EDIF) netlists. You can then use theXilinx modular back-end flow to place androute each module and to generate theassociated bitstream, resulting in a typicalfloor plan (shown in Figure 4).
In the scope of the RECONF2 project,the industrial partners extensively testedthese tools and methodologies throughvarious applications, including video pro-cessing, complex state machines, automat-ically adaptive portable equipment, andfault-tolerant aerospace applications.
An Implementation ExampleFigure 5 shows a complete video effectsconsole architecture using two effects gen-erators (A and B); their outputs feed a tran-sition mixer. Channel A feeds the liveoutput while the operator sets up the sec-ond (Channel B) for a new effect, visiblethrough the preview output.
When ready, the operator selects a tran-sition scheme such as “wipe” or “fade” andswaps the live and preview outputs (typical-ly using a T-bar). Effects generators selecttheir inputs from several external videosources or feedback channels implementedin an SDRAM-based frame store.
The challenging part of this application isthe building of a RECONF2-based imple-mentation with uninterrupted outputs.
34 Xcell Journal Fall 2004
Switchxz
Switchxz
Switchxz
Switchxz
Switchxz
SwitchxzD_module1
D_module3
Signal Events
Clock
D_module2
Configuration Controller(FCC)
ReconfigurationInterface
Static
Unused Resources D_FPGA
D_MODULE 2
D_MODULE 1
ConfigurationController
Data StorageLogic
InterrfaceLogic
Figure 3 – Switch insertion for dynamic simulation
Figure 4 -Typical layout
We designed a dedicated hardwaredevelopment platform based on a Virtex-II™ XC2V3000 device with a 64-bit PCIadapter board (see Figure 6), taking intoaccount the specific constraints of theXilinx partial reconfiguration design flowand providing the required flexibility for anevaluation environment.
Dynamic Architecture of the DesignBased on Figure 5, we partitioned thedesign into three processing modules (shar-ing the same footprint), applied in
sequence to every field/frame. Each effectsgenerator also supports a collection ofeffects, possibly changing from frame toframe, implemented as separate exclusivemodules.
1. Compute effects A output
2. Compute effects B output
3. Compute mixer output
This implies saving intermediate andfinal results, while reconfiguring the mod-ule for the next operation. An SDRAM
memory pool provides this buffering capa-bility. Also, the processing must run atthree times the video speed so that totalprocessing time remains unchanged.
In a reconfigurable design, there isalways a trade-off between the processingtime and reconfiguration time of a dynam-ic module. This means that one dynamicmodule must process a “significantamount” of data before being replaced tomeet the real-time constraints.
In our real-time video application, acommon data unit is one field/frame to beprocessed in 20/40 ms – compared withthe ~25 ms needed to configure the fullXC2V3000 device via its Select Map inter-face.
Figure 8 shows the architecture used fordynamically reconfigurable processing,while Figure 7 shows the correspondinglayout. We instantiated field buffers on theinput and output side. Although the SDIinput/output pixel rate is 13.5 MHz, pixelprocessing can run much faster, at 50MHz, for instance.
Figure 9 shows typical phase alternatingline (PAL)-interlaced video timing.Without buffering, dynamic modulereconfiguration must occur within theblanking interval (1.57 ms), while process-ing (at 13.5 MHz) fills the entire activevideo interval (18.43 ms).
With the field buffers and 50 MHz pro-
Fall 2004 Xcell Journal 35
Video EffectsGenerator A
OutputTransition Mixer
PreviewSelector
InputSelector
Constant
FX-A
Feedback Channel(s)
FrameStore
(SDRAM)
Video EffectsGenerator B
Host Controller
Video in 1
Video in 2
Video in 3
Video in 4
FX-A Live Output
Preview
Key
FX-B
FX-B
Figure 5 – Video effects console
Figure 6 – Hardware development platform
cessing, we obtain timing (as in Figure 9B)with 16 ms allocated to reconfigurationand 4 ms for video processing. Two pro-cessing steps can be interleaved (as inFigure 9C): 6 ms remain available fordynamic module reconfiguration.
Applying the same reasoning to framebuffering (2 fields –> 40 ms), we double theavailable time for reconfiguration (as inFigure 9D).
The RECONF2 tools and flow willhelp investigate these trade-offs.
Figure 10 shows the manual partition-ing tool GUI, with the input VHDLdesign in the left window. The partitioneddesign appears in the right window. A sim-ple drag-and-drop assigns chunks of logic
to one particular module. Scheduling con-straints (load/unload and frame) are thenentered for each module.
Our design lends itself by nature tomanual partitioning: one particular effect isalways applied to a full video field/frame.Each effect is implemented as an inde-pendent dynamic module.
The configuration controller generatoranalyzes the partitioned design and its con-straint file to produce:
• An FCC for simulation purposes
• A PCC for implementation in hardware(VDHL code) or software (C code)
To evaluate as many features of the tools
as possible, we chose to support both con-figuration controller schemes and testedthem on our hardware development plat-form. Nonetheless, our preferred solutionwas a software configuration under thecontrol of an on-board DSP because ofcritical real-time issues; we optimized theplatform accordingly.
The Xilinx Partial ReconfigurationDesign Flow, based on the modular designavailable within ISE 6.2 software, is used toproduce one global bitstream for startupand several partial bitstreams for the differ-ent dynamic modules. See Xilinx applica-tion note XAPP290 for a detaileddescription of this flow.
One benefit of the RECONF2approach for this video console applicationis obvious: we can add as many new videoeffects (such as video enhancement filters),fitting in the reserved dynamic modulespace without the need for additionalFPGA resources. This effectively increasesthe “functional density” of the FPGA.
A further increase comes from executingseveral processing steps (effects A, B, andtransition) within a single video field/frameduration, as previously explained. This isvery similar to the traditional “parallel vs.serial” arithmetic trade-off, and makes agreat deal of sense given the extraordinaryprogression of FPGA performance over thelast several years.
One less obvious advantage existsthanks to this partitioned approach: simul-taneously supporting all of the functionsresults in unneeded complexity that mayadversely impact the design’s performance.The operating model is also more complexfor the control application. Smaller, dedi-cated modules will run faster and need lessoperating parameters, making them moremanageable objects.
In the example presented, we see thereconfiguration time as a clear limitation.This time is directly linked to the dynamicmodule size and to other FPGA parameters.We are currently trying to implement adynamic module “caching”: two dynamicmodules slots are reserved, and one moduleis reloaded while the other is processing, andvice versa. Reconfiguration time is com-pletely “hidden,” at the cost of FPGA space.
VP5 (24)
XC2V3000 : 484 IOS
LEFT STATIC PORT RIGHT STATIC PORT
SD
RA
MB
ank
0 (5
0)
Spare
Spare
SD
RA
MB
ank
1 (5
0)
VP0 (24)
VP1 (24)
VP2 (24)
VP3 (24)
VP6 (24)
Local BusInterface (60)
EMIF BInterface (60*)
16 B
RA
M
16 B
RA
M
16 B
RA
M
16 B
RA
M
16 B
RA
M
16 B
RA
M
DY
NA
MIC
MO
DU
LE
(S) A
RE
A
SDIVIDEO IN 2
SDIVIDEO IN 1
VIDEO IN 1Odd Field
Buffer
VIDEO IN 2Odd Field
Buffer
VIDEO IN 1Even Field
Buffer
VIDEO IN 2Even Field
Buffer
13.5 Mps 13.5 Mps50 MpsSDRAM-Based Input
Field BuffersSDRAM-Based Output
Field Buffers
DynamicProcessing
Module
VIDEO OUT 1Odd Field
Buffer
VIDEO OUT 2Odd Field
Buffer
VIDEO OUT 1Even Field
Buffer
SDI VIDEOOUTPUT
VIDEO OUT 2Even Field
Buffer
Host PCPreview Pane
(DMA)
Figure 7 – XC2V3000 layout with VP 0.3 as generic video input ports, VP 5 and 6 as generic video output ports
Figure 8 – Field double buffering
36 Xcell Journal Fall 2004
ConclusionMost of the specific tasks required by par-tial dynamic reconfiguration are handledby a complete methodology and associat-ed tools. These have been designed to befully compatible with the ones used forclassic Xilinx FPGA implementation.Furthermore, our approach is usable withany technology compatible with dynamicre-configuration.
The academic partners developed themethod and tools according to specifica-tions that take into account industrial con-straints, such as:
• Compatibility with standard tools suchas simulators and synthesizers
• Usability with any technology compat-ible with dynamic re-configuration, inparticular with Xilinx technology andback-end tools
The academic partners have made thetools and methods available to the industri-al partners, who are currently testing themfor complex circuit design, thus ensuringease of use and efficiency.
MBDA France will then be able to takefull advantage of this technology in deeply
embedded on-board computers, characterizedby small volumes and low power dissipation.
Deltatec develops digital imaging prod-ucts for multimedia, industrial/medical,and professional broadcast markets.Upcoming video applications will requiremore and more versatility. High-definitiontelevision (HDTV) applications must tack-le multiple formats (resolution, frame rate,interlaced/progressive scan) as well as con-verge with the computer graphics world.Simultaneous support for all existing for-mats/functions may rapidly become anightmare and even hamper feasibilitybecause of cost or performance issues (forexample, an HDTV pixel rate of 75 MHz,almost a six-fold increase over standard dig-ital television [SDTV]).
The RECONF2 tools and methodolo-gy circumvent these problems, as only therequired function blocks are loaded at anyparticular instant:
• FPGA size (and cost) remains acceptable,while keeping the same integration level.
• Smaller, less generic, optimized func-tion modules more easily reach per-formance goals.
At this time, the methodology andtools are accessible to our project partnersand could be extended to other third par-ties, such as tool suppliers for distributionand support in order to enable a largeraccess to this technology. For more infor-mation on the RECONF2 project, visitwww.reconf.org.
Odd field20 ms
Even field20 ms
Blanking 1.57 ms
Active video18.43 ms
Blanking 1.57 ms
Active video18.43 ms
Odd field20 ms
Even field20 ms
Reconf 16 ms
Process 4 ms
Reconf 16 ms
Process 4 ms
A. PAL Video TimingB. One Processing Step
Per FieldC. Two Processing Steps
Per Field
Odd field20 ms
Even field20 ms
Reconf 6 ms
Process 2: 4 ms
Reconf 6 ms
Process 2: 4 ms
Reconf 6 ms
Process 1: 4 ms
Reconf 6 ms
Process 1: 4 ms
D. Two Processing StepsPer Frame
Odd field20 ms
Even field20 ms
Reconf 16 ms
Process 1: 8 ms
Reconf 16 ms
Process 2: 8 ms
Frame40 ms
Figure 9 – Video frame and operations timing
Figure 10 – Manual partitioning tool
Fall 2004 Xcell Journal 37
by Chang Ning SunTechnical Marketing EngineerMentor Graphics [email protected]
Embedded system developmenttraditionally requires a hardwaredesign cycle to create a prototype;a software implementation cyclecan only begin once that proto-type is available. Co-design andco-verification tools such as theSeamless™ co-verification envi-ronment (CVE) from MentorGraphics® provide great flexibilityand early system integration, butthese tools have mostly been usedfor large-scale systems such asASIC designs. Ordinary embed-ded system designs have not yetbenefited from hardware/softwareco-design and co-verification.
The Nucleus real-time operating system is now available for Xilinx FPGAs with MicroBlaze and PowerPC 405 cores.The Nucleus real-time operating system is now available for Xilinx FPGAs with MicroBlaze and PowerPC 405 cores.
Nucleus for Xilinx FPGAs – A New Platform for Embedded System Design
Nucleus for Xilinx FPGAs – A New Platform for Embedded System Design
38 Xcell Journal Fall 2004
In recent years, innovations in FPGAtechnology have shifted the use of thesedevices from supporting logic to forminga central part of the embedded system.With their high logic density and highperformance, modern FPGAs allow youto implement almost an entire embeddedhardware system in a single FPGA device.
Xilinx® Spartan-II™, Spartan-3™,and Virtex-II™ Platform FPGAs (com-bined with the MicroBlaze™ soft proces-sor core) and Virtex-II Pro™ PlatformFPGAs (combined with the PowerPC™405 hard processor core) offer new hard-ware platforms and facilitate new method-ologies in embedded system design.
The Nucleus™ real-time operatingsystem (RTOS) from AcceleratedTechnology (Mentor Graphics’ EmbeddedSystems Division) fully supports XilinxPlatform FPGAs. Together with ourFPGA design flow and Seamless CVEtools, the Nucleus RTOS is a complete hard-ware/software co-design and co-verificationenvironment.
The Nucleus RTOSVery few embedded software developersstart their development on bare hardware;most choose a commercial embeddedRTOS like Nucleus as the base environ-ment and develop their applications on topof the operating system.
Generally, an RTOS provides a multi-tasking kernel and middleware compo-nents such as a TCP/IP stack, file system,or USB stack. Application developersbuild their application software by usingthe system services provided by the RTOSkernel and the middleware components. Anumber of commercial RTOSs are avail-able: some have hard real-time kernels,some have extensive middleware support,and some have good development tools.The Nucleus RTOS has all of these fea-tures from a single vendor.
Figure 1 shows the Nucleus systemarchitecture.
Nucleus PLUSNucleus PLUS, a fully preemptive and scala-ble kernel suitable for hard real-time applica-tions, is designed specifically for embedded
more difficult. These standards are oftenimplemented as middleware componentsand provided together with the RTOS.
The Nucleus RTOS has an extensivelibrary of middleware support (Table 1),which covers every vertical market of theembedded industry. Nucleus NET utilizesa zero-copy mechanism for transferringdata between user memory space and theTCP/IP stack, which significantlyimproves data transmission efficiency andreduces dynamic memory allocation.
Nucleus software fully supports thePOSIX standard for software portability.POSIX interface libraries are available forall Nucleus middleware components.
Nucleus Device DriversThe Nucleus RTOS has an extensive list ofoff-the-shelf device drivers. When you selecta new hardware IP or peripheral to use inyour design, the driver source code mayalready be available. If not, a driver templatelets you easily develop a functional driver.
systems. It has a very small footprint; the ker-nel itself can be as small as 15-20 kB.
All Nucleus kernel functions are provid-ed as libraries, so only the required kernelfunctionality is linked with the applicationcode in the final image. Nucleus PLUSprovides complete multi-tasking kernelfunctions, including task management,inter-task communication, inter-task syn-chronization, memory management(MMU), and timer management. Recently,we added a dynamic download library(DDL) into Nucleus PLUS to allowdynamic downloading and allocation ofsystem modules.
Nucleus MiddlewareThe middleware available for an RTOS hasbecome an important factor when selectinga commercial RTOS for a particular applica-tion. As embedded applications becomeincreasingly more complicated, applicationdevelopers find implementing industry stan-dards like TCP/IP, WiFi, USB, and MPEG
Fall 2004 Xcell Journal 39
(written in C, C++, POSIX or Java™)
Figure 1 - Nucleus system architecture
Mentor Graphics will continue to adddevice drivers to the Nucleus library fornew hardware IP blocks for Xilinx FPGAsas well as for third parties, such as its ownIP Division.
Nucleus Development ToolsThe Nucleus RTOS has the most inte-grated development environment (IDE)in the industry. Combined with ourMicrotec compiler tools, the code|labembedded development environment(EDE) and XRAY debuggers provide acomplete software design flow, fromcompilation to debugging.
Our C/C++ source-level debuggerssupport both run-mode and freeze modedebugging with complete Nucleus kernelawareness. The XRAY debugger supportsboth homogeneous and heterogeneousmulti-core debugging, and a wide range ofprocessors and DSPs.
In addition to the Microtec compil-ers, the EDE, IDE, and debuggers arealso integrated with many third-party
compiler tools such as GNU. For system-on-chip (SoC) users, inte-
gration of the Nucleus RTOS and XRAYdebugger with other products in theMentor Graphics lineup (such as SeamlessCVE for hardware/software co-verifica-tion) offer a complete hardware/softwareco-design and co-verification platform.
Royalty-Free with Source CodeThe royalty-free with source code busi-ness model of the Nucleus RTOS, com-bined with the high scalability and smallfootprint architecture, provides greatvalue to customers developing large-vol-ume products such as cell phones, PDAs,and cameras. A single up-front license feecovers all production rights for a singleproduct using Nucleus software, with noadditional royalty fees and no need totrack shipment numbers.
Nucleus software has proven to be arobust RTOS and has been widely used inevery vertical market of the embeddedindustry, including consumer electronics,
Nucleus for Xilinx FPGAsThe scalable and configurable nature ofNucleus products, combined with the flexi-bility and versatility of FPGAs, providesgreat potential for hardware/software co-design, co-verification, and early integra-tion of your software and hardware projects.
Nucleus for MicroBlazeThe MicroBlaze soft processor core featuresa Harvard-style RISC architecture with 32-bit instruction and data buses. AMicroBlaze soft core can be programmedinto Spartan-II, Spartan-3, or Virtex-IIPlatform FPGAs.
Many embedded system developers arealready familiar with the PowerPC 405processor. Xilinx Virtex-II Pro FPGAs pro-vide fully configurable hardware platformswith the PowerPC 405 hard processor core.
Nucleus software fully supportsVirtex-II Pro FPGAs with the PowerPC405 hard core, providing a MicrotecPowerPC compiler and XRAY kernel-aware debugger, as well as GNU compil-er tools and GDB debugger.
FPGA Reference Design for Nucleus SoftwareTo give embedded system developers aquick start with Nucleus software forXilinx FPGAs, we worked with Xilinx andMemec™ Insight to develop referencedesigns for running Nucleus software. Eachreference design is a sample FPGA hard-ware configuration based on a MemecInsight FPGA development board.
You can build and implement all of thereference designs into the FPGA device by
Nucleus Residential Gateway NET, PPP, PPPoE, DHCP server
Nucleus WebServ Embedded HTTPD web server
Nucleus EMAIL POP3 and SMTP
Nucleus FILE MS DOS compatible file system
Nucleus GRAFIX Graphics-rendering engine with windowing toolkit
Nucleus USB Complete USB stack for USB specifications 1.1, 2.0, and OTG
Nucleus 802.11 STA (WiFi) 802.11b and 802.11g protocol stack
Nucleus IPv6 IP version 6 protocol stack
CEE-J Java VM for Nucleus CLDC, MIDP, Embedded Java, and Personal Java
Nucleus software has proven to be a robust RTOS and has been widely used in every vertical market of the embedded industry...
Table 1 - Primary Nucleus middleware components
using Xilinx EDK and ISE software. Foreach reference design, we provide a LimitedVersion (LV) of our Nucleus software,including the Nucleus PLUS kernel andthe relevant middleware (such as NucleusNET) to help you evaluate Nucleus soft-ware with the FPGA.
The LV version of Nucleus softwarefunctions exactly the same as a full version,but is provided as binary only andruns for a limited time. Currently,we have FPGA reference designs forthe following Memec Insightboards:
• Spartan-IIE LC MicroBlaze development board
• Spartan-3 LC MicroBlaze development board
• Spartan-3 MB MicroBlaze development board
• Virtex-II MB MicroBlaze development board
• Virtex-II Pro PowerPC development board
We have also created a website(www.acceleratedtechnology.com/xilinx) tosupport Nucleus software for Xilinx FPGAs,where you can download FPGA referencedesigns and Nucleus software updates.
FPGA Design FlowThe FPGA reference designs for theNucleus RTOS can be used as your startingpoint to build a custom FPGA-based hard-ware platform. All of the reference designsare provided as Xilinx Platform Studio(XPS) projects, so you can directly openthese projects in XPS and edit, build, andimplement the design with Xilinx EDKand ISE software. Typically, building aNucleus system using an FPGA and con-figurable cores involves the following:
Once you have reached this point, youcan start evaluating your Nucleus softwareand begin debugging your application.
Xilinx EDK and ISE software provide acomplete environment for configuring andimplementing an FPGA-based hardwareplatform. At the same time, EDK also gen-erates software libraries and C header filesfor the hardware design. These librariesprovide basic processor boot-up code andlow-level hardware IP device driver func-tion code. These low-level functions canbe treated as a “BIOS” layer for Nucleus.
Figure 2 shows the source code directo-ries generated by EDK in an XPS project.You will find one subdirectory for each pieceof hardware IP, such as “emac_v1_00_d” forEthernet and “uartlite_v1_00_b” for UART.Each subdirectory contains the driver codefor that hardware IP. These driver functionsare included with the hardware IP from thevendor and have been integrated into theEDK installation.
Nucleus software provides an OSadaptation layer that is an interface layerbetween the EDK-generated “BIOS”function layer and the Nucleus high-leveldevice drivers. This OS adaptation layer
serves as a hardware abstraction layer,which will significantly simplify theNucleus device driver porting overFPGA-based hardware platforms.
Nucleus Software DebuggingBoth MicroBlaze soft-core and PowerPC405 hard-core designs provide a standardJTAG debug interface. So after imple-
menting the hardware design inthe FPGA, you can take fulladvantage of our JTAG-basedcode|lab EDE or XRAY debuggerto facilitate application debug-ging. Both code|lab and XRAYhave complete Nucleus kernelawareness, which can help youanalyze complex real-time behav-iors in a multi-tasking system.
Co-Design and Co-VerificationAs we mentioned earlier, Nucleussoftware provides a viable platformfor hardware/software co-designand co-verification. As one of theonly EDA companies with anembedded software focus, MentorGraphics’ Nucleus RTOS and
The combination of the Nucleus RTOSand Seamless co-verification tool providesyou with one of the most comprehensivehardware/software co-design and co-verifi-cation tools possible.
ConclusionEmbedded systems are becoming increasing-ly complicated. To meet the challenge, inte-grated solutions including hardware/softwareco-design and co-verification are required.FPGAs with configurable processor coresbring a new, innovative approach to mod-ern embedded system designs and open thedoor to hardware/software co-design andco-verification.
Nucleus software for FPGAs can sig-nificantly accelerate your hardware/soft-ware development cycle and improveyour hardware/software integration quali-ty. For more information, please visitwww.acceleratedtechnology.com.
trademarks and registered trademarks are the property of their respective owners.
Pb-free devicesavailable now
by Zulfiqar Ali ZamindarField Application EngineerNu Horizons Electronics [email protected]
Xilinx® FPGAs have been a great platformfor control logic and system interfaces foryears, but have been missing the processorcapabilities fulfilled by external processorsin every application. Today’s complex sys-tems require a large amount of memory, asuper fast microprocessor, a digital signalprocessor, and a variety of system interfacesto communicate with other chips, systems,and backplanes.
Every system has an external processorand memory component that delays systemperformance and increases system compo-nent cost. Once you’ve integrated both,you can then concentrate on making yoursystem faster and eliminate performancebottlenecks.
Many companies have focused theirefforts on developing the system-on-chipconcept by adding feature sets to bringadditional functionality to single silicon.These customized ASICs have become avery costly solution in today’s competitiveand time-to-market landscape.
FPGA technology has come a long wayin recent years by increasing a large numberof intellectual properties to reduce the costof silicon development in various markets.This was accomplished by optimizingarchitecture, leading process technology,and adding both soft and hard embeddedprocessor cores.
Implement an Embedded System with FPGAsImplement an Embedded System with FPGAs
Fall 2004 Xcell Journal 43
Merging the processor capability onto the FPGA on board can boost system performance and lower overall system cost.Merging the processor capability onto the FPGA on board can boost system performance and lower overall system cost.
Some of the applicationsfor embedded processors areinfotainment systems inautomotives, security sys-tems in storage and network-ing markets, high-speed dataanalysis by data warehouse,and system monitoring invarious applications. Havinga processor inside an FPGAis the perfect design innova-tion for these types of appli-cations; a programmablesystem-on-chip in the FPGAwill not only support chang-ing IP standards but can alsoquickly adapt to newlydefined programmable sys-tems for new markets.
Embedded Development KitXilinx expanded the features within itsFPGAs by adding embedded IBM™PowerPC™ 405 processors in its Virtex-IIPro™ devices and MicroBlaze™ softprocessors in both the Virtex™ andSpartan™ architectures. This is just anotherstep towards innovation, similar to embed-ded block memory, block multipliers, clockmanagement, and multiple high-speed I/Ocircuitries.
Time to market still remains critical toall companies developing both hardwareand software for a system. With theEmbedded Development Kit (EDK) fromXilinx, you can simultaneously create bothhardware and software designs and gener-ate a system file with just a few tool clicks.The tool allows you to create block-basedprocessor systems with many widely usedperipherals like Ethernet MAC, GPIO,SDRAM Controller, UART, and IIC, all inone silicon.
With EDK v6.2 (Figure 1), the base sys-tem builder (BSB) wizard allows you toselect any board from Xilinx and its dis-tributors and connect the processor to anyboard component with just a few clicks. Italso creates a simple software application inC that you can expand and customize.
The EDK tool also comes with a GNU-based compiler/debugger, allowing you tocompile and debug within the same GUI
the same way that you can adduser or Xilinx IP. Once you havedownloaded the design into atarget board, you can open thelogic analyzer to trigger signalsand view the wave form todebug your systems.
With ChipScope Pro 6.2software, a powerful virtualI/O core has been added,which you can use as a DIPswitch or LED to simulate sig-nals and view outputs.
The Nu Horizons Spartan-3 BoardXilinx and its distributors haveseveral boards for prototyping oremulating a processor-based sys-tem. A low-cost and widely
adaptable prototyping platform from NuHorizons is the Spartan-3™ developmentboard (HW-AFX-SP3-400-DB).
NuHorizons recognizes the importanceof prototyping platforms for its customers,as well as entering into new markets whereSpartan-3 allows us to increase marketshare. The board (Figure 2) comprises thefollowing:
• Xilinx 3S400-4PQ208C Spartan-3device
• 4 x 24 character LCD
• LED
• Push button
• Oscillator with PLL
• RS232-C interface
• A/D and D/A converter
• Flash memory
• SDRAM memory
• JTAG configuration header for pro-gramming
• Test point headers for debuggingdevice
This fully loaded Spartan-3 develop-ment board includes all the features neces-sary to prototype a MicroBlaze-basedembedded system design. The board comeswith the Xilinx WebPACK™ version of
used to develop the hardware system. Thelibrary generator (LibGen) in EDK createsall of the libraries, drivers, executables, andlink files for the processor design.
Initial support for the board supportpackage (BSP) includes Wind RiverSystems’ vxWorks™ for PowerPC-basedembedded designs and the Xilinx micro-kernel for MicroBlaze-based designs.
EDK v6.2 has automated the memoryaddressing capabilities of all of the select-ed design peripherals. It also has thecapacity to bring developed cores into thetools environment, adding them to theprocessor or peripheral bus. For example,you can create a core in System Generatorfor DSP and bring a finite impulseresponse (FIR) filter or other IP into yourprocessor-based design.
EDK is fully capable of running ISEtools in the background with a built-in fea-ture called XFLOW, achieved by a com-mand-line script file. This flow cansynthesize, place, route, and generate hard-ware configuration files; compile and exe-cute multiple software codes; generatelibraries for code; and merge firmware tohardware files for downloading to a targetboard. All of this is achieved by just a fewclicks in the EDK software.
EDK v6.2 also allows you to addChipScope Pro™ cores during the designprocess to debug your design in hardware.You can add ICON, ILA, and IBA cores
44 Xcell Journal Fall 2004
Figure 1 – BSB flow
ISE tools, design files, user’s manual, anddocumentation. The option of getting theboard bundled with ChipScope Pro andEDK software is also available.
The Spartan-3 board comes with a simpledisplay controller design that uses theMicroBlaze core, a few GPIOs, RS232,and a JTAG interface designed in EDK.The BSB flow makes it very easy to targetthe Nu Horizons board in EDK and gen-erate an embedded design with theMicroBlaze processor in a few clicks. Withthe GNU debugger and ChipScope Prosoftware, you can debug a design withinthe same GUI environment.
Besides the MicroBlaze core, theSpartan-3 platform is a great tool in whichto implement the Xilinx PicoBlaze™ 8-bitsoft controller reference design. Nu Horizons field application engineershave written several designs coveringmemory controllers, embedded processors,hardware-in-the-loop with digital signalprocessing (DSP), and system monitordesign using analog-to-digital (ADC) anddigital-to-analog converters (DAC) on theboard. ADC and DAC are very powerfulattributes of our low-cost board, and twoof the many competitive board features.
The Nu Horizons Spartan-3 board also
supports Shift-Right Technologies’ freeopen-source eXtreme Minimal Kernel(XMK). XMK is a 100% free, preemptivemulti-threaded RTOS for microcon-trollers. XMK’s primary design goal is to beextremely small without sacrificing per-formance or functionality.
XMK’s minimal footprint makes itideal for running an 8-bit microcontroller,while its feature content makes it an excel-lent choice for 16-bit and 32-bit micro-controllers.
uIP is one of the several free TCP/IPstacks integrated into the XMK operatingsystem. The uIP TCP/IP stack makes itpossible to connect to a TCP/IP networkwithout sacrificing interoperability orRFC-standard compliance.
ConclusionThe era of creating embedded designs inFPGAs is here. With tools like EDK, any-one can implement a powerful system-on-chip design within days.
The Spartan-3 board from Nu Horizonsis a perfect solution for prototyping logicand embedded processing in Xilinx FPGAs.The board has all of the interfaces necessaryto create an embedded system design.
Nu Horizons is also in the process ofreleasing a Spartan-3 (3S1500) platformboard for those who need higher densitylogic, more memory, and a high-perform-ance interface for video and imagingapplications.
All of the designs and related documen-tation for the Spartan-3 board are availableon the Nu Horizons website atwww.nuhorizons.com/products/xilinx/spartan3/development-board.html.
Fall 2004 Xcell Journal 45
ConfigurationPROMXCF02
20 UserI/O
JTAG I/FCableIII & IV
25 PinD-Sub
Connector
PS2I/F
PLL SystemClock
Generationx2ICS511
JTAGConfiguration
5V RegLTC1963A
3.3V RegLTC1963A
2.5V RegLTC1118-25
1.2V RegLTC1963A
2 Channel12-bit D/ALTC1654
2 Channel12-bit A/DLTC1865L
Test LEDs
Push Buttons
RS 232Intersil
ICL3232
32Mb FlashSTMicro
ST29W320
4-bitLVDS I/FWith Cntrl
LCD Display2x24 Character
4M X 16SDRAM-64Mb
ISSI
Xilinx Spartan-3XC3S400-4PQ208
Figure 2 – Spartan-3S400 board block diagram
by Shawn McCloudHigh-Level Synthesis Product ManagerMentor Graphics [email protected]
High-end electronic design flows have tradi-tionally included the creation ofVerilog™/VHDL representations by hand.These manual methods were effective in thepast, but the algorithms used in many oftoday’s new designs are so complex that tra-ditional design practices are now inadequate.
Meanwhile, FPGAs are increasinglyattractive because companies can avoidtime-consuming, exorbitant mask re-spinsand other risks associated with ASICs. Theemergence of multimillion-gate, 1,000+pin, “ASIC-like” devices incorporatingembedded processors and innovative mem-ory architectures calls for a system-levelapproach to programmable logic design.
FPGAs have already moved beyondtheir traditional applications into newdomains such as digital signal processing(DSP). Unfortunately, creating registertransfer level (RTL) implementations forhigh-end FPGAs can become as error-prone and time-consuming as when target-ing an ASIC, thereby negating much oftheir inherent value.
Using pure, untimed algorithmic C dramatically speeds implementation and increases design flexibility when compared to other C-based flows.Using pure, untimed algorithmic C dramatically speeds implementation and increases design flexibility when compared to other C-based flows.
Algorithmic C Synthesis Optimizes ESL Design Flows Algorithmic C Synthesis Optimizes ESL Design Flows
46 Xcell Journal Fall 2004
You can now prevent these problems byadopting a design flow based on the simu-lation and synthesis of C representations.By using pure untimed C++ to describefunctional intent, your design teams canmove up to a far more productive abstrac-tion level for designing hardware, thusreducing implementation efforts by asmuch as 20 times while creating a morerepeatable and reliable design flow.
An important outcome of this approachis that you can produce designs of betterquality than traditional RTL methods byidentifying fundamentally superior micro-architectural solutions.
In this article, we’ll examine the con-ventional design flow and its associatedproblems, and highlight some alternativeapproaches to hardware design based onthe use of C/C++, comparing the pros andcons of SystemC™ and the pure, untimedC++ used by Mentor Graphics®
Catapult™ C Synthesis tool.
Traditional Design Flow Many high-end designs in the communica-tions or video/image processing industriesare typically based on extremely complexalgorithms. The first step in a conventional
• RTL Area/Timing Optimization.Iterate through RTL synthesis to meetdesign goals.
In some cases, the hardware engineersmanually translate the floating-pointuntimed algorithm into bit-accurate RTL,either Verilog or VHDL. This RTL is sub-sequently synthesized into a gate-levelnetlist using traditional RTL synthesistechnology (Figure 1).
The main problems associated with thistraditional flow are:
• Functional Intent. A significant con-ceptual and representational divideexists between the system architectsworking with untimed algorithms andthe hardware designers working withthe timed RTL in VHDL/Verilog. As aresult, the original design intent speci-fied by the system architect is easilymisinterpreted, causing functionalerrors in the end product. In addition,it is relatively easy to implement andevaluate specification changes in theuntimed algorithm, but very painfuland time-consuming to subsequentlyfold these changes into the RTL. Thisis a serious consideration in wirelessapplications, because broadcast stan-dards and protocols constantly evolveand change.
• Meeting Requirements. Predictingdesign performance (area, delay,power) is difficult until RTL is done.Therefore, system-level partitioningand the resulting block-level designgoals are inaccurate at best. Many system-level timing closure problemsare directly related to poor macro-architectural choices and unrealisticgoals placed on the hardware engineerdesigning the hardware blocks.
• Design Complexity. Because theuntimed algorithmic domain and RTLdomain are dissimilar, the manualtranslation from untimed algorithms toRTL is prolonged and error-prone. Inaddition, RTL uses technology-dependent coding styles and “hard-codes” the micro-architecture.Evaluating alternative implementations
design flow involves model-ing and proving the designfunctionality at the algorith-mic level of abstraction, usingtools such as MATLAB™from The MathWorks orplain C/C++ modeling.
MATLAB is good for ini-tial algorithm proof-of-con-cept and validation, althoughmany design teams alsodevelop C/C++ models tofacilitate high-speed system-level verification beyondwhat MATLAB can provide.For subsequent discussion,we’ll use the term “untimed”to represent those algorithmswritten either in MATLABor pure ANSI C/C++.
Based on project require-ments, system architectsthen partition the designinto blocks to be implement-
ed either in hardware or software. For thehardware blocks, a floating-point algo-rithm represents the functionality. Next,either the system or hardware designerquantizes the floating-point algorithminto an integral or fixed-point algorithm.These fixed-point algorithms are repre-sented in MATLAB, Simulink™, oruntimed C++ using bit-accurate types(SystemC 2.0). After validating the fixed-point algorithm, the hardware designerstarts the long and tedious manual processof creating Verilog or VHDL for the RTLabstraction. This process can be dividedinto three distinct phases:
• Micro-Architecture Definition. Decideon the structure of the data path, con-trol, and interfaces. Typically done onpaper or perhaps a Microsoft™Excel™ spreadsheet. The resultingmicro-architecture has a significantimpact on the overall speed/area of thehardware. Designs can easily swing by10 times in area or performance basedon the decisions made.
• RTL Design. Manually write theRTL to represent the defined micro-architecture.
Fall 2004 Xcell Journal 47
Algorithm FunctionalDescription
MATLABSPW
C/C++
ManualMethods
Precision RTLor DC
ASIC or FPGAVendorV
endo
rH
ardw
are
Des
igne
rS
yste
m D
esig
ner
TYPICALRTL DESIGN FLOW
Floating PointModel
RTLSynthesis
HardwareASIC/FPGA
Place and Route LogicAnalyzer
Fixed PointModel
Micro-architectureDefinition
RTLDesign +
RTL Area/TimingOptimization
Figure 1 – The manual, iterative methods used in conventionalRTL flows no longer work for today’s complex designs.
is impractical because modifying andre-verifying RTL to perform a series of“what-if ” analyses of alternate micro-architecture implementations is toolengthy to be practical. Such evalua-tions may include performing certainoperations in parallel versus sequential-ly; pipelining portions of the designversus non-pipelining; or sharing com-mon resources. Because of the amountof time involved, design teams are lim-ited to the number of evaluations theycan perform, which can result in anon-optimal implementation. Thecomplexity of high-end, compute-intensive applications exemplifies thedifficulties associated with traditionalhand-coded RTL.
• RTL Reuse. Using the same RTL foran ASIC and FPGA implies that theASIC implementation is sub-optimaldue to inherent FPGA performancelimitations. Conversely, users can real-ize performance goals in an FPGAthrough massive parallelism; however,this parallelism may not be necessaryfor an ASIC. This makes it extremelydifficult, if not impossible, to re-targeta complex RTL design to create atuned representation for the technolo-gy node. Finally, because RTL hard-codes the micro-architecture, using thesame RTL for a 10 MHz application(for example) versus a high-perform-ance 400 MHz application will resultin sub-optimal hardware.
• Functional Verification. Using tradi-tional logic simulation to verify a largedesign represented in RTL is computa-tionally expensive and extremely slow.
The most important challenge facing thedesigner is that all of the implementation“intelligence” associated with the design ishard-coded into the RTL, which thereforebecomes rigid and implementation-specific.
Next-Generation C-based FlowAn examination of the conventional flowreveals three stages:
• Untimed algorithm evaluation inMATLAB or C/C++, including quanti-zation and integral/fixed-point analysis
• Algorithm (untimed) to RTL (timed)translation, including verification and“what-if ” implementation analysis
• RTL to gate-level netlist using industry-standard RTL synthesis
The front-end untimed algorithm eval-uations and the back-end RTL-to-netlistsynthesis are both well known and effi-
cient. The bottleneck is the manual cre-ation of the RTL, including performing“what-if ” evaluations, implementing speci-fication changes, and verifying the RTL.
Any ideal flow should be based onindustry-standard ANSI C/C++, the lan-guage of choice for software and system-level modeling for many years. The pure,untimed C/C++ written by system design-ers is an excellent source for creating hard-
ware because it is void of implementationdetails. This maximizes flexibility to thesynthesis tool and provides a source that is“liquid” – capable of targeting ASICs,FPGAs, highly compact small solutions,and highly parallel fast solutions.Translation from MATLAB to C/C++ isstill manual, but because these domains areconceptually very close, the translation isrelatively quick and easy.
The untimed C/C++ adds significantvalue by providing much faster simulationthan the MATLAB Simulink environment,and is thus ideally suited for system-levelvalidation. Following verification, the Crepresentation is used to automatically gen-
erate RTL, which in turn is subsequentlyused to drive existing RTL synthesis tech-nology (Figure 2).
With this flow, you can synthesize theuntimed C/C++ directly into a gate-levelnetlist. However, generating the intermedi-ate RTL provides a timed “comfort zone”for existing flows by allowing you to vali-date the implementation decisions made bythe C synthesis tool.
48 Xcell Journal Fall 2004
Algorithm FunctionalDescription
MATLABSPW
C/C++
ManualMethods
Precision RTLor DC
ASIC or FPGAVendorV
endo
rH
ardw
are
Des
igne
rS
yste
m D
esig
ner
TYPICALRTL DESIGN FLOW
IDEALC-BASED DESIGN FLOW
Floating PointModel
RTLSynthesis
HardwareASIC/FPGA
Place and Route LogicAnalyzer
LogicAnalyzer
Fixed PointModel
Algorithm FunctionalDescription
Floating PointModel
Ideal C-BasedSynthesis
RTLSynthesis
Constraints
HardwareASIC/FPGA
Place and Route
Fixed PointC++ Model
Micro-ArchitectureDefinition
RTLDesign +
RTL Area/TimingOptimization
+
Any ideal flow should be based on industry-standard ANSI C/C++, the language of choice for software and system-level modeling for many years.
Figure 2 – This ideal design flow basedon algorithmic synthesis of pure,untimed C/C++ addresses all of theproblems associated with traditionalflows in which the untimed algorithmis hand-translated into RTL.
Furthermore, RTL is a useful point to“stitch” the various functional blockstogether. Large portions of today’s designsexist as IP blocks represented at the RTLlevel of abstraction. This means that RTL isa useful point in the design flow for inte-grating and verifying the entire hardwaresystem. Your design teams can thus takefull advantage of existing, mature, androbust RTL design tools such as test inser-tion or power analysis.
The ideal flow based on algorithmicsynthesis of pure, untimed C/C++ address-es all of the traditional bottlenecks:
• Functional Intent. Almost no concep-tual gap exists because system archi-tects and hardware designers use thesame untimed C/C++ source. Theirworlds are connected for the first time.Moreover, it eliminates any chance ofmisinterpretation by the hardwaredesigner, thereby reducing errors andimproving overall reliability. The newflow also easily accommodates designspecification changes.
• Meeting Requirements. Algorithmic Csynthesis provides accurate metrics upfront, shortening lengthy RTL synthesisruntimes and manual RTL optimiza-tion. You can leverage these metrics tomake system-level macro-architecturepartitioning decisions, thus creating adesign that is better architected to meetsystem performance.
• Design Complexity. You can addressthe design complexity issue by using
algorithmic C synthesis to thoroughlyexplore any highly complex designspace. C is fast and efficient to createand verify, providing additional bene-fits around system-level validation andintegration. RTL uses technology-dependent coding styles and hard-codes the micro-architecture. Using theideal flow, evaluating alternative imple-mentations is fast and efficient. Youcan modify and re-verify C to effec-tively perform a series of “what-if ”evaluations of alternative algorithms.Thus, your design teams are not limit-ed by the number of evaluations theycan perform, which results in an opti-mal implementation.
• RTL Reuse. A key feature of this idealflow is that the C representation is com-pletely abstracted from the final imple-mentation. Therefore, as opposed toembedding implementation “intelli-gence” into the C representation, design-ers can instead use such intelligence todrive the C to the RTL implementationthrough a series of “soft” constraints. Inturn, this means that they can easily re-target the same C representation for dif-ferent micro-architectures andASIC/FPGA implementations.
• Functional Verification. Verifying C isfast and efficient. A pure untimed Crepresentation will simulate as much as10,000 times faster than an equivalentRTL representation (the larger thedesign, the faster C is compared to itsRTL counterpart).
Let’s examine alternatives to hardwaredesign based on the use of C/C++. Theseinclude SystemC and the synthesizable sub-set of pure untimed C++ used by theMentor Graphics Catapult C Synthesis tool.
SystemC-Based FlowTwo main SystemC-based design flowsexist: both require the untimed algorithmrepresentation to be manually translatedinto its SystemC counterpart. Followingverification via simulation, you can auto-matically translate the SystemC representa-tion into an RTL equivalent for use withexisting synthesis technology. Alternatively,you can directly synthesize the SystemCrepresentation into a gate-level netlist(Figure 3).
Because it was specifically created torepresent hardware, SystemC is equippedwith hardware-centric data types, includ-ing integral and fixed-point entities withrounding and overflow modes. SystemCalso includes system-level simulationcapabilities, including support forabstract data transactions. Although pow-erful, SystemC is an extremely complexlanguage. Moreover, the pseudo-timedconstructs required for SystemC synthesisand simulation are foreign to both sys-tem-level and hardware designers.
One advantage of SystemC is that itsimulates as much as 100 times faster thanan equivalent RTL representation specifiedat the same level of abstraction. However,to make a SystemC representation suitablefor RTL generation or direct C synthesis,designers would need to write it at nearlythe same level of abstraction as hand-translated RTL, which largely negates theadvantages of using it in the first place.
Even worse, all of the implementation“intelligence” associated with the designhas to be hard-coded into the SystemC rep-resentation, which therefore becomesimplementation-specific. This means that aSystemC representation intended for anFPGA is not suitable for a subsequent ASICrealization, and vice versa. Finally, it is notpossible to re-target the SystemC represen-tation to a compact or highly parallel solu-tion because the micro-architecture ishard-coded.
Fall 2004 Xcell Journal 49
MATLAB SystemC
RTL
RTL Synthesis
Gate-LevelNetlist
Gate-LevelNetlist
C Synthesis
SystemArchitects
HardwareDesign Engineers
AutomaticTranslation
Non-implementationspecific, fast to simulate,
easy to modify
ManualTranslation
Time consuming to create, implementationspecific, relatively slow to simulate,
relatively difficult to modify
Figure 3 – To make a SystemC representation suitable for RTL generation or direct C synthesis, you would need to write it at nearly the same level of abstraction as hand-translated RTL.
50 Xcell Journal Fall 2004
Another SystemC approach“wraps” the untimed C++ algorithmin a timed interface. This approachmay have some advantages in system-level integration; however, the result-ing source is now pseudo-timed andhard-coded to the hardware interface.Therefore, the notion of interfaceexploration is not practical.
For example, targeting the C sourceto a streaming I/O model versus a sin-gle-port memory implies re-coding theinterface wrapper (difficult and timeconsuming). In addition, the source isno longer the pure, untimed C++description already validated andproven by the system designer. Thus,any interface changes will require re-verification and possibly introduce for-eign coding concepts to the pure C++representation.
Finally, the degree of interfacedetail is extremely critical. Too muchinformation stifles the behavioral synthesistool and results in sub-optimal designs. Toolittle means the tool doesn’t have the mini-mum information needed to synthesize thedesign, resulting in functional errors.
Catapult C-Based FlowAs noted previously, the most significantproblem with existing C-based design flowsis that the implementation “intelligence”associated with the design has to be hard-
coded into the C representation, whichthen becomes implementation-specific.This is the key differentiator of theCatapult C-based design flow from MentorGraphics. In this flow, the C code is veryclose to what a system designer would writeto model functional behavior without anypreconceived hardware implementation ortarget device architecture in mind.
As opposed to adding “intelligence” tothe source code (thereby locking it into a
target implementation), all of the intel-ligence is provided by controlling theCatapult C engine itself (Figure 4).
Catapult C uses industry-standardC++ source code augmented withSystemC data types that allow specificbit-widths to be associated with vari-ables and constants. An advantage isthat many companies already create anuntimed C/C++ representation of theirdesigns for algorithmic validation. Theydo this because a pure C representationis easy and compact to write and simu-lates 100 to 10,000 times faster than anequivalent RTL representation.
The only modification typicallyrequired to use this model withCatapult C is to add a single pragma tothe source code to indicate the top ofthe functional portion of the design –anything conceptually above this pointis considered part of the test bench.
Another Catapult C advantage is itsintuitive interface. Once the tool has readthe source code, you can immediately per-form micro-architecture tradeoffs and eval-uate their effects in terms of size and speed.Catapult C easily associates ports with reg-isters or RAM blocks. It identifies con-structs like loops and allows you to specify– on an individual basis – whether theyshould be unrolled, partially unrolled, orleft alone. You can also specify if you wishto perform resource sharing on specific enti-ties, pipeline loops, and other constructs.
All of these evaluations are done with-in a few seconds or minutes depending ondesign size. Catapult C then reports totalsize/area and latency in terms of clockcycles or input-to-output delays (orthroughput time/cycles in the case ofpipelined designs). You can name, save,and reuse any of these “what-if ” scenar-ios. It would be almost impossible to per-form these tradeoffs in a timely mannerusing a conventional hand-coded RTL-based flow.
More importantly, the fact that the Csource code used by Catapult C is notrequired to contain any implementation“intelligence” – and that all such intelligenceis supplied by controlling the Catapult Cengine itself – means that your design teams
C++Algorithm
C++ ClassLibrary
AlgorithmSimulation
Cycle AccurateSimulation
RTLSimulation
GateSimulation
RTLSynthesis
Catapult C Synthesis
Schedule
DPFSM
Algorithm &Micro-Architecture
Analysis
RTL GeneratorINT
ER
FAC
E S
YN
TH
ES
IS
INT
ER
FAC
E S
YN
TH
ES
IS
INTERFACE SYNTHESIS
INTERFACE SYNTHESIS
Contraints
ASIC/FPGA
MATLAB Domain(Pure Algorithmic
Non-Implementation Specific)"m" Language (Used by MATLAB)
Standard C (Used by Catapult C)
Handel-C
SystemC
More Abstract, LessImplementation
Specific
Less Abstract, MoreImplementation
SpecificVerilog and/or VHDLRTL Domain
(Implementation Specific)
Timed C Domain(Implementation Specific)
Untimed C Domain(Non-Implementation Specific)
Figure 4 – The Catapult C tool’s “what if ” analysis allows complete, interactive exploration of the micro-architectureand interface design space, yielding high-performance hardware
that rivals hand-coded design quality.
Figure 5 – The Catapult C-based design flow supports a higher level of synthesis abstraction, speedingimplementation time and increasing design flexibility when compared to other C-based flows.
Fall 2004 Xcell Journal 51
can easily re-target the same source code toalternative micro-architectures and differentimplementation technologies.
ConclusionThe fundamental difference between the var-ious C-based design flows is the level of syn-thesis abstraction they support (Figure 5).SystemC offers significant system-level sim-ulation capabilities, but its synthesizablesubset is at a lower abstraction level, so mod-ification to the source drives the results.
This lack of synthesis abstraction caus-es the SystemC representations to beimplementation-specific. This makes themdifficult to create and modify, and signifi-cantly reduces their flexibility with regardto performing “what-if ” evaluations andre-targeting them toward alternativeimplementation technologies.
By comparison, Catapult C employsmodels represented in standard C++ andsupports a high level of synthesis abstrac-tion. Because they are not implementation-specific, Catapult C models are compactand can thus be easily created and modified.
By means of the Catapult C engineitself, you can quickly perform “what-if ”evaluations and re-target the design towardalternative implementation technologies.
The end result is that the Catapult C-based design flow dramatically speedsimplementation, improves design flow reli-ability, and increases design flexibility whencompared to other C-based flows or tradi-tional hand-coded RTL methods.
Catapult C Synthesis has already beeninstrumental in many successful tapeoutsfrom major hardware design companiesworldwide. The mature, second-genera-tion algorithmic synthesis environmentunites two distinct domains – system-leveldesign and hardware design – and whencombined with Mentor GraphicsModelSim™ simulation tools, lays thefoundation for next-generation electronicsystem level (ESL) design.
To learn more about how Catapult CSynthesis can address your hardware designneeds, call Mentor Graphics to schedule acomplete product demonstration, or visitour website for the latest product news andcase studies at www.mentor.com/c-design.
Advertise your product or service in Japan
for half price.
For the first time, the award-winning Xcell Journal is offering you the opportunity to reach the Japanese market, with translated Japanese-language
advertising, at a highly affordable introductory rate.
Join the Xcell Spirit of Partnership advertising program and receive our special offer of 50% off on Xcell Journal Japan advertising rates.
Your advertising message can now reach thousands of targeted Japanese programmable digital designers.
We offer affordable advertising rates and a variety of advertising sizes to meet your budgetary needs.
Join the other leaders in our industry and advertise in the Xcell Journal.
For the first time, the award-winning Xcell Journal is offering you the opportunity to reach the Japanese market, with translated Japanese-language
advertising, at a highly affordable introductory rate.
Join the Xcell Spirit of Partnership advertising program and receive our special offer of 50% off on Xcell Journal Japan advertising rates.
Your advertising message can now reach thousands of targeted Japanese programmable digital designers.
We offer affordable advertising rates and a variety of advertising sizes to meet your budgetary needs.
Join the other leaders in our industry and advertise in the Xcell Journal.
The Xilinx® Integrated SoftwareEnvironment (ISE 6) is the current versionof our industry-leading logic design tools,focused on delivering the highest perform-ance available in PLD design. That leading-edge performance can help you get thehighest quality of results available, and itcan also significantly contribute to lower-ing design time and costs.
ISE 6 is packed with features designedto streamline the design flow, with technol-ogy such as:
• Timing-driven map – an ISE mapperoption that helps pack more designinto your highly utilized device
• ASIC-to-FPGA transition tools
• A spectrum of high-density designoptions built into ISE
ISE 6 can help eliminate engineeringbottlenecks while delivering the fastestpush-button performance available in pro-grammable logic design.
Lower Potential Device CostsIntroduced in September 2003, ISE 6 addsa new timing-driven map option that helpsget better design utilization for your FPGAdevice, particularly if the device is alreadymore than 90% utilized. Timing-drivenmap is a next-generation enhancement toISE physical synthesis, and combines
Design Tool Performance that Lowers Your CostsDesign Tool Performance that Lowers Your Costs
52 Xcell Journal Fall 2004
ISE software includes advanced capabilities that slash design and verification times, getting you to design closure faster.ISE software includes advanced capabilities that slash design and verification times, getting you to design closure faster.
placement with logic slice packing forVirtex-II™, Virtex-II Pro™, and Spartan-3™ devices to improve placement qualityfor “unrelated logic.”
In recent benchmarks, timing-drivenmap was tested on large, highly-utilizeddesigns that contained tight timing con-straints, versus the standard map and placeand route flow. Results varied based onmany factors in the design, yet timing-driv-en map showed an average 30% betteroverall logic placement.
This advantage gives Xilinx ISE 6 cus-tomers the potential to stay in their chosendevice, even if utilization is pushing 90%or higher, when competing tools wouldhave already forced the design into a largerand thus more expensive device. The tim-ing-driven map option is included freewith all configurations of ISE 6.
Streamlining ASIC-to-FPGA TransitionsThe last few years have seen a steep declinein the number of ASIC design starts, and agood number of those projects have movedto Xilinx FPGAs for their logic deliverymedium. Helping those project engineerstransition from ASIC design flows withadvanced support has been a priority forISE development: thus, a number of toolsare available to help.
Starting at the front of the design flow,you can use many of your existing ASICcode-checking tools to verify your HDLsource. Xilinx has created a set of XilinxFPGA-specific libraries for Synopsys™LEDA VHDL and Verilog™ “linting”tools. The libraries are free to registeredSynopsys users, and you can use them toconfigure your existing LEDA checker.They contain critical coding-style rules thathelp ensure HDL source quality and opti-mize implementation for the target FPGA.
ISE place and route tools also help youensure efficient implementation. The placeand route tools results offer interactive sug-gestions on how you can change your HDLcode to reduce design size and implemen-tation results. These suggestions help makemore efficient use of FPGA resources andsave overall design space.
The ISE design flow also supports tech-nology that some ASIC designers have
by source such as purchased IP, or to effi-ciently reuse HDL from an earlier proj-ect. Good floorplanning can help achievefaster timing closure and optimize designperformance.
Incremental DesignISE also contains Incremental Design, atechnology that can slash re-implementa-tion time by as much as 75%. IncrementalDesign uses a design floorplan as the start-ing point. The design is then implementedor passed through the synthesis and placeand route cycle. If subsequent modifica-tions are required, Incremental Designupdates only the area affected by thechange, leaving the other completed designareas intact and dramatically shortening there-implementation cycle. IncrementalDesign is useful during the verificationphase, where debug and design changes aremost commonly encountered.
Modular DesignModular Design isanother option includedin ISE supporting theteam design environ-ment. Modular Designlets team managersdivide a high-densitydesign up into “mod-ules.” Each design teamcan then use the entiresuite of ISE design toolsto complete their module independently.Modular Design deploys
a “divide and conquer” strategy to high-density designs, letting teams operate effi-ciently in parallel, finishing the overallproject faster.
ConclusionHigh-performance ISE technology isn’tonly about getting the fastest clock speed inyour design. The advanced technology builtinto ISE 6 also can cut your design and ver-ification times, slash project costs, and offerpotentially lower device savings in the longrun. Upgrade your designs to ISE 6, ordownload the evaluation version of ISE byvisiting www.xilinx.com/ise_eval.
already invested in for verification. Forexample, formal verification is a technolo-gy that saw initial adoption in the ASICdesign space. This structural equivalencycomparison technique can drastically speedup verification time, and is often seen as analternative to more traditional HDL simu-lation methods, particularly for higher den-sity designs. These same tools also workwith ISE FPGA-based designs, so if you’reusing Synopsys Formality™ or VerplexConformal LEC, you can use formal equiv-alency checking on your Xilinx FPGAdesign as well.
High-Density Design TechniquesYou can also slash design times and projectcosts by using the high-density designoptions built into ISE. Free to all Xilinxusers and included with ISE, these optionscan lead to faster timing closure and fasterimplementation times.
Area Mapping and FloorplanningISE includes two floorplanning options:PACE (Pin Assignment and ConstraintsEditor – shown in Figure 1), and ISEFloorplanner. Also, PlanAhead™, thehigh-level floorplanning tool, is now anoptional, separately purchased Xilinxdesign tool offering through the recentacquisition of Hier Design, integratingdirectly to the ISE design flow.
These tools let you group logic togeth-er and associate those groups to an areaon the target FPGA. Area mapping is afast way to keep critical sections of thedesign together, associate HDL together
Fall 2004 Xcell Journal 53
Figure 1 – The pin assignment and constraints editor (PACE)
by Brent PrzybusChipScope Pro Product Marketing Manager Xilinx, [email protected]
Brad FrossChipScope Pro Engineering ManagerXilinx, [email protected]
Most of us have been there: our initial per-formance requirement has been increased toaccommodate a new external memory inter-face or incorporate pre-processing nowrequired because of an ASIC flaw. Theinnate flexibility of FPGAs makes them theperfect solution to address these last-minutechanges and additions. But adding newcapabilities is often much easier than debug-ging them when things no longer work.
Fortunately, Xilinx® provides a solu-tion. ChipScope Pro™ tools enable you toplace logic analysis, bus analysis, and evenvirtual input and output cores directly intoyour FPGA design and perform real-timedebug and verification.
Although ChipScope Pro cores are opti-mized for size and performance and canrun as fast as 200 MHz in Virtex-II Pro™FPGAs, this is often not enough. Plus,
adding these cores to a design may preventit from meeting specified timing. Fordesigns operating between 85 MHz and150 MHz and using less than 80% of theavailable FPGA resources, ChipScope Protools can provide the easy visibility andaccess needed to debug and verify yourdesigns.
For designs exceeding 150 MHz and/orusing more than 80% of FPGA resources,techniques exist that allow you to useChipScope Pro tools without impactingFPGA design performance.
In this article, we’ll describe three tech-niques to get the most performance out ofChipScope Pro cores, gain access and visi-bility to debug your design, and still meetFPGA design performance.
ChipScope Pro Debug Methodology The easiest way to ensure that ChipScopePro tools will not impact your design per-formance is to plan in advance. ChipScopePro cores are no different that any other IPin your design – they also use logic andblock RAM. By adopting a ChipScope Prodebug methodology in advance, determin-ing what signals you would like to accessfor debug, and how many samples you will
need to observe, you will have the bestchance of meeting design performance.
The following checklist will help youmeet your debug performance goals:
• Decide which signals you want toobserve. This is similar to decidingwhich signals you are going to routeout to a test header on your board.The difference is that you place virtualtest headers directly within yourdesign. And for those designs requiringmore than one core, ChipScope Protools allow you to include as many as15 ILA cores in a single design.
• Define how many trigger ports youneed based on how you might want totrigger on different groups of signals.Consider attaching similar signals (suchas individual address signals) into thesame trigger port while attaching unre-lated signals (such as control and datasignals) to separate trigger ports. Notonly will the separate trigger ports makeit easier for you to create trigger condi-tions, but by using multiple smallertrigger ports, you might find that it iseasier for the implementation tools topack, place, and route your design.
Exploit ChipScope Pro to debug your high-performance designs.Exploit ChipScope Pro to debug your high-performance designs.
The Need for SpeedThe Need for Speed
54 Xcell Journal Fall 2004
• Decide which signals are to be used astriggers and which signals are to be cap-tured as data. You can conserve deviceresources by being careful to captureonly the signals you need to debug yourdesign. Although ChipScope Pro toolsprovide many of the familiar triggercapabilities found in expensive bench-top logic analyzers (such as multipletrigger ports and complex triggersequencing), you should always beaware that many of these features con-sume additional device resources.
• Determine the number of samples youneed to observe. To do this, determinethe time over which you anticipateneeding to view data and divide this bythe system clock rate. As many as16,384 samples of data storage areavailable using on-chip block RAM. Ifyou need more storage, you can usemultiple debug cores or you can usethe ChipScope Pro-enabled Agilent™FPGA dynamic probing solution,which allows you to store internallyprobed signal data directly on an exter-nal Agilent logic analyzer.
• Decide how you are going to get dataoff-chip. Start with a JTAG port andAgilent trace port. You can use theJTAG port for configuration, hardwaredebug, and software debug. The Agilenttrace port provides the flexibility tointerface to the Agilent 16900 serieslogic analyzer with FPGA dynamicprobing technology. You will probablyalready have JTAG set up on yourboard for FPGA configuration. TheAgilent trace port uses between four and128 user I/O pins that tie directly to aMictor™ or Agilent soft-touch probepad connector. Instructions for layingout these connectors are included inthe Agilent data sheet, available atwww.xilinx.com/chipscopepro/.
• Use the core generator to define theILA cores to the specifications youhave defined in the previous steps. TheChipScope Pro core generator will pro-duce embeddable EDIF netlists andHDL component instance templatesthat you can incorporate into your
• Properly constrain your design. Run“trce -a” to report unconstrained netswithin your design. Apply timingconstraints where needed and use aconstrained system clock net to driveany ChipScope Pro cores.
• Disable RPMs. Sometimes allowingthe ChipScope Pro core logic to float– particularly the flops that make upthe cores – enables you to better fitChipScope Pro cores within anyavailable logic.
When All Else Fails ...If you’ve tried all of these techniques andyour design still doesn’t meet timing, or if the tools seem to choke ontiming, try this advanced technique.Guide filing uses your non-instrumenteddesign netlist as a guide for routing inChipScope Pro cores. Although thistechnique does not guarantee that timing will be met, it can work in some cases.
The steps to guide filing are:
1. Synthesize your design.vhd intodesign.ngc using your chosen syn-thesis tool (substitute design.edf fordesign.ngc, if you are not using thexst synthesis tool).
2. Translate your design.ngc intodesign.ngd using ngdbuild.
3. Map your design.ngd intodesign_map.ncd using the map tool.
4. Place and route yourdesign._map.ncd to design_par.ncdusing the par tool.
Now add ChipScope Pro cores to thisdesign by following these steps:
5. Copy the design.ngc todesign_debug.ngc.
6. Insert ChipScope Pro cores intodesign_debug.ngc using theChipScope Pro core inserter tool.
7. Translate design_debug.ngc intodesign_debug.ngd using ngdbuild.
HDL design. If your design has alreadybeen synthesized, you can use theChipScope Pro core inserter to addChipScope Pro cores to a design byselecting which nets and signals youwant to view.
By defining a debug and verificationmethodology in advance, you haveaccounted for the logic, block RAM, androuting resources needed – and minimizedthe chances of ChipScope Pro coresimpacting your design timing.
Techniques to Achieve PerformanceWhat if you have not planned for debug?Let’s say your design is running at close to200 MHz and something is not function-ing correctly. When you add a ChipScopePro ILA core to view signals in the faultylogic, the design fails to meet your timingrequirements. Here are some techniquesthat can help:
• Reduce the size and complexity of yourtrigger ports and corresponding matchunits. Start with a basic trigger type,with a width as narrow as possible. Forexample, an 8-bit basic match unit willconsume a fraction of the logic of a36-bit range-type match unit.
• Use “trigger same as data.” By selectingtrigger same as data, you reduce thenumber of loads on the instrumenteddesign nets from two to one.
• Avoid critical paths. Understand the crit-ical paths within your design and avoidinstrumenting them if at all possible.
• Watch what you instrument. Avoidinstrumenting combinatorial logic,which may cause the new logic imple-mentation to split into multiple slices.Whenever possible, try to instrumentthe outputs of flip-flops instead.
• Apply area constraints to ChipScopePro cores. Bound the inner logic of aChipScope Pro core and allow theouter flip-flops to float. A tighter fitmay result in higher performance ofthe ILA core while allowing the outerflip-flops to be placed close to theinstrumented design nets.
Fall 2004 Xcell Journal 55
8. Map design_debug.ngd intodesign_debug_map.ncd using a -gm(guide mode) option, specifying youroriginal design_map.ncd as the guidefile. You will have the option of speci-fying exact, incremental, or leveragedguide modes. Start with exact; it maytake a little longer to compile, butwill probably deliver the best results.If that doesn’t work, or if you wouldlike a better result, try the leveragedoption. This option allows logic inyour design to be moved if it willbenefit placement of the newChipScope Pro cores.
9. Place and route design_debug_map.ncdinto design_debug_par.ncd using a -gf(guide file) option and specifying youroriginal design_par.ncd as the guide file.Use the same -gm guide mode option(exact, incremental, or leveraged) thatyou used in step 8.
10. Convert design_debug_par.ncd into abitstream called design_debug_par.bitand use the ChipScope Pro analyzerto configure and debug your FPGAdesign.
After steps 8 and 9, you will receivetool messages stating that a percentage ofthe net names in the design have changed.This represents the new ChipScope Prologic added to your design.
If after performing these steps yourinstrumented design is still not meetingtiming, you may want to go back to step 2in your original design and try to allocatean area region for ChipScope Pro cores.Then repeat the remaining steps.
Conclusion In this article, we’ve shown you tech-niques for debugging high-speed FPGAdesigns using ChipScope Pro tools. Nodesign is the same and sometimes moreadvanced techniques are required. If youhave techniques that have worked for youand you’d like to share them, or if youneed help in implementing any of thetechniques described, please send an e-mail to [email protected].
56 Xcell Journal Fall 2004
The Programmable Logic CompanySM
For the second straight year, the MySupport.xilinx.com web site has been voted one of the
“Ten Best” by the Association of Support Professionals. More than 130,000 engineers count
on this resource every month to deliver content-rich, personalized, 24/7 support for designing
by Suhel DhananiSr. Solutions Marketing Manager, Spartan SolutionsXilinx, [email protected]
Lowering total system costs is the key goalwhen developing high-volume/low-costsystems. Although many system designerscarefully select components with the lowestunit cost, they often ignore the actual costof manufacturing the PCB.
However, with careful design considera-tions, you can achieve the same functional-ity and performance within a smaller PCB,using fewer layers and sometimes with lesscomponents.
Some of the newer low-cost FPGAs,such as Xilinx® Spartan-3™ devices, nowinclude a host of features that can reducethe number of on-board components andinterconnect traces, enhance signal integri-ty, and reduce system electromagneticinterference (EMI) noise levels, essentiallyenabling you to significantly lower yoursystem costs.
Reducing PCB Size and ComplexityThe most obvious way to reduce the cost ofany PCB is to make it smaller and havefewer layers. By reducing the total boardarea and using fewer layers (four instead ofsix, for example), you can cut down on themanufacturing expense.
For a typical 4” x 6” board, going fromsix to four layers can reduce the cost byanywhere from $2 to $4 per board. Whenyou calculate the total savings based on thequantity of boards manufactured, thiscould be a substantial amount.
Another factor that influences themanufacturing cost of a PCB is EMInoise compliance. In cases where EMI isan issue, you need to design for the low-est possible EMI level, because trying toretrofit the PCB to meet EMI compliancecan result in expensive redesign, re-lay-out, or shielding.
Good design techniques such as main-taining optimum signal integrity, havingfewer traces running lower voltage levels,and distributing slower clocks on board canall help reduce the overall EMI level.
By using features found in Spartan-3
Lower Your PCB Manufacturing Costs
Fall 2004 Xcell Journal 57
By choosing an FPGA with the right features, you can reduce your PCB manufacturing costs and even EMI levels.
FPGAs, you can reduce total PCB manu-facturing costs by optimizing the area andnumber of layers and minimize total EMInoise levels.
Spartan-3 FeaturesDigitally Controlled ImpedanceOne of the key features provided bySpartan-3 devices is digitally controlledimpedance (DCI). This allows you to notonly (potentially) eliminate most externalresistors, but also design for optimum sig-nal integrity.
DCI actively adjusts both parallel andseries terminations to accurately match thecharacteristic impedance of the transmis-sion line. This adjustment process compen-sates for differences in I/O impedance thatcan result from normal variations in theambient temperature, supply voltage, andmanufacturing process. This feature isavailable for most popular I/O standards,including LVCMOS, LVDS, SSTL,HSTL, and GTL.
Figure 1 illustrates how the DCI featurecan eliminate external resistors normally usedfor termination. Not only does this featureallow you to tune the output driver imped-ance – thereby optimizing signal integrity –but it also reduces the total number of com-ponents on board, with the resultant benefitsin reliability, manufacturability, procurementcosts, board area, and routability.
Drive Strength and Slew Rate ControlAnother Spartan-3 feature is the ability toadjust the output drive strength and slewrate of the output drivers. Two options,fast and slow, control the output slew rate.You can select as many as seven differentlevels of current drive strength: 2, 4, 6, 8,12, 16, and 24 mA. (These options areavailable when using one of the LVCMOSor LVTTL standards.)
Choosing the appropriate drive strengthlevel is yet another means to minimize bustransients and optimize board signalintegrity, as shown in Figure 2.
These adjustments can be made bymerely updating the device bitstream andrequire no board re-layout. Thus, you cancontinue optimizing the drive strengthslong after the board has been laid out.
Figure 1 – Spartan-3 DCI feature eliminates the need for external matching resistors.
Figure 2 – Drive strength can be adjusted by loading an updated bitstream.
Figure 3 – With as many as four DCMs per device, Spartan-3 devices provide complete control over clock frequency, phase shift, and skew using the DCMs.
58 Xcell Journal Fall 2004
On-Chip DCMsAll Spartan-3 devices have multiple high-per-formance digital clock managers (DCMs).Each DCM allows clock skew elimination,clock multiplication, clock division, andreconstruction, as well as phase shifting.
Although you can use the DCMs to elim-inate the need for external clock manage-ment devices, they also allow you to run aslower clock on board (using the internalclock multiplication feature) and run fewerclock traces on board (using the clock recon-struction feature), as shown in Figure 3.
Using these features simplifies the layoutof high-speed PCBs and can lower overallEMI levels by allowing you to run fewerand slower clocks traces across the board.
On-Chip Voltage and I/O Standard TranslationAll I/Os in Spartan-3 devices are allocatedbetween eight banks, as shown in Figure 4.Each I/O bank has an independent VREF line.
The I/Os support most of the popularsingle-ended I/O standards such as LVTTL,LVCMOS, SSTL, HSTL, GTL, as well asdifferential I/O standards such as LVDS andRSDS. Because each I/O bank can inde-pendently support a different I/O standardand a different VCCO, this feature lets youimplement voltage translators and I/O stan-dard translators within the FPGA, eliminat-ing the need for external components. Fewer
components translates to smaller PCB andlower system costs.
Comprehensive Support for Differential SignalingThe Spartan-3 family is the only low-costFPGA family whose I/Os support LVDStransmission without the need for exter-nal resistors. This popular standard iswidely used for high-speed chip-to-chipcommunication because of its highernoise immunity, lower EMI, and higherperformance.
Because LVDS is a low swing standard(~350 mV) with a slower slew rate (1V/ns),it exhibits lower EMI. And because it is adifferential I/O standard, it has better noiseimmunity. LVDS allows for very high data
transfer rates (622 Mbps in the Spartan-3architecture), enabling fewer pins to transferlarge amounts of data serially.
All of the device package combina-tions of Spartan-3 support LVDS. Thismeans that you can choose low-cost QFPpackages as well as higher pin-count BGApackages.
Figure 5 illustrates how competing low-cost FPGAs require three external resistorsfor each LVDS transmit channel. Spartan-3 LVDS transmitters do not require the useof an external resistor network because theI/O buffers were designed to support lowswing differential signaling.
ConclusionUsing the many features available withSpartan-3 FPGAs allows you to eliminateexternal components such as resistors,voltage translators, level shifters, and evenexternal clock management devices. Thisnot only increases board reliability andeases manufacturing costs, but alsoreduces the size of the board and may insome cases reduce the number of layersrequired for routing, potentially loweringtotal system costs.
If EMI compliance is a concern, thereare many features within Spartan-3 devicesthat improve signal integrity, allow forfewer traces, and enable low swing I/O sig-naling – all of which contribute to lowerthe EMI level of the system.
For more information on Spartan-3 features and how these features can help you reduce your system cost, visitwww.xilinx.com/spartan3/.
Managing signal assignment of high-pin-count FPGAs, especially in multi-FPGA designs, is a growing problem. Asmost hardware managers will attest, thisproblem manifests itself in three ways.
First, the number of communicationchannels interfacing with a typical FPGAmakes I/O assignment a cognitive challengefor logic designers to balance. These cogni-tive challenges include the handling of:
• Key constraints imposed by each channel,including voltage, signal strength, termi-nation, and data versus clock skew.
• FPGA signal assignment constraints,such as I/O banking and simultaneousswitching output rule sets.
Plan FPGA Signal Assignments and Optimize PCB RoutabilityPlan FPGA Signal Assignments and Optimize PCB Routability
60 Xcell Journal Fall 2004
Eliminate or reduce design iterations with DesignF/X.Eliminate or reduce design iterations with DesignF/X.
Second, because of an excessive numberof wire crossings, layout engineers may findit physically impossible to route theirdesigns with the specified stackup and PCBdesign rule checks (DRCs). The onlyoption is to increase both the number ofsignal routing layers and via count.However, this will result in reduced signalquality and may drive up the manufactur-ing cost substantially.
Third, most of today’s EDA tools focuson solving the above issues for a singledevice, and have little or no knowledge ofother system devices or their connections.The end result is a sub-optimal pinout thathas been assigned without knowledge of thesystem. If you are a logic designer, youknow it is likely that the pinout will needseveral refinements because of requirednegotiations between you, the hardwareengineer, and SI engineer.
This time-consuming process is furtherexacerbated as system complexity increases,along with the need for precision changecontrol and the resulting process manage-ment overhead. Figure 1 shows one ofmany complex design configurations.
Design F/X directly addresses thesethree core system design issues by:
• Significantly reducing the need tomemorize I/O banking rules.DesignF/X provides an automatedsignal assignment optimization processand keeps you informed of DRC rulesand requirements associated with yourselected I/O standards.
• Providing system-level optimization ofthe signal assignment for one or moreFPGAs and their associated devices ina PCB environment, while honoringthe design rules. This optimization willresult in the highest PCB routability,enabling you to reduce your designiterations and focus on core design.
Design F/X and Existing Design FlowsDesignF/X is easy to learn and even easierto integrate into your existing design flow.Figure 2 highlights a typical DesignF/Xflow on the right, compared to today’stime-consuming and error-prone iterativeprocess on the left.
• There is no tool to validate data frompackage to component to netlist. Forexample, neither the schematic nor thenetlist have knowledge of the package,yet package knowledge is required forproper validation.
• The back annotation process is oftenbroken because required FPGAupdates and attributes are not auto-matically passed completely through tothe board tools for more efficient rout-ing and planning.
• Generally, several iterations arerequired to get the correct FPGApinout based on negotiations betweenlayout engineers and FPGA designers.
DesignF/X eliminates these issues byallowing end-to-end design with verified
We argue that the traditional design flowis a lengthy and error-prone process because:
• Several manual entry points exist,including HDL, signal assignmentspreadsheets, schematic symbols,schematics, package drawings, andconstraint information.
Fall 2004 Xcell Journal 61
XilinxFPGA1
Connector
CPU/DSP
XilinxFPGAnMemory Memory
Tim
e-C
on
sum
ing
Iter
atio
ns
SchematicCapture
Tool
CadenceAllegro
Routable?(Allegro)
CompleteRouting, Release
Design
FPGA SignalAssignments
DesignF/XCreate/Import
Device PinAssignment and
Board Connectivity
Develop .UCFFile for FPGA
System Analysisand Optimize
SystemArchitecture
Updated, Back-Annotatable
Netlist
.PAD or .CSV Files
Start RTL forFPGA
DesignF/X enabled process(Xilinx and Cadence support)
Netlist file
Board File
.UCF File
Board File
Figure 1 – A typical multi-FPGA system design
Figure 2 – DesignF/X flow as it relates to overall PCB design flow
data inputs and correct-by-design FPGApinouts that are optimized at the systemlevel for best routability.
You need not interrupt your currentdesign flow, because DesignF/X providesseveral vector points at which you can ana-lyze your design. DesignF/X also providesthe I/O capabilities shown in Figure 3.
Only two successive steps are required toget an optimized design in a single iteration:
1. Create or import device pin assign-ment and board connectivity.
2. Analyze and optimize your config-urable devices for the best possibleroutability while honoring XilinxFPGA design rules.
Signal Assignment PlanningDesignF/X is built around Xilinx parts andtheir associated design rules. As of June2004, DesignF/X supports the followingcapabilities:
• I/O banking DRCs (voltage, I/O stan-dards, and on-chip termination arechecked for intra-bank compatibility)
• Automatic reservation of Vref, VRP,and VRN pins when necessary, basedon the selected I/O standard
• Automated recognition and handlingof differential pairs, including swap-ping signals as a pair where legal dur-ing optimization
Usage ModelThe first step is to select a Xilinx-specificdevice (see Figure 4). After you select your
package, you may import a Xilinx .pad or .csvfile, or you can start with no file inputs. Ineither case, you can use the signal assignmentspreadsheet shown in Figure 5 to:
• Assign signals to pins and create signalgroups and buses
• Apply I/O standards and mark specificpins as fixed if you do not want themconsidered for optimization
Each time you change a signal’s I/O stan-dard, location, or pin type (direction),DesignF/X will respond with a DRC forcompliance with Xilinx-specific rules.
The screen shot for Figure 6 was generat-ed after changing the I/O standard of twobuses within the same bank. The outputscreen is interactive and shows which pinsare causing the DRC error. A key ease-of-usefeature shown is the way a number of relatederrors are summarized into one line.
After you have finished assigning signals,DesignF/X will perform one last DRC. If theDRC passes, you will be allowed to use thepart for analysis and optimization on the “vir-tual PCB” screen. You can also rapidly gener-ate a .ucf file for use in your Xilinx ISEenvironment for a rapid place and route check.
Signal Assignment for Optimal PCB RoutingOnce you have all your programmable devicesdescribed and pin assignments defined, youcan choose to import your connectivity infor-mation using a netlist file, or, if you do nothave a netlist, use a table to define connectivi-ty. Once connectivity information is defined,you can place your components on the “virtu-al PCB” and optimize them.
As a PCB designer you probably want tooptimize your devices at the system levelfor the best possible routing early in thedesign phase – before completion of theFPGA place and route – while maintainingcompliance to fundamental Xilinx DRCson the I/O side. This will help you:
• Reduce PCB wire crossings, whichdirectly correlates to reduced via counts,potentially reduced layer counts, andfaster routes that enable early routestudies for more what-if analyses
• Reduce SI complications and generatehigher quality signals, also fromreduced wire crossings and via counts(vias can result in stubs at high speedthat are detrimental to edge rates)
62 Xcell Journal Fall 2004
Xilinx PAD, CSV
Excel Spreadsheet
Allegro Netlist
Allegro Netlist
CSV, UCF
Allegro Board File Allegro Board File
PAI SignalOptimization
Algorithm
Xilinx System DRC Rules
DesignF/X
Figure 3 – DesignF/X I/O capabilities
Figure 4 – Select Xilinx device or define new device screen
Figure 5 – Signal assignment screen
Figure 6 – DRC interactive screen
Summary of ResultsRecently, a major semicon-ductor/systems client was inthe process of developing anew system with two XilinxVirtex-II™ devices of 1,704pins each and a third at 1,152pins, combined with a cus-tom processor.
The client faced the fol-lowing challenges:
• A team co-located inthree different cross-country cities: theFPGA engineer, thehardware engineer, andthe layout engineerswere each located in different cities.
• The fast-paced designreached layout, but thePCB board was notroutable.
• Obviously, any changes made to get thePCB board to route needed to complywith the rules of the Xilinx devices.
Instead of investing several man-weeksto fly all of the engineers to one locationand attempt to fix the problem by hand,they called on DesignF/X to provide thefollowing solution:
• The FPGA engineer sent the neces-sary Xilinx .pad files to the hardwareengineer.
• The layout engineers sent the CadenceAllegro board file to the hardwareengineer.
• The hardware engineer imported allfiles into DesignF/X and the PCB wasoptimizing within hours.
• The hardware engineer then output theupdated Cadence Allegro board file andthe updated Xilinx .ucf files and sentthem back to the appropriate engineers.
• The FPGA engineer confirmed thatthe new pinouts for the Xilinx partsdid not violate any Xilinx rules andsigned off on the update.
• The layout engineers successfully rout-ed the PCB board and back-annotatedthe changes to the Cadence OrCADschematic.
The entire process took days instead ofweeks. Figure 7 shows the layout of thethree Xilinx FPGAs before and afterDesignF/X optimization. This design wasnot routable for a given PCB layer countuntil DesignF/X optimized the pinouts ofthe three FPGAs.
ConclusionWhether you are a logic designer, a hard-ware engineer, a PCB layout engineer, anengineering manager, or an FAE, you are
likely facing one or more of the issues men-tioned in this article with complex designs.
To learn about the latest DesignF/Xfeatures, visit the Product Accelerationwebsite at www.prodacc.com. To schedulea DesignF/X demonstration, please sendan e-mail to [email protected] or call(408) 551-0882.
Fall 2004 Xcell Journal 63
Problem Viewed in Cadence Allegro Problem Viewed in DesignF/X
Before Optimization 19,002 Wire Crossings
Figure 7a Figure 7b
After Optimization (< 10 Minutes) 1501 Wire Crossings (92% Improvement)
Figure 7c Figure 7d
For the full account of this example application, visit www.prodacc.com.
Figure 7a Figure 7b
Figure 7c Figure 7d
Figure 7 – PCB before and after optimization, shown in Cadence Allegro and DesignF/X
Product Acceleration is a member of the Cadence Connections program and the
Xilinx EDA Alliance Program. We are committed to the best solutions possible for complex FPGA
design implementation integrated with the CadenceAllegro Platform and Xilinx ISE software.
by Tom FischaberSr. Design Engineer, IP Solutions DivisionXilinx, [email protected]
Krista MarksSr. Manager, IP Solutions DivisionXilinx, [email protected]
SONET networks are ubiquitous in thetelecommunications industry for trans-porting both voice and data over long dis-tances. Standard protocols have targetedthe underlying transport layer, includingATM for voice and data and HDLC orPPP for data transfer. However, each ofthese protocols introduces bandwidth inef-ficiencies, as none were developed specifi-cally to address data transport overSONET/SDH networks.
Additionally, telecom carriers are moti-vated to increase revenues by diversifyingthe types of client traffic transported acrosstheir networks and optimizing their band-width utilization. This includes capturingnew market sectors such as storage area net-works (SAN – utilizing Fibre Channel) andemerging video on demand (utilizingDVB-ASI). In this case, Fibre Channeland DVB represent two specific types ofclient traffic or client data as defined bythese data network protocols.
The Generic Framing Procedure (GFP)is the first encapsulation mechanism capa-ble of addressing this wide range of datatransport applications by supporting a suiteof client network protocols (summarized inTable 1). GFP was introduced by theInternational Telecommunication Union(ITU) as recommendation G.7041/Y.1303,and provides a flexible, efficient mapping ofvarious protocols onto a transport network.
In this article, we’ll describe a flexiblesuite of networking solutions that addressthe needs of systems vendors deployingmetro equipment to provide these services.Xilinx® supports applications ranging from
The Xilinx GFP core enables efficient transport of LAN/SAN protocols over SONET-based networks.The Xilinx GFP core enables efficient transport of LAN/SAN protocols over SONET-based networks.
Next-Generation Data Transport over Metro Area Networks
Next-Generation Data Transport over Metro Area Networks
64 Xcell Journal Fall 2004
a completely integrated client adaptationwith Virtex-II Pro™ devices to low-costprotocol encapsulation with Spartan-3™FPGAs. The multi-client protocol supportin Virtex-II Pro and Virtex-II Pro X high-speed RocketIO™ transceivers enablesseamless communication with protocolsoperating at up to 10.3125 Gbps.Coupling this technology with the
embedded PowerPC™ processor enablesnot only client adaptation, but also real-time control and processing capabilitieswithin a single FPGA.
Implemented on these platforms andcombined with a suite of additional Xilinxintellectual property, the new GFP core
Some aspects of the GFP protocol arecommon to all implementations. Thisincludes options such as frame delineationand synchronization; CRC insertion/detec-tion/correction; and scrambling.
In addition to the common aspects ofthe GFP protocol, client-specific functionsare required to handle unique differences inprotocol mapping. This includes optionsspecific to the two types of client data map-ping: frame-mapped (GFP-F) and trans-parent-mapped (GFP-T). Table 1 lists all ofthe GFP-F and GFP-T protocols support-ed in the G.7041 specification.
GFP-F supports variable-sized packetlengths of framed data, where one clientframe (such as an Ethernet frame) mapsdirectly into one GFP-F frame. Thisrequires a media access controller (MAC)in the system to terminate the Layer 2 pro-tocol. In Ethernet, for example, anEthernet MAC removes the preamble andstart of frame delimiter, checks the CRC,and passes the Ethernet frame to the GFPend-point for encapsulation.
GFP-T supports fixed-sized packetlengths and transports block-coded constantrate bitstreams (such as Fibre Channel,Ethernet, or ESCON/SBCON). This gen-erates a GFP frame that encapsulates block-coded data, which contains the clientprotocol 8B10B data and control (symbols)that are mapped to 64B65B block codes.
The transparent-mapped protocol doesnot require that application buffers com-plete frames before transmission. Instead,both data and control symbols are accumu-lated. Eight 8B/10B symbols (plus a flagbit) are combined to create a 64B/65Bblock code. This block code will includeboth data words and control characters.
Eight 64B/65B block codes are thencombined to create superblocks (65 bytes ofdata + CRC16). Multiple superblocks arecombined to create the GFP payload, wherethe number of superblocks per frame is pro-tocol-specific (95 for Gigabit Ethernet and13 for Fibre Channel). GFP-T does notrequire MAC functionality, as it is notional-ly transparent to the protocol transmitted.
The selection of GFP-F versus GFP-Tdepends on the application and systemrequirements. GFP-F provides bandwidth
provides a fully configurable way to imple-ment custom solutions that can dynamical-ly adapt in a rapidly changing environment.
The GFP SpecificationThe GFP uses an octet-based stream ofdata that maps directly into an octet-syn-chronous stream, such as synchronousoptical network/synchronous digital hierar-
chy (SONET/SDH). GFPframes are scrambled toensure DC balance and run-ning disparity, and they aredelineated by using a lengthfield within the core header,as shown in Figure 1.
Because the start and endof the frame is embeddedwithin the GFP stream, syn-chronization of the two GFPend-points must first occur toensure that data can be trans-mitted. Synchronization at anindividual end-point is
achieved by the detection of a correct CRCover the core header, then using the lengthfield to point to the start of the followingframe. Once this process is successfullyrepeated a programmable number of times,the GFP stream is synchronized, and datacan be transmitted.
Fall 2004 Xcell Journal 65
Core Header
Payload Area Options:- Payload Scrambler/ De-scrambler
Payload Information Field Payload Info Field Options:- Transparent-Mapped: Assembles/ Disassembles Superblock for Transmission- Frame-Mapped: Transmits/Receives User Data
Table 1 – Client network protocols supported by GFP
Figure 1 – GFP core options for frame processing
efficiency by ensuring that only actual datais transmitted, whereas GFP-T transmitsall information including data, framingcodes, preamble, and idles.
GFP-F incurs higher latency throughthe system, because complete frames mustbe buffered before transmission. This mayimply the use of external memory, depend-ing on the system.
GFP-T does not require complete frametransmission, and therefore can achievelower system latencies. In practice, trans-mission over long distances will incur alatency (due to the medium) that requiresadditional functionality in the client adap-tation layer to ensure that the protocols’latency requirements are met. This is called
“spoofing” and is critical for some clientprotocols, such as Fibre Channel, wherestrict latency requirements exist.
Xilinx GFP CoreXilinx offers a GFP IP core solution that sup-ports all of these protocols and fully imple-ments the G.7041/Y.1303 specificationdefined by the ITU-T. This includes system-level capability of end-to-end frame delin-eation, support for both client managementand data frames, and configuration of frameor transparent mapping on a per-channelbasis. In addition to supporting all of the fea-tures specified by G.7041, the Xilinx solu-tion also provides options to facilitatesystem-level integration and debugging.
With the Xilinx CORE Generator™tool, you can easily configure the GFP coreto support your system requirements,selecting one of three operating modes:frame-mapped, transparent-mapped, ormixed mode. Mixed mode enables you tospecify on a per-channel basis whether thechannel is frame- or transparent-mapped.You can also change the mode through theGFP host interface.
The core also provides optional supportfor linear extension headers, which can beconfigured for as many as 10 unique chan-nels. You can select an optional generichost interface that enables you to modifythe control and status registers in real time.Some of the key system features of the GFPcore are highlighted in Figure 2.
Using the CORE Generator system,you can fully customize the behavior of thecore. A specific configuration determineshow the core processes frames and alsodetermines the resources required forimplementation. The composition of aframe and the options provided are illus-trated in Figure 1.
The GFP core is split into a MAP coreand an UNMAP core, as illustrated inFigure 3. The MAP core receives client net-work protocol data (such as Ethernet) onthe system interface, encapsulates this data,and transmits the resulting frames on theline interface (such as SONET).
The UNMAP core does the sameprocess in reverse, receiving encapsulateddata on the line interface and de-mappingthe frames to extract client network proto-col data, which is in turn transmitted on thesystem interface. The GFP core utilizes theXilinx LocalLink interface standard on theline and client interfaces for direct connec-tion to other cores and reference designs.
In frame-mapped mode, the client sup-plies the MAP core’s system interface witha complete data frame, which is then trans-mitted without pause. In the transparentmapped mode, the MAP core automatical-ly handles underflow by inserting padwords into the frame so that the client doesnot have to provide uninterrupted framesof data.
Each core has a host interface (aPowerPC™ device control register [DCR]
Reference Designs for Packet Buffering/Arbitration
Microprocessor Interface (PPC DCR Bus)
SPI-4.2Core
GFPCoreFramer SONET
SystemInterface
Data(Local Link I/F)
MAP CORE
Sys
tem
Inte
rfac
e (t
o C
lien
t)
Lin
e In
terf
ace
(to
SO
NE
T)
Data(Local Link I/F)
Control and
Status (DCR)
Line Interface
HostInterface
SystemInterface
Data(Local Link I/F)
UNMAP CORE
Data(Local Link I/F)
Control and
Status (DCR)
Line Interface
HostInterface
Figure 2 – Features supported by the Xilinx GFP IP core, enabling system solutions
Figure 3 – Block diagram of GFP IP MAP and UNMAP core interfaces
bus) that provides access to a bank of con-trol and status registers. If you only requirethe default control signals, you can config-ure the core without status registers toreduce the number of resources.
Xilinx Complete SolutionsXilinx provides a complete and versatilesolution that allows you to configure theFPGA for your system needs. A myriad ofapplications exist for GFP, and the archi-tecture and requirements of the system willdrive any given set of requirements.
For example, if you are utilizing aframer that is GFP-aware, you can config-ure the GFP core to enhance the framer bysupporting options that the framer doesnot. Common examples of this includechannelization using the linear extensionheader, or transparent map mode.
If the application is using a framer thatis not GFP-aware, you can configure theGFP core to perform all GFP functional-ity, including frame delineation and syn-chronization, CRC, and scrambling.Using CORE Generator software enablesyou to specifically craft the implementa-tion that meets your requirements, andthus minimize the resource utilization ofthe FPGA.
In addition to the GFP core, otherXilinx solutions enable the implementationof a complete system to transfer Ethernetor Fibre Channel over SONET. Some ofthese additional solutions are illustrated inFigure 4 and described below:
• Configurable PCS (CPCS) Xilinxapplication note XAPP739 demon-strates how to utilize Virtex-II ProMGTs by providing a configurablePCS for a suite of protocols (FC [1G,2G], ESCON/SBCON, and GE). Itdynamically controls the PCS mode on each port, using the PowerPC and scales to support as many as eightchannels in both transparent and frame map modes.
• The System Packet Interface level 4phase 2 (SPI-4.2) IP solution providesa fully compliant core to address thedata path connectivity between POS(Packet Over SONET) physical layer
devices and link layer devices in net-working and communications systems.The SPI-4.2 core offers support for aresource-optimized OC-48 (2.5 Gbps)interface and a high-performance(greater than 14 Gbps) interface toconnect network processors with OC-192 framers and mappers, as well asgigabit and 10 Gigabit Ethernet data-link MACs.
• The 1GE MAC IP core solution pro-vides a half- and full-duplex 1 GbpsMAC controller designed to IEEE802.3-2002. The MAC core performsthe link function of the GigabitEthernet standard. The core can inter-face to an off-chip PHY using thecore’s gigabit media independent inter-face (GMII). Alternatively, it can bedelivered with an integrated1000BASE-X PCS with a ten-bit inter-face (TBI), or a 1000BASE-X PCS andPMA using the integrated RocketIOtransceiver in Virtex-II Pro devices.
• The buffer manager reference designdemonstrates how to interface to exter-nal DDR-RAM to buffer data on aper-channel basis.
• The Fibre Channel reference designdemonstrates some of the specificrequirements for transmitting FibreChannel over a SONET/SDH networkoutside of the GFP specification. Thisincludes an example flow control
mechanism that address the latency-sensitive Fibre Channel requirements.
• Xilinx reference design XAPP695demonstrates an example sub-systemintegration in Virtex-II Pro devicesfor a multi-channel Gigabit Ethernetto SPI-4.2, complete with PowerPCcontrol plane. This topic was coveredin the Summer 2004 issue of the Xcell Journal, in the article, “EthernetAggregation of GFP Framing inVirtex-II Pro.” The design does notinclude the core described here.
ConclusionThe Virtex-II Pro family of FPGAs pro-vides a powerful, flexible platform forimplementing networking solutions. Thehigh-speed serial MGTs and PowerPC,combined with proven IP cores and refer-ence designs, provide pre-verified solutionsfor managing and transporting a wide vari-ety of data protocols.
The ITU-T GFP specification providesa flexible and efficient mapping of thesedata protocols onto a transport network.Using Xilinx Virtex-II Pro FPGAs com-bined with the GFP core, you can quicklyand reliably apply this new technology toyour SONET/SDH systems and imple-ment a solution crafted to address your spe-cific system requirements. For moreinformation, visit www.xilinx.com/products/design_resources/conn_central/index.htm.
Fall 2004 Xcell Journal 67
FCConfigurable
PCS (XAPP739)
MAC Core1000 Base-X
Reference Designs:
FibreChannel
RD
BufferManager
RD
(xN Links)
Ethernet
FC
Ethernet
ConfigurablePCS (XAPP739)
MAC Core1000 Base-X
GFPCORE
GFP-TGFP-F
Mixed Mode
SPICORE
SPI-4.2SPI-4.2 Lite
SPI-3
SONETFramer
RAM
Figure 4 – A GFP application example of Ethernet over SONET and FC over SONET
by Narinder LallSenior Manager, DSP Product and Solutions MarketingXilinx, [email protected]
The demands of next-generation wirelessinfrastructures require system designers toaddress not only processing bottlenecks butconnectivity bottlenecks. Xilinx® FPGAsprovide the ideal mix of high-performanceDSP to handle the most demanding chip-rate and radio algorithms and serial MGTs,addressing high-speed connectivity andinteroperability challenges.
Tomorrow’s wireless infrastructureequipment designers will face an increasein algorithmic complexity and data ratebrought on by the convergence of data,video, and voice. Solutions based on dis-crete devices such as microprocessors,DSPs, and transceivers provide tremen-dous headaches related to interoperabilityand latency, and can quickly drive up bothcost and power per channel.
An FPGA-centric approach that com-bines Xilinx high-performance DSP capa-bility and serial RapidIO™ (SRIO) willhelp alleviate some of these system per-formance bottlenecks and provide an inte-grated solution that better meetseconomic and energy constraints. In addi-tion, an FPGA-centric approach allowsyou the flexibility to recover from mis-takes and make hardware changes evenafter system deployment, thereby reduc-ing overall design risk.
The DSP Industry Embraces SRIOFigure 1 shows that in the late 1990s, GSMsystems that provided voice communica-tions only supported terminal data ratesbelow 10 kbps. In contrast, W-CDMA sys-tems, which started rolling out in 2002,needed to support voice, data, and video,and hence used 2 Mbps data rates. Futuresystems such as W-CDMA (HSDPA) andCDMA2000 (1xEV-DO and DV) will usedata rates greater than 2 Mbps.
Designers have implemented ASICs –and more increasingly FPGAs – in wirelesssystems to handle digital radio (modula-tion/demodulation, DDC/DUC) and high-chip-rate processing. FPGAs exploit parallelprocessing techniques through hard-wired
embedded multipliers and provide you withthe flexibility to make algorithmic changeseven after system deployment, saving mil-lions in maintenance or field upgrade costs.
Second, the need to transport such highinformation packets presents new connectiv-ity challenges. Traditional buses are fast run-ning out of bandwidth. Wide parallel busesare becoming too complicated to design andincreasingly difficult to scale. As serial I/Otechnology begins to mature, wireless infra-structure equipment designers are lookingtowards system interconnect architecturesbased on MGTs to handle their transportproblems. This gives rise to potential chip-to-chip and board-to-board interoperabilityheadaches for system designers.
Designing Next-Generation Wireless Systems Designing Next-Generation Wireless Systems
68 Xcell Journal Fall 2004
GSM GPRS EDGE
TDMA
IS95a/b
2G 2.5G 3G 3.5G 4G
1xRTT
1xEV-D0
TD-SCDMA
W-CDMA
HSDPA
Wireless LANs
3xRTT
4G
1xEV-DV
9.6 kbps 114 kbps 384 kbps
9.6 kbps
14.4-64 kbps 153 kbps
2.4 Mbps
2 Mbps
>2.4 Mbps
>2 Mbps
IEEE 802.11IEEE 802.16
Current Being Deployed Development Future
An FPGA-centric approach using XtremeDSP and serial RapidIO solutions.
Figure 1 – Mobile technology roadmap
What is encouraging is thatleading DSP IC suppliers thatsupply chip-rate and symbol-rate processing solutions (suchas Texas Instruments™,Motorola™, and Xilinx) are atthe forefront of the SRIO revo-lution and are keen to addressconnectivity and interoperabili-ty challenges in next-generationwireless infrastructure systems.
DSP processor vendors areprojected not to start samplingproducts for some time, but as asystem designer, you can startyour development today usingXilinx Virtex-II Pro™ FPGAs,which incorporate high-perform-ance DSP capability, SRIO connectivity, andeven control functions through embeddedPowerPC™ 405 processors.
As chip-rate processors, FPGAs providean ideal complement to DSP processors,which have traditionally been used forlower sample- and symbol-rate processing.
SRIO Benefits Using Virtex-II Pro FPGAsSerial RapidIO technology using Virtex-IIPro FPGAs provides a number of benefits towireless infrastructure equipment designers:
• High-performance throughput provides the necessary bandwidth to cope with next-generation data transport needs.
Combining Xilinx XtremeDSP and SRIO TechnologyThe availability of SRIO-basedASICs, FPGAs, and DSPs givesyou a number of options forimplementing your wirelessinfrastructure systems. One suchimplementation could use aVirtex-II Pro FPGA solely as acentral switch between chip andsymbol-rate devices.
A more integrated option(shown in Figure 2), based ondistributing the switching tomultiple Virtex-II Pro devicesthat can also handle high-per-formance DSP for multi-chan-nel radio and chip-rate
processing, provides a more integrated,cost-effective approach.
Xilinx high-performance DSP capabili-ty lies at the heart of much of today’s sec-ond- and third-generation wirelessinfrastructure equipment. In addition tohundreds of 18 x 18 embedded multipli-ers for implementing custom algorithms,you can also use Xilinx DSP IP cores fordemanding functions such as digitalup/down conversion and forward errorcorrection (such as 3GPP2 TCC, TPCdecoding, and Viterbi decoding). You canfind out more about the XilinxXtremeDSP™ solution by visitingwww.xilinx.com/dsp/.
ConclusionWith the addition of SRIO technology,Xilinx Virtex-II Pro FPGAs provide systemdesigners with another means to furtherenhance system throughput, lower cost-per-channel, and retain the flexibility of anFPGA-centric solution.
Figure 3 shows that the Xilinx SerialRapidIO IP core provides a complete end-point solution comprising transport, logi-cal, and physical layers, and also complieswith Revision 1.2 of the specification,including Errata 1. It supports all recoverymechanisms: packet retry, stomp, linkrequest, and CRC.
For more information on the Xilinx SerialRapidIO core, visit www.xilinx.com/rapidio/.
• Lower complexity software and an abilityto complete peer-to-peer transactionssimplifies systems. In addition, it alsoprovides a well-defined mechanism forcongestion control.
• A flexible, low-risk solution offers scala-ble bandwidth options for futuredemands and fast time to market.
• With many DSP and other system IC(microprocessor, ASIC) vendors commit-ting to SRIO, designers will have archi-tectural flexibility. Virtex-II Pro FPGAscan provide interoperability security.
• Lower system cost through the use of asmall silicon footprint and high band-width efficiency.
Fall 2004 Xcell Journal 69
C6416C6416
ASIC
ASIC
ASIC
.
.
.
SRIO
SRIOSwitching
PCI
SRIO
SRIO
SRIO
SRIO
RFDemodulation, DDC
and Chip Rate Symbol Rate
Bac
kpla
ne
HOST
RocketIO
Fabric
• IP Core – Implemented in a Standard Virtex-II Pro FPGA
• Fully Compliant with RapidIO Interconnect Specification v1.2 Including Errata 1 – Implements All Three Layers
UserLogic
Register Manager
RapidIOFabric
I/OLogical &Transport
Layer
BufferModule
PhysicalLayer
Module Implementation in a 2VP50• 17% Utlization
• One RocketIO Transceiver
Figure 2 – Serial RapidIO usage example in wireless infrastructure
Conformance tests are one of the mostimportant items for embedded platforms likethe Xilinx® Virtex™ and Spartan™ familyof FPGAs. As these platforms are built onmultiple building blocks, using standards-based technology that is independently test-ed addresses key issues such as acceleratedtime to market and interoperability. GettingXilinx products tested also demonstrates ourcommitment to the technology.
Xilinx is the first FPGA vendor in theindustry to meet the University of NewHampshire (UNH) IEEE 802.3 standardfor Xilinx 10/100, 1 Gbps, and 10 GbpsMAC conformance tests. The UNHInterOperability Lab (IOL) tests are key inestablishing our product line, winningdesigns, and building customer confidence.
Adhering to standards and undergoingtesting by reputable organizations like theUNH IOL ensures interoperability betweensystems, networks, and applications.Because enterprises have the flexibility tochoose best-in-class solutions, conformancetesting fosters competition and innovationbetween solution providers.
The University of New Hampshire InterOperability Lab completes conformance testing for the Xilinx Ethernet family.The University of New Hampshire InterOperability Lab completes conformance testing for the Xilinx Ethernet family.
Why UNH IOL Conformance? The UNH IOL has the longest history offostering interoperability and conformancein connectivity technologies. Throughtheir independent testing methodologyand relationships with major corporationsand industry engineers, numerous compa-nies have refined their technologies andextended their products’ compatibility.
Specification standards are establishedin the hope that products from differentvendors can interoperate with each other;for example, that two Ethernet cards pur-chased from two different vendors willcommunicate. This enables you to choosethe system that best meets your needs foreach application.
In the past, some vendors made claimsof interoperability that were not quiteachieved. However, this is not the case any-more; a number of vendors have successful-ly tested interoperability together at theUNH IOL. The limitations are betteraddressed through their tests.
A successful UNH conformance test isa confidence builder that ensures projectsuccess in the shortest possible develop-ment time.
The UNH IOL features: • A neutral environment. A win-win sit-
uation for everyone involved, neutrali-ty is achieved by using standard testbeds, methodologies, and tools.
• Industry involvement. The IOL’s par-ticipation in various trade associationsand standards organizations keeps thelab appraised of the latest develop-ments in technology. In turn, the IOLeffects positive change in standardsorganizations by providing technicalcontributions, editorial assistance, veri-fication, and feedback during standardsdevelopment.
• Enhanced image and visibility. The UNH IOL testing consortium’srelationship with industry leaders
• Frame Length Test
• Minimum Received Inter-Frame Gap
• Transmit Preamble Test
• Minimum Transmitted Inter-Frame Gap
• Defer to Carrier Sense While FrameWaiting
• Deference after Collision
• Do Not Defer Test (Full Duplex)
Flow control conformance testingincluded the following test suites:
• Receive PAUSE Frame with Zeropause_time
• Receive PAUSE Frame with Non-Zeropause_time
• Resume Transmission
• Discard Invalid PAUSE Frames
• Receive JUMBO MAC ControlPAUSE Frames
• Receive RUNT MAC Control PAUSEFrames
• Receive MAC Control PAUSE Frameswith Incorrect CRC
• PAUSE Frame Transmission
PCS conformance testing included thefollowing test suites:
• End of Stream Delimiter Test
• Invalid Data Symbol Test
• False Carrier Detect
Figure 1 shows a block diagram of thetest setup of an Insight Virtex-II™ (DS-BD-V2MB1000) board with a P160 com-munications module (DS-BD-MBEXF1).
Tests Configuration for 1 GbpsThe Figure 2 block diagram of the testdesign based on the ML320 platformmakes use of the PowerPC™ processor inVirtex-II Pro™ devices as well as an inter-
(Cisco Systems™, Broadcom™,Cadence™, Dell™, HP™,Conexant™, Brocade™, and3Com™) works as an indirect advertising tool for your products.
• Excellence in testing services. Throughindustry-recognized standardized andcustom test suites, expertise, advancedtesting facilities and equipment, openand widely reviewed testing proceduresfor both conformance and interoper-ability testing creates confidence inyour product with plug-and-play capa-bility in a heterogeneous network.
Test RoutinesMany more tests are available from theUNH IOL, but the tests listed here wereperformed on Xilinx devices.
Tests Configuration for 10/100 MAC conformance testing included thefollowing test suites:
A successful UNH conformance test is a confidence builder that ensures project success in the shortest possible development time.
nally developed asynchronous FIFO andwith firmware developed in C.
MAC conformance testing included thefollowing nine test suites:
• Frame with FCS Errors
• Fragments and Runts
• Transmit Proper SFD and Preamble
• Receive Variable Preamble
• Does Not Defer
• No Collisions
• No Extension
• No Bursting
• Transmission of Minimum Inter-Frame Gap
Flow control conformance testingincluded the following five test suites:
• Receive PAUSE Frame with Zeropause_time
• Receive PAUSE Frame with Non-Zeropause_time
• Resume Transmission
• Receive PAUSE Frames of Incorrect Size
• PAUSE Frame Transmission
The UNH IOL also performed PCS,Auto-Negotiation, and Point-to-PointInteroperability tests.
Tests Configuration for 10 GbpsThe UNH IOL performs MAC tests onthe frame reception and frame transmis-sion. The frame reception tests cover MACoperations specific to reception of frames,designed to verify that the device undertest (DUT) properly receives valid frames,discards frames with errors, and reportsthese errors if possible. The test setup wasdone according to the block diagramshown in Figure 3.
The UNH IOL performed these specif-ic tests on the Xilinx DUT:
• Frames Greater than Max Frame Size
• Frames with Length Errors
• Receive All Frame Sizes 64-1518 (or1,522) Bytes
The frame transmission tests coverMAC operations specific to the transmis-sion of MAC frames, designed to verifythat the DUT transmits properly formedMAC frames.
They also performed these specific testson the DUT:
• Transmit Proper Length within theLength/Type Field
• Compute and Transmit Proper CRC
• Transmission of Minimum Inter-FrameGap
Figure 3 shows the setup used through-out the testing process. An arbitrary wave-form generator (AWG) is used to generate
the required clock signals. A PC communi-cated with the testing station usingNational Instruments’™ LabView soft-ware, to download firmware for the DUTand access Xilinx ChipScope™ embeddedlogic analyzers.
The XGMII interface of the DUT wasused to provide access below the MAClayer in all test cases. Using multipleChipScope embedded logic analyzers forbus monitoring and a transmit frame gen-erator module obtained access above theMAC layer.
Reconciliation sublayer tests aredesigned to verify that the DUT reactsproperly to the receipt of data, both validand invalid, at the reconciliation sublayer.
72 Xcell Journal Fall 2004
PatternGenerator FIFO
ILA
MAC
ILA
PowerPC UART RS=232
PCS/PMA
LMB BRAMIF_CNTRL
LMB BRAMIF_CNTRLBRAM Block
LMB_V10
MicroBlaze
OPB_V20
OPB JTAGUART
OPB INTC OPB EMC
OPB UARTLITE
OPB Ethernet
P160SRAM
P160Ethernet PHY
External to FPGA
Main Serial Port
Debug
SYS CLK/RST
Figure 1 – Tests Configuration for 10/100
Figure 2 – Tests Configuration for 1 Gbps
The UNH IOL performed these specifictests on the DUT:
• Start Control Character Creation andAlignment
• Reception of Start Control Character
• Reception of Preamble and SFD
• Reception of Terminate ControlCharacter
• Assertion of DATA_VALID_STATUS
• Reception of /E/ duringDATA_VALID_STATUS
• Continuous Reception of FaultSequences
• Reception of Identical Fault Sequences
• Reception of Non-Identical FaultSequences
• Setting of col_cnt
The Value PropositionXilinx is the industry’s only FPGA vendorthat has its complete Ethernet IP productfamily neutrally tested to IEEE 802.3 stan-dards conformance and interoperability.These tests on the Ethernet IP product fam-ily of 10/100, 1 Gbps, and 10 Gbps speedsensure the following value proposition:
• Proven interoperability with industry-standard equipment
• Reduced hardware testing burden for cus-tomers
• First-time design success and seamlessoperation (such as plug-and-play)
This invaluable approval builds customerconfidence with low risk and accelerated timeto market, while conformance testing alsoshows the company’s commitment to quality.
ConclusionUnderstanding interoperability is the key tomarket acceptance and opportunity.Interoperability means plug-and-play opera-tion that works within your environment andapplication, independent of who provided theproduct.
The UNH IOL Consortium acts as anextension of research and development labs,helping members test their products for con-formance to industry standards and interoper-ability between devices from differentmanufacturers.
Xilinx is the only FPGA vendor to success-fully bring the complete Ethernet solution tothe market with the certification of the UNHIOL. With proven interoperability, you canconfidently built a system for first-time designsuccess, meet your design goals, and acceleratetime to market instead of worrying about theunderlying infrastructure.
For more information, visit www.xilinx.com/systemio/interop.index.htm.
Fall 2004 Xcell Journal 73
Lab View Interface
PC
Parallel Port Serial Port
JTAG Interface
Oscilloscope
XGMII Tx
Logic Analyzer
AWG
XGMII Rx XGMII Tx
Xilinx FPGA Main Board(Testing Station)
MicroBlaze uController
ILA Core (ChipScope)
RX Good Frame RX Bad Frame
External Clk
(156.25 MHz)
Xilinx 10 GbE Test Board (DUT)
Figure 3 – Tests Configuration for 10 Gbps
Xilinx Events and Tradeshows
Xilinx participates in numerous trade shows and events throughout
the year. This is a perfect opportunity to meet our silicon and software experts, ask questions, see demonstrations of new
products and technologies, and hear other customers’ success stories with
Xilinx products.For more information and the most up-to-date schedule, visit
www.xilinx.com/events/.
Worldwide Events Schedule
North AmericaJuly 20-21 Nuclear and Space Radiation Effects
Conference (NSREC) Atlanta, GA
September 14 Mentor Graphics EDA Tech Forum Ottawa, ON
September 14-15 Embedded Systems ConferenceBoston, MA
September 27-30 Global Signal Processing Expo (GSPx) Santa Clara, CA
October 18 Mentor Graphics EDA Tech ForumSan Jose, CA
October 18-20 Convergence Detroit, MI
Europe17 July Mentor Graphics EDA Tech Forum
Munich, Germany
6 October Mentor Graphics EDA Tech ForumReading, UK
20 October Boundary-scan Design For Test (DFT)European Seminar SeriesFrankfurt, Germany
Asia Pacific13 August Mentor Graphics EDA Tech Forum
Shanghai, China
16 August Mentor Graphics EDA Tech Forum Beijing, China
18 August Mentor Graphics EDA Tech ForumSingapore
20 August Mentor Graphics EDA Tech ForumBangalore, India
24 August Mentor Graphics EDA Tech ForumHsin Chu, Taiwan
2 September Mentor Graphics EDA Tech ForumSeoul, South Korea
Japan26-27 August Mentor Graphics EDA Tech Forum
Tokyo
31 August Mentor Graphics EDA Tech ForumKyoto
North AmericaJuly 20-21 Nuclear and Space Radiation Effects
Conference (NSREC) Atlanta, GA
September 14 Mentor Graphics EDA Tech Forum Ottawa, ON
September 14-15 Embedded Systems ConferenceBoston, MA
September 27-30 Global Signal Processing Expo (GSPx) Santa Clara, CA
October 18 Mentor Graphics EDA Tech ForumSan Jose, CA
October 18-20 Convergence Detroit, MI
Europe17 July Mentor Graphics EDA Tech Forum
Munich, Germany
6 October Mentor Graphics EDA Tech ForumReading, UK
20 October Boundary-scan Design For Test (DFT)European Seminar SeriesFrankfurt, Germany
Asia Pacific13 August Mentor Graphics EDA Tech Forum
Shanghai, China
16 August Mentor Graphics EDA Tech Forum Beijing, China
18 August Mentor Graphics EDA Tech ForumSingapore
20 August Mentor Graphics EDA Tech ForumBangalore, India
24 August Mentor Graphics EDA Tech ForumHsin Chu, Taiwan
2 September Mentor Graphics EDA Tech ForumSeoul, South Korea
Japan26-27 August Mentor Graphics EDA Tech Forum
Tokyo
31 August Mentor Graphics EDA Tech ForumKyoto
Xilinx Alliance EDA Members and Products
AccelChipwww.accelchip.comHigh-level synthesis tools that read MATLAB and output RTL
Alatekwww.alatek.comHardware acceleration (HES)
Altiumwww.altium.com/nexar/Low cost, system level tool for targetingSpartan™ series FPGAs
Ansoftwww.ansoft.comHigh-frequency products for system analy-sis, circuit design, and electromagnetic sim-ulation (Ansoft Designer™, HFSS™)
Apache Designwww.apache-da.comHSPICE®-compatible simulator using actu-al S-parameter data (NSPICE) for Virtex-IIPro™ MGT-based PCB design
Atrentawww.atrenta.com/partners/index.htm#xilinxRTL Linter technology for Virtex™-II andVirtex-II Pro FPGAs (SpyGlass®)
Auspywww.auspy.comFPGA partition (APS II) and ASIC emula-tion (ACE Compiler)
Cadence Design Systemswww.cadence.comVirtex-II Pro MGT support for high-speedPCB design (Allegro® PCB SI); NCSimfamily for FPGA design simulation; NC-Protect support for Xilinx EDK IPs
Celoxicawww.celoxica.comC-level design creation, compilation, andverification for Virtex-II™ and Virtex-IIPro FPGAs
Endeavorwww.endeav.comCo-verification for Virtex-II Pro(CoSimple™)
Forte Designwww.forteds.comHLL compiler to RTL (Cynthesizer); tim-ing specification and analysis tool(TimingDesigner)
MAGMAwww.magma-da.comArchitecture-specific synthesis and layoutoptimization for Virtex-II series FPGAs(PALACE™ and Blast FPGA™)
The MathWorkswww.mathworks.comSystem-level design tools for FPGA andprocessor-based signal processing systems
Mentor Graphicswww.mentor.comVirtex-II Pro MGT support for high-speedPCB design (HyperLynx™, ICX™,Tau™); complete FPGA design flow usingthe ModelSim® family of simulators andPrecision® RTL and Precision Physical syn-thesis; Seamless® co-verification support forVirtex-II Pro; FPGA symbol generation forfast PCB design iterations for Virtex-II andVirtex-II Pro FPGAs (IO Designer)
Novilitwww.novilit.comDesign partitioning using ISE EDK(AnyWare) for Virtex-II and Virtex-II ProFPGAs
Product Acceleration Inc.www.prodacc.comFPGA symbol generation(LiveComponent™); automated pin assignment optimization for PCB layer and via count control (DesignF/X)
Simucadwww.simucad.comVerilog simulator for FPGAs (Silos)
Synopsyswww.synopsys.comVirtex-II Pro multi-gigabit transceiversupport for high-speed PCB design(HSPICE); DC FPGA RTL synthesis forVirtex series and Spartan-3™ familyFPGAs; VCS™(MX)/Scirocco™(MX)simulators; Formality® formal verifica-tion, LEDA® RTL linter, andPrimeTime™ static timing analysis
Synplicitywww.synplicity.comRTL synthesis (Synplify®), RTL leveldebugger (Identify™), physical synthesis(Amplify®), and ASIC prototyping(Certify®) for Xilinx FPGAs
Impulse Cwww.impulsec.comC language hardware/software co-develop-ment tool for Xilinx FPGAs(CoDeveloper™)
Summit Designwww.summit-design.comCapture and verify designs in C/C++ orSystemC (Visual Elite™)
ProDesignwww.uchipit.com/ce/index.htmFPGA prototyping system (CHIPit™)
74 Xcell Journal Fall 2004
Fall 2004 Xcell Journal 75
Xilinx AllianceCORE Third-PartyIP Providers and Products
Amirix Systems, Inc.www.amirix.comEmbedded systems
Amphion Semiconductor, Ltd.www.amphion.comDSP, wireless communications, and multi-media cores
Avnet Design Serviceswww.ads.avnet.comStrong-ARM to PCI bridge, SDRAM controller
Barco-Silexwww.barco-silex.comDSP cores, with a specialization in image-audio applications
Calyptech Design Serviceswww.calyptech.comPacket over SONET, ATM, xDSL
CAST, Inc.www.cast-inc.comGeneral-purpose IP for processors, peripher-als, multimedia, networking, encryption,serial communications, and bus interfaces
Crossbow Technologies, Inc.www.crossbowip.comSystem Interconnect IP for on-chip andchip-to-chip multiprocessing
Deltatec S.A.www.deltatec.be/IP and services for digital imaging, DSP,multimedia, PCI, and datacom
Derivation Systems, Inc.www.derivation.comIP cores for high-assurance hardware/soft-ware applications and embedded systemsproducts; 32-bit Java processor core
Digital Communications Technologies, Ltd.www.dctl.comEmbedded Java solutions
Digital Core Designwww.dcd.plMicroprocessor, microcontroller, floatingpoint, and serial communication con-troller cores
Loarant Corporationwww.loarant.comProprietary 16-bit RISC CPU; embedded system design
MEET Ltd.www.meet-electronics.comIP cores dedicated to industrial servo motor control
Memec Designwww.memeccore.comPeripheral, bus interfaces, encryption andcommunications cores
ModelWare, Inc.www.modelware.comDatacom/telecom cores including ATM,HDLC, POS, IMA, UTOPIA, and bridges
NewLogic Technologies AGwww.newlogic.comCores for wireless applications includingBluetooth and 802.11
Northwest Logicwww.nwlogic.comNetworking, digital video, embedded computing
Paxonet Communications, Inc.www.paxonet.comSolutions for interworking metro networking technologies to SONET
Pentek, Inc.www.pentek.comFPGA IP cores including FFTs, digitalreceivers, and pulse compressions algo-rithms; DSP, data acquisition, softwareradio boards, and system solutions
Pinpoint Solutions, Inc.www.asic-design.comStandards-based telecom and datacom IP;video
QinetiQ Limitedwww.quixilica.comFloating point cores, FPU forMicroBlaze™
RealFast Intellectual Property ABwww.realfast.seReal-time systems and RTOS; operatingsystem cores
Robert Bosch GmbHwww.can.bosch.comAutomotive; CAN
Roman-Jones, Inc.www.roman-jones.comDesign services: data acquisition, micro-processors (embedded and off-chip), auto-motive, PCI, analog design, DSP, video
SoC Solutions, LLCwww.socsolutions.comEmbedded µP and software; networking,wireless, audio, GPS and handheld; peripheral cores
X I L I N X P A R T N E R Y E L L O W P A G E S
SysOnChip, Inc.www.sysonchip.co.kr/IP and products for CDMAcellular/PCS/WLL modem, FEC and Bluetooth
Tensilica, Inc.www.tensilica.comConfigurable processors cores and development tools
Xylon d.o.o.www.logicbricks.comHuman-machine interfaces and industrialcommunication controllers; video
Zuken, Inc.www.zuken.co.jp/soc/PCI2.2,10/100 Ethernet and GigabitEthernet cores
Reference Design PartnersThe Xilinx Reference Design AllianceProgram builds partnerships with industry-leading semiconductor manufacturers todevelop reference designs for acceleratingour customer’s product and system time tomarket. The goal is to build a library ofhigh-quality, multicomponent system-levelreference designs in the areas of networking,communications, image and video processing, DSP, and emerging technolo-gies and markets.
3T BVwww.3T.nl/Design services; measurement instruments;fail-safe controlling; medical equipment,communication, and computer peripherals
Accent S.r.l.www.Accent.it/Complex FPGAs; SoCs; PowerPCs™; IP platforms; software, PCB, and ICfoundry services, from concept to silicon
ADI Engineeringwww.adiengineering.comReference designs; custom designs; designservices focused on Intel IXA and XScale™
Advanced Electronic Designs, Inc.www.aedbozeman.comDesign services and manufacturing support;hardware and software design for embeddedsystems
Advanced Principles Group, Inc.www.advancedprinciples.comDesign services and consulting; softwarealgorithm acceleration and application-specific computing systems
Alpha Datawww.alpha-data.comPCI/PMC/CPCI FPGA boards; embeddedapplications using HDL or SystemGenerator methodologies
AMIRIX Systems Inc.www.amirix.comDesign services for electronic product realization; high-performance digital boards;programmable logic; embedded software
Andraka Consulting Group, Inc.www.andraka.comExclusively FPGAs for DSP since 1994;applications include radar, sonar, digitalcommunications, imaging, and video
Array Electronicswww.array-electronics.de/SoC/FPGA/PCB designs in telecom, industrial, and DSPs; concepts; verification;prototypes; cores
Bottom Line Technologies Inc.www.bltinc.comFPGA, product, and system design services;networking; data communications;telecommunications; video; PCI; signalprocessing; defense; aerospace
CES Design Services @ Siemens Program and System Engineeringwww.ces-designservices.comPlatform-oriented SoC/FPGA/PCB andfirmware design in telecom, industrial, andvideo processing; customized solutions;concept; verification; prototypes
CG-CoreEl Programmable Solutions P. Ltd.www.cg-coreel.comDesign services; telecom, networking, andprocessor IP and designs; turnkey FPGA;RTL design/validation
Chess iT/Embeddedwww.chess.nl/Embedded hardware and software design ofproducts and services at the chip, board,and system level
Colorado Electronic Product Design, Inc.www.cepdinc.comDesigning embedded systems with FPGAs for DSP; interfaces for medical,consumer, aerospace, and military
Comit Systems, Inc.www.comit.comHigh-end FPGA/SoC design services,including the integration of customer-developed and third-party IP
ControlNet India Pvt Ltd.www.controlnetindia.comASIC/SoC Analog/RF FPGA design services; IP development; domains:Ethernet, IEEE1394, USB, security, PCI,WLAN, Infiniband
Convergent Design LLCwww.convergent-design.comAudio/video design for professional/consumer products
DATA Respons ASAwww.datarespons.comProfessional design and development services for embedded hardware/softwaresolutions; FPGA/digital hardware applica-tion specialists
Deltatec International Inc.www.deltatec.be/Design services; digital imaging applica-tions; broadcast video, image processing, and image synthesis
Digicom Answers Pty. Ltd. www.fpga.com.au/Design services; experienced FPGAresources; design-on-demand; pre-designadvice; reviews and problem solving
Digital Design Corporation (DDC)www.digidescorp.comDesign services and products; image pro-cessing; video; communications; DSP;audio; automotive; controls; interfaces
Dillon Engineering, Inc.www.dilloneng.comDesign services; FPGA-based DSP algorithms; high-bandwidth, real-time digital signal and image processingapplications
X I L I N X P A R T N E R Y E L L O W P A G E S
78 Xcell Journal Fall 2004
DRS Tactical Systems West Inc.(formally Catalina Research)www.catalinaresearch.comDesign services; FPGAs for DSP, includingthe manufacturer of Virtex reconfigurablecomputing boards
Eden Networks, Inc.www.edennetworks.comTurnkey design services; telecom and net-working designs (Ethernet, SONET, ATM,VoIP)
Edgewood Technologies, LLCwww.edgewoodtechnologies.comDesign services; FPGAs for telecom, DSP,embedded processors
Enea Data ABwww.enea.se/Telecommunication, data communication,DSP, RTOS, automotive, defense, high-reliability, and consumer electronics design
Enterpoint Ltd.www.enterpoint.co.uk/Design services; development boards; video,telecommunications, military, and high-speed design
ESD Inc.www.esdnet.comDesign services; FPGAs for embedded systems, software/hardware design, PCBlayout
Flextronics Designwww.flextronics.com/design/Complete product design and developmentservices for high-speed communications;reconfigurable computing; imaging;audio/video; military
GDA Technologies, Inc.www.gdatech.comA leading services company focused ondesigning systems, SoC, ASIC, FPGA, and IP
HCL Technologieswww.hcltech.comHigh-speed board, ASIC, and FPGAdesign and verification services in avionics,medical, networking/telecom, and consumer electronics
Helion Technology Limitedwww.heliontech.comDesign services and IP for FPGA with afocus on data security, wireless, and DSP
IDERS Inc.www.iders.ca/Contract electronic engineering and EMSresource, providing complete product cyclesranging from specifications to production
Image Technology Laboratory Corporationwww.gazogiken.co.jp/Design services; FPGAs for image process-ing; design tools: EDK, System Generator,and Forge
Innovative Computer Technologyictconn.comDigital, analog, Xilinx FPGA, and softwaredesign solutions for customers in a widevariety of industries throughout the UnitedStates
iWave Systems Technologies Private Ltd.www.iwavesystems.comEmbedded hardware and software design;board design; FPGA and ASIC develop-ment services
Liewenthal Electronics Ltd.www.liewenthal.ee/Embedded systems design services; develop-ment of software and hardware includingVirtex and Spartan FPGAs
M&M [email protected] services; imaging; video and audiodesigns; high-density ASIC emulation
Memec Design www.memecdesign.com/xilinx Focused on FPGA design for Xilinx technology, we have completed more than 1,300 designs worldwide
Memondo Graphicswww.memondo.comImplementation of digital signal processing,communications, and image processingsolutions and algorithms over Xilinx FPGAs
Mikrokrets ASwww.mikrokrets.no/FPGA development comprising telecom-munication, network communications, andembedded systems; PCB development
Millogic Ltd.www.millogic.comDesign services and synthesizable cores; expertise in PCI, video, imaging,DSP, compression, ASIC verification, and communications
Milstar Inc.www.milstar.co.il/Design services and manufacturers (industrial and military specs); DSP; communication; video; audio; high-speed boards
Misarc srl - Agratewww.misarc.comDesign services and manufacturers;telecommunications; SoC development; test equipment boards using FPGA solu-tions
X I L I N X P A R T N E R Y E L L O W P A G E S
Fall 2004 Xcell Journal 79
Multi Video Designswww.mvd-fpga.comDesign services; DSP for video, telecom-muications; SoC with Virtex-II/Pro andSpartan (PowerPC/MicroBlaze); Xilinxtraining
Multiple Access Communications Ltd.www.macltd.comDesign services; products and consultancy;DSP for wireless communications
Nallatechwww.nallatech.comEmbedded reconfigurable computers forhigh-performance applications in DSP,imaging, and defense; Xilinx DiamondXPERTS
NetModule AGwww.netmodule.ch/Design services for system design; FPGAapplications in telecommunication systemsand medical electronics
NetQuest Corporationwww.netquestcorp.comTurnkey engineering design and produc-tion services in advanced high-speedembedded communications
North Pole Engineering Inc.www.northpoleengineering.comHardware and software design services forFPGA, ASIC, and embedded systems
Northwest Logicwww.nwlogic.comPCI, PCI-X, and SDRAM controller IP;high-end FPGA design services
NovTech Engineeringwww.novtech.comBoard-level and IP cores; turnkey designservices; imaging; communication; PCIcores; encryption
NUVATIONwww.nuvation.comDesign services; imaging and communica-tions for defense/security, medical, con-sumer, and datacom/telecom markets
Plextek Ltd.www.plextek.comDesign services; FPGA, DSP, radio,microwave, and microprocessor technolo-gies for defense and communications
POLAR-Designwww.polar-design.de/High-end FPGA design for telecom, networking, and DSP applications
Polybus Systems Corporationwww.polybus.comTest patterns; customizable in-systemFPGA test patterns; design services; net-working and communications
Presco, Inc.www.prescoinc.comTwenty-five years of experience in customelectronics design/manufacturing for high-performance image processing, data com-munications, inkjet
RightHand Technologies, Inc.www.righthandtech.comDesign services; Virtex-II Pro FPGAs,boards, and software for video gaming, storage, medical, and wireless
Silicon Interfaces America Inc.www.siliconinterfaces.comDesign services; develops IP in areas of networking, wireless, optical, datacom,interconnect, and microcontrollers
Silicon System Solutions P/Lwww.silicon-systems.comDesign services; FPGAs for very high-speedapplications including communications andDSP applications
Siscad S.p.A.www.siscad.it/Xilinx FPGA design services; IP development and integration
Smart Logic, Inc.www.smart-logic.comDesign services; FPGAs for rapid prototyping including imaging, compres-sion, and real-time control
X I L I N X P A R T N E R Y E L L O W P A G E S
Micriµm Technologies Corp.www.ucos-ii.comµC/OS-II RTOS support for XilinxMicroBlaze 32-bit soft processor core
Mind NVwww.mind.be/v2p/ecosMind NV eCos RTOS support for Virtex-II Pro embedded PowerPC
MontaVista Softwarewww.mvista.comMontaVista® Linux® Professional Edition subscription support for Virtex-II Pro embedded PowerPC
Nohau Corporationwww.nohau.comEMUL-MicroBlaze-PC debugger support for Xilinx MicroBlaze 32-bit soft processor
QNX Softwarewww.qnx.comQNX® Neutrino® RTOS support for Virtex-II Pro embedded PowerPC
Wind River Systemswww.windriver.comVxWorks® RTOS support for Virtex-II Proembedded PowerPC; Diab™ XilinxEdition (XE) C/C++ Compiler;SingleStep™ Xilinx Edition debugger;visionPROBE II Xilinx Edition; visionICE II Emulator; visionTRACEEmulator
80 Xcell Journal Fall 2004
SoleNet, Inc.www.solenet.netFPGA, board, and system designs for wire-less, telecommunications, consumer, andreference design applications
so-logic electronic consultingwww.so-logic.netEmbedded systems (PowerPC,MicroBlaze); system-level design (Forge, System Generator, Handel-C);Xilinx training centers (Austria, Eastern Europe)
Synopsys Professional Serviceswww.synopsys.comDesign services to solve your design challenges in system-level design, RTLdesign, and physical design
Syntera ABwww.syntera.se/Design services; FPGAs for radar, digitalcommunications, telecom automotive, aerospace, and DSP
Tao of Digital, Inc.www.taoofdigital.comHigh-speed, large-gate-count SoC designsusing IP cores for maximum modularityand efficiency
Technolution B.V.www.technolution.nl/Innovative hardware and software solutions
Tezzaron Semiconductorwww.tezzaron.comDesign services for portable computing,networking, and embedded systems
Thales Airborne Systemswww.thalesgroup.com/airbornesystems/Provider and integrator with high expertisein FPGA design for radars, DSP, and communications
TietoEnator R&D Services ABwww.tietoenator.comEuropean design services for telecom,industrial IT, and automotive; Xilinx exclu-sive training provider in Scandinavia
V-Integrationwww.V-Integration.comProviding first-pass success in complexFPGA designs; applications include imag-ing, communications, and interface design
Williams Consulting, [email protected] systems hardware and software;video; MPEG; control
See these AllianceEmbedded members forinformation about the following products(contact Xilinx for Wind River XilinxEdition products):
Accelerated Technology® Division of Mentor Graphicswww.acceleratedtechnology.comNucleus® RTOS support for XilinxMicroBlaze 32-bit soft processor cores
Avnet Design Services single board computerswww.em.avnet.com/home/ADS Xilinx Virtex-II Pro Evaluation Kit
Corelis Inc.www.corelis.comCodeRunner JTAG debugger support for Virtex-II Pro embedded PowerPC
Express Logicwww.expresslogic.comThreadX® RTOS support for XilinxMicroBlaze 32-bit soft processor
Green Hills Softwarewww.ghs.comMULTI® debugger support for Virtex-II Pro embedded PowerPC; Green Hills™ Optimizing C Compiler support for Virtex-II Pro embedded PowerPC
MEMEC Design single board computerswww.insight-electronics.com/virtex2pro/Virtex series system boards
X I L I N X P A R T N E R Y E L L O W P A G E S
The hard work is done! Now ASIC and FPGA designers can prototypelogic designs for a fraction of the cost of existing solutions. Here are 6+ million gates(measured the ASIC way) on an easy to use, stand-alone, USB2.0-hosted board (a PCI/PCI-X interface is coming soon). The DN6000k10 supports up to 9, 2vp100 VirtexII-Pro FPGA’s,with an incredible amount of FPGA to FPGA interconnect for easy logic partitioning. FPGA’sare interconnected with rocket I/O’s, enabling the movement of data between them at100’s of GB/s. In addition to 6M+ gates, the DN6000k10 also packs on-board:
• 2 PowerPC cores per FPGA (400MHz)
• Up to 8MB embedded RAM, 444, 18x18 multipliers — per FPGA
• 480+ connections for daughter card and logic analyzer interfaces
Configuration is fast, easy, and robust using a SmartMedia-based FLASH card or, via theUSB interface. Every tool, utility, driver, and support application that The Dini Group couldimagine you might need is included. Please contact us for complete specifications, we areeager to show you how our hard work can make you job easier.
1010 Pearl Street, Suite 6 • La Jolla, CA 92037 • (858) 454-3419 • Email: [email protected]
PowerPC is a trademark of International Business Machines Corporation in the United States, or other countries, or both: All other trademarks and registered trademarks are the property of their respective owners.