I'm trying to reverse engineer some boards that have multiple layers, but can't figure out any way of discovering which layer certain vias go to. Unfortunately I can't destroy the board with corrosives, since it's my only one. How can I find out how deep they go?
You would probably need some expensive scanning equipment. It is possible you could get old equipment that is being discarded but that would be rather difficult. Then you would probably need to write software to handle the output of the equipment as you most likely wouldn't have a license for the accompaning software unless you nabbed a complete system intact.
If you were willing to forgo saving the original PCB you could do this. Basically carefully note component positions, remove the parts, scan both sides, clean up scans with image tool, then repeat removing layers of the board as you go... sounds quite error prone to me.
It is also possible you could figure out a few by checking exhaustivly if some groups of pins go to the same layer... you could probably assume those were power/ground pins.
Another thing that may help is if the board is designed to support boundary scan testing. If I understand correctly you might be able to use that to automate detecting connecitons between chips if not which layer they are on. And here is a PDF on that topic.