Catapult C Synthesis
- Add Courses
- Confirm Schedule
- Enter Contact Information
There are currently no dates scheduled for this class.
Request this class in your area
Duration: 2 Days
Pricing: $1,600 USD
Course Part Number: 217481
Contact us for details about training at your site
Course Overview
This class will introduce you to the tools and techniques needed to design, synthesize, and verify hardware starting from C++. You will learn how to modify C models to be synthesizable and how to produce verified hardware quickly. You will explore the micro-architecture and interface design space, in order to achieve the most optimal hardware design.
An understanding of C++ is necessary, as this will not be covered in the course.
Hands-on lab exercises will reinforce lecture and discussion topics under the guidance of our industry expert instructors.
You Will Learn How To
- Design using Catapult C Synthesis tool
- A brief introduction to Catapult C Library Builder Tool
- Write synthesizable C++ code
- Use latency and resource constraints to get the smallest design
- Integrate custom IP for synthesis
- Check that the RTL functions and has the right timing
Hands-On Labs
Throughout this course, extensive hands-on lab exercises provide you with practical experience using Catapult C software. Hands-on lab topics include:
- Writing C++ code for synthesis
- Understanding the GUI
- Writing a DCT (Discrete Cosine Transform) function
Prerequisites
- Students are strongly encouraged to review C++, as this will not be covered in the class. A good book is “C++, How to Program” by Dietel and Dietel.
- Basic knowledge of FPGA/ASIC design techniques and procedures
- Experience using ModelSim simulator for traditional simulation
Key Topics
- Basic Definitions and Concepts
- Catapult C Workflow
- Writing Bit Accurate Code
- Interface Description and Synthesis
- Verification
- Memory Optimization
- Loop Optimization
- Word Width Optimization
- Area Optimization
- Throughput Optimization
- Other C/C++ Coding Issues