Why AMD's superior compatibility could end -- and it's all your fault

I see it the other way around. I think that AMD wanted to keep the pricing so low that they decided to keep the socket for 4 years without caring about customers upgrading their cpus for new ones. How many people upgrade the cpu without a mobo anyway?

I would say it is costly for AMD to keep the same socket for too long. After certain amount of time, backward compatibility becomes a design limitation. Workaround (as opposed to new design from the ground up) could be costly in terms of money and time.
 
I see it the other way around. I think that AMD wanted to keep the pricing so low that they decided to keep the socket for 4 years without caring about customers upgrading their cpus for new ones. How many people upgrade the cpu without a mobo anyway?

I would say it is costly for AMD to keep the same socket for too long. After certain amount of time, backward compatibility becomes a design limitation. Workaround (as opposed to new design from the ground up) could be costly in terms of money and time.
3 years isn't that long. it's actually cheaper for them to just make a few chipset changes and keep the same socket, they (and their partners) just won't profit that much from selling newer boards. the Zen architecture was built with around 4 generations planned out from the start which should help with the compatibility a lot.
AMD is currently trying really hard to gain market share and being more consumer friendly is a good way of doing it.
 
Are you suggesting that someone who wants to buy a Core i5 will settle for a Core i3 because they also need a new motherboard? So being upsold isn't a thing?

Intel only needs to make a single chipset, why do they make multiple chipsets? Why do they double dip when it comes to overclocking?
At first I was ready to argue about Intel's decision only being about money but your point especially about the difference between the "H" and "Z" chipsets (especially compared to AMD's approach) is quite telling. I will say since I'm down to 2 PCs (FX-8320E and i5-3570k ATM) I want the Mobo to work out of the box since I don't have tons of spare CPUs around. AMD's support is nice for current owners looking to upgrade and when I buy into Ryzen I'll still be picking up the newest boards that won't need bios updates.
 
I have been an AMD fan for years, I like the idea of being able to update to better CPU and Memory on the MOBO that I currently have and like. In my humble opinion, changing out the MOBO with the CPU and the Memory is a bit of a pain. It IS like Christmas morning when you get to open up all that new gear, but the countless hours of OS setup and updating the system still sucks! Just let me pop in a faster CPU and better memory and I am rocking a new rig in lees than an hour! That is what makes all the difference!
 
I am curious why there is no "fallback code" for CPU firmware. Like, if the bios cant determine your CPU because you need a firmware update, it could run in a fallback mode that all CPUs for the socket would support that would allow you to boot into the BIOS to do an update. Seems it would make this a lot easier to fix.

Because it is the other way around. CPUs execute code, they don't store it. Now, in theory, if you designed the architecture of the CPU to support a 'standard' code that allowed them to run just enough to update the motherboard to the 'full' code, that might work - but you would essentially need to dedicate die real estate to having a 'mini-CPU' inside of the actual CPU, that only a fraction of user would ever utilize - and then only for a few minutes.

ASUS' Flashback is a much better and more workable option.
I agree that the ASUS option is one of the best.

CPUs do execute code; however, subsequent generations of CPUs typically add instructions that supplement the set of instructions available to prior generation CPUs. The newer generations of CPUs still support all of the instructions of the prior generations. This means that a fallback mode is possible without taking die space for a dedicated "fallback CPU mode". In fact, that fallback mode is built into the CPU without AMD doing anything special.

If you want the instruction set of the new CPU to be fully supported, then you need the new BIOS. A MB BIOS typically only looks for a CPU identifier. If they see a known identifier, then they allow the board to run with the new CPU. If they do not see that identifier, then they have the capability to fall back to a sort of "safe mode" where they will run in a fashion that is safe WRT voltages, etc, for the CPU - if the MB maker designs the MB to do so.

So how can I say this? Because I went through it before. I bought a prior generation MB with a next generation CPU. I was aware of this issue, and I knew there were MBs out there that did not support the CPU without the BIOS update first. So, I contacted a MB maker and asked them whether their MB would boot without the requisite update that was required to fully enable the MB for the new CPU. They said it would. So I bought the MB and the CPU and it worked as advertised, then I updated the BIOS.

This brings me to the fact, at least as I see it, that AMD is taking flak for this is bogus. It is the MB makers who should be taking flak for this since almost all BIOS are engineered to work specifically with that motherboard by the MB maker. I'll speculate that some MB makers WANT to sell new MBs and could care less whether their AM4 MB supports subsequent generations of AM4 compatible parts if it sells new MBs for them - and I expect that this is part of the reason ASUS charges a premium for the ability to flash without a CPU installed. I'll go so far as to speculate that some MB makers specifically engineer their MBs not to boot without the BIOS recognizing the CPUID so that they will sell new MBs.

As I see it, AMD is playing the hero in this by providing the update kits, and I would expect that there are certain MB makers out there that do not like this practice because it keeps them from selling MBs. This is a business world and capitalism reigns meaning selling stuff is the way capitalism procreates, and some companies out there do not care how they line their pockets with the money of their customers as long as they do. However, my experience is that there are some companies that care about their customers because they know that if they treat their customers well, they are likely to keep coming back.

Another course AMD could take is to require that there be a fallback mode, but this would not be in the spirit of their recently announced policy of transparency and pledge of no control over how and where manufacturers use their parts unlike other "chip makers."

So, I would suggest this to anyone contemplating buying a next gen CPU with a prior gen MB. Contact the tech support for the MB before you buy it and ask them if that particular MB will boot with the new CPU without a BIOS update. Though tech support could be clueless or worse, lie, my bet is that they will tell the truth because doing so is good customer relations and treating their customers well means that those same customers may buy from them again in the future.
 
Last edited:
I would say it is costly for AMD to keep the same socket for too long. After certain amount of time, backward compatibility becomes a design limitation. Workaround (as opposed to new design from the ground up) could be costly in terms of money and time.
Not really. If the socket is electrically compatible, there is no reason that it cannot run newer parts; where the design limitations come in is that the older chipsets do not support newer features.
 
There is already a mini CPU inside every CPU/APU AMD has sold in the last 5 years or so. It's an ARM Cortex A5 used for PSP, the equivalent of Intel's ME.
Didn't say they didn't already do that for certain things - I said it would be stupid to do that for this problem that only affects a small numbers of users, for an hour at most, when solutions like ASUS Flashback exist (which is probably just a cheap microcontroller on the MOBO designed just to load new BIOS versions from the removable storage).

CPU real estate is valuable, and it should go to transistors that will be regularly used for the life of the CPU, especially when you can put a cheaper microcontroller on the motherboard to accomplish the same task.
 
I don't really understand the point of this article.
It talks about intel trying to be friendly to its customers and AMD "maybe" going to the same type of tyrrany?

I'm sorry but the answer is no, yes people will always be upset about something... but the reality is that there is no way to make everyone happy. The MAJORITY of consumers are very happy with AMD keeping the same socket and chipset across multiple generations.
I for one am someone who ran the same motherboard with a Athlon 64 x2, Phenom II x3 710 and then Phenom II x6 1045T for literally 7 years before upgrading to the new AM3+ platform...

The APU platform on the other hand was a disaster for anyone who tried to use it, because FM1 was only for a single generation... FM2 for "2 generations" (really just 1 and then a refresh) and then FM2+ only worked for Steamroller again (but was backwards compatible) and then there was a single Excavator part (Athlon X4 845) and that also required a bios update.

The real issue with the APU's not working in certain boards is not the fault of AMD but the fault of the motherboard vendors not certifying what works with what. I plan to keep my B350 board and get a 2700x and then a Zen 2 next year also... No need to upgrade the board (which is time consuming, usually requires reinstalling your OS) until something comes out that I cannot use with it.
Overall it shows that people who have boards that are compatible for longer periods of time translate into more CPU sales across your install base.

I'm actually upset about AMD never releasing Excavator APU's for FM2+ as they originally promised... having only the 845 really killed the whole platform and unfortunately for AMD there is no reason to buy Excavator chips on AM4 boards since Ryzen is so good and so affordable.
 
I am curious why there is no "fallback code" for CPU firmware. Like, if the bios cant determine your CPU because you need a firmware update, it could run in a fallback mode that all CPUs for the socket would support that would allow you to boot into the BIOS to do an update. Seems it would make this a lot easier to fix.
That's actually a great idea and it should exist.
 
I see it the other way around. I think that AMD wanted to keep the pricing so low that they decided to keep the socket for 4 years without caring about customers upgrading their cpus for new ones. How many people upgrade the cpu without a mobo anyway?

I would say it is costly for AMD to keep the same socket for too long. After certain amount of time, backward compatibility becomes a design limitation. Workaround (as opposed to new design from the ground up) could be costly in terms of money and time.
Not really, CPU sockets haven't changed much in the last decade.
With Phenom II they contained both DDR2 and DDR3 memory controllers, this immensely helped the sale of Phenom II chips as most people I knew with them were running on DDR2 setups.
Also as DDR2 was cheaper, and the performance difference wasn't that high.... well it made sense to stick with DDR2 until DDR3 prices went down.
I know that today many people are still wishing that Ryzen had DDR3 backwards compatibility support due to cheap DDR3 in a market of over-expensive DDR4.
 
How many people upgrade the cpu without a mobo anyway?

Anyone who wants more performance and doesn't want to buy another Windows license. A CPU upgrade would be pretty inexpensive for that aspect. Also, no other boat load of new hardware needed either. Imagine going from a Ryzen 3 first gen to a Ryzen 7 second gen? I'm pretty sure that boost would be nice. Especially think of the fact that maybe when they first bought the system it was all they could afford (or need) but then things change and they don't want to replace everything.
 
Anyone who wants more performance and doesn't want to buy another Windows license. A CPU upgrade would be pretty inexpensive for that aspect. Also, no other boat load of new hardware needed either. Imagine going from a Ryzen 3 first gen to a Ryzen 7 second gen? I'm pretty sure that boost would be nice. Especially think of the fact that maybe when they first bought the system it was all they could afford (or need) but then things change and they don't want to replace everything.
Very true, the reality is that being able to upgrade your CPU only has a huge impact on users upgrading over time.
Buying a new motherboard + possibly new ram + reinstalling/rebuying windows = far smaller market, vs those who are buying a drop in upgrade.
 
I am curious why there is no "fallback code" for CPU firmware. Like, if the bios cant determine your CPU because you need a firmware update, it could run in a fallback mode that all CPUs for the socket would support that would allow you to boot into the BIOS to do an update. Seems it would make this a lot easier to fix.

Because the BIOS *has* to know and recognise the ID of the CPU to instruct the VRM to deliver the correct voltage to the CPU. Different models equal different voltages and current specs, so unless there are parameters that allow running *all* CPU in, say, a minimum performance mode to update the BIOS, that's quite tough to achieve. This would have to be backward compatible with all the CPUs that could potentially be used on this platform. Maybe that's possible, but you could not modify older CPU to comply with this new hardware characteristic. Only my thoughts...
 
Because the BIOS *has* to know and recognise the ID of the CPU to instruct the VRM to deliver the correct voltage to the CPU. Different models equal different voltages and current specs, so unless there are parameters that allow running *all* CPU in, say, a minimum performance mode to update the BIOS, that's quite tough to achieve. This would have to be backward compatible with all the CPUs that could potentially be used on this platform. Maybe that's possible, but you could not modify older CPU to comply with this new hardware characteristic. Only my thoughts...
Older CPU's would already be recognized by the BIOS. It would only need to be in newer CPU's and in BIOS updates.
 
I would have thought that the solution is obvious. Instead of mailing people a cheap old CPU in order to be able to update the BIOS on an old motherboard... have all the future chips designed so that they boot up in a state in which they will work on the very oldest motherboard designed to support the very first chip with that pinout. So the newest chip is the "cheap old chip".

After the BIOS is flashed, then we can think about supporting the chip's up-to-date features.

There may be some complicated technical reasons why this can't be done, perhaps because newer motherboards will depend on previously unassigned pins in unforeseen ways, or because allowing some newer features to be turned off would add too much overhead.

Another possibility is that second-generation motherboards might not be designed to work with first-generation chips... so a third-generation chip that boots as a first-generation chip wouldn't work... but, of course, if AMD was gong to make its chips that way, motherboard companies would not make this mistake making their motherboards.
 
I don’t get it. Say with a complete new AMD pair you have to check to make sure they are compatible first, if you already have a mobo that will work with a newer series cpu, don’t you just update the bios before you pull it to upgrade? I know there are differing levels of knowledge but if you are setting up your own pc you should first have this kind of knowledge. Don’t change the transmission in your car if you don’t know what you are doing then cry to the repair shop about it. Just like installing w7 with a ryzen just find out how to install it like I did, because although the board manufacturer may support it they may not give you any help with the install. Collusion with ms to try to get rid of w7.
 
Are you suggesting that someone who wants to buy a Core i5 will settle for a Core i3 because they also need a new motherboard? So being upsold isn't a thing?

Intel only needs to make a single chipset, why do they make multiple chipsets? Why do they double dip when it comes to overclocking?
We both agree that Intel is in this to maximize revenue and profit.

Yes, I would absolutely suggest that there are more people who are willing and able to pay for just a Core i5 than there are people who are willing and able to pay for a Core i5 + a mobo. (and there are again more who willing and able to pay, but who might not be willing to pay further additional costs & inconveniences associated with having to swap out the mobo vs. just swapping CPUs.)

What portion of those caught in the difference end up buying an i3, or perhaps more likely not upgrading at all, I don't know. I also concede that there are also customers who are willing to be upsold. Again there I do not know how the relative sizes of these segments compare, or of the portion willing to be upsold, whether they could have been sold an i7 instead for greater net profit to Intel vs. sharing with a 3rd party mobo mfr.

My larger point in all this is not that I have intel's market data, or that I have run all the various modeling techniques to figure this out for them (among the things I got paid to do in a prior life), but merely to suggest the economic analysis hinted at in this article is very shallow and not taking into account a lot of reasons why as a purely profit maximization strategy, it very likely could be counter-productive. Throwing barriers to sale in front of your own product in the form of required sales of someone else's product, even when there's a modest kickback involved as there is here, is rarely a recipe for volume or profit maximization.

It is surely about the money in some way shape or form. In this case I suspect that money is somewhere else in the bigger puzzle.
 
We both agree that Intel is in this to maximize revenue and profit.

Yes, I would absolutely suggest that there are more people who are willing and able to pay for just a Core i5 than there are people who are willing and able to pay for a Core i5 + a mobo. (and there are again more who willing and able to pay, but who might not be willing to pay further additional costs & inconveniences associated with having to swap out the mobo vs. just swapping CPUs.)

What portion of those caught in the difference end up buying an i3, or perhaps more likely not upgrading at all, I don't know. I also concede that there are also customers who are willing to be upsold. Again there I do not know how the relative sizes of these segments compare, or of the portion willing to be upsold, whether they could have been sold an i7 instead for greater net profit to Intel vs. sharing with a 3rd party mobo mfr.

My larger point in all this is not that I have intel's market data, or that I have run all the various modeling techniques to figure this out for them (among the things I got paid to do in a prior life), but merely to suggest the economic analysis hinted at in this article is very shallow and not taking into account a lot of reasons why as a purely profit maximization strategy, it very likely could be counter-productive. Throwing barriers to sale in front of your own product in the form of required sales of someone else's product, even when there's a modest kickback involved as there is here, is rarely a recipe for volume or profit maximization.

It is surely about the money in some way shape or form. In this case I suspect that money is somewhere else in the bigger puzzle.
Because they are selling the chipset's and they can guarantee x business to each mobo vendor by doing this. So basically they are working together to make additional profits. The whole idea is that they keep making the max profit per sale, vs looking at the whole market and people who want to upgrade. AMD's path benefits AMD more than any mobo vendors who would have to release BIOS updates for old motherboards that they don't sell anymore. But at the same time motherboard vendors can spend less in R&D to build motherboards and keep them on the shelves for longer due to the long time of compatibility.

The other thing that the article doesn't take into account is the updates required from Sandy to Ivy, and the fact that with Haswell to Broadwell.... there was no Broadwell. It came out in only 2 very high priced SKU's that had 0% benefit over Haswell chips due to lower clockspeeds. Then with Skylake to Kaby Lake, not all motherboards were compatible and they dropped desktop Xeons fitting into the same socket/chipset and once again segmented that into yet another motherboard to stop people like me from buying Xeon's to put into desktop boards for less than their "consumer" chips with iGPU's that I didn't have any use for.
So basically each board/socket working for "2 generations" only really happened one time, with Sandy & Ivy and since then its been very counter productive. Also the need to buy a z series chipset to overclock increases the overall cost of any Intel platform, this is part of their profit margins too, both for board vendors and for Intel who is selling the chipsets themselves and has some price control limits for the vendors.
So basically Intel creates a convoluted system where they force everyone into doing whatever they want, and AMD has an open system with natural competition resulting in innovation and lower prices.
 
I am curious why there is no "fallback code" for CPU firmware. Like, if the bios cant determine your CPU because you need a firmware update, it could run in a fallback mode that all CPUs for the socket would support that would allow you to boot into the BIOS to do an update. Seems it would make this a lot easier to fix.

Because the BIOS *has* to know and recognise the ID of the CPU to instruct the VRM to deliver the correct voltage to the CPU. Different models equal different voltages and current specs, so unless there are parameters that allow running *all* CPU in, say, a minimum performance mode to update the BIOS, that's quite tough to achieve. This would have to be backward compatible with all the CPUs that could potentially be used on this platform. Maybe that's possible, but you could not modify older CPU to comply with this new hardware characteristic. Only my thoughts...

This is completely wrong. The CPU could have the parameters written somewhere in its ROM. That's just a few bytes. Send the data to BIOS on boot and BIOS will know everything about the CPU it needs to know. That should be enough for the compatibility.
 
A very similar method to how updating home theater receivers works.
Makes real sense and I've tweeted AMD about this just now.
 
Back