I have a Small STM32 Nucleo board where the on-board ST-Link debugger has an 8mhz crystal for the debugging microcontroller. That microcontroller is set up to output its MASTER clock, in other words it outputs the 8Mhz to the other microcontroller which is the one for the user. So the user also has an 8Mhz master clock. Aside from lower parts count are there any other pros and cons for this setup versus each mcu having its own independent clock source.
I can think of two other benefits:
- Possible power consumption reduction - this depends heavily on the chips used and the layout. In some cases at least you will save power because the distribution of the clock takes less energy than the seconds oscillator circuit. If the clock line is long and has a high capacity or the frequency of the clock is too high, it might be the other way round. On the STM32F1xx the internal oscillator would take a huge (for my products) amount of current, so it was a much better solution to distribute a different clock and use that in the F1xx.
- No clock worries on asynchronous communication. If your controllers run from the same clock, the deviations will be the same for both controllers, so a communication like UART will not face the troubles of deviating clocks (especially over temperature) which would allow the use of a lower cost clock source.
A con might be, that you are dependent on the clock settings of the other controller, so you might end up with some issues if you change the clock settings and forget to adapt the settings in the slave controller. So you might loose a bit of flexibility.