Back in undergrad, I used LTSpice to simulate and design a single unit of memory, I believe at the nanometer scale. It certainly has its quirks and can be frustrating to use, but I was one of the few people who were actually able to complete the project and get an A. It was actually quite fun.