Knowledge Center
Knowledge Center

C, C++

C, C++ are sometimes used in design of integrated circuits because they offer higher abstraction.


The C programming language was created by Dennis Ritchie during the development of the Unix operating system within Bell Laboratories. It brought together features from several previous programming languages and was first released in 1972. It is a fairly low-level procedural programming language and its application has spread far and wide. Many more modern languages have been heavily influenced by it and C is still one of the most important software languages to this day. The low-level nature of the language also means that it is well suited to embedded systems.

C++ is one of the languages directly derived from C. It was developed by Bjarne Stroustrup at Bell Labs. It adds object-oriented features as well making many other extensions. The first programming language guide for it was released in 1985 although some earlier version had existed. Both languages have since been made international standards with regular updates to them.

The C and C++ language have an important role to play within the EDA industry. Not only are most EDA programs developed in these languages, but they are also the most popular language used for the creation of virtual prototypes. Virtual prototypes are functional models of an electronic system and are often used to study the high-level behavior of systems under development so that aspects such as system functionality and performance can be assessed.

In 1996, the EDA industry started work creating a class library built on top of C++ that added notion of hardware concurrency, timing and supporting the extended value set seen in hardware. This was first released in 2000 and became know as SystemC. It is the primary language used as input to high-level synthesis tools.