摘要: 函数的功能和任务的功能类似,但二者还存在很大的不同。在 Verilog HDL 语法中也存在函数的定义和调用。1.函数的定义函数通过关键词 function 和 endfunction 定义,不允许输出端口声明(包括输出和双向端口) ,但可以有多个输入端口。函数定义的语法如下:function [r... 阅读全文
posted @ 2015-02-09 10:23 hfyfpga 阅读(6998) 评论(0) 推荐(0) 编辑
摘要: 任务就是一段封装在“task-endtask”之间的程序。任务是通过调用来执行的,而且只有在调用时才执行,如果定义了任务,但是在整个过程中都没有调用它,那么这个任务是不会执行的。调用某个任务时可能需要它处理某些数据并返回操作结果,所以任务应当有接收数据的输入端和返回数据的输出端。另外,任务可以彼此调... 阅读全文
posted @ 2015-02-09 10:22 hfyfpga 阅读(2451) 评论(0) 推荐(0) 编辑
摘要: 自动化仿真平台由tcl语言搭建,大规模设计使用此平台让仿真便捷不少。大体上用tcl语言进行modelsim仿真的流程如下: 1. 建立库 2. 映射库到物理目录 3. 编译源代码 4. 启动仿真器 5. 执行仿真 tcl语言的语法 vlib :建立库。格式 vlib 。库名缺省值是work ... 阅读全文
posted @ 2015-02-06 19:42 hfyfpga 阅读(1284) 评论(1) 推荐(0) 编辑
摘要: 1、设计中的FIFO、状态机接口需要有异常恢复状态和状态上报机制,格雷码电路防止被综合电路优化掉。a)自行设计的格雷码FIFO(一般用于连续数据流跨时钟域)用Synplify综合时,为了防止被优化需要添加综合引导语句:“synthesis_syn_preserve = 1”;b)各种综合工具均有状态... 阅读全文
posted @ 2015-02-06 19:18 hfyfpga 阅读(2255) 评论(0) 推荐(1) 编辑
摘要: 这里参考特权同学的模块化思想,将常用的print等任务模块化,便于直接调用,提高代码的效率和易读性。现转载之,以供日后的学习和工作参考。print模块参考代码如下://=================================////useful print_task show//inclu... 阅读全文
posted @ 2015-02-06 19:12 hfyfpga 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 下面是我们的Tcl仿真步骤:启动ModelSim SE, 首先看到在在ModelSim SE右边的窗口有ModelSim> 这样的提示符。在提示符后,顺序运行以下命令: vlib work 该命令的作用是在该目录下建立一个work目录,请注意不要用操作系统来新建一个work的文件夹,因为用操作系统建... 阅读全文
posted @ 2015-02-06 19:09 hfyfpga 阅读(4384) 评论(0) 推荐(0) 编辑
摘要: 首先声明:该文章是在刘志伟老师的《Modelsim的Tcl命令》的基础上写的,希望我们能越来越自动化。1.编写好源文件。包含asyn_fifo.v、fifomem.v、rptr_empty.v、wptr_full.v、sync_r2w.v、sync_w2r.v和Testbench文件fifo_asy... 阅读全文
posted @ 2015-02-06 19:07 hfyfpga 阅读(1758) 评论(0) 推荐(0) 编辑
摘要: always @ (posedge clk, negedge rstn)begin:State_flipflops if(!rstn) y<=S1; else y<=Y;end请问这段程序中的State_flipflops代表什么意思?是一个 名 而已,为了在其他地方可以调用。还可以在b... 阅读全文
posted @ 2015-02-05 13:59 hfyfpga 阅读(588) 评论(0) 推荐(0) 编辑
摘要: glob命令这里以实例的形式解释一下glob命令的用法,很多时候纯粹的语法讲解根本讲不清楚,往往没有一个例子清晰,一下就glob命令进行一些分析,环境为Tclsh85,操作系统为windows XP。在windows下面文件夹使用/隔开,为了讲述方便统一使用/来描述。如果需要了解glob命令的使用说... 阅读全文
posted @ 2015-01-29 09:38 hfyfpga 阅读(5939) 评论(0) 推荐(1) 编辑
摘要: 本篇文章对tcl脚本的解释工具获取和编辑工具进行一个简单的介绍,工欲善其事,必先利其器,掌握好解释工具的用法,能够使后续的脚本开发工作更加顺利。从源代码的获取到编译,详细解释在linux和windows下对tcl源代码进行编译的方法。1、获取tcl源代码:从网站www.tcl.tk上面获取tcl/t... 阅读全文
posted @ 2015-01-29 08:31 hfyfpga 阅读(2744) 评论(0) 推荐(0) 编辑