首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >嵌入式系统固件设计文档(FDD)

嵌入式系统固件设计文档(FDD)
EN

Software Engineering用户
提问于 2018-11-23 04:02:14
回答 1查看 4.9K关注 0票数 1

就嵌入式系统而言,固件设计文档(FDD)是什么?

我正在开发一个类似于(运行在Arm Cortex A9处理器上)的定制板上的应用程序。我正在使用Xilinx提供的SDK,它为处理器提供了一些内置的硬件函数库,如SPI、UART等。

现在我的任务是为上面的定制板写一个FDD。在这种情况下,捍卫民主阵线会包括甚麽?它是否包括Xilinx已经提供的固件库,或者我们正在自定义板上开发的硬件(和/或HDL软件)?

EN

回答 1

Software Engineering用户

回答已采纳

发布于 2018-11-23 05:23:45

在软件设计方面,通常的关键文件是SDD,即软件设计文档,它详细描述了软件如何工作,因为它将被完成(例如,在目前:系统.它使用.)。由于固件只是一种软件类型,所以我假设FDD只是一个SDD,具有与固件相关的特定特性。

你会发现很多关于如何构造你的文档的废话。我认为只有在这一点上:系统是一组相互关联的部分(Von et.al.)。因此,您需要在两个部分描述您的软件系统:系统(静态)和相互关系(动态)。Google模板,您将看到这是通用结构。因此,你将有一个介绍,静力学部分,动力学部分,和一个结论部分,这将考虑设计的结果。

不要忘记,这样做的目的不是传递文档,而是以系统的方式对实现的细节进行实际思考(并允许其他人思考)。

我编写的上一个SDD响应了一组客户需求(是的,系统是有目的的!)然后,该文件几乎有这样的结构:

  1. 描述软件及其上下文的介绍,简称,摘要。也就是说,这个软件是什么?它执行什么功能?为了什么目标?引用文档(或实际内容,如果项目规模很小)、项目的内容、团队参与的内容、角色等。阅读该文档的人应该知道项目,或者知道项目的细节。在我们的例子中,已经定义了软件需求,因此包含了引用。
  2. 软件设计的方法和实现方法。在我的案例中,这是一个研究项目,对理论领域进行了研究,并将其作为用例,定义了系统的静态结构、组件、测试、blahblah。重要的是描述工具(例如UML、敏捷等)。我想您需要包括特定于硬件、电路、原因和方法的特性。
  3. 首先,我称之为静态部分:系统及其组件(子系统、子.)、接口、结构、实现等。就我个人而言,我认为非常重要的是在第二部分中描述用例(例如,一个人按下一个按钮,一个灯被激活),这将有助于定义系统及其子系统(例如,我们需要一个按钮、一个发光二极管、一个电池)。在特定的情况下,测试可以被认为是组件,因为它们多次充当引用实现。在管理数据库的系统中,如果需要,数据结构将包括在适当的部分或整个章节中。在您的情况下,您应该注意系统的所有静态特性:组件、规范、替代等。接口是一个关键元素,因为它们决定了部件之间的交互。
  4. 第二,动力学部分:各部分之间的相互作用(这决定了关系)。按照这个例子,您将在这里说:“这些部件使用这样的电缆连接;因为按钮允许电流通过,那么,电流在电缆A和B内流动,LED会受到不同的电势导致发光,并导致电池以X速率耗尽”。
  5. 然后,根据你的个人标准,自由地进入你认为重要的细节来澄清。在我们的按钮-电池-LED系统中,我们可以介绍这样脆弱的电路暴露的影响,那么为什么一个盒子会将它封闭;这个按钮由于故障的风险而应该改变的频率,包括一个电池液位计的建议,经济影响(昂贵,但长期来说很便宜),以及它将如何连接,等等。

您也可以随意查看其他模板,并包括您认为重要的部分,但要在前面定义的结构中进行。

票数 4
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/381896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档