For the second part of your question, the answer is "yes". All RAID functions specify using identical drives. Striping different size drives lowers the performance to the lowest common denominator. Larger drives will have a higher average seek time (assuming same rotational speed.) Although what you suggest is doable, most will not recommend it or support it.
And, for the final part of your question, response performance of the first drive will be negatively affected by the lower speed second drive. Again it's doable, but most will not recommend or support this. You are opening yourself up to errors as well. You are better off using asynchronous mirroring between arrays where the second array has lower cost and speed drives.
This was first published in November 2005