Another key differentiator of C-to-Silicon Compiler (CtoS) when compared to other ESL tools is its ability to make incremental changes to the generated RTL based on very small changes to the System C source code.
This capability, allows designers to make very small changes to the generated RTL and gate level netlists from a very small change to the input source code. Some of the changes that are supported by this approach are the following:
Change of the sign of an input.
- Change inverting the logic level of a signal.
- Adding an extra condition to an “if then else” statement.
- Other minor changes to the input source code which reflect in minor changes in the generated RTL.
Without this capability, even a minor change to input source code, such as inverting a signal, might result in large differences between the original RTL and the RTL generated after the modification is done.
The user must notice that changes which imply major changes in the functionality of the generated RTL should not be treated with an ECO approach. Some changes in the System C code, such as changing the value of a template parameter, like the number of processors in an array processor, may result in a large difference in the generated RTL.
This Team ESL posting is provided by Dr. Sergio Ramirez, Sr Staff Product Engineer for the C-to-Silicon Compiler high level synthesis product.
Product Engineer for the C-to-Silicon Compiler high level synthesis product.