Denoising of image is a very crucial step which should retain fine details but should remove noise. Making the difference between noise and actual edge related data is very difficult. NLM filter helps to make a differentiation between image data and noise data. Its weight function decides the weightage of the neighboring pixel depending upon the similarity with the pixel to process. It helps to retain the edges and avoid it from smoothening. This paper discusses the implementation of NLM filter using hardware platform Spartan 6. After implementaion of this on FPGA, not only denoise the image but preseve edges and there is a tremendous saving in time compared to its matlab implementation. Denoised image performance is calculated using various objective metrics such as MSE, PSNR, SSIM, PFOM etc. FPGA implementation shows clearly the advntages over its matlab implementation.