Why Carmakers Can’t Transition to Newer Chips
jalopnik.com
jalopnik.com
Some things to emphasize:
OEMs (GM, Ford, Toyota, VW, etc) do not design components, and they do not want to. They design specifications for components, and then get suppliers to bid. This is great for efficiency in established ecosystems, not great for agility.
To my knowledge, GM did not cancel any chip orders, because GM itself had no chip orders (this is oversimplified). The suppliers cancelled chip orders.
For a 1st tier supplier to move to a different process/chip would also be difficult, because they do the same thing the OEM does - supply a specification, and get 2nd/3rd tier suppliers to bid on it.
A wholesale migration to a modern architecture is risky and costly.
Smaller process/feature size on a wafer is believed to be less resilient, for example to heat and vibration.
The risk to large automakers is that something goes wrong and they have to do a recall. The risk to up and comers (Tesla) is failure to grow. Also, Tesla has a small product line and absolute loads of cash.
If you were going to design a new car electrical architecture from scratch today, you would have something like a 40-60V system with a centralized controller (or pair of controllers in a safety redundant configuration).
Even with a largely cleansheet design, Tesla uses 12V because of the sheer ubiquity of 12V components.
If you sit on someone’s shoulders and forget that they’re doing most of the work, you can be shocked all you want when they collapse out from under you but nobody on the ground is going to have any sympathy at all for you.
I’ve worked for software subcontractors and it’s always frustrating when the customer is so excited about all the things we’re going to accomplish together, all the plans that hinge on our mutual success, and isn’t it so wonderful that they’re getting such a great deal on it too?
Meanwhile we’re slowly going broke because we can’t make money on that sweetheart deal loaded with scope creep not spelled out properly in the contracts. Good luck with those plans when we go under.
Ajax Fasteners where a small manufacturer in the name of Division of Labour, and when they went into receivership, it took down Australia's entire car industry. Let me repeat - Australia no longer has a car industry.
Holy crap: https://www.abc.net.au/worldtoday/content/2006/s1719988.htm
You'd think the car companies could have just bought the manufacturing assets of the supplier if it was this critical (that's assuming they weren't looking for a back door excuse to shut down their own Australian production, that is).
https://en.wikipedia.org/wiki/Automotive_industry_in_Austral...
A good rule of thumb I have is if a politician is there at a ribbon cutting, and talks about jobs, then it's nothing more than vote buying in disguise.
... but the Australian car industry was nothing more than rent seeking anyway, so it was a good thing we stopped funding a non-utility.
Actually this point is something im curious about - it seems to be redundant to have a 3X redundant processor ..probably placed in different places on the car body for safety.
Would that not be superior to current architecture..while being able to tap into the most modern chip architecture of the day ?
I'm not a car engineer and dont understand CANBUS, etc. But just wondering if this is indeed possible.
Airplanes need 3x redundancy on safety critical components, because they carry a lot of people and are not fail safe when they are in the air. Cars can generally stop safely.
As far as changing architectures - think about safety critical loops and real time computing. Some processes should never be pre-empted.
"Brake-by-wire is used in all common hybrid and electric vehicles produced since 1998 including all Toyota, Ford, and General Motors Electric and hybrid models."
"Three main types of redundancy usually exist in a brake-by-wire system:
Redundant sensors in safety critical components such as the brake pedal.
Redundant copies of some signals that are of particular safety importance such as displacement and force measurements of the brake pedal copied by multiple processors in the pedal interface unit.
Redundant hardware to perform important processing tasks such as multiple processors for the ECU"
"The highest potential risk for brake system failure has proven to be the Brake Control System software. Recurring failures have occurred in over 200 cases documented in NTSB documents. Because each manufacturer guards the confidentiality of their system design and software, there is no independent validation of the systems.As of 2016 the NTSB has not directly investigated passenger car and light truck brake-by-wire vehicle accidents, and the manufacturers have taken the position that their vehicles are completely safe, and that all reported accidents are the result of "driver error"."
How can it not be "purely" brake by wire, if, when depressing the brake pedal, the friction brakes are not always triggered?
If electronics decide not to apply hydraulic force when everything is going fine, that there must be a potential failure mode where they ignore the pedal inappropriately.
Can you explain further?
The hardware doesn't spend that much time in high rad environment, it's not a sat or a rover.
That makes me think that as companies retire legacy gas/diesel products they'll probably switch to an automotive PoE standard. Allows you to to power the window lift regulator, door locks, and read the switches off a single 20 gauge cable. Weld a fully assembled door assembly to the body and than plug in a single cable. What's not to like?
What makes that voltage a better trade off?
6 and 12 V electric systems in vehicles came about because lead-acid batteries made sense in this application, and cetpar. a higher voltage lead-acid battery is overall costlier to manufacture, because it contains more individual cells. Another big thing is that there are many switches and relays in a car, and those often switch significant power. E.g. the light switch for the headlights has to deal with around 200 Watts total for incandescent/halogen headlights, indicators are like 15 Watt each front and back, the starter motor requires a tremendous amount of power, and has a very robust power switch built into it.
All of those switches become much more expensive when you increase the voltage. DC at 12 V and sizable currents is something you can reliably switch with mechanical contacts without costs going through the roof.
Being able to use 48 V for everything in a car is more or less dependent on using silicon switches for everything, not something that was possible in the past. The reason why legacy ICE cars (all ICE cars are now legacy) stick with 12 V is because everything is 12 V, and everything would have to change for the new voltage.
Note: These were never sold in the North American Market, but they're extremely common in Australia, South Africa, etc.
Naturally, I can't find any links to the info...
Just built a car without a single relay. I used PMUs (basically boxes of mosfets and current sensors AFAIK).
Wouldn't a more important question be how does the failure mode change?
With AC, the arc will self-extinguish a half-cycle after the switch opens. With DC there is no cycle, and contacts can be completely vaporised in tens of milliseconds.
Commodity switching components are usually rated "30V DC, 250V AC" for this reason.
It is possible to design switches so that even DC arcs self-extinguish, but the result is expensive and not as reliable as one could wish.
If cars had been invented after 1980, they would probably use solid-state switches except for the very high current circuits such as the starter solenoid and headlights. (Transistors were around a lot earlier than that, but engineers are sensibly cautious about new technologies.)
Edit: To answer your question directly: no. Cost is prime.
You could also just switch the HV (400V+) bus directly down to 48/60V as all the high current devices motor/ac/power steering etc run off the HV bus and you would just be left with lights, entertainment and servos on the low voltage side. The 12V battery is probably a bit silly when you have a 50KWH main battery and 97% switching conversion efficiency regulators and I am guessing it may disappear in the next 10 years
I meant to the customer or owner, over the normal lifetime of the vehicle, not to corporate accountants that translate pennies into millions of dollars.
"More expensive" presumably is a small amount per car; the average new car in the US is over $40K.
So to minise weight/wire size, use the highest voltage possible (and thus the lowest current). Losses are purely related to current (I^2*R) so the incentive is to squeezee the current (so needing to increases the voltage).
There's a reason the high-voltage overheads are 432 kilovolts (or more); 10 amps at 432kV = 4.3MW (MegaWatts) while 10amps from a stock AC outlet is 1.2KW (KiloWatts). The wire thickness required for both is the same (though the HV wires need to be better insulated, out of the way of crazy fools etc).
So a 60V system for a car carries 1/5 the current of a 12v system, and the wires can have 1/5 the cross-sectional area.
(yes, I know there are caveats when it comes to AC).
Wire guage follows a 10log10 of ohms per 1000ft, relative to 0.1 ohms per 1000ft:
0ga .. 0.1 ohms per 1000 ft
10ga .. 1.0 ohms per 1000 ft
20ga .. 10 ohms per 1000 ft
30ga .. 100 ohms per 1000 ft
http://www.interfacebus.com/AWG-table-of-different-wire-gaug...
Nitpick: the wire as a whole includes insulation, which technically does need to be thicker at high voltage (though at 40-60V, and maybe even at 40-60kV, it's probably dominated by tolerances for erosion and abrasion and such).
High voltage power lines use air, which is actually a fairly good insulator per se, but has the problem that wires tend to pass through it on their way to a short circuit if not well-restrained.
At 12V, we are just talking about 6mA, where you can feel the electricity but it should not be hurting too much.
I'm an electrical engineer working in an automotive related field.
I have no doubt that your company and all the other big automakers are running the numbers and trying to weigh those risks and costs with the risks and costs of not updating.
Given that the chipmakers and supply chain experts are not making rosy predictions for things to drastically improve in the next 12 months or longer, I wonder if the balance is shifting towards taking action.
I can't find a public source, but some actions are being taken. Bear in mind that any major shifts would happen in a new product, that is, something 5-7 years out.
Is it that the component specification+acquisition cycle you describe is optimized to take as long as the development cycle of a new car?
Tesla is valued as a growth/tech company. As long as people believe in their growth, they get more cash.
I don't personally understand how Tesla hasn't had more problems with their apparently uncontrolled engineering changes. At least part of it is customer enthusiasm for the product papering over any drawbacks.
It's not that GM can't make changes like this, it's that GM WON'T make changes like this.
All of this is, again, solely my own opinion.
It's that nobody cares and the media doesn't cover it. A friend of mine-- his Tesla has broken down a dozen times and he still happily pre-ordered the cyber truck.
My 10-year-old Honda has never had any work done to it other than maintenance-- but that doesnt make the news either.
https://www.sec.gov/ix?doc=/Archives/edgar/data/1318605/0000...
"On July 16, 2021, we issued a notice of redemption to the holders of the 2025 Notes informing the holders that we will redeem the notes in full in August 2021 at a redemption price equal to 102.65% of outstanding principal amount, plus accrued and unpaid interest, if any."
Maybe they are simply more dynamic, have better on the fly testing, more flexible software to manage their production, are more vertically integrated and have thus more control over their production.
The argument that Tesla had significant more quality problems compared to others really doesn't hold much water today. The fact is Tesla had far fewer problems with batteries and drive trains while delivering far more EV. People love to complain about minor panel gaps (that most people don't ever notice anyway) and ignore that Tesla has a very good track record in terms of drive train and battery.
Compare Tesla Model 3 to Leaf or the Bold that came out at the same time and had far more problems. Leaf had to replace all early batteries and Bolt is being recalled right now.
Tesla should get credit for this, rather then just them being 'lucky' or that Tesla costumers are just willing to buy broken products (another myth that doesn't hold up).
In terms of drive train and battery Tesla worse failure by far was that they had to under-power a number of Model S produced in 2017. There has never been a large recall of Model 3 or Model Y.
Judging by the number of recalls, Tesla doesn't seem to be doing worse than GM, Porsche or Ford.
I would guess it’s a mixture of culture, cost, and scale. Culture wise, Tesla is extremely vertically integrated so that gives them a lot more breathing room. Cost wise, Tesla pretty much still sells car at a loss and relies heavily on carbon offset subsidies for income. When your revenue is established, trying to change margin or anything is probably much more difficult. Lastly, it’s scale, while Tesla is trying to catch up, the throughput of the major automakers is absolutely mind defying. The whole system is an oil machined that any sort of downtime is detrimental and difficult once the line is established. To put into perspective, Tesla “monumental” Q2 quarter shipped 200K cars or so. GM in the US only sold 200K per month.
I'm sorry but that is just straight up complete nonsense. Like seriously, you are directly disagreeing with public financial statements. We know exactly how much margin Tesla has, with and without carbon offset.
The simple fact is, Tesla has leading automotive margins even when you exclude any carbon credits.
Other OEM might have new platforms, but those platform are built with supplier and OEM themselves often do not make the detailed choices.
There are some great stories about SpaceX trying to source components this way and then finally ending up having to DIY.
What they found was that modern CAD and rapid prototyping made it easier than it used to be. Car companies would probably find the same thing, and have the luxury of doing it piecemeal at their own pace by gradually insourcing components in the order of necessity or benefit.
The “do not want to” part probably points to these companies being run by Ivy League MBAs educated in the 1990s and 2000s when this was conventional wisdom. The world is changing.
In aerospace cost didn't matter a lot and many things are custom built, even down to custom alloys and materials. Also the amount of planning, numerical analysis, simulation, preparation and especially testing is insane. Project timelines are sometimes more than a decade.
In automotive 'cost down' is the mantra and is often enough measured in fractions of cents. Almost nothing is customized and parts reused for different product lines whenever possible.
Come on, Really? So GM cancelled the orders for all the tings that the chips go in, and you want to spin that as "well technically GM did not cancel the chips"
That is bullshit.... The supply chain does not work like that, if GM cancels an order for 100,000 ECM's the supplier for the ECM is going to cancel their order for 100,000 chips for them to make the ECM for GM, it is unrealitic to believe anything else would happen.
Aircrafts historically been using high frequency AC, on both sides of the iron curtain (as both sides were copying each other.)
Old analog instruments actually benefited from AC availability.
And when SMPS were big, and heavy, transformers were much more reliable, and smaller (and they are still are, depending on the frequency)
3 phase power was also giving some interesting cost cutting benefits at the time
https://www.theverge.com/2021/7/26/22595060/tesla-chip-short...
See the Toyota accelerator-gate lawsuits. From https://en.wikipedia.org/wiki/2009%E2%80%932011_Toyota_vehic... :
> However, on October 24, 2013, a jury ruled against Toyota and found that unintended acceleration could have been caused due to deficiencies in the drive-by-wire throttle system or Electronic Throttle Control System (ETCS). Michael Barr of the Barr Group testified[30] that NASA had not been able to complete its examination of Toyota's ETCS and that Toyota did not follow best practices for real time life critical software, and that a single bit flip which can be caused by cosmic rays could cause unintended acceleration. As well, the run-time stack of the real-time operating system was not large enough and that it was possible for the stack to grow large enough to overwrite data that could cause unintended acceleration.[31][32] As a result, Toyota has entered into settlement talks with its plaintiffs.
Not following software best practices(i.e. ISO 26262) can expose your customers to unnecessary risk and leave your company vulnerable to lawsuits. Tesla may learn a very expensive lesson one day, or they may get lucky. Time will tell.
---
Depending on the design of your system and software stack, switching SoCs can be anywhere from a massive effort to a simple recompilation. Even switching architectures could be trivial for some components(i.e. a UI written in HTML5 making REST API calls) or a nightmare for others(ECU, ABS or other real-time algorithm written to use bare metal modules on the SoC without an OS providing abstraction).
Even if they had perfect readable John Carmack tier coding they still would have lost.
If/when Tesla gets hauled into court over its software flaws, any lack of adherence to best practices will make the company appear negligent.
Unless the car loses power and catches fire. Then you can't open the fucking doors [0].
[0] https://www.washingtonpost.com/business/2019/10/23/man-died-...
That's your opinion. They have shown data where the information from radar was of a lower quality than what their vision stack was providing (e.g. lack of vertical resolution). Watch their AI day webcast for examples. Their current vision-only stack has been validated with LIDAR ground-truth data.
The PCM (engine controller) that a university audit got access to had 12,000 global variables. Their conclusion was it was not possible to prove either way.
There was a definitely real issue with floor mats getting the pedal stuck. I don’t know enough background on it past the audit that was done.
If bad things happen, the tendency is to blame someone else.
There was a plausible root cause - a bit flip in the CPU. It was proved such flipping the right bit would cause uncontrolled acceleration that characterised each event.
I don't agree Toyota was guilty of shoddy work, or cost cutting. At worst, there were guilty of working some fairly shitty, hard to support code. (Someone below mentions 10,000 global variables.) If anything that shitty code just proves how dedicated Toyota was to testing something until until all the safety related bugs are gone, because despite some horrid kludges like replying on watch dogs resetting the thing when it got stuck and a reset so fast most people wouldn't notice it, despite the intense scrutiny of the code no one every found a safety issue with it. Toyota was well aware of a electrically noisy area like a engine bay could cause bit lips, and defended against it. Every variable was stored in two places in RAM, and on use they were always read and compared, and if they differed it was reset.
Sadly for Toyota they used a proprietary ECU and OS provided by NEC. NEC didn't let their customers look at their proprietary stuff. NEC didn't defend against bit flips. And it turned out a bit flop in a task ready bit could cause that task to never be scheduled again. If that task was supposed to turn off the cruise control acceleration, then bingo.
I have no idea what changes Toyota made in response to this mess, but if I was to hazard a guess it would be when it comes to software, they demand their supplies open their source to them.
But every automatic I've ever driven (not many - I prefer a clutch) moves forward unless you're pushing the break in. In the rest state, it's in motion.
The problem isn't Toyota, the problem is a broken system.
The Toyota case was an instance of the car's engine control software unexpectedly commanding acceleration not requested by the user.
In principle it could happen on a manual car as well, but most of Toyota's vehicles in the U.S. are automatics.
They are very irritating to drive behind. Some seem to keep pressure on the brake pedal, and the brake lights stay on as they accelerate. When they slow it takes longer to realise they are braking as the lights have been solidly on.
In first gear I can reach 8 km/h, but it's possible to get all the way to fifth gear while idling (takes a long time though).
In street driving, the main application is being ready to brake while driving normally. It is much faster to brake with the left foot hovering over the brake pedal than by moving the right foot from the throttle to the brake. Of course covering the brake pedal with the right foot precludes driving normally on a flat road or uphill.
This should of course be practiced in low-risk situations before being attempted in high-risk situations.
Trying to assess whether thousands of global variables are still playing nice during a major rewrite to accommodate a new chip would be definitely be difficult and time consuming!
Not that a fast-and-loose approach is ideal, either.
Writing reliable software in the context of an organization is hard.
Almost every place we would have a constant (tuning parameters, etc) we instead have a configurable value with the likely default declared in code, but all overridable in config. Managing config can be a hassle, but the number of times we've merely had to tweak a value rather than roll a new build pays for itself every day.
We have thousands of such "global variables"... of course they are read-only, so aren't used to share state.
If Toyota is doing that: nbd. If they are using them to share state ... god have mercy on their souls.
It's a matter of interpretation I guess, but I would not classify a wrapper object (like .Net's ConfigurationManager singleton) as "10K global variables" even if the accompanying config contained 10K items, or if the ConfigurationManager backing store was preallocated in the data section of the binary.
Which to me on an old _accelerator_ design is suspect because that's alot of heap for the micros that would have been used back in the day. This isn't a Linux system. It was at best a micro with like 8KB of RAM. (I'm not actually sure what it is but there's no way it was impressive).
> Other egregious deviations from standard practice were the number of global variables in the system. (A variable is a location in memory that has a number in it. A global variable is any piece of software anywhere in the system can get to that number and read it or write it.)
However, that was from the article author explaining the testimony, and not the testimony itself. It's not totally clear whether the variables were writable.
I would have guessed they were statically allocated rather than heap allocated, but what really matters is whether they were `const` — and they probably weren't `const` because otherwise this testimony wouldn't have rung true:
> "And in practice, five, ten, okay, fine. 10,000, no, we’re done. It is not safe, and I don’t need to see all 10,000 global variables to know that that is a problem," Koopman testified.
The changes in Tesla vehicles are absurdly fast. They disassembled original Model 3 and then China Model 3, and since then the refresh 3 and the Y.
Recently they showed the new Model 3 LFP (Lithium Iron Phosphate) and the electronics and how it was integrated is already different again.
A lot of this era comes down to this. You have a legacy industry with tons of regulations, then a new guy comes up, steps on all the lines, and convinces people they're smarter for doing more for less. (up until regulations come back in the equation).
If anything, GM had more problems and failures of their EVs so far. So the claim that Tesla is ignoring liability and doing much higher risk development is literally just an accusation based on nothing.
In actual fact, GM is spending 10s of billions buying back every single Bolt and they have been forced to shut down the line. At the same time Tesla had no such issues.
So, how about these people actually prove or substantiate in some way that the new comer ignores regulation or quality. Specially when, they themselves have a worse record.
The traditional players are already doing a bad job trying to write safety critical software the way things are now.
That's a matter readily solved by a PID controller made of a few dozen 74XXX parts. Possibly made n-times redundant.
Even a more fancy LP solver probably wouldn't need a fully fledged computer.
I mean, I could implement a PID controller without any 74xxx logic at all: a basic op-amp, a handful of resistors and capacitors and boom I'm done!
But there's a reason that engineering doesn't do that these days and it's not that engineers don't know how. My PID control built from an opamp? In 2021 that's almost always a stupid idea. We use computers because doing it digitally has many advantages. We don't use 74xx (or any other logic family) for this because microcontrollers are far more flexible, allow for behavior changes without reworking hardware, allow inventories to scale (the same component can be used in hundreds of products) and more reasons I won't detail.
The reality is that in 2021, often the simplest, most robust and cost-effective way to do something trivial is by using a computer to do it.
Very much not. Complicated MCUs are a very risky single vendor supply, and as we see now, people are now paying for an engineering overkill.
74xxx are available in every shape, and form, from dozens of suppliers.
Repeat for manifold air temp, exhaust temp, emissions, rev limiter, etc., and as you mention, make that 3x for redundancy. Now you have hundreds to thousands of components, in a high noise, vibration, and temperature environment, and you have something which is about as efficient as an 80s car. And you can't as easily simulate it cause it's analog.
Or just use some digital chips and simulate all the tuning.
Electronic fuel injection is a _great_ example. Much of modern fuel efficiency stems from the fact that an engine can accurately control fuel in the cylinder based on a bunch of factors. Not only does this system require physically fewer materials, it uses less gas (in turn saving production effort).
What I mean under a computer is a Turing complete machine. A circuit just doing some LP solving, or PID is not necessarily a computer.
Most of the functionality of these chips can be represented in some form of hardware. However, that hardware is often much more expensive, significantly less flexible, and likely significantly bulkier.
Jadon Cammisa has a great series on this stuff. Here's just one episode on one topic, drive by wire throttle control: https://youtu.be/gKsCHx5NOMM
It's very close to what you are taught in the "How to write a PID controller" class without much extra creativity.
The biggest challenge is when you need to update your firmware to use a microcontroller from a different manufacturer. Often times these chips are specifically chosen due to the set of hardware functionality they offer, and the firmware is written to take advantage of that from the start. The two are coupled.
Now you are forced to use a different chip, and the firmware that was written for a specific set of hardware now has to be modified for a new chip that may have a different feature set. Things fine print on how things like Analog to Digital converters becomes extremely important.
Either way, you're left with something where the saturation behavior changed, or it's no longer possible to read out a value without risk of corruption since they assumed it can be treated as write-only, or some other hard to find and debug problem.
Swapping out chips is an exercise in testing and risk management, and never should be done without care, even before we start talking about safety critical applications.
There is also a huge lack of improvement in MCU designs. Why doesn't my SPI bus autonegotiate everything? Why can't the serial port do the same? This should all be available in hardware as a standard feature of the ports. What a waste of decades of engineering talent to have to repeatedly troubleshoot everything at the bit level.
They also do a lot more in house than their competitors. That means they can optimize their development processes, and align with chip suppliers across different components. If you have to work with a multitude of suppliers that each ship their own hardware and software, life is a lot more complicated. Changes take years in such an environment. Even a simple thing such as over the air updates to software is still science fiction in a large part of the industry. VW famously struggled with doing that for the ID.3 only managing their first updates fairly recently.
Of course, Tesla is still affected by supply issues as well. They can't switch suppliers every quarter.
(In a box at 120°C for a day is roughly equal to a thousand days at room temperature).
Smarter not longer. Write in a memory-safe language and you don't need to pay people to maintain spreadsheets of memory allocations...
I’m sure Tesla is more agile than that. For better or worse sometimes…
The article quotes Intel at 16nm, which is, what, 10 years from cutting edge process node? At this point mature OEMs and Big Auto should have been on a refresh process to auto-migrate forward the chips. The semiconductor industry is 40-50 years old now. And new generations produce better chips (cost, power use, performance).
As other comments say, it smacks of laziness and lack of forecasting.
Tesla has other advantages, since they are so much more vertically integrated, they can probably manage migrations a lot more easily and centrally.
Big Auto is more like "Big assemble OEM parts". OEMs make all the components, Big Auto just wants to screw them into place and wire them together. It's part of why they suck at software that integrates things: They don't make any of the components, and a dozen different departments order them from a hundred suppliers, so getting interfaces/protocols/specs is a lot more time consuming than for Tesla.
Why not even use ARM, X86, etc? It'd save them money at this point. And there wouldn't be a supply risk.
All that shit's still not in stock anywhere. And remember that ARM, x86, etc. only defines the processor architecture. The I/O is far more important in a control application and I/O is anything but standard across platforms.
For one product we ended up buying a vendors entire supply and redesigning the product to use it, crossing our fingers that the supply chain would have unwound itself by the time we ran out of inventory.
I mean, it's an entire MASSIVE industry that's comprised almost entirely of truly commodity technology, and so you get all the perverse outcomes that happen when trying to "differentiate" despite being commodity by inventing ways to be "special" to drive lock-in. Interoperability only really benefits the OEM, and the OEM isn't the only part of the chain.
But I'd also like to throw in:
- 16 years or so ago, the US side of the Auto industry was trying to steer towards PPC. Motorola/Freescale's presence in the market probably had a bit of a play in this, as well as ARM's then-status of 'not quite powerful enough to be future proof.' A StackOverflow post from 2012 [0] seems to indicate they did indeed standardize, whether they moved on from there is another question.
- Most Carmakers probably -don't- want to change designs outside of a refresh. There's a few reasons for this, including both external (updating documentation to repair network) and internal (when I worked at a place that did software/services for a US automaker, we had to submit pages of documentation/paperwork to change a couple of items placement/wording in a dialogue box.)
[0] - https://electronics.stackexchange.com/questions/26035/whats-...
I've never heard of anyone dying due to ECU failure either..I'm not sure how that would even happen given all the critical systems on a car are mechanical first with electronic assist. So you can't lose steering, braking, etc. The worst that happens is you lose power, which is about the same risk as a subpar standard transmission driver stalling out (and can also happen in a number of different ways). Can you expand on how an ECU failing might kill you?
I would love if someone could elaborate on why I'm wrong instead of drive by downvoting. This isn't reddit.
Take for example the Boeing 737-MAX. Eh, its bigger, needs a little more elevator movement to simulate the older model, just flex the software so it can wiggle a bit more what could possibly go wrong?
Likewise, remember the VW Diesel emissions "scandal". You can nearly kill a company without actually killing anyone.
So, the specified ECU chip (which is no longer in stock) could output 40 mA to the gas tank vacuum solenoid so we spec'd the solenoid to draw 30 mA on the coldest day of the year, usually it draws much less. Got a substitute chip only rated to 20 mA usually it'll work fine, what could possibly go wrong? Until it burns out and the vacuum solenoid fails open and nationwide millions of gallons of "excess" gas evaporate per year from sitting cars. Harmless on an individual scale but on a nationwide scale its a lot of ozone... Insert yet ANOTHER $35B recall to replace all the ECUs for willful emissions violations ...
I'm just saying its not binary where either people die and it kills the company or people aren't even harmed and nothing bad happens at all. Plenty of "company killer" situations where "what could possibly go wrong" got the F-around and find out treatment.
That said, we're working with some groups in some automotive companies who are breaking this mold rapidly.
Shameless plug WARNING: we (https://auxon.io) are hiring for engineering, marketing, and BD if industrial & operational technology is your thing.
Only the libraries for I/O need to be rewritten.
In some cases, there are drop in replacements (Gigadevices STM32 clones)
Single chip system, with built in analog comparators, timers, signal capture and PWM generation module, serial UART, etc. I.e., a whole "system on a chip" with the external world interfaces already built into the chip. Changing one of these for an ARM CPU with external analog comparators, timers, PWM modules, serial UART's, etc., is a redesign effort, not just a "change the chip" effort. If the clock speed possible via the internal clock oscillator is sufficient, then this chip needs only +5V and ground (plus programming) to be able to interface to and control some external analog or digital equipment.
I seen a few dashboard where there is an STM32 sitting connected to a single button, whose only duty is to register a key press, and burp something on the CanBus in response.
B) If you did have a $20 microcontroller for Canbus control of a window motor driver but it saved $19 in extra wiring/labor (driver controls usually route to all windows), provides reliable debounce, automated one-push-to-open, and allows things like holding keyless lock to close all windows, it's totally worth it.
They have to function correctly
* after they've been parked outdoors in Death Valley all day.
* after they've been parked at -40 degrees for a long time.
* when doused with slush containing road salt.
* when their wiring harnesses deteriorate after a couple of decades of hard use.
* at least for a few seconds after a catastrophic crash.
It takes the kind of risk-taking guts that Tesla exhibits to push new, better, electronic parts into test and production. Most car companies' executives, designers, and test engineers just don't want to take those risks.After their delaminationg non-automotive grade screens I'd be wary.
Their solution to it was to make the air conditioner always run in the sun when parked and promote it as a feature, wasting untold megawatt hours of electricity.
Maybe this is why Musk is making Starlink...
That's not how it works. You basically get 5 mpg or less on the truck, while the car charges at significantly higher rates than the speed of the truck (in mph), because the car is more efficient at using the energy.
https://insideevs.com/news/514727/tesla-towing-70mph-fast-ch...
Towing at 70mph in the above example was charging the car at 65 kW. That's equivalent to ~260-270 mi/hr of charging rate assuming 250Wh/mi.
Distance wise, tow charging makes no sense. Energy wise, maybe it does.
Its not a risk if you are vertically integrated, have the software infrastructure and have everything need to do the needed testing and validation.
It would take weeks just to talk to the supplier about maybe doing a change for many other car makers.
Now some dealerships are selling new cars above MSRP, just because supply is so low.
https://tradingeconomics.com/united-states/money-supply-m0
There are a lot of people who have benefitted enormously from the economy/stock market crashing, then being resuscitated by this unprecedented money injection:
https://www.yahoo.com/news/fed-vice-chair-traded-stocks-1527...
https://fortune.com/2021/07/08/house-speaker-nancy-pelosi-hu...
Politicians and bureaucrats should have planned with industry ahead of time and notified them that the COVID impact would be cushioned by huge financial stimulus. But why do that if you as an individual bureaucrat or politician can make millions by trading on that insider knowledge?
Its unfair to blame suppliers when there has been Government conspiracy against them.
Used trucks sell as fast as they go up on the websites (with the lease returns from the company we’re running for selling even before that) and the truck dealers apparently think this is the time to charge excessive finance fees (basically doubling the cost of the truck) because they can.
Quite a stressful time…for him. I don’t really care since I’m making money and team driving isn’t as bad as I remember it from the last time I did it 23 years ago.
So the question is, what's the reason that 90nm microcontroller sells for $1?
I'm trying, and failing, to figure out an economic model that explains the market dynamics we actually observe.
If building a new 90nm fab costs $billions, almost as much as building a new 16nm fab, why does the 90nm microcontroller sell for 0.1% of the price of the 16nm Xeon?
If building a new 90nm fab costs 0.1% as much as building a new 16nm fab, why can't existing chip companies, some startup or GM themselves spend $10's of millions building a fab that can unblock $100's of millions of product, and alleviate the shortage?
>why can't existing chip companies, some startup or GM themselves spend $10's of millions building a fab that can unblock $100's of millions of product, and alleviate the shortage?
They can't do it fast enough. Standing up a new foundry takes years under the best circumstances, and today you couldn't do it all, since all the tooling is sold out and deeply backordered. If GM could snap their fingers today and magic a cleanroom into existence, they'd still be waiting a hell of a long time to put tools in it.
Secondly on the price question, microcontrollers just have way fewer gates than a desktop CPU. A dozen registers, a thousand bytes of RAM, a few kilobytes of flash. This makes them physically smaller, which lets you put more on a wafer, and makes the unit price cheaper. The total die area of the ATmega8 is just 7.9 square millimeters... at the 500nm node! https://zeptobars.com/en/read/atmel-atmega8 This gets you 8,100 dies from a single 300mm wafer. (If there are any 300mm foundries at 500nm, which there probably aren't)
Thirdly, what makes you think anyone could build a 90nm foundry at all?
Take a look at a list of foundries: https://en.wikipedia.org/wiki/List_of_semiconductor_fabricat... I don't see anything making 90nm after 2014.
Which makes sense. Fabs don't make all their tools in-house, that's done by vendors. As an example of one tool, by one vendor, the NXE:3400B EUV stepper by ASML. Unit cost, $175 million: https://www.tomshardware.com/news/tsmc-euv-tools-order
These are ultra-bespoke, super-low-volume machine tools. ASML makes a couple dozen or a hundred steppers of a given model, then shuts down production and starts upgrading to the next node. Is it even possible to buy a new 90nm stepper today?
I'm sure they have all the documentation and could roll back to the previous generation easily enough, if they had to. (Which they don't! They are maxed out just supplying current-gen tools) But given all the voodoo in semiconductor lithography, people retiring etc, I bet that rolling back two decades would pretty much require starting from scratch.
Chips are not fungible in part because of software compatibility.
OK, so you got a newer chip, and have redesigned the board and everything to fit. Now you have to get all the old firmware running on it and validate it.
If the new chip isn't a 100% backwards compatible version of the old one, including all the peripherals, that could be a considerable effort, fraught with risk.
In 2050 if your old 2035 Ford needs a new ECU you'll just stuck a somewhat newer and larger FPGA on it, and if the 2035 ECU needs three hardware I2C bus with clock stretching, one of which bus has to do 10 bit I2C addrs and it also needs three hardware PWM pins with 11 bit resolution and two 8051 cores running at 5.25 MHz each and two CANBUS, you (or more likely Ford) will just compile the brand new FPGA to have exactly and precisely all that stuff and it'll work fine.
People have been saying this for decades and it is no truer today than it was then.
FPGAs and soft cores lose on cost and power--which are both ferociously tracked engineering goals when you have real volumes.
To a first and second order, if all FPGAs suddenly disappeared, nobody would care. Networking and test equipment would get somewhat more expensive and double their lead times. Nobody else would notice.
In automotive, is power so ferociously tracked? Most of the energy in a car is to get it moving, and even running the cabin fan requires more wattage than a reasonable control system.
If that were even possible (which it probably isn't--the fundamental "building block" of an FPGA is easily 10x the size of a similar fully custom gate), the soft core would still likely lose. Power in CMOS is proportional to C Vdd^2 f. Vdd hasn't moved in a while--so you've lost the biggest hammer in terms of power consumption. And C goes up when you change nodes--not down. And we're holding f constant according to your assumptions.
Furthermore, FPGAs are general purpose so they need things like clock spines that are optimized to work at their max frequency rather than at whatever frequency you chose. You burn a remarkable amount of power and area so that the chips can operate at say 400MHz even if you never run them faster than 8Mhz.
> In automotive, is power so ferociously tracked?
Not as such--automotive is generally more interested in whether your chip can survive power spikes. However, automotive is super sensitive to cost which is all about chip area.
> Most of the energy in a car is to get it moving
While true of ICE cars, that is less true than you might think with electric cars and regenerative braking. I can go for a very long time on 20mph roads between charges but the moment I get on a 65mph freeway, my battery gets sucked dry. I think atmospheric drag is something like to the third power of velocity--it's a really huge increase when you go even slightly faster.
However, as you point out, climate control is the real killer of energy--running AC or heating is power hungry.
In addition, the self-driving car folks discovered that running all that vision and radar and then processing it sucked down a remarkable amount of juice. Computes and sensors aren't exactly free.
The C64 mini runs a modern(ish) arm processor and an emulator to pretend to be a C64 - that's a machine that is literal multiple orders of magnitude more powerful than the original system.
Im thankful that automobile tech didn’t discover electron yet. Imagine your speedometer consuming 200mb of ram.
I’m doubtful of the cluster being run by a browser engine though.
Too late. I am well aware of a few car dashboard clients using it to their own detriment (imaging gluing CanBus I/O to electron.)
Edit: There's also some "universal ECUs" from companies like Haltech. They sell a single ECU plus some adapter cables to make that single ECU run on a broad variety of cars from the 90's.
Possible since the 90's cars all have the same rough types/numbers of sensors. Switchable software does the rest. I imagine this doesn't work past some year of make as the cars got more complex.
But they do actual control software too, though that's less common. https://en.wikipedia.org/wiki/MegaSquirt
Also, disclosure: I'm intimately familiar with the ECU software of a major player in the industry, though primarily the part that governs the air system. It's surprisingly sophisticated and extremely configurable just by fiddling with those calibration values.
There are two problems, long duration supplies of a chip on the same process, and the cost of making chips.
If the semiconductor companies can figure out an ASIC/FPGA type strategy that would allow any of the current chips in a car be produced "dynamically", then the semiconductor company could achieve their economies by just fabbing one design, and car companies could achieve longevity by getting commitments for production of that one design.
Xilinx recently made some steps in a new direction by producing what they called an "RF" SoC. Where RF stands for radio frequency. Basically it had all of the analog to digitial and digital to analog bits on the chip in addition to some FPGA fabric and some ARM AARCH64 cores. Its expensive and small quantity but I think it will turn out to be important in the long run as the vanguard of chips that are not 'type specific' at the time of manufacture.
Imagine a company that has the same basic FPGA architecture, packaged in a variety of automotive spec packages, with one-time programmability. That would reduce the number of SKUs considerably (basically by package type).
Ultimately the industry will have to maintain their own production for consistent silicon.
Sometimes shit happens.
In any complex undertaking, how can we know when enough planning has been done?
The carmakers have been making the wrong call for the past decades.
One of their suppliers has eclipsed their impact on society, marking one of the first times in something like ~70 years that things didn't bend over to meet their needs.
----
And before you ask. Yes i would rather have a pace-maker with triple redundancy and thrice redesigned.
If not, how complex would it be to "port" an existing 90nm chip, to produce a 16nm revision? Impossible, or quite easy but not cost effective? From the POV of the car companies, could such revisions be used directly, or would they need to be qualified in the same fashion as new parts?
Different metallization (you usually don't get to choose Al or Cu) will have different resistances. Generally the smaller processes will be faster so a design with no race conditions or metastability problems on 160 might not run reliably or at all on 55. Some processes are analog oriented so they'll guarantee up to 60 volts or more, if you're trying to design power devices, other processes are logic oriented and they might have a standard voltage of 2.5, 1.1 etc.
You can design something that'll run on a 55nm process and something that'll give similar performance on a 160nm process BUT they'll be different designs. I think the closest analogy would be changing processes is like changing manufacturing material. You can make a car piston out of steel or aluminum but you can almost never just swap materials in an existing assembly line.
Also because the materials have changed the dialectic constant probably has and now the relative sizes of components need to adjust. And circuits are designed to minimize switching loss based on the old switching time and now they'll be wrong.
Oh, and the breakdown voltage of the new process can't handle the voltage many of these old circuits use IIRC.
Sure, I understand that making a new car in combination with making a new ECU or brake controller on a new process is going to be stupidly dangerous and troublesome. So just don't.
Rather than doing it as a part of a single project, there should be a department or separate company making the ECU/controller. This way when the semiconductor company moves forwards, ECU Group starts a project targeting the new process, and releases the results when it's ready. And meanwhile what goes into the cars is the ECU built on the previous, well tested process.
Also, are modern cars really in much need of custom silicon? Micro-controllers are stupidly powerful now. There has to be off the shelf hardware capable of handling what a car needs. There are long standing architectures like ARM that don't require starting from scratch every time somebody makes a better chip.
The problem is that when COVID struck almost everything was put on hold, scrapped, and ... it simply takes too much time to get things back on track. (As there is basically a full half year of shortage.)
> are modern cars really in much need of custom silicon
Well, again, because the market is special, there's a lot of custom stuff, even if it's almost the same chip internally. Lack of openness and standardized interchangeable components lead to this. (Yes, there are a lot of aftermarket parts, but they are probably even worse.)
Also, probably the big dilemma for automakers is that they are simply not accustomed to this level of transparency in their supply chains. Now they point the blame at chipmakers, but they don't buy chips, they buy components from (the cheapest) vendors. (Who are cheap because they also never had any stored inventory, nor rainy day funds, nor any elegance and care in their designs that would allow this kind of retooling to other chips.)
[0] But only very-very-very tiny incremental newishness. Large major version upgrades are seen as something that is too risky. (See this part from the article: "Quigley added that trying to design new chips and vehicles that will use them in parallel often introduces yet more headaches.") And even if the whole industry is a decade behind, there's no time to catch up, because there's just no market need for upgrading that subcomponent to have a better software/CPU platform. Instead automakers launch wholly redesigned lines. Or source completely new components for the new set of functionalities envisioned. (But if some vendor can meet the new specs with again a bit of incremental upgrade, then that'll happen.)
Maybe the old nodes are efficient enough for the chips they need. Then again it would make sense to update designs frequently enough to stay at nodes that have plenty of capacity, perhaps every 5 or 10 years or so?
My old car runs fine controlled with a single atmega128 for the injectors, and that is the only chip in there (outside of the radio that I never use (I already carry a phone for all sort of entertainment))
In addition, you need to actually meet fuel standards, and that alone requires a whole lots of sensors.
And people actually 'shocking' want to have advanced features, and the ability to link the car with the phone.
The simple reality is people wouldn't buy a low tech car you describe. Seriously, people are not spending 30-50k on a car that can not play music from your phone.
If you completely redesign the product, maybe you could reduce the number but that is effort that is actually far larger the problems with supply. And if you started to redesign the product now, you would almost certainty use more chips anyways because the requirements are going up, not down.
https://www.autotrader.com/car-news/when-did-cars-get-comput...
(tldr)
> So instead of one clear answer, we have three possibilities: 1957 Rambler, 1958 Chrysler or 1968 Volkswagen.
Crazy Honda fact: all their ECUs from 1992 (P05) onward had full facility to drive individual coil on plug, but officially Honda switched away from mechanical distributor in 1999 (S2000?). You can trivially convert 92 car with a small adapter board, ECUs shipped with all the needed firmware and hardware in place sitting unused for 7 years.
> "I’ll make them as many 16 nanometer chips as they want"
However, > Carmakers have bombarded him with requests to invest in brand-new production capacity for semiconductors
> featuring designs that, at best, were state of the art when the first Apple iPhone launched.
He then says of that: > "It just makes no economic or strategic sense"
So if we look at this from a capitalistic standpoint, automakers are not offering enough money to convince Intel to continue supplying their "old" types of chips. Either the automakers need to supply a convincing amount of money, or they need to adapt as their suppliers change priorities.Like that time Apple was "not offering enough money to convince Intel to continue supplying their "old" types of chips" aka the StrongArm
This reminds me of being a 3rd party selling service to some company and they constantly ask for us to implement features that they could easily add - but can't. They don't say that flat out but we all understand what's happening..
Oh, and a temperature range of -40 to +125C ambient.
Can Intel do that on their obsolete 16nm multipatterning process for anywhere near the price target? Didnt think so.
> The aspect of the problem not talked about is that a lot of automotive chips are really, really old.
> And they are old, because of many certification requirements set partially by the industry, and a few odd governments.
> In reality, most of them are both less reliable, and harder to work with in comparison to open market parts.
> The only two things I seen chips with micron scale nodes used in my life were: air conditioner boards, and car parts.
For example, who in the world today makes PMOS TTL chips? I bet the few foundries who can still do that will bill car parts makers an arm, and a leg for keeping making something this old
Want to migrate? Find somebody who can can translate hand-drawn TTL chip to moderately modern CMOS under 60 years old.
At times, the cases about I heard of car makers were having troubles with were also nothing less of direct consequence of conscious overengineering: some BWMs have one STM32 per window switch just to blink the LED, and do ADC despite the switch having just 5 positions. And now they can't ship because of this single LED blinker.
Why not put those smarts in one big module, say the Body Control Module which is always huge and already gets redesigned and uses more expensive, smaller feature chips anyway you ask? Well, we need to run a bunch of wires to the door, several for the switch, power and grind and Hall effect sensor for the motor and we need to account for the noise and power loss on the long wire run because as a safety feature the sensing has to be ASIL compliant to high fault tolerance. Turns out that that length of wire is several dollars more than putting the module in the door… These things are all done for a reason and the automotive engineers aren’t solely stuck in the old ways. They’re frequently penny pinched to death, but if you look at the constraints they’re doing their best.
All of this is achieved with a single <$1 part, fixed torque clutch... But who in the world wants to intentionally choke somebody with a power window? This add to the long list of absurd product liability regulations in the spirit of one demanding "do not operate the appliance with your genitals" to be printed on every stove.
children. eg:
https://abcnews.go.com/GMA/story?id=124854&page=1
> A 1997 government study by the National Center for Statistics and Analysis estimated power windows sent nearly 500 people to emergency rooms in one year, and that half the victims were small children.
He was a former chief engineer at Ford and had his own company for decades now. He also worked in Ford Global Finical Head Quarters.
When he sees some small board screwed down with to many screws he starts ranting.
> But who in the world wants to intentionally choke somebody with a power window?
Accidental is the more significant problem, particularly with children.