FPGA学习之模块化设计概述

时间:2025-11-02  作者:Diven  阅读:0

模块化设计是FPGA设计中一个很重要的技巧,能够使一个大型设计的分工协作、仿真测试更加容易,代码维护或升级更加便利。

FPGA学习之模块化设计概述

如图8.28所示,一般整个设计的顶层只做例化,不做逻辑。然后一个顶层下面会有模块A、模块B、模块C等等,模块A/B/C下又可以分多个子模块实现。

图8.28 模块层次设计

如此一来,就可以将大规模复杂系统按照一定规则划分成若干模块,然后对每个模块进行设计输入、综合,并将实现结果约束在预先设置好的区域内,最后将所有模块的实现结果有机地组织起来,就能完成整个系统的设计。

对于顶层模块的设计,主管设计师需要完成顶层模块的设计输入与综合,为进行模块化设计实现阶段的第一步即初始预算阶段(Initial Budgeting Phase)做准备。

对于子模块的设计,多个模块的设计者相对独立地并行完成各自子模块的设计输入与综合,为进行模块化设计实现阶段的第二步即子模块的激活模式实现(Active Module Implementation)做准备。

模块化设计的实现步骤是整个模块化设计流程中最重要、最特殊的,包含:

●  初始预算,本阶段是实现步骤的第一步,对整个模块化设计起着指导性的作用。在初始预算阶段,项目管理者需要为设计的整体进行位置布局,只有布局合理,才能够在最大程度上体现模块化设计的优势;反之,如果因布局不合理而在较后的阶段需要再次进行初始预算,则需要对整个实现步骤全面返工。

●  子模块的激活模式实现(Active Module Implementation),在该阶段,每个项目成员并行完成各自子模块的实现。

●  模块的最后合并(Final Assembly),在该阶段项目管理者将顶层的实现结果和所有子模块的激活模式实现结果有机地组织起来,完成整个设计的实现步骤。

模块划分的基本原则是,子模块功能相对独立,模块内部联系尽量紧密,而模块间的连接尽量简单。对于那些难以满足模块划分准则的具有强内部关联的复杂设计,并不适合采用模块化设计方法。

本实验,我们就要来体验一把模块化设计。如图所示,在这个设计中,我们的顶层模块是cy4.v,在此之前的实例中,我们都只有孤零零的一个cy4.v是源代码文件,所有的逻辑代码都写在这个文件中,但是这个实例开始,我们将使用模块化的设计,将各个不同的独立的功能逻辑代码分别写在不同的源文件中,然后通过“例化”的方式,将之间的接口互联起来。

这个例子中,cy4.v文件里面其实几乎是没有具体的逻辑功能的,只是做一些基本的例化和互联,将下面的5个功能模块相关的接口信号都连接起来。如图8.29所示,还具体层级的关系,一目了然,非常易于查看和编辑管理。

图8.29 模块层次图

2板级调试

参考前面的例程,将本实例生成的sp6.bit文件烧录到FPGA中,接着我们就能看到D2、D3、D4和D5这4个LED完全同步的进行闪烁。当然了,这也至少证明了我们的PLL输出的4个时钟相互之间所呈现的倍频关系。

猜您喜欢

导读:在这个数据如金的时代,工业信息抑或产品数据才是企业最大的财富,技术的创新不能单单依靠客户的使用满意度,更多的要从数据中反馈,例如:程序运行是否顺畅、应用场...
2022-03-10 15:08:00

百洁布和钢丝球是家庭清洁中常见的工具,各自有不同的参数和特点。百洁布通常由聚酯纤维和尼龙制成,具有良好的耐磨性和吸水性。其厚度一般在0.5毫米到1毫米之间,适用...
2010-03-02 00:00:00



贴片电阻R101的标称阻值为0Ω,并不代表完全没有电阻。实际上,是一种特殊用途的贴片电阻,通常被称为零欧姆电阻或跳线电阻。的实际阻值非常小,一般在几毫欧到几十毫...
2024-11-29 10:26:10

保险丝作为重要的保护元件,有着着保障电路安全的关键作用。一次性保险丝因其结构简单、可靠性高和成本低廉,应用于各种电气设备中。卡亚斯(Kayas)作为知名的保险丝...
2024-10-14 05:48:30

万向接头是常见的机械传动部件,应用于汽车、工程机械、机器人等领域。主要作用是实现两个不在同一轴线上的旋转部分之间的动力传递,同时允许一定的角度偏移。通过万向接头...
2011-01-02 00:00:00

滤毒盒作为防护装备的重要组成部分,其参数直接关系到使用效果和安全性。滤毒盒的过滤效率是关键指标,通常以百分比表示,越高的过滤效率意味着能更有效地阻挡有害物质。滤...
2012-06-20 00:00:00


贴片电阻上的30C标识代表其阻值为30欧姆。30直接表示数值,而字母C代表的是数量级和误差。在贴片电阻的标识方法中,字母通常对应特定的乘数因子或误差范围。字母C...
2024-11-29 10:25:50