#qi-hardware IRC log for Tuesday, 2015-06-16

--- Tue Jun 16 201500:00
Action: eintopf is searching for an alloy expert - http://alloy.mit.edu/alloy/07:36
eintopfis somebody here which knows this language PROMELA and did this stuff - I have no idea and need to write ~1 month an exam about that07:36
eintopf:-)07:36
wpwrakhow does alloy relate to promela ?11:03
wpwraki use(d) promela. not recently, though. very nice tool.11:04
wpwraklets you find protocol bugs you never even dreamed could exist ;-)11:04
eintopfah, no11:57
eintopfpromela was to other tool11:57
eintopfspin11:57
eintopfI think promela will be at the end of the course as well11:58
eintopfhttp://spinroot.com/spin/whatispin.html12:00
eintopfthis stuff12:00
eintopf"Peterson's solution to the mutual exclusion problem (1981)" -> this works indeed, when the variables for shared memory fits into one data bit width of memory12:01
eintopfso somehow atomic, like in avr mcu it would be one byte12:01
eintopf(I suppose)12:01
whitequarkall loads/stores on avr are atomic12:03
whitequarkeven two-byte12:04
whitequarkthey'll never be interrupted12:04
whitequarkthis actually screwed up timings on my VGA waveform generator12:04
larsceven on a multicore AVR? ;)12:04
whitequarklarsc: since no multicore AVRs exist, yes12:05
eintopfwhitequark: it's also one cycle?12:06
whitequarkeintopf: no, multiple cyclse12:06
eintopffor a one byte integer tyype?12:06
eintopfah12:06
whitequarkhm12:06
eintopfbut the datasheet says, some ops are really one cycle12:07
whitequarksure, the datasheet is right12:07
eintopf:D12:07
eintopfdon't know which ops12:07
whitequarkthe two-byte load/stores are multiple cycles12:07
whitequarkfor one byte, I dont' remember12:07
eintopfah and two-bytes is also not interuptable12:08
eintopfinteresting12:08
eintopfand >4 bytes? That's some linking big number library then12:08
eintopfehm >2 bytes12:08
whitequarkthere are no >2 byte stores in avr12:09
whitequarkit doesn't have any >2 byte registers12:09
eintopfyea, okay then avrlibc to some bignum lib12:09
eintopfs/to/do12:09
whitequarkhuh?12:09
eintopfI can use a uint32_t12:09
eintopfeven uint64_t12:10
whitequarkmultiple instructions12:10
whitequarkunless you cli/sei around the load/store, it is not atomic12:10
eintopfyes, that's why I do always when I will have something atomic in avr12:11
eintopfwhitequark: do I need to do this in a isr?12:11
eintopfan*12:11
whitequarkno12:11
whitequarkdon't forget volatile too12:12
eintopfah, yes12:12
eintopfif an spi device has something like a sleep state, if it's a normal behaviour that the sleep state has no register access17:36
eintopfor are there also spi devices outside which have register access even in sleep state17:36
Action: eintopf need to know to make this configurable by a flag or not17:36
eintopfgrml, I found now another spi device which have the possibility to access the register while sleep17:54
--- Wed Jun 17 201500:00

Generated by irclog2html.py 2.9.2 by Marius Gedminas - find it at mg.pov.lt!