Go to the Xilinx web site and download their WebPack. Within this tool chain is a simulator which can handle VHDL. It will have some limitations and you will have to pretend to be targetting a Xilinx part, but it should work for learning purposes.
Also, this website list a couple of freeware tools at least a couple can do VHDL.