Get email delivery of the Cadence blog featured here
Most of you have heard about the promises of high-level synthesis (HLS). Things like improved productivity, quality of results (QoR), and verification all dominate the high-level synthesis collateral, including ours. So here, I’ll mention five things you probably DIDN’T know about HLS.
1. Companies are using HLS to ensure they are first to silicon in competitive markets.
For example, Blu Wireless Technology recently opened up about its use of the Stratus HLS platform to enable it to be the first to market with working mm-wave multi-gigabit baseband silicon and software, providing them a major competitive advantage. If you are interested, take two minutes to see their silicon in action inside their Lightning module as a part of the Bristol Is Open project.
2. HLS has been used to create production silicon across the design application space.
In a recent post, I mentioned that there is so much going on in HLS, that no one, including myself, can follow it all. That is true, and I used that as an impetus to investigate more thoroughly what our users are building with HLS. While we don’t know all of the end applications, the data we do have is eye-opening, especially if you haven’t been paying close attention to HLS in recent years.
It turns out that the traditional sweet spots of HLS, video and imaging, only account for about half our HLS usage. The Blu Wireless mm-wave application is just one of many in communications, which is the next biggest application space for our users. Following that is controllers, including those for caches and flash memories up though printers and DVD players. (Controllers in the video, imaging, and communications devices were already accounted for in those buckets.) Combined, I estimate these applications account for about 75% of our users’ end applications.
In a session at CDNLive Silicon Valley, I mentioned that our HLS products have been used in silicon in your home, car, and pocket. True enough, but also on that list are telephone poles, pachinko parlors, and commercial printing facilities.
Speaking of CDNLive, for any of you going to CDNLive in Munich next week, come by Tuesday afternoon at 15:30 to see a demonstration of Stratus HLS and participate in some Q&A.
3. There is a rich and growing knowledge base of tips, tricks, and best practices to help get you started with HLS.
The knowledge base was originally targeted toward getting new HLS users off on the right foot, but now there is a lot of information for seasoned HLS users, too. Forte’s knowledge base had more than 700 of these articles, and they are being updated and migrated to the Cadence Online Support system. And of course, new information is being added all the time.
If you have an existing Cadence Online Support account, you can check out the knowledge base here.
4. ECO support is better, not worse, in an ECO-friendly HLS flow.
In the inaugural post of this blog, I promised that we would talk about novel uses of HLS. What is more novel than using HLS to ECO-proof your design? Renesas was the first to make noise about HLS improving the ECO flow as they developed their HEVC IP, but they are not alone. As shown in Figure 1 below, the Stratus flow allows changes to be made at a high-level and then, through integration with Cadence Conformal ECO Designer, a patch can be automatically created and applied to the pre- or post-layout netlist.
Figure 1: Stratus ECO flow
Not pictured in Figure 1 is the flexibility inherent in the HLS flow, which in this context could be thought of as “ECO++.” By working at a higher level of abstraction, you are not only designing hardware earlier, but also verifying it earlier. That means you tend to catch problems and fix them earlier, eliminating the need for a traditional ECO in the first place. (We will talk about the verification advantages of a SystemC HLS flow in the near future).
Additionally, by having the design source at a higher level of abstraction, you can make more substantial functional changes to the design that you feasibly could when writing RTL by hand. For example, you can make a change the SystemC or C++ behavior to implement a spec change or even to use a different algorithm. In either case, HLS will then generated modified RTL automatically.
5. HLS is the new black.
Combine all of the above, and you might conclude that “HLS is the new black.” At least that was Kevin Morris’ conclusion in EE Journal. His article gives a nice overview of the high-level synthesis and behavioral synthesis past, en route to describing how the technology has evolved and enables new use models.
So there you have it. Five things you may not have known about HLS. As my childhood friends, Duke and Hawk (of G.I. Joe fame), often said, “Now you know. And knowing is half the battle!”
--High-Level Synthesis: Why Now?