Embedding Ethics in Computer Architecture

Although a university may teach a formal course in ethics and professional issues, not all students will engage with the notion of ethics. This paper discusses how ethics can be embedded in a computer architecture course by means of asides; for example, when teaching memory access times, the notion of over-clocking PCs to enhance their speed is introduced. I ask students to discuss whether it is ethical to operate a computer beyond its design specifications. They often say "yes" until I ask them whether they would over-clock the computer controlling a nuclear reactor. This topic introduces the notion of a designer's obligation to the community and the need to appreciate failure modes. Embedding ethical and professional considerations in this way has many advantages. It is an excellent teaching tool because it acts as a buffer between slices of dense academic material and allows students to relax. It reinforces the material being taught by providing real-world examples. Most importantly, it introduces professional considerations into topics such as computer buses and their protocols