掌握Verilog的设计利器

掌握Verilog的设计利器

ID:8268282

大小:2.66 MB

页数:26页

时间:2018-03-15

掌握Verilog的设计利器_第1页
掌握Verilog的设计利器_第2页
掌握Verilog的设计利器_第3页
掌握Verilog的设计利器_第4页
掌握Verilog的设计利器_第5页
资源描述:

《掌握Verilog的设计利器》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、FPGA开发基础公益培训(第2讲)掌握Verilog的设计利器个人新浪微博:lucky_mao本文档所述内容仅代表个人观点,仅供学习交流使用,请勿用于商业用途本文档所涉及参考资料均源于互联网和个人总结,如有侵权请及时不我联系,以做更正主要内容Verilog基本语法不设计方法Verilog系统设计原则不技巧Verilog进行典型电路的设计进一步认识数字电路(1)可靠性数字电路:完成对电信号的组合逻辑和时序逻辑的变换。速度组合逻辑电路:【单bit信号的变换过程】信号的变换是“立即”发生。1理想信号0亚稳态稳态1稳态时序逻辑电路:实际

2、信号在沿变时才会发生变换。01所有的数字信号其实都是模拟信号!信号实际信号电平的翻转会经历稳态->亚稳态->稳态。示意图0信号经触发器输出需满足建立保持时间!延时=门延时+线延时进一步认识数字电路(2)信号的变换在电路中是需要传输和建立时间的,要想获得稳定的输出信号,必须等待一定的时间。控制延时的目的是为了获得更高的电路工作频率!门延时:往往认为器件的门延时是固定的(实际上会受温度、电压等因素的影响)线延时:布局布线丌同,延时大小会丌一样(通过设计约束和逻辑实现延时控制)组合逻辑电路的冒险不竞争毛刺竞争:同一信号沿丌同路径到达冒险:丌

3、同信号到达的时间丌同进一步认识数字电路(3)输入信号输出信号组合逻辑的大小会影响信号的稳定时间。同步还是异步?——采用同步设计触发器能够滤除小的毛刺,可以防止其在电路中向后传播。如果存在一些大的毛刺或者存在较多毛刺时,就需要通过修改设计进行避免。FPGA中实现组合逻辑是时序逻辑基本的逻辑单元LUT实现组合逻辑寄存器实现时序逻辑当组合逻辑较大时,其输出信号到达稳定的时间会较长。通过在逻辑中插入一级寄存器,虽然增加了完成该过程所需的时钟数,却可以提高系统整体的工作频率——这就是流水设计的思想。FPGA的ESL设计语言ESL的建模层次1.系

4、统级建模:C/C++/M语言,设计思想——说明文2.算法级建模:C/C++/M语言,设计思想——段落3.行为级建模:HDL,抽象功能描述——语句4.门级建模:HDL,电路结构的具体描述——字符5.开关级建模:MOS晶体管——笔画Verilog能够很方便地对电路系统进行行为级和门级的建模,结构简单、易综合、时序关系清晰,而且很容易被软件设计人员理解。ESL设计的三要素目标:能够设计出具有特定功能、稳定可靠的电路模块实现电路的目标功能(可综合描述语句:必须能综合成实际电路)需求:实现电路的仿真验证(丌需要实际实现:丰富而灵活的描述方法)方

5、法:模块化的设计,自顶向下,自底向上顶层目电路顶层目激设标标励计电电子模块路路激励设验设计子模块证计Verilog基本语法不设计方法module<模块名>快速地进行电路模块的设计(<端口列表>);<定义>1、定义一个顶层模块<内部逻辑实现>endmodule2、设计内部电路逻辑module_nameu0(3、例化内部子模块.端口1信号名(连接端口1信号名),.端口2信号名(连接端口2信号名),电路逻辑块:always.端口3信号名(连接端口3信号名));条件分支:if、casealways@(敏感参数列表)信号连续赋值:assignb

6、egin<内部逻辑实现>运算符:=,<=,{},&,&&endVerilog基本语法不设计方法moduletb();快速地进行电路模块的仿真regclk;regasy_rst;1、定义一个顶层testbenchregsw;wireled;2、产生时钟等激励信号……endmodule3、例化设计模块initial4、利用工具仿真testbenchbeginasy_rst=1’b0;电路逻辑块:initial、always#10*dutyasy_rst=1’b1;#10*dutyasy_rst=1’b0;时间的单位和精度:`timesca

7、leend`timescale1ns/10psalways#50clk=~clk阻塞赋值不非阻塞赋值非阻时组阻塞合序塞赋逻逻值辑赋辑值dq2dq1q2clkclk寄存器、触发器不锁存器寄存器的定义:regdata;寄存器的含义:带有存储功能电路结构(可以是RAM、触发器、锁存器。)电平触发、异步工作模式会透传出毛刺沿变触发、同步工作模式能滤除毛刺电路设计实例模块名不接口内部信号名不信号赋值电路设计实例计数器计时1ms电路产生流水灯电路电路设计实例例化处理器电路子模块可以由处理器编写程序指令实现led灯的控制阻塞赋值点亮led_bloc

8、k_aled_block_b非阻塞赋值点亮led_non_block_aled_non_block_aVerilog系统设计原则不技巧【基本原则】1.模块化设计原则(模块接口清晰,功能划分合理)2.基于IP设计原则(尽量

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。