北航电子电路设计数字部分实验报告.doc

合集下载

北航电子电路实验报告二

北航电子电路实验报告二
(2)输入电阻
测试方法同第二步
测得:Ii=202.33nA,Ui=99.996mV,进而可求的Ri=494.22kΩ
(3)输出电阻
测试方法同第三步
测得:Io=2.913mA,Uo=99.996mV,进而可求的Ro=34.32Ω
(4)利用软件提供的各种测量仪表测出该电路的幅频、相频特性曲线:
将xbp表如图所示连接在电路中,观察xbp表即可得其幅频、相频特性曲线
100mV
对于电路一用上面公式计算放大倍数,可以看到随着RL的增加,放大倍数增加,逐渐接近输入电压100mV。
而对于理想放大器来说,跟随器的作用就是使得输出电压等于输入电压,所以输出电压恒为100mV
3测量输出电阻
将输入电压源短路,同时在输出端串接电压源,同时连接万用表如下图所示
测得:Io=2.929mA,Uo=99.996mV,进而可求的Ro=34.140Ω
4利用软件提供的测量仪表测出电路的幅频、相频特性曲线
将xbp表如图所示连接在电路中,观察xbp表即可得其幅频、相频特性曲线
5利用交流分析功能测出电路的幅频、相频特性曲线
电路一
10欧
100欧
1000欧
10千欧
100千欧
1兆欧
100兆欧
22.088mV
81.811mV
98.302mV
99.665mV
99.803mV
99.816mV
99.818mV
运算放大器
10欧
100欧
1000欧
10千欧
100千欧
1兆欧
100兆欧
100mV
100mV
100mV
100mV
100mV
100mV
电子电路

(完整版)北航微机原理实验报告

(完整版)北航微机原理实验报告

微计算机原理及运用实验报告目录实验一:I/O地址译码实验 (4)一、实验目的 (4)二、实验原理和内容 (4)三、实验程序 (4)四.实验总结 (5)实验二:8255并行接口实验 (6)一、实验目的 (6)二、实验原理和内容 (6)三、程序框图 (7)四.实验程序 (7)五.实验总结 (8)实验三:键盘显示控制实验 (9)一、实验目的 (9)二、实验内容及原理 (9)三、流程图 (10)四.程序 (10)五.实验总结 (13)实验四:8254定时器/计数器实验 (14)一、实验目的 (14)二、实验原理和内容 (14)三、实验程序 (14)四.实验总结 (15)实验五:继电器控制实验 (16)一、实验目的 (16)二、实验原理和内容 (16)三、实验中使用的程序 (16)四.实验总结 (18)实验六:DMA传送 (18)一、实验目的 (18)二、实验原理和内容 (18)三、程序 (19)四.实验总结 (20)实验七:8259 中断控制实验 (20)一、实验目的 (20)二、实验原理和内容 (21)三、流程图 (21)四.程序 (21)五.实验总结 (25)实验八:8255中断实验 (25)一、实验目的 (25)二、实验原理和内容 (25)三.实验程序 (26)四.实验总结 (27)实验一:I/O地址译码实验一、实验目的掌握I/O地址译码电路的工作原理。

二、实验原理和内容实验电路如附图1所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。

译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。

附图1 I/O地址译码电路利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。

北航电路实验报告

北航电路实验报告

实验一、组合逻辑电路一、实验目的(1)熟悉集成电路的引脚排列(2)掌握TTL门电路逻辑功能的测试方法(3)掌握TTL组合逻辑电路的实际方法,完成单元功能电路的设计(4)熟悉中规模集成电路译码器、数据译码器的性能与应用(5)掌握数字电子技术实验箱的功能及使用方法二、仪器设备(1)双踪示波器1台(2)500型万用表1台(3)数字逻辑实验箱(4)74LS00(5)74LS39(6)74LS153三、用两片74LS00自拟一个三人表决电路设三输入分别为A、B、C,当两人以上同意时发光二极管亮真值表如下1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1电路图如下:运行结果如下所示。

一人按下:二人按下:三人按下:2、设计一个三输入三输出的逻辑电路真值表如下用两个数据选择器74LS153设计电路,电路图如下:红绿灯亮:黄红灯亮:绿黄灯亮:实验二、时序逻辑电路一、实验目的(1)掌握D触发器和JK触发器逻辑功能的测试方法(2)掌握74LS161功能和引脚图,设计和实现具有一定功能的时序逻辑电路,体会不同控制端在电路设计中的作用(3)了解所用总规模集成器件的性能和应用二、仪器设备(1)双踪示波器1台(2)500型万用表1台(3)数字逻辑实验箱(4)74LS74(5)74LS20(6)74LS00(7)74LS161三、实验原理与内容1、利用2片74LS74、1片74LS20和2片74LS00设计一个4人抢答器。

电路图如下:主持人未按下抢答无效:A完成抢答其他选手按下无效:抢答完成后选手松开按钮灯保持不灭:2、利用中规模计数器74LS161实现任意进制计数器(1)用预置数置0实现七进制计数器电路图如下:计数为3的图片:计数为6的图片:,.。

北航电子电路实验总和

北航电子电路实验总和

电子电路设计实验仪器科学与光电工程131713尧爸爸2016.4.18实验一:共射放大器分析与设计一、实验目的(1)进一步了解Multisim的各项功能,熟练掌握其使用方法,为后续课程打好基础。

(2)通过使用Multisim来仿真电路,测试如图1所示的单管共射放大电路的静态工作点、电压放大倍数、输入电阻和输出电阻,并观察静态工作点的变化对输出波形的影响。

(3)加深对放大电路工作原理的理解和参数变化对输出波形的影响。

(4)观察失真现象,了解其产生的原因。

二、实验电路三、实验过程(1)请对该电路进行直流工作点分析,进而判断管子的工作状态。

操作步骤如下:Simulate-Analyses-DC Operating Point图1直流工作点为Ib=6.215uA,Ic=966.535uA,Uce=6.766V图2由上V(1)为c极;V(4)为b极;V(2)为e极由此可得Ube=0.619V,Ucb=6.14710V说明发射结正偏,集电结反偏,三极管工作在放大状态。

(2)请利用软件提供的各种测量仪表测出该电路的输入电阻。

用万用表测量输入端的电压和电流,电路图接法如图3所示(将万用表选为交流电压和交流电流档):图3测量结果为:图4经计算得到,输入电阻为3166Ω(3)请利用软件提供的各种测量仪表测出该电路的输出电阻。

这里注意一定要将输出回路断开,再接入万用表,采用测量开路电压和短路电流的方法测量输出电阻。

否则测量的是最后负载电阻的阻值。

用万用表测量输出端的电压和电流,接法如图如5所示(将万用表先后选为交流电压和交流电流档):图5测量结果为:图6经计算得到,输出电阻为2557.23Ω(4)请利用软件提供的各种测量仪表测出该电路的幅频、相频特性曲线。

采用波特测试仪如下图7搭接电路:图7该电路的幅频、相频特性曲线如图8所示图8(5)请利用交流分析功能给出该电路的幅频、相频特性曲线。

操作步骤如下:Simulate-Analyses-AC Operating,选择分析点为输出电压,得到下图9:图93dB带宽是指示数为最大值的0.707时,对应的fL和fH,图中测得最大值为19.1037V,则3dB带宽应对应纵轴为13.5063V,fH=283.1MHz,fL=79.4Hz(6)请分别在30Hz、1KHz、100KHz、4MHz和100MHz这5个频点利用示波器测出输入和输出的关系,并仔细观察放大倍数和相位差。

北航_电子实习_模拟部分_实验报告试验4

北航_电子实习_模拟部分_实验报告试验4

仪器科学与光电工程学院电子实习A2 模拟部分实验报告实验四:集成运算放大器应用2012/5/12目录一、实验目的 (2)二、实验结果 (2)1)实验电路 (2)2)示波器观察放大倍数 (2)3)分析参考电压与输出直流信号的关系: (5)4)分析温度漂移特性: (6)5)搭建积分器,微分器,射随器电路: (7)A)积分器 (7)B)微分器 (9)C)射随器: (10)6)搭建减法器: (11)三、问题回答 (12)(1)大信号放大的特性与小信号放大特性的区别? (12)(2)运放的重要指标有哪些? (12)(3)运算放大器AD817本身的输入输出电阻是多少?对于整体运放电路,输入输出电阻如何估算? (12)(4)运放的温度漂移特性如何,并试回答原因何在? (12)(5)请分析并总结仿真结论与体会。

(13)图表目录Figure 1 实验电路 (2)Figure 2 反馈电阻Rf=1kohm (4)Figure 3 反馈电阻Rf=2kohm (4)Figure 4 偏置电压和输出饱和值 (5)Figure 5 积分器正弦输入 (7)Figure 6 积分器正弦波输入电路 (8)Figure 7 积分器方波输入 (8)Figure 8 积分器方波输入电路图 (9)Figure 9 微分器输出波形 (9)Figure 10 微分器电路结构 (10)Figure 11 射随器输入输出波形 (10)Figure 12 射随器输入输出数值 (11)Figure 13 射随器结构 (11)Figure 14 减法器结构及输出电压 (11)实验四:集成运算放大器应用一、实验目的(1)了解集成运放的内部结构及各部分功能、特点;(2)了解集成运放主要参数的定义,以及它们对运放性能的影响。

(3)掌握集成运算放大器的正确使用方法;(4)掌握用集成运算放大器构成各种基本运算电路的方法;(5)掌握根据具体要求设计集成运算放大电路的方法,并会计算相应的元件参数;(6)学习使用示波器DC、AC输入方式观察波形的方法,掌握输出波形的测量绘制方法。

北航_电子实习_数字部分实验报告

北航_电子实习_数字部分实验报告

报告名称:电子电路设计训练数字部分学院:仪器科学与光电工程学院目录实验报告概述: (3)一、选做实验总结: (3)(1)补充练习2:楼梯灯设计 (3)(2)练习题6:用两种不同的设计方法设计一个功能相同的模块,完成4个数据的冒泡排序 (5)(3)练习题3:利用10MB的时钟,设计一个单周期形状的周期波形 (6)(4)练习题4:运用always块设计一个8路数据选择器 (6)(5)练习题5:设计一个带控制端的逻辑运算电路 (7)二、必做实验总结: (7)(1)练习一:简单组合逻辑设计 (7)(2)练习三:利用条件语句实现计数分频失序电路 (7)(3)练习四:阻塞赋值与非阻塞赋值得区别 (8)(4)练习五:用always块实现较复杂的组合逻辑电路 (8)(5)练习六:在verilog HDL中使用函数 (9)(6)练习七:在verilog HDL中使用任务 (9)(7)练习八:利用有限状态机进行时许逻辑设计 (10)三、实验总结及体会: (10)四、选作程序源代码 (11)(1)练习题3:利用10MB的时钟,设计一个单周期形状的周期波形 (11)(2)练习题4:运用always块设计一个8路数据选择器 (12)(3)练习题5:设计一个带控制端的逻辑运算电路 (13)(4)练习题6:用两种不同的设计方法设计一个功能相同的模块,完成4个数据的冒泡排序 (14)(5)补充练习2:楼梯灯设计 (16)图表目录Figure 1 楼梯灯任务4 (5)Figure 2 组合逻辑 (5)Figure 3 时序逻辑 (6)Figure 4 周期波形 (6)Figure 5 8路数据选择器 (6)Figure 6 逻辑运算电路 (7)Figure 7 组合逻辑设计 (7)Figure 8 计数分频时序电路 (8)Figure 9 阻塞赋值与非阻塞赋值得区别 (8)Figure 10 always块组合逻辑电路 (9)Figure 11 使用函数 (9)Figure 12 使用任务 (10)Figure 13 有限状态机 (10)电子电路设计训练(数字部分)实验报告实验报告概述:本实验报告为对四次电子电路设计训练(数字部分)实验的总结,主要包括以下四部分:第一部分为选做实验总结,主要包括每个选择实验的设计思路、运行结果、注意事项、心得体会;第二部分为必做实验总结,包括运行结果、总结、心得体会;第三部分为课程总结和体会,是对全部实验及课程的总结;第四部分为选做实验部分源代码;一、选做实验总结:(1)补充练习2:楼梯灯设计设计思路:本题给出楼梯的运行规则,并分别给与四个相应任务进行编程设计,考虑到程序的通用性及FPGA高速并行处理的优点,主要思路如下:根据运行规则(8s内和大于8s等),对每个灯的相应状态进行编程,设计时序逻辑及有限状态机;由于在总体上看,每个灯的状态变化相对独立(只有一个人上楼除外),故对每个灯编程所得到的程序代码可通用于其它灯(只需要改变相应寄存器定义即可),此即为灯控制模块,对4个不同的任务,只需设计其它部分判断逻辑,即可完成任务要求;如此设计,可大大提高程序设计效率、易用性,同时如果面对更多的灯控制需要,也可快速进行修改部署。

北航电子电路设计训练数字部分实验报告

北航电子电路设计训练数字部分实验报告

2014-2015-2-G02A3050-1 电子电路设计训练(数字EDA部分)实验报告(2015 年6月24 日)仪器科学与光电工程学院目录目录 (1)实验一、简单组合逻辑和简单时序逻辑 (4)1.1 实验任务1——简单组合逻辑 (4)1.1.1 实验要求 (4)1.1.2 模块的核心逻辑设计 (4)1.1.3 测试程序的核心逻辑设计 (5)1.1.4 仿真实验关键结果及其解释 (6)1.2 实验任务2——简单时序逻辑 (7)1.2.1 实验要求 (7)1.2.2 模块的核心逻辑设计 (8)1.2.3 测试程序的核心逻辑设计 (8)1.2.4 仿真实验关键结果及其解释 (9)1.3 实验小结 (9)实验二、条件语句和always过程块 (10)2.1 实验任务1——条件语句实现计数分频时序电路 (10)2.1.1 实验要求 (10)2.1.2 模块的核心逻辑设计 (10)2.1.4 仿真实验关键结果及其解释 (13)2.2 实验任务2——always块实现较复杂的组合逻辑电路 (14)2.2.1 实验要求 (14)2.2.2 模块的核心逻辑设计 (14)2.2.3 测试程序的核心逻辑设计 (15)2.2.4 仿真实验关键结果及其解释 (16)2.3 实验小结 (17)实验三、赋值、函数和任务 (18)3.1 实验任务1——阻塞赋值与非阻塞赋值的区别 (18)3.1.1 实验要求 (18)3.1.2 模块的核心逻辑设计 (18)3.1.3 测试程序的核心逻辑设计 (19)3.1.4 仿真实验关键结果及其解释 (21)3.2 实验任务2——在Verilog HDL中使用函数 (21)3.2.1 实验要求 (21)3.2.2 模块的核心逻辑设计 (21)3.2.3 测试程序的核心逻辑设计 (24)3.2.4 仿真实验关键结果及其解释 (26)3.3 实验任务3——在Verilog HDL中使用任务(task) (27)3.3.1 实验要求 (27)3.3.2 模块的核心逻辑设计 (27)3.3.4 仿真实验关键结果及其解释 (29)实验四、有限状态机 (30)4.1 实验任务1——利用有限状态机进行时序逻辑的设计 (30)4.1.1 实验要求 (30)4.1.2 模块的核心逻辑设计 (30)4.1.3 测试程序的核心逻辑设计 (31)4.1.4 仿真实验关键结果及其解释 (32)4.2 实验任务2——串行数据采样器 (33)4.2.1 实验要求 (33)4.2.2 模块的核心逻辑设计 (34)4.2.3 测试程序的核心逻辑设计 (37)4.2.4 仿真实验关键结果及其解释 (41)4.3 实验小结 (42)实验一、简单组合逻辑和简单时序逻辑1.1 实验任务1——简单组合逻辑1.1.1 实验要求实验代码提供的是一个可综合的数据比较器。

北航实验报告封面(共8篇)

北航实验报告封面(共8篇)

北航实验报告封面(共8篇)北航惯性导航综合实验一实验报告实验一陀螺仪关键参数测试与分析实验加速度计关键参数测试与分析实验二零一三年五月十二日实验一陀螺仪关键参数测试与分析实验一、实验目的通过在速率转台上的测试实验,增强动手能力和对惯性测试设备的感性认识;通过对陀螺仪测试数据的分析,对陀螺漂移等参数的物理意义有清晰的认识,同时为在实际工程中应用陀螺仪和对陀螺仪进行误差建模与补偿奠定基础。

二、实验内容利用单轴速率转台,进行陀螺仪标度因数测试、零偏测试、零偏重复性测试、零漂测试实验和陀螺仪标度因数与零偏建模、误差补偿实验。

三、实验系统组成单轴速率转台、MEMS 陀螺仪(或光纤陀螺仪)、稳压电源、数据采集系统与分析系统。

四、实验原理1. 陀螺仪原理陀螺仪是角速率传感器,用来测量载体相对惯性空间的角速度,通常输出与角速率对应的电压信号。

也有的陀螺输出频率信号(如激光陀螺)和数字信号(把模拟电压数字化)。

以电压表示的陀螺输出信号可表示为:UGUG?0??kG??kGfG(a)?kG?G(1-1)式中fG(a)是与比力有关的陀螺输出误差项,反映了陀螺输出受比力的影响,本实验不考虑此项误差。

因此,式(1-1)简化为 UGUG?0??kG??kG?G(1-2)由(1-2)式得陀螺输出值所对应的角速度测量值:测量?UG?UG(0)(1-3) ??GkG对于数字输出的陀螺仪,传感器内部已经利用标度因数对陀螺仪模拟输出进行了量化,直接输出角速度值,即:测量??0??真值??G(1-4)?0是是陀螺仪的零偏,物理意义是输入角速度为零时,陀螺仪输出值所对应的角速度。

且UG(0)?kG?0 (1-5)?测量精度受陀螺仪标度因数kG、随机漂移?G、陀螺输出信号UG的检测精度和UG(0)的影响。

通常kG和UG(0)表现为有规律性,可通过建模与补偿方法消除,?G表现为随机特性,可通过信号滤波方法抵制。

因此,准确标定kG和UG(0)是实现角速度准确测量的基础。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

电子电路设计数字部分实验报告学院:姓名:实验一简单组合逻辑设计实验内容描述一个可综合的数据比较器,比较数据 a 、b 的大小,若相同,则给出结果1,否则给出结果 0。

实验仿真结果实验代码主程序module compare(equal,a,b);input[7:0] a,b;output equal;assign equal=(a>b)1:0;endmodule测试程序module t;reg[7:0] a,b;reg clock,k;wire equal;initialbegina=0;b=0;clock=0;k=0;endalways #50 clock = ~clock; always @ (posedge clock) begina[0]={$random}%2;a[1]={$random}%2;a[2]={$random}%2;a[3]={$random}%2;a[4]={$random}%2;a[5]={$random}%2;a[6]={$random}%2;a[7]={$random}%2;b[0]={$random}%2;b[1]={$random}%2;b[2]={$random}%2;b[3]={$random}%2;b[4]={$random}%2;b[5]={$random}%2;b[6]={$random}%2;b[7]={$random}%2;endinitialbegin #100000 $stop;endcompare m(.equal(equal),.a(a),.b(b));endmodule实验二简单分频时序逻辑电路的设计实验内容用 always 块和 @(posedge clk) 或 @(negedge clk) 的结构表述一个 1/2 分频器的可综合模型,观察时序仿真结果。

实验仿真结果实验代码主程序module half_clk(reset,clk_in,clk_out); input clk_in,reset;output clk_out;reg clk_out;always@(negedge clk_in)beginif(!reset)clk_out=0;elseclk_out=~clk_out;endendmodule测试程序`timescale 1ns/100ps`define clk_cycle 50module top;reg clk,reset;wire clk_out;always #`clk_cycle clk=~clk;initialbeginclk=0;reset=1;#10 reset=0;#110 reset=1;#100000 $stop;endhalf_clk m0(.reset(reset),.clk_in(clk),.clk_out(clk_out));endmodule实验三利用条件语句实现计数分频时序电路实验内容利用 10MHz的时钟,设计一个单周期形状的周期波形。

实验仿真结果实验代码主程序module fdivision(RESET,F10M,out); input F10M,RESET;output out;reg out;reg[7:0] i;always @(posedge F10M)if(!RESET)beginout<=0;i<=0;endelse if(i==2||i==3)beginout=~out;i<=i+1;endelse if(i==5)i<=1;elsei<=i+1;endmodule测试程序`timescale 1ns/100psmodule division_top;reg F10M,RESET;wire out;always #50 F10M=~F10M;initialbeginRESET=1;F10M=0;#90 RESET=0;#100 RESET=1;#10000 $stop;endfdivision fdivision(.RESET(RESET),.F10M(F10M),.out(out));endmodule实验四阻塞赋值与非阻塞赋值的区别实验内容比较四种不同的写法,观察阻塞与非阻塞赋值的区别。

Blocking :always @(posedge clk)beginb=a;c=b;endBlocking1 :always @(posedge clk) beginc=b;b=a;endBlocking2 :always @(posedge clk) b=a; always @(posedge clk) c=b; non_Blocking :always@(posedge clk) beginb<=a;c<=b;End实验仿真结果实验代码主程序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)beginb=a;c=b;endendmodule测试部分`timescale 1 ns/100 ps`include "./"`include "./"`include "./"`include "./"module compareTop;wire[3:0]b11,c11,b12,c12,b13,c13,b2,c2; reg[3:0]a;reg clk;initialbeginclk=0;forever#50 clk=~clk;endinitialbegina=4'h3;$display("%d",a);#100 a=4'h7;$display("%d",a);#100 a=4'hf;$display("%d",a);#100 a=4'ha;$display("%d",a);#100 a=4'h2;$display("%d",a);#100 $stop;endblocking blocking(clk,a,b11,c11); blocking1 blocking1(clk,a,b12,c12); blocking2 blocking2(clk,a,b13,c13);non_blocking non_blocking(clk,a,b2,c2); endmodule实验五用 always 块实现较复杂的组合逻辑实验目的运用 always 块设计一个8 路数据选择器。

要求:每路输入数据与输出数据均为 4 位 2 进制数,当选择开关(至少 3 位)或输入数据发生变化时,输出数据也相应地变化。

实验仿真结果实验代码主程序module alu(out,opcode,a1,a2,a3,a4,a5,a6,a7,a8);output[3:0] out;reg[3:0] out;input[3:0] a0,a1,a2,a3,a4,a5,a6,a7;input[2:0] opcode;always@(opcode or a1 or a2 or a3 or a4 or a5 or a6 or a7 or a0) begincase(opcode)3'd0: out=a0;3'd1: out=a1;3'd2: out=a2;3'd3: out=a3;3'd4: out=a4;3'd5: out=a5;3'd6: out=a6;3'd7: out=a7;default:out=4'b0000;endcaseendendmodule测试程序`timescale 1ns/1ns`include "./"module alutext;wire[3:0] out;reg[3:0] a1,a2,a3,a4,a5,a6,a7,a8;reg[2:0] opcode;initialbegina1={$random}%16;a2={$random}%16;a3={$random}%16;a4={$random}%16;a5={$random}%16;a6={$random}%16;a7={$random}%16;a8={$random}%16;repeat(100)begin#100 opcode={$random}%8;a1={$random}%16;a2={$random}%16;a3={$random}%16;a4={$random}%16;a5={$random}%16;a6={$random}%16;a7={$random}%16;a8={$random}%16;end#100 $stop;endalu alu(out,opcode,a1,a2,a3,a4,a5,a6,a7,a8); endmodule实验六在 Verilog HDL中使用函数实验目的设计一个带控制端的逻辑运算电路,分别完成正整数的平方、立方和最大数为5 的阶乘运算。

实验仿真结果实验代码主程序module tryfunct(clk,n,result1,result2,result3,reset);output[31:0]result1,result2,result3;input[3:0]n;input reset,clk;reg[31:0]result1,result2,result3;always@(posedge clk)beginif(!reset)beginresult1<=0;result2<=0;result3<=0;endelsebeginresult1<=fun1(n); result2<=fun2(n); result3<=fun3(n); endendfunction[31:0]fun1; input[3:0]operand;fun1=operand*operand; endfunctionfunction[31:0]fun2; input[3:0]operand; beginfun2=operand*operand; fun2=operand*fun2; endendfunctionfunction[31:0]fun3; input[3:0]operand;beginfun3=1;if(operand<11)for(index=2;index<=operand;index=index+1)fun3=index*fun3;elsefor(index=2;index<=10;index=index+1)fun3=index*fun3;endendfunctionendmodule测试程序`include"./"`timescale 1ns/100psmodule tryfunctTop;reg[3:0] n,i;reg reset,clk;wire[31:0]result1,result2,result3;initialbeginclk=0;n=0;reset=1;#100 reset=0;for(i=0;i<=15;i=i+1)begin#200 n=i;end#100 $stop;endalways#50 clk=~clk;tryfunctm(.clk(clk),.n(n),.result1(result1),.result2(result2),.result3(result3),.reset(reset));endmodule实验七在 Verilog HDL中使用任务 (task) 实验目的用两种不同方法设计一个功能相同的模块,该模块能完成四个8 位 2 进制输入数据的冒泡排序。

相关文档
最新文档