Cx Language for ASICs and FPGAs
A subset of the C language, Cx is specifically designed for ASICs and FPGAs. It maintains the familiarity of the C language syntax while providing additional features tailored for hardware design.
Key Features
Familiar Syntax
Cx's C-like syntax makes it easy to learn and use for those with experience in C programming.
Strong Typing
Bit-accurate static typing ensures data consistency and correctness in designs.
Cycle-Accurate Behavior
Implicitly or explicitly express cycle-accurate behavior using structured code.
Readability
Cx encourages the use of readable code, promoting maintainable and understandable designs.
Concurrency and Parallelism
Cx applications are described as a set of sequential tasks connected together and executed concurrently. This design approach closely mirrors hardware behavior, making it a natural choice for describing parallelism.
Programming Model
The compiler transforms the task description into a series of execution rules. For communication, Cx supports various port types, offering different expressiveness and performance tradeoffs.
More information
You will find a lot more information about the Cx language as well as tutorials and documentation on our website.