#milkymist IRC log for Sunday, 2011-09-25

lekernelhi10:43
cdehi lekernel! how are you?10:43
lekernelfine! last day at www.liveperformersmeeting.net, going back home tomorrow...10:43
cdeexcellent :) what kind of music did you perform?10:44
lekernelit's more like a VJ festival, I was showcasing the M110:44
cdeI see10:44
cdebtw I think the M1 has great potential as an emulation box for old 8-bit and 16-bit consoles and computers10:45
lekernelpeople liked it, and I drained my stock of stickers on the second day ...10:45
cdethat's great!10:45
wolfspraullekernel: you are totally out of stickers?10:46
lekernelno, I still have about half of what Yi sent me10:46
lekernelin Berlin... I didn't think people would want so many at LPM10:47
lekernelusually I take too many stickers at events10:47
lekernelbah10:47
cdehi wolfspraul! I had a quick question for you:10:47
lekernelI'm out of brochures though10:47
cdeI have a couple of http://www.ftdichip.com/Support/Documents/DataSheets/Modules/DS_FT4232H_Mini_Module.pdf at work, can I use one as a JTAG programming interface?10:48
lekernelcde, if you want a safer option, you can flash the bitstream from FN10:49
lekernelthen you don't need jtag10:49
cderight10:49
lekerneland potentially M1-frying circuits :-)10:49
cdeI was thinking in case I want to flash something entirely different, like a 8-bit softcore CPU on top of the M1 SoC10:49
lekernelbe careful it doesn't take 5V10:49
lekerneland JTAG is 2.5V, serial is 3.3V10:49
lekernelyou can flash that from FN too10:50
lekerneland reboot in rescue mode10:50
lekernelto flash again10:50
lekerneluntil your JTAG pod is sorted out10:50
cdecool10:50
cdebut what if the Mico32 is no longer present in the bitstream? would it work?10:50
lekernelanyway, I think you'll probably need to start with HDL simulations ...10:50
lekernelthere are two bitstreams, the regular one and the rescue one10:51
cdeyes, I know :) I'm probably thinking too much ahead10:51
cdeaah I see, I must have skipped this when reading the wiki10:51
lekernelif you replace the regular one with any sort of bitstream, you can always boot the rescue one (with LM32) to reflash10:51
cdethat is an awesome feature, I probably won't need JTAG at all10:51
lekernelJTAG is faster and also allows you to load the FPGA without writing the flash etc.10:52
wolfspraulcde: did lekernel answer your questions?10:52
wolfspraulfor the most part I am unqualified to answer them anyway, and would need to ask lekernel first :-)10:52
cdeindeed he did10:52
wolfspraulI'm just the shipping guy who will send you a new jtag-serial daughterboard :-)10:52
cdehey, no worries, I haven't even got past the synthesis and simulation part anyway, I'm very far from reflashing the real hardware :)10:54
cdelekernel_: could it be possible to load the bitstream from the SD card instead of flash ? or to be more precise, what would be the difficulty of implementing it11:02
lekernel_probably quite annoying and I can't really see a clear advantage to it11:02
cdeI was thinking, in case the flash becomes damaged11:04
cdeit might also be possible to load the bitstream from other inputs, such as the microphone11:05
cdeI'm curious to know, how do you perform level shifting on the USB JTAG daughterboard?11:06
cdeI guess the Amontec JTAGkey is expensive because of the IO voltage autosensing11:07
lekernel_there is also automatic I/O voltage to some range on the M1 daughterboard, it's just one cheap integrated circuit11:09
lekernel_cde, https://github.com/milkymist/extras-m1/tree/master/jtag-serial11:17
lekernel_you can find the kicad schematics of the jtag board there11:17
cdethanks very much11:19
cdedo you think the ADV7125 is capable of outputting 1920x1080? (same question for the ADV7181B)11:22
lekernel_the limit is the pixel clock; if you use the low refresh rates like 30Hz or so (compatible with a few LCD monitors) it should work11:23
lekernel_the 7181 is just a low definition PAL/SECAM/NTSC decoder11:24
cdeI see11:24
cdeI was thinking about hardware video decoding (eg WebM, H.264, ...). do you know the what is the limiting factor (FPU, ...) ?11:25
lekernel_developer time11:26
lekernel_:)11:26
lekernel_at high resolutions it'd probably never correctly on the LM3211:26
lekernel_you'll need quite some HW acceleration, which sounds very feasible11:27
cdeif we want to compete with TI's OMAP, or qualcomm stuff we'll need 3D and hw video decoding (possibly encoding as well)11:27
cdemaybe I'm being overly ambitious here :)11:28
cdebtw what is the status of the fpgatools project as of now? any ETA?11:28
cdebrb11:32
wolfspraullekernel_: any picturs or videos from the lpm event?11:53
lekernel_we should get some on the Belarusian national TV (hopefully including the M1), but I'm not sure when :-)12:14
lekernel_I'll try to grab some others in the meantime12:14
lekernel_but I think the best one so far is the Masala concert12:15
wpwraklekernel_: btw, what amount of assert/abort would you consider acceptable in the scheduler ? i have a few that catch "impossible" conditions, reference counts going below zero or the arity dropping out of the allowed range. can i leave them in or would you rather have a "nice" exit (return -1) ?12:15
wpwrak(running out of code or registers produces just a return -1)12:20
wpwrakah, and one thing i'm still curious about: what would happen if an instruction used the same non-zero register as argument an in its destination slot ? would the result be undefined ? or would something useful happen ?12:22
lekernel_iirc it uses the previous register value (before the write) to start the new computation12:29
lekernel_assert/abort on conditions that come from internal software bugs are acceptable12:31
wolfspraullekernel_: but masala was warsaw, no?12:31
lekernel_wolfspraul, yes12:32
wolfspraulI mean do you have pics or videos from belarus?12:32
wolfsprauldid you switch the patches for the masala concert manually?12:32
wolfsprauldid you have a plan, or just spontaneous?12:32
wolfspraulhow did you switch?12:32
lekernel_wolfspraul, I'll certainly get a few, but they're not as good as those from Masala which, for once, had both a decent camera setup and very motivated dancers :-)12:33
wpwraklekernel_: (previous register value) kewl. let's see what happens if i use that ... :)12:33
lekernel_I used a MIDI keyboard12:33
lekernel_and set it up a bit before12:33
lekernel_I also had a joystick and slider on the keyboard to change patch parameters live12:34
lekernel_this thing: http://www.cme-pro.com/en/product-detail.php?product_id=312:34
wolfspraulhmm, nice12:35
lekernel_wolfspraul, have you got full videos from the Masala concert?12:36
wolfspraulsort of12:36
wolfspraulhttp://blip.tv/problematyka/usta-concert-at-cc-summit-2011-global-party-zachta-art-gallery-556713912:36
wolfspraulah no, wait12:36
wolfspraulthat's usta12:36
lekernel_that's Usta12:37
wolfspraulmasala - no12:37
lekernel_and you got the piano concert too?12:37
wolfspraulno12:37
lekernel_mh, ok12:37
lekernel_I will ping12:38
wpwrakpiano concert with m1 sounds interesting :)12:38
lekernel_ah, and I didn't get the slightest M1 bug during both cc-party and LPM, which is great12:40
lekernel_I was using the rc312:41
lekernel_everything worked nice as expected :)12:41
wpwraknice ;-)12:42
lekernel_even when I fed the camera signal through 20 meters of XLR microphone cable that was never made for this...12:43
wpwrakhow do you control camera gain ? so you have it on the midi keyboard ?12:49
wpwraks/so/do/12:49
lekernel_nah, F5-8 on USB keyboard12:53
wpwrakby the way, why all those function keys ? makes them hard to remember. function keys so 1980es :)12:56
wpwrak(read/write a reg in the same instruction) hmm, too difficult to tweak the scheduler to do this. would need to add the ability to go back in time a bit. needs a bit more work from the folks at CERN.13:49
kristianpaulmay be a dual-ported memory can do the trick?, some from spartan 6 have those features like write-first, read-first13:52
kristianpaulthat jtag-serial pod is very likelly to ge hot15:39
kristianpauls/hot/get heat over time16:00
wpwrak(dual-ported) according to lekernel, the SOC can already do this. it's just that my scheduler doesn't unblock the next writer to register X until the last reader of the previous content of X has been issued. this means that read and write can never overlap.17:24
wpwrakto make them overlap, i would have to schedule the writer N cycles before the last reader runs. this is tricker. the current algorithm only looks ahead, never goes back to change the past.17:26
--- Mon Sep 26 201100:00

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