Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Clock gating and cdc on clock_req

Status
Not open for further replies.

stanford

Full Member level 2
Joined
Feb 16, 2014
Messages
132
Helped
4
Reputation
8
Reaction score
6
Trophy points
1,298
Activity points
2,223
clock_request is sent asynchronously and could have glitches, as it is a big combo logic with many conditions feeding into it from different clocks.

1. How should I use this clock_request safely to ungate/gate the clock from cdc perspective?
2. What can be done to help this situation?
 

Use state-of-the-art synchronizers and sample the gate signal at the inactive clock edge.
 

Use state-of-the-art synchronizers and sample the gate signal at the inactive clock edge.

How do you sample the gate signal synchronously? This signal is async (not flopped as there is no clk), and has multiple clk source generating this clk request.

i.e
clk_req = a // a is async signal
|| b || c; // b,c is a sync signal

how do you use clk_req in clk gate? clk_req can be glitchy and we cant just dsync it before using as enable to clk gate.
 

we cant just dsync it before using as enable to clk gate.
You surely can do exactly this. If not, there's probably a lack of specification.

What is the expected behavior of the individual signals OR-ed to clk_req, what should be the resulting signal if they are changing at arbitrary times? Either the glitches have to be accepted by design, resulting e.g. in single clock cycles gated on or off. Or clk_req has to be filtered before being send to the gate circuit.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top