CPLD制作数字钟的报告.doc
《CPLD制作数字钟的报告.doc》由会员分享,可在线阅读,更多相关《CPLD制作数字钟的报告.doc(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、CPLD制作数字钟的报告论文 2008-06-18 11:45:01 阅读429 评论0 字号:大中小 通过这8周的学习,我知道了CPLD及电子电路CAD主要是学习里利用可编程器件使其实现某种指定功能。将通过编程做出的器件进行设计组装,调试使其成为一个简易的电子产品。同时我也了解如何设计一个电子产品。首先必须明确系统的设计任务,根据任务设计方案,然后对方案中的各部分进行单元电路的设计,参数计算和器件选择,最后将各部分连接在一起,画出符合设计要求的完整的电路图。然后进行编译,使其功能在可编程器件上能够实现。 在这8周的时间里,我们主要完成了以下六个实验:实验一: 组合逻辑设计、实验装置的使用方法
2、 一 实验目的: 1通过一个简单的3-8译码器的设计,掌握组合 逻辑电路的设计方法; 2.初步了解EPLD设计的全过程, 初步掌握Altera软件的使用;3.掌握组合逻辑电路的静态测试方法.二 实验步骤: 1 进入Windows操作系统,打开Max+PLUSII的设计软件. 启动File口Project Name菜单,将出现Project Name 对话框,在对话框内键入设计项目名YUSHI,选Ok即可2.点击Assign 口Device菜单,选择器件EPF10K144-13 设计的输入. 画出的实验原理图如下: 点击保存按钮保存原理图. 将起保存在YUSHI文件下,起扩展名为.gdf4. 设
3、计项目的编译. 点击MAX+PLUSII 口compiler项,出现编译窗口,点击start即可开始编译5.设计项目的模拟仿真. 通过模拟一个项目来证明它的功能是否是正确的. 上述电路的仿真波形如下: 6.在底层图编辑器中观察适配结果以及管脚的重新分配定位.对照结构管脚分配表,根据自己的设计进行分配. 7, 器件的编译. 三. 实验效果产生的现象:通过按键输入,发光二极管显示3-8译码器的功能。 四 实验小结:通过这个实验,我们初步了解了Max+PLUSII软件设计环境以及软件的使用。也实现了3-8译码器的从理论到实践验证过程。让我们亲身体验了3-8译码器的逻辑功能。实验二 用D触发器设计异步
4、四位二进制加法计数器实验目的:1 了解时序电路的经典设计方法; 2.理解D触发器和一般逻辑门组成的时序逻辑电路实验原理图:仿真波形:实验产生的现象或效果: 每个时钟下降沿时计数器就加一,D0,D1,D2,D3表示四进制的从低位到高位的四进制数。Reset是清零端,低电平后计数重新开始。小结: 通过这个实验进一步了解软件的使用,更加熟悉了四进制的原理。通过软件实现D触发器设计异步四位二进制加法计数。实验三 6进制、60,24进制计数器实验目的:1 了解同用同步记数器,异步计数器的使用方法 2.了解用同步计数器通过清零阻塞法和预显数法得到循环任意进制计数器的方法 3 理解时序电路和同步计数器加译码
5、电路的联系,设计任意编码计数器实验原理: 对可编程器件EPF10K144-1进行编程,通过程序的控制,使起实现6进制,60进制,24进制计数器功能. 各计数器的程序如下:六进制:library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity sy6 is port(clk,clr,en: in std_logic; count :out std_logic; q :out std_logic_vector( 3 downto 0); end sy6;architecture one of sy
6、6 issignal m:std_logic_vector(3 downto 0); begin process(clk,clr,en,m) begin if clr= 1 then m=0000; elsif clkevent and clk=1then if en=0 then if m=0101 then m=0000; count=1; else m=m+1; count=0; end if; end if; end if; end process; q=m; end; 仿真产生的波形是:六十进制:library ieee; use ieee.std_logic_1164.all; u
7、se ieee.std_logic_unsigned.all; entity sy60 is port(clk,clr,en: in std_logic; count :out std_logic; q :out std_logic_vector( 3 downto 0); shi :out std_logic_vector(3 downto 0); end sy60;architecture one of sy60 issignal g :std_logic_vector(3 downto 0);signal s:std_logic_vector(3 downto 0); begin pro
8、cess(clk,clr,en,s,g) begin if clr= 1 then s=0000;g=0000; elsif clkevent and clk=1then if en=0 then if s5 and g=1001 then s=s+1;g=0000; elsif s=5 and g=1001 then s=0000;g=0000; count=1; else g=g+1; count=0; end if; end if; end if; end process;q=g;shi=s; end;仿真波形:二十四进制:library ieee; use ieee.std_logic
9、_1164.all; use ieee.std_logic_unsigned.all; entity sy24 is port(clk,clr,en: in std_logic; count :out std_logic; q :out std_logic_vector( 3 downto 0); shi :out std_logic_vector(3 downto 0); end sy24;architecture one of sy24 issignal g :std_logic_vector(3 downto 0);signal s:std_logic_vector(3 downto 0
10、); begin process(clk,clr,en,s,g) begin if clr= 1 then s=0000;g=0000; elsif clkevent and clk=1then if en=0 then if s2 and g=1001 then s=s+1;g=0000; elsif s=2 and g=0011 then s=0000;g=0000; count=1; else g=g+1; count=0; end if; end if; end if; end process;q=g;shi=s; end;仿真波形:实验效果: 6进制计数器 每当有一个时钟脉冲到来,计
11、数器加1;当其值为0101时,再来一个脉冲则计数器就向上一位进1,其本身值为0000; 60 进制计数器 每当有一个时钟脉冲到来,计数器加1;当其个位的值为1001时,再来一个脉冲时向十位进1,其本身值为0000;当个位为1001,十位为0101时,再来一个脉冲时计数器就向上一位进1,其本身的值为0000 24进制计数器 每当有一个时钟脉冲到来,计数器加1;当其十位值小于2,个位值为1001时,再来一个脉冲则计数器个位向十位进1;当十位为0010,个位0011就向更高一位进1,其本身值为0000;实验小结:通过本实验熟悉了6进制、60进制,以及24进制的软件实现方法。掌握了举一反三,其他各进制
12、的软件实现都可以通过类似的方法实现。设计也开始向复杂进了一步,更深入地了解运用该设计软件。初步了解如何用AHDL语言编写程序。实验四 报时电路、分频电路、二选一电路实验目的:1 报时电路实现时钟在接近整点时间能提供报时信号; 2 分频电路将给定的频率分成所需要的频率; 3 二选一电路是实现在计时和设置时间两个界面之间的切换.实验原理: 对可编程器件EPF10K144-1进行编程,通过程序的控制,使起实现报时,分频和二选一的功能. 它们的编辑程序如下报时电路:library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigne
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CPLD 制作 数字 报告
限制150内