AtMega328 basics

1: Does the chip have its own onboard oscillator?? or am I gonna need a 20MHz crystal on my PCB?

The chip has its own onboard oscillator, however:

  1. Its maximum value is 8 MHz
  2. The fuses have to be reconfigured to use it. By default the fuses are set to expect an external oscillator (16 MHz on an Arduino). You cannot change the fuses through regular program downloading...you have to use the ISP header.

2: Diode cct protection: is this onboard on the chip, or am I going to need 50 diodes in my circuit?

I assume you mean the ESD protection diodes? They are on the chip.

--
The Aussie Shield: breakout all 28 pins to quick-connect terminals