its a 97 chevy cavalier with a 2.2 i replaced the motor the block is out of a 98 2.2 i put the 97 head on it now its getting non stop misfire codes from no 1 and no 3 cylinders and runs like total crap theres a rattling noise sounds like upper end but i could be wrong but its only when the engines under heavy accelleration i put new piston rings on the lower end and thats all i did i checked the rod and main bearings and they looked fine im out of options and hopefully someone knows what to do!!!!