It's not like everyone buys an electric car all at once. The grid will have plenty of time to adapt. Also, by then the power companies will be able to control when the cars charge and how fast when charging at night. Also, at night the power companies have a huge excess supply since most power generators can't ramp up and down quickly with demand. That's why I get very cheap rates when I start charging at 11pm.
I think hitting a steel tow hitch at 70MPH is more than a little bump, or going through a concrete wall at 100MPh. People are blowing the fires all out of proportion. If a standard ICE car hit something like that in the engine compartment there's a good chance of a fire as well. In this case, since the battery is under the passenger compartment, a more likely scenerio would be for the debris to punch right through the floor and into the passenger compartment. Not one of the fires resulted in any damage to the passenger compartment of the car which cannot be said for most gasoline car fires I've seen.
Wikipedia is your friend. My '06 is OK for normal driving, 0-60 in "around 10 seconds" but it is pretty anemic at highway speeds. It can also be rather painful going up long uphill grades. I have drained the battery completely (down to 40%) and the lack of power is extremely noticeable. I've only driven my Prius a couple of times since I got a Tesla model S last March and I plan to sell it next week.
Some of the cars have active air suspension which is able to raise and lower the car. It is controllable by the touch screen. Normally when driving at highway speeds the car will lower itself. They have disabled this and promised that in a future software update that this feature will be user configurable as to whether or not the car lowers itself.
I have received several software updates to my car and they have added some major features from those updates. They also have changed things like the last software update makes the creep mode behave more smoothy (I have the creep feature disabled myself).
I'm far from the 1% yet I had no problem affording a Tesla. It's more on how you manage your money. In my case putting every spare penny I had into paying off my mortgage made a huge difference, allowing me to pay it off quite early and not buying a more expensive house than I could afford.
Since the battery is under the passenger compartment, if road debris is able to penetrate the 1/4" thick aluminum plate imagine what it would do with the thin sheet metal and plastic under a normal car.
As someone who writes bootloaders using both C and assembly language there really is very little advantage to using assembly any more. The C compiler gnerates very good assembly code at this point that is very compact if the right parameters are used. At this point it is difficult to exceed what the compiler does in terms of code density and it's a hell of a lot easier and faster to maintain C code than assembly.
In my last bootloader I had to fit a MMC/SD bootloader in under 8K. In that space all of the assembly code fits in the first sector along with the partition table. The assembly code sets up the stack and does some basic CPU configuration and contains the serial port routines just because I had plenty of space. The rest of the bootloader contains all of the SD/MMC driver, FAT16/32 support, CRC32 and more. Note that this is MIPS64 code. The bootloader is able to load the next stage bootloader from a file off of a bootable partition from the root directory, validate it, load a failsafe bootloader if the validation fails and launch the next bootloader, all in under 8K. Having disassembled the output using objdump the compiled code is often better than hand coded assembly since the compiler can often find a smaller sequence of instructions. Not only that, but the compiler can order the instructions better for performance since it knows the CPU pipeline quite well.
You don't need to write in assembly for something to be small, just don't throw in a bunch of unneeded crap.
The car isn't that low when it's lowered. It's still a lot higher than many cars I see on the road. At standard height I have fewer problems scraping with my model S than I've had with my Prius, for example.
The plate is aluminum. There are vents in the middle of the plate directed down towards the ground in case a fire should break out to direct it away from the passenger compartment. There are additional fire safety features as well. The battery pack is broken down into 16 separate sections with a firewall between them and the batteries are surrounded with a substance that reacts indothermically to fire to produce a fire resistant foam.
In any event, it takes a lot of force to penetrate the aluminum plate. The aluminum plate also adds significant rigidity to the passenger compartment to help in the case of an accident.
Also, unlike most cars, the underside of the Tesla is very smooth, making it much less likely that things can get lodged up under the car. Some cars such as the Tesla I own have active suspension that lowers the car on the freeway which might increase the odds of damage from debris though it isn't lowered as much as many cars I've seen.
As the owner of a Tesla model S I do not have any fear of fire from the car. It's a lot safer than any other car I've owned.
I remember when that happened. My thought at the time was Thank God for Comcast! It's really sad when AT&T makes Comcast look great. AT&T managed to make dial-up perform better than my cable modem. For six months they decided to throttle upstream traffic to 128Kbps. They did it by combining everyone's upstream traffic through the same 128Kbps pipe resulting in 40-60% packet loss on a good day. It was like that for over 6 months.
I have a friend whos background was in transmissions and driive train stuff. He was hired by Tesla to do CAD work when one day his boss was lamenting that he wished they had someone who knew transmissions. This is back when the Roadster was burning out 3rd party transmissions in 5K miles because they couldn't handle the instant torque. My friend told his boss to re-read his resume. He now works on drive train stuff (in addition to CAD).
One thing Elon emphasized when I heard him talk is that they want people with experience in multiple disciplines working together to solve problems with thinking outside the box.
It's easy to see how the company is different just going into the service center. I doubt you would see people running around on electric scooters and bicycles at GM, Having their factory and main service center so close to their engineering HQ also helps a lot since it's easy for people servicing the cars to talk with the designers to discuss problems they are having and fix them quickly on the assembly line.
Cost of electricity during the day: high Cost of electricity at night: low
Solar doesn't have to be used to charge the car at night, just offset the energy used. Additionally, there are things called batteries that can store energy during the day to use at night. The goal is to have zero net energy usage which can actually make a profit for a charging station.
At an electric station it takes 5 seconds for payment. I just wave the card in front of the charger and it's done. I plug in the charger and walk away. It takes less time than any gas pump I've used. Now charging time is longer, but I rarely stick around waiting for charging to finish. At the superchargers I usually go and grab a meal and by the time I'm done I'm ready for the next leg of my trip. I often spend just as much or more time filling up at Costco just due to the line of people.
It looks like they have plans to build out there eventually from their map at http://www.teslamotors.com/supercharger. In-town chargers are not needed as much generally since usually you can charge at home and hopefully more and more hotels will start offering places to charge.
Tesla does not have dealerships. They have showrooms. The only way you can buy a car at a show room is to go online to do it. There are no commissions. When I ordered my car that's how I did it. I had to go to Tesla's web site to order the car and put in my credit card for the deposit.
I think it creates a more relaxed atmosphere. There is no pressure to buy but they're there to answer questions. When I was there a lot of people would just walk in and look at the car since the showroom was inside a mall. There is no inventory of cars to worry about (though they do have a few for test drives).
Service is also different than dealerships. Their prices are typically a lot lower for things that are not covered by warranty since their goal is to not make a profit. Since everything except the tires and wheels is covered under warranty there's no effort to push unneeded services either.
The nice thing with the charging stations is usually I just avoid them with my model S. It's cheaper to charge at home. For driving around the Bay Area it's been great. I've used a few of the supercharger stations which have also been great. My only complaint is that they need more of them in more places. There aren't any heading north from the Bay Area and they need them in some more out of the way places like on the way to Yosemite or near Big Sur. The public charging stations are not all that useful when they only charge at 30 amps. That adds only about 18 miles of range per hour. Plus it seems all of the public spots are taken up by Leafs or Volts. The one time I really needed a public charger due to using a bit more energy on a camping trip I ended up having to unplug a Volt so I could charge in Monterey to reach the Gilroy supercharger. The funny thing is that with the Volt it was more expensive to charge at the public charging station than to use gasoline.
For driving around the Bay Area and where Superchargers are available it has been great. I just wish they would build more of them faster.
Actually the torque drops of gradually. The induction motor has a lot more high speed torque than a lot of other electric cars. I have both a Prius and a Model S P85. In my Prius the low end torque is great but it rapidly drops off and is quite pathetic at higher speeds. Similarly my father's Fisker Karma has great torque up to around 40MPH where it starts to get rather anemic. My Tesla Model S on the other hand still has plenty of torque at freeway speeds. It's a fairly flat torque curve. I think this may be due to the fact that Tesla is using an induction motor instead of synchronous motors. If I punch it at a green light I'm usually doing 45 by the time I reach the other side of the intersection and it just keeps going. It will do a quarter mile in 12.4 seconds and 0-60 in 4.2 seconds or less (some have gotten as low as 3.9 seconds). http://www.zeroto60times.com/Tesla-Electric-Cars-0-60-mph-Times.html
The torque is insane. I've driven up some steep grades like Kingsbury Grade near Lake Tahoe and the car handles it like it's nothing.
I have some familiarity with Fisker since my father bought a Karma. When I went to test drive it the car was in some weird mode the dealer couldn't get it out of and the entire time it went "bong bong bong" while driving. While the car handled nicely it felt heavy (it weighs 5300lbs). Acceleration was OK, not great. The interior of the car was small. Despite being such a large car it is labeled as a subcompact. The battery pack running down the center of the car takes up a huge amount of space.
As for being eco-friendly the car gets 21MPG on premium gasoline and is rated at 50MPG equivalent on electricity, basically no better than a Prius on electricity and far worse on gasoline.
The touch screen on the car is an unusable piece of crap, unfortunately you are forced to use it for just about everything. Whoever designed it designed it to look cool but not to be useable in a car. The colorscheme is grey on grey and it is hard to see during the day. If the sun hits it you can't see it at all. Also if you wear polarized sunglasses you can't see the display.
The touch panel has "haptic feedback", unfortunately you can't feel it while driving. Also, it requires a fair amount of force to select something. The icons are small and you have to hit them just right, something difficult to do while driving.
I tried unsuccessfully to talk my father out of the car. The car was basically what you would expect from an early prototype, not a production level car.
They replaced the Chinese-made electric motors twice in my father's car. The steel used for the rotors was too soft and the splines broke with the original motors. Afterwards there were some slipping problems which they eventually fixed using Lock-Tite. The car has had problems with the CAN bus due to interference and my father has had to have his car towed on numerous occasions.
There have also been major problems with the generator connected to the engine. The part linking the two tends to break and it cannot handle any misfiring by the engine.
The fires were also another major setback, due to a defective fan module.
Then there was the battery fiasco. Fisker promised selling at least 15,000 Karmas and relied entirely on A123 for the battery pack. Between Fisker's failure to sell the volume they promised and the battery defect A123 ended up bankrupt.
Fisker Automotive made a number of huge mistakes. The company was run like a large Detroit auto company which they were not. They spent money like water, ordering huge numbers of components ahead of time to make something on the order of 15,000 cars. Much of the manufacturing and design was pushed out to suppliers. The drive train was made by Quantum. The touch screen and software was also farmed out. The engine was GM. Fisker was basically an integrator.
Fisker also spent money like water. They went through over 1 billion dollars without a working factory to show for it. The top brass were from Detroit and they were used to dealing with big budgets like Detroit.
I will say that the Fisker Karma is a beautiful car and the interior is quite nice despite being cramped.
That is true. I am not that familiar with ARM personally. As I said most of my experience is with MIPS. I have been working with MIPS processors for the last 14 years at the device driver and bootloader level.
The biggest issue with ARM64 right now is that it is still rather immature. It will take a while for things to fully stabilize. I will likely be working on it in the future since my employer is working on 64-bit ARM chips. The funny thing is that from what I looked at, ARM64 looks an awful lot like MIPS.
What I love about MIPS is that it never really got all the cruft that ARM did and certainly not all the crap that was piled into X86. While MIPS did pick up some crap, like MIPS16, I rarely see it implemented. It was their answer to Thumb. It doesn't really improve code density much and the performance penalty isn't worth it so in practice most vendors don't support it. The migration from MIPS32 to MIPS64 is quite elegant with no major instruction changes except for adding new 64-bit instructions to augment some of the 32-bit ones and a few changes to the ABI.
I still use objcopy for our bootloaders and it takes experience to get the assembler to always do the right thing. I have to remember to always tell it to not reorder instructions since otherwise it tries to hide the branch delay slot for example. So far my favorite bootloader is an 8K MMC and SD bootloader. All of the assembly code fits in the first sector in front of the partition table. I had a lot of room left so I put most of the serial port routines in there to print strings and hex values. The 64-bit C code loads the next stage bootloader out of a bootable FAT16 or FAT32 partition into the L2 cache, has the MMC and SD drivers, validates the bootloader CRC and will use two alternate backups if the CRC fails. It can even load an environment file off of the SD card for the bootloader as well.
For U-Boot we use virtual memory so we don't have to relink. It also allows it to run seamlessly from any memory location with a single binary. Even though the code is 32-bit it will happily run at the top of memory even when 64GB of RAM is installed. That way the same bootloader works if we boot over PCIe, JTAG, MMC or NOR flash. On MIPS not having a page table makes this trivial. I just have to program a few Coprocessor 0 registers to load it into the MIPS translation look-aside buffer to set up virtual memory. That way we have virtual memory running before running any C code.
It's capable of pushing a million packets per second using Linux and a modified TCP/IP stack. While Ubiquity source releases all the source sadly they're using a rather old SDK (2.0). Once things settle down at work I hope to incorporate support for this into our base bootloader. I'd also love to push all of the bootloader changes I have made to U-Boot upstream though I'm dreading the battle involved due to the huge amount of code and some of the unorthodox things we do.
It's not like everyone buys an electric car all at once. The grid will have plenty of time to adapt. Also, by then the power companies will be able to control when the cars charge and how fast when charging at night. Also, at night the power companies have a huge excess supply since most power generators can't ramp up and down quickly with demand. That's why I get very cheap rates when I start charging at 11pm.
I think hitting a steel tow hitch at 70MPH is more than a little bump, or going through a concrete wall at 100MPh. People are blowing the fires all out of proportion. If a standard ICE car hit something like that in the engine compartment there's a good chance of a fire as well. In this case, since the battery is under the passenger compartment, a more likely scenerio would be for the debris to punch right through the floor and into the passenger compartment. Not one of the fires resulted in any damage to the passenger compartment of the car which cannot be said for most gasoline car fires I've seen.
All updates must be authorized by the owner. When I got the 5.8 update it gave me an option to install it and choose when to install it.
Wikipedia is your friend. My '06 is OK for normal driving, 0-60 in "around 10 seconds" but it is pretty anemic at highway speeds. It can also be rather painful going up long uphill grades. I have drained the battery completely (down to 40%) and the lack of power is extremely noticeable. I've only driven my Prius a couple of times since I got a Tesla model S last March and I plan to sell it next week.
Yep. My '06 Prius does a whopping 0 to 60 someday. I think I need to feed my hamster some better nuts.
Some of the cars have active air suspension which is able to raise and lower the car. It is controllable by the touch screen. Normally when driving at highway speeds the car will lower itself. They have disabled this and promised that in a future software update that this feature will be user configurable as to whether or not the car lowers itself.
I have received several software updates to my car and they have added some major features from those updates. They also have changed things like the last software update makes the creep mode behave more smoothy (I have the creep feature disabled myself).
I'm far from the 1% yet I had no problem affording a Tesla. It's more on how you manage your money. In my case putting every spare penny I had into paying off my mortgage made a huge difference, allowing me to pay it off quite early and not buying a more expensive house than I could afford.
Well, this car didn't burst into flames but I think this is more scarey than a fire...
http://www.youtube.com/watch?v=nJUWXRWK4xs
http://www.youtube.com/watch?v=_oeCe6ff2IY
http://www.youtube.com/watch?v=N2Oj2M011d4
Since the battery is under the passenger compartment, if road debris is able to penetrate the 1/4" thick aluminum plate imagine what it would do with the thin sheet metal and plastic under a normal car.
Not all Tesla battery punctures resulted in a fire. There was at least one case which did not result in a fire.
The Prius never used NiCd. The Prius used NiMH though they now use lithium-ion. It's a much smaller battery, 4.4kWh vs 85kWh for the Tesla.
As someone who writes bootloaders using both C and assembly language there really is very little advantage to using assembly any more. The C compiler gnerates very good assembly code at this point that is very compact if the right parameters are used. At this point it is difficult to exceed what the compiler does in terms of code density and it's a hell of a lot easier and faster to maintain C code than assembly.
In my last bootloader I had to fit a MMC/SD bootloader in under 8K. In that space all of the assembly code fits in the first sector along with the partition table. The assembly code sets up the stack and does some basic CPU configuration and contains the serial port routines just because I had plenty of space. The rest of the bootloader contains all of the SD/MMC driver, FAT16/32 support, CRC32 and more. Note that this is MIPS64 code. The bootloader is able to load the next stage bootloader from a file off of a bootable partition from the root directory, validate it, load a failsafe bootloader if the validation fails and launch the next bootloader, all in under 8K. Having disassembled the output using objdump the compiled code is often better than hand coded assembly since the compiler can often find a smaller sequence of instructions. Not only that, but the compiler can order the instructions better for performance since it knows the CPU pipeline quite well.
You don't need to write in assembly for something to be small, just don't throw in a bunch of unneeded crap.
-Aaron
Actually the battery doesn't start until behind the front axel.
The car isn't that low when it's lowered. It's still a lot higher than many cars I see on the road. At standard height I have fewer problems scraping with my model S than I've had with my Prius, for example.
The plate is aluminum. There are vents in the middle of the plate directed down towards the ground in case a fire should break out to direct it away from the passenger compartment. There are additional fire safety features as well. The battery pack is broken down into 16 separate sections with a firewall between them and the batteries are surrounded with a substance that reacts indothermically to fire to produce a fire resistant foam.
In any event, it takes a lot of force to penetrate the aluminum plate. The aluminum plate also adds significant rigidity to the passenger compartment to help in the case of an accident.
Also, unlike most cars, the underside of the Tesla is very smooth, making it much less likely that things can get lodged up under the car. Some cars such as the Tesla I own have active suspension that lowers the car on the freeway which might increase the odds of damage from debris though it isn't lowered as much as many cars I've seen.
As the owner of a Tesla model S I do not have any fear of fire from the car. It's a lot safer than any other car I've owned.
I remember when that happened. My thought at the time was Thank God for Comcast! It's really sad when AT&T makes Comcast look great. AT&T managed to make dial-up perform better than my cable modem. For six months they decided to throttle upstream traffic to 128Kbps. They did it by combining everyone's upstream traffic through the same 128Kbps pipe resulting in 40-60% packet loss on a good day. It was like that for over 6 months.
I have a friend whos background was in transmissions and driive train stuff. He was hired by Tesla to do CAD work when one day his boss was lamenting that he wished they had someone who knew transmissions. This is back when the Roadster was burning out 3rd party transmissions in 5K miles because they couldn't handle the instant torque. My friend told his boss to re-read his resume. He now works on drive train stuff (in addition to CAD).
One thing Elon emphasized when I heard him talk is that they want people with experience in multiple disciplines working together to solve problems with thinking outside the box.
It's easy to see how the company is different just going into the service center. I doubt you would see people running around on electric scooters and bicycles at GM, Having their factory and main service center so close to their engineering HQ also helps a lot since it's easy for people servicing the cars to talk with the designers to discuss problems they are having and fix them quickly on the assembly line.
Cost of electricity during the day: high
Cost of electricity at night: low
Solar doesn't have to be used to charge the car at night, just offset the energy used. Additionally, there are things called batteries that can store energy during the day to use at night. The goal is to have zero net energy usage which can actually make a profit for a charging station.
At an electric station it takes 5 seconds for payment. I just wave the card in front of the charger and it's done. I plug in the charger and walk away. It takes less time than any gas pump I've used. Now charging time is longer, but I rarely stick around waiting for charging to finish. At the superchargers I usually go and grab a meal and by the time I'm done I'm ready for the next leg of my trip. I often spend just as much or more time filling up at Costco just due to the line of people.
It looks like they have plans to build out there eventually from their map at http://www.teslamotors.com/supercharger. In-town chargers are not needed as much generally since usually you can charge at home and hopefully more and more hotels will start offering places to charge.
Tesla does not have dealerships. They have showrooms. The only way you can buy a car at a show room is to go online to do it. There are no commissions. When I ordered my car that's how I did it. I had to go to Tesla's web site to order the car and put in my credit card for the deposit.
I think it creates a more relaxed atmosphere. There is no pressure to buy but they're there to answer questions. When I was there a lot of people would just walk in and look at the car since the showroom was inside a mall. There is no inventory of cars to worry about (though they do have a few for test drives).
Service is also different than dealerships. Their prices are typically a lot lower for things that are not covered by warranty since their goal is to not make a profit. Since everything except the tires and wheels is covered under warranty there's no effort to push unneeded services either.
The nice thing with the charging stations is usually I just avoid them with my model S. It's cheaper to charge at home. For driving around the Bay Area it's been great. I've used a few of the supercharger stations which have also been great. My only complaint is that they need more of them in more places. There aren't any heading north from the Bay Area and they need them in some more out of the way places like on the way to Yosemite or near Big Sur. The public charging stations are not all that useful when they only charge at 30 amps. That adds only about 18 miles of range per hour. Plus it seems all of the public spots are taken up by Leafs or Volts. The one time I really needed a public charger due to using a bit more energy on a camping trip I ended up having to unplug a Volt so I could charge in Monterey to reach the Gilroy supercharger. The funny thing is that with the Volt it was more expensive to charge at the public charging station than to use gasoline.
For driving around the Bay Area and where Superchargers are available it has been great. I just wish they would build more of them faster.
http://www.teslamotors.com/supercharger shows where they plan to install them.
Actually the torque drops of gradually. The induction motor has a lot more high speed torque than a lot of other electric cars. I have both a Prius and a Model S P85. In my Prius the low end torque is great but it rapidly drops off and is quite pathetic at higher speeds. Similarly my father's Fisker Karma has great torque up to around 40MPH where it starts to get rather anemic. My Tesla Model S on the other hand still has plenty of torque at freeway speeds. It's a fairly flat torque curve. I think this may be due to the fact that Tesla is using an induction motor instead of synchronous motors. If I punch it at a green light I'm usually doing 45 by the time I reach the other side of the intersection and it just keeps going. It will do a quarter mile in 12.4 seconds and 0-60 in 4.2 seconds or less (some have gotten as low as 3.9 seconds). http://www.zeroto60times.com/Tesla-Electric-Cars-0-60-mph-Times.html
The torque is insane. I've driven up some steep grades like Kingsbury Grade near Lake Tahoe and the car handles it like it's nothing.
I have some familiarity with Fisker since my father bought a Karma. When I went to test drive it the car was in some weird mode the dealer couldn't get it out of and the entire time it went "bong bong bong" while driving. While the car handled nicely it felt heavy (it weighs 5300lbs). Acceleration was OK, not great. The interior of the car was small. Despite being such a large car it is labeled as a subcompact. The battery pack running down the center of the car takes up a huge amount of space.
As for being eco-friendly the car gets 21MPG on premium gasoline and is rated at 50MPG equivalent on electricity, basically no better than a Prius on electricity and far worse on gasoline.
The touch screen on the car is an unusable piece of crap, unfortunately you are forced to use it for just about everything. Whoever designed it designed it to look cool but not to be useable in a car. The colorscheme is grey on grey and it is hard to see during the day. If the sun hits it you can't see it at all. Also if you wear polarized sunglasses you can't see the display.
The touch panel has "haptic feedback", unfortunately you can't feel it while driving. Also, it requires a fair amount of force to select something. The icons are small and you have to hit them just right, something difficult to do while driving.
I tried unsuccessfully to talk my father out of the car. The car was basically what you would expect from an early prototype, not a production level car.
They replaced the Chinese-made electric motors twice in my father's car. The steel used for the rotors was too soft and the splines broke with the original motors. Afterwards there were some slipping problems which they eventually fixed using Lock-Tite. The car has had problems with the CAN bus due to interference and my father has had to have his car towed on numerous occasions.
There have also been major problems with the generator connected to the engine. The part linking the two tends to break and it cannot handle any misfiring by the engine.
The fires were also another major setback, due to a defective fan module.
Then there was the battery fiasco. Fisker promised selling at least 15,000 Karmas and relied entirely on A123 for the battery pack. Between Fisker's failure to sell the volume they promised and the battery defect A123 ended up bankrupt.
Fisker Automotive made a number of huge mistakes. The company was run like a large Detroit auto company which they were not. They spent money like water, ordering huge numbers of components ahead of time to make something on the order of 15,000 cars. Much of the manufacturing and design was pushed out to suppliers. The drive train was made by Quantum. The touch screen and software was also farmed out. The engine was GM. Fisker was basically an integrator.
Fisker also spent money like water. They went through over 1 billion dollars without a working factory to show for it. The top brass were from Detroit and they were used to dealing with big budgets like Detroit.
I will say that the Fisker Karma is a beautiful car and the interior is quite nice despite being cramped.
I ended up buying a Tesla model S.
That is true. I am not that familiar with ARM personally. As I said most of my experience is with MIPS. I have been working with MIPS processors for the last 14 years at the device driver and bootloader level.
The biggest issue with ARM64 right now is that it is still rather immature. It will take a while for things to fully stabilize. I will likely be working on it in the future since my employer is working on 64-bit ARM chips. The funny thing is that from what I looked at, ARM64 looks an awful lot like MIPS.
What I love about MIPS is that it never really got all the cruft that ARM did and certainly not all the crap that was piled into X86. While MIPS did pick up some crap, like MIPS16, I rarely see it implemented. It was their answer to Thumb. It doesn't really improve code density much and the performance penalty isn't worth it so in practice most vendors don't support it. The migration from MIPS32 to MIPS64 is quite elegant with no major instruction changes except for adding new 64-bit instructions to augment some of the 32-bit ones and a few changes to the ABI.
I still use objcopy for our bootloaders and it takes experience to get the assembler to always do the right thing. I have to remember to always tell it to not reorder instructions since otherwise it tries to hide the branch delay slot for example. So far my favorite bootloader is an 8K MMC and SD bootloader. All of the assembly code fits in the first sector in front of the partition table. I had a lot of room left so I put most of the serial port routines in there to print strings and hex values. The 64-bit C code loads the next stage bootloader out of a bootable FAT16 or FAT32 partition into the L2 cache, has the MMC and SD drivers, validates the bootloader CRC and will use two alternate backups if the CRC fails. It can even load an environment file off of the SD card for the bootloader as well.
For U-Boot we use virtual memory so we don't have to relink. It also allows it to run seamlessly from any memory location with a single binary. Even though the code is 32-bit it will happily run at the top of memory even when 64GB of RAM is installed. That way the same bootloader works if we boot over PCIe, JTAG, MMC or NOR flash. On MIPS not having a page table makes this trivial. I just have to program a few Coprocessor 0 registers to load it into the MIPS translation look-aside buffer to set up virtual memory. That way we have virtual memory running before running any C code.
I can certainly ask. Our processors are designed for packet pushing. Here's an inexpensive router using one of our older low-end chips:
http://www.amazon.com/EdgeRouter-ERLite-3-512MB-Ethernet-Router/dp/B00CPRVF5K/ref=sr_1_2?ie=UTF8&qid=1381865052&sr=8-2&keywords=router+million+packets
It's capable of pushing a million packets per second using Linux and a modified TCP/IP stack. While Ubiquity source releases all the source sadly they're using a rather old SDK (2.0). Once things settle down at work I hope to incorporate support for this into our base bootloader. I'd also love to push all of the bootloader changes I have made to U-Boot upstream though I'm dreading the battle involved due to the huge amount of code and some of the unorthodox things we do.