系统与设计
的意见

真正的HW和SW之间的差异

虽然许多看到硬件设计流程和过程是更先进的软件,硬件设计有一些东西需要学习软件。

受欢迎程度

有多少次我们听到人们说硬件和软件不讲同一种语言吗?这两个经常有不同的条款基本上一样的。硬件称之为受限随机测试是软件人叫起毛。

另一个最近引起了我的注意和Jama软件,波特兰一家软件公司,在需求管理软件的名称。出现的差异,当我跟Derwyn哈里斯,Jama的创始人之一。他告诉我需求管理敏捷方法定义初始公司开发,但一路上他们丢掉自己的需求和决定,他们需要改变。他们还注意到,许多业内其他公司面临同样的问题。

“可追溯性是驾驶人之外的解决方案文档,”哈里斯说。“认证和监管开车需要追溯和使它重要的一种生活。”

生活,哈里斯是谈论敏捷的方式已经改变了软件开发过程。“敏捷的一件事是,人们想要更多的迭代。这意味着他们需要过程更一致,并提供一个无缝的反馈回路。软件公司需要能够移动得更快,变得更有竞争力,他们需要从一个集中规范的需求。”

《美国医学会杂志》提供了一个简短的演示如何迁移到硬件的一些技术,这对我来说是当事情有点奇怪。的要求我看到了规范项目,如“具有DDR3界面”或“必须拥有四核。“‘需求’这个词可以硬件和软件之间的不同吗?到达底部的Adrian Rolufs我跟一位高级顾问Jama来自半导体背景,因此应该能够说我的语言。

Rolufs回应我的困惑。“作为起点,这(演示)项目是我们将显示客户专注于芯片的开发,而不是用芯片的软件。最高水平的信息往往是用于半导体很低水平更大的图景。您正在构建一个芯片,可能进入别的东西直到你得到的东西,一个人会相互作用。芯片也可以进入许多不同的产品。使用半导体客户时,高级需求通常是非常详细的,可能会有要求,比如,“我必须有一个特定的球距或特定的处理器核心,因为这就是我的遗留代码编写的。当需求进来,他们往往是不完全不同于规范项目。不同之处在于上下文内的项目。”

这意味着大部分硬件产品设计没有焦点。但是标准等ISO 26262还是- 254,要求需求可追溯性?他们不想知道单位DDR接口。他们想知道内存的带宽满足一定的要求,他们想知道你如何证明如此。

并发性也使问题变得更加复杂。大多数时候,软件只提供单一功能已经实现,但是硬件在这方面有很大的不同。通常提供了许多的方式可能会发生的事情,或者是做其他的事情在同一时间。

“当你编写硬件需求往往是并行发展架构,“Rolufs解释道。“你可以做建模在顶层,看看你所写是有意义的。每个芯片的发展,我意识到有人尽快考虑解决问题的涉众的需求。许多芯片发展的第一步是开发一个图表显示的主要街区。很有可能他们已经开发出一种相似的产品过去,他们会有一堆东西他们试图重用。他们有经验。他们有很多的解决方案已有知识。所以硬件永远不会从一张白纸开始,和要求都写在已知的解决方案。大多数硬件团队并不擅长创新,因为他们已经解决了这个问题,他们想坚持他们所知道的作品。”

需求往往会变得非常复杂,当你开始看测试用例管理。确保你有一个测试每一个要求是很多处于确定你没有错过,或考虑过程的可变性可难过的事情。“变更管理是很重要的对于这些类型的项目,“Rolufs说。“然后他们可以跟踪的影响发现,规范项目无法满足。”

在一天结束的时候,硬件设计和验证是关于概率。可能是一个错误是如何逃脱?我怎么可能是占了最坏情况的条件吗?的可能性是95%的零部件生产符合规范吗?

“虽然这听起来可能有点复杂,这就是半导体人擅长,“Rolufs补充道。“这是他们的核心专业知识。”

半导体公司传统上并没有要求写的。他们没有开始与一组客户需求;而他们开发一个芯片,他们认为人们会想要的。今天可能是不太可能,您可以构建一些,因为它是一个有趣的工程和期望有一个客户。作为摩尔定律放缓,设计将变得越来越重要,需求可能会开始在半导体的驱动力。

它也似乎这可能是另一个点的概念验证(意图Accellera调用便携式刺激工作小组)可能会与其他系统级集成功能。能够显示一个需求是遇到了一条路穿过一个图,然后能够展示运动路径的测试用例,将使所有这些事情联系在一起。看起来好像需求管理和可追溯性是一个新技能,半导体公司将有一部分软件行业已经有了专业知识。

有关的故事
HW和SW:谁领导谁?
双方都有一些特定的问题,开发了适合他们需求的解决方案。但随着硬件和软件被迫靠近,谁有最好的想法?
汽车、安全性和HW-SW合作设计
专家在餐桌上,两个部分:标准帮助解决一些问题同时在硬件和软件设计。更多的挑战是随着汽车电子和网络安全问题进入方程。
汽车、安全性和HW-SW合作设计
专家表,第1部分:硬件和软件同时必须开发这些天来缩短上市时间先进设备和电子产品。



留下一个回复


(注意:这个名字会显示公开)

Baidu