Xilinx ISE14.1用Verilog语言实现一个半加器并测试
<一>建立一个工程
注:Xilinx ISE的安装在此不再过多说明,网上有参考资料
1.打开软件进入如下界面

2.创建工程
File-->New Project


3.创建文件(我取名为firstTry)

右键选择New Source;

设置参数

4.编写代码
module half_add( input a, input b, output sum, output cout );
assign sum = a^b;
assign cout = a&b;
endmodule
5.测试代码
选择项目并且右键(New Source)

测试代码如下:
module half_addtest;
// Inputs
reg a;
reg b;
// Outputs
wire sum;
wire cout;
// Instantiate the Unit Under Test (UUT)
half_add uut ( .a(a), .b(b), .sum(sum), .cout(cout) );
initial begin
// Initialize Inputs
a = 0;
b = 0;
// Wait 100 ns for global reset to finish
//#100; 这句最好暂时不用
// Add stimulus here
#0.001 a = ~a;
#0.001 b = ~b;
#0.001 a = ~a;
#0.001 b = ~b;
#0.001 a = ~a;
#0.001 b = ~b;
#0.001 a = ~a;
#0.001 b = ~b;
end
endmodule
测试步骤:


6.测试代码分析
#0.001 a = ~a;
注意:#N中的N是以ns为单位的,而在测试截图中的时间单位是ps,其中 1ns = 1000 ps;
说到这里也知道测试代码中的#100为什么不要了的原因
这句话2就是从执行这句代码起,等待0.001ns后a取反,然后结合测试截图就可以理解了。
7.生成顶层文件

双击Synthesize中的View RTL Schematic

Xilinx ISE14.1用Verilog语言实现一个半加器并测试的更多相关文章
- 用Verilog语言实现一个简单的MII模块
项目中要求简单地测试一下基于FPGA的模拟平台的RJ45网口,也就是需要实现一个MII或者RMII模块.看了一下官方网口PHY芯片的官方文档,还是感觉上手有点障碍,想在网络上找些参考代码看看,最后只在 ...
- 用Verilog语言设计一个3-8译码器
case语句 if_case语句 源码下载 Github >>
- Verilog 语言 001 --- 入门级 --- 编写一个半加器电路模块
Verilog 语言编写一个 半加器 电路模块 半加器 的电路结构: S = A 异或 B C = A 与 B 1. 程序代码 module h_adder (A, B, SO, CO); input ...
- 基于MATLAB2016b图形化设计自动生成Verilog语言的积分模块及其应用
在电力电子变流器设备中,常常需要计算发电量,由于电力电子变流器设备一般是高频变流设备,所以发电量的计算几乎时实时功率的积分,此时就会用到一个积分模块.发电量计算的公式如下:Q=∫P. FPGA由于其并 ...
- Verilog语言实现并行(循环冗余码)CRC校验
1 前言 (1) 什么是CRC校验? CRC即循环冗余校验码:是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定.循环冗余检查(CRC)是一种数据传输检错功能, ...
- Xilinx 常用模块汇总(verilog)【03】
作者:桂. 时间:2018-05-10 2018-05-10 21:03:44 链接:http://www.cnblogs.com/xingshansi/p/9021919.html 前言 主要记 ...
- Verilog语言:还真的是人格分裂的语言
人气腹语术师天愿在现场披露了被人偶搭档夺取灵魂的腹语术师将妻子杀害的表演节目.天愿真的陷入了多重人格,命令自己杀害妻子和子的人偶的人格出现了.为了不(让自己)杀害和弟子登川有外遇的妻子,天愿提出委托想 ...
- FPGA基础(verilog语言)——语法篇
verilog语言简介 verilog语言是一种语法类似于c的语言,但是与c语言也有不同之处,比如: 1.verilog语言是并行的,每个always块都是同时执行,而c语言是顺序执行的 2.veri ...
- FPGA基础(verilog语言)——语法篇(续1)
上一篇文章提到了FPGA中一个模块基本结构,这篇文章开始介绍语法. 首先,我们学习一门语言都要从这门语言的单词学起,所以verilog中的关键词都有哪些呢?看下面: A:always.assign B ...
随机推荐
- ioc(Inversion of Control)控制反转和DI
ioc意味着将你设计好的交给容器控制,而不是传统在你的对象中直接控制 谁控制了谁:传统的javaSE程序设计,我们直接在对象内部通过new进行创建对象,是程序主动去创建依赖对象:而ioc是有专门一个容 ...
- 强大的桌面用 PDF 重排工具:K2pdfopt 简明教程
用 Kindle 阅读 PDF 一直以来都遭到小伙伴们的无限吐槽,在那 Kindle 还能越狱的时代,我们有 Koreader 之类优秀的 Kindle 第三方插件实现 PDF 文档的实时重排,但是随 ...
- Judge Route Circle
Initially, there is a Robot at position (0, 0). Given a sequence of its moves, judge if this robot m ...
- 移动WEB 响应式设计 @media总结
第一种: 在引用样式的时候添加 <link rel="stylesheet" media="mediatype and|not|only (media featur ...
- Prometheus : 入门
Prometheus 是一个开源的监控系统.支持灵活的查询语言(PromQL),采用 http 协议的 pull 模式拉取数据等特点使 Prometheus 即简单易懂又功能强大. Prometheu ...
- bootstrap 轮播模板
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- DataGrid 得到DataGridRow 和DataGridColumn
/* ---------------------------------------------------------- 文件名称:DataGridPlus.cs 作者:秦建辉 MSN:splash ...
- 【学习】文本框输入监听事件oninput
真实项目中遇到的,需求是:一个文本框,一个按钮,当文本框输入内容时,按钮可用,当删除内容时,按钮不可用. 刚开始用的focus和blur, $(".pay-text").focus ...
- 吾八哥学Python(一):搭建Python开发环境(Windows)
学习Python的第一步当然是要配置一下开发环境了,这里记录一下本人在windows 10(64位)下配置Python开发环境的过程,供跟我一样的新手参考一下. 一.下载Python安装包 目前最新的 ...
- CSS之 float 属性
特性: float的设计初衷仅仅是文字环绕效果 浮动具有破坏性,会使父容器高度塌陷 清除浮动方法: 1.脚底插入cleart:both 2.父元素BFC(IE8+)/haslayout(IE6/7 ...