丰田栽了的原因,嵌入式软件工程师都该看看

[复制链接]
8785|51
z_no1 发表于 2013-11-4 17:34 | 显示全部楼层
xxlin1984 发表于 2013-11-4 16:30
"就算是一个while(1);的循环,都不定什么时候就会跑飞。"   -- 这是PC指针飞了!和内存无关。
硬件不稳定 ...

PC指针是CPU里的寄存器,可以看做是CPU的内存。
xxlin1984 发表于 2013-11-4 17:38 | 显示全部楼层
PC指针飞了,软件还能干什么事呢,像51时代添加一堆NOP指令,然后祈祷PC指针能飞回来吗?估计都已经车毁人亡了。

另外,宇宙粒子就夸张了,量子理论那种层次的东东不是写几行代码能影响的。
moheionly 发表于 2013-11-4 18:52 | 显示全部楼层
不能用全局变量,那用什么?只能是尽可能的在关键数据部位增加冗余校验,**写的语气也太夸张了点
eydj2008 发表于 2013-11-4 18:57 | 显示全部楼层
他们的车 为什么还卖得那么火  这么弱智的程序员
kseeker 发表于 2013-11-4 19:00 | 显示全部楼层
xxlin1984 发表于 2013-11-4 17:38
PC指针飞了,软件还能干什么事呢,像51时代添加一堆NOP指令,然后祈祷PC指针能飞回来吗?估计都已经车毁人 ...

PC指针飞了,正确设计的软件可以通过看门狗复位然后继续工作。而丰田的软件里居然在中断里喂狗,确实是很让人震惊,这种低级的错误不应该在汽车控制这种场合里出现。
宇宙粒子会导致内存数据被修改甚至损坏电子器件这件事,很多电子学入门的书里都会提及。阿波罗飞船的设计也是一个利用并行模块提高系统可靠性的经典例子。这跟量子理论不搭边,纯粹是电子学的知识。

评论

另外,别提什么阿波罗飞船,您也没深入了解过,别拿这个来压人。  发表于 2013-11-5 11:58
看门狗必须是硬件看门狗,跟LZ位说的软件纠正(任务、堆栈、软件检测)不同吧  发表于 2013-11-5 11:57
qrshi 发表于 2013-11-4 19:55 | 显示全部楼层
luzhch 发表于 2013-11-4 20:12 | 显示全部楼层
黄小俊 发表于 2013-11-4 20:59 | 显示全部楼层
不好意思,没看完
kx918 发表于 2013-11-4 21:01 | 显示全部楼层
学习了,谢谢楼主
gegezaixiao 发表于 2013-11-4 21:18 | 显示全部楼层
我怎么感觉有点假呀?
tcwntc 发表于 2013-11-4 22:00 | 显示全部楼层
本帖最后由 tcwntc 于 2013-11-5 12:29 编辑
xxlin1984 发表于 2013-11-4 16:30
"就算是一个while(1);的循环,都不定什么时候就会跑飞。"   -- 这是PC指针飞了!和内存无关。
硬件不稳定 ...


PC 不飞 程序也可能飞 难道 ROM就不能出错么?
谁说ROM就不能有错的 有100%保证的硬件么 硬盘 ROM EPROM E2PROM 怎么就保证永远不失效了 没见过不代表不存在 没见过的多了 都保证有效了还做什么冗余 你可以说是小概率事件 别跟我说不可能
还跟这儿玩点评 笑了

评论

Flash ROM 里面的东西真有可能错。除非熔丝烧断型的,好像鲁棒性非常高。  发表于 2013-11-8 18:47
ROM出错?你见过吗? 你期望的纠正程序都在ROM里,ROM出错了,还有什么是可靠的  发表于 2013-11-5 11:50
 楼主| i55 发表于 2013-11-4 22:04 | 显示全部楼层
tcwntc 发表于 2013-11-4 22:00
PC 不飞 程序也可能飞 难道 ROM就不能出错么?

建议你看看本质安全单片机的资料,比如Infineon TriCore、Freescale PPC这些,所有Flash和RAM都有校验,只要校验错误马上触发异常中断。Infineon和Freescale在汽车关键控制领域的垄断地位不是吹出来的,相当于十几块钱STM32性能的本安单片机要200多块也不是就是坑人用的,ARM的Cortex-R4F也是针对这一领域,目前看还没挤进去。

评论

都是触发硬件复位(hard fault),包括PC指针飞了后,指向了被保护的禁止区域。 软件最多能做的,也就复位完成后,检查一下复位原因,看看能干什么  发表于 2013-11-5 11:54
wang5637 发表于 2013-11-4 22:23 | 显示全部楼层
xxlin1984 发表于 2013-11-4 16:30
"就算是一个while(1);的循环,都不定什么时候就会跑飞。"   -- 这是PC指针飞了!和内存无关。
硬件不稳定 ...

那还要软件陷阱干嘛 ? 太绝对了 看来你认为只有好的完美硬件才能完成可靠的功能吧?

评论

如果你指的软件陷阱是nop;nop;ljmp ERR; 这种没硬件看门狗时代的不可靠措施还是算了吧。  发表于 2013-11-5 12:09
tcwntc 发表于 2013-11-5 08:19 | 显示全部楼层
i55 发表于 2013-11-4 22:04
建议你看看本质安全单片机的资料,比如Infineon TriCore、Freescale PPC这些,所有Flash和RAM都有校验, ...

既然有检测 有中断了 依据**的表述 就不应该出现错误吧 错误注入应该第一时间被硬件检测出来吧 谢谢您的提示 不过我真不是搞这块的 我只是针对一般的硬件提出一下自己的想法 我也没说那些芯片卖的贵是坑人啊 您反应过激了
asn60 发表于 2013-11-5 11:16 | 显示全部楼层
很不错。看完了。
diyocean 发表于 2013-11-5 16:06 | 显示全部楼层
xxlin1984 发表于 2013-11-4 11:02
“嵌入式系统中内存出错或者程序死亡其实是一种正常现象”
LZ,嵌入式系统 != Windows.

据我所知,要求严格的东西都是都系统备份的,即使是现在的工业控制系统还有一套冗余呢。

看过a320的电子仓,很震撼
jasongu 发表于 2013-11-7 18:01 | 显示全部楼层
3htech 发表于 2013-11-8 15:59 | 显示全部楼层
长见识了~  多谢i55
BitFu 发表于 2013-11-8 16:17 | 显示全部楼层
我觉得还是抗电磁干扰能力不足的可能性较大。
zjp8683463 发表于 2013-11-8 16:33 | 显示全部楼层
硬件无错是基础。如果硬件都完蛋了,你软件在多的校验和冗余也没用,可能是错上加错。

评论

硬件出错是有概率存在的,软件和算法可以处理这种错误就是好的程序。 简单比如我们的SSD盘,bit坏块的概率很大,但芯片里有算法可以规避坏块...  发表于 2018-2-4 11:08
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部