I'm curious what conditions limit the maximum clock frequency for the LPC82x family.
When setting up the PLL, I made a mistake and accidentally ran the core at 60MHz (I forgot to set the SYSAHBCLKDIV to 2) and the chip ran fine through all my testing (although I thought it odd that the SystemCoreClock reported at 60Mhz instead of the 30MHz that I thought it was using.
I set up tasks based on the SysTick and they all came out to the correct task timing if I left the SystemCoreClock at 60MHz, but everything worked quite well, so I proceeded.
Once I figured out the error of my ways, I retried the testing at 72MHz and 30Mhz and saw no noticeable difference in performance other than my idle task percentage went up a little at 72MHz and down a lot at 30MHz.
If I tried to run at 84MHz, I hit a hard fault as soon as the PLL configuration was complete (before entering main), so the chip definitely has limitations, but they seem to be drastically higher than the data sheet suggests.
I'm asking this question of the hardware engineers at NXP so they can provide information on the environmental, peripheral, electrical, etc. conditions that dictated the system clock limit being specified at 30MHz. If I understand these conditions, I may be able to make a data-driven and justifiable decision to operate the chip at a higher frequency in this application (which has a very narrow supply voltage and temperature range), giving a lot more overhead in the idle task.
At the time I learned of my error, I was using the following peripherals:
MRT
ROMDIV
GPIO
ADC
I am feeding the chip with 2.515V (2.5V nominal), with 10uF of bulk capacitance, using (2) 100nF bypass capacitors near the chip.
I have 2.048V on VREFP, bypassed with a 100nF and 2.2uF capacitor.
I'm operating with the chip temperature (from IR) at 28°C.
I am also planning to use the SCT and UART. I will update this post once I have testing data for them.