# Convenient and reliable clock domain crossings, using scoped constraints and reusable blocks

- Institution: CERN
- Department: FPGA Developers' Forum (FDF)
- Speaker: Lukas Vik
- Year: 2024
- Language: English
- Source: [CERN](https://videos.cern.ch/record/3011680)
- Licence: [CERN](http://copyright.web.cern.ch)
- Who can watch: Teens profiles and older (sources give no ratings; placed by Invisible Network from the source's own words)

Despite being used regularly by all FPGA designers, very few people know how to properly and reliably constrain a clock domain crossing (CDC). Timing constraints are indeed one of the hardest parts of FPGA design. It is an elusive art that is impossible to google and impossible to verify.

In this session we will discuss a few common CDC topologies. Analyze them, discuss some common mistakes, and discover their error modes. Most importantly, we will discuss how to make them robust using timing constraints. We will also discuss how scoped constraint files enable reusable CDC blocks, so the user never has to write a single line of TCL/XDC.

We will introduce the library of generic and reusable CDC blocks available in the open-source hdl-modules project. Peer-reviewed, proven in use, and constructed after thorough discussion and analysis, to give as reliable operation as possible..

0:00:00 Slide 1

0:01:46 Slide 2

0:03:13 Slide 3

0:04:44 Slide 4

0:08:12 Slide 5

0:09:59 Slide 6

0:12:45 Slide 7

0:14:06 Slide 8

0:15:22 Slide 9

0:17:47 Slide 10

0:20:10 Slide 11

0:24:20 Slide 12

0:26:39 Slide 13

0:30:58 Slide 14

0:32:35 Slide 15

0:34:49 Slide 16

## Lectures

1. [Convenient and reliable clock domain crossings, using scoped constraints and reusable blocks](https://invisiblenetwork.ai/learn/cern/3011680/da0bb56d4077), 45 min (CERN's player)
