Compatible with what?
68000, 68020, 68030, 68030+68882, 68040, 68060 or PPC
It's a 060 thread and I have mentioned 68060 repeatedly.
"Most software has already been patched up to work on the 68060."
if you want compatibility with macs they are now using intel processors.
How would you like me to differentiate between the different mac models in the future, so that in an 060 thread when all the conversation is about 060 you won't get confused that we might be talking about a PPC/X86/X64.
Does faster execution speed break compatibility?
It shouldn't, but it would be something that would only turn up during testing.
Cache breaks compatibility but if you go with unified cache with snooping, self modifying code is even possible (to a certain extent : you have to take into account the instruction prefetch and the pipeline depth).
Adding snooping to detect self modifying code will make it incompatible. How are you going to run software that overwrites itself in ram but keeps executing from cache?
Due to the way Exec detects CPU, you can have a core with 68000 exception frame and '020 user instructions (long branches, bitfields, 64-bit MUL/DIV and extra EAs).
If you think that is acceptable to base a design on that knowledge then I hope you're never allowed to influence an 060 in FPGA design.