Skip to content

Commit

Permalink
soc/interconnect/stream/ClockDomainCrossing: Add a Buffer when same C…
Browse files Browse the repository at this point in the history
…lk Domains when buffered=True.
  • Loading branch information
enjoy-digital committed Apr 4, 2024
1 parent a36fbc8 commit dc78c3f
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions litex/soc/interconnect/stream.py
Original file line number Diff line number Diff line change
Expand Up @@ -254,8 +254,16 @@ def __init__(self, layout, cd_from="sys", cd_to="sys", depth=None, buffered=Fals

# Same Clk Domains.
if cd_from == cd_to:
# No adaptation.
self.comb += self.sink.connect(self.source)
if buffered:
# Add Buffer.
self.buffer = ClockDomainsRenamer(cd_from)(Buffer(layout))
self.comb += [
self.sink.connect(self.buffer.sink),
self.buffer.source.connect(self.source),
]
else:
# No adaptation.
self.comb += self.sink.connect(self.source)
# Different Clk Domains.
else:
if with_common_rst:
Expand Down

0 comments on commit dc78c3f

Please sign in to comment.