实验报告1101170136王振阳

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

南京理工大学

可编程逻辑器件实验报告

姓名: 王振阳学号:1101170136

学院(系):机械工程学院

专业: 测控技术与仪器

指导者:

评阅者:

2014 年 3 月

实验一 MAX+plusⅡ开发工具使用

1 实验内容

通过实验掌握对MAX+plusⅡ开发工具使用,使用AHDL语言设计逻辑运算电路:七段译码器。

2 实验目的

学习利用MAX+plus II 进行可编程逻辑器件电路设计的过程,包括输入、编译和仿真等,熟悉开发板各接口及LED显示。

3 实验要求

上机操作,通过简单的实例,学会使用MAX+plus II的文本编辑器及进行电路设计以仿真验证的方法,能够将程序下载到开发板观察现象。

4 实验仪器

安装了MAX+plus II 的PC机一台及开发板一套。

5 实验步骤

1) 打开max+plus II软件,新建一个tdf文件,命名为qiduanyima_led,用AHDL语言编写七段译码器程序如下:

SUBDESIGN qiduanyima_led

(

D[3..0] : INPUT ;

S[6..0],c : OUTPUT;

)

BEGIN

c=vcc;

TABLE

D[3..0] => S0,S1,S2,S3,S4,S5,S6;

H"0" => 1, 1, 1, 1, 1, 1, 0;

H"1" => 0, 1, 1, 0, 0, 0, 0;

H"2" => 1, 1, 0, 1, 1, 0, 1;

H"3" => 1, 1, 1, 1, 0, 0, 1;

H"4" => 0, 1, 1, 0, 0, 1, 1;

H"5" => 1, 0, 1, 1, 0, 1, 1;

H"6" => 1, 0, 1, 1, 1, 1, 0;

H"7" => 1, 1, 1, 0, 0, 0, 0;

H"8" => 1, 1, 1, 1, 1, 1, 1;

H"9" => 1, 1, 1, 1, 0, 1, 1;

END TABLE;

END;

编译后没有错误,并生成inc文件。

2)管脚分配。首先点击assign》device,选择芯片型号为7128slc84-6;点击进入管脚分配页面,点击载入节点,拖动节点至相应的管脚,其具体对应如下:

c 75(LED5上电)

(对应至芯片译码器)

S0->9

S1->8

S2->4

S3->5

S4->6

S5->10

S6->11

(芯片开关K0~K3对应输入D0~D3)

D0->33

D1->34

D2->35

D3->36

保存并编译,没有错误后生成pof文件。

3)打开pof2jed软件,将MAX+PLUS II生成的pof文件,加载到pof2jed对话框中,点击run,生成jed文件。

4)打开ISP软件,将转换好的jed文件,下载到EPM 7128SCL84-6型实验板上。新建chn文件,File→New→点击OK;

设置JTAG:Program/Verify;Cable types:ByteBlaster;

加载jed文件,点击OK,保存并烧入芯片。

实验现象:拨动开关K0~K3,LED5上显示相应的数字。

实验问题:改变开关时其他LED也显示相同数字,可能芯片LED模块存在问题。

改进:可在译码器程序中给其他LED以变量,并在译码中赋为低电平

实验二组合电路模块设计

1 实验内容

设计七段译码器(BCD码译为共阳极七段码)、算术运算电路(三位二进制乘法,乘数初始置7,乘数利用拨动开关K1、K2、K3进行置入,结果在LED上显示),并将设计好的电路下载到实验仪的芯片中,进行实物仿真。

2 实验目的

通过实验,学会组合电路模块的图形编辑和文本编辑的设计方法,掌握电路下载、实物仿真方法。

3 实验要求

通过实例操作,学会使用MAX+plusII的文本编辑、图形编辑进行基本组合电路电路设计、仿真的方法。

4 实验仪器

安装了MAX+plus II 的PC机一台及开发板一套。

5 实验步骤

分析:1)程序由译码器和乘法器两个模块组成。

2)要求是乘数初始置7,在乘法器程序段中可用一个数组变量作为初始乘数并赋为7,开关K1,K2,K3作为另一个乘数输入。

3)由于是三位二进制乘法,十进制结果最多是49(7*7)。

4)由于EPM 7128SCL84-6型实验板的5个LED是共用唯一一个译码器的,实验中只用一个LED,来显示计算结果的个位。

实验步骤:

1)打开max+plus II软件,新建一个tdf文件,命名为qiduanyima_led,用AHDL语言编写七

段译码器程序如下:

INCLUDE "hadd_t.inc"; //半加器

INCLUDE "fadd_t.inc"; //全加器

SUBDESIGN mul3_3t

(

a[2..0]: INPUT ;

m[5..0],t1[3..0],t2[3..0],s1[6..0],c1 : OUTPUT;

)

V ARIABLE //用数组变量初始乘数b[2..0]:NODE;

n0,n1,n2,n3,n4,n5,n6,n7,n8 : NODE;

h1,h2,h3 : hadd_t;

f1,f2,f3 : fadd_t;

BEGIN

//三乘三程序

b[]=7;

c1=vcc;

n0=a0&b0; n1=a0&b1; n2=a1&b0;

n3=a1&b1; n4=a2&b0; n5=a0&b2;

n6=a2&b1; n7=a1&b2; n8=a2&b2;

h1.a=n1; h1.b=n2;

f1.ci=n3; f1.a=n4; f1.b=n5;

f2.ci=f1.co; f2.a=n6; f2.b=n7;

h2.a=h1.c; h2.b=f1.s;

h3.a=h2.c; h3.b=f2.s;

f3.ci=h3.c; f3.a=f2.co; f3.b=n8;

m0=n0;m1=h1.s;m2=h2.s;

m3=h3.s;m4=f3.s;m5=f3.co;

t1[3..0]=m[3..0];

t2[1..0]=m[5..4];

t2[2]=gnd;t2[3]=gnD;

//译码程序

TABLE

t1[3..0] => S10,S11,S12,S13,S14,S15,S16;

H"0" => 1, 1, 1, 1, 1,1, 0;

H"1" => 0, 1, 1, 0, 0, 0, 0;

H"2" => 1, 1, 0, 1, 1, 0, 1;

H"3" => 1, 1, 1, 1, 0, 0, 1;

H"4" => 0, 1, 1, 0, 0, 1, 1;

相关文档
最新文档