这复杂的分数是为了是有用的验证,以驱动测试计划。但愿,RTL设计人员可以使用此工具的方式来管理设计的复杂性,并为指导,以有效地了解现有设计的结构。
HDL的复杂性工具是一个简单的工具,以提供测量数据。驱动的概念是,你无法控制你无法衡量的东西。我们打算用现有的研究开发在一组真实的项目表现良好的工具。
实际缺陷数据将被用来测试复杂性的技术,以确定风险的组件。真正的设计将被测量,以确定哪些是HCT的实际用途。最后,该工具应该是实际有用的人设计和/或验证一个复杂的硬件项目。
安装
  1。从http://www.sourceforge.net/hct下载最新的源
  2。解压文件到一个目录
  3。执行:perl的./install.pl在该目录
  **如果你想安装在* nix系统中宽,请以root身份运行
  4。按照安装程序的说明
设计
该HCT是不断发展的。我们正着手与麦凯布圈复杂度分析,以了解分支的复杂性。然后,我们正在改进这与校准与实际缺陷数据更复杂的复杂性分数。
在这方面的一个很好的背景是可用的。请以迈克尔Shaefers“测量HDL模型的复杂性”。下面我们有我们的设计标准HCT利用一些节选。
有迹象表明,在该文件中定义了一些HDL复杂的因素:
- 大小
- 嵌套
- 控制流程
- 信息流
- 层次
- 地方
- 规律
- 模块化
- 耦合(的模块或实例)
- 并发
- 时间
在该文件中,心理的HDL的复杂性的思想引入和共用方面以及软件与硬件设计的复杂性的差异进行了分析。问题的关键是,一个好的成绩的复杂性将坚持六条原则:
1.的措施具有可以基于形式化的基础
2.措施具有要直观
正在开发的3模型必须是可衡量
4.结构化模型进行测量比非结构化的版本不太复杂
5.添加新部件,该模型具有增加的复杂性
6.由更复杂的部分更换模型的一个部分具有增加的复杂性
这些六个崇高的目标,当你开始思考它们。他们所隐含的传递将是很难实现的。但是,我们正在拍摄的这一点,应该把它作为一个指路明灯。
我们需要的用户关联与他们的历史缺陷的改进我们的企图。迭代一个纯粹而简单的通用分析和计算框架的关键是有效的迭代设计。我们必须专注于软件架构我们选择的实施语言的优雅。
最终的目标是正确的得分硬件模块的复杂心理在任何高密度脂蛋白,并以此来预测缺陷率和进度风险
什么是新的在此版本中:
- 在此版本是完全重新设计,精确的测量结果麦凯布圈复杂度,对字节码,注释字节,各种比率和排名系统,你可以用它来了解所有模块的complexit在一个项目。
- 在它的工作原理Verilog和旋回CDL和支持命令行和CSV格式输出上都。
要求:
- 在Perl中
评论没有发现