Thursday, 2015-11-12

*** tpb has joined #timvideos00:00
*** Bertl is now known as Bertl_zZ03:35
*** se6astian|away is now known as se6astian08:06
_florent_mithro: no, digilent hasn't contacted me08:54
*** Bertl_zZ is now known as Bertl09:31
mithro_florent_: I assume everything in litex is just the stuff that has been evicted from misoc/migen?13:19
mithro_florent_: as far as you know, the jpeg core should be deterministic, right? Given the exact same input frame it should produce exactly the same output bytes?13:42
ysionneaumithro: I received the FX2LP board!13:51
ysionneauI gave a bit of thought to the double buffering stuff, I think there is a TOCTU issue in this story13:52
ysionneautoctou* time of check time-of-use13:52
ysionneaulet me explain maybe I didn't thought this well enough13:52
ysionneauif you load both buffers (normal and next) because you predict 2 reads in a row13:53
ysionneauthen you loop and check the status register13:53
ysionneauthen you detect the first read has been done13:53
ysionneauwhat you will want to do is to refill, right?13:54
ysionneaubut you would need to do something like : normal = next ; next = some_new_data13:54
ysionneaucause I was thinking the gateware would work like this : if not(normal_empty) then use_normal; elseif not(next_empty) then use_next else error13:56
ysionneaubut now I'm thinking ... maybe I should do (and maybe that's what you had in mind and I didn't get it) : you always refill only buffer_next (except the first time), and the gateware automatically copies buffer_next to "buffer_regular" when one read has been done14:01
ysionneauhmm sorry for the mess now I'm thinking out loud14:01
ysionneaumithro : anyway important question : now that I've the board, do you want me to test the current (simple buffered with clock stretching) code? Or do you want me to add the double buffer feature and *then* check?14:02
mithroYou can't do that because if you get the prediction wrong, you need to overwrite the current valye14:02
mithroAfter the end of a read operation there are two possibilities, either the master keeps clocking for another read14:05
mithroOr the master starts a new i2c transaction14:05
mithroWell, you should test the clock stretching approach - because that is needed for some things even with the buffer optimisation14:07
mithroBut I wouldn't be surprised if the FX2 fails to read from the EEPROM with clock stretching enabled for initial boot14:08
ysionneauok, let's hope not I should be able to tell you in a couple of hours14:08
mithroWe will see14:12
mithroI might get you to look at before doing the EDID I2C stuff14:13
tpbTitle: Calculate CRC code on pixels during frame transfer · Issue #130 · timvideos/HDMI2USB-misoc-firmware · GitHub (at
ysionneaudo you have any dummy led blinker (or other simple stuff) firmware for the fx2?14:14
ysionneaufirmware or C code14:14
mithroTake a look at fx2lib14:22
mithroMy fork is under mithro14:22
ysionneauok thx14:23
ysionneauok compiled well14:24
ysionneauvery helpful14:25
*** rohitksingh has joined #timvideos14:26
ysionneauit seems this board is popular because it's being used as a logic analyzer clone :o14:39
ysionneaucan't find D1 and D2 in the schematics14:43
_florent_mithro: about litex, yes that my fork of MiSoC that I'm going to use to build my cores and build my designs.14:50
_florent_mithro: in fact the digilent package was there :) (but I came back home today)15:08
_florent_mithro: thanks for arranging this with digilent15:08
* ysionneau can't flash his fx2lp board so far16:02
*** se6astian is now known as se6astian|away16:21
*** se6astian|away is now known as se6astian16:59
*** rohitksingh has quit IRC17:36
*** rohitksingh has joined #timvideos17:50
*** rohitksingh has quit IRC19:25
*** thaytan has quit IRC19:50
*** thaytan has joined #timvideos19:51
*** ChanServ sets mode: +v thaytan19:51
*** se6astian is now known as se6astian|away21:52
*** Bertl is now known as Bertl_zZ22:59
*** thaytan has quit IRC23:52
*** thaytan has joined #timvideos23:54
*** ChanServ sets mode: +v thaytan23:54

Generated by 2.13.1 by Marius Gedminas - find it at!