A Survey on Generative Diffusion Model