Reading papers to learn? Lucky you!

Writing an outstanding paper on hardware and software co-design is definitely not easy these days. Most of the time, if a paper can define a problem well (no need to be very theoretical or challenging), propose a seemingly logical solution (does not have to be mathematically fancy), provides relevant experimental data (no need for big improvements), make claims judiciously (avoid excessive groundless claims), then it has 95% chance to win the BEST PAPER AWARD at the probability of 0.9.

Reading papers to learn? Lucky you!

Software design V.S. hardware design

Having been away from digital circuit design for two years, I recently started writing Verilog code again because of a research project. This reminded me once again how different writing hardware is from writing software, though hardware engineers and software engineers are loosely attributed as “coders” in layman’s eyes.

1. Hardware design CAD tools are hard to obtain. If you are not affiliated with an academia institute or relevant business entity, you almost have nothing to start with. However, for software developers, almost everything in need (OS, compilers, runtime, IDE) is free and can be downloaded easily.

2. Hardware design community is much more closed than the software community. IP cores, even those simple ones, are mostly not free. Even if you find an IP core free of charge, you would not risk pulling it into your own design because of potential bugs. Linux OS to software industry is like Intel CPU to hardware industry, however the former is open sourced and the latter is heavily guarded (you cannot even obtain a datasheet without being a close partner of Intel).

3. When you encounter a software problem, 99% of time your solution is a Google search away. However for hardware design issues, it is always better to consult an experienced guru. But if you are a self-taught engineer, where to look for this guru?

4. It is easier to gain a sense of achievement doing software than doing hardware. Writing some software code and hit the run button, you see feedback instantly; however in hardware design, the only thing you can do is simulation (and you have been reminded 1000 times that simulation lies). Even if your design turns into silicon (after months?), it is always clumsy to demo, but your software engineer peer have been demo-ing her fancy website to people for a long time.

Carpet Cleaner

Today I rented a carpet cleaner machine to do a thorough cleaning of my apartment carpet which was moderately stained with 9 months of use. The price for rental is quite good, $25 for a machine selling at $400+. yet the detergent is somewhat expensive.

The machine is bulky (not that bulky as I originally thought), sturdy, and very delicately made. I was so amazed at its ability to clean – it really worked! Quite interesting is that, although made in China, this masterpiece of modern industry finds its widest presence in the US. Another proof that China is making so many kinds of products that its people almost never use.