文档详情

硬件描述语言8要点.ppt

发布:2017-01-23约6.14千字共27页下载文档
文本预览下载声明
第六讲 verilog的可综合性 逻辑综合 Verilog的逻辑综合 Verilog的可综合风格 6.1 逻辑综合 6.2 Verilog HDL综合 ⑥阻塞或非阻塞 阻塞、非阻塞对比 ⑦函数和任务 任务 ⑧复位 6.3 verilog可综合设计 一、 verilog编码风格 * * 逻辑综合:在标准单元库和特定的设计约束的基础上,把设计的高层次描述转换成优化的门级网表的过程。 标准单元库可以包含简单的单元,例如与门、或门和或非门等基本逻辑门,也可以包含宏单元,例如加法器、多路选择器和特殊的触发器。 计算机辅助逻辑综合工具的出现已经把高层次描述向逻辑门的转化过程自动化了。设计者现在可以把精力集中在体系结构的方案、设计的硬件语言描述上,由综合工具在内部进行几次反复,生成优化的门级描述。 自动化的逻辑综合已经非常有效地减少了高层次设计到门级网表的转化时间。它使设计者可以把更多的时间用于更高层次的描述上,因为把设计转换到门级网表所需的时间大大减少了。 寄存器传输级(RTL)层次用硬件描述语言verilog编写设计。 术语RTL用于表示HDL的一种风格,该风格的描述采用了数据流和行为结构相结合的方式。 逻辑综合工具接受RTL级描述并把它转化为优化的门级网表。 Verilog和VHDL是两种最流行的RTL描述语言 input, inout, output parameter module wire , reg , tri 允许使用向量表示 模块调用和门级原语调用 function, task 不考虑时序结构 always, if, else, case, casex, casez 不支持initial begin, end, named blocks, disable assign 不考虑延迟信息 for , while, forever while和forever循环必 须包括@(posedge clock)或(negedge clock) 端口 参数 模块定义 信号和变量 调用(实例引用) 函数和任务 过程 过程块 数据流 循环 关键字或描述       注释 结构类型 支持综合的Verilog结构类型 逻辑综合工具并不能处理随意编写的verilog结构描述:通常,周期到周期的任何RTL verilog结构描述都能为逻辑综合工具所接受。 一、verilog结构类型 只有周期到周期的任何RTL verilog结构描述都能为逻辑综合工具所接受。例while和forever语句必须由@(posedge clock)或@(negedge clock)终止循环,使其具有强制性的周期到周期的描述。 #delay结构指定的延迟将被忽略 不支持initial语句,必须用复位机制来代替。 要明确指定信号和变量的宽度。否则,综合后的可能会产生大量的门级网表 注意事项: 二、操作符 几乎所有的操作符都可以综合。 ===和!==与x和z有关的操作符不可综合 写表达式时,要用圆括号使逻辑关系明确,最好不要依赖运算的优先级 { } {{}} ! ~ | ^ + - * % = = = = != ^ ~^ | || ?: 连接及复制操作符 一元操作符 算术操作符 逻辑移位操作符 关系操作符 相等操作符 按位操作符 逻辑操作符 条件操作符 符号 操作符类型 三、部分verilog结构的综合 ①赋值语句assign 赋值语句综合为组合逻辑电路 assign out= (a b) | c; 综合为以下门级电路 assign {c_out,sum}=a + b + c_in; assign out= (s) ? d1 : d0; ②if---else语句 module compif (out, d0, d1, s); input d0, d1, s; output out; reg out; always @( s or d0 or d1) if (s) out = d1; else out = d0; endmodule 单条的if---else语句综合为一个二选1数据选择器 module compif (a, b, c, d, e); i
显示全部
相似文档