improve RX timings (make valid synchronous)
This commit is contained in:
parent
78d39c6dae
commit
1754574731
|
@ -7,8 +7,8 @@ from migen.genlib.resetsync import AsyncResetSynchronizer
|
||||||
from migen.genlib.record import *
|
from migen.genlib.record import *
|
||||||
from migen.genlib.fsm import FSM, NextState
|
from migen.genlib.fsm import FSM, NextState
|
||||||
from migen.genlib.misc import chooser
|
from migen.genlib.misc import chooser
|
||||||
from migen.flow.actor import EndpointDescription
|
from migen.flow.actor import *
|
||||||
from migen.flow.actor import Sink, Source
|
from migen.flow.plumbing import Buffer
|
||||||
from migen.actorlib.structuring import Converter, Pipeline
|
from migen.actorlib.structuring import Converter, Pipeline
|
||||||
from migen.actorlib.fifo import SyncFIFO, AsyncFIFO
|
from migen.actorlib.fifo import SyncFIFO, AsyncFIFO
|
||||||
from migen.bank.description import *
|
from migen.bank.description import *
|
||||||
|
|
|
@ -96,7 +96,7 @@ class LiteEthARPRX(Module):
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
valid = Signal()
|
valid = Signal()
|
||||||
self.comb += valid.eq(
|
self.sync += valid.eq(
|
||||||
depacketizer.source.stb &
|
depacketizer.source.stb &
|
||||||
(depacketizer.source.hwtype == arp_hwtype_ethernet) &
|
(depacketizer.source.hwtype == arp_hwtype_ethernet) &
|
||||||
(depacketizer.source.proto == arp_proto_ip) &
|
(depacketizer.source.proto == arp_proto_ip) &
|
||||||
|
|
|
@ -71,7 +71,7 @@ class LiteEthICMPRX(Module):
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
valid = Signal()
|
valid = Signal()
|
||||||
self.comb += valid.eq(
|
self.sync += valid.eq(
|
||||||
depacketizer.source.stb &
|
depacketizer.source.stb &
|
||||||
(sink.protocol == icmp_protocol)
|
(sink.protocol == icmp_protocol)
|
||||||
)
|
)
|
||||||
|
|
|
@ -136,7 +136,7 @@ class LiteEthIPRX(Module):
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
valid = Signal()
|
valid = Signal()
|
||||||
self.comb += valid.eq(
|
self.sync += valid.eq(
|
||||||
depacketizer.source.stb &
|
depacketizer.source.stb &
|
||||||
(depacketizer.source.target_ip == ip_address) &
|
(depacketizer.source.target_ip == ip_address) &
|
||||||
(depacketizer.source.version == 0x4) &
|
(depacketizer.source.version == 0x4) &
|
||||||
|
|
|
@ -72,7 +72,7 @@ class LiteEthUDPRX(Module):
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
valid = Signal()
|
valid = Signal()
|
||||||
self.comb += valid.eq(
|
self.sync += valid.eq(
|
||||||
depacketizer.source.stb &
|
depacketizer.source.stb &
|
||||||
(sink.protocol == udp_protocol)
|
(sink.protocol == udp_protocol)
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in New Issue