The use of machine learning for coverage closure has been explored in a number of publications. The reported use of machine learning for coverage closure has typically been for sub-blocks with coverage models that can be filled quickly. In this paper we report positive results achieved using machine learning to close functional coverage on a complete large and complex block with a difficult coverage model. As a result of this work the Infineon Automotive Microcontroller Division is using machine learning in the verification of complex designs. We believe the techniques described here have real potential for practical application. The paper describes the machine learning techniques used, including reasons that these techniques were chosen. It describes how to structure the verification in order to make it amenable to the use of these techniques. The results of a large, representative experiment are given.