⨘ } VLSI } 9 } Clock Domain Crossing (CDC) } FIFO } LE PROF }

  Рет қаралды 21,727

H. R. LEPROFESSEUR

H. R. LEPROFESSEUR

Күн бұрын

Пікірлер: 16
@vazgengyoletsyan3933
@vazgengyoletsyan3933 3 жыл бұрын
Hi Leprofesseur, thank you for the really informative lecture, Could you please explain , is there any approach of automatically detect Async Fifo in scope of CDC ?
@Leprofesseur
@Leprofesseur 3 жыл бұрын
I am not sure whether I got your question properly, however my impression is that modern CDC tools in their reports provide detailed information that can be scripted to know various information related to clock domain crossings in the full chip design.
@veer110
@veer110 8 жыл бұрын
Hi Leprofesseur, thanks for wonderful explanation. I had a doubt in fifo design, how write pointer and read pointer is made 1 bit ?
@Leprofesseur
@Leprofesseur 8 жыл бұрын
Thanks!, it was not made 1-bit, it depends on how deep is memory, in the example it is 2-deep fifo so 1 bit is good enough, in general binary pointer values will need to be converted to grey code so that only one bit changes at a time across the clock domains.
@mrshaaban
@mrshaaban 7 жыл бұрын
Hello Sir, Thanks a lot for the valuable lectures. I have some doubts about the Closed loop MCP solution. Why do we need an XOR flop to generate a pulse, why couldn't we use an edge detect circuit? What if the EN signal is Hi for more than 2-cycles? Then the output of the XOR flop structure will toggle? Also, on the receiving side, why do we need an additional XOR flop if the received enable is already a pulse? Thanks,
@Leprofesseur
@Leprofesseur 7 жыл бұрын
There can be many different possible MCP solution for CDC. In the lecture one example is discussed to give concepts. Typically EN signal is generated with intention in mind that it acts as one of the handshake signal. If EN toggle, one needs to make sure that it stays high enough to be properly captured. Idea for XOR along with flop is to generate a clock wide pulse for handshake mechanism. In theory you may not need extra pulsing if receive EN is pulse, however in real circuit, since signal crosses the domain, one can not be sure that signal will toggle with minimum one receive clock width due to delays associated with path depending of which technology library is used, so its good idea is to generate pulse in each clock domain to properly implement handshake mechanism. However, in real circuits FIFOs are typically implemented instead of example circuit described. All the best! LeProf }
@mrshaaban
@mrshaaban 7 жыл бұрын
Thanks a lot! It's clear now!
@Leprofesseur
@Leprofesseur 7 жыл бұрын
you are very welcome! LeProf }
@ravikumartiwari332
@ravikumartiwari332 8 жыл бұрын
Thanks a lot sir for your valuable guidance.... I ll appreciate and b delighted if I get lectures on some more topics like this...(related to FPGA for ASIC development like: How to implement clock gating, pipeline in our design and related issues, using vivado and 7 series FPGAs) in future.
@Leprofesseur
@Leprofesseur 8 жыл бұрын
Thanks! for the positive feedback. I will plan some lectures on the topics you have requested in near future.
@siddhipandya7510
@siddhipandya7510 5 жыл бұрын
How to code this 2 deep fifo in verilog?
@monikavijay2614
@monikavijay2614 6 жыл бұрын
can't we directly use multiplexer having EN as selection line instead of this XOR technique?
@Leprofesseur
@Leprofesseur 2 жыл бұрын
xor could be modelled using multiplexers.
@ashokreddy6552
@ashokreddy6552 7 жыл бұрын
Thanks for the explanation on the clock domain crossing. I had two questions.. 1. When the data is crossing from slower(Source Clock) clock to faster clock(destination clock) which technique can be used? 2. When the data is crossing from faster(Source Clock) clock to slower clock(destination clock) which technique can be used?
@Leprofesseur
@Leprofesseur 7 жыл бұрын
Thanks for feedback. Answers: 1. When signal is crossing from faster clock domain (source) to slower clock domain (destination), one needs to be very careful, implementation must fulfill minimum pulse width requirements in slower clock. One may implement open loop state machine based solution in faster clock domain or some mechanism which makes sure to fulfill minimum pulse width requirement. Another better way is to implement a closed loop solution with some sort of acknowledgement from destination back to source clock domain that signal value has been correctly captured and the signal can carry new value. The state machine or some logic in faster clock domain needs to make sure that data pulse has been stretched enough that there will be no data loss in slower receiving domain. 2. In case of signal crossing from slower clock (source) to faster clock (destination), its a bit easier. Nevertheless it must fulfill minimum pulse width requirements in the receiving faster clock domain. If source clock is minimum 1.5x slower than destination clock, it is safe, one does not need special logic in source domain. In both cases crossing signal must pass through a sync flop mechanism (double flop of special sync cell from technology library). Further, one may develop assertions to verify CDC protocol for pulse width checks. Best! Leprofesseur }
@ashokreddy6552
@ashokreddy6552 7 жыл бұрын
Leprofesseur } Thanks for your valuable explanation.
⨘ } VLSI } 4 } Clock Domain Crossing (CDC) Techniques } LE PROFESSEUR }
26:24
黑天使被操控了#short #angel #clown
00:40
Super Beauty team
Рет қаралды 61 МЛН
Мясо вегана? 🧐 @Whatthefshow
01:01
История одного вокалиста
Рет қаралды 7 МЛН
She made herself an ear of corn from his marmalade candies🌽🌽🌽
00:38
Valja & Maxim Family
Рет қаралды 18 МЛН
1% vs 100% #beatbox #tiktok
01:10
BeatboxJCOP
Рет қаралды 66 МЛН
Crossing Clock Domains in an FPGA
16:38
nandland
Рет қаралды 69 М.
What is a FIFO in an FPGA
17:47
nandland
Рет қаралды 75 М.
⨘ } VLSI } 007 } Logic Gates using Multiplexers } LE PROF }
24:20
H. R. LEPROFESSEUR
Рет қаралды 18 М.
ClockDomainCrossing
18:17
Paul Franzon
Рет қаралды 46 М.
The Midpoint Circle Algorithm Explained Step by Step
13:33
NoBS Code
Рет қаралды 168 М.
Clock Domain Crossing (CDC), Synchronizers and FIFOs
30:25
Sandeep Sharma - ElecTronX
Рет қаралды 4,1 М.
黑天使被操控了#short #angel #clown
00:40
Super Beauty team
Рет қаралды 61 МЛН