fpga设计流程指南(doc21)-流程管理(编辑修改稿)内容摘要:

有 ) 第 8 页 共 21 页 说明: “调用模块的黑盒子接口”的导入,是由于 RTL 代码调用了一些外部 模块,而这些外部模块不能被综合或无需综合,但逻辑综合器需要其接口的定义来检查逻辑并保留这些模块的接口。 前仿真 逻辑综合器 EDIF 网表 ( list) HDL 网表 ( list) 中国最庞大的下资料库 (整理 . 版权归原作者所有 ) 第 9 页 共 21 页 说明: 一般来说,对 FPGA 设计这一步可以跳过不做,但可用于debug 综合有无问题。 布局布线 逻辑综合器 HDL 网表 ( list) 逻辑仿真器 测试数据 调用模块的 行为仿真模型 测试程序 ( test bench) 逻辑综合器 EDIF 网表 ( list) FPGA厂家工具 调用模块的 综合模型 设置布局布线约 束条件 中国最庞大的下资料库 (整理 . 版权归原作者所有 ) 第 10 页 共 21 页 后仿真(时序仿真) HDL 网表 ( list) SDF 文件 (标准延时格式) 测试数据 下载 /编程文件 中国最庞大的下资料库 (整理 . 版权归原作者所有 ) 第 11 页 共 21 页 2. Verilog HDL 设计 基于将来设计转向 ASIC 的方便,本部门的设计统一采用Verilog HDL,但针对混合设计和混合仿真的趋势,所有开发人员也应能读懂 VHDL。 Verilog HDL 的学习可参考 [1][2]。 编程风格( Coding Style)要求 文件 ( 1) 每个模块( module)一般应存在于单独的源文件中,通常源文件名与所包含模块名相同。 FPGA厂家工具 HDL 网表 ( list) SDF 文件 (标准延时格式) 逻辑仿真器 FPGA基本单元仿真模型 测试程序 ( test bench) 中国最庞大的下资料库 (整理 . 版权归原作者所有 ) 第 12 页 共 21 页 ( 2) 每个设计文件开头应包含如下注释内容:  年份及公司名称。  作者。  文件名。  所属项目。  顶层模块。  模块名称及其描述。  修改纪录。 请参考标准示例程序 [3]。 大小写 ( 1) 如无特别需 要,模块名和信号名一律采用小写字母。 ( 2) 为醒目起见,常数( `define 定义) /参数( parameter 定义)采用大写字母。 标识符 ( 1) 标识符采用传统 C 语言的命名方法,即在单词之间以“ _”分开,如: max_delay、 data_size 等等。 ( 2) 采用有意义的、能反映对象特征、作用和性质的单词命名标识符,以增强程序的可读性。 ( 3) 为避免标识符过于冗长,对较长单词的应当采用适当的缩写形式,如用‘ buff’代替‘ buffer’,‘ ena’代替‘ enable’,‘ addr’代替‘ address’等。 中国最庞大的下资料库 (整理 . 版权归原作者所有 ) 第 13 页 共 21 页 参数化设计 为了源代码的可读性和可移植性起见,不要在程序中直接写特定数值,尽可能采用 `define 语句或 paramater 语句定义常数或参数。 空行和空格 ( 1) 适当地在代码的不同部分中插入空行,避免因程序拥挤不利阅读。 ( 2) 在表达式中插入空格,避免代码拥挤,包括: 赋值符号两边要有空格; 双目运算符两边要有空格; 单目运算符和操作数之间可没有空格, 示例如下: a = b。 c = a + b。 if (a ==。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。