华为_大规模逻辑设计指导书.pdf-FPGA CPLD资料源码分享社区-FPGA CPLD-ChipDebug

华为_大规模逻辑设计指导书.pdf

该帖子部分内容已隐藏
付费阅读
3积分
此内容为付费阅读,请付费后查看

说穿了大规模逻辑设计的基本保证就是设计规范

目 录
5.2代码编写中容易出现的问题 ……………………………… ……… 37
5.1.12FSM ………………………………………….. ……… 36
5.1.11Comments ………………………………………. ……… 36
5.1.10Macros …………………………………………. ……… 36
5.1.9Combinatorial Vs Sequential Logic ……………………….. ……… 35
5.1.8Assignment ………………………………………. ……… 34
5.1.7Writing functions …………………………………… ……… 33
5.1.6case 语句 ………………………………………… ……… 33
5.1.5IF 语句 …………………………………………. ……… 32
5.1.4Expressions ………………………………………. ……… 31
5.1.3Net and Register ……………………………………. ……… 31
5.1.2Modules ………………………………………… ……… 29
28
5.1.1选择有意义的信号和变量名 对设计是十分重要的 命名包含信号或变
量诸如出处 有效状态等基本含义 下面给出一些命名的规则 ……… ………
5.1Verilog 编码风格 ……………………………………… ……… 28
5规范内容 …………………………………………….. ……… 28
4引用标准和参考资料 …………………………………….. ……… 28
3定义 ………………………………………………… ……… 28
2范围 ………………………………………………… ……… 28
1目的 ………………………………………………… ……… 28
第二章VERILOG语言编写规范 ……………………………….. ……… 28
8.5 参数化元件实例 ……………………………………… ……… 26
8.4 程序包书写实例 ……………………………………… ……… 25
8.3 函数书写实例 ………………………………………. ……… 24
8.2 VHDL 编写范例 ……………………………………… ……… 22
8.1 VHDL保留字 ……………………………………….. ……… 22
8附录 ………………………………………………… ……… 22
7.5 多赋值语句案例 三态总线 ……………………………… ……… 21
7.4 避免使用Latch ………………………………………. ……… 20
7.3 考虑综合的执行时间 ………………………………….. ……… 20
7.2组合逻辑描述的多种方式 ……………………………….. ……… 20
7.1 资源共享问题 ………………………………………. ……… 19
7 代码编写中容易出现的问题 ………………………………… ……… 19
6代码模块划分 ………………………………………….. ……… 18
5.1.13 TAB键间隔 ……………………………………… ……… 18
5.1.12Comments ………………………………………. ……… 18
5.1.11 FSM 有限状态机 ……………………………….. ……… 18
5.1.10package ………………………………………… ……… 18
5.1.9 类属( generics) ……………………………………. ……… 17
5.1.8 procedure ……………………………………….. ……… 17
5.1.7 function ………………………………………… ……… 16
5.1.6 运算符(operator) …………………………………… ……… 16
5.1.5 语句 …………………………………………… ……… 12
5.1.4实体 …………………………………………… ……… 10
5.1.3 信号和变量 ……………………………………… ………. 9
5.1.2数据对象和类型 …………………………………… ………. 9
5.1.1标识符 Identifiers)命名习惯 …………………………… ………. 8
5.1 VHDL编码风格 ……………………………………… ………. 7
5规范内容 …………………………………………….. ………. 7
4引用标准和参考资料 …………………………………….. ………. 7
3定义 ………………………………………………… ………. 7
2范围 ………………………………………………… ………. 7
1目的 ………………………………………………… ………. 7
第一章 VHDL语言编写规范 …………………………………. ………. 7

4.1合理选择加法电路 ……………………………………. ……… 89
4设计技巧 …………………………………………….. ……… 89
3.10时钟电路设计 ………………………………………. ……… 88
3.9异步复位电路设计 ……………………………………. ……… 87
3.8三态电路设计 ……………………………………….. ……… 86
3.7合理使用内部RAM ……………………………………. ……… 85
3.6错误地使用变量或信号 …………………………………. ……… 82
3.5同一个信号在两个或两个以上的process中赋值 …………………. ……… 82
3.4产生不必要的Latch ……………………………………. ……… 81
3.3错误使用inout ……………………………………….. ……… 80
3.2采用std_logic以外的信号类型 …………………………….. ……… 80
3.1.2采用时间相关语句 仿真语句 ………………………… ……… 80
3.1.1信号或变量赋初值 ………………………………….. ……… 80
3.1不可综合的代码 ……………………………………… ……… 80
3常见问题 …………………………………………….. ……… 79
2.2代码模块划分 ……………………………………….. ……… 78
2.1代码编写风格 ……………………………………….. ……… 78
2VHDL代码风格 ………………………………………… ……… 78
1前言 ………………………………………………… ……… 78
第五章 VHDL数字电路设计指导 ………………………………. ……… 78
8ALTERA参考设计准则 ……………………………………. ……… 77
7 时序设计的可靠性保障措施 ………………………………… ……… 76
6 全局信号的处理方法 …………………………………….. ……… 72
5 时延电路处理 …………………………………………. ……… 71
4SET和RESET信号处理 …………………………………… ……… 70
3.4 不建议使用电路 ……………………………………… ……… 69
3.3 异步设计中常见问题及其解决方法 …………………………. ……… 59
3.2 同步电路的设计规则 ………………………………….. ……… 59
3.1同步电路的优越性 ……………………………………. ……… 58
3同步电路设计 ………………………………………….. ……… 58
2 时序分析基础 …………………………………………. ……… 57
1 设计可靠性 ………………………………………….. ……… 57
第四章同步电路设计技术及规则 ……………………………….. ……… 57
4.2ASIC设计如何考虑可靠性 ……………………………….. ……… 54
4.1ASIC可靠性设计 ……………………………………… ……… 52
4附录 ………………………………………………… ……… 52
3.4设计的规范性 ……………………………………….. ……… 52
3.3设计的可靠性 ……………………………………….. ……… 52
3.2.5设计验证 仿真测试方案 ……………………………. ……… 51
3.2.4具体电路设计 详细设计文档 ………………………… ……… 50
3.2.3确定关键电路时序和模块间接口时序 总体方案 ……………. ……… 49
3.2.2功能模块划分 …………………………………….. ……… 49
3.2.1设计目标分析 …………………………………….. ……… 49
3.2基本设计流程 ……………………………………….. ……… 49
3.1设计工程师基本素质要求 ……………………………….. ……… 48
3可编程ASIC设计 ……………………………………….. ……… 48
2.3根据市场需求和产品发展策略确定芯片开发策略 ………………… ……… 47
2.2芯片设计发展趋势 ……………………………………. ……… 47
2.1芯片设计类型 ……………………………………….. ……… 46
2芯片设计发展趋势 ………………………………………. ……… 46
1引言 ………………………………………………… ……… 46
第三章 可编程ASIC设计方法简介 ……………………………… ……… 45
6.2testbench编写示例 …………………………………….. ……… 44
6.1Module 编写示例 ……………………………………… ……… 43
6附录 ………………………………………………… ……… 43

5.2不要直接使用数字 ……………………………………. …….. 136
5.1只使用IEEE的标准类 ………………………………….. …….. 136
5可移植性的编码准则 …………………………………….. …….. 136
4.14 使用有意义的标号 …………………………………… …….. 135
4.13 使用循环 LOOP和数组 ………………………………. …….. 135
4.12 使用函数 …………………………………………. …….. 135
4.11 VHDL Entity_Architecture和Configuration段 …………………. …….. 135
4.10 端口映射和Generic映射 ……………………………….. …….. 135
4.9端口顺序 ………………………………………….. …….. 134
4.8不要使用HDL的保留字 …………………………………. …….. 134
4.7缩进 ……………………………………………… …….. 134
4.6行长度 ……………………………………………. …….. 134
4.5独立成行 ………………………………………….. …….. 134
4.4使用注释 ………………………………………….. …….. 134
4.3源文件中要有文件头 …………………………………… …….. 133
4.2VHDL中Architecture的命名约定 …………………………… …….. 133
4.1命名定义 ………………………………………….. …….. 132
4原则描述 …………………………………………….. …….. 132
3基本原则 …………………………………………….. …….. 132
2范围 ………………………………………………… …….. 132
1目的 ………………………………………………… …….. 132
第六章 代码可重用性设计 ……………………………………. …….. 132
5.4.9元件的引用 CoreGen/LogiBLOX ……………………… …….. 131
5.4.8实现边界扫描 JTAG 1149.1 …………………………. …….. 131
5.4.7专用I/O译码器 …………………………………….. …….. 130
5.4.6存储器的实现 …………………………………….. …….. 129
5.4.5用三态Buffer实现多路选择器 …………………………… …….. 128
5.4.4专用全局Set/Reset资源 ……………………………….. …….. 126
5.4.3全局时钟Buffer ……………………………………. …….. 124
5.4.2充分利用IOB资源 ………………………………….. …….. 121
5.4.1组合逻辑合理划分 四输入特点 ………………………. …….. 117
5.4高效利用CLB或IOB资源 ………………………………… …….. 117
5.3桶形移位器 Barrel Shifter 的两种实现方式 ………………….. …….. 114
5.2.4三种编码方式的VHDL实例 ……………………………. …….. 109
5.2.3状态机的容错性 …………………………………… …….. 109
5.2.2设计技巧 ………………………………………… …….. 108
5.2.1状态机编码 ………………………………………. …….. 107
5.2状态机编码及设计技巧 …………………………………. …….. 107
5.1Xilinx器件结构特点 …………………………………… …….. 107
5与工艺结构相关的设计技巧 以Xilinx为例 …………………….. …….. 107
4.9复制电路 减少扇出 fanout 提高设计速度 ………………… …….. 105
4.8利用电路的等价性 巧妙地 分配 延时 …………………….. …….. 104
4.7组合逻辑和时序逻辑分离 ……………………………….. …….. 101
4.6流水线 Pipelining ………………………………….. …….. 100
4.5.4综合工具与资源共享 ………………………………… ……… 99
4.5.3子表达式共享 …………………………………….. ……… 99
4.5.2loop语句 ………………………………………… ……… 98
4.5.1if语句 ………………………………………….. ……… 97
4.5资源共享 ………………………………………….. ……… 97
4.4减少关键路径的逻辑级数 ……………………………….. ……… 95
4.3IF语句和Case语句 速度与面积的关系 ………………………. ……… 92
4.2巧妙处理比较器 ……………………………………… ……… 92
4.1.3改变操作数的位宽 ………………………………….. ……… 91
4.1.2使用圆括号处理多个加法器 ……………………………. ……… 91
4.1.1串行进位与超前进位 ………………………………… ……… 89

7.4定义完整的敏感表 ……………………………………. …….. 139
7.3避免组合反馈 ……………………………………….. …….. 139
7.2避免使用LATCH ……………………………………… …….. 139
7.1寄存器推断 …………………………………………. …….. 138
7针对综合的编码准则 …………………………………….. …….. 138
6.6避免内部产生的复位信号 ……………………………….. …….. 138
6.5门控时钟和低功耗设计 …………………………………. …….. 137
6.4避免内部产生时钟信号 …………………………………. …….. 137
6.3避免门控时时钟 ……………………………………… …….. 137
6.2避免使用时钟Buffer …………………………………… …….. 137
6.1避免使用混合时钟沿 …………………………………… …….. 136
6Clock和Reset编码准则 …………………………………… …….. 136
5.4VHDL到Verilog的变换 针对VHDL ………………………. …….. 136
5.3使用package ………………………………………… …….. 136

 

请登录后发表评论

    没有回复内容