A review of microprocessor research and teaching at the Digital Systems Laboratory, Stanford University, USA