Plunify's newest FPGA Expansion Pack for Vivado is the latest addition to a suite of cloud-enabled tools on Plunify Cloud. This tool was created for FPGA designers who have explored and are ready or perhaps have already adopted the cloud. They can relate easily to the following account of a typical customer's experience. Plunify has been using the Amazon Web Services, Azure and Google Compute Engine clouds since the beginning, so we hope to help designer teams avoid potential pitfalls.
CAD Manager meets the Cloud
Mark is a CAD manager at a major telecommunications equipment maker. His team recently signed up with Amazon Web Services (AWS) and set up a few build servers in the cloud. The promise is huge in terms of how much the designers can increase their productivity.
To upper management, this means a shift from capital expenses to operational expenses, reducing on-premise tool license purchases, and less administrative and IT overheads. Most importantly, offloading intensive builds and optimization efforts to the cloud can help them meet release schedules.
To the designers, this means no more worrying about the availability of build machines, tool licenses and even the maintenance of machines that were left idle for some of the time. Sudden demand for more build servers can be fulfilled almost immediately.
Everything seemed perfect. But after a couple of days, the FPGA designers’ experience with using the cloud directly was much worse than what Mark had expected.
Why? “Engineers are not IT people.”
He summed it up ruefully in one sentence, “Engineers are not IT people.”
Starting cloud instances, authenticating access into the machines, maintaining the connection(s), uploading design files, tracking the status of builds, downloading results and cleaning up afterward - all these steps were doable but the FPGA designers found them to be a major hassle. Word got around internally, leading to a steep decline in other teams' interest in the cloud.
Enter FPGA Expansion Pack - When There's A Will, There's A Way
The FPGA Expansion Pack, a Vivado plugin dedicated to enabling cloud operations, is our humble answer to Mark’s issues.
To make the cloud experience part of an FPGA designer’s workflow, the plugin adds buttons directly into the Vivado toolbar. This means that any designer can build and debug designs using as many high-performance servers as he/she likes, without even leaving the Vivado GUI.
And in terms of using FPGA Expansion Pack, the designer only needs to click a button to execute one operation - as simple as that.
Most importantly, the same design flow applies: Build > Analysis results > Modify > Build again, except that multiple design permutations can be attempted in parallel without limitations on the number of build machines and licenses.
Let's go into the details of how the cloud magic happens with a few clicks.
1. Compile in the Cloud
Just click the Compile in the Cloud button and the plugin will take care of the rest for you. It will recommend a server for your target device, launches it and securely transfers your project (RTL and/or netlists) to be built.
If the particular design run has already been compiled, or if there are build errors, the Expansion Pack will not waste your time (and money) by submitting the design to the cloud.
2. Status Checks
After sending builds into the cloud, the next step is to wait for the results. To check the compilation progress, click the button with the question mark.
Also, in Mark’s case, the FPGA designers often lost track of builds that they had sent to the cloud, but that won't be an issue anymore. FPGA Expansion Pack sends email notifications at the end of every build.
3. Download the Results
After the compilation is completed, click the download button to retrieve the files from the cloud. All files will be downloaded and synced back into your Vivado project as if they were generated locally. After the results are back, you can debug as per normal in Vivado.
4. View Results Online
What's more, each designer gets a usage report on a secure web portal to show management how much they had spent on cloud resources. Of course, cloud computing may not cost less than having on-premise servers if used 24/7, but it is ideal for periods of peak demand and that will become apparent in the design manager’s balance sheet.
5. Amazon F1 Support & FPGA Design Optimization
FPGA designers can also create F1 images and request a free evaluation of FPGA design optimization by clicking the other buttons. Watch a quick video to get a sense of FPGA Expansion Pack's full features.
After FPGA Expansion Pack
The FPGA Expansion Pack was introduced to Mark's team and they have since used it for 3 months. It is safe to say that all parties are satisfied. Management's objective of increasing productivity while keeping a handle on costs has been fulfilled. The design team is able to produce designs in a timely fashion, and even optimize their performance quickly with Plunify's solutions, maximizing the full value of cloud computing.
To experience this personally, sign up for a free account now to start a cloud project.