《电子设计自动化技术》EDA实训指导书 .doc
《《电子设计自动化技术》EDA实训指导书 .doc》由会员分享,可在线阅读,更多相关《《电子设计自动化技术》EDA实训指导书 .doc(28页珍藏版)》请在三一办公上搜索。
1、 CSH 前 言EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助 设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可靠性,减轻了设计者的劳动强度。VHDL是一门非常重要的、是目前标准化程度最高的硬
2、件描述语言。它在1987年就被IEEE采纳为IEEE#1076标准。用其书写的源文件既是程序又是文档,既是工程技术员之间交换信息的文件,以可作为合同签约者之间的文件。 在电子设计自动化技术课程的理论学习中,我们已仔细地介绍了基本数字电路的VHDL描述,为进一步掌握VHDL的综合应用,通过专门实训周以加强实践操作能力。本次实训现提供以上几个数字系统综合课题供大家进行分析 练习 修改与矿。为了提高分析 实践效果,在此只提供简单的课题框图与注释作为提示。同时将VHDL源代码给出以便对照调试之用。 课题1 带数字显示的秒表一、 设计任务及要求1、 设计一块用数码管显示的秒表。2、 能够准确的计时并显示
3、。3、 开机显示00.00.00。4、 用户可随时清零、暂停、计时。5、 最大计时59分钟,最小精确到0.01秒。二、 可选器件EPM130208-2、共阴极七段数码管、发光二极管、按键开关、电阻、电容。三、 设计总体框图 数字显示器的秒表总体框图如图1所示。译码显示时分复用分频电路时钟输入计时模块 图1带数字显示的秒表总体框图四、 源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity watch isport (sel:ou
4、t std_logic_vector(6downto1); 信号。seg:out std_logic_vector(7downto 0); 管的输出信号。beginstop:in std_logic;、停止计数。reset:in std_logic; 复位 cp2:in std_logic);end watch; architecture behave of watch is signal numl:std_logic_vector(3downto0); signal num2:std_logic_vector(3downto 0); signal num3:std_logic_vector
5、(3 downto 0); signal num4:std_logic_vector (3 downto 0); signal num5:std_logic_vector(3 downto 0); signal num6:std_logic_vector(3 downto 0); signal num: std_logic_vector(3 downto 0); signal numlet:std_logic_vector(2 downto 0); signal count:std_logic_vector( 17 downto 1); signal selsig:std_logic_vect
6、or(6 downto 1); signal segsig:std_logic_vector(7 downto 0);signal cp1:std_logic;signal cp3:std_logic;beginprocess(cp2)分频。BeginIf(cp2event and cp2=1)thenIf(count=”11000011010011111”)then count=”00000000000000000”;cp1=not cp1; else count=count+1;end if;end if; cp3=count(10);end process;process(cp1)计数控
7、制。BeginIf reset=1 then num1(3downto 0)=”0000”; Num2(3downto 0)=”0000”; Num3(3downto 0)=”0000”; Num4(3downto 0)=”0000”; Num5(3downto 0)=”0000”; Num6(3downto 0)=”0000”; Else if cp1event and cp1=1 thenIf biginstop=1 then num1=num1+1;If num1(3downto 0)=”1001” thenNum1 (3downto 0)=”0000”;num2=num2+1;If n
8、um2(3downto 0)=”1001” thenNum2(3 downto 0)=”0000”;num3=num3+1;If num3(3downto 0)=”1001” thenNum3(3downto 0)=”0000”;unm4=num4+1;If num4(3downto 0)=”0101”thenNum4(3downto0)=”0000”;num5=num5+1;If num5(3downto 0)=”1001” thenNum5(3downto 0)=”0000” ;num6=num6+1;If num6(3downto 0)=”0101”thenNum6(3downto0)=
9、”0000”;End if ;end if; end if; end if; end if;end if;end if;End if;end if;End process;Process(cp3)显示控制。Begin If(cp3event and cp3=1)thenIf(numlet(2downto0)=”000”)thenNum=numl;selsig(6downto1)=”111110”;end if;If(numlet(2downto0)=”001”)thenNum=num2;selsig(6downto1)=”111101”;end if;If(numlet(2downto0)=”
10、010”thenNum=num3;selsig(6downto1)=”111011”;end if;If(numlet(2downto 0)=”100”;thenNum=num4;selsig(6downto1)=”110111”;end if;If(numlet(2downto0)=”100” thenNum=num5;selsig(6downto1)=”101111”;end if;Numlet(2downto 0)=numlet(2downto 0)+1;If(numlet(2downto0)=”101”thenNumlet(2downto 0)=”000”;num=num6;Selsi
11、g(6downto1)=”011111”;end if;End if;If(num(3downto0)=”0000”)thenSegsig(7downto 0)=”01111111”;end if;End if;If(num(3downto0)=”0001”)thenSegsig(7downto0)=”00001101”;end if;If(num(3downto0)=”0010”)thenSegsig(7downto 0)=”10011111”;end if;If(num(3downto0)=”0100”)thenSegsig(7downto0)=”10011111”;end if;If(n
12、um(3downto0)=”0100”)thenSegsig(7downto0)=”11001101”;end if;If(num(3downto)=”0101”)then Segsig(7downto0)=”11011011”;end if;If(num(3downto0)=”0110”)thenSegsig(7downto0)=”11111011”;end if;If(num(3downto0)=”0111”;)thenSegsig(7downto0)=”00001111”;end if;If(num(3downto0)=”1000”)thenSegsig(7downto0)=”11111
13、111”;end if;If(num(3downto0)=”1001”)thenSegsig(7downto0)=”11011111”;end if;End process;Sel=selsig;Seg(7downto0)=segsig(7downto0);End behave;五、 程序说明1、 此程序包括分频、计数控制、显示控制部分。2、 开机显示00.00.00,用户可随时计时、暂停、清零,最大计时可到59分59.99秒。3、 计数时钟为100HZ。4、 采用时分复用的方法控制4个数码管的显示,可节约资源。 课题2 88光点阵逐点扫描显示装置一、 设计任务要求1. 使用88矩阵显示屏设计
14、一个扫描控制电路。2. 光点从屏左上角像素点开始逐点扫描,终止与右下角像素点,然后周而复始的运行下去。3. 扫描一桢所需时间为13S。二、 可选器件EPM130208-2、8X8矩阵显示屏、电阻。三、 设计总体框图8X8发光点阵逐点扫描显示装置总体框图如图2所示。时钟输 入列控制电 路分频电 路行控制电 路8X8矩阵显示屏图2 8X8发光点阵逐点扫描显示装置总体框图四、 参考源程序 library ieee; use ieee.std_logic_1164.all;use ieee.std_logicsigned.all;entity zlx2 isport( clk:in std_logic
15、;q:out std_logic_vector(21 downto0);路输出。T:out std_logic_vector(0to7); 列选通。Y:out std_logic_vector(0to7); 行选通。 Ebd zkx2lArchitecture a of zlx2 is Signal b:std_logic_vector(21downto 0):=”0000000000000000000000”; Signal a:std_logic_vector(0to 2); Signal e:std_logic_vector(0to2); Signal c:std_logic_vecto
16、r(0to7); Signal d:std_logic_vector(0to7);BeginProcess (clk) 分频电路。Begin If(clkevent and clk =1)then B(21downto 0)=b(21downto)+1;End if;Q=b; 输出扫描频率。End process;Process 以下两个进程控制行、列选通线实现点扫描。BeginA(0)=b(16);A(1)=b(17);A(2)=b(18);If a=”000”then c=”10000000”;Elsif a=”001”then c=”01000000”;Elsif a=”010”then
17、 c=”00100000”;Elsif a=”011”then c=”00010000”;Elsif a=”100”then c=”00001000”;Elseif a=”101”then c=”00000100”;Elseif a=”110”then c=”00000010”;Elseif a=”111”then c=00000001”;End if;Y=c;End process;ProcessBeginE(0)=b(19);E(1)=b(20);E(2)=b(21);If e=”000”then d=”01111111”;Elsif e=”001”then d=”10111111”;El
18、sif e=”010”then d=”11011111”;Elsif e=”011”then d=”11101111”;Elsif e=”100”then d=”11110111”;Elsif e=”101”then d=”11111011”;Elsif e=”110”then d=”11111101”;Elsif e=”111”then d=”11111110”;End if;T=d;End process;End a;五、 说明1. 程序主要由分频电路和扫描控制电路组成。2. 扫描控制电路可用3线-8线译码器的设计思路来实现。课题3 彩灯闪烁装置一、 设计任务及要求1. 使用8X8矩阵显示
19、屏设计一个彩灯闪烁装置。2. 第一侦以1个光点为1个像素点从屏左上角开始逐点扫描,终止于右下角。3. 第二侦以2个光点为1个像素从左上角开始逐点扫描,终止于右下角。4. 第三侦重复第一侦,第四侦重复第二侦,周而复始的运行下去。二、 可选器件EPM130208-2、8X8矩阵显示屏、电阻。控制 奇 偶 侦8X8矩阵显示屏三、 设计总体框图时钟输入分频电路列控制电路行控制电路彩灯闪烁装置总体框图如图3所示。图3 彩灯闪烁装置总体框图四、 源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_signed.all;-for+op
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子设计自动化技术 电子设计自动化技术EDA实训指导书 电子设计 自动化 技术 EDA 指导书
链接地址:https://www.31ppt.com/p-4146986.html