Controller - a chip that controls the disk. Its tasks include:
--- Accepting commands from the software, such as
--- Controlling the arm motion.
--- Detecting and correcting errors.
--- Converting blocks read from memory into serial bit streams
--- Sometimes buffering and caching sectors.
--- Discovering bad sectors and remapping them.