verilog实验2

verilog实验2
verilog实验2

实验二

一、实验内容

用Verilog HDL语言编写模为365的计数器电路模块,并编写测试模块仿真。

二、主要程序

电路模块:

modulemy_counters(clk, clear, qn);

inputclk, clear;

output[7:0] qn;

reg[7:0] qn;

always @(posedgeclk or negedge clear)

begin

if(!clear)

qn<= 0;

else if(qn == 200)

qn<= 0;

else

qn<= qn + 1;

end

endmodule

测试模块:

`timescale 1 ns/ 1 ns

modulemy_counters_vlg_tst();

// constants

// general purpose registers

regeachvec;

// test vector input registers

reg clear;

regclk;

// wires

wire [7:0] qn;

// assign statements (if any)

my_counters i1 (

// port map - connection between master ports and signals/registers .clear(clear),

.clk(clk),

.qn(qn)

);

initial

begin

clear = 1;

#1 clear = 0; clk = 0;

#1 clear = 1;

#100 $finish;

end

always

// optional sensitivity list

// @(event1 or event2 or .... eventn)

begin

#5 clk = ~clk;

// --> end

end

endmodule

三、仿真结果

图(1)365计数器

四、实验小结

通过此次实验。我在Modeisim软件平台上通过使用Verilog HDL语言编写模值为365的计数器。通过这次编写使我对Verilog有个更深刻的了解。在编写程序的过程中。Texebenech 测试文件的编写十分重要。因为软件并不能检测出测试文件的错误。如果测试文件出错。将无法得到仿真结果。所以在编写测试文件时要小心谨慎。

verilog数字系统设计教程习题答案

verilog 数字系统设计教程习题答案第二章 HDL 既是一种行为描述语言,也是一种结构描述语言。如果按照一定的规则和风格编写代码,就可以将功能行为模块通过工具自动转化为门级互联的结构模块。这意味着利用Verilog 语言所提供的功能,就可以构造一个模块间的清晰结构来描述复杂的大型设计,并对所需的逻辑电路进行严格的设计。 2.模块的基本结构由关键词module和endmodule构成。 3.一个复杂电路系统的完整Verilog HDL 模型是由若干个Verilog HDL模块构成的,每一个模块又可以由若干个子模块构成。其中有些模块需要综合成具体电路,而有些模块只是与用户所设计的模块交互的现存电路或激励信号源。利用Verilog HDL语言结构所提供的这种功能就可以构造一个模块间的清晰层次结构来描述极其复杂的大型设计,并对所作设计的逻辑电路进行严格的验证。 HDL和VHDL乍为描述硬件电路设计的语言,其共同的特点在于:能形式化地抽象表示电路的结构和行为、支持逻辑设计中层次与领域的描述、可借用高级语言的精巧结构来简化电路的描述、具有电路仿真与验证机制以保证设计的正确性、支持电路描述由高层到低层的综合转换、硬件描述与实现工艺无关(有关工艺参数可通过语言提供的属性包括进去)、便于文档管理、易于理解和设计重用。 5.不是

6.将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。 7.综合工具可以把HDL变成门级网表。这方面Synopsys工具占有较大的优势,它的Design Compile 是作为一个综合的工业标准,它还有另外一个产品叫Behavior Compiler ,可以提供更高级的综合。 另外最近美国又出了一个软件叫Ambit ,据说比Synopsys 的软件更有效,可以综合50万门的电路,速度更快。今年初Ambit 被Cadence 公司收购,为此Cade nee放弃了它原来的综合软件Syn ergy。随着FPGA 设计的规模越来越大,各EDA公司又开发了用于FPGA设计的综合软件,比较有名的有:Sy nopsys 的FPGAExpress,Cade nee 的Syn plity ,Mentor的Leonardo,这三家的FPGA综合软件占了市场的绝大部分。 8.整个综合过程就是将设计者在EDA平台上编辑输入的HDL文本、原理图或状态图形描述,依据给定的硬件结构组件和约束控制条件 进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述网表文件。用于适配,适配将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件,如JEDEC Jam格式的 文件 9.在FPGA设计中,仿真一般分为功能仿真(前仿真)和时序仿真(后仿真)。功能仿真又叫逻辑仿真,是指在不考虑器件延时和布线延时的理想情况下对源代码进行逻辑功能的验证;而时序仿真是在布局布线后进行,它与

数字系统设计与verilog HDL课程设计

数字系统设计与verilog HDL课程设计 设计题目:实用多功能数字钟 专业:电子信息科学与技术 班级:0313410 学号:031341025 姓名:杨存智 指导老师:黄双林

摘要 本课程设计利用QuartusII软件Verilog VHDL语言的基本运用设计一个多功能数字钟,经分析采用模块化设计方法,分别是顶层模块、alarm、alarm_time、counter_time、clk50mto1、led、switch、bitel、adder、sound_ddd、sound_ddd_du模块,再进行试验设计和软件仿真调试,分别实现时分秒计时、闹钟闹铃、时分秒手动校时、时分秒清零,时间保持和整点报时等多种基本功能。 单个模块调试达到预期目标,再将整体模块进行试验设计和软件仿真调试,已完全达到分块模式设计功能,并达到设计目标要求。 关键字:多功能数字钟、Verilog、模块、调试、仿真、功能

目录 1.课程设计的目的及任务............................................................. 错误!未定义书签。 1.1 课程设计的目的 (3) 1.2 课程设计的任务与要求 (4) 2.课程设计思路及其原理 (4) 3.QuartusII软件的应用 (5) 3.1工程建立及存盘 (5) 3.2工程项目的编译 (5) 3.3时序仿真 (6) 4.分模块设计、调试、仿真与结果分析 (7) 4.1 clk50mto1时钟分频模块 (7) 4.2 adder加法器模块 (7) 4.3 hexcounter16 进制计数器模块 (7) 4.4 counter_time 计时模块 (8) 4.5 alarm闹铃模块 (8) 4.6 sound_ddd嘀嘀嘀闹铃声模块 (9) 4.7 sound_ddd_du嘀嘀嘀—嘟声音模块 (9) 4.8 alarm_time闹钟时间设定模块 (10) 4.9 bitsel将输出解码成时分秒选择模块 (10) 4.10 switch去抖模块 (11) 4.11 led译码显示模块 (11) 4.12 clock顶层模块 (12) 5.实验总结 (13) 5.1调试中遇到的问题及解决的方法 (13) 5.2实验中积累的经验 (14) 5.3心得体会 (14) 6.参考文献 (14) 1.1 课程设计的目的 通过课程设计的锻炼,要求学生掌握V erilog HDL语言的一般设计方法,掌握VerilogHDL语言的基本运用,具备初步的独立设计能力,提高综合运用所学的理论知识独立分析和解决问题的能力,基于实践、源于实践,实践出真知,实践检验真理,培养学生的

控制工程基础实验指导书(答案) 2..

实验二二阶系统的瞬态响应分析 一、实验目的 1、熟悉二阶模拟系统的组成。 2、研究二阶系统分别工作在ξ=1,0<ξ<1,和ξ> 1三种状态下的单 位阶跃响应。 3、分析增益K对二阶系统单位阶跃响应的超调量σP、峰值时间tp和调 整时间ts。 4、研究系统在不同K值时对斜坡输入的稳态跟踪误差。 5、学会使用Matlab软件来仿真二阶系统,并观察结果。 二、实验仪器 1、控制理论电子模拟实验箱一台; 2、超低频慢扫描数字存储示波器一台; 3、数字万用表一只; 4、各种长度联接导线。 三、实验原理 图2-1为二阶系统的原理方框图,图2-2为其模拟电路图,它是由惯性环节、积分环节和反号器组成,图中K=R2/R1,T1=R2C1,T2=R3C2。 图2-1 二阶系统原理框图

图2-1 二阶系统的模拟电路 由图2-2求得二阶系统的闭环传递函 12 22 122112 /() (1)()/O i K TT U S K U S TT S T S K S T S K TT ==++++ :而二阶系统标准传递函数为 (1)(2), 对比式和式得 n ωξ== 12 T 0.2 , T 0.5 , n S S ωξ====若令则。调节开环增益K 值,不仅能改变系统无阻尼自然振荡频率ωn 和ξ的值,可以得到过阻尼(ξ>1)、 临界阻尼(ξ=1)和欠阻尼(ξ<1)三种情况下的阶跃响应曲线。 (1)当K >0.625, 0 < ξ < 1,系统处在欠阻尼状态,它的单位阶跃响应表达式为: 图2-3 0 < ξ < 1时的阶跃响应曲线 (2)当K =0.625时,ξ=1,系统处在临界阻尼状态,它的单位阶跃响应表达式为: 如图2-4为二阶系统工作临界阻尼时的单位响应曲线。 (2) +2+=222n n n S S )S (G ωξω ω1 ()1sin( ) (3) 2-3n t o d d u t t tg ξωωωω--=+=式中图为二阶系统在欠阻尼状态下的单位阶跃响应曲线 e t n o n t t u ωω-+-=)1(1)(

《verilog_数字系统设计课程》(第二版)思考题答案

Verilog数字系统设计教程思考题答案 绪论 1.什么是信号处理电路?它通常由哪两大部分组成? 信号处理电路是进行一些复杂的数字运算和数据处理,并且又有实时响应要求的电路。它通常有高速数据通道接口和高速算法电路两大部分组成。 2.为什么要设计专用的信号处理电路? 因为有的数字信号处理对时间的要求非常苛刻,以至于用高速的通用处理器也无法在规定的时间内完成必要的运算。通用微处理器芯片是为一般目的而设计的,运算的步骤必须通过程序编译后生成的机器码指令加载到存储器中,然后在微处理器芯片控制下,按时钟的节拍,逐条取出指令分析指令和执行指令,直到程序的结束。微处理器芯片中的内部总线和运算部件也是为通用目的而设计,即使是专为信号处理而设计的通用微处理器,因为它的通用性也不可能为某一特殊的算法来设计一系列的专用的运算电路而且其内部总线的宽度也不能随便的改变,只有通过改变程序,才能实现这个特殊的算法,因而其算法速度也受到限制所以要设计专用的信号处理电路。 3.什么是实时处理系统? 实时处理系统是具有实时响应的处理系统。 4.为什么要用硬件描述语言来设计复杂的算法逻辑电路? 因为现代复杂数字逻辑系统的设计都是借助于EDA工具完成的,无论电路系统的仿真和综合都需要掌握硬件描述语言。 5.能不能完全用C语言来代替硬件描述语言进行算法逻辑电路的设计? 不能,因为基础算法的描述和验证通常用C语言来做。如果要设计一个专用的电路来进行这种对速度有要求的实时数据处理,除了以上C语言外,还须编写硬件描述语言程序进行仿真以便从电路结构上保证算法能在规定的时间内完成,并能通过与前端和后端的设备接口正确无误地交换数据。 6.为什么在算法逻辑电路的设计中需要用C语言和硬件描述语言配合使用来提 高设计效率? 首先C语言很灵活,查错功能强,还可以通过PLI编写自己的系统任务,并直接与硬件仿真器结合使用。C语言是目前世界上应用最为广泛的一种编程语言,因而C程序的设计环境比Verilog HDL更完整,此外,C语言有可靠地编译环境,语法完备,缺陷缺少,应用于许多的领域。比较起来,Verilog语言只是针对硬件描述的,在别处使用并不方便。而用Verilog的仿真,综合,查错等大部分软件都是商业软件,与C语言相比缺乏长期大量的使用,可靠性较差,亦有很多缺陷。所以只有在C语言的配合使用下,Verilog才能更好地发挥作用。C 语言与Verilog HDL语言相辅相成,互相配合使用。这就是即利用C语言的完整性又要结合Verilog对硬件描述的精确性,来更快更好地设计出符合性能要求的

实验指导书

Matlab实验指导书 河北大学电子信息工程学院 2004年1月

目录 MATLAB实验教学计划 (2) 实验一MATLAB基本操作 (3) 实验二MATLAB图形系统......................................................... . (5) 实验三 MATLAB程序设计 (6) 实验四 MATLAB基本应用领域 (7) 实验五设计性综合实验1---数字信道编译码 (14) 实验六设计性综合实验2---fir滤波器设计................................. . (16) 2

MATLAB实验教学计划 指导教师:郑晓昆薛文玲王竹毅学时数:12学时周4学时2次实验,共3周6次实验,第7—9教学周,每次实验2学时 所用仪器设备:MATLAB7.0实验软件系统 实验指导书:Matlab实验指导书 自编 实验参考书:, 楼顺天等编著, 西安电子科大出版社,06年5月第二版 实验项目: A, MATLAB基本操作 内容:矩阵操作,基本数学函数,逻辑函数操作等; 要求:循序渐进完成P83练习题1—10 B, MATLAB图形系统 内容:图形绘制,图形标注,对数和极坐标,坐标轴控制,颜色控制等要求:循序渐进完成P146练习题1—10 C, MATLAB程序设计 内容:脚本script和函数function认识,流程控制,参数交互输入,基本程序设计技巧练习,程序调试DEBUG等 要求:循序渐进完成P184练习题1—10 D, MATLAB基本应用领域 内容:线性代数,多项式与内插,曲线拟合,数据分析与统计,泛函基础等 要求:循序渐进完成P146练习题1—4,6—19 E, 设计性综合实验----数字信道编译码 内容:1数字通信系统信道编码AMI编译码 2数字通信系统信道编码HDB3编译码 F,设计性综合实验----fir滤波器设计 内容:设计一个有限冲击相应数字滤波器FIR是该滤波器能够滤出规定频率以上的信号,而该频率以下的信号不受影响。 3

Verilog HDL实验报告

HDL实验报告 专业电子科学与技术 姓名 学号 指导老师

1 实验一Modelsim仿真软件的使用 1.1 实验目的 (1)熟悉Modelsim 软件; (2)掌握Modelsim 软件的编译、仿真方法; (3)熟练运用Modelsim 软件进行HDL 程序设计开发。 1.2 实验步骤 (1)学习使用Modelsim软件; (2)分析原理及功能; (3)用Verilog HDL编写程序; (4)编写测试程序进行仿真; (4)观察波形,分析仿真结果是否正确。 1.3 实验内容 用Verilog HDL 程序实现一个异或门,Modelsim 仿真,观察效果。 1.4.1 程序 module my_xor(ina,inb,out); input ina,inb; output out; assign out=ina^inb; endmodule module t_xor; reg ina,inb; wire out; initial begin ina=1'b0; forever #20 ina=~ina; end initial begin inb=1'b0; forever #10 inb=~inb; end my_xor tt(.ina(ina),.inb(inb),.out(out)); endmodule

2 实验二简单组合电路设计 2.1 实验目的 (1)掌握基于Modelsim 的数字电路设计方法; (2)熟练掌握HDL 程序的不同实现方法 2.2 实验步骤 (1)分析原理及功能; (2)根据原理用Verilog HDL编写程序; (3)编写测试程序进行仿真; (4)观察波形,分析仿真结果是否正确。 2.3 实验内容 设计一个三人表决器(高电平表示通过) ,实验内容如下: (1)三个人,一个主裁判,两个副裁判; (2)规则:只要主裁判同意,输出结果为通过;否则,按少数服从多数原则决定是否通过。使用Verilog HDL 程序实现上述实验内容,并使用modelsim 仿真(要求:至少使用两种方法实现上述实验内容和testbench)。 2.4.1 程序 方法1: module voter(v0,v1,v2,y); input v0,v1,v2; output y; assign y=v0|(v1&v2); endmodule 方法2: module voter(v0,v1,v2,y); input v0,v1,v2; output reg y; always @(v0,v1,v2) begin if(v0) y=1;

实验指导书

混凝土基本理论及钢桁架静力测试试验指导书

试验一、钢筋混凝土受弯构件正截面破坏试验 一、试验目的 1.了解受弯构件正截面的承载力大小、挠度变化及裂缝出现和发展过程; 2.观察了解受弯构件受力和变形过程的三个工作阶段及适筋梁的破坏特征; 3.测定受弯构件正截面的开裂荷载和极限承载力,验证正截面承载力计算方法。 二、试件、试验仪器设备 1.试件特征 (1). 根据试验要求,试验梁的混凝土强度等级为C20,纵向受力钢筋强度等级I级。 (2). 试件尺寸及配筋如图1所示,纵向受力钢筋的混凝土净保护层厚度为15mm 。 (3). 梁的中间500mm 区段内无腹筋,其余区域配有 6@60的箍筋,以保证不发生斜 截面破坏。 (4). 梁的受压区配有两根架立筋,通过箍筋与受力筋绑扎在一起,形成骨架,保证受力钢筋处在正确的位置。 2.试验仪器设备 (1). 静力试验台座、反力架、支座及支墩 (2). 20T 手动式液压千斤顶 (3). 读数显微镜及放大镜 (4). 位移计(百分表)及磁性表座 三、试验装置及测点布置 1.试验装置见图2 (1). 在加荷架中,用千斤顶通过分配梁进行两点对称加载,使简支梁跨中形成长 500mm 的纯弯曲段(忽略梁的自重)。 (2). 构件两端支座构造应保证试件端部转动及其中一端水平位移不受约束,基本符 合铰支承的要求。 2.测点布置 梁的跨中及两个对称加载点各布置一位移计f 3~f 5,量测梁的整体变形,考虑在加载的过程中,两个支座受力下沉,支座上部分别布置位移测点f 1和f 2,以消除由于支座下沉对挠度测试结果的影响。 图1 试件尺寸及配筋图

verilog hdl 实验报告

Verilog HDL数字系统设计 实验报告汇总 任课教师 实验者姓名 学号 实验指导教师

姓名学号 时间地点 实验题目阻塞赋值与非阻塞赋值的区别 一.实验目的与要求 (1)通过实验,掌握阻塞赋值与非阻塞赋值的概念与区别; (2)了解非阻塞赋值和阻塞赋值的不同使用场合; (3)学习测试模块的编写,综合和不同层次的仿真。 二.实验环境 仿真软件: modlsim6.2SE 三.实验内容 阻塞赋值与非阻塞赋值,在教材中已经了解了他们之间在语法上的区别以及综合后所得到的

电路结构上的区别。在always块中,阻塞赋值可以理解为赋值语句是并发执行的。时序逻辑设计中,通常都使用非阻塞赋值语句,而在实现组合逻辑的assign结构中,或者always快结构中都必须采用阻塞赋值语句。 四.系统框图 五.实验波形图 六.实验体会 (1)一开始使用modelsimSE6.2时候不知道建立工作区的方法。后面请教了毕老师才知道如何来建立工作区。 (2)编译时候错误看不懂,细心找才发现‘ ` 两个符号有区别 (3)波形找不到,后来发现时没有放大。 七.代码附录: 源代码:

// ---------- 模块源代码:---------------------- // ------------- blocking.v --------------- module blocking(clk,a,b,c); output [3:0] b,c; input [3:0] a; input clk; reg [3:0] b,c; always @(posedge clk) begin b = a; c = b; $display("Blocking: a = %d, b = %d, c = %d ",a,b,c); end endmodule //------------- non_blocking.v ------------------- module non_blocking(clk,a,b,c); output [3:0] b,c; input [3:0] a; input clk; reg [3:0] b,c; always @(posedge clk) begin b <= a; c <= b; $display("Non_Blocking: a = %d, b = %d, c = %d ",a,b,c); end endmodule 测试模块: // ---------- 测试模块源代码:-------------------------- //------------- compareTop.v -----------------------------

R语言实验指导书(二)

R语言实验指导书(二) 2016年10月27日

实验三创建和使用R语言数据集 一、实验目的: 1.了解R语言中的数据结构。 2.熟练掌握他们的创建方法,和函数中一些参数的使用。 3.对创建的数据结构进行,排序、查找、删除等简单的操作。 二、实验内容: 1.向量的创建及因子的创建和查看 有一份来自澳大利亚所有州和行政区的20个税务会计师的信息样本 1 以及他们各自所在地的州名。州名为:tas, sa, qld, nsw, nsw, nt, wa, wa, qld, vic, nsw, vic, qld, qld, sa, tas, sa, nt, wa, vic。 1)将这些州名以字符串的形式保存在state当中。 2)创建一个为这个向量创建一个因子statef。 3)使用levels函数查看因子的水平。 2.矩阵与数组。

i.创建一个4*5的数组如图,创建一个索引矩阵如图,用这个索引矩 阵访问数组,观察结果。 3.将之前的state,数组,矩阵合在一起创建一个长度为3的列表。

4.创建一个数据框如图。 5.将这个数据框按照mpg列进行排序。 6.访问数据框中drat列值为3.90的数据。

三、实验要求 要求学生熟练掌握向量、矩阵、数据框、列表、因子的创建和使用。

实验四数据的导入导出 一、实验目的 1.熟练掌握从一些包中读取数据。 2.熟练掌握csv文件的导入。 3.创建一个数据框,并导出为csv格式。 二、实验内容 1.创建一个csv文件(内容自定),并用readtable函数导入该文件。 2.查看R语言自带的数据集airquality(纽约1973年5-9月每日空气质 量)。 3.列出airquality的前十列,并将这前十列保存到air中。 4.查看airquality中列的对象类型。 5.查看airquality数据集中各成分的名称 6.将air这个数据框导出为csv格式文件。(write.table (x, file ="", sep ="", https://www.360docs.net/doc/503600135.html,s =TRUE, https://www.360docs.net/doc/503600135.html,s =TRUE, quote =TRUE)) 三、实验要求 要求学生掌握从包中读取数据,导入csv文件的数据,并学会将文件导出。

Verilog实验报告交通灯

V e r i l o g实验报告交通 灯 集团标准化工作小组 [Q8QX9QT-X8QQB8Q8-NQ8QJ8-M8QMN]

V e r i l o g实验报告---第四次交通灯 班级:集电0802班 姓名:张鹏 学号: 04086057 序号: 16 一、规范 (1)具有开关功能:当reset=0时红绿灯关闭,使主支干道六个灯全灭; (2)具有四个功能:当reset=1且func=2’b00时,主干道和支路正常计数; 且func=2’b01时,支干道一直绿灯,主干道一直红灯; 且func=2’b10时,主干道一直绿灯,支干道一直红灯; 且func=2’b11时,主干道和支干道一直黄灯闪; (3)计数器频率:运行频率2Hz计数器; (4)信号灯种类:红、黄、绿; (5)信号灯计执行时间关系:主干道:绿灯常亮+绿灯闪+黄灯=支干道:红灯常亮; 此设计中: 主干道:绿灯常亮=57s,T绿灯闪=3s,T黄灯亮=3s 支干道:绿灯常亮=15s,T绿灯闪=3s,T黄灯亮=3s (6)信号灯到计时功能:信号灯预置后,开始执行2Hz计数器; (7)信号灯跳转功能:当各信号灯计时至T时在下一个时钟信号上升沿到来时自动转为下一状态; (8)信号灯各状态跳转关系:绿-黄-红-绿; 二、输入输出定义

状态转移图: 四、测试代码 module frequency_divider_small(reset,clk,out); eset(reset),.clk(clk),.func(func),.green(green),.red(red),.yellow(yellow)); always #10 clk=~clk; initial begin reset=0; clk=1; func=2'b00; #20 reset=1; #21000 func=2'b01; #10000 func=2'b10; #10000 func=2'b11; end endmodule 波形: 五、源代码 module frequency_divider(reset,clk,out);eset(reset),.clk(clk),.out(in));//调用分频模块 always @ (posedge clk or negedge reset) if(!reset) begin cnt<=7'd0; state<=3'd1; green<=2'b00; red<=2'b00; yellow<=2'b00; end else if(in)//分频器结果当主模块始能 if(func==2'b00)//选择不同功能控制开关 if(cnt==7'd0) case(state)//选择不同状态 3'd1:begin cnt<=greentime1<<1;

实验指导书第2章

上机实验二 SPSS基本运行程序 一、实验目的 通过本次实验,要求掌握SPSS的基本运行程序,熟悉基本的编码方法、了解如何录入数据和建立数据文件,掌握基本的数据文件编辑与修改方法。 二、实验性质 必修,基础层次 三、主要仪器及试材 计算机及SPSS软件 四、实验内容 1.问卷编码 2.录入数据 3.保存数据文件 4.编辑数据文件 五、实验学时 2学时 六、实验方法与步骤 1.开机 2.找到SPSS的快捷按纽或在程序中找到SPSS,打开SPSS 3.认识SPSS数据编辑窗口 4.对一份给出的问卷进行编码和变量定义 5.按要求录入数据 6.练习基本的数据修改编辑方法 7.保存数据文件 8.关闭SPSS,关机。 七、实验注意事项

1.实验中不轻易改动SPSS 的参数设置,以免引起系统运行问题。 2.遇到各种难以处理的问题,请询问指导老师。 3.为保证计算机的安全,上机过程中非经指导老师和实验室管理人员同意,禁止使用软盘与移动硬盘。 4.每次上机,个人应按规定要求使用同一计算机,如因故障需更换,应报指导老师或实验室管理人员同意。 5.上机时间,禁止使用计算机从事与课程无关的工作。 八、上机作业 (一)试对以下问卷进行编码,并录入所选择的答案(加下划线为所选的答案 农户基本经营状况调查 1 家庭户性质:①本地户 ②外来户 (迁入年份:_1988_) 2.就业类型:①纯农户 ②非农户 ③农兼非 ④非兼农 ⑤未就业 离开农业已有__________年 4.兼业者从事非农产业情况 家里有 1 人参加非农劳动,是否壮劳力?① 是 ②否 业务范围:①工业 ②建筑业 ③运输 ④仓储 ⑤餐饮业 ⑥社会服务业 ⑦其他 工作年数 5 年,(按整数算,超过半年算一年) 投入时间大约占全年工作时间的% 70% 收入大约占全年总收入的%_______90%______

数字逻辑实验报告-Verilog时序逻辑设计

电子科技大学 实验报告 学生姓名:任彦璟学号:2015040101018 指导教师:吉家成米源王华 一、实验项目名称:Verilog时序逻辑设计 二、实验目的: 掌握边沿D触发器74x74、同步计数器74x163、4位通用移位寄存器74x194,的工作原理。 设计移位寄存器74x194设计3位最大序列长度线性反馈移位寄存器(LFSR:Linear Feedback Shift Register)计数器。 设计同步计数器74x163 。 三、实验内容: 1.设计边沿D触发器74x74。 2.设计通用移位寄存器74x194。 3.采用1片74x194和其它小规模逻辑门设计3位LFSR计数器。 4.设计4位同步计数器74x163。 四、实验原理: 74x74逻辑电路图

CLK_D CLR_L_D S1_L S1_H S0_L S0_H w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 w12 w13 w14 w15 w16 w17 w18 w19 w20 74x194逻辑电路图 3位LFSR逻辑电路图

74x163逻辑电路图 上图的设计可以采用门级描述,也可以采用教材《数字设计—原理与实践》(第4版)第525页的表8-20中的行为描述 五、实验器材(设备、元器件): PC 机、Windows XP 、Anvyl 或Nexys3开发板、Xilinx ISE 14.7开发工具、Digilent Adept 下载工具。 六、实验步骤: 实验步骤包括:建立新工程,设计代码与输入,设计测试文件,设置仿真,查看波形,约束与实现、生成流代码与下载调试。 七、关键源代 码及波形图: 1.D 触发器的Verilog 代码 源码如下 module vr74x74(CLK, D, PR_L, CLR_L, Q, QN); input CLK, D, PR_L, CLR_L ; output Q, QN ; wire w1, w2, w3, w4 ; nand (w1, PR_L, w2, w4); nand (w2, CLR_L, w1, CLK) ; nand (w3, w2, CLK, w4) ; nand (w4, CLR_L, w3, D) ; nand (Q, PR_L, w2, QN); nand (QN, Q, w3, CLR_L); endmodule

基于verilog数字秒表的设计实现

生产实习报告 班级:通信13-2班 姓名:闫振宇 学号: 成绩: 电子与信息工程学院 信息与通信工程系

基于verilog数字秒表的设计实现 1. 概述 硬件描述语言HDL ( HardwareDescription Langyage) 是一种用形式化方法来描述数字电路和系统的语言。数字电路系统的设计这里用这种语言可以从上层倒下层逐层描述自设计思想用一系列分层的模块来表示极其复杂的数字系统,然后用EDA 工具逐层验证,把其中需要为具体物理电路的模块组合由自动综合工具转换到门级电路网表。Verilog HDL 是一种硬件描述语言,用于从算法级、门级到开关级的多种抽象设计层次的数字系统建模。被建模的数字系统对象的复杂性可以介于简单的门和完整的电子数字系统之间。数字系统能够按层次描述,并可在相同描述中显式地进行时序建模。使用VERILOG 进行系统设计时采用的是从顶至下的设计,自顶向下的设计是从系统机开始巴西同划分为若干个基本单元,然后再把每个单元划分为下一层的基本单元,这样下去直到可以直接用EDA 元件库中的基本元件来实现为止。 2. 设计目的及要求 a.有源晶振频率:50MHZ; b.测试计时范围:00’00”00 ~ 59’59”99,显示的最长时间为59分59 秒; c.数字秒表的计时精度是10ms; d.显示工作方式:六位BCD七段数码管显示读数,两个按钮开关(一个按钮使秒表复位,另一个按钮控制秒表的启动/暂停)。 3.设计原理 秒表的逻辑结构较简单,它主要由四进制计数器、十六进制计数器、分频器、数据选择器、和显示译码器等组成。在整个秒表中最关键的是如何获得一个精确的100HZ计时脉冲,除此之外,整个秒表还需有一个启动信号和一个清零信号,以便秒表能随意停止、启动以及清零复位。 秒表有共有6个输出显示,其中6个显示输出数据,分别为百分之一秒、十分之一秒、

实验指导书实验二_SolidWorks建模1

实验二SolidWorks草绘特征和放置特征操作(一) 一、实验目的 1.掌握基本零件建模的一般步骤和方法 2.掌握SolidWorks草绘特征:拉伸凸台、拉伸切除、旋转凸台、旋转切除、扫描、放样的操 作方法。 3.掌握放置(应用)特征:钻孔特征、倒角特征、圆角特征、抽壳特征、拔模斜度特征、筋的 操作方法 二、实验内容 完成下列下列零件造型 三、实验步骤 1. 连接件设计 完成如图1所示模型。 (1)单击【新建】按钮一1,新建一个零件文件。 (2)选取前视基准面,单击【草图绘制】按钮一I,进入草图绘制,绘制草图,如图2 所示。 图1连接件图2草图 ⑶ 单击【拉伸凸台/基体】按钮,出现【拉伸】属性管理器,在【方向】下拉列表 框内选择【两侧对称】选项,在【深度】文本框内输入" 54mm ”,单击【确定】 按钮,如图3所示。 (4)单击【基准面】按钮一1,出现【基准面】属性管理器,其中第一参考选择图形下底面, 然后单击【两面夹角】按钮日,在【角度】文本框内输入"120°,然后在第二参考中选择 图形的一条下边线。单击【确定】按钮¥,,建立新基准面,如

错误!未找到引用源。所示。 图4建立基准面 (5) 在设计树中右击基准面 1选择“反转法线” 卜,然后再单击基准 面 1单选择 【草图绘制】按钮 ,进入草图绘制,单击【正视于】按钮 ,绘制草图,如图 4所示。 边线 底面 图4草图

(6) 单击【拉伸凸台/基体】按钮 ,出现【拉伸】属性管理 器,在【终止条件】下拉 列表框内选择【给定深度】选项,在【深度】文本框内输入“ 12mm ”,单击【确 定】按钮1 如图5所示。 (7) 选取基体上表面,单击【草图绘制】 按钮_1,进入草图绘制,使用中心线工具 上表面的中心位置绘制直线,注意不要捕捉到表面边线,如图 6所示。 图6中心线 (8) 单击【等距实体】按钮丄,出现【等距实体】属性管理器,在【等距距离】文本框 内输入 “8mm ”,在图形区域选择中心线, 在属性管理器中选中 【添加尺寸】、【选 择链】、【双向】和【顶端加盖】复选框,选中【圆弧】单选按钮,单击【确定】 按钮 ,标注尺寸,完成草图,如图 7所示。 律黑 __________________ 严 玄[B 总 -召 厂[.砲 r 韦歼左眛編◎也 17比自口 R an (A ) 广 Efetfi- 图_7运用“等距实体”绘制草图 (8)单击【拉伸切除】按钮 □,出现【切除-拉伸】属性管理器,在【终止条件】下拉 列表框内选择【完全贯穿】选项,单击【确定】按钮 ,如图8所示。 图5 “拉伸”特征

Verilog实验报告

实验报告格式要求 一、实验报告内容包括: (1)实验名称。 (2)实验目的。 (3)实验仪器及编号。写明仪器名称、型号、编号。 (4)实验原理。简单叙述有关实验原理(包括电路图或光路图或实验装置示意图)及测量中依据的的公式,式中各量的物理含义及单位,公式成立所应满足的实验条件等。 (5)实验内容及步骤。根据实验内容及实际的实验过程写明关键步骤和安全注意要点。 (6)实验观测记录。记录原始测量数据、图形等有关原始量,形式上要求整齐规范。 (7)数据处理结果。根据实验要求,采用合适的方法进行数据处理,误差分析,最后写出实际结果。 (8)小结或讨论。内容不限。可以是实验中的现象分析,对实验关键问题的体会,实验的收获和建议,也可解答思考题。 二、书写次序 (1)到(5)是进行实验预习时就应该完成的。(6)在实验中完成。做完实验后再在预习报告基础上完成(7)(8)两项。 完成一个实验,就是一次最基本的科研训练,从预习到写出一个实验报告,每一步都有极其丰富的学习内容,要积极思考,认真对待。

实验(一)简单的组合逻辑设计 实验日期2014-10-31 同组者姓名 一、实验目的 [1] 掌握基本组合逻辑电路的实现方法 [2] 初步了解两种基本组合逻辑电路的生成方法 [3] 学习测试模块的编写 [4] 通过综合和布局布线了解不同层次仿真的物理意义 二、实验仪器 计算机、FPGA开发板 三、实验内容 [1] 在ISE软件环境中进行一次完整的设计流程,并在FPGA开发板上实现与门的功能。 [2] 完成一个可综合的数据比较器的程序。 [3] 完成数据比较器的测试模块。 [4] 发挥部分:设计一个多位(2位)的数据比较器并在FPGA开发板上实现该比较器。 四、实验步骤、分析及结果(在下面写出你的代码) 代码: module compare( input a, input b, output c ); assign c=a&b; endmodule 结果如图所示:

verilog数字系统设计教程习题答案

verilog数字系统设计教程习题答案 第二章 1.Verilog HDL 既是一种行为描述语言,也是一种结构描述语言。如果按照一定的规则和风格编写代码,就可以将功能行为模块通过工具自动转化为门级互联的结构模块。这意味着利用Verilog语言所提供的功能,就可以构造一个模块间的清晰结构来描述复杂的大型设计,并对所需的逻辑电路进行严格的设计。 2.模块的基本结构由关键词module和endmodule构成。 3.一个复杂电路系统的完整Verilog HDL模型是由若干个Verilog HDL模块构成的,每一个模块又可以由若干个子模块构成。其中有些模块需要综合成具体电路,而有些模块只是与用户所设计的模块交互的现存电路或激励信号源。利用 Verilog HDL语言结构所提供的这种功能就可以构造一个模块间的清晰层次结构来描述极其复杂的大型设计,并对所作设计的逻辑电路进行严格的验证。 4.Verilog HDL和VHDL作为描述硬件电路设计的语言,其共同的特点在于:能 形式化地抽象表示电路的结构和行为、支持逻辑设计中层次与领域的描述、可借用高级语言的精巧结构来简化电路的描述、具有电路仿真与验证机制以保证设计的正确性、支持电路描述由高层到低层的综合转换、硬件描述与实现工艺无关(有关工艺参数可通过语言提供的属性包括进去)、便于文档管理、易于理解和设计重用。 5.不是 6.将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组 合装配的过程。 7.综合工具可以把HDL变成门级网表。这方面Synopsys工具占有较大的优势,它的Design Compile是作为一个综合的工业标准,它还有另外一个产品叫Behavior Compiler,可以提供更高级的综合。 另外最近美国又出了一个软件叫Ambit,据说比Synopsys的软件更有效,可以 综合50万门的电路,速度更快。今年初Ambit被Cadence公司收购,为此Cadence 放弃了它原来的综合软件Synergy。随着FPGA设计的规模越来越大,各EDA公 司又开发了用于FPGA设计的综合软件,比较有名的有:Synopsys的FPGA Express,Cadence的Synplity, Mentor的Leonardo,这三家的FPGA综合软件占了市场的绝大部分。 8.整个综合过程就是将设计者在EDA平台上编辑输入的HDL文本、原理图或状态图形描述,依据给定的硬件结构组件和约束控制条件 进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述网表文件。用于适配,适配将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件,如JEDEC、Jam格式的文件。

实验指导书

《数控机床》 实 验 指 导 书 (简本) 蚌埠学院机电系李大胜2008年9月修订

实验一数控车床操作模拟(计算机仿真) 一、实验目的和要求 数控加工在制造业中占有非常重要的地位,数控机床是一种高效的自动化设备,它可以按照预先编制好的零件数控加工程序自动地对工件进行加工。宇航数控加工仿真系统可以在计算机屏幕上仿真完成数控加工程序的输入输出、数控机床操作、工件加工、虚拟测量等数控加工全过程,而且在数控加工仿真系统中,机床操作面板和操作步骤与相应的实际数控机床完全相同,学生在这种虚拟工业环境中可以学习掌握典型数控车床的加工操作方法,通过数控加工仿真系统可以使培训得到实物操作训练的目的,本次实验主要要求学生了解宇航仿真软件的使用和熟悉配备主流数控系统的数控车床的操作及对刀方法。 二、实验内容 1、了解数控车床的基本运动、加工对象及其用途; 2、了解数控车床操作面板各按键(CNC界面)的功用; 3、掌握数控车床的调整及加工前的准备工作、尤其要熟练掌握FANUC0i系统的多种对刀方法; 三、实验仪器 软件要求:宇航数控仿真系统30节点 硬件要求:微机30台 四、实验内容及步骤 YHCNC仿真系统及虚拟机床操作(FANUC 0i) 1、机床操作面板 机床操作面板位于窗口的右下侧,如下图所示,主要用于控制机床运行状态,由模式选择按钮、运行控制开关等多个部分组成,每一部分的详细说明如下: FANUC 0i面板 AUTO:自动加工模式。EDIT:编辑模式。MDI:手动数据输入。 INC:增量进给。 HND:手轮模式移动机床。 JOG:手动模式,手动连续移动机床。 REF:回参考点。

华中科技大学Verilog语言实验报告

计算机科学与技术学院

目录 1数据通路实验 (1) 1.1实验目的 (1) 1.2实验内容及要求 (1) 1.3实验方案 (2) 1.4实验步骤 (2) 1.5故障及分析 (2) 1.6仿真与结果 (3) 1.7心得与体会 (4) 2FSM实验 (6) 2.1实验目的 (6) 2.2实验内容及要求 (6) 2.3实验方案 (7) 2.4实验步骤 (7) 2.5故障及分析 (8) 2.6仿真与结果 (8) 2.7心得与体会 (9) 3意见和建议 (11) 4附录 (13)

1 数据通路实验 1.1 实验目的 综合应用掌握的简单组合电路和时序电路的设计方法,完成一个简单的数据通路的设计。 1.2 实验内容及要求 1. 根据下图给出的数据通路(图中R0、R1和ACC是寄存器,+是加法器,其它则是多路选择器),完成相应的Verilog程序设计,图中数据线的宽度为8位,要求可以扩充至16位或者是32位; 2. 根据下图给出的数据通路(图中SUM和NEXT是寄存器,Memory是存储器,+是加法器,==0是比较器,其它则是多路选择器),完成相应的Verilog程序设

计,图中数据线的宽度为8位,要求可以扩充至16位或者是32位。 实验要求:程序必须自己编写,满足数据通路设计要求,综合结果正确。 1.3 实验方案 根据要求,先把选择器、加法器、寄存器、比较器和存储器分模块编写,在主模块中根据数据通路调用即可。题目中要求数据线宽度为8位,并且可以扩充至16位或32位,所以在前面定义WIDTH,利用parameter的参数传递功能来实现。 1.4 实验步骤 1.分模块编写代码(见附录) 2.运行综合Run Synthesis 3.综合成功后检查RTL Analysis中的电路图Schematic 1.5 故障及分析 刚开始跑出来很多线是断的,后来发现是引脚对应部分的代码没有写完整。后来加法器和ACC的参数顺序写错,导致接线与题给的不一致,发现问题后及时改

《verilog_数字系统设计课程》(第二版)思考题答案

绪论 1.什么是信号处理电路?它通常由哪两大部分组成? 信号处理电路是进行一些复杂的数字运算和数据处理,并且又有实时响应要求的电路。它通常有高速数据通道接口和高速算法电路两大部分组成。 2.为什么要设计专用的信号处理电路? 因为有的数字信号处理对时间的要求非常苛刻,以至于用高速的通用处理器也无法在规定的时间内完成必要的运算。通用微处理器芯片是为一般目的而设计的,运算的步骤必须通过程序编译后生成的机器码指令加载到存储器中,然后在微处理器芯片控制下,按时钟的节拍,逐条取出指令分析指令和执行指令,直到程序的结束。微处理器芯片中的内部总线和运算部件也是为通用目的而设计,即使是专为信号处理而设计的通用微处理器,因为它的通用性也不可能为某一特殊的算法来设计一系列的专用的运算电路而且其内部总线的宽度也不能随便的改变,只有通过改变程序,才能实现这个特殊的算法,因而其算法速度也受到限制所以要设计专用的信号处理电路。 3.什么是实时处理系统? 实时处理系统是具有实时响应的处理系统。 4.为什么要用硬件描述语言来设计复杂的算法逻辑电路? 因为现代复杂数字逻辑系统的设计都是借助于EDA工具完成的,无论电路系统的仿真和综合都需要掌握硬件描述语言。 5.能不能完全用C语言来代替硬件描述语言进行算法逻辑电路的设计? 不能,因为基础算法的描述和验证通常用C语言来做。如果要设计一个专用的电路来进行这种对速度有要求的实时数据处理,除了以上C语言外,还须编写硬件描述语言程序进行仿真以便从电路结构上保证算法能在规定的时间内完成,并能通过与前端和后端的设备接口正确无误地交换数据。 6.为什么在算法逻辑电路的设计中需要用C语言和硬件描述语言配合使用来提高设计效率? 首先C语言很灵活,查错功能强,还可以通过PLI编写自己的系统任务,并直接与硬件仿真器结合使用。C语言是目前世界上应用最为广泛的一种编程语言,因而C程序的设计环境比Verilog HDL更完整,此外,C语言有可靠地编译环境,语法完备,缺陷缺少,应用于许多的领域。比较起来,Verilog语言只是针对硬件描述的,在别处使用并不方便。而用Verilog的仿真,综合,查错等大部分软件都是商业软件,与C语言相比缺乏长期大量的使用,可靠性较差,亦有很多缺陷。所以只有在C语言的配合使用下,Verilog才能更好地发挥作用。C 语言与Verilog HDL语言相辅相成,互相配合使用。这就是即利用C语言的完整性又要结合Verilog对硬件描述的精确性,来更快更好地设计出符合性能要求的

相关文档
最新文档