While your FPGA does not appear to be full, one concern is the 496 latches you have in your design. There should be 0. FPGA's don't have latches, and if you have them in the utilization report it is usually because of poor synchronous descriptions - I assume you did not intentionally add them.
Besides making simulation and actual real world behaviour not match, it may be throwing off the place and route because it is trying to build the latches out of the resources it does have. You really need to address the latch situation first. There is no point in trying to optimize the implementation of poor RTL.
Go through your synthesis reports to see if it reports inferred latches or poor synchronous descriptions or other similar warnings.
r.b.
thank you for your answer
the utilization summary from synthesis reports as shown below:
Selected Device : 3s500efg320-4
Number of Slices: 2902 out of 4656 62%
Number of Slice Flip Flops: 1161 out of 9312 12%
Number of 4 input LUTs: 5190 out of 9312 55%
Number used as logic: 5189
Number used as Shift registers: 1
Number of IOs: 33
Number of bonded IOBs: 33 out of 232 14%
IOB Flip Flops: 32
Number of BRAMs: 9 out of 20 45%
Number of MULT18X18SIOs: 17 out of 20 85%
Number of GCLKs: 17 out of 24 70%
as shown above there is no latch found but when make implementation process for my design the latch is appear and error found in place and route process as shown below :
Place:120 - There were not enough sites to place all selected components.
Some of these failures can be circumvented by using an alternate algorithm (though it may take longer run time). If
you would like to enable this algorithm please set the environment variable XIL_PAR_ENABLE_LEGALIZER to 1 and try
again
1-how can overcame this problem ?
1-can you take me simple example to make latch in VHDL code ?
2-how can reduce number of latch in my design?