This document discusses timing control in Verilog HDL. It describes three types of timing control: delay based, event based, and level sensitive. Delay based timing uses the # symbol to specify delays for procedural statements. Event based timing uses the @ symbol to trigger statements based on events. Level sensitive timing uses the wait statement. The document provides examples of implementing timing control for different cases.