可编程逻辑器件课程考试

更新时间:2024-04-11 23:32:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

南京理工大学

课程名称:姓 名:学 号:成 绩:

课程考试

可编程逻辑器件 陈静 1001170101

1

可编程逻辑器件设计报告

任课教师评语: 签名: 年 月 日 一、设计要求:

数码管依次显示“ABCD”,结果在LED5~LED1上循环显示,第一个字符显示时间1秒钟,第二个字符显示时间2秒钟,第三个字符显示3秒钟,第四个字符显示4秒钟,第五个重复以上顺序,各显示间隔时间均2秒钟。其余LED不显示。

二、设计思想:

2.1设计要求解读

根据试题要求,该器件主要要完成的功能是使实验仪上 LED5数码管显示字符A时间为1秒钟后, 经过2s后在LED4数码管上显示B字符2s, 经过2s后在LED3数码管上显示C字符3s, 经过2s后在LED2数码管上显示D字符4s,

经过2s后在LED1数码管上显示A字符1s,经过2s后显示B字符2s,经过2s后显示C字符3s,经过2s后显示D字符4s,依次循环。

由此可知本题要完成以下部分的设计: (1)频率为1Hz,周期为1S的时钟信号的产生; (2)36进制的加法计数器;

(3)七段译码电路及LED5~LED1的片选; (4)74154(4线—16线译码器)。 2.2总体设计思想

2

可编程逻辑器件设计报告

器件总体设计程序框图如图2-1

LED灯 4线—16线译码器 图2-1 器件总体设计程序框图

实验仪晶振信号 分频器

36进制加法计数器七段译码器 最终输出

三、设计过程(电路原理图或AHDL):

3.1主要子模块设计 3.1.1分频器设计

要将频率为1MHz的信号分频为频率为1Hz的信号,需实现100万分频,在计算机和电路设计中亦可用2的20次方分频作为100万分频,故本分频器即实现2的20次方分频。T触发器可实现2分频,将20个T触发器级联即可实现所需功能,此时采用电路图编辑方法将非常麻烦,故采用AHDL语言进行设计,其程序如下:

SUBDESIGN CJFENPINQI (

CLK :INPUT; CLKOUT:OUTPUT; )

VARIABLE COU[19..0]:TFF; BEGIN COU[].T=VCC; COU[0].CLK=CLK;

FOR I IN 0 TO 18 GENERATE COU[I+1].CLK=COU[I].Q;

3

可编程逻辑器件设计报告

END GENERATE; CLKOUT=COU[19]; END;

100万分频亦可采用电路图编辑方法将三个100进制计数器构成的分频器级联实现,由于现场测试时有时间要求,故采用文中所述的语言编辑方法实现分频。 3.1.2三十六进制加法计数器设计

根据要求需实现36进制循环计数,故采用电路图编辑的方法进行设计,采用集成四位同步二进制加法计数器74161及相应门电路构成,第一个74161的使能端ENT和ENP以及置数端CLRN均输入高电平,其进位端接到第二个74161的使能端ENT,两个片子的清零端LDN与00100011相连,从而实现0—35循环计数。时钟信号CLK由前述分频器输出信号提供,实现每秒增1计数。电路图如图3-1:

图3-1 三十二进制循环加法计数器

3.1.3七段译码器设计

由于实验仪上的七段数码管采用的是共阳极解法,故本七段译码器应对应共阳极连接的情况。该器件采用AHDL语言编辑中的真值表法进行设计较为简便,其程序如下:

SUBDESIGN C7_1duanyimaqi18 (

D0,D1,D2,D3,D4,D5,D6,D7: INPUT ; S0,S1,S2,S3,S4,S5,S6: OUTPUT;

4

可编程逻辑器件设计报告

)

VARIABLE

B0,B1,B2,B3,B4,B5,B6,B7:NODE; BEGIN B7=D7; B6=D6; B5=D5; B4=D4; B3=D3; B2=D2; B1=D1; B0=D0; TABLE

d[7..0] H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ H\ => S0,S1,S2,S3,S4,S5,S6; => 1, 1, 1, 0, 1, 1, 0; => 0, 0, 0, 0, 0, 0, 0; => 0, 0, 0, 0, 0, 0, 0; => 1, 1, 1, 1, 1, 1, 1; => 1, 1, 1, 1, 1, 1, 1; => 0, 0, 0, 0, 0, 0, 0; => 0, 0, 0, 0, 0, 0, 0; => 1, 1, 0, 0, 1, 1, 0; => 1, 1, 0, 0, 1, 1, 0; => 1, 1, 0, 0, 1, 1, 0; => 0, 0, 0, 0, 0, 0, 0; => 0, 0, 0, 0, 0, 0, 0; => 1, 1, 1, 1, 1, 1, 0; => 1, 1, 1, 1, 1, 1, 0; => 1, 1, 1, 1, 1, 1, 0; => 1, 1, 1, 1, 1, 1, 0; => 0, 0, 0, 0, 0, 0, 0; => 0, 0, 0, 0, 0, 0, 0; => 1, 1, 1, 0, 1, 1, 0; => 0, 0, 0, 0, 0, 0, 0;

5

可编程逻辑器件设计报告

H\ => 0, 0, 0, 0, 0, 0, 0; H\ => 1, 1, 1, 1, 1, 1, 1; H\ => 1, 1, 1, 1, 1, 1, 1; H\ => 0, 0, 0, 0, 0, 0, 0; H\ => 0, 0, 0, 0, 0, 0, 0; H\ => 1, 1, 0, 0, 1, 1, 0; H\ => 1, 1, 0, 0, 1, 1, 0; H\ => 1, 1, 0, 0, 1, 1, 0; H\ => 0, 0, 0, 0, 0, 0, 0; H\ => 0, 0, 0, 0, 0, 0, 0; H\ => 1, 1, 1, 1, 1, 1, 0; H\ => 1, 1, 1, 1, 1, 1, 0; H\ => 1, 1, 1, 1, 1, 1, 0; H\ => 1, 1, 1, 1, 1, 1, 0; H\ => 0, 0, 0, 0, 0, 0, 0; H\ => 0, 0, 0, 0, 0, 0, 0; END TABLE; END;

将32进制的加法计数器输出信号0A,0B,0C,0D,1A,1B,1C,1D分别作为七段译码器的输入的D[7..0](接法见总电路图),输出S0、S1、S2、S3、S4、S5、S6分别对应数码管的a,b,c,d,e,f,g,正确连接即可输出正确结果。 3.1.4四线——十六线译码器(74154)设计

根据要求需实现5个灯循环显示字符,故采用电路图编辑的方法进行设计,电路图如图3-2:

6

可编程逻辑器件设计报告

图3-2 74154设计

通过连接门电路等实现LED5~LED1的通断,当1A=0且1B=0时,译码器Y0=1则LED5亮,译码器Y3=0或Y4=0则LED4亮,译码器Y7=0或Y8=0或Y9=0则LED3亮,译码器Y12=0或Y13=1或Y14=1或Y1=15则LED2亮;当1A=1或1B=1时,LED1亮。其输入端A,B,C,D分别与36进制加法计数器的0A,0B,0C,0D相连。电路图如图3-3:

图3-3 74154控制LED5~LED1的通断

3.2总体电路 总电路图如图3-4:

7

可编程逻辑器件设计报告

图3-4 总电路图

其中Q0,Q1,Q2,Q3,Q4,Q5,Q6,Q7分别于32进制的加法计数器输出信号0A,0B,0C,0D,1A,1B,1C,1D相连,以便观察仿真波形。

四、引脚分配

引脚分配如图4-1所示:

图4-1 引脚分配图(未显示引脚均为空)

五、文件转换与程序下载

5. 1仿真图形

说明:由于分频器的设计使得时钟频率为1Hz,周期为1s,若进行仿真,波形肯定无法完整显示出一次循环,因此仿真之前需先将分频器删除。如图5-1和5-2所示:

8

可编程逻辑器件设计报告

图5-1 仿真图形(缩小版)

图5-2 仿真图形(放大版)

5. 2烧制程序

按如下步骤将设计好的器件程序烧制入实验仪:

①将MAX+PLUS II生成的pof文件,加载到pof2jed对话框中,其它不需设置,点击“RUN”按钮,即可在同文件夹目录下,生成jed文件。如图5-3所示。

9

可编程逻辑器件设计报告

图5-3

②将转换好的jed文件,下载到双龙SL-MCU/CPLD型实验板上。 (1)新建chn文件,File→New→点击OK;

(2)设置JTAG:Program/Verify;

(3)加载jed文件,点击OK,并保存,如图5-4;

10

可编程逻辑器件设计报告

图5-4

(4)设置Cable types:BiteBlaster,如图5-5;

11

可编程逻辑器件设计报告

图5-5

(5)双龙SL-MCU/CPLD型实验板连接:提供电源线,下载线一端连接试验板,一端与PC机的并口连接。

(6)打开实验板电源开关,点击“RUN”按钮,下载程序。

六、实验结果

生成仿真的波形图时,CLK开始时设置为初始为低电平的时钟信号,观察波形图可发现LED5等显示字符A的时间为0.5S,遂将CLK设置为初始为高电平的时钟信号,则显示时间为1S。在实验仪上演示实验结果,演示结果基本正确,只是未对小数点驱动信号进行屏蔽,小数点会随机亮暗。

七、设计心得

本次期末考试中,抽了优秀档的题目,编辑了这个器件,在编辑过程中总体思路基本正确,但该器件仍存某些问题,例如时钟信号CLK对结果的影响等,设计思路不是很灵活。演示多次都出现了很多问题,在日后的器件设计之中应当谨防此类问题再次发生。可编程逻辑器件课程的学习使得我对电路设计方面的知识有了更进一步的学习和理解,为我今后的学习和工作奠定了坚实的基础。

12

本文来源:https://www.bwwdw.com/article/ik9p.html

Top