打印

【讨论】你是如何定义“芯片的Bug”?

[复制链接]
2043|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
香水城|  楼主 | 2009-3-20 22:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Bug一般表示某种缺陷,但什么样的缺陷才能算Bug,什么样的缺陷不是Bug?我发现不同人有不同的理解,所以造成了很多的误解,希望能够讨论清楚,这样大家可以有共同的语言。

另外,如何对缺陷分级?什么样的缺陷是致命的?什么样的缺陷是可以通过其它途径绕过去而实现需要的功能?什么样的缺陷是无足轻重的,很少有人很少有场合能够用到的功能缺陷?

过几天我会整理并贴出我对这2个问题的理解和定义。
沙发
zusen| | 2009-3-20 22:34 | 只看该作者

通用的功能,不能用通用的手法去实现

就是BUG

使用特权

评论回复
板凳
zusen| | 2009-3-20 22:44 | 只看该作者

2

一些标定的功能,而IC不能实现,或作一些特殊的处理才能实现,就是BUG

使用特权

评论回复
地板
香水城|  楼主 | 2009-3-21 11:37 | 只看该作者

2楼的说法值得商榷

通用的功能,不能用通用的手法去实现

我不认为这种情况应该算Bug,我认为只要是需要的功能可以通过适当的方法实现,并且不影响使用效果和效率,就不能说是Bug。

比如某种功能的一种实现方法,被某个公司注册为专利,其它公司就不能再无偿地使用这种实现方法,为了能够以具有竞争力的价格向市场提供具有该功能的产品,其它公司就必须通过其它的途径来实现需要的功能。因此,如果把这种情况说成是Bug,那么这个世界上将很少有没有Bug的产品。如果这样定义Bug的含义,将不利于市场竞争。

使用特权

评论回复
5
McuIsp| | 2009-3-21 12:11 | 只看该作者

每个人对Bug的理解可能都不一样。

我的看法是某个功能从手册等厂家资料或一般认识等其他方面看起来应该如此,但实际不如此,就可以说是Bug。这个叫软Bug。
真正的硬Bug是本来应该可以实现某功能,实际上却无法实现,就是硬Bug。

软、硬Bug应该尽量由厂家发现并采取有效手段公布,这样用户能提前知道,避免遭遇Bug带来的损失和不信任感。

使用特权

评论回复
6
sszxxm| | 2009-3-21 13:27 | 只看该作者

我认为芯片提供的资源,如果想尽办法都不能正常利用的,

每个厂家都有自己的一套做芯片和软件的手法,我们不能强求,只要手册和资料里说清楚怎么用,你照着用也能用,就不能算BUG,反之你非要用其它公司芯片的用法来硬套在另一家芯片公司的产品上,就是张冠李戴。特别是带程序的芯片不同于74,4000系列标准逻辑芯片。

使用特权

评论回复
7
liuxin518| | 2009-3-22 10:34 | 只看该作者

玩名词

什么是bug?

对于芯片来说,不能按照预期功能设计达到的就是bug.
数据手册中的表述可能有误,那叫勘误,

和设计功能达不到就是bug

有布线的不合理,导致工作不稳定的bug,或在某频率下不稳定,这是不是bug?

有温度,静电,等参数达不到的也是bug,数字电路还好些,模拟参数更多.

对数字电路最重要的就是功能bug
功能设计一方面要符合编程习惯,一方面要便于实现.功能设计和结果不符合就是bug.

不要把在集成电路综合及布线的bug用"我们就是这样设计的"这类说辞来搪塞用户.这样做不好!

有些管脚复用时出错,这就是典型的bug.还有数据总线的交叉通路切换时出现短暂的亚稳态也是bug.模拟开关切换时ADC出现毛刺,也是bug
有些bug的确是可以用软件来弥补,但不能掩盖bug的实质

当然如果说手册的勘误算bug也不能说错.谁让你不好好写,俗话说面上工作要有三分,有时候是七分.

至于有些东西的编程习惯导致用户用起来不舒服,这个虽说可以理解,但不能说是bug.这个和bug无关,不过要归咎于ip版权和总设计师了.ip的版权问题恐怕不是一般用户关心的,编程模式复杂,选择其他芯片,这好些无可指责.花点钱,买些个好ip,多请些人测试,这个对目前st还是有一点意义.成本稍微上一点,但用户很多,达到利益最大化,这个应该是香主和st直接需要沟通的了

使用特权

评论回复
8
liuxin518| | 2009-3-22 10:44 | 只看该作者

补充一下

数据电路中出现亚稳态及模拟开关出现毛刺正常,但传递给下一级就是问题了

使用特权

评论回复
9
程序匠人| | 2009-3-22 17:14 | 只看该作者

bug不可怕,可怕的是不知道有bug。呵呵

这就好比路上有个坑。你只要在坑的四周围上护栏,晚上点上灯,告诉路人:这里有个坑,请绕行。那么这个坑(bug)就不可怕。

使用特权

评论回复
10
headwolf| | 2009-3-22 20:51 | 只看该作者

个人认为只要堪误手册尽快发布,有规避办法,都好说。

最怕就是有的MCU,出了BUG,还要用户找BUG,找到了,也不会写进勘误,折腾死方案公司。

使用特权

评论回复
11
我是电工| | 2009-3-22 22:20 | 只看该作者

LPC2000就是个典范!

LPC2000就是个典范!
LPC2000的BUG 就是跟大家开国际玩笑!

使用特权

评论回复
12
香水城|  楼主 | 2009-3-22 22:25 | 只看该作者

10楼、11楼跑题了

这里讨论的是“什么是Bug”,不是谁有Bug,有Bug时怎么办,呵呵~~~~

使用特权

评论回复
13
McuIsp| | 2009-3-22 23:35 | 只看该作者

看来香版要定制好一些牌子备用,上写“此处有小坑”。

署名:STM32F城管小队长。

使用特权

评论回复
14
程序匠人| | 2009-3-23 00:00 | 只看该作者

放下菜刀——立地成佛! 欧耶!

就拿匠人来说吧,最近每天都在熬夜学STM32。面对网上浩如烟海的STM32资料、例程和手上一本据说错误百出的书,真是看得晕死过去几回,醒转过来后继续看。真是死去活来。

有时也会按照以往的经验去理解,经验一旦与实际情况不符,就会陷入牛角尖,好久转不出来。

思维定势 也会害死人。

从应用者的角度来说,一是要扩充自己的经验,多接触一些不同的芯片,体味各自的特点,所谓“见多不怪”是也;二是要尽量采用逆向思维、发散性思维,要敢于怀疑一切(包括以往的经验),**“实践是检验真理的唯一标准”。

从设计者和推广者来说,想把“高端”的ARM级别的产品导入到“低端”的单片机市场,就要尽量照顾一下传统单片机工程师的思维习惯,这叫“客随主便”。曲高则和寡,毕竟,不是每个单片机工作者都熟悉ARM的架构。

如果真是有与众不同之处,也最好能指出来。这样有利于用户上手,缩短学习时间,降低开发风险,提高开发效率。

所以,匠人觉得,这不是“BUG”之争,而是“习惯”之争。双方只有都放下争执念头,正视这种差异性,才能求同存异,发挥出芯片的最佳效能,做出最好的产品。

各位施主,放下菜刀——立地成佛! 欧耶!

使用特权

评论回复
15
hotpower| | 2009-3-23 00:11 | 只看该作者

哈哈~~~想让菜农放下菜农等于---白日做梦~~~

哈哈~~~恭喜匠人美眉成精~~~

使用特权

评论回复
16
程序匠人| | 2009-3-23 00:16 | 只看该作者

放下菜刀,立地成佛;若不成佛,也能成精! 欧耶!

使用特权

评论回复
17
violet520| | 2009-3-26 22:43 | 只看该作者

可怕的是让用户测试bug

使用特权

评论回复
18
soicer| | 2009-3-27 15:30 | 只看该作者

预期功能实现不了肯定是BUG

有些功能是"发现"出来的而不是"发明"出来的,也应该是BUG

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:意法半导体(中国)投资有限公司
简介:STM32技术专家

596

主题

17084

帖子

284

粉丝