第1页共15页“电子设计自动化”实验指导书东北林业大学机电工程学院电气工程及其自动化专业、自动化专业2013.5.8第2页共15页目录实验一加法器.......................................................................................................................3实验二数字位移测量电路...................................................................................................4实验三数据比较器...............................................................................................................5实验四编码器.......................................................................................................................6实验五译码器.......................................................................................................................7实验六数据选择器...............................................................................................................8实验七计数器.......................................................................................................................9实验八用有限状态机方法设计计数器.............................................................................10实验九数字频率计11第3页共15页实验一加法器一、实验目的1.熟悉用可编程器件设计数字系统的流程;2.熟悉QuartusⅡ9.0软件环境;3.掌握用原理法和可编程逻辑器件设计数字电路的方法。二、实验设备计算机,QuartusⅡ9.0软件,EDA实验箱。三、实验内容1.设计一位半加器及仿真;2.设计一位全加器;3.设计四位加法器及仿真;4.器件引脚设置;5.编程下载,用实验箱验证设计结果。四、实验原理四位加法器的输入/输出端口如图1.1所示。A、B为参与加法运算的两个四位二进制数,Ci为进位输入。D为4位和,Co为进位输出。图1.1四位加法器的输入/输出端口四位加法器的结构如图1.2所示,由一个一位半加器和三个一位全加器串接而成。工作时,低位A1与B1两位数相加,得出最低位的和D1和进位C1,第二位加数A2、B2以及来自最低位的进位C1进行全加运算,得到次低位的和D2和进位输出C2,依次类推,产生最高位的和D4和进位Co图1.2四位加法器的顶层结构五、实验步骤1.建立工程项目,设置可编程器件型号,建立原理图文件;2.设计一位半加器、一位全加器和四位加法器的原理图文件、波形文件,并进行仿真、编译,下载到实验箱。3.输入信号接拨码开关,输出信号接发光二极管。改变拨码开关的状态,记录结果。4.撰写实验报告。第4页共15页实验二数字位移测量电路一、实验目的1.进一步熟悉QuartusⅡ9.0软件环境;2.熟悉宏模块库,掌握宏模块的使用方法;3.了解自顶向下的设计方法,进一步熟悉原理图的设计方式。二、实验设备计算机,QuartusⅡ9.0软件,EDA实验箱。三、实验内容设计一个2位十进制数字位移测量电路。四、实验原理2位十进制位移测量仪可以测量滚轮的直线位移,原理如图2.1所示。图2.1位移测量仪的原理当滚轮转动时,与滚轮同轴的光电传感器将产生脉冲信号“distancepulse”,每个脉冲代表一定距离或角度当量。当滚轮顺时针方向转动时,传感器的方向信号“direction”输出低电平;当滚轮逆时针转动时,“direction”信号输出高电平。设计一个数字电路,对传感器输出的信号进行计数并显示计数结果。当“direction”信号为低电平时,对“distancepulse”进行加法计算;当“direction”信号为高电平时,对“distancepulse”信号进行减法计数,得到的计数值为滚轮转动的位移。该电路分为计数器模块和字形译码器模块。计数器模块对输入的信号进行100进制可逆计数,计数结果为两组BCD码;字形译码器模块接收计数器模块的输出,并产生两组七段字形码。五、实验步骤1.顶层模块划分,确定各模块的功能;2.建立工程项目,设置可编程器件型号,建立原理图文件;3.设计原理图文件;4.编译设计文件、配置引脚;5.下载到实验箱;6.将拨码开关输入给“direction”,将脉冲源信号输入给“distancepulse”,将计数结果连接到LED字形显示器。7.改变脉冲源的频率和拨码开关状态,记录实验现象;8.撰写实验报告。第5页共15页实验三数值比较器一、实验目的1.熟悉VerilogHDL语言的语法及程序结构;2.掌握用VerilogHDL语言和可编程逻辑器件设计数据比较器的方法。二、实验设备计算机,QuartusⅡ9.0软件,EDA实验箱。三、实验内容设计一个四位数值比较器。四、实验原理数值比较器是比较两个二进制大小的数字电路,比较结果有三种情况:A等于B、A大于B和A小于B。当操作数A和B都是一位二进制数时,比较器的真值表见表3.1。逻辑函数式为:BAABBAYBABAYBABAYBA表3.1一位数值比较器的真值表输入输出ABYA=BYABYAB00100010011001011100将多个比较器组合起来就构成多位数值比较器,具有有两种实现方法。1.先用VerilogHDL语言设计一位数值比较器,并封装为元件或函数。再调用一位数值比较器元件或函数来设计多位数值比较器。这是元件级设计。2.采用行为级方式直接设计,这是一种更简单的方法。四、实验步骤1.建立工程项目,设置可编程器件型号,建立VerilogHDL文件;2.输入、编辑VerilogHDL文件;3.编译设计文件、配置引脚;4.下载到实验箱;5.输入信号A、B接拨码开关,输出信号YA=B、YAB、YAB接发光二极管。6.改变拨码开关状态三次以上,使A、B满足三种大小关系,记录实验结果。7.撰写实验报告。第6页共15页实验四编码器一、实验目的1.熟悉VerilogHDL语言的指令;2.掌握用VerilogHDL语言和可编程逻辑器件设计编码器的方法。二、实验设备计算机,QuartusⅡ9.0软件,EDA实验箱。三、实验内容设计一个8-3优先权编码器。四、实验原理8-3优先权编码器输入输出信号如图4.1所示,真值表如表4.1所示。0N1N2N3N4N5N6N7NEINEONGSNA0NA1NA2N8-3编码器图4.18-3优先权编码器输入输出信号其中,EIN为低电平有效的使能信号,0N~7N为低电平有效的输入信号,A2N、A1N、A0N为编码输出信号,GSN、EON为扩展编码输出信号。表4.18-3编码器真值表输入输出EIN0N1N2N3N4N5N6N7NA2NA1NA0NGSNEON1XXXXXXXX11111011111111111100XXXXXXX0000010XXXXXX01001010XXXXX011010010XXXX0111011010XXX01111100010XX011111101010X01111111100100111111111101五、实验步骤1.建立工程项目,设置可编程器件型号,建立VerilogHDL文件;2.输入、编辑VerilogHDL文件;3.编译设计文件、配置引脚;4.下载到实验箱;5.输入EIN、0N~7N接拨码开关,输出信号A2N~A0N、GSN、EON接发光二极管。6.改变拨码开关的状态,如表4.1所示,记录实验结果。7.撰写实验报告。第7页共15页实验五译码器一、实验目的1.进一步熟悉VerilogHDL语言的指令;2.掌握用VerilogHDL语言和可编程逻辑器件设计译码器的方法。二、实验设备计算机,QuartusⅡ9.0软件,EDA实验箱。三、实验内容设计一个3-8译码器。四、实验原理图5.13-8译码器的输入输出信号3-8译码器的输入输出信号如图5.1所示。A、B、C为输入地址信号,Y0~Y7为译码输出信号。该电路对C、B、A组成的3位二值代码进行译码,在Y0~Y7的某一个输出低电平。G1、G2A、G2B为控制信号,当G1=1,G2A=0,G2B=0时,3-8译码器才进行译码;否则译码器不工作,Y0~Y7输出均为高电平。3-8译码器的真值表如下。表5.13-8译码器的真值表G1G2AG2BCBAY0Y1Y2Y3Y4Y5Y6Y70XXXXX11111111X1XXXX11111111XX1XXX111111111000000111111110000110111111100010110111111000111110111110010011110111100101111110111001101111110110011111111110五、实验步骤1.建立工程项目,设置可编程器件型号,建立VerilogHDL文件;2.输入、编辑VerilogHDL文件;编译设计文件、配置引脚;3.下载到实验箱;输入地址信号和控制信号接拨码开关,输出信号接发光二极管。4.改变拨码开关的状态,如表5.1所示,记录实验结果。5.撰写实验报告。第8页共15页实验六数据选择器一、实验目的1.掌握VerilogHDL语言转向控制语句的使用方法;2.掌握用VerilogHDL语言和可编程逻辑器件设计数据选择器的方法。二、实验设备计算机,QuartusⅡ9.0软件,EDA实验箱。三、实验内容设计一个8选1数据选择器。四、实验原理8选1数据选择器的引脚如图6.1所示。S为使能信号,当S=0时,电路不工作,输出信号Y=0;当S=1时,电路根据A2A1A0三位地址信号的编码值将输入信号D0~D1中的一个送给输出信号Y。真值表如表6.1。图6.18选1数据选择器的引脚表6.18选1数据选择器的真值表SA2A1A0D0D1D2D3D4D5D6D770XXXXXXXXXXX01000XXXXXXXXD01001XXXXXXXXD11010XXXXXXXXD21011XXXXXXXXD31100XXXXXXXXD41101XXXXXXXXD51110XXXXXXXXD61111XXXXXXXXD7五、实验步骤1.建立工程项目,设置可编程器件型号,建立VerilogHDL文件;2.输入、编辑VerilogHDL文件;3.编译设计文件、配置引脚;4.下载到实验箱;5.控制信号S、A2、A1、A0接拨码开关;输入信号D0~D7也接拨码开关,且固定设置为VCC或地(被选择信号接VCC,其他的接地);输出信号Y接发光二极管;6.改变拨码开关状态,设置A2A1A0状态,如表6.1,观察Y的状态,记录实验结果;7.撰写实验报告。8SA2A1A0YD0~D7第9页共15页实验七计数器一、实验目的1.掌握VerilogHDL语言的多进程编程方式或函数调用方式;2.掌握用VerilogHDL语言和可编程逻辑器件设计时序逻辑电路的方法。二、实验设备计算机,QuartusⅡ9.0软件,EDA实验箱。三、实验内容设计一个带使能和异步清零功能的同步BCD码可逆计数器和七段字