Topic for #milkymist is now Radical Tech Coalition :: Milkymist One, Migen, Milkymist SoC & Flickernoise :: Logs: http://en.qi-hardware.com/mmlogs
cladamw [cladamw!~adamwang@host-222.80-43-115.dynamic.totalbb.net.tw] has joined #milkymist
three5 [three5!57a27cb3@gateway/web/freenode/ip.87.162.124.179] has joined #milkymist
<cladamw> wpwrak, seems (2011-07-13) on your M1pre-rc-4 works well. And mine ( usb switch )works well from latest images.
<wpwrak> cladamw: yeah. need to try more recent images. if it works with the july version, it most work with newer versions, too :)
<wpwrak> s/most/must/
xiangfu [xiangfu!~xiangfu@fidelio.qi-hardware.com] has joined #milkymist
<cladamw> wpwrak, okay.
<wpwrak> so all seems fine so far. also the NOR bug hasn't reared its head
<wpwrak> i now have ~11500 cycles. last check was at 10000. not one bit went missing :)
<kristianpaul> nice
<wpwrak> lekernel: yes, the syntax looks a lot better
<wpwrak> lekernel: you're still visibly limited by python, though. e.g., the structure of what goes on inside "If" is a bit odd
<wpwrak> lekernel: oh, and do you need to initialize things like self.tx in __init__ ? if you did it in get_fragment(), you wouldn't have to use all those "self"
<wpwrak> (stuff inside If) at least i assume that foo.eq(bar) means "foo == bar". but it's not obvious why you sometimes use .eq and sometimes ==
<wpwrak> you could gain access to those operators by building everything with your own classes and then overriding the corresponding functions. but it would be a bit of a mess.
<wpwrak> i explored the concept of using python as a framework for making my own language (with a pythonish syntax but my semanstics) quite a bit in the tmc package (the stuff i use to decode usb). you can get pretty far, but you also have to tweak things very deep inside python if you really want control.
<kristianpaul> :) * WARNING * WARNING * WARNING * WARNING * WARNING * WARNING * WARNING *
<kristianpaul> just one instr class?, lets read more..
<kristianpaul> Intersting, python have some sort of flexibillity to achive this own language stuff, even more interesting when links to real hardware
<kristianpaul> m1.send_midi_val1(value)
<kristianpaul> fn.set_variable(wave_mode=6)
<kristianpaul> and the live coding start :)
<kristianpaul> or something like that, tought i never had used python before i guess i did lot of typos
<wpwrak> you want to make the syntax more complex ? :)
<kristianpaul> lol no i tought in your aprouch with the multipler, thinking in milymist patch editor and previous comment of people wanted to do live coding on m1
<kristianpaul> but i guess sintax could be simpler
<kristianpaul> fn.wave_mode(6) ?
<kristianpaul> :)
<wpwrak> i doubt "live coding" makes a lot of sense. not that the idea per se would be flawed. but you don't have the resolution for showing much code. so you'd have to scroll around all the time. rather inconvenient.
<kristianpaul> hmm, yeah i forgot that part
cladamw [cladamw!~adamwang@host-222.80-43-115.dynamic.totalbb.net.tw] has joined #milkymist
<kristianpaul> of course asuming support for on the fly patch compilation :) too
<wpwrak> another issue is that recompiling the whole file is slow. and you have to do this after every keystroke. while rendering. so you may have to add preemption and partial recompilation. nothing infeasible, but messy.
<kristianpaul> yeah..
kristianpaul [kristianpaul!~kristianp@unaffiliated/kristianpaul] has joined #milkymist
<whitequark> wpwrak: it's Ruby which is called a "DSL creation language", not python. And it has a reason :)
<whitequark> wpwrak: (not one bit) do you check the whole NOR for errors each time ?
xiangfu [xiangfu!~xiangfu@61.49.252.40] has joined #milkymist
<wpwrak> whitequark: i check the lock bits, the entire standby partition, and the crcs of the other partitions. about each day.
<wpwrak> whitequark: by far most corruptions would hit the standby partition
<wpwrak> so there are some bits i don't check. but they're far out. also a bit could fail back and forth, but that's only likely in the case of lock bits, and that would almost certainly be accompanied by massive corruption of data (unless it conveniently corrupts to locked soon after i start, corrupts to unlocked shortly before i stop, then corrupts to locked again once i restart, etc.)
<whitequark> huh, "conveniently corrupts"
<whitequark> sounds like a description of how government works.
cladamw [cladamw!~adamwang@host-222.80-43-115.dynamic.totalbb.net.tw] has joined #milkymist
Gurty` [Gurty`!~princess@ALyon-256-1-132-182.w90-14.abo.wanadoo.fr] has joined #milkymist
elldekaa [elldekaa!~hyviquel@abo-168-129-68.bdx.modulonet.fr] has joined #milkymist
xiangfu [xiangfu!~xiangfu@fidelio.qi-hardware.com] has joined #milkymist
nataraj [nataraj!~user@122.165.223.135] has joined #milkymist
<nataraj> Hi
<nataraj> Is this an arm arch device?
<xiangfu> nataraj, Hi this channel is talk about Milkymist SOC. :)
Martoni [Martoni!~chatzilla@ip-167-165.evhr.net] has joined #milkymist
Martoni [Martoni!~chatzilla@ip-167-165.evhr.net] has joined #milkymist
r33p [r33p!~rep@bon31-2-89-85-157-97.dsl.sta.abo.bbox.fr] has joined #milkymist
elldekaa [elldekaa!~hyviquel@dhcp-193-50-240-190.eduroam.univ-ubs.fr] has joined #milkymist
cladamw [cladamw!~adamwang@host-222.80-43-115.dynamic.totalbb.net.tw] has joined #milkymist
togi [togi!~yur@83.250.142.73] has joined #milkymist
<lekernel> wpwrak: self.tx/self.rx are meant to be accessed from the outside
<lekernel> .eq means assign
<lekernel> I couldn't find a better word... "set" clashes with set(), "assign" is too long, "ass" would be the target of easy jokes
<wpwrak> ah, so the first argument of If is the condition, the rest the body. i see. good old basic's "let" ?
<wpwrak> or, better english, "be" ;-)
kristianpaul [kristianpaul!~kristianp@cl-498.udi-01.br.sixxs.net] has joined #milkymist
kristianpaul [kristianpaul!~kristianp@unaffiliated/kristianpaul] has joined #milkymist
<lekernel> "be" looks like a good candidate
<wpwrak> oh, and don't you want to get rid of that silly size on constants ? does it actually ever make sense to have that ?
<lekernel> in many places, no
<lekernel> constant sizes are appropriate, however, when concatenating bit vectors together
<wpwrak> oh, totally
<wpwrak> but that's maybe 1-5% of all uses :)
cladamw [cladamw!~adamwang@host-222.80-43-115.dynamic.totalbb.net.tw] has joined #milkymist
<xiangfu> the ftpd bug maybe relate to the yaffs filesystem. error on create file.
<wpwrak> xiangfu: did you check the file name it's trying to use ? maybe there is something invalid in there
<xiangfu> wpwrak, no. it not happen on particular file.
<wpwrak> you mean it happens on all files ?
<xiangfu> wpwrak, different files. when upload files 'parallel' the error will happen.
sh4rm4 [sh4rm4!~sh4rm@gateway/tor-sasl/sh4rm4] has joined #milkymist
lekernel [lekernel!~lekernel@g226058219.adsl.alicedsl.de] has joined #milkymist
<wpwrak> "parallel" = you have more than one file open at a time ?
<xiangfu> I found it failed when do 'yaffs_create_obj'
<xiangfu> wpwrak, 'parallel' mean. copy 4 ~ 10 files in GUI ftp application. then it will open more ftp connection upload parallel.
<xiangfu> copy one file is rarely give error.
<xiangfu> wpwrak, another thing: the '/ssd' is 644 not 755 :(
<wpwrak> aah, i see
<xiangfu> wpwrak, you can check you m1. the '/ssd' is 644. I try to add one line after mount /ssd it will give 755
<xiangfu> have to add chmod after 'mount("/dev/flash5", "/ssd", "yaffs",.........'
<lekernel> mkdir("/ssd", 0777);
<lekernel> no, you should NOT add chmod
<lekernel> but fix the bug in the first place
<lekernel> the RTEMS filesystem architecture is already an horrid, steaming pile of shit, please don't make it even worse
<lekernel> as in "let's duplicate the clumsy and buggy string manipulation code in every filesystem" and things like that
<xiangfu> lekernel, yes. fix the root cause.
<lekernel> btw, there's a hard limit of 4 (iirc) parallel FTP connections
<lekernel> if it refuses connections after that, it's expected
<xiangfu> 3
<xiangfu> the error is give is: Access failed: 550 Error creating file. (Berries_by_Orb9220.jpg)
<lekernel> but I wouldn't be surprised if there are races, the RTEMS filesystem architecture is actually designed to encourage race conditions (there are even some cases where it's impossible to fix them)
<xiangfu> 0777, I think it's mount make it change to 644.
<lekernel> that filesystem arch was probably designed by a 10-yo or someone like that... and still I know 10-yos who could do better
<xiangfu> I add three mkdir.. only /ssd give 644.
<lekernel> I see
<lekernel> well, have a look at the implementation of stat() in the YAFFS port
<xiangfu> hmm.. no far didn't see the message 'ycb_statvfs printf("%s\n", __func__); '
<lekernel> stat, not statvfs
wolfspraul [wolfspraul!~wolfsprau@p5B0AF7AE.dip.t-dialin.net] has joined #milkymist
topi` [topi`!foobar@host-62-220-235-64.fonet.fi] has joined #milkymist
<lekernel> fiberfestival submission sent ...
azonenberg [azonenberg!~azonenber@cpe-67-246-33-188.nycap.res.rr.com] has joined #milkymist
qi-bot [qi-bot!~qi-bot@turandot.qi-hardware.com] has joined #milkymist
mwalle [mwalle!~mw@services.serverraum.org] has joined #milkymist
aeris- [aeris-!~aerith@home.aerith.fr] has joined #milkymist
Martoni [Martoni!~chatzilla@ip-167-165.evhr.net] has joined #milkymist
cladamw [cladamw!~adamwang@host-222.80-43-115.dynamic.totalbb.net.tw] has joined #milkymist
qi-bot [qi-bot!~qi-bot@turandot.qi-hardware.com] has joined #milkymist
mwalle [mwalle!~mw@services.serverraum.org] has joined #milkymist
aeris- [aeris-!~aerith@home.aerith.fr] has joined #milkymist
elldekaa [elldekaa!~hyviquel@dhcp-193-50-240-190.eduroam.univ-ubs.fr] has joined #milkymist
<wpwrak> lekernel: celebration of seasonal diseases ? :)
<azonenberg> lekernel: Just out of curiosity (not that i'd do it, or have heard of anyone doing it)
<azonenberg> But is it possible to GPL a patent?
<azonenberg> iow, you invent some technology
<azonenberg> You patent it
<azonenberg> And then you issue an open license to all GPL'd projects
<azonenberg> but a non-GPL'd project can't legally use it without licensing
<azonenberg> basically a copyleft patent
<kristianpaul> if it copyleft why you patent it?
<azonenberg> The intetn would be to prevent proprietary software from implementing your idea
<azonenberg> so only free software is compatible
<azonenberg> I am not recommending it, just curious from a legal perspective if you guys think its even possible
<kristianpaul> i mean do you want recognition of your work trought the patent? or wand a fee and absulte itelectual pooperty control?
<kristianpaul> ah isee
<azonenberg> Basically ,the same way GPL means only GPL'd projects can use your *code*
<azonenberg> can you do the same thing with an idea
<azonenberg> nobody can implement your algorithm unless they GPL the code
<azonenberg> Again, i'm not recommending the practice
<azonenberg> Just wondering if it could even theoretically happen
<lekernel> the original GPL maybe not (it's based on copyright), but a similar system could be possible imo
<lars_> sure, if you own the patent you can define the conditions under which the patent is used
<azonenberg> lars_: thats what i was thinking
<wpwrak> afaik, there would always be the risk that you lose ownership of your patent
<azonenberg> so basically you patent it, then grant an open license to any open source project
<wpwrak> and the new owner wouldn't necessarily be bound by your licenses
<azonenberg> wpwrak: How would that work?
<kristianpaul> pantented but fee less i guess lars_ ?
<wpwrak> e.g., if you go bankrupt
<lars_> azonenberg: you sell it
<lekernel> patenting anything costs $10k and incredible amounts of time wastage due to paperwork, legalese and lawyers
<azonenberg> again, i dont think it's likely to happen
<azonenberg> wpwrak: easy, create a shell company or foundation that exists solely to oversee the patent
<kristianpaul> i hope dont :)
<azonenberg> and has no assets or liabilities
<lars_> there are opensource patent pools
<kristianpaul> yeah, creative commons tried..
<azonenberg> Personally i dont like copyleft
<azonenberg> i like permissive licenses
<lars_> which are itendent to be used when a opensource software is attacked with a patent to start a counter patent claim
<kristianpaul> azonenberg: cc0 :)
<azonenberg> so rather than patenting something i'd just publish it :p
<wpwrak> lars_: if you sell it, that would normally include contractual obligations. but if it's taken away from you, that strips many obligations
<lekernel> CC0 is just public domain no? why do they call it 'creative commons'?
<kristianpaul> azonenberg: publis it certainly is a better way to avoid soemboy patent it, but of course you still need to make lot of noise
<wpwrak> lars_: basically the extra obligations stay with the previous owner, and the new owner just gets the valuable item, to try to turn it into a profit
<kristianpaul> lekernel: because public domain in each country is a mess
<wpwrak> azonenberg: a company without assets wuold be even easier to destroy ;-)
<azonenberg> wpwrak: how?
<kristianpaul> lekernel: so creative commons try to stablish a common way to public domain something valid/reviewed in each country
<kristianpaul> same as the other cc licenses
<wpwrak> azonenberg: create any upset you want ;) poof, it runs out of money. remember, you can sue anyone at any time over even the most ludicrous things
<kristianpaul> thats why you usually use the reviewed cc lincese for your place
<kristianpaul> even when ie, eur uses cc by 3.0, colombia may just use upto 2.5 version of same license
<azonenberg> wpwrak: maybe
<kristianpaul> ah, lawyers..
<azonenberg> In any case i wasnt recommending the practice, or considering it feasible
<wpwrak> lekernel: PD isn't always free. e.g., some countries have what's called "public domain payant". anything that enters the public domain then requires royalties to some typically cultural organization
<azonenberg> more curious if it had been tried
<kristianpaul> azonenberg: still a patent so same dislike a copyrighted license like gps or other has, a patent well.. follow the principles..
<wpwrak> i would also consider publishing the safest approach. that way, you avoid creating "intellectual property" in the first place
<azonenberg> wpwrak: The only conceivable reason to do something like that
<azonenberg> woudl be if you want to, say, implement a file format with some novel feature in your open source project
<azonenberg> and prevent m$ products from ever being compatible
<azonenberg> while allowing open code to interoperate
<azonenberg> It sounds like something stallman would try if he had half the chance
<kristianpaul> of course if you like the idea of making something extremely free to use
<wpwrak> besides, with every patent you get, you add one to the statistics that show how successful the patent system is
<azonenberg> It's an offensive technique, not defensive like PDing
<kristianpaul> well i dont see why you concern about some one implement it in propietary way
<wpwrak> plus you hand some amount of money to the enemy
<kristianpaul> free well :)
<azonenberg> kristianpaul: Personally i'd just BSD the code and to heck with anyone else
<azonenberg> if they implement it, i dont care
<azonenberg> but knowing stallman and his offensive strategies, it seems like he'd try that
<azonenberg> even the GPL is an offensive license
<azonenberg> not a defensive one
<wpwrak> why on earth would you want prevent MS from implementing it ? if it's something you want to see widely used, the more sources the merrier
<azonenberg> wpwrak: The intention would be to become the dominant application in that field
<azonenberg> and force m$ out of the market
<azonenberg> because they cannot interoperate
<wpwrak> would you rather have MS and their buddies force some competing format into the market, heavily guarded by their patents ?
<azonenberg> The hypothetical application would be an office format
<wpwrak> dream on ;-)
<azonenberg> that somehow became dominant
<kristianpaul> wpwrak: indeed
<azonenberg> but couldn't be implemented by proprietary applications
<azonenberg> Again it seems unrealistic
<azonenberg> but knowing the FSF nutjobs i suspect if the opportunity ever arose they'd try something like that
<kristianpaul> azonenberg: for you initial question gpl is not like it is, interionally i think, i mean you need to be offensive if want to defend your position
<wpwrak> so each time, say, a state entity would ask fir bids, all the proprietary guys would shout bloody murder because it's a discriminatory standard. very good :)
<kristianpaul> azonenberg: actually if that patent you think about exist, will be somethin or even more complicated that reading the glpv3 or such :)
<azonenberg> kristianpaul: its offensive because it was designed by the FSF
<azonenberg> and stallman doesnt want to compete with proprietary software
<wpwrak> hmm, do you really know the FSF legal guys ? :)
<azonenberg> he wants to destroy it
<azonenberg> i know stallman well enough
<azonenberg> i've had a few f2f discussions with him about his offensive tactics
<kristianpaul> wpwrak: (legal)even monglen? guess i dont either
<azonenberg> causing splits in the community (vs *bsd etc)
<wpwrak> who won ? ;-)
<wpwrak> kristianpaul: yeah, for example
<azonenberg> We called a halt at his stop lol
<wpwrak> ;-))
<azonenberg> (we were driving somewhere)
<kristianpaul> lol
<azonenberg> no clear victor
<azonenberg> neither was able to convince the other of anything
<azonenberg> Not that i was surprised at atll
<kristianpaul> he, you had a bad experience with rms, that used to happen ;)
<kristianpaul> so better ignore him and keep doing you nice work :)
<kristianpaul> really
<kristianpaul> mix social behavior with licenses is not a good thing
<azonenberg> I know, just saying i got the impression pretty quickly he wants to destroy proprietary software by any means possible
<azonenberg> while i'd rather compete with it in a free market and win because i have a superior product
<azonenberg> or lose, because mine is inferior, in which case they deserve to win
<azonenberg> in other news i think i am finally figuring out how i am going to handle the interconnect in that multicore SoC i've been designing
<roh> the moment where you think more about licenses than good technical designs you have already list.
<azonenberg> i wanted something with support for DMA and out-of-order request handling which wishbone didnt seem to do
<roh> irgh. s/list/lost/g
<azonenberg> my new design has a lot in common with infiniband
<wpwrak> xiangfu: hehe, that media wall somehow reminds me of the series "The Prisoner" ;-) 1960-70 style mystery tech
<azonenberg> switched fabric supporting multiple simultaneous connections
<roh> licenses do not save you from using common sense and rethink what it is you want to archieve by using some specific one.
<azonenberg> and out of order request handling
<azonenberg> TCP-esque retransmission if a packet is dropped due to congestion
<azonenberg> my system will tentatively have 16 ports on the switch between the three CPU cores, RAM, and various high-speed peripherals like the cameras
<roh> an yes.. ignore rms... he is kind of a troll when it comes to hw.
<azonenberg> Sound like a reasonable design?
<roh> sounds scalable
<azonenberg> roh: Good, because while my current design is 3 cores i want to do 5 in the future :p
<azonenberg> on an xc6slx75
<azonenberg> each packet is 32 bits address and 64 of data plus a read/write flag (in read mode, data is ignored)
<azonenberg> times 200 MHz is 12.5 Gbps per port
<azonenberg> Which conveniently is exactly the bandwidth of 16 bit DDR2 800
<roh> i dont know about details.. i am not that deep into hdl design myself. but i know archs and what you propose doesnt sound unreasonable
<azonenberg> hmm, i wonder if thats a coincidence :p
<azonenberg> Since the RAM has a whole switch port dedicated to itself
<azonenberg> But yeah, i basically want a switched fabric network rather than a bus
<azonenberg> and something that supports out of order delivery of data
<roh> isnt pci-e similar to that? or is that really still a bus?
<azonenberg> so for example if core 0 is busy talking to the camera and core 1 wants data from RAM, an outstnading core0 request from RAM should not block the core1 request
<azonenberg> roh: Similar, but pcie is meant for off-chip use
<azonenberg> multiple high-speed serial lanes
<azonenberg> this is an on-chip bus
<azonenberg> although i suppose i could potentially add future support for a serialized version that does off-chip communication
<roh> sure
<azonenberg> I dont know if pcie is switched or still a bus though
<azonenberg> i know infiniband is
<azonenberg> and this bus has comparable bandwidth in this implemenataion
<azonenberg> DDR 4x infiniband is 16 Gbps and my bus is 12.5 (one way)
<roh> my impression was that all 'bus' type interfaces got serialized to save pins, differential for data integtrity and peer based (only 2 communicating partys per 'bus) nowadays
<azonenberg> the difference is that i'm parallel on-chip and infiniband is serial off-chip
<kristianpaul> oh you have already 3 cores working with tool chain and libc supported included in your soc?
<azonenberg> kristianpaul: I havent implemented the cores fully yet, most of the design is done
<kristianpaul> is this work published some where? :)
<azonenberg> I wanted to design the architecture fully first
<kristianpaul> i see
<kristianpaul> loooks nice
<azonenberg> it's heterogeneous
<azonenberg> somehwat like the Cell
<azonenberg> one mips-like core for non-parallel code
<azonenberg> fast and pipelined but no FPU
<azonenberg> and then two highly parallel DSPs
<azonenberg> 2-way superscalar, 16-way barrel
aeris- [aeris-!~aerith@home.aerith.fr] has joined #milkymist
<azonenberg> i.e. 16 hardware threads and i issue two instructions from one thread every clock
<azonenberg> per core
<azonenberg> The DSPs are a completely custom archiecture, i havent even begun the ISA yet
<azonenberg> been working on microarchitecture
<azonenberg> but it will be 64 bit VLIW with two 32-bit instruction fields
<azonenberg> only one of every execution unit but you can issue instructions to any two every clock
<azonenberg> i have the register file implemented already, it's 4 reads and two writes every clock
<azonenberg> all reads, and all writes, must be within the same two 16 bit windows
<azonenberg> 32 register*
<azonenberg> read and write windows need not be the same
<azonenberg> in fact they will usually be shifted by a bit due to pipelining
<azonenberg> Right now the current focus is the interconnect fabric
<azonenberg> once i get that designed i'm going to work on the CPUs more
<azonenberg> i was thinknig a shared bus and even maybe using wishbone for a while but it didnt seem like it'd play nicely with multiple cores and DMA
<azonenberg> and specifically request reordering
<azonenberg> Which is going to be a must if i want the system to scale
* kristianpaul remenebers a xmos video
<wpwrak> reordering of requests from the same source ? or just global reordering ?
<wpwrak> and what will that beast do when it's finished ?
<azonenberg> wpwrak: Flight control for a UAV my school's electronics club is building
<lekernel> roh: you could have stopped at "troll" :)
<azonenberg> including onboard machine vision and path planning
<azonenberg> i'm shooting for peak performance of 800 mflops in the dual DSP version and 1600 in the quad
<azonenberg> I also am considering building a laptop around a slightly modified version of the same SoC
<azonenberg> Since i've wanted to make a full custom laptop for a while and i think this thing will have the juice to do so
<azonenberg> i'd probably use the quad core model in the laptop
<lekernel> with a FPGA?
<azonenberg> lekernel: yes
<azonenberg> i want a full custom CPU + GPU
<azonenberg> and MOSIS is a little pricey
<azonenberg> The goal of the project would be to build a laptop starting with the RTL and going all the way up to the mobo, case, and operating system + apps
<wpwrak> azonenberg: oh, drones for iran. nice ;-)
<azonenberg> wpwrak: Lol, this one isnt going to be able to stray that far off course
<azonenberg> it communicates with the base station by 802.11n
<azonenberg> and will force-land immediately if signal is lost
<azonenberg> this is an indoor micro-uav
<azonenberg> And strictly research oriented
<lekernel> azonenberg: what does it need compute power for?
<wpwrak> heh, that's what they all say :)
<azonenberg> lekernel: It's autonomous
<lekernel> Kalman filters? radar processing?
<azonenberg> actually it uses a kinect for 3d position sensing
<azonenberg> my roommate already has some pretty nice algorithms done up for point cloud processing
<azonenberg> then yes, a kalman filter
<lekernel> azonenberg: do you know how the kinect works btw?
<azonenberg> identifying interesting targets in video feeds
<azonenberg> lekernel: yeah, stereo on a grid of projected IR points
<azonenberg> That's good enough, all it has to do is find walls and such
<azonenberg> we originally considered LIDAR but it was way too expensive
<lekernel> it's only expensive if you buy the pre-built modules, no?
<azonenberg> kinect gave slightly less good data for much less cost
<azonenberg> lol, homebrewing would be nice
<azonenberg> but is beyond our time budget
<lekernel> the Roomba has a cheap mass-produced LIDAR for example
<azonenberg> the main difficult part of hte project is the flight planning algorithms
<azonenberg> lekernel: 2D?
<azonenberg> i'm pretty sure its only 1
<azonenberg> remember this is a UAV, we're working in 3-space here
<lekernel> I don't know
<azonenberg> I'm not on that team anyway
<azonenberg> i'm doing the SoC
<lekernel> but it's the same basic technology, and adding another scanning axis doesn't justify a 100-1000x price increase imo
<azonenberg> including the DSP and various support stuff like the camera controller
<azonenberg> and hardware JPEG compression unit
<azonenberg> oh, and a hardware driver for the kinect including associated usb stuff
<lekernel> you could try a SAR too :)
<azonenberg> Better position sensing would be nice, but the data we got off the kinect looked adequate
<azonenberg> again, all it's needed for is seeing whether we're headed for a door or a wall
<azonenberg> and registering that data with our existing data to build a map
<azonenberg> i do agree that lidars are way more expensive than they need to be
<azonenberg> same thing with, say, semiconductor fab equipment
<azonenberg> but i dont have time to reinvent EVERYTHING ;)
<lekernel> how's that DIY fab going, btw?
<azonenberg> Put on hold for exams, just finishing up
<lekernel> sounds more interesting to me than kinect "hacks" that everyone does :-P
<azonenberg> The choice to use a kinect wasnt mine
<azonenberg> it was the flight control team
<azonenberg> we have like 15 people on the project now
<azonenberg> Re fab, i have some very interesting ideas
<azonenberg> The first is fooling around with packaging, i want to try making a FCBGA
<azonenberg> just with some simple wiring patterns, no active compnents
<azonenberg> to test if i can actually package chips i make
<azonenberg> second is lithography related
<azonenberg> i want to build a fairly complex mask with a lot of differnet designs on it
<azonenberg> send it out to laserlab to be fabbed
<azonenberg> they'll give me a 10x16 inch piece of film at 8000DPI which equals 12.5um design rules and 3.175um lambda
<azonenberg> which comes out to quite a few 2" contact masks and 2cm projection masks
<azonenberg> i should be able to easily hit single-micron design rules with optical reduction of a 12.5 or 25um mask
<azonenberg> The optics say that i can even hit 350nm
<azonenberg> not sure if my dust / photoresist / developer / etch combination will let me go quite that far
<azonenberg> 500 to 750 might be reachable
<kristianpaul> is this going to be impleneted in the spartan3 and the boarb you showed the other at #homecmos ?
<azonenberg> At that point i could start thinking pretty seriously about transistor fab
<azonenberg> kristianpaul: the SoC? No lol
<azonenberg> that was a 50k gate chip
<azonenberg> i'm using the XC6SLX45
<kristianpaul> yeah :)
<kristianpaul> Nice
<azonenberg> Current estimates say i can fit the tri-core version there
<azonenberg> and the quad in the -75
<azonenberg> the 5-core*
<kristianpaul> own board or generic kit?
<azonenberg> Right now i'm using the Atlys dev board
<azonenberg> i expect to do my own in the future
<azonenberg> one of the things i've been working on on the side is developing a BGA soldering process
<azonenberg> i cant handle csg324 due to the 0.8mm pitch but fgg484 or ftg256 should be doable on affordable design rules (6 mil trace/space, 4 layers, no filled vias, no blind/buried vias)
<azonenberg> maybe 6 layers depending on how thigns go
<kristianpaul> you said case too,is any one working on this?
<azonenberg> kristianpaul: the UAV or the laptop?
<azonenberg> The laptop is just me and a lower priority project
<azonenberg> i'm quite handy with a milling machine tyvm
<kristianpaul> laptop :), yes
<azonenberg> The laptop is just me
<kristianpaul> but the UVa will use this spartan6..
<kristianpaul> UVA*
<azonenberg> my plan for the case is TiG welded 1/4" aluminum plate
<kristianpaul> what about power management?
<azonenberg> The UAV may use the atlys or a custom board
<azonenberg> we're not sure yet
<azonenberg> I havent though that far haead
<azonenberg> most likely going to be built around a pair of 5 Ah 11.2v li-po packs
<lekernel> azonenberg: what's so special about the atlys btw? everyone's using that
<lekernel> hdmi? ddr3?
<lekernel> something else?
<lekernel> hmm, it's ddr2 actually
<azonenberg> lekernel: Cheap :p
<lekernel> $349.00?
<azonenberg> 199
<azonenberg> for educational
<azonenberg> it was the only spartan6 board i saw that had a decently large fpga (lx45), a decent amount of memory (128MB), and a decent selection of peripherals
<kristianpaul> how do you program it?
<kristianpaul> can you tried in linux with urjtag?
<kristianpaul> s/can/had
<azonenberg> they have an 8051 based adapter built in but i use the xilinx platform cable
<azonenberg> which runs fine on my debian and ubuntu system after i installed an open source driver
<kristianpaul> not bad
elldekaa [elldekaa!~hyviquel@dhcp-193-50-240-190.eduroam.univ-ubs.fr] has joined #milkymist
<lekernel> still with impact?
<azonenberg> lekernel: yes
<azonenberg> i want to build my own programmer at some point
<azonenberg> much cheaper, probably based on PIC32 and a small CPLD or FPGA
<azonenberg> target price point $50 or less
<azonenberg> will include a 12V Vpp generator
<azonenberg> and should be able to do xilinx JTAG, atmel in-circuit programming, and microchip ICSP
<azonenberg> if not more
<azonenberg> cross platform libusb based command line interface
<azonenberg> and lol
<azonenberg> i just wrote libjpeg instead of libus...
<kristianpaul> is not that a bus pirate? :)
<kristianpaul> well sort of
<lekernel> why reinvent urjtag?
<lekernel> and modern chips do not have Vpp :)
<azonenberg> lekernel: bus pirates lack Vpp generators
<azonenberg> and most PICs still need high voltage on MCLR#
<azonenberg> even if the real Vpp is charge-pumped onboard
<azonenberg> they use it as a "time to program" indicator
<kristianpaul> PICs, yeah..
<kristianpaul> azonenberg: there is a expansion boar for vpp tought i havent bouht it yet..
<kristianpaul> bought*
<kristianpaul> but there are low voltage version of PICs that allow vpp to 5v, but i still dont source it at least for 18F familly :)
* kristianpaul looks if urjtag can program its PICs with aditional hw..
<lekernel> my comment was about "modern chips", and I believe it is still correct =]
<kristianpaul> xD
<wpwrak> aren't most recent PICs low-voltage programmable ? (i'm avoiding the word "modern" here as well :)
<azonenberg> wpwrak: low voltage programmable, yes, but i think you have to set LVP in the config bits
<azonenberg> they need HV the first time out of the box
<azonenberg> unless i'm mistaken
<azonenberg> the project is still a long-term todo, i havent really read the programming specs etc yet
<wpwrak> i think it's the other way around: they support LVP out of the box but you can turn it off - and then you need high Vpp to turn it back on again
<azonenberg> Hmm, interesting
<azonenberg> i'll have to check that
<azonenberg> i've always used default settings which i think is high Vpp
<wpwrak> i think you lose quite a few pins for this luxury, though
<azonenberg> on the low-pin-count parts, yes
<azonenberg> but not the ones with 64 or 100 pins
<wpwrak> isn't it the same number on both ?
<azonenberg> proprortionally, i mean
<azonenberg> i think LVP uses one extra pin on the programmer, which i've never hooked up in any of my circuits
<wpwrak> (PIC with LOTS seems a little weird anyway. at some point, the cost of the core becomes negligible. so you could as well use something decent)
<wpwrak> s/LOTS/LOTS of pins/
<azonenberg> wpwrak: i've never used a lot of the cheap 8-bit ones
<azonenberg> most of what i've used lately is pic32s
<azonenberg> which are completely different
<azonenberg> the ICSP is just JTAG muxed onto less pins
<wpwrak> ok :)
<azonenberg> And the core *is* something decent
<azonenberg> mips m4k
<kristianpaul> wpwrak: yes some came witht this vpp bit already programed from factory others dont :|
<kristianpaul> I buyed a M1 EDK when was thinking in PIC32s :)
<wpwrak> yeah, M1 is so much more fun than a PIG :)
<lars_> and it even has an built-in avr ;)
<wpwrak> and you could probably synthesize half a dozen more, with all the space that's still free :)
<kristianpaul> yes of course
qwebirc34735 [qwebirc34735!45819f32@gateway/web/freenode/ip.69.129.159.50] has joined #milkymist
<lars_> but would probably timings would become critical
<lekernel> if they don't have to communicate, there's no problem with timing
<lekernel> you can simply build one structure that meets timing, and replicate + translate it
<lekernel> the S6 architecture is homogenous
<kristianpaul> how do you actually (in commands) replicate and translate it?
<kristianpaul> hackign bitstream?
<lekernel> you can do that, or build a NMC macro
<lars_> yeah, but don't you want SMP AVRs? :/
<wpwrak> why not NUMA ? :)
<lars_> or NUMA
<wpwrak> or maybe synthesize a few VAX CPUs and make a VMS cluster :)
<lars_> hm, 150km and UTMS is already breaking down
<lars_> km/h
<wpwrak> balancing the laptop on the steering wheel ? :)
<lars_> hh
<kristianpaul> he
sh4rm4 [sh4rm4!~sh4rm@gateway/tor-sasl/sh4rm4] has joined #milkymist
<lars_> wpwrak: balancing it on the table of the train
<wpwrak> ah, safer ;-)
<lars_> he, next train station, next bunch of emails arrives
<lars_> and this ride is going to last another 5 hours :/
<wpwrak> transsibirian ?
<kristianpaul> at 150km/h !
<kristianpaul> visiting russia,cool :)
<lars_> transgermany
<lars_> all from the south all up to the north
<wpwrak> ah, visiting the CNC machines :)
<lars_> right
<kristianpaul> hmm, wait, why 5hrs germany is not that long..
<kristianpaul> i guess to much stops, but at 150km/h !
<lars_> i think it is actually faster sometimes
<lars_> it = the train
<lars_> and the distance is over 700 km
<lars_> but i think the route is not a straight line
<wpwrak> i guess there may also be snow. isn't it that the german railways suffer catastrophic breakdown when there's snow ?
<lars_> mainly the berlin s-bahn
<wpwrak> aah. lekernel should like that then. he's very fond of delayed public transportation :)
<whitequark> wpwrak: why does he?
<lekernel> berlin s-bahn is actually quite OK when compared to the parisian RER
<lars_> wait for the winter ;)
<lekernel> and when it's not, I can use my car, which simply isn't possible amid the parisian traffic and paid parking lot thieves
<azonenberg> NUMA AVRs? Lol
<azonenberg> Reminds me of the time i was thinking of building a PIC32 cluster
<azonenberg> nice little blade maybe 1:10 scale of a 2U rack case
<azonenberg> make a little model rack
elldekaa [elldekaa!~hyviquel@abo-168-129-68.bdx.modulonet.fr] has joined #milkymist
kilae [kilae!~chatzilla@catv-161-018.tbwil.ch] has joined #milkymist
aeris- [aeris-!~aerith@home.aerith.fr] has joined #milkymist
kilae_ [kilae_!~chatzilla@catv-161-018.tbwil.ch] has joined #milkymist
<GitHub69> [migen] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/migen/commit/7774ace7e1f4e5bf594edb5305687386f43e7847
<GitHub69> [migen/master] README: structure + FHDL description - Sebastien Bourdeauducq
antgreen [antgreen!~user@70.50.66.140] has joined #milkymist
cjdavis [cjdavis!~cjdavis@cpe-71-67-99-208.cinci.res.rr.com] has joined #milkymist
<GitHub177> [migen] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/migen/commit/d9dc604c99984355634898a939f9e9f2cf99ee83
<GitHub177> [migen/master] README: Core Logic, Bus, Bank - Sebastien Bourdeauducq
wolfspraul [wolfspraul!~wolfsprau@p5B0AF7AE.dip.t-dialin.net] has joined #milkymist
<GitHub156> [migen] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/migen/commit/47d321cd75fb3ed8c21ecf587063cba646898b38
<GitHub156> [migen/master] README: Flow - Sebastien Bourdeauducq