EDA实验指导书学生.docx

上传人:b****6 文档编号:12057652 上传时间:2023-06-04 格式:DOCX 页数:49 大小:1.41MB
下载 相关 举报
EDA实验指导书学生.docx_第1页
第1页 / 共49页
EDA实验指导书学生.docx_第2页
第2页 / 共49页
EDA实验指导书学生.docx_第3页
第3页 / 共49页
EDA实验指导书学生.docx_第4页
第4页 / 共49页
EDA实验指导书学生.docx_第5页
第5页 / 共49页
EDA实验指导书学生.docx_第6页
第6页 / 共49页
EDA实验指导书学生.docx_第7页
第7页 / 共49页
EDA实验指导书学生.docx_第8页
第8页 / 共49页
EDA实验指导书学生.docx_第9页
第9页 / 共49页
EDA实验指导书学生.docx_第10页
第10页 / 共49页
EDA实验指导书学生.docx_第11页
第11页 / 共49页
EDA实验指导书学生.docx_第12页
第12页 / 共49页
EDA实验指导书学生.docx_第13页
第13页 / 共49页
EDA实验指导书学生.docx_第14页
第14页 / 共49页
EDA实验指导书学生.docx_第15页
第15页 / 共49页
EDA实验指导书学生.docx_第16页
第16页 / 共49页
EDA实验指导书学生.docx_第17页
第17页 / 共49页
EDA实验指导书学生.docx_第18页
第18页 / 共49页
EDA实验指导书学生.docx_第19页
第19页 / 共49页
EDA实验指导书学生.docx_第20页
第20页 / 共49页
亲,该文档总共49页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

EDA实验指导书学生.docx

《EDA实验指导书学生.docx》由会员分享,可在线阅读,更多相关《EDA实验指导书学生.docx(49页珍藏版)》请在冰点文库上搜索。

EDA实验指导书学生.docx

EDA实验指导书学生

五、KHF-5型CPLD/FPGA实验开发系统

(一)、系统概述

实验箱由主板和下载板组成,能够满足工科院校开设CPLD/FPGA课程的实验需要,同时也可用作CPLD/FPGA应用系统。

编辑方式有图形编辑,文本编辑,波形编辑,混合编辑等方式,硬件描述语言有AHDL,VHDL,Verilog-HDL等语言。

配有模拟可编程器件ispPAC器件系列,突破传统的EDA实验箱一般只做数字电路实验的模式,用户可以在实验箱上通过模拟可编程器件进行模拟电子的开发训练。

实验箱配有10个数码管,(包括6个并行扫描数码管和4个串行扫描数码管

)。

16个数据开关,4个脉冲开关,数据开关和脉冲开关可配合使用,也可单独使用。

A/D转换,采用双A/D转换,有常规的8位A/D转换器ADC0809,还可以配置位数较高,速度较快的12位A/D转换器MAX196。

D/A转换器,采用高速DA芯片0800。

通用小键盘,本实验箱提供16个微动开关(4X4),可方便的进行人机交互。

具有单片机扩展槽,由于实验箱上的所有资源(如数码管、数据开关、小键盘等)都可以借用,因此通过此扩展槽可以开发单片机及单片机接口实验。

外围扩展口,为了便于开发,本实验箱还预留一个40PIN的扩展槽,用以与外围电路的联接。

下载板采用CPLD/FPGA芯片,具有芯片集成度高、内部资源丰富、用户可用引脚多等显著优点,不易出现芯片内部资源尚有空余而芯片引脚已用完的情况。

CPLD/FPGA下载板上包含断电芯片功能保持功能,并带有COM1、COM2、COM3、COM4四个50脚的插针,使下载板易于与主板连接起来。

下载板上也可作为应用板使用。

本实验装置在PC机上还配有一个专用下载程序(CPLDDN4),供用户下载程序。

当串行通信电缆分别与下载板和PC机相连后,通过此界面可以实现在MAX+PLUS下编写的电路(如图形、波形、AHDL语言、VHDL语言编写的电路)进行下载、写EEPROM和读EEPROM。

具有VGA接口、USB接口、PS/2接口、语音接口。

实验箱配有128×64字符型液晶屏一块。

(二)、硬件结构及原理图

本实验箱由实验板和下载板两部分组成。

下载板可以和主板配合完成数字电路及CPLD/FPGA的各种开发和实验,也可以单独做实际应用的应用板。

且具有模拟可编程下载板、VGA/PS2接口板、USB接口板、点阵显示板。

1.时钟源

 

图1-2050MHz信号源

 

本实验箱CPLD/FPGA芯片由50MHz晶振提供振荡频率,接至P183管脚。

为了方便操作,还为系统提供了约1Hz—1MHz连续可调的时钟信号,接至CPLD/FPGA的P78脚,通过调节短路夹J1和J2来改变其输出频率值。

22.1184MHz的时钟信号接于CPLD/FPGA的80脚(P80)。

 

 

图1-21可调信号源

2.输入开关

本实验箱中有16个数据开关(SW1——SW16),4个脉冲开关(KP1——KP4)。

在通常状态下数据开关和脉冲开关为低电平。

数据开关和脉冲开关可配合使用,也可单独使用。

若二者配合使用,在数据开关为低电平时,按下脉冲开关则产生一个高电平脉冲;在数据开关为高电平时,按下脉冲开关则产生一个低电平脉冲。

其中16个数据开关与CPLD/FPGA的管脚的连接情况依次为:

SW1-P103,SW2-P104,SW3-P111,SW4-P112,SW5-P113,SW6-P1114,SW7-P115,SW8-P116,SW9-P119,SW10-P120,SW11-P121,SW12-P122,SW13-P125,SW14-P126,SW15-P127,SW16-P128。

同时与数据开关和CPLD/FPGA相应引脚相连的还有16个LED发光二极管,可以作为输出使用。

在作为输出时,不论数据开关和脉冲开关为高电平还是低电平,均不影响其状态。

 

图1-22脉冲开关

脉冲开关(KP1——KP4)与CPLD/FPGA的管脚的连接情况依次为P103,P104,P111,P112与数据开关SW1—SW4复用CPLD/FPGA管脚。

脉冲开关经RS触发器去抖动之后,便可实现在数据开关为高电平时产生一个负脉冲,在数据开关为低电平时产生一个正脉冲。

此电路适合作计数器,暂存器的脉冲输入。

3.数码管显示

本实验箱有10个数码管(SEG1——SEG10),采用共阴极8段LED显示。

其中SEG1——SEG2采用静态显示方式,SEG3——SEG10采用动态扫描显示方式。

数码管SEG1——SEG10与CPLD/FPGA的对应管脚接法为:

 

 

图1-24数码管显示原理图

SEG1(a,b,c,d,e,f,g,p)——P161(D4),P162(D5),P163,P164(D6),P166(D7),P167,P168,P169。

SEG2(a,b,c,d,e,f,g,p)——P170,P172,P173,P174,P175,P176,P177,P179。

其中P169、P179分别接到两个数码管的小数点上。

其中SEG1、SEG2的8段输入端分别与8个LED发光二极管相连且同时显示。

LED发光二极管在实验箱上的标志为D17—D32分别对应P161(D4),P162(D5),P163,P164(D6),P166(D7),P167,P168,P169,P170,P172,P173,P174,P175,P176,P177,P179。

 

图1-25串行扫描数码管原理图

 

图1-26串行扫描数码管74138片选原理图

SEG3——SEG10的共阴公共端G经74138译码并反相后分别与CPLD/FPGA的对应管脚相连,74138的A、B、C三个输入端分别接到CPLD/FPGA的P180、P186、P187管脚,由其控制各位分时选通,动态扫描。

SEG3——SEG10(a,b,c,d,e,f,g,p)的各段与CPLD/FPGA引脚的对应关系为:

P189、P190、P191、P192、P193、P195、P196、P197。

如图1-26所示。

4.A/D转换

本实验箱A/D转换采用双A/D转换,有8位A/D转换器ADC0809与12位A/D转换器MAX196。

对于ADC0809只使用了一路模拟量输入IN-1,其余7个模拟量输入端均接到扩展槽COM5。

用户可最多实现7路模拟量分时输入。

ADD-A,ADD-B,ADD-C为可选择地址,分别接到CPLD/FPGA的对应管脚P36,P37,P38

START(启动信号)与ALE(地址锁存信号)均接到CPLD/FPGA的对应管脚P19。

时钟CLOCK端接到CPLD/FPGA的对应管脚P40。

EOC(转换结束信号)接到CPLD/FPGA的对应管脚P39,Enable接对应的管脚P17。

8位数字量输出端由低(lsb2-8)到高(msb2-1)分别接到CPLD/FPGA的对应管脚P24,P25,P26,P27

P28,P29,P30,P31。

对于MAX196,其VDD接外电源VCC(+5V),WR写端接P25,RD读端接P24,INT端接P19,6路输入与ADC0809复用,12位输出(D0—D12)分别接P26,P27,P28,P29,P30,P31,P36,P37,P38,P39,P40,P41。

用户可以随意的使用任意一种。

 

 

图1-27A/D转换器0809

 

图1-28A/D转换器MAX196

5.D/A转换

实验箱D/A转换器DAC0800,参考电压为VCC(+5V),数字量由CPLD/FPGA输入到DAC0800的DI0-DI7,与CPLD/FPGA管脚的对应关系为:

P132-DI0,P133-DI1,P134-DI2,P135-DI3,P136-DI4,P139-DI5,P140-DI6,P141-PDI7,P16—CS。

模拟量输出经J3(COM2)输出。

 

图1-29D/A1转换器DAC0800

 

图1-30D/A2转换器DAC0800

6.单片机扩展槽及外扩槽

在主板上留有一个模拟单片机扩展槽,用于CPLD/FPGA模拟单片机之用,其与CPLD/FPGA的接口分别为,P0.0—P0.7(39—32),对应于P44,P45,P46,P47,P53,P54,P55,P56;P1.0—P1.7(1—8),对应于P57,P58,P60,P61,P62,P63,P64,P65;P2.0—P2.7(21—28),对应于P75,P74,P73,P71,P70,P69,P68,P67;P3.0—P3.7(10—17),对应于P83,P85,P86,P87,P88,P89,P90,P92;PSEN脚对应于P194,ALE脚对应于P79;RST脚对应于P18。

7.RS232接口

TXD(PC)接到RXD(CPLD/FPGA)的P182;RXD(PC)接到TXD(CPLD/FPGA)的P93。

8.RS485接口

RS485的DI、RD分别接CPLD/FPGA的P167、P169管脚,DE、RE并联后与CPLD/FPGA的P168相连。

 

 

图1-31MAX487原理图

9.键盘

4X4键盘的接口电路如图1-32所示:

CPLD/FPGA的P141、P142、P143、P144管脚作为扫描码输出,分别接到键盘的输入端,键盘的查询输出接到CPLD/FPGA的P147、P148、P149、P150四个管脚上。

 

图1-32键盘接口示意图

10.扩展接口

 

图1-33单片机接口图

(一)

40PIN的扩展槽COM6:

为了外扩使用,在主板上设置有一个40PIN的扩展槽COM6,该扩展槽与标准的51单片机仿真机接口兼容,其接口定义如下:

1-PO57、2-VCC、3-PO58、4-PO44、5-PO60、6-PO45、7-PO61、8-PO46、9-PO62、10-PO47、11-PO63、12-PO53、13-PO64、14-PO54、15-PO65、16-PO55、17-P18、18-PO56、19-PO83、20-VCC、21-PO85、22-P79、23-PO86、24-PO93、25-PO87、26-PO67、27-PO88、28-PO68、29-PO89、30-PO69、31-PO90、32-PO70、33-PO92、34-PO71、35-XTAL2、36-PO73、37-XTAL1、38-PO74、39-GND、40-PO75。

其中POXX表示CPLD/FPGA的管脚经过电阻后与扩展口相连。

 

图1-34单片机接口图

(二)

PS2接口:

 

图1-35PS2接口图

26PIN的扩展槽COM5:

其与CPLD/FPGA对应的管脚在主板上已标明,此扩展槽可供用户根据自己的需要使用,。

 

图1-3626PIN_COM5接口图

 

 

图1-3726PIN_COM5接口匹配电阻

功放部分电路:

 

图1-38功放电路示意图

音频前项通道部分电路:

 

图1-39电压处理

 

 

 

 

 

 

 

 

图1-40双声道及话筒前置处理电路

 

实验一:

QuartusII软件的基本操作与应用

一、实验目的:

1、通过一个简单的3-8译码器的设计,掌握组合逻辑电路的设计方法。

2、掌握组QuartusII软件的基本操作。

3、初步了解可编程器件设计的全过程。

二、实验步骤:

一)、新建项目

首先新建一个项目来管理所要新建的各种文件,方法是:

在QuartusⅡ环境下,打开菜单File,选择子菜单NewProjectWizard后,打开如下图1所示窗口,按照向导窗口的提示,创建新项目。

图1新建项目窗口1

点击图3-3中的“Next”按钮,在下图2所示窗口中输入有关的路径名和项目名称后,按下“Finish”按钮,即可完成新建项目的工作。

图2新建项目窗口2

二)、原理图设计与编译

原理图的设计与编译在CompileMode(编译模式)下进行。

1新建原理图文件

打开File菜单,选择New,出现如下图3所示“新建”窗口。

图3新建窗口

在图3-5所示的“DeviceDesignFiles”标签中,选择“BlockDiagram/SchematicFile”项,按下“OK”按钮即可打开原理图编辑器(如图4所示),进行原理图的设计与编辑。

图4原理图编辑器

选择“Block&SymbolEditors”中的不同器件(如图5所示),在编辑区中就可完成原理图的设计编辑。

图5Block&SymbolEditors

添加元器件可点击“Block&SymbolEditors”中元器件符号,或在编辑区的空白处双击鼠标左键,出现“Symbol”对话框,在“Libraries”中选择所需元器件,或直接在“Name”文本框中输入元器件名称,如74138(3-8译码器),点击“OK”按钮,将元器件拖放到编辑区中。

图6Symbol对话框

按照设计需要,使用“单线连接线”或“总线连接线”将各器件的引脚连接起来。

总线的命名采用数组形式,如out[7..0],与总线相连的引脚也采用相同的数组形式命名;若需从总线中引出单线时,须指出各单线对应的总线位号(双击线条即可命名)。

(如图7所示)两根连接线,若名称相同,亦表示两线为连通状态。

(如图8所示)

图7连线示意图1

图8连线示意图2

选择某一元器件,点击“元器件翻转工具”按钮,即可改变元器件引脚顺序及摆放方向(如图9所示)。

图9元器件翻转工具使用效果

2编译原理图

原理图设计完成后,在编译模式下,点击“►”按钮进行编译,编译无误将弹出编译成功对话框;编译如有错误,请根据“调试信息”框中的错误提示修改原理图,直至编译通过。

生成成功后将弹出成功对话框。

(如图10所示)

图10编译模式按钮及编译成功对话框

3生成自定义芯片

原理图编译通过后,可根据用户需要,设计生成自定义芯片。

打开“Tools”菜单,选择“CreatSymbolForCurrentFile”菜单项(如图11所示),就可生成自己定义的芯片,芯片的名称就是编译通过的原理图的名称。

用户即可在“Symbol”对话框“Libraries”文本框的“Project”菜单下找到自己设计的芯片(如图12所示)。

图11自定义芯片生成菜单项

图12自定义芯片选择界面

4创建向量波形文件

当原理图编译完成后,需要新建波形文件,以便利用波形文件对前面完成的设计进行仿真分析。

本过程需要在SimulateMode(仿真模式)下进行。

打开“新建”窗口,在“OtherFiles”标签中选择“VectorwaveformFile”(如图13所示),按下“OK”按钮,即可新建一个波形文件。

图13波形文件新建界面

波形文件编辑界面如下图14所示,分为两个区域,左侧为节点编辑区,右侧为波形仿真区;

图14波形文件新建界面

在左侧节点编辑区的空白处双击鼠标左键,弹出“节点/总线插入”对话框(如图15所示),添加输入、输出节点;

图15节点/总线插入界面

点击图16中的“NodeFinder”按钮,将弹出“NodeFinder”窗口,如图17所示。

在该界面“Filter”下拉菜单中选择“Pins:

all”,点击“Start”按钮后,在窗口的左半边的“NodeFinder”列表框中,将显示原理图中所有的输入、输出节点,可从中选择你所需要的节点,添加到右侧的“SelectedNodes”列表框中(如图18所示)。

被选中的节点信号将作为波形文件的输入输出信号。

点击“OK”按钮,即可回到波形文件编辑界面(如图18所示)。

接下来,可在波形文件编辑界面右侧的波形仿真区中,按周期设置输入节点信号的初始值(周期长度可在菜单Time—GridSize中设置,如图19所示)。

设置初值的方法是:

按住鼠标左键,选中某节点信号的某个周期,从“波形编辑器”中选择适当的值,即可完成初始值的设定,如图19所示。

设定完毕,就可以单击运行仿真按钮(如图20所示)进行波形仿真,分析输入输出波形了。

仿真的结果如图21所示。

图16“NodeFinder”窗口界面

图17“SelectedNodes”窗口界面

图18波形文件编辑界面

图19波形文件周期长度的设定界面

图20波形文件输入节点信号初始值的设定界面

图21波形仿真结果界面

由于仿真时默认采用Timing(时序)模式,因此输出波形中会出现延时或毛刺现象。

要解决这个问题,可以在菜单Processing—SimulatorSettings中将mode改为Functional(功能)模式(如图23所示),重新仿真即可。

修改模式后,仿真结果如图24所示,延时和毛刺现象消失。

图23波形仿真模式设置界面

图24“Functional”模式下波形仿真结果界面

三)、器件的选择与引脚的锁定与下载

1、器件的选择

在管理窗口中选择Processing/CompilerSettings,点击Chips&Dvices,这时弹出如下窗口(本实验箱按图中进行选择)

2、输入、输出管脚配置:

点击工具栏的低层编辑和寻找节点,就会跳出低层编辑示意图,如图2-66所示。

该图的左边为输入、输出管脚以及寄存器的浏览器,在Filter框中选取不同的过滤器(如Pins:

all,Pins:

unassigned,Pins:

assigned等),点击Start按扭,在Nodesfound框中就会有不同的结果。

选取Pins:

unassigned点击Start按扭后,在Nodesfound框会列出所有目前尚未分配的输入、输出管脚名称。

用鼠标左键拖住该名称放到右面floorplan对应的I/O或全局输入管脚上即可。

拖放成功后再点击start按扭,Nodefound框的内容就会得到刷新。

按此方法可以逐一将对应的管脚分配完毕,再次点击Startcompiler就可以形成“counter.pof”等可以下载的文件。

 

(四)、器件的下载编程与硬件实现

实验箱电路板上的连线

用三位拨码开关代表译码器的输入A、B、C,分别与EPF1K100QC208-3芯片的管脚相连;用LED灯或另八位拨码开关来表示译码器的输出,将D0...D7对应的管脚分别与8只LED或拨码开关等相连(A-103,B-104,C-111,D0~D7:

161,162,163,164,166,167,168,169).

三、实验报告

1.总结用QuartusII开发系统对逻辑电路进行设计、仿真的操作步骤。

2.讨论用CPLD/FPGA开发系统进行逻辑电路设计的特点与优越性。

3.讨论在设计过程中遇到的问题、解决的过程以及收获体会。

实验二全加器设计、仿真与下载

一.实验目的

1.熟练掌握MAX+PLUSⅡ的使用。

2.掌握一位全加器的设计方法、学会用一位全加器组成四位全加器。

3.掌握CPLD/FPGA开发系统硬件电路的下载及测试。

4.学习模块化电路设计方法。

二.实验仪器设备

1.PC机一台

2.KHF-5CPLD/FPGA实验开发系统一套。

三.实验要求

1.预习组合电路中一位、四位全加器的设计方法。

2.预习CPLD/FPGA开发系统(硬件电路)中的开关及发光管的使用方法。

3.预习本次实验内容。

4.用图形编辑方法输入电路。

四.实验内容及操作步骤

1.设计一位全加器

图2-1一位全加器

(1)完成电路的输入,以及对引脚的命名等(参考电路如图2)。

(2)对一位全加器进行编译、仿真与下载。

(3)点击File菜单的CreateDefaultSymbol项,创建缺省模块。

2.利用一位全加器模块进行四位全加器的设计。

(1)创建一个新的项目,新建文件。

在新打开的图形编辑区双击左键,从EnterSymbol对话框中的用户目录(自创目录)下选择模块名。

(2)连接线路,并进行编译(如图6)。

(3)点击Assign菜单的Device项选择芯片。

(4)管脚分配(建议使用16个数据开关(SW1——SW16)观察,对应实验箱:

输入P103、P104、P111、P112、P113…P128,输出可用发光二极管P161(D4),P162(D5),P163,P164(D6),P166(D7),P167,P168,P169,P170,P172,P173,P174,P175,P176,P177,P179。

)。

(5)后编译,并进行下载。

(6)仿真并记录仿真波形。

(7)观察并记录实验结果。

图2-2四位全加器

五、用VHDL设计一位半加器,创建缺省模块,再用原件例化方式进行一位全加器的设计,最后设计为4位全加器。

六.实验报告

1.总结模块化电路设计的方法。

2.总结quartusⅡ进行电路设计的实质。

3.总结用quartusⅡ进行电路设计的一般步骤。

实验三基本组合逻辑电路设计

一实验目的

1掌握VHDL语言的基本结构及设计的输入方法。

2掌握VHDL语言的组合电路设计方法。

二几种常用的组合逻辑电路

(一)8-3优先编码器(参考P78例3-32)

实验原理

常用的编码器有:

4-2编码器、编码器、16-4编码器,下面我们用一个8-3编码器的设计来介绍编码器的设计方法。

8-3编码器如图3所示,其真值表如表3。

 

图3-18-3编码器

表3-18-3优先编码器真值表

输入

输出

EN

A

B

C

D

E

F

G

H

DOUT0

DOUT1

DOUT2

0

X

X

X

X

X

X

X

X

Z

Z

Z

1

1

X

X

X

X

X

X

X

0

0

0

1

0

1

X

X

X

X

X

X

1

0

0

1

0

0

1

X

X

X

X

X

0

1

0

1

0

0

0

1

X

X

X

X

1

1

0

1

0

0

0

0

1

X

X

X

0

0

1

1

0

0

0

0

0

1

X

X

1

0

1

1

0

0

0

0

0

0

1

X

0

1

1

1

0

0

0

0

0

0

0

1

1

1

1

实验步骤:

1编程实现设一个8-3优先编码器(可用if…elseif语句或条件信号赋值语句)。

2将编辑好的电路进行编译和仿真。

3输入信号接实验箱的拨码开关,输出信号接发光二极管。

改变拨码开关的状态,观察实验结果。

(二)多路数据选择器

实验原理

在VHDL语言中描述一个8选一的多路选择器的方法有多种,例如:

在一个进程中使if-then-else语句;在一个进程中使用case语句;使用withselect构造或使用结构VHDL。

推荐进程中使用case语句。

但无论使用哪一种描述方法,综合得到的结果是相同的。

8选1多路选择器结构图如图3-2所示。

(可参考教材P42-44例1-3)

图3-28选1多路选择器

实验内容:

设计并实现一个8选1多路数据选择器(可用case语句、条件信号赋值语句、选择信号赋值语句)。

实验步骤:

1编程实现设一个8选

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2