电子设计自动化实验报告

合集下载

电子设计自动化EDA技术实验四报告模板-10进制计数器设计

电子设计自动化EDA技术实验四报告模板-10进制计数器设计

南京工程学院自动化学院实验报告课程名称电子设计自动化EDA技术实验项目名称10进制计数器设计实验学生班级实验学生姓名同组学生姓名实验时间实验地点实验成绩评定指导教师签字年月日24其中D 表示输入初始计数值,Sta 为计数开始,Q 表示当前计数值;LD 表示预制计数值,LD 为“0”,初始计数值打入器件;UD 表示计数方向,UD 为‘0’,计数器加计数,UD 为‘1’,计数器减计数;C 表示器件工作态,C 为‘0’,表示计数器正在计数;C 为‘1’,表示计数器计数结束;CP 为计数脉冲。

四、实验方案设计、实验方法 1. 实验方案10进制计数器的VHDL 描述有多种方法,设计过程中可以采用计数脉冲CP 作为敏感量,CP 的每个上升沿,计数值Q 加‘1’或减‘1’,加到‘9’后回‘0’或减到‘0’后回‘9’,语句可采用case …when 、with …select 、if …then 以及加减运算等多种结构实现。

也可以首先设计基本的触发器、锁存器等元件,而后通过元件的互联实现。

本实验中根据真值表用if-then 结构实现10进制计数器 2. 实验方法首先根据前文所述,对照真值表的列出的不同输入逻辑状态,分情况依次输出于输入的对应关系,而后编译综合,由开发系统自行实现电路功能。

五、实验步骤1. 设计输入 利用FILE\New 菜单输入VHDL 源程序,创建源文件D0 D1 D2 D3 CP Sta LD UDQ0 Q1 Q2 Q3 C62. 器件及管脚逻分配图管脚分配情况如图,所选器件为EPM7032AELCC44-43. 仿真波形10进制计数器的仿真波形如下图,从波形可以得出,输入输出满足前文真值表,设计电路功能达到设计要求4. 时序分析图上述时间分析可以得到,输出信号存在3ns的时间延迟,它主要与器件速度、表达逻辑的合理性有关,选用速度更高器件、优化设计可以使该值降低。

8。

设计占空比为40%的方波发生器

设计占空比为40%的方波发生器

电子设计自动化实验报告(五)学院:电气学院班级:电子122班姓名:覃思远
一、实验题目:设计占空比为40%的方波发生器
二、实验目的:学会调用LPM模块类存储器来设计涉及RAM和ROM等存储器应用的EDA 设计开发。

三、实验程序:
四、实验仿真结果:
五、仿真结果分析:设置时钟inclk0、时钟使能clken=1和复位reser=0,由图可以看出,输出q得到一个占空比为40%的方波,该设计为占空比为40%方波发生器。

六、硬件下载设置及测试过程:根据板子给定的引脚锁定图,选定相应的硬件把硬件的引脚与程序中的输入输出端锁定,编译并下载程序,设置好时钟inclk0、时钟使能clken=1和复位reser=0,板子上电测试,观察实验现象是否符合程序的结果。

七、总结:在涉及RAM和ROM等存储器应用的EDA 设计开发中要学会利用Quartus II 调用LPM RAM的方法和相关技术,包括仿真测试、初始化配置文件生成、例化程序表述、
相关属性应用、以及存储器的Verilog语言描述等。

实习报告自动化专业实习报告

实习报告自动化专业实习报告

实习报告自动化专业实习报告实习报告。

实习报告自动化专业实习报告。

实习时间,2021年7月1日至2021年8月30日。

实习单位,某某科技有限公司。

实习内容:在某某科技有限公司的实习期间,我主要负责参与自动化系统的设计与开发工作。

在实习的过程中,我学习了自动化系统的基本原理和技术,并且通过实际操作和项目实践,提高了自己的实际操作能力和解决问题的能力。

在实习的过程中,我参与了公司的一个自动化系统项目,负责了系统的设计与开发工作。

在这个项目中,我学习了自动化系统的整体架构设计和各个模块之间的协作关系,掌握了PLC编程、传感器应用、工业网络通信等技术,并且通过与团队的合作,解决了系统中的一些技术难题。

在实习的过程中,我还参与了公司的一些现场调试工作,学习了如何在实际的生产现场中部署和调试自动化系统,了解了自动化系统在实际生产中的应用和运行情况。

实习收获:通过这次实习,我不仅学习了自动化系统的理论知识,还掌握了自动化系统的设计与开发技术,并且通过实际操作和项目实践,提高了自己的实际操作能力和解决问题的能力。

同时,通过与团队的合作和项目实践,我也学习了团队合作的重要性和技术交流的重要性,提高了自己的团队协作能力和沟通能力。

在实习的过程中,我还结识了许多优秀的同事和导师,他们的经验和教诲让我受益匪浅,对自动化专业的发展和未来充满信心。

总结:通过这次实习,我不仅学到了很多专业知识和技术,还锻炼了自己的实际操作能力和解决问题的能力,并且通过与团队的合作和项目实践,提高了自己的团队协作能力和沟通能力。

这次实习经历让我受益匪浅,对自动化专业的发展和未来充满信心。

感谢公司和导师对我的指导和培养,我会继续努力,不断提高自己,为公司的发展贡献自己的力量。

eda实验报告

eda实验报告

eda实验报告
1. 实验目的
通过本次实验,了解EDA(Electronic Design Automation)的基本概念和应用模式,并通过实际操作掌握EDA工具的使用方法和流程。

2. 实验原理
EDA是电子设计自动化的缩写,是指通过计算机技术来实现电子系统设计的各个环节的自动化。

常用的EDA工具有电路仿真、电路布局、原理图设计、印刷电路板设计等。

3. 实验步骤
3.1 电路仿真
首先,我们需打开EDA工具,并导入所需的仿真器和电路元件库。

其次,我们需绘制电路图并进行仿真,根据仿真结果进一步分析和改进电路设计。

3.2 电路布局
在电路设计完成后,我们需进行电路布局,以便更精确地计算
电路性能和参数。

在布局过程中,我们需根据电路设计需求进行
元件排布,并考虑布局紧凑性和功耗等因素。

3.3 原理图设计
电路图设计是EDA工具中非常重要的一个环节,它可以帮助
我们全面了解电路设计的各个细节,确定电路元件的类型和参数,以及进一步优化电路性能。

3.4 印刷电路板设计
在进行电路仿真、布局、原理图设计后,我们需将电路设计转
化为印刷电路板(PCB)的形式。

在进行印刷电路板设计前,我
们需考虑各个细节,在选择印刷方式、器件布局、线路距离、阻
抗匹配等方面进行优化和调整。

4. 实验结论
通过本次实验,我深刻认识到EDA工具在电子设计中的应用
和重要性,并掌握了EDA工具的基本操作方法和流程。

此外,我
了解了EDA工具在电子设计和生产中的优势和局限性,对于今后
电子设计工作的开展和优化有很大的指导意义。

电子设计自动化(EDA)_数字时钟程序模块(LED数码管显示)_实验报告

电子设计自动化(EDA)_数字时钟程序模块(LED数码管显示)_实验报告

电子设计自动化(EDA)—数字时钟LED数码管显示二、实验内容和实验目的1. 6个数码管动态扫描显示驱动2. 按键模式选择(时\分\秒)与闹钟(时\分)调整控制,3. 用硬件描述语言(或混合原理图)设计时、分、秒计数器模块、闹钟模块、按键控制状态机模块、动态扫描显示驱动模块、顶层模块。

要求使用实验箱左下角的6个动态数码管(DS6 A~DS1A)显示时、分、秒;要求模式按键和调整按键信号都取自经过防抖处理后的按键跳线插孔。

实验目的: 1)学会看硬件原理图, 2)掌握FPGA硬件开发的基本技能3)培养EDA综合分析、综合设计的能力三、实验步骤、实现方法(或设计思想)及实验结果主要设备: 1)PC机, 2)硬件实验箱, 3)Quartus II软件开发平台。

1.打开Quartus II , 连接实验箱上的相关硬件资源, 如下图1所示。

2.建立新文件, 选择文本类型或原理图类型。

3. 编写程序。

4.编译5. 仿真, 加载程序到芯片, 观察硬件输出结果(数码管显示)6.结果正确则完成。

若结果不正确, 则修改程序, 再编译, 直到正确。

模24计数器模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY count24 ISPORT(clk,en:IN STD_LOGIC;cout:OUT STD_LOGIC;hh,hl:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END count24;ARCHITECTURE arc OF count24 ISSIGNAL a,b:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(clk,en)BEGINhh<=a;hl<=b;IF(clk'EVENT AND clk='1') THENIF(en='1') THENIF(a="0010" AND b="0011") THENa<="0000";b<="0000";ELSE IF(b="1001") THENa<=a+'1';b<="0000";ELSE b<=b+'1';END IF;END IF;IF(a="0010" AND b="0010") THENcout<='1';ELSE cout<='0';END IF;END IF;END IF;END PROCESS;END arc;模60计数器模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY count60 ISPORT(clk,en:IN STD_LOGIC;cout:OUT STD_LOGIC;hh,hl:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END count60;ARCHITECTURE arc OF count60 ISSIGNAL a,b:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL sout:STD_LOGIC;BEGINPROCESS(clk)BEGINhh<=a; hl<=b;IF(clk'EVENT AND clk='1') THENIF(en='1') THENIF(a="0101" AND b="1001") THENa<="0000";b<="0000";ELSE IF(b="1001") THENa<=a+'1';b<="0000";ELSE b<=b+'1';END IF;END IF;END IF;END IF;END PROCESS;sout<='1' WHEN a="0101" AND b="1001" ELSE '0';cout<=sout AND en;END arc;4-7显示译码模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY segment4to7 ISPORT(s:IN STD_LOGIC_VECTOR(3 DOWNTO 0);a,b,c,d,e,f,g:OUT STD_LOGIC);END segment4to7;ARCHITECTURE arc OF segment4to7 IS SIGNAL y:STD_LOGIC_VECTOR(6 DOWNTO 0); BEGINa<= y(6);b<= y(5);c<= y(4);d<= y(3);e<= y(2); f<= y(1);g<= y(0);PROCESS(s)BEGINCASE s ISWHEN "0000"=>y<="1111110"; WHEN "0001"=>y<="0110000"; WHEN "0010"=>y<="1101101"; WHEN "0011"=>y<="1111001"; WHEN "0100"=>y<="0110011"; WHEN "0101"=>y<="1011011"; WHEN "0110"=>y<="1011111"; WHEN "0111"=>y<="1110000"; WHEN "1000"=>y<="1111111"; WHEN "1001"=>y<="1111011"; WHEN OTHERS=>y<="0000000"; END CASE;END PROCESS;END arc;带闹钟控制模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mode_adjust_with_alarm ISPORT (adjust,mode,clk1hz: IN STD_LOGIC;clkh,enh,clkm,enm,clks,enha: OUT STD_LOGIC;clkh_a,clkm_a:OUT STD_LOGIC;mode_ss: OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END mode_adjust_with_alarm;ARCHITECTURE arc OF mode_adjust_with_alarm ISTYPE mystate IS (s0,s1,s2,s3,s4,s5);SIGNAL c_state,next_state: mystate;BEGINPROCESS (c_state)BEGINCASE c_state ISWHEN s0=> next_state <= s1; clkh<=clk1hz; clkm<=clk1hz; clks<=clk1hz;enh<='0'; enm<='0'; enha<='0'; clkh_a<= '0'; clkm_a<= '0'; mode_ss <="000";WHEN s1=> next_state <= s2; clkh<=adjust; clkm<= '0'; clks<='0';enh<='1'; enm<='0';enha<='0'; clkh_a<= '0';clkm_a<= '0'; mode_ss <="001";WHEN s2=> next_state <= s3; clkh<= '0'; clkm<=adjust; clks <= '0';enh<='0';enm<='1';enha<='0'; clkh_a<= '0'; clkm_a<= '0'; mode_ss <="010";WHEN s3=> next_state <= s4; clkh<= '0'; clkm<= '0'; clks<=adjust;enh<='0'; enm<='0';enha<='0'; clkh_a<= '0'; clkm_a<= '0'; mode_ss <="011";WHEN s4=> next_state <= s5; clkh<= clk1hz; clkm<= clk1hz; clks<=clk1hz;enh<='0';enm<='0';enha<='1'; clkh_a<=adjust; clkm_a<= '0'; mode_ss <="100";WHEN s5=> next_state <= s0; clkh<= clk1hz; clkm<= clk1hz; clks<=clk1hz;enh<='0'; enm<='0'; enha<='0'; clkh_a<= '0'; clkm_a<=adjust; mode_ss <="101";END CASE;END PROCESS;PROCESS (mode)BEGINIF (mode'EVENT AND mode='1') THENc_state<=next_state ;END IF;END PROCESS;END arc;扫描模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY scan ISPORT(clk256hz:IN STD_LOGIC;ss:OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END scan;ARCHITECTURE arc OF scan ISTYPE mystate IS (s0, s1,s2,s3,s4,s5);SIGNAL c_state,next_state: mystate;BEGINPROCESS ( c_state )BEGINCASE c_state ISWHEN s0=> next_state <=s1; ss<="010";WHEN s1=> next_state <=s2; ss<="011";WHEN s2=> next_state <=s3; ss<="100";WHEN s3=> next_state <=s4; ss<="101";WHEN s4=> next_state <=s5; ss<="110";WHEN s5=> next_state <=s0; ss<="111";END CASE;END PROCESS;PROCESS (clk256hz)BEGINIF (clk256hz'EVENT AND clk256hz='1') THENc_state<=next_state ;END IF;END PROCESS;END arc;复用模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux ISPORT(hh,hl,mh,ml,sh,sl,hha,hla,mha,mla:IN STD_LOGIC_VECTOR(3 DOWNTO 0);ss,mode_ss:IN STD_LOGIC_VECTOR(2 DOWNTO 0);y:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);alarm:OUT STD_LOGIC);END mux;ARCHITECTURE arc OF mux ISSIGNAL a,hhtmp,hltmp,mhtmp,mltmp,shtmp,sltmp:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(mode_ss)BEGINCASE mode_ss ISWHEN "000"=>hhtmp<=hh; hltmp<=hl; mhtmp<=mh; mltmp<=ml; shtmp<=sh; sltmp<=sl;WHEN "001"=>hhtmp<=hh; hltmp<=hl; mhtmp<=mh; mltmp<=ml; shtmp<=sh; sltmp<=sl;WHEN "010"=>hhtmp<=hh; hltmp<=hl; mhtmp<=mh; mltmp<=ml; shtmp<=sh; sltmp<=sl;WHEN "011"=>hhtmp<=hh; hltmp<=hl; mhtmp<=mh; mltmp<=ml; shtmp<=sh; sltmp<=sl;WHEN "100"=> hhtmp<=hha; hltmp<=hla; mhtmp<=mha; mltmp<=mla; shtmp<=sh; sltmp<=sl;WHEN "101"=> hhtmp<=hha; hltmp<=hla; mhtmp<=mha; mltmp<=mla; shtmp<=sh; sltmp<=sl;WHEN OTHERS=>hhtmp<="0000";hltmp<="0000";mhtmp<="0000";mltmp<="0000";shtmp<="0000";sltmp<="0000"; END CASE;END PROCESS;PROCESS(ss)BEGINCASE ss ISWHEN "010"=> a <=hhtmp;WHEN "011"=> a <=hltmp;WHEN "100"=> a <=mhtmp;WHEN "101"=> a <=mltmp;WHEN "110"=> a <=shtmp;WHEN "111"=> a <=sltmp;WHEN OTHERS => a <="0000";END CASE;y<=a;END PROCESS;alarm<='1' WHEN ((hh=hha)AND(hl=hla)AND(mh=mha)AND(ml=mla)) ELSE '0';END arc;闪烁模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY blink_control ISPORT(ss,mode_ss:IN STD_LOGIC_VECTOR(2 DOWNTO 0);blink_en:OUT STD_LOGIC);END blink_control;ARCHITECTURE arc OF blink_control ISBEGINPROCESS (ss,mode_ss)BEGINIF(ss="010" AND mode_ss="001") THEN blink_en<='1';ELSIF(ss="011" AND mode_ss="001") THEN blink_en<='1';ELSIF(ss="100" AND mode_ss="010") THEN blink_en<='1';ELSIF(ss="101" AND mode_ss="010") THEN blink_en<='1';ELSIF(ss="110" AND mode_ss="011") THEN blink_en<='1';ELSIF(ss="111" AND mode_ss="011") THEN blink_en<='1';ELSIF(ss="010" AND mode_ss="100") THEN blink_en<='1';ELSIF(ss="011" AND mode_ss="100") THEN blink_en<='1';ELSIF(ss="100" AND mode_ss="101") THEN blink_en<='1';ELSIF(ss="101" AND mode_ss="101") THEN blink_en<='1';ELSE blink_en<='0';END IF;END PROCESS;END arc;Top文件LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY design3 ISPORT (mode,adjust,clk1hz,clk2hz,clk256hz,clk1khz:IN STD_LOGIC;alarm,a,b,c,d,e,f,g:OUT STD_LOGIC;ss:OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END design3;ARCHITECTURE arc OF design3 ISCOMPONENT mode_adjust_with_alarm PORT (adjust,mode,clk1hz: IN STD_LOGIC;clkh,enh,clkm,enm,clks,enha: OUT STD_LOGIC;clkh_a,clkm_a:OUT STD_LOGIC;mode_ss: OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END COMPONENT;COMPONENT scan PORT (clk256hz:IN STD_LOGIC;ss:OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END COMPONENT;COMPONENT segment4to7 PORT (s: IN STD_LOGIC_VECTOR(3 DOWNTO 0);a,b,c,d,e,f,g: OUT STD_LOGIC);END COMPONENT;COMPONENT mux PORT(hh,hl,mh,ml,sh,sl,hha,hla,mha,mla:IN STD_LOGIC_VECTOR(3 DOWNTO 0);ss,mode_ss:IN STD_LOGIC_VECTOR(2 DOWNTO 0);y:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);alarm:OUT STD_LOGIC);END COMPONENT;COMPONENT blink_control PORT(ss,mode_ss:IN STD_LOGIC_VECTOR(2 DOWNTO 0);blink_en:OUT STD_LOGIC);END COMPONENT;COMPONENT count24 PORT (clk,en:IN STD_LOGIC;cout:OUT STD_LOGIC;hh,hl:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END COMPONENT;COMPONENT count60 PORT (clk ,en:IN STD_LOGIC;cout:OUT STD_LOGIC;hh,hl:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END COMPONENT;SIGNALclkh,enh,clkm,enm,clks,clkh_a,clkm_a,coutm,couts,coutm_en,couts_en,cout,vcc,coutma_en,coutma,alarm1,bli nk_en,blink_tmp,enha: STD_LOGIC;SIGNAL mode_ss,ss1:STD_LOGIC_VECTOR(2 DOWNTO 0);SIGNAL hh,hl,mh,ml,sh,sl,hha,hla,mha,mla,y,i:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINvcc<='1';coutm_en <= enh OR coutm;couts_en <= enm OR couts;coutma_en<= enha OR coutma;blink_tmp<=blink_en and clk2hz;i(3)<=y(3) OR blink_tmp;i(2)<=y(2) OR blink_tmp;i(1)<=y(1) OR blink_tmp;i(0)<=y(0) OR blink_tmp;ss<=ss1;alarm<=alarm1 AND clk1khz;u1:mode_adjust_with_alarmPORT MAP( adjust,mode,clk1hz,clkh,enh,clkm,enm,clks,enha,clkh_a,clkm_a,mode_ss);u2:count24 PORT MAP(clkh,coutm_en,cout,hh,hl);u3:count60 PORT MAP(clkm,couts_en,coutm,mh,ml);u4:count60 PORT MAP(clks,vcc,couts,sh,sl);u5:count24 PORT MAP(clkh_a,coutma_en,cout,hha,hla);u6:count60 PORT MAP(clkm_a,vcc,coutma,mha,mla);u7:mux PORT MAP(hh,hl,mh,ml,sh,sl,hha,hla,mha,mla,ss1,mode_ss,y,alarm1);u8:scan PORT MAP(clk256hz,ss1);u9:blink_control PORT MAP(ss1,mode_ss,blink_en);u10:segment4to7 PORT MAP(i,a,b,c,d,e,f,g);END arc;实验结果:数字钟包括正常的时分秒计时, 实验箱左下角的6个动态数码管(DS6 A~DS1A)显示时、分、秒。

EDA实验一38译码器设计

EDA实验一38译码器设计

《电子设计自动化》实验报告实验一实验名称:3-8译码器的设计专业及班级:姓名:学号:一、实验目的:1.掌握组合逻辑电路的设计方法。

2.掌握 VHDL 语言的基本构造及设计的输入方法。

3.掌握 VHDL 语言的基本描绘语句的使用方法。

二、实验步骤(附源代码及仿真结果图):1.成立工程, Quartus II -- project wizard (注意工程目录中不可以出现中文字符,不可以成立在桌面上);弹出窗口如图 2-3 所示。

图 2-3 New Project Wizard 窗口2.点击next,在出现的对话框中输入以下项目信息:a.项目路径,如: D:\EDA experiment\decoder38; b.项目名称,如: decoder38。

如图 2-4 所示:图 2-4 项目路径和项目名称对话框3.点击 2 次 next 后,出现如图 2-5 所示的对话框:a.Device family 中选择 Cyclone IV E;b.Available devices 中选择 EP4CE115F29C7.图 2-5器件选择窗口4.点击next后,出现EDA工具设置对话框。

在Simulation一行中, Tool Name 选择ModelSim-Altera , Fomat(s)选择 VHDL ,如图 2-6 所示。

图 2-6 EDA 工具设置对话框5.点击 next,出现如图 2-7 所示的对话框:图 2-7 新建项目汇总对话框6. 点击 Finish 后,出现如图2-8 所示的界面:图 2-8 decoder38 项目界面7.点击 File->New->VHDL File ,如图 2-9 所示。

点击 ok 封闭对话框。

图 2-9 新建 VHDL 文件窗口8.在文本编写框内键入以下程序:LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY decoder38 ISPORT(A, B,C,G1,G2A,G2B: IN STD_LOGIC;Y: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END decoder38;ARCHITECTURE Behavior OF decoder38 ISSIGNAL indata: STD_LOGIC_VECTOR(2 DOWNTO 0); BEGINindata <= C&B&A;PROCESS (indata, G1, G2A,G2B)BEGINIF (G1='1' AND G2A='0' AND G2B='0') THENCASE indata ISWHEN "000"=>Y<="11111110";WHEN "001"=>Y<="11111101";WHEN "010"=>Y<="11111011";WHEN "011"=>Y<="11110111";WHEN "100"=>Y<="11101111";WHEN "101"=>Y<="11011111";WHEN "110"=>Y<="10111111";WHEN "111"=>Y<="01111111";WHEN OTHERS =>Y<="XXXXXXXX";END CASE;ELSEY<="11111111";END IF;END PROCESS;END Behavior;9. 将文件保留为decoder38.vhd 后,开始编译,点击Processing->Start Compilation ,编译成功后,出现如图2-10 所示界面:图 2-10 编译成功界面10.再次新建一个 vhdl 文件,键入以下的 modelsim 测试程序:LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY decoder38_tb ISEND decoder38_tb;ARCHITECTURE Behavior OF decoder38_tb ISCOMPONENT decoder38PORT (A,B,C,G1,G2A,G2B: IN STD_LOGIC;Y:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END COMPONENT;SIGNAL A: STD_LOGIC:='0';SIGNAL B : STD_LOGIC:='0';SIGNAL C: STD_LOGIC:='0';SIGNAL G1: STD_LOGIC:='1';SIGNAL G2A: STD_LOGIC:='0';SIGNAL G2B: STD_LOGIC:='0';SIGNAL Y: STD_LOGIC_VECTOR(7 DOWNTO 0);CONSTANT CLK_PERIOD: TIME:=10ns;BEGINA<=not A after CLK_PERIOD;B<=not B after 20ns;C<=not C after 40ns;U1: decoder38 port map(A=>A,B=>B,C=>C,G1=>G1,G2A=>G2A,G2B=>G2B,Y=>Y);END behavior;11.将文件保留为 decoder38_tb.vhd ,编译经过。

《EDA技术》实验报告

《EDA技术》实验报告

《EDA技术》实验报告
本次实验报告是关于EDA技术的研究和应用。

EDA技术全称电子设计自动化技术,能
够实现电子设计的自动化和优化。

首先,我们讨论了EDA技术的应用范围。

EDA技术主要应用于现代集成电路的设计和
制造,目的是提高电路的性能,并减少设计和制造的成本和时间。

EDA技术可用于设计各
种电路,包括数字电路、模拟电路、混合信号电路和射频电路等。

其次,我们介绍了EDA技术的主要工具。

EDA技术工具包括原理图编辑器、电路模拟器、布局编辑器和综合工具等。

这些工具可以协同工作,在电路设计的不同阶段对电路进
行分析和优化。

接着,我们描述了EDA技术的设计流程。

EDA技术的设计流程分为四个主要阶段:设计,模拟,综合和布局。

在设计阶段,设计师使用原理图编辑器和其他工具来设计电路。

在模拟阶段,设计师将电路模型装入电路模拟器中,并进行仿真以验证电路的功能和性能。

在综合阶段,设计师使用综合工具将电路转换为特定的逻辑网表文件。

在布局阶段,设计
人员使用布局编辑器来设置电路的物理布局。

最后,我们讨论了EDA技术的优缺点。

EDA技术的主要优点是提高电路设计的效率和
准确性,并减少了设计和制造的成本和时间。

然而,EDA技术也存在一些缺点,例如,设
计人员需要具备高水平的技术和知识,否则可能出现算法错误或设计缺陷。

综上所述,EDA技术在现代电子设备设计和制造中起着非常重要的作用,技术的发展
将会极大程度上促进电子设备的设计和制造的进步和发展。

4选1多路选择器和8位加法器实验报告

4选1多路选择器和8位加法器实验报告

《电子设计自动化》课程实验报告
(2)选择配置器件的工作方式。

(3)选择配置器件和编程方式。

(4)选择目标器件引脚端口状态。

四、全程综合与编译
(1)启动全程编译。

五、时序仿真
(1)打开波形编译器。

(2)设置仿真时间区域。

设定整个仿真域的时间为50us。

(3)波形文件存盘。

(4)将工程MULT4B的端口信号节点选入波形编译器中。

(5)总线数据格式设置和参数设置。

(6)编辑输入波形数据(输入激励信号),编辑好输入波形。

(7)仿真器参数设置。

(8)启动仿真器。

(9)观察仿真结果。

5.1.1 4选1多路选择器(Timing)
5.1.2 4选1多路选择器(Functional)
5.1.3 4选1多路选择器综合结果
将end time设为100ns,可得更加清晰的时延效果图:5.1.4 4选1多路选择器(Timing)
5.1.5 4选1多路选择器(Functional)
5.2.1 8位加法器(Timing)
5.2.2 8位加法器(Functional)
5.2.3 8位加法器综合结果
同理将end time设为100ns,可得更加清晰的时延效果图:5.2.4 8位加法器(Timing)
5.2.4 8位加法器(Functional)。

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

***************
实验报告
课程名称:电子设计自动化小组成员及学号:_______________
_________
_______________
_______________
_______________
**********************
***********
应用程序,启动protel99se。

3、创建一个新的设计数据库文件
步骤:1). 【File】|【New】
2). 单击Browse按钮,选择文件的存储位置,Protel 99 SE默认文件名为desigh .ddb”。

3). 单击【OK】们就创建了一个新的设计数据库文件。

4、启动原理图编辑器
步骤:1). 【File】|【New】
2). 单击Schematic Document 【OK】或直接双击
3). 单击Explore 下的Sheet1或直接双击工作窗口中的Sheet1
1).更改屏幕分辨率
2).界面字体设置
8、在Protel99se中建立自己的设计数据库Design.ddb。

实验内容与分析:
1).设置电路图纸
假定系统已进入原理图编辑器,提出以下要求:
A.图纸大小:B号;
B.图纸方向:水平方向放置;
C.标题栏型式:标准型标题栏。

2).将库文件“Miscellaneous Devices.ddb”, “Dallas Microprocessor.ddb”,“Intel Databooks.ddb”, “Protel Dos Schematic Libraries.ddb”依次装入。

3、放置元件
在元件库中选定所需元件,然后放置元件到工作平面上。

4、删除元器件
1)菜单命令【Edit】|【Delete】
2)当光标变为十字形后,将光标移到要删除的元件处,单击鼠标左键即可将所指元件删除。

此后,程序仍处于删除命令状态,若要退出单击鼠标右键或按ESC
键退出命令状态。

5、元件移动
菜单命令:【Edit】|【Move】|【Move】
10、原理图参数设置
执行Tools|Preferences后通过Schematic选项卡、Graphical Editing选项卡和Default Primitives选项卡来实现,分别如下图所示:
实验内容与分析:
1、启动Protel99se,新建一个设计数据库文件,名称定为“姓名”.ddb。

2、启动电路原理图编辑器,建立一个原理图文件,命名为“姓名”.sch。

3、先分析电路图中所有元器件的属性,装入元器件库Sim.ddb Miscellaneous Devices.ddb 和Protel DOS Schematic Libraries.ddb。

4、然后把所有元器件和端口放置到电路原理图纸上,并把位置放好。

5、按照上图所示,给相应的引脚添加网络标签,并连接所有的连线。

6、保存电路图。

实验结果
实验内容与分析:
1、启动Protel99se,新建一个设计数据库文件,建立上图所示的原理图文件名称定为“姓名”.ddb。

2、设置电气检验规则,即产生ERC表的各种选项。

有Setup和Rule Matrix两个选项卡。

如下图:
3、执行Tools|ERC ,产生ERC报表,如下图:
4、执行Design|Create Netlist,产生网络表。

如下图所示(截取一部分网络表):
5、执行Report|Cross Reference,产生交叉表。

如下图所示:
6、打印输出。

相关文档
最新文档