Creating hardware systems and applications with the Cx language


Nicolas Siret


I am the CEO and a co-founder of Synflow. I learned how to design and verify hardware from senior engineers at Lead Tech Design, a design center based in France. At this time, I started to look at existing design flows but I was disappointed by the Quality of Results. As a consequence, I started (with Matthieu Wipliez) to work an HDL code generator that will fit the needs of the 99% of engineers. Today I usually focused on running Synflow's business and, in my little free time, in using Cx to design IP cores. If you're lucky you may also find me on one of my (windsurf) boards or diving in the Mediterranean sea.

Reviews (5)

timonela fani
Sagar .
Reinhardt delange
Samuel Obanyangbor


Welcome to this online course. I will teach you how to create digital hardware systems and applications with the Cx language. For more information about the Cx language, Synflow, and ngDesign, it's here.

This course is aimed at developers, engineers, and hackers. Some lessons and modules are specifically conceived for people with a software background, and others for people with a hardware background. The course is also aimed at learners and innovators who want to get an overview of the technology and/or of how digital hardware can be created with ease and efficiency.

Lecture content

There is no formal educational prerequisite for this course, you only need to have both ngDesign installed on your computer and a valid license. As the work progresses you will create a various IP cores.

About the instructor

This course is taught by Nicolas Siret - CEO and co-founder at Synflow.

Nicolas Siret has a PhD in hardware design and design automation flows. He gave lectures regularly for college students at two French universities: INSA (Institut National des Sciences Appliquées) and the University of Rennes.



Learning objectives

This course will provide participants with comprehensive basic skills in the areas of hardware design and verification with the Cx language and the ngDesign software tool.

Benefits for the Participant:

  • You will learn the basics of hardware design without having to go through months of training
  • You will learn how to write code in the Cx language
  • You will learn how to use ngDesign
  • This course allows for flexible study patterns. You will be able to decide on your schedule and the speed at which you progress.


The course contains several modules which covers:

  • The basic of hardware and software
  • All you need to learn about Cx and ngDesign
  • How to design, verify, and deploy an UART - Hardware engineer - (ongoing work)
  • How to design, verify, and deploy a sobel filter - Software engineer - (ongoing work)

Course content

  • Module 1 - Hardware design

  • Module 2 - Learn the basic

  • -  Lesson 1 - Running lights led

  • -  Lesson 2 - Hello World

  • -  Lesson 3 - Cryptography SHA

  • -  Lesson 4 - Deploying the SHA

  • Module 3 - Design of a sobel filter

  • -  Lesson 1 - Coding the application

  • -  Lesson 2 - Custom execution

  • Module 4 - Design of an UART

  • -  Lesson 1 - Naive implementation

  • -  Lesson 2 - Better implementation

Interested? Enroll to this course right now.

There is more to learn