grabber: make parser EOP a pulse

This commit is contained in:
Sebastien Bourdeauducq 2018-07-10 17:04:07 +08:00
parent 701c93d46c
commit d82beee540
1 changed files with 5 additions and 5 deletions

View File

@ -34,8 +34,8 @@ class Parser(Module, AutoCSR):
("a", 8), ("a", 8),
("b", 8), ("b", 8),
("c", 8), ("c", 8),
("stb", 1), # dval ("stb", 1),
("eop", 1), # ~fval (i.e. not together with stb) ("eop", 1),
]) ])
# # # # # #
@ -46,14 +46,14 @@ class Parser(Module, AutoCSR):
lval = Signal() lval = Signal()
fval = Signal() fval = Signal()
dval = Signal() dval = Signal()
last_lval = Signal()
last_fval = Signal()
self.comb += [ self.comb += [
Cat(dval, fval, lval).eq(cl[14:17]), Cat(dval, fval, lval).eq(cl[14:17]),
pix.stb.eq(dval), pix.stb.eq(dval),
pix.eop.eq(~fval), pix.eop.eq(~fval & last_fval),
Cat(pix.a, pix.b, pix.c).eq(Cat(cl[i] for i in bitseq)) Cat(pix.a, pix.b, pix.c).eq(Cat(cl[i] for i in bitseq))
] ]
last_lval = Signal()
last_fval = Signal()
self.sync.cl += [ self.sync.cl += [
last_lval.eq(lval), last_lval.eq(lval),
last_fval.eq(fval), last_fval.eq(fval),