20.06.2013 Views

Design Challenges: Avoiding the Pitfalls, winning the game - Xilinx

Design Challenges: Avoiding the Pitfalls, winning the game - Xilinx

Design Challenges: Avoiding the Pitfalls, winning the game - Xilinx

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

The second idea is to have <strong>the</strong> hardware<br />

team document <strong>the</strong>ir design early and<br />

often. As <strong>the</strong> software team cannot truly<br />

test until <strong>the</strong>y have target hardware, <strong>the</strong>y<br />

must rely heavily on <strong>the</strong> documentation<br />

supplied by <strong>the</strong> hardware team. It is critical<br />

that <strong>the</strong> software team receives complete<br />

documentation – and that <strong>the</strong> documentation<br />

is kept up to date. The hardware team<br />

must also consult with <strong>the</strong> software team<br />

before making design changes. Although a<br />

change may seem trivial from a hardware<br />

perspective, it could result in an extensive<br />

software change, particularly in <strong>the</strong> latter<br />

stages of <strong>the</strong> project.<br />

Finally, <strong>the</strong> software team must have a<br />

stable target platform. This does not mean a<br />

perfect, bug-free platform but ra<strong>the</strong>r a consistent,<br />

known platform. It is important that<br />

<strong>the</strong> hardware team relay any and all known<br />

board/logic issues to <strong>the</strong> software team. This<br />

will prevent <strong>the</strong> software team from wasting<br />

time chasing down a known problem.<br />

Happily Ever After ...<br />

Specifications may fluctuate. Timelines<br />

may change. Management may have<br />

pointy hair. Many technical and operational<br />

challenges exist in every project, but<br />

nothing jeopardizes a project or brings<br />

more stress to a design engineer than when<br />

hardware and software are integrated. The<br />

challenge is to plan and design for that<br />

event from <strong>the</strong> beginning.<br />

There is no magic formula for a smooth<br />

hardware/software integration plan.<br />

However, <strong>the</strong>re should be a plan and an<br />

understanding of what <strong>the</strong> o<strong>the</strong>r guy is<br />

doing – or is going to do. Having this<br />

understanding and actually talking with<br />

your hardware or software counterpart will<br />

make integration a lot less painful. A few<br />

sacrifices now will be rewarded in <strong>the</strong> end.<br />

Although <strong>the</strong> software team may not<br />

have planned on writing test code for <strong>the</strong><br />

hardware team, burning a few extra cycles<br />

to write it will allow both teams to detect<br />

and correct problems early. This – combined<br />

with a good integration/test plan,<br />

well-documented hardware (including<br />

unintended design features), and a stable<br />

hardware platform – will go a long way in<br />

making integration easier.<br />

V I E W P O I N T<br />

Third Quarter 2005 Xcell Journal 9

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

Saved successfully!

Ooh no, something went wrong!