Recently I noticed that my 100Mb link between my ASA and my 2801 router always ran very slow, after doing a show interface X on my routers interface I noticed a large number of CRC errors. CRC errors add a performance hit so I thought that would be a good place to start.
In my case the cause of the CRC errors was a mismatch in the duplex settings, the ASA was set to auto and router was set to full.
I found that changing the duplex setting to match (either full or auto) and doing a clear counters X stopped the CRC errors and gave a big performance bust.
On futher research I found the CRC errors also occur if one end is set to full and the other is set to half.
So if you are getting CRC errors first make sure your duplex settings match after that it may be the cable.