azonenberg | Taking a brief break from my MEMS work to try a slightly different microscale project | 01:17 |
---|---|---|
azonenberg | Mounting of a 5-ball CSP chip (200um ball size, insanely small pitch) using my projection rig to make pads for it | 01:18 |
azonenberg | i cant do a PCB with that kind of pitch using contact litho :P | 01:18 |
azonenberg | i'd need like 75 micron traces | 01:18 |
kristianpaul | holegrid looks defiant | 02:45 |
kristianpaul | azonenberg: http://en.qi-hardware.com/wiki/File:Cat_gds_imported_in_toped.png | 02:49 |
kristianpaul | too dark :/ | 02:52 |
kristianpaul | is up to wolfspraul make it colored ;) | 02:52 |
bart416 | azonenberg, http://www.coultersmithing.com/forums/viewtopic.php?f=10&t=172 | 18:49 |
Action: azonenberg_work looks up | 18:54 | |
azonenberg_work | Building a profilometer... doable? | 18:57 |
azonenberg_work | Thinking of piezo scanning | 18:58 |
azonenberg_work | Ooh, interesting | 18:59 |
azonenberg_work | I plan to go and make a serious home SEM at some point | 18:59 |
azonenberg_work | And wow, these guys made homebrew FESEMs? | 19:03 |
azonenberg_work | I think i'd prefer a simple tungsten filament source | 19:04 |
azonenberg_work | Also, very very interesting | 19:06 |
azonenberg_work | Looks like FIBs are possible to homebrew o_O | 19:06 |
azonenberg_work | now THAT would be awesome | 19:06 |
azonenberg_work | Do imaging and alignment at low mag | 19:08 |
azonenberg_work | low voltage* | 19:08 |
azonenberg_work | then bump up the beam current to do cutting | 19:08 |
azonenberg_work | imagine patterning metal layers with that :) | 19:08 |
bart416 | I like the idea of hijacking a vidicon tube to do it | 19:16 |
azonenberg_work | Lol | 19:24 |
azonenberg_work | My design will be using a homebrew tungsten source and an everhart-thornley detector | 19:26 |
azonenberg_work | run through a fast ADC, an FPGA or MCU to do USB, then stream to a PC | 19:26 |
bart416 | For measurement instruments you really need fpgas sadly :( | 19:30 |
bart416 | I tried using microcontrollers | 19:30 |
bart416 | The only thing that gets the job done is something like an arm cortex a8 | 19:31 |
azonenberg_work | If not an FPGA i'd use a PIC32 | 19:41 |
azonenberg_work | 80 mhz fully pipelined mips32 | 19:41 |
nathan7 | Hi azo | 19:45 |
nathan7 | azonenberg_work* | 19:45 |
lekernel | what's wrong with fpga's? | 19:48 |
bart416 | meh, not fast enough | 19:52 |
bart416 | 80 MHz is too slow | 19:52 |
bart416 | To do DSP on a signal sampled at roughly 100 MSa/s (what you want for this sort of thing at the very least) you need at least 1 GHz to process it and throw it somewhere | 19:53 |
azonenberg_work | lekernel: Nothing wrong with them, except i dont have it yet | 19:54 |
azonenberg_work | bart416: For slow SEM scanning, actually, i was envisioning long integration times | 19:54 |
azonenberg_work | so maybe tens to hundreds of KHz | 19:54 |
bart416 | You want over sampling to avoid noise | 19:55 |
bart416 | Serious over sampling | 19:55 |
bart416 | If you have enough data you can use a good algorithm to remove or at least reduce the noise | 19:55 |
bart416 | If you only have the required samples it becomes harder | 19:55 |
lekernel | whoa, this CRT-based SEM is awesome!! | 19:56 |
bart416 | Even averaging 10 images is better than anything else | 19:56 |
azonenberg_work | bart416: I actually wanted to use a long sampling time on the ADC as a first-level filter | 20:03 |
azonenberg_work | And then do a 5-10 sample line average | 20:03 |
bart416 | Increasing sample time often reduces precision of the ADC | 20:04 |
azonenberg_work | I would be using a 10-bit 1 MHz one if i used the PIC32 | 20:04 |
bart416 | Keep in mind the S/H mechanism is only reliable for a small timeframe | 20:04 |
bart416 | The less you relly on S/H the better | 20:04 |
azonenberg_work | Buffer a single scanline in the PIC | 20:04 |
azonenberg_work | Average five or ten of them | 20:04 |
azonenberg_work | then DMA to the USB controller while repeating the process | 20:05 |
azonenberg_work | Assuming i used 1 MHz, 1920 samples wide, i'd need 3840 bytes of temp storage | 20:06 |
azonenberg_work | 260 scanlines per second | 20:06 |
azonenberg_work | times 1080 is 4.15 seconds per frame | 20:07 |
bart416 | Your system also does not allow you to reduce artifacts over several scanlines | 20:07 |
azonenberg_work | I've gotten good results with line averaging on real SEMs | 20:07 |
azonenberg_work | I could do lower resolution scanning and upsample initially for aiming and focusing, then high-res capture | 20:08 |
bart416 | anyway 'nite | 20:08 |
azonenberg_work | Normally on a real SEM i do several lines averaged for maybe 30-60 seconds per frame when doing an image for analysis | 20:08 |
azonenberg_work | i think 10 lines average, which actually puts it around the same sampling rate as i would be using | 20:08 |
azonenberg_work | i.e. 1 mhz horizontal scan frequency | 20:08 |
bart416 | Yeah, but that's fine equipment with good noise prevention methods put in place | 20:09 |
bart416 | Good luck doing that at home | 20:09 |
azonenberg_work | So i'll get a noisier image | 20:09 |
bart416 | The 50 or 60 Hz noise alone will already be considerable | 20:09 |
azonenberg_work | but i dont need *higher* sampling frequencies than them | 20:09 |
azonenberg_work | And yes, it will be | 20:09 |
azonenberg_work | There are a couple of options for that | 20:09 |
azonenberg_work | One is to try to eliminate it by sampling only during peaks | 20:10 |
azonenberg_work | *zero crossings | 20:10 |
azonenberg_work | phase lock onto the AC signal and turn off the sampling during the, say, 1/2 of the period that the signal is strong | 20:10 |
azonenberg_work | There are several implementations possible, easiest is probably to run the AC through a step-down transformer (possibly the same one that my PSU runs off) and sample that | 20:11 |
bart416 | anyway 'nite | 20:12 |
azonenberg_work | run into a comparator and check if abs(x) is above some K | 20:12 |
azonenberg_work | if so, pause sampling | 20:12 |
azonenberg_work | and ttyl | 20:12 |
--- Thu Jul 28 2011 | 00:00 |
Generated by irclog2html.py 2.9.2 by Marius Gedminas - find it at mg.pov.lt!