当前位置:文档之家› VHDL语言与EDA实验指导书

VHDL语言与EDA实验指导书

VHDL语言与EDA实验指导书
VHDL语言与EDA实验指导书

VHDL语言与EDA实验讲义

湖南人文科技学院通信与控制工程系田汉平编

第一章 GW48 EDA/SOPC 主系统使用说明

第一节 GW48教学实验系统原理与使用介绍

一、GW48系统使用注意事项 (用户必读!!!)

a :闲置不用GW48系统时,必须关闭电源,拔下电源插头!!!

b :在实验中,当选中某种模式后,要按一下右侧的复位键,以使系统进入该结构模式工作。

c :换目标芯片时要特别注意,不要插反或插错,也不要带电插拔,确信插对后才能开电源。其它接口都可带电插拔。

请特别注意,尽可能不要随意插拔适配板,及实验系统上的其他芯片。 d: 使用实验系统前,查阅系统的默认设置ppt 文件。 二、GW48系统主板结构与使用方法

以下将详述GW48系列SOPC/EDA 实验开发系统(GW48-PK2、GK 、CK )结构与使用方法,对于这3种型号的不同之处将给予单独指出。该系统的实验电路结构是可控的。即可通过控制接口键,使之改变连接方式以适应不同的实验需要。因而,从物理结构上看,实验板的电路结构是固定的,但其内部的信息流在主控器的控制下,电路结构将发生变化---重配置。这种“多任务重配置”设计方案的目的有3个:1、适应更多的实验与开发项目;2、适应更多的PLD 公司的器件;3、适应更多的不同封装的FPGA 和CPLD 器件。系统板面主要部件及其使用方法说明如下(请参看相应的实验板板面)。以下是对GW48系统主板功能块的注释。

ASDO

DATA0nCONFIG CONF_DONE

DCLK

GND

nCSO nCE VCCIO ByteBlast II

在线编程座

GND o o o o o

o

o o o o 在线编程座

ByteBlast(MV)

SEL1

SEL0GND

TDI

nSTA TMS

TDO TCK o o o o o

o

o o o o 主板右数第2、3列“目标板插座”信号相同

2.5V

3.3V 1.8V -12V +12V PIO79

PIO78

PIO75PIO74PIO73PIO72PIO71PIO70PIO69PIO68CON2CON1

PIO77

PIO76

PIO67PIO66PIO65PIO64PIO63PIO62PIO61PIO60o

o o o o o o o o o o

o o o o o o o o o SEL1SEL0o o o o o o o

o o o 目标板插座1

4039PIO24PIO22PIO20PIO18PIO16PIO14PIO12PIO10PIO8PIO6PIO4nSTA PIO0PIO2VCC

PIO25PIO23PIO21PIO19PIO7PIO17PIO15PIO13PIO11PIO9PIO5PIO3PIO1o o o o o o o o o o o o o o o

o o o o o o o o o o GND

TCK TDO TMS TDI o o o o o 目标板插座2

4039PIO27

PIO26

PIO29PIO31PIO33PIO35PIO37PIO39PIO41PIO43PIO45PIO47PIO49CLOCK0

CLOCK2GND

PIO28PIO30PIO32PIO34PIO36PIO38PIO40PIO42PIO44PIO46PIO48SPEAKER

CLOCK5

CLOCK9VCC o o o o o o o o o o o o o o o o

o o o o o o o o o o o o o o o o o o o o o o o o

附图1A GW48 EDA 系统电子设计二次开发信号图

(1) “模式选择键”:按动该键能使实验板产生12种不同的实验电路结构。这些结构如第二节的13 张实验电路结构图所示。例如选择了“NO.3”图,须按动系统板上此键,直至数码管“模式指示”数码管显示“3”,于是系统即进入了NO.3 图所示的实验电路结构。

(2) 适配板:这是一块插于主系统板上的目标芯片适配座。对于不同的目标芯片可配不同的适配座。可用的目标芯片包括目前世界上最大的六家FPGA/CPLD 厂商几乎所有CPLD 、FPGA 和所有ispPAC 等模拟EDA 器件。第三节的表中已列出多种芯片对系统板引脚的对应关系,以利在实验时经常查用。

(3) ByteBlasterMV 编程配置口:如果要进行独立电子系统开发、应用系统开发、电子设计竞赛等开发实践活动,首先应该将系统板上的目标芯片适配座拔下,用配置的10芯编程线将“ByteBlasterMV ”口和独立系统上适配板上的10芯口相接,进行在系统编程(如GWDVP-B 板),进行调试测试。“ByteBlasterMV ”口能对不同公司,不同封装的CPLD/FPGA 进行编程下载。编程的目标芯片和引脚连线可参考附图1A ,从而进行二次开发。

(4)ByteBlasterII 编程配置口:该口主要用于对Cyclone 系列AS 模式专用配置器件EPCS4和EPCS1编程。

(5) 混合工作电压源:系统不必通过切换即可为CPLD/FPGA 目标器件提供5V 、3.3V 、2.5V 、1.8V 和1.5V 工作电源,此电源位置可参考附图1。 (6)JP5编程模式选择跳线:(仅GW48-PK2型含此)。如果要对Cyclone 的配置芯片进行编程,应该将跳线接于“ByBtII ”端,在将标有“ByteBlasterII ”编程配置口同适配板上EPCS4/1的AS 模式下载口用10芯线连接起来,通过QuartusII 进行编程。当短路“Others ”端时,可对其它所有器件编程,端口信号参考附图1。

对5V器件,如10K10、10K20、7128S、1032、95108等,必须选“5.0V”。而对低于或等于3.3V的低压器件,如1K30、1K100、10K30E、20K300、Cyclone、7128B等一律选择“3.3V”一端。

(8)并行下载口:此接口通过下载线与微机的打印机口相连。来自PC机的下载控制信号和CPLD/FPGA的目标码将通过此口,完成对目标芯片的编程下载。计算机的并行口通信模式最好设置成“EPP”模式。

(9)键1~键8 :为实验信号控制键,此8个键受“多任务重配置”电路控制,它在每一张电路图中的功能及其与主系统的连接方式随模式选择键的选定的模式而变,使用中需参照第二节中的电路图。

(10)键9~键14 :(GW48—GK/PK2型含此键)此6个键不受“多任务重配置”电路控制,由于键信号速度慢,所以其键信号输入口是全开放的,各端口定义在插座“JP8”处,可通过手动节插线的方式来实用,键输出默认高电平。

注意,键1至键8是由“多任务重配置”电路结构控制的,所以键的输出信号没有抖动问题,不需要在目标芯片的电路设计中加入消抖动电路,这样,能简化设计,迅速入门。但设计者如果希望完成键的消抖动电路设计练习,必须使用键9至键14来实现。

(11)数码管1~8/发光管D1~D16 :受“多任务重配置”电路控制,它们的连线形式也需参照第二节的电路图。(12)“时钟频率选择”:位于主系统的右小侧,通过短路帽的不同接插方式,使目标芯片获得不同的时钟频率信号。

对于“CLOCK0”,同时只能插一个短路帽,以便选择输向“CLOCK0”的一种频率:信号频率范围:0.5Hz–50MHz。由于CLOCK0可选的频率比较多,所以比较适合于目标芯片对信号频率或周期测量等设计项目的信号输入端。右侧座分三个频率源组,它们分别对应三组时钟输入端:CLOCK2、CLOCK5、CLOCK9。例如,将三个短路帽分别插于对应座的2Hz、1024Hz 和12MHz,则CLOCK2、CLOCK5、CLOCK9分别获得上述三个信号频率。需要特别注意的是,每一组频率源及其对应时钟输入端,分别只能插一个短路帽。也就是说最多只能提供4个时钟频率输入FPGA:CLOCK0、CLOCK2、CLOCK5、CLOCK9。(13)扬声器:与目标芯片的“SPEAKER”端相接,通过此口可以进行奏乐或了解信号的频率,它与目标器件的具体引脚号,应该查阅附录第3节的表格。

(14)PS/2接口:通过此接口,可以将PC机的键盘和/或鼠标与GW48系统的目标芯片相连,从而完成PS/2通信与控制方面的接口实验,GW48-GK/PK2含另一PS/2接口,引脚连接情况参见实验电路结构 NO.5(附图7)。

(15)VGA视频接口:通过它可完成目标芯片对VGA显示器的控制。详细连接方式参考附图 7(对GW48-GK/PK2主系统),或附图13(GW48-CK主系统)。

(16) 单片机接口器件:它与目标板的连接方式也已标于主系统板上:连接方式可参见附图11。

注1、对于GW48-GK/PK2系统,实验板右侧有一开关,若向“TO_ FPGA”拨,将RS232通信口直接与FPGA相接;若向“TO_MCU”拨,则与89C51单片机的P30和P31端口相接。于是通过此开关可以进行不同的通信实验,详细连接方式可参见附图11。平时此开关应该向“TO_MCU”拨,这样可不影响FPGA的工作!

注2、GW48-EK系统上的用户单片机89C51的各引脚是独立的(时钟已接12MHz),没有和其他任何电路相连,实验时必须使用连接线连接,例如,若希望89C51通过实验板右侧的RS232口与PC机进行串行通信,必须将此单片机旁的40针座(此座上每一脚恰好与89C51的对应脚相接)上的P30、P31分别与右侧的TX30、RX30相接。

(17) RS-232串行通讯接口:此接口电路是为FPGA与PC通讯和SOPC调试准备的。或使PC机、单片机、FPGA/CPLD 三者实现双向通信。对于GW48-EK系统,其通信端口是与中间的双排插座上的TX30、RX31相连的。

详细连接方式参考附图11(对GW48-GK/PK2主系统),或附图13(对GW48-CK主系统)。

(18)“AOUT” D/A转换:利用此电路模块(实验板左下侧),可以完成FPGA/CPLD目标芯片与D/A转换器的接口实验或相应的开发。它们之间的连接方式可参阅附图7(实验电路结构 NO.5):D/A的模拟信号的输出接口是“AOUT”,示波器可挂接左下角的两个连接端。当使能拨码开关8:“滤波1”时,D/A的模拟输出将获得不同程度的滤波效果。

注意,进行D/A接口实验时,需打开系统上侧的+/-12V电源开关(实验结束后关上此电源!)。

(19)“AIN0”/“AIN1”:外界模拟信号可以分别通过系统板左下侧的两个输入端“AIN0”和“AIN1”进入A/D转换器ADC0809的输入通道IN0和IN1,ADC0809与目标芯片直接相连。通过适当设计,目标芯片可以完成对ADC0809的工作方式确定、输入端口选择、数据采集与处理等所有控制工作,并可通过系统板提供的译码显示电路,将测得的结果显示出来。此项实验首先需参阅第二节的“实验电路结构NO.5”有关0809与目标芯片的接口方式,同时了解系统板上的接插方法以及有关0809工作时序和引脚信号功能方面的资料。

注意:不用0809时,需将左下角的拨码开关的“A/D使能”和“转换结束”打为禁止:向上拨,以避免与其他电路冲突。 ADC0809 A/D转换实验接插方法(如,附图7,实验电路结构 NO.5图所示):

1.左下角拨码开关的“A/D使能”和“转换结束”拨为使能:向下拨,即将ENABLE(9)与PIO35相接;若向上拨则禁止,即则使ENABLE(9)←0,表示禁止0809工作,使它的所有输出端为高阻态。

2.左下角拨码开关的“转换结束”使能,则使EOC(7)←PIO36,由此可使FPGA对ADC0809的转换状态进行测控。

AIN1相连,但当AIN1插入外输入插头时,VR1将与IN1自动断开)。若利用VR1产生被测电压,则需使0809的第25脚置高电平,即选择IN1通道,参考“实验电路结构NO.5”。

(21) AIN0的特殊用法:系统板上设置了一个比较器电路,主要以LM311组成。若与D/A电路相结合,可以将目标器件设计成逐次比较型A/D变换器的控制器件参考“实验电路结构NO.5”。

(22)系统复位键:此键是系统板上负责监控的微处理器的复位控制键,同时也与接口单片机和LCD控制单片机的复位端相连。因此兼作单片机的复位键。

(23)下载控制开关:(仅GW48—GK/PK型含此开关)在系统板的左侧的开关。当需要对实验板上的目标芯片下载时必须将开关向上打(即“DLOAD”);而当向下打(LOCK)时,将关闭下载口,这时可以将下载并行线拔下而作它用(这时已经下载进FPGA的文件不会由于下载口线的电平变动而丢失);例如拔下的25芯下载线可以与其他适配板上的并行接口相接,以完成类似逻辑分析仪方面的并行通信实验。

(24) 跳线座SPS :短接“T_F”可以使用“在系统频率计”。频率输入端在主板右侧标有“频率计”处。模式选择为“A”。短接“PIO48”时,信号PIO48可用,如实验电路结构图NO.1中的PIO48。平时应该短路“PIO48”。

(25) 目标芯片万能适配座CON1/2 :在目标板的下方有两条80个插针插座(GW48-CK系统),其连接信号如附图1所示,此图为用户对此实验开发系统作二次开发提供了条件。

对于GW48-GK/PK2/EK系统,此适配座在原来的基础上增加了20个插针,功能大为增强。增加的20插针信号与目标芯片的连接方式可参考“实验电路结构NO.5”、附图11和第3节表格。GW48-EK系统中此20的个插针信号全开放。(26)左下拨码开关:(仅GK/PK2/EK型含此开关)拨码开关的详细用法可参考实验电路结构 NO.5图(附图7)。(27)上拨码开关:(仅GK/PK2型含此开关)是用来控制数码管作扫描显示用的。当要将8个数码管从原来的重配置可控状态下向扫描显示方式转换时,可以将此拨码开关全部向下拨,然后将左下侧的拨码开关的“DS8使能”向上拨。这时,由这8个数码管构成的扫描显示电路可附图12。

(28)ispPAC下载板:对于GW48-GK系统,其右上角有一块ispPAC模拟EDA器件下载板,可用于模拟EDA实验中对ispPAC10/20/80等器件编程下载用,详细方法请看光盘中:“模拟EDA实验演示”的POWER POINT。

(29)8X8数码点阵:(仅GW48-GK型含此)在右上角的模拟EDA器件下载板上还附有一块数码点阵显示块,是通用共阳方式,需要16根接插线和两根电源线连接。详细方法请看“实验演示”的POWER POINT。

(30)+/-12V电源开关:在实验板左上角。有指示灯。电源提供对象:1)与082、311及DAC0832等相关的实验;2)模拟信号发生源;3)GW48-DSP/DSP+适配板上的D/A及参考电源;此电源输出口可参见附图1。平时,此电源必须关闭!(31)智能逻辑笔:(仅GK/PK2型含此)逻辑信号由实验板左侧的“LOGIC PEN INPUT”输入。测试结果:

A)“高电平”:判定为大于3V的电压;亮第1个发光管; B)“低电平”:判定为小于1V的电压;亮第2个发光管。

C)“高阻态”:判定为输入阻抗大于100K欧姆的输出信号;亮第3个发光管。注意,此功能具有智能化;

D)“中电平”:判定为小于3V,大于1V的电压;亮第4个发光管。 E)“脉冲信号”:判定为存在脉冲信号时;亮所有的发光管。(注意,使用逻辑笔时,clock0/clock9上不要接50MHz,以免干扰)。

(30)模拟信号发生源:(GK/PK2型含此)信号源主要用于DSP/SOPC实验及A/D高速采样用信号源。使用方法如下: 1)打开+/-12V电源;2)用一插线将右下角的某一频率信号(如65536Hz)连向单片机上方插座“JP18”的INPUT 端;3)这时在“JP17”的OUTPUT端及信号挂钩“WAVE OUT”端同时输出模拟信号,可用示波器显示输出模拟信号(这时输出的频率也是65536Hz);4)实验系统右侧的电位器上方的3针座控制输出是否加入滤波:向左端短路加滤波电容;向右短路断开滤波电容;5)此电位器是调谐输出幅度的,应该将输出幅度控制在0-5V内。

(32)JP13选择VGA输出:(仅GW48-GK/PK2含此)。将“ENBL”短路,使VGA输出显示使能;将“HIBT”短路,使VGA输出显示禁止,这时可以将来自外部的VGA显示信号通过JP12座由VGA口输出。此功能留给SOPC开发。(33)FPGA与LCD连接方式:(仅PK2型含此)。由附图11的实验电路结构图COM可知,默认情况下,FPGA是通过89C51单片机控制LCD液晶显示的,但若FPGA中有Nios嵌入式系统,则能使FPGA直接控制LCD显示。方法是拔去此单片机(在右下侧),用连线将座JP22/JP21(LCD显示器引脚信号)各信号分别与座JP19/JP20(FPGA引脚信号)相连接即可。针对目标器件的型号,查表锁定引脚后,参考.\gwdvpb\H128X64液晶显示使用说明.doc 即可。

(34)JP23使用说明:(仅GW48-GK/PK2型含此)。单排座JP23有3个信号端,分别来自此单片机的I/O口。(35)使用举例:若模式键选中了“实验电路结构图NO.1”,这时的GW48系统板所具有的接口方式变为:FPGA/CPLD 端口PI/O31~28(即PI/O31、PI/O30、PI/O29、PI/O28)、PI/O27~24、PI/O23~20和PI/O19~16 ,共4组4位二进制I/O端口分别通过一个全译码型7段译码器输向系统板的7段数码管。这样,如果有数据从上述任一组四位输出,就能

低电平输出信号进入端口I/049和48 ;键控输出的高低电平由键前方的发光二极管D16和D15显示,高电平输出为亮。此外,可通过按动键4至键1,分别向FPGA/CPLD的PIO0~PIO15输入4位16进制码。每按一次键将递增1,其序列为1,2,…9,A,…F。注意,对于不同的目标芯片,其引脚的I/O标号数一般是同GW48系统接口电路的“PIO”标号是一致的(这就是引脚标准化),但具体引脚号是不同的,而在逻辑设计中引脚的锁定数必须是该芯片的具体的引脚号。具体对应情况需要参考第3节的引脚对照表。

第二节实验电路结构图

1.实验电路信号资源符号图说明

结合附图2-1,以下对实验电路结构图中出现的信号资源符号功能作出一些说明:

(1)附图2-1a是16进制7段全译码器,它有7位输出,分别接7段数码管的7个显示输入端:a、b、c、d、e、f 和g;它的输入端为D、C、B、A,D为最高位,A为最低位。例如,若所标输入的口线为PIO19~16,表示PIO19接D、18接C、17接B、16接A。

(2)附图2-1b是高低电平发生器,每按键一次,

输出电平由高到低、或由低到高变化一次,且输出为

高电平时,所按键对应的发光管变亮,反之不亮。

(3)附图2A-1c是16进制码(8421码)发生器,

附图2A 实验电路信号资源符号图

由对应的键控制输出4位2进制构成的1位16进制码,

数的范围是0000~1111,即^H0至^HF。每按键一次,输出递增1,输出进入目标芯片的4位2进制数将显示在该键对应的数码管上。

(4)直接与7段数码管相连的连接方式的设置是为了便于对7段显示译码器的设计学习。以图NO.2为例,如图所标“PIO46-PIO40接g、f、e、d、c、b、a”表示PIO46、PIO45..PIO40分别与数码管的7段输入g、f、e、d、c、b、a 相接。

(5)附图2-1d是单次脉冲发生器。每按一次键,输出一个脉冲,与此键对应的发光管也会闪亮一次,时间20ms。(6)附图2-1e是琴键式信号发生器,当按下键时,输出为高电平,对应的发光管发亮;当松开键时,输出为高电平,此键的功能可用于手动控制脉冲的宽度。具有琴键式信号发生器的实验结构图是NO.3。

2.各实验电路结构图特点与适用范围简述

(1)结构图NO.0:目标芯片的PIO19至PIO44共8组4位2进制码输出,经外部的7段译码器可显示于实验系统上的8个数码管。键1和键2可分别输出2个四位2进制码。一方面这四位码输入目标芯片的PIO11~PIO8和PIO15~PIO12,另一方面,可以观察发光管D1至D8来了解输入的数值。例如,当键1控制输入PIO11~PIO8的数为^HA 时,则发光管D4和D2亮,D3和D1灭。电路的键8至键3分别控制一个高低电平信号发生器向目标芯片的PIO7至PIO2输入高电平或低电平,扬声器接在“SPEAKER”上,具体接在哪一引脚要看目标芯片的类型,这需要查第3节的引脚对照表。如目标芯片为FLEX10K10,则扬声器接在“3”引脚上。目标芯片的时时钟输入未在图上标出,也需查阅第3节的引脚对照表。例如,目标芯片为XC95108,则输入此芯片的时钟信号有CLOCK0至CLOCK9,共4个可选的输入端,对应的引脚为65至80。具体的输入频率,可参考主板频率选择模块。此电路可用于设计频率计,周期计,计数器等等。

(2)结构图NO.1:适用于作加法器、减法器、比较器或乘法器等。例如,加法器设计,可利用键4和键3输入8 位加数;键2和键1输入8位被加数,输入的加数和被加数将显示于键对应的数码管4-1,相加的和显示于数码管6和5;可令键8控制此加法器的最低位进位。

(3)结构图NO.2:可用于作VGA视频接口逻辑设计,或使用数码管8至数码管5共4个数码管作7段显示译码方面的实验;而数码管4至数码管1,4个数码管可作译码后显示,键1和键2可输入高低电平。

(4)结构图NO.3:特点是有8个琴键式键控发生器,可用于设计八音琴等电路系统。也可以产生时间长度可控的单次脉冲。该电路结构同结构图NO.0一样,有8个译码输出显示的数码管,以显示目标芯片的32位输出信号,且8个发光管也能显示目标器件的8位输出信号。

(5)结构图NO.4:适合于设计移位寄存器、环形计数器等。电路特点是,当在所设计的逻辑中有串行2进制数从PIO10输出时,若利用键7作为串行输出时钟信号,则PIO10的串行输出数码可以在发光管D8至D1上逐位显示出来,这能很直观地看到串出的数值。

(6)结构图NO.5:此电路结构有较强的功能,主要用于目标器件与外界电路的接口设计实验。主要含以9大模块:

1.普通内部逻辑设计模块。在图的左下角。此模块与以上几个电路使用方法相同,例如同结构图NO.3的唯一区

2.RAM/ROM 接口。在图左上角,此接口对应于主板上,有1个32脚的DIP 座,在上面可以插RAM ,也可插ROM (仅GW48-GK/PK 系统包含此接口)例如:RAM :628128;ROM :27C020、27C040、29C040等。此32脚座的各引脚与目标器件的连接方式示于图上,是用标准引脚名标注的,如PIO48(第1脚)、PIO10(第2脚)、OE 控制为PIO62等等。注意,RAM/ROM 的使能CS1由主系统左边的拨码开关“1”控制。对于不同的RAM 或ROM ,其各引脚的功能定义不尽一致,即,不一定兼容,因此在使用前应该查阅相关的资料,但在结构图的上方也列出了部分引脚情况,以资参考。

3.VGA 视频接口。 4.两个PS/2键盘接口。注意,对于GW48-CK 系统,只有1个,连接方式是下方的PS/2口。 5.A/D 转换接口。 6.D/A 转换接口。 7.LM311接口。 8.单片机接口。 9.RS232通信接口。

注意,结构图NO.5中并不是所有电路模块都可以同时使用,这是因为各模块与目标器件的IO 接口有重合: 1.当使用RAM/ROM 时,数码管3、4、5、6、7、8共6各数码管不能同时使用,这时,如果有必要使用更多的显示,必须使用以下介绍的扫描显示电路。但RAM/ROM 可以与D/A 转换同时使用,尽管他们的数据口(PIO24、25、26、27、28、29、30、31)是重合的。这时如果希望将RAM/ROM 中的数据输入D/A 中,可设定目标器件的PIO24、25、26、27、28、29、30、31端口为高阻态;而如果希望用目标器件FPGA 直接控制D/A 器件,可通过拨码开关禁止RAM/ROM 数据口。

RAM/ROM 能与VGA 同时使用,但不能与PS/2同时使用,这时可以使用以下介绍的PS/2接口。

2 .A/D 不能与RAM/ROM 同时使用,由于他们有部分端口重合,若使用RAM/ROM ,必须禁止ADC0809,而当使用ADC0809时,应该禁止RAM/ROM ,如果希望A/D 和RAM/ROM 同时使用以实现诸如高速采样方面的功能,必须使用含有高速A/D 器件的适配板,如GWAK30+等型号的适配板。RAM/ROM 不能与311同时使用,因为在端口PIO37上,两者重合。

(7)结构图NO.6:此电路与NO.2相似,但增加了两个4位2进制数发生器,数值分别输入目标芯片的PIO7~PIO4和PIO3~PIO0。例如,当按键2时,输入PIO7~PIO4的数值将显示于对应的数码管2,以便了解输入的数值。

(8)结构图NO.7:此电路适合于设计时钟、定时器、秒表等。因为可利用键8和键5分别控制时钟的清零和设置时间的使能;利用键7、5和1进行时、分、秒的设置。

(9)结构图NO.8:此电路适用于作并进/串出或串进/并出等工作方式的寄存器、序列检测器、密码锁等逻辑设计。它的特点是利用键2、键1能序置8位2进制数,而键6能发出串行输入脉冲,每按键一次,即发一个单脉冲,则此8位序置数的高位在前,向PIO10串行输入一位,同时能从D8至D1的发光管上看到串形左移的数据,十分形象直观。 (10)结构图NO.9:若欲验证交通灯控制等类似的逻辑电路,可选此电路结构。

(11)当系统上的“模式指示”数码管显示“A ”时,系统将变成一台频率计,数码管8将显示“F ”,“数码6”至“数码1”显示频率值,最低位单位是Hz 。测频输入端为系统板右下侧的插座。 (13)实验电路结构图COM :附图11电路仅GW48-GK/PK2拥有,即以上所述的所有电路结构,包括“实验电路结构NO.0”至“实验电路结构NO.B ”共11套电路结构模式为GW48-GK/PK2两种系统共同拥有(兼容),把他们称为通用电路结构。即在原来的11套电路结构模式中的每一套结构图中增加附图11所示的“实验电路结构图COM ”。例如,在GW48-PK2系统中,当“模式键”选择“5”时,电路结构将进入附图7所示的实验电路结构图NO.5外,还应该加入“实验电路结构图COM ”。这样,在每一电路模式中就能比原来实现更多的实验项目。

实验电路结构图COM ”中各标准信号(PIOX )对应的器件的引脚名,必须查第三节的表。

实验电路结构图

CLOCK0CLOCK2CLOCK5CLOCK9目标芯片

F P

G A /C P L D HEX PIO2

PIO3PIO4PIO5PIO7PIO6D1

D2D3D4D5D6D7D8D16D15D14D13D12D11

数码1

数码2

数码3

数码4

数码5

数码6

数码7

数码8

NO.0

S P E A K E R

扬声器

实验电路结构图

译码器译码器译码器译码器译码器译码器译码器译码器

PIO15-PIO12

PIO11-PIO8

PIO7--PIO2HEX

键1

键2

键3

键4

键5

键6

键7

键8

PIO47-PIO44

PIO43-PIO40PIO39-PIO36PIO35-PIO32PIO31-PIO28PIO27-PIO24PIO23-PIO20PIO19-PIO16CLOCK9CLOCK5CLOCK2

CLOCK0

SPEAKER 扬声器

NO.1

PIO11-PIO8PIO15-PIO12PIO48

PIO49D15

D16HEX HEX PIO32

PIO33

PIO34

PIO35

PIO36

PIO37

PIO38

PIO39

D1D2D3D4D5D6D7D8实验电路结构图

译码器

译码器

译码器

译码器

FPGA/CPLD 目标芯片1

2345678PIO3-PIO0

PIO7-PIO4HEX

HEX 键1

键2键3键4键5键6键7键8PIO39-PIO32PIO31-PIO28

PIO27-PIO24PIO23-PIO20PIO19-PIO16

附图2 实验电路结构图NO.0 附图3 实验电路结构图NO.1

D+(PIO65)D-(PIO64)

GND

VCC

SLAVE

USB PIO65

PIO64O

O O O

选择开关

T O F P G A

T O M C U

复位接PC 机

串行通讯接口接口电路

2

35RS-232B4P27P26P25P24P23P22P21P20

PSEN ALE EA P07P06P05P04P03P02P01P00VCC A T 89C 51

4039383736353433323130292827262524222321

20

19181716151413121110987654321GND

X1X2PIO66

PIO67PIO77PIO76PIO79

PIO78P31P30RESET

PIO75

PIO74PIO73PIO72PIO71PIO70PIO69

PIO68LCD

液晶显示屏

VCC GND P22

P21P20P00P01P02P03P04P05P06P07P23P241

234567891011121314151617181920

附图11 实验电路结构图COM (GW48-PK2上液晶与单片机以及FPGA 的I/O 口的连接方式,Cyclone 和20K 系列器件通用。)

Pin140(PIO35)

Pin139(PIO34)Pin137(PIO32)Pin138(PIO33)Pin136(PIO31)Pin135(PIO30)Pin134(PIO29)Pin133(PIO28)Pin132(PIO27)Pin128(PIO26)Pin166(PIO45)

Pin165(PIO44)Pin164(PIO43)Pin163(PIO42)Pin162(PIO41)Pin161(PIO40)Pin160(PIO39)Pin159(PIO38)Pin158(PIO37)Pin141(PIO36)5510/5540

Pin144

Pin167(PIO46)

DACLK

模拟信号输出

超高速D /A

5651

B 口输出

AOUT (B )

D0

D1D2D3D4D5D6D7D8D9数据输入

Pin208

Pin207Pin228Pin194Pin227Pin193Pin214Pin213AIN

超高速A /D

ADCLK

数据输出

模拟信号输入

D0

D1D2D3D4

D5D6D7模拟信号输出

DACLK

超高速D /A

数据输入

5651

A 口输出

AOUT (A )D9D8D7D6D5D4D3D2D0

D1

附图13 SOPC GWAC6/12 板AD_DA 板接口原理图

CLOCK9

CLOCK5CLOCK2CLOCK0PIO48

PIO49D10D9

1

2345678NO.2

实验电路结构图

FPGA/CPLD

直接与7段显示器相接

PIO46-PIO40

PIO38-PIO32PIO30-PIO24PIO22-PIO16PIO46-PIO40 接 g, f, e, d, c, b, a

PIO38-PIO32 接 g, f, e, d, c, b, a

PIO30-PIO24 接 g, f, e, d, c, b, a 七段

PIO22-PIO16 接 g,f,e,d,c,b,a

PIO15-PIO12

PIO11-PIO8PIO7-PIO4PIO3-PIO0目标芯片

键1

键2键3键4键5键6键7键8译码器

译码器译码器译码器CLOCK9

CLOCK5CLOCK2CLOCK0实验电路结构图

NO.3

译码器

译码器译码器译码器译码器译码器译码器译码器D9

D16D15D14D13D12D11D10

D8

D7

D6

D5

D4

D3

D2

D1

PIO8

PIO9PIO10PIO11PIO12PIO13PIO14PIO15S P E A K E R

扬声器

1

2

3

4

5

6

7

8

目标芯片FPGA/CPLD PIO0

PIO1PIO2PIO3PIO4PIO5PIO6PIO7键1

键2

键3

键4

键5

键6

键7

键8

PIO15-PIO8PIO47-PIO44

PIO43-PIO40PIO39-PIO36PIO35-PIO32PIO31-PIO28PIO27-PIO24PIO23-PIO20PIO19-PIO16

CLOCK9

CLOCK5

CLOCK2CLOCK0实验电路结构图

NO.4

目标芯片FPGA/CPLD 12345678D16D15D14

PIO3-PIO0

PIO7-PIO4PIO15-PIO12HEX

HEX HEX 单脉冲单脉冲键1

键2

键3

键4

键5

键6

键7

键8

PIO11

PIO9PIO8PIO10PIO47-PIO44

PIO43-PIO40PIO39-PIO36PIO35-PIO32串行 输出显示

串行输出

CLEAR

CLOCK

LOAD

时钟计数器

D1

D2D3D4D5D6D7D8译码器

译码器译码器译码器CLOCK9CLOCK5CLOCK2CLOCK0D16D15D14D13D12D11D9D8

PIO47

D7PIO46

D6PIO45

D5PIO44

D4PIO43

D3PIO42

D2PIO41

PIO40

D1NO.7

实验电路结构图

S P E A K E R

扬声器

FPGA/CPLD 目标芯片1

2345678PIO0

PIO2

PIO3

PIO4

PIO5

PIO6

PIO7单脉冲

单脉冲

单脉冲

键1

键2

键3

键4

键5

键6

键7

键8

PIO47-PIO40PIO39-PIO36

PIO35-PIO32PIO31-PIO28PIO27-PIO24PIO23-PIO20PIO19-PIO16译码器译码器译码器译码器译码器

译码器

附图6 实验电路结构图NO.4 附图9 实验电路结构图NO.7

CLOCK9

CLOCK5CLOCK2CLOCK0

FPGA/CPLD PIO10

串行输入脉冲

D16

D15

D14

87654321NO.8

实验电路结构图

SPEAKER

扬声器

目标芯片

PIO39-PIO36PIO43-PIO40PIO47-PIO44

预置串行输入数

D C B A D C B A D1D2D3D4D5D6D7D8译码器

译码器译码器单脉冲HEX

HEX

HEX

单脉冲

PIO9

PIO11PIO8PIO15-12PIO7-4PIO3-0

HEX

HEX

键1

键2

键3

键4

键5

键6

键7

键8

CLOCK9

CLOCK5CLOCK2CLOCK0NO.9

实验电路结构图

目标芯片FPGA/CPLD S P E A K E R

扬声器

8

7

6

5

4

3

2

1

D1D2D3D4D5D6D7D8

D16D15D14D13D12D11D10D9

PIO47-PIO44

PIO43-PIO40PIO39-PIO36PIO35-PIO32PIO31-PIO28PIO27-PIO24PIO23-PIO20PIO19-PIO16PIO15-PIO8PIO15

PIO14

PIO13

PIO12

PIO11

PIO10

PIO9

PIO8

译码器译码器译码器译码器译码器译码器译码器

译码器单脉冲

单脉冲单脉冲单脉冲单脉冲单脉冲单脉冲单脉冲PIO0

PIO1PIO2PIO3PIO4PIO5PIO6PIO7键1

键2

键3

键4

键5

键6

键7

键8

附图10 实验电路结构图NO.8 附图11 实验电路结构图NO.9

CLOCK9

CLOCK5

CLOCK2

CLOCK0

PIO8

D11D12PIO9

D13

PIO10D14

PIO11D15

PIO12PIO13D16

D6

D5

D4

D3

D2

D1

D7

D8

)(1

2345678实验电路结构图

NO.6

目标芯片

FPGA/CPLD 扬声器

S P E A K E R

PIO3-PIO0

PIO7-PIO4HEX

HEX PIO16

PIO13-PIO8PIO23

PIO22PIO21

PIO20

PIO19

PIO18

PIO17直接与7段显示器相接PIO46-PIO40

PIO38-PIO32

PIO30-PIO24PIO22-PIO16PIO46-PIO40 接 g, f, e, d, c, b, a

PIO38-PIO32 接 g, f, e, d, c, b, a

PIO30-PIO24 接 g, f, e, d, c, b, a 七段

PIO22-PIO16 接 g,f,e,d,c,b,a

键1

键2

键3

键4

键5

键6

键7

键8

附图8 实验电路结构图NO.6 附图12 GW48-PK2上扫描显示模式时的连接方

式: 8数码管扫描式显示,输入信号高电平有效

CLOCK0CLOCK2CLOCK5CLOCK9

目标芯片

F P

G A /C P L D

拨码开关

滤波1

A /D 使能

比较器

5t h 使能

R O M 使能

ON

8

7

6

5

4

3

2

1

转换结束

D S 8使能

拨码1:ROM/RAM 使能,即它们的CS1接地拨码8:DAC0832输出滤波使能

拨码7:ADC0809使能,默认关闭,见左图拨码6:ADC0809转换结束使能,见左图拨码5:应用LM311使能,见下图拨码4:8数码管显示开关,默认打开拨码2:默认关闭 向上拨,由厂家通知升级VS (PIO65)

HS (PIO64)B (PIO63)G (PIO61)R (PIO60)

10

54876

321 视频接口VGA J6R78 200

R77 200R76 200

14

13PIO77

PIO76PS/2下接口

PS/2上接口

VCC

GND

PIO45

PIO46513

J7

4VCC

GND

513

4PIN31->A15 )

PIN29->WE ,29C040(PIN31->WE,PIN1->A18,

P29->A14)

27010(PIN30->VCC,PIN3->A15,

PIN29->A14)27020(PIN30->A17,PIN3->A15,PIN3->A15,PIN29->A14)

27040(PIN31->A18,PIN30->A17,

PIN30->A17,PIN3->A15,PIN29->A14)

注意,PIO62 同时是键11的信号线

PIO62RAM/ROM 使能

A I N 1VCC

10K

VR1

拨码7拨码6

A I N 0P I O 8

(23)(24)1216272610C L O C K 750K H Z A 021+5V r e f (-)r e f (+)I N -1I N -06

9

22

25

7

17

1415818192021E U 1A D C 0809P I O 16

P I O 17P I O 18P I O 19P I O 20P I O 21P I O 22P I O 23P I O 32

P I O 33P I O 35P I O 34

m s b 2-12-22-32-42-52-62-7l s b 2-8E O C A D D -A A D D -B A D D -C A L E E N A B L E S T A R T

(拨码1:“ROM 使能 ON”即将CS1接地)

628128(PIN30->VCC,PIN3->A14,

(拨码8:“滤波1 ON”即连接滤波电容)

滤波1

103

连接PIO37与COMP )

(拨码5:“比较器ON”即7.2K PIO31

PIO29PIO30PIO28PIO27PIO26PIO25PIO24131415164D7D6D5D4D35D26D1D07PIO37+5

51pF C27

COMP

LM311

VCC

10K

-12

+12

4

8

23

TL082/1

AIN0

AOUT

5.1K

R72765

TL082/2

8

4

1

+12

-12

COMM EU2

DAC0832118171032WR1

FB 93

211IOUT1

IOUT2

12/CS WR2XFER A GND D GND VREF 8VCC

20

VCC

D1PIO8

D2D3D4D5D6D7D8PIO9

PIO10

PIO11

PIO12

PIO15

PIO14

PIO13

实验电路结构图

NO.5

S P E A K E R

扬声器

1

2

3

45678D16D15D14D13D12D11D10D9

PIO47-PIO44

PIO43-PIO40PIO39-PIO36PIO35-PIO32PIO31-PIO28PIO27-PIO24PIO23-PIO20PIO19-PIO16译码器译码器译码器译码器译码器译码器译码器

译码器PIO15-PIO8PIO0

PIO1PIO2PIO3PIO4PIO5PIO6PIO7键1

键2

键3

键4

键5

键6

键7

键8

GND

VCC

PIO49RAM/ROM

A18/A19A18/A15/WE

PIO26PIO25PIO24PIO32PIO33PIO34PIO35PIO36PIO37PIO38PIO39PIO14PIO47PIO10PIO48PIO9PIO46PIO45PIO11PIO12PIO13PIO15

PIO31PIO30PIO29PIO28PIO27

32313029282726252423222120191817

16

151413121110987654321VCC GND

27080

27040270202701027512272562764628128622566264VCC

A17/VCC WR/A14

A13A8A9A11OE A10CS1D7D6D5D4D3

GND

D2D1D0A0A1A2A3A4A5A6A7A12A14(A15)A16

第三节 GW48CK/GK/EK/PK2 系统万能接插口与结构图信号/与芯片引脚对照表

第三章 GW48-PK 系统LCD 液晶屏使用方法

第一节 GDM12864A LCM 图形液晶显示模块的电路特性

一、GDM12864A 的电特性

配置于GW48-PK 系统的LCD GDM12864A 是带显示存储器的图形液晶显示列驱动控制器。它的特点是内置64×64位的显示存储器,显示屏上各像素点的显示状态与显示存储器的各位数据—一对应,显示存储器的数据直接作为图形显示的驱动信号。显示数据为“1”,相应的像素点显示;显示数据为“0“,相应的像素点就不显示。同时GDM12864A 配备了一套显示存储器的管理电路和与计算机接口电路,允许计算机直接访问显示存储器,也就是说GDM12864A 可以直接与计算机的总线连接。 GDM12864A 的主要特性为: ·拥有64×64位(512字节)的显示存储器,其数据直接作为显示驱动信号。

·8位并行数据接口,适配M6800系列时序。 ·64路列驱动输出。 ·简单的操作指令 显示开关设置,显示起始行设置,地址指针设置和数据读/写等指令。

·低功耗,在显示期间功耗最大为2mW 。

·宽电压工作 Vcc=2.7V ~5.5V Vee=OV ~-10V

二、模块特性

GDM12864A

GDM12864A G D M 12864A L C M

三、 GDM12864A 的操作时序图

第二节 GDM12864A 图形液晶显示模块的软件特性

了解GDM12864A 图形液晶显示模块的电路特性后,要使用GDM12864A图形液晶显示模块还需要熟悉其软件特性,即GDM12864A 的指令功能,才能很好地应用图形液晶显示模块。GDM12864A 的指令功能非常简单,指令一览表如下表所示。

写操作指令。下面详细解释各个指令的功能:HD61202操作流程图●

节,其中仅有3位有效位,它们是:

BUSY 表示当前 GDM12864A 接口控制电路运行状态。BUSY=1表示

GDM12864A 正在处理计算机发来的指令或数据。此时接口电路被封锁,不能接受除

读状态字以外的任何操作。BUSY=0表示 GDM12864A 接口控制电路已处于“准备好”

状态,等待计算机的访问。

ON/OFF 表示当前的显示状态。ON/OFF=l表示关显示状态,ON/OFF=0表示

开显示状态。

RESET 表示当前 GDM12864A 的工作状态,即反映RST端的电平状态。当RST

为低电平状态时,GDM12864A 处于复位工作状态,RESET=1。当RST为高电平状态时,

GDM12864A 为正常工作状态,RESET=0。

在指令设置和数据读写时要注意状态字中的BUSY标志。只有在BUSY=0时,计

要读出状态字判断BUSY 是否为“0”。若不为“0”,则计算机需要等待,直至 BUSY=0为止。

● 显

D 位

为显示开/关的控制位。当D=1为开显示设置,显示数据锁存器正常工作,显示屏上呈现所需的显示效果。此时在状态字中 ON /OFF=0。当 D=0为关显示设置,显示数据锁存器被置零,显示屏呈不显示状态,但显示存储器并没有被破坏,在状态字中 ON /OFF =1。

● LO 为显示起始行的地址,取值在O ~3FH (

1~64行)范围内,它规定了显示屏上最顶一行所对应的显示存储器的行地址。如果定时间隔地,等间距地修改(如加一或减一)显示起始行寄存器的内容,则显示屏将呈现显示内容向上或向下平滑滚动的显示效果。

P2~PO 就是要确定当前所要选择的页面地址,取值范围为0~7H ,代表第l ~8页。该指令规定了以后的读/写操作将在哪一个页面上进行。

随后的一次读或写数据将在这个单元上进行。Y 地址计数器具有自动加一功能,在每一次读/写数据后它将自动加一,所以在连续进行读/写数据时,Y 地址计数器不必每次都设置一次。

页面地址的设置和列地址的设置将显示存储器单元唯一地确定下来,为后来的显示数据的读/写作了地址的选通。

第三节 GDM12864A 图形液晶显示模块的接口技术

由于 GDM12864A 组成的驱动控制系统的接口时序适配 M6800系列的读/写时序,所以在与Intel8080时序的计算

机连接时需要有时序的转换。现以国内常用的8051系列单片机8031为例,说明GDM12864A 模块接口技术。

由于 GDM12864A 组成的驱动控制系统的接口时序适配 M6800系列的读/写时序,所以在与Intel8080时序的计算机连接时需要有时序的转换。现以国内常用的8051系列单片机8031为例,说明GDM12864A模块接口技术。

内置GDM12864A 图形液晶显示模块与计算机的连接方式有两种,一种为直接访问方式,一种为间接控制方式。

一、直接访问方式

直接访问方式就是将液晶显示模块的接口作为存储器或 I/O设备直接挂在计算机总线上,计算机以访问存储器或

I/O设备的方式操作液晶显示模块的工作。直接访问方式的接口实用电路如下图所示。在图中,计算机8031通过高位地址A11控制CS2;A10控制CS1;以选

直接访问方式的实用电路图

通液晶显示屏上各区的控制器GDM12864A ;同时 8031用地址A9作为R/W信号控制数据总线的数据流向;用地址A8作为D/I信号控制寄存器的选择;E信号由8031的读信号RD和写信号WR合成产生。从而实现计算机对内置GDM12864A 图形液晶显示模块的电路连接。电位器用于显示对比度的调节。

二、间接控制方式

间接控制方式是计算机通过

自身的或系统中的并行接口与液晶显示模块连接,如 8031的P1和P3口, 8255或Z80-PIO等并行接口芯片以及像74LS373类的锁存器等。

计算机通过对这些接口的操作,

以达到对液晶显示模块的控制。这

种方式的特点是电路简单,控制时

序由软件实现,可以实现高速计算

机与液晶显示模块的接口。实用电

路图如下图所示。在图中电路中以

8031的P1口作为数据口,P2.4为

CSA, P2.3为CSB, P2.2为D/I,

P2.1为R/W和P2.0为E等信号。

电位器用于显示对比度的调节。

间接控制方式的实用电路

GDM12864A驱动子程序如下:

CSA EQU P2.4 ;片选CSA CSB EQU P2.3 ;片选CSB

D/I EQU P2.2 ;寄存器选择信号

R/W EQU P2.1 ;读/写选择信号 E EQU P2.0 ;使能信号

1.左区驱动子程序(GDM12864A的左区)

(1)写指令代码子程序

PRMO:CLR CS2 ;片选设置为“01” SETB CS1 ;

CLR D/I ;D/I=0

SETB R/W ;R/W=1

PRM01: MOV P1,#OFFH ;P1口置”1”

SETB E ;E=1

CLR E ;E=0

JB ACC.7,PRM01 ;判“忙”标志为“0”否,否再读

CLR R/W ;R/W=0

MOV P1,COM ;写指令代码

SETB E ;E=1

CLR E ;E=0

RET

(2)写显示数据子程序

PRM1: CLR CS2 ;片选设置为“01”

SETB CS1 ;

CLR D/I ;D/I=0

SETB R/W ;R/W=1

PRMll: MOV P0,#OFFH ;P1口置“1”

SETB E ;E=1

MOV A,P0 ;读状态字

CLR E ;E=0

JB ACC.7,PRM11 ;判“忙”标志为“0”否,否再读 SETB D/I ;D/I=1

CLR R/W ;R/W=0

MOV P0,DAT ;写数据

SETB E ;E=1

CLR E ;E=0

RET

(3)读显示数据子程序

PRM2:CLR CS2 ;片选设置为“01”

SETB CS1 ;

CLR D/I ;D/I=0

SETB R/W ;R/W=1

PRM21: MOV P0,#OFFH ;P1口置“1”

SETB E ;E=1

MOV A,P0 ;读状态字

CLR E ;E=0

JB ACC.7,PRM21 ;判“忙”标志为“0”否,否再读

SETB D/I ;D/I=1

MOV P0,#OFFH ;P1口置“0”

SETB E ;E=1

MOV DAT,P0 ;读数据

CLR E ;E=0

RET

3.右区驱动子程序(GDM12864A的右区)

(l)写指令代码子程序(右)

PRRO: SETB CS2 ;片选设置为“10”

CLR CS1 ;

CLR D/I ;D/I=0

SETB R/W ;R/W=1

PRR01: MOV P0,#OFFH ;P1口置“1”

SETB E ;E=1

MOV A,P0 ;读状态字

CLR E ;E=0

JB ACC.7,PRR01 ;判“忙”标志为“0”否,否再读

CLR R/W ;R/W=0

MOV P0,COM ;写指令代码

SETB E ;E=1

CLR E ;E=0

RET

(2)写显示数据子程序(右)

PRR1:SETB CS2 ;片选设置为“10”

CLR CS1 ;

CLR D/I ;D/I=0

PRRll: MOV P0,#OFFH ;P1口置“1”

SETB E ;E=1

MOV A,P0 ;读状态字

CLR E ;E=0

JB ACC.7,PRRll ;判“忙”标志为“0”否,否再读

SETB D/I ;D/I=1

CLR R/W ;R/W=0

MOV P0,DAT ;写数据

SETB E ;E=1

CLR E ;E=0

RET

(3)读显示数据子程序(右)

PRR2:SETB CS2 ;片选设置为“10”

CLR CS1 ;

CLR D/I ;D/I=0

SETB R/W ;R/W=1

PRR21: MOV P0,#OFFH ;P1口置“l”

SETB E ;E=1

MOV A,P0 ;读状态字

CLR E ;E=0

JB ACC.7,PRR21 ;判“忙”标志为“0”否,否再读

SETB D/I ;D/I=1

MOV P0,#OFFH ;P1口置“0”

SETB E ;E=1

MOV DAT,P1 ;读数据

CLR E ;E=0

RET

在GDM12864A的应用时,显示屏被分为左右两个区,驱动子程序分别为上述的左区和右区的驱动子程序。

例中文字符写入子程序

汉字显示是国内应用图形液晶显示模块的目的之一。由于GDM12864A 显示存储器的特性,所以不能将计算机内的汉字库提出直接使用,需要将其旋转90度后再写入。这里使用提取汉字软件PICKHZB.EXE,将所采的汉字从计算机内汉字库提取并旋转90度后生成专用的用户字库。其生成字库的格式是按列排列,每两个字节为一列,一个汉字占32字节。程序清单如下:

CS1 EQU P2.3H ;端口定义

CS2 EQU P2.4H

DI EQU P2.2H

RW EQU P2.1H

E EQU P2.0H

X EQU 20H

Y EQU 21H

ZC EQU 22H

LFT EQU 7FH

ORG 0H

AJMP START

ORG 30H

START: MOV 20H,#3EH ;关显示设置

ACALL WI

INC 20H ;开显示设置

ACALL WI

MOV 20H,#0C0H ;设置显示起始行为第一行

ACALL WI

MOV X,#0 ;设置X为第1页

MOV Y,#0 ;列计数器Y=0

CLR LFT ;LCD屏幕(左)

MOV DPTR,#HANG ;杭

ACALL HZ_1

MOV Y,#1

MOV DPTR,#ZHOU ;州

ACALL HZ_1

MOV DPTR,#KANG ;康

ACALL HZ_1

MOV Y,#3

MOV DPTR,#XIN ;芯

ACALL HZ_1

MOV Y,#0 ;列计数器Y=0

SETB LFT ;LCD屏幕(右)

MOV DPTR,#DIAN ;电

ACALL HZ_1

MOV Y,#1

MOV DPTR,#ZI ;子

ACALL HZ_1

MOV Y,#2

MOV DPTR,#GONG ;公

ACALL HZ_1

MOV Y,#3

MOV DPTR,#SI ;司

ACALL HZ_1

SJMP $

;以下程序显示一个汉字

HZ_1: MOV ZC,#0

MOV A,#0B8H ;X addr页面地址暂存器设置

ACALL HZ_3

MOV ZC,#1

MOV A,#0B9H

HZ_3: ADD A,X ;

MOV 20H,A

ACALL WI

MOV A,Y

SWAP A

ADD A,#40H ;设置列计数器Y

MOV 20H,A

ACALL WI

HZ_0: MOV R2,#16 ;取汉字字模

HZ_2: MOV A,ZC

MOVC A,@A+DPTR

MOV 20H,A

MOV A,ZC

ADD A,#2

MOV ZC,A

JB LFT,HZ_5

ACALL WD1

SJMP HZ_6

HZ_5: ACALL WD2

HZ_6: DJNZ R2,HZ_2

RET

RDY:CLR DI ;读状态标志

CLR RW

SETB E

MOV A,P0 ;读LCD状态

CLR E

JB ACC.7,RDY ;检测BUSY位

RET

WI: SETB CS1 ;写控制指令

SETB CS2

LCALL RDY ;检测BUSY位

CLR DI

CLR RW

MOV P0,20H ;向LCD写数据

SETB E ;使能信号E=1

CLR CS1

CLR CS2

RET

WD1: SETB CS1 ;写显示数据(左)

LCALL RDY ;检测BUSY位

SETB DI

CLR RW

MOV P0,20H ;输出数据

SETB E

CLR E

CLR CS1

RET

WD2: SETB CS2 ;写显示数据(右)

LCALL RDY

SETB DI

CLR RW

MOV P0,20H ;输出数据

SETB E ;使能信号E=1

CLR E ;使能信号E=0

CLR CS2

RET

;汉字点阵“杭州康芯电子有限公司”

hang: DB 08H,04H,10H,03H,0D0H,00H,0FFH,0FFH

DB 90H,80H,10H,41H,08H,20H,0C8H,1FH

DB 49H,00H,4EH,00H,48H,00H,0E8H,3FH

DB 4CH,40H,08H,40H,00H,70H,00H,00H ZHOU: DB 80H,00H,70H,40H,00H,30H,0FFH,0FH

DB 00H,00H,10H,00H,60H,00H,00H,00H

DB 0FEH,3FH,00H,00H,10H,00H,60H,00H

DB 00H,00H,0FFH,0FFH,00H,00H,00H,00H KANG: DB 00H,40H,00H,30H,0FCH,0FH,44H,40H

DB 54H,23H,54H,15H,54H,49H,55H,18H

DB 0FEH,7FH,54H,05H,54H,09H,54H,11H

DB 0F4H,29H,46H,64H,44H,20H,00H,00H XIN: DB 04H,08H,04H,07H,04H,00H,04H,3FH

DB 1FH,40H,04H,40H,44H,40H,84H,40H

DB 04H,43H,04H,40H,1FH,40H,04H,40H

DB 04H,70H,06H,01H,04H,0EH,00H,00H DIAN: DB 00H,00H,0F8H,07H,48H,02H,48H,02H

DB 48H,02H,48H,02H,0FFH,3FH,48H,42H

DB 48H,42H,48H,42H,48H,42H,0FCH,47H

DB 08H,40H,00H,70H,00H,00H,00H,00H

ZI: DB 80H,00H,80H,00H,82H,00H,82H,00H

DB 82H,00H,82H,40H,82H,80H,0E2H,7FH

DB 0A2H,00H,92H,00H,8AH,00H,86H,00H

DB 80H,00H,0C0H,00H,80H,00H,00H,00H YOU: DB 04H,04H,04H,02H,04H,01H,84H,00H

DB 0E4H,0FFH,3CH,09H,27H,09H,24H,09H

DB 42H,09H,42H,49H,24H,89H,0F4H,7FH

DB 42H,00H,06H,00H,04H,00H,00H,00H XIAN: DB 00H,00H,7FH,0FFH,02H,08H,22H,10H

DB 0DAH,08H,06H,07H,00H,00H,0FEH,0FFH

DB 92H,24H,92H,42H,92H,42H,92H,14H

DB 0FFH,22H,02H,61H,00H,20H,00H,00H GONG: DB 00H,01H,00H,01H,80H,00H,40H,30H

DB 30H,28H,0CH,42H,00H,23H,0C0H,20H

DB 06H,20H,18H,28H,20H,30H,40H,60H

DB 80H,00H,80H,01H,80H,00H,00H,00H

SI: DB 10H,00H,10H,00H,92H,3FH,92H,10H

DB 92H,10H,92H,10H,92H,10H,92H,10H

DB 0FFH,7FH,02H,00H,00H,00H,00H,00H

实验一二选一数据选择器的设计

一、实验目的

1、熟悉Quartus II的VHDL文本设计流程全过程。

2、熟悉EDA/SOPC实验开发系统的使用方法。

3、学习简单组合电路的设计、仿真和硬件测试方法。

二、实验设备与器件

1、计算机1台

2、EDA/SOPC实验开发系统GW48-PK2 1套

3、Quartus II6.0开发软件一套

三、实验内容

1、写出二选一数据选择器的VHDL程序。

2、利用Quartus II完成2选1数据选择器的文本编辑输入、新建工程、编译前设置和仿真等步骤,给出仿真波形,并在实验系统上进行硬件测试,验证本次设计的功能是否正确。

3、根据实验任务写出实验报告。

四、实验报告

应写出实验目的、实验仪器用具、详细实验过程、二选一数据选择器的VHDL程序、仿真波形图及其分析报告、实验箱工作模式、FPGA引脚锁定方法,并记录观察到的现象,判断实验结果是否正确。

五、预习要求

1、复习教材有关内容,理解二选一数据选择器的工作原理,各端口的功能,熟悉Quartus II的VHDL 文本设计流程全过程。

2、预习实验指导书关于EDA/SOPC实验开发系统的使用方法及注意事项。学会电路模式的正确选择,引脚锁定的查表方法。

3、写出预习实验报告。要求写出目的、实验仪器用具、二选一数据选择器的VHDL程序,各端口

VHDL实验报告

《创新实验》实验报告 —基于VHDL的编程和硬件实现

一、实验目的 1.熟悉和掌握硬件描述语言VHDL的基本语法及编写; 2.掌握软件Xilinx ISE 10.1的使用; 3.熟悉SDZ-6电子技术实验箱的使用; 4.了解节拍脉冲发生器等基本电路的实现; 5.了解八位二进制计数器的功能与设计; 6.学习键盘和七段数码管显示的控制和设计。 二、实验内容 1.Xilinx ISE 10.1软件的使用; 2.节拍脉冲发生器等基本电路的实现; 3.八位二进制计数器的实现 4.键盘扫描及显示的实现 三、实验器材 1、PC机 2、SDZ-6电子技术实验箱 3、正负5V电源 4、I/O接口线 四、软件的使用 在安装Xilinx10.1软件时,需要一个ID号,其实这个ID号是可以重复使用的,几个同学在官网注册后就可以共享ID号了。 安装完成之后就可以使用这个软件编写相应的VHDL的程序。 1.新建工程 File—>New Project 弹出下面的对话框 输入工程名后单击Next。然后根据本实验的实验箱进行以下设置。

以后的步骤一般都是单击Next(有些资料上会介绍有些这些步骤的具体功能,但对于本实验不必用到),最后单击Finish,完成新建一个工程。在窗口的左边会出现刚刚新建的工程,如下: 2.新建一个VHDL的源文件。 在上图中,右击工程选择New Source ,弹出如下对话框。

在对画框的左边选择VHDL Module,输入文件的名字(改名字最好是你定义的实体的名字)。单击Next。出现下面的对话框。 该对话框主要是对外部端口的编辑。可以直接跳过,即单击Next,在源文件上编辑端口。然后在接下来的对话框中单击Finish。完成建立一个源文件。窗口右边就会出现刚才编辑的源文件。 3.编写和编译代码 将事先编好的代码复制到源文件里,然后保存文件。 选中左边的文件名,在窗体的左边出现如下编辑文档内容。

EDA技术与VHDL程序设计基础教程习题答案

EDA技术与VHDL程序设计基础教程习题答案 第1章EDA习题答案 1.8.1填空 1.EDA的英文全称是Electronic Design Automation 2.EDA技术经历了计算机辅助设计CAD阶段、计算机辅助工程设计CAE阶段、现代电子系统设计自动化EDA阶段三个发展阶段 3. EDA技术的应用可概括为PCB设计、ASIC设计、CPLD/FPGA设计三个方向 4.目前比较流行的主流厂家的EDA软件有Quartus II、ISE、ModelSim、ispLEVER 5.常用的设计输入方式有原理图输入、文本输入、状态机输入 6.常用的硬件描述语言有VHDL、V erilog 7.逻辑综合后生成的网表文件为EDIF 8.布局布线主要完成将综合器生成的网表文件转换成所需的下载文件 9.时序仿真较功能仿真多考虑了器件的物理模型参数 10.常用的第三方EDA工具软件有Synplify/Synplify Pro、Leonardo Spectrum 1.8.2选择 1.EDA技术发展历程的正确描述为(A) A CAD->CAE->EDA B EDA->CAD->CAE C EDA->CAE->CAD D CAE->CAD->EDA 2.Altera的第四代EDA集成开发环境为(C) A Modelsim B MUX+Plus II C Quartus II D ISE 3.下列EDA工具中,支持状态图输入方式的是(B) A Quartus II B ISE C ispDesignEXPERT

D Syplify Pro 4.下列几种仿真中考虑了物理模型参数的仿真是(A) A时序仿真 B 功能仿真 C 行为仿真 D 逻辑仿真 5.下列描述EDA工程设计流程正确的是(C) A输入->综合->布线->下载->仿真 B布线->仿真->下载->输入->综合 C输入->综合->布线->仿真->下载 D输入->仿真->综合->布线->下载 6.下列编程语言中不属于硬件描述语言的是(D) A VHDL B V erilog C ABEL D PHP 1.8.3问答 1.结合本章学习的知识,简述什么是EDA技术?谈谈自己对EDA技术的认识? 答:EDA(Electronic Design Automation)工程是现代电子信息工程领域中一门发展迅速的新技术。 2.简要介绍EDA技术的发展历程? 答:现代EDA技术是20世纪90年代初从计算机辅助设计、辅助制造和辅助测试等工程概念发展而来的。它的成熟主要经历了计算机辅助设计(CAD,Computer Aided Design)、计算机辅助工程设计(CAED,Computer Aided Engineering Design)和电子设计自动化(EDA,Electronic System Design Automation)三个阶段。 3.什么是SOC?什么是SOPC? 答:SOC (System on Chip,片上系统) SOPC(System on a Programmable Chip,片上可编程系统) 4.对目标器件为CPLD/FPGA的VHDL设计,主要有几个步骤?每步的作用和结果分别是什

《EDA》实验指导书2013-6-1

辽东学院自编教材 《可编程逻辑器件原理及应用实验》指导书 李海成编 (计算机科学与技术、电子信息工程专业用) 姓名: 学号: 班级: 信息技术学院 2013年6月

目录 目录 (1) 实验一MAX+PLUS-II设计三八译码器......... 错误!未定义书签。实验二半加器 . (2) 实验三带进位输入的8位加法器 (4) 实验四数据比较器 (6) 实验五编码器 (9) 实验六组合逻辑电路的设计 (12) 实验七计数器 (14) 实验八触发器功能的模拟实现 (17)

(被加数)Ai (被加数)Bi (半加和)Hi (本位进位)Ci 实验二 半加器 实验类型: 验证性 实验课时: 2 指导教师: 李海成 时 间:201 年 月 日 课 次:第 节 教学周次:第 周 实验分室: 实验台号: 实 验 员: 一、 实验目的 1.设计并实验一个一位半加器 2.掌握CPLD/FPGA 组合逻辑设计基本方法。 二、 实验原理 计算机中数的操作都是以二进制进位的,最基本的运算就是加法运算。按照进位是否加入,加法器分为半加器和全加器电路两种。计算机中的异或指令的功能就是求两个操作数各位的半加和。一位半加器有两个输入、输出,如图2-1。 图2-1 一位半加器示意图 表2-1 一个半加大路的真值表如表2-1所示,根据真值表可得到半加器的函数表达式: Bi Ai Bi Ai Hi ?+?= Bi Ai Ci ?= 三、 实验连线 半加器的两个输入所对应的管脚同两位拨码开关相连,两个输入管脚名为a 、b ;两个输出所对应的管脚同两位发光二极管相连,两个输出管脚名为 c0和s,其中c0表示进位, s 表示相加结果。 四、

VHDL实验报告03137

VHDL实验报告 60 庄炜旭实验三. 4位可逆计数器,4位可逆二进制代码-格雷码转换器设计 一.实验目的 学习时序电路的设计,仿真和硬件测试,进一步熟悉VHDL设计技术 1. 学习4位可逆计数器的设计 2. 学习4位可逆二进制代码-格雷码转换器设计 二.实验内容 设计4位可逆计数器,及4位可逆二进制代码-格雷码转换器,并仿真,下载。 [具体要求] 1.4位可逆计数器 a)使用CLOCK_50作为输入时钟,其频率为50MHz(对于频率大于50Hz的闪烁, 人眼会看到连续的光),因而,对其进行225的分频后,再用于时钟控制。(可 利用实验一) b)使用拨码开关SW17作为模式控制,置‘1’时为加法计数器,置‘0’时为减 法计数器,同时使用LEDR17显示SW17的值。 c)使用KEY3作为异步复位开关(按下时为0,不按为1),当为加法计数器时, 置“0000”,当为减法计数器时,置“1111”。 d)使用LEDR3,LEDR2,LEDR1,LEDR0作为转换后的输出结果显示,LEDR3为高 位,LEDR0为低位。 2.4位可逆二进制代码――格雷码转换器 a)使用拨码开关SW17作为模式控制,置‘1’时为二进制代码―>格雷码转换, 置‘0’时为格雷码―>二进制代码,同时使用LEDR17显示SW17的值。 b)使用拨码开关SW3, SW2, SW1, SW0作为输入的被转换数,SW3为高位,SW0 为低位。 c)使用LEDR3,LEDR2,LEDR1,LEDR0作为转换后的输出结果显示,LEDR3为高 位,LEDR0为低位。 三.管脚设定 SW[0]PIN_N25 SW[1]PIN_N26 SW[2]PIN_P25 SW[3] PIN_AE14 SW[17] PIN_V2 LEDR[0] PIN_AE23 LEDR[1] PIN_AF23 LEDR[2] PIN_AB21 LEDR[3] PIN_AC22 LEDR[17] PIN_AD12 KEY[3] PIN_W26

EDA技术实用教程-VHDL版课后答案

第一章 1-1 EDA技术与ASIC设计和FPGA开发有什么关系? P3~4 答:利用EDA技术进行电子系统设计的最后目标是完成专用集成电路ASIC的设计和实现;FPGA和CPLD是实现这一途径的主流器件。FPGA和CPLD通常也被称为可编程专用IC,或可编程ASIC。FPGA和CPLD的应用是EDA技术有机融合软硬件电子设计技术、SoC(片上系统)和ASIC设计,以及对自动设计与自动实现最典型的诠释。 1-2与软件描述语言相比,VHDL有什么特点? P6 答:编译器将软件程序翻译成基于某种特定CPU的机器代码,这种代码仅限于这种CPU而不能移植,并且机器代码不代表硬件结构,更不能改变CPU的硬件结构,只能被动地为其特定的硬件电路结构所利用。综合器将VHDL 程序转化的目标是底层的电路结构网表文件,这种满足VHDL设计程序功能描述的电路结构,不依赖于任何特定硬件环境;具有相对独立性。综合器在将VHDL(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的设计。 l-3什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? P5 什么是综合? 答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。 有哪些类型? 答:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。 综合在电子设计自动化中的地位是什么? 答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相关信息。 1-4在EDA技术中,自顶向下的设计方法的重要意义是什么? P7~10 答:在EDA技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。 1-5 IP在EDA技术的应用和发展中的意义是什么? P11~12 答:IP核具有规范的接口协议,良好的可移植与可测试性,为系统开发提供了可靠的保证。 第二章 2-1 叙述EDA的FPGA/CPLD设计流程。P13~16 答:1.设计输入(原理图/HDL文本编辑);2.综合;3.适配;4.时序仿真与功能仿真;5.编程下载;6.硬件测试。 2-2 IP是什么?IP与EDA技术的关系是什么? P24~26 IP是什么? 答:IP是知识产权核或知识产权模块,用于ASIC或FPGA/CPLD中的预先设计好的电路功能模块。 IP与EDA技术的关系是什么?答:IP在EDA技术开发中具有十分重要的地位;与EDA技术的关系分有软IP、固IP、硬IP:软IP是用VHDL等硬件描述语言描述的功能块,并不涉及用什么具体电路元件实现这些功能;软IP 通常是以硬件描述语言HDL源文件的形式出现。固IP是完成了综合的功能块,具有较大的设计深度,以网表文件的形式提交客户使用。硬IP提供设计的最终阶段产品:掩模。 2-3 叙述ASIC的设计方法。P18~19 答:ASIC设计方法,按版图结构及制造方法分有半定制(Semi-custom)和全定制(Full-custom)两种实现方法。 全定制方法是一种基于晶体管级的,手工设计版图的制造方法。 半定制法是一种约束性设计方式,约束的目的是简化设计,缩短设计周期,降低设计成本,提高设计正确率。半定制法按逻辑实现的方式不同,可再分为门阵列法、标准单元法和可编程逻辑器件法。 2-4 FPGA/CPLD在ASIC设计中有什么用途? P16,18 答:FPGA/CPLD在ASIC设计中,属于可编程ASIC的逻辑器件;使设计效率大为提高,上市的时间大为缩短。 2-5 简述在基于FPGA/CPLD的EDA设计流程中所涉及的EDA工具,及其在整个流程中的作用。 P19~23答:基于FPGA/CPLD的EDA设计流程中所涉及的EDA工具有:设计输入编辑器(作用:接受不同的设计输

EDA实验指导书

实验一上机学习电路原理图的绘制(2) 一、设计目的 1. 掌握PROTEL软件的安装、运行及卸载,掌握Protel 99 SE的基本操作; 2. 掌握设计管理器的使用和设计环境的设置,熟悉常用元件库和各主要菜单及命令的使用; 3.学习电路原理图的基本绘图方法 二、设计内容 1.设置原理图的环境参数,添加相应的元件库文件 2.绘制课本P92页的一个D/A功能模块电路图,其中由一片12位的D/A、两片运放、一些电阻和电容组成 图1-1 实验1电路原理图实例 三、设计设备和仪器 1.计算机 1 台(CPU要求Pentium 166MHz以上,推荐内存应为16MB以上,显示器分辨率为800×600(或1024×768)模式。) 2.Protel 99SE 软件 四、设计方法 根据电路图加载相应的元件库文件,然后选择放置电子元件,编辑各元件并精确调整元件位置。对放置好的元件根据例图连接导线,绘制总线和总线出入端口,放置网络标号及电源和输入输出端口。最后放置注释文字。 五、实验步骤 (1)新建名为自己学号姓名的设计数据库 点击“NEW新建”新建数据库文件 在上图所示的选项栏里设置名为自己姓名学号的数据库文件 (2)建立名为自己姓名的原理图文件

点击上图所示图标建立名为自己姓名的原理图文件(3)进入原理图设计环境,修改文件名并修改图纸大小为A4 点击下图中“Options”选项设置图纸大小 (4)加载常用元件库 (5)从元件库中选出需用元件放在原理图设计工作面上 (6)利用绘图工具对所有元器件进行连线 最终原理图如图所示。 六、设计报告 1.明确实验目的和实验要求; 2.写出详细的实验内容和步骤; 3.写出实验中遇到的问题及改正的方法 七、注意事项 熟悉绘图工具的功能和用法是绘制好电路原理图的关键。

EDA实验指导书

实验一 MAX+PLUSII软件的使用 [实验目的] 掌握MAX+PLUSII软件的使用。 [实验内容] 学习MAX+PLUSII软件的设计操作步骤。 [实验原理] MAX+PLUSII软件介绍。 MAX+PLUSII软件功能简介: 1 原理图输入(Graphic Editor) MAX+PLUSII软件具有图形输入能力,用户可以方便的使用图形编辑器输入电路图,图中的元器件可以调用元件库中元器件,除调用库中的元件以外,还可以调用该软件中的符号功能形成的功能块。 2 硬件描述语言输入(Text Editor) MAX+PLUSII软件中有一个集成的文本编辑器,该编辑器支持VHDL,AHDL和Verilog硬件描述语言的输入,同时还有一个语言模板使输入程序语言更加方便,该软件可以对这些程序语言进行编译并形成可以下载配置数据。 3 波形编辑器(waveform Editor) 在进行逻辑电路的行为仿真时,需要在所设计电路的输入端加入一定的波形,波形编辑器可以生成和编辑仿真用的波形(*.SCF文件),使用该编辑器的工具条可以容易方便的生成波形和编辑波形。 4 编译与仿真 当设计文件被编译好,并在波形编辑器中将输入波形编辑完毕后,就可以进行行为仿真了,通过仿真可以检验设计的逻辑关系是否准确。 5 器件编程 当设计全部完成后,就可以将形成的目标文件下载到芯片中,实际验证设计的准确性。[实验步骤] 设计过程如下: 1)输入项目文件名(File/Project/Name) 2)输入源文件(图形、VHDL、AHDL、Verlog和波形输入方式) (Max+plusⅡ/graphic Editor, Max+plusⅡ/Text Editor, Max+plusⅡ/Waveform Editor) 3)指定CPLD型号(Assign/Device) 4)设置管脚、下载方式和逻辑综合的方式 (Assign/Global Project Device Option,Assign/Global Logic Synthesis) 5)保存并检查源文件(File/project/Save & Check) 6)指定管脚(Max+plusⅡ/Floorplan Editor) 7)保存和编译源文件(File/project/Save & Compile) 8)生成波形文件(Max+plusⅡ/Waveform Editor) 9)仿真(Max+plusⅡ/Simulator) 10)下载配置(Max+plusⅡ/Programmer) [实验报告要求] 不做要求。 实验二简单组合逻辑电路设计 [实验目的] 1 通过本实验提供的实例,掌握组合逻辑电路的设计方法。

基于VHDL语言的EDA实验报告(附源码)

EDA 实验报告 ——多功能电子钟 姓名:张红义 班级:10级电科五班 学号:1008101143 指导老师:贾树恒

电子钟包括:主控模块,计时模块,闹钟模块,辅控模块,显示模块,蜂鸣器模块,分频器模块。 1.主控模块: 主要功能:控制整个系统,输出现在的状态,以及按键信息。 源代码: libraryieee; use ieee.std_logic_1164.all; useieee.std_logic_arith.all; useieee.std_logic_unsigned.all; entity mc is port(functionswitch,k,set,lightkey: in std_logic; chose21,setout: out std_logic; lightswitch:bufferstd_logic; modeout,kmodeout : out std_logic_vector(1 downto 0); setcs,setcm,setch,setas,setam,setah:outstd_logic); end mc; architecture work of mc is signalmode,kmode:std_logic_vector(1 downto 0); signal light,chose21buf:std_logic; signalsetcount:std_logic_vector(5 downto 0); begin process(functionswitch,k,set,lightkey) begin iffunctionswitch'event and functionswitch='1' then mode<=mode+'1'; end if; iflightkey'event and lightkey='1' then lightswitch<=not lightswitch; end if; if mode="01" thenchose21buf<='0'; else chose21buf<='1'; end if; ifk'event and k='1' then if mode="01" or mode="11" then kmode<=kmode+'1'; end if;end if; if set='1' then if mode = "01" then ifkmode="01" then setcount<="000001"; elsifkmode="10" thensetcount<="000010"; elsifkmode="11" then setcount<="000100";

EDA技术与VHDL语言课程设计

EDA技术与VHDL语言课程设计 课程设计 EDA技术与VHDL语言 课程设计报告 班级: 电信11-2班 姓名: 董元伟 学号: 1106110205 指导教师: 李铁 成绩: 电子与信息工程学院 信息与通信工程系 - 2 - 课程设计;数字密码锁 目录 摘 要 ..................................................................... .......................................... - 3 - 一、设计目 的 ..................................................................... ............................ - 4 - 二、设计内容和要 求 ..................................................................... .................. - 4 - 1、用户开 锁 ..................................................................... ......................... - 5 -

2、管理员解除警 报 ..................................................................... .............. - 5 - 3、管理员修改密 码 ..................................................................... .............. - 5 - 4、定时返 回 ..................................................................... ......................... - 6 - 三、设计思路和系统结构...................................................................... ............ - 6 - 1、设计模 块 ..................................................................... ......................... - 6 - 2、系统结构和数字密码锁原理 图 .............................................................. - 7 - 3、设计思 路 ..................................................................... ......................... - 8 - 四、实验设计程序 如 ..................................................................... ................... - 9 - 五、创建测试平台仿真结 果 ..................................................................... ....... - 21 - 参考文

09EDA实验指导书

EDA实验指导书

目录 实验一基于QUARTUSII图形输入电路的设计 (2) 实验二含异步清零和同步使能的加法计数器 (5) 实验三图形和VHDL混合输入的电路设计 (7) 实验四矩阵键盘接口电路的设计 (10) 实验五交通灯控制电路实验 (16) 附图EP1K10TC100管脚图 (24) 主芯片:ACEX 1K 系列的EP1K10TC100-3 下载电缆:Byte Blaster II

实验一基于QUARTUSII图形输入电路的设计 一、实验目的 1、通过一个简单的3线—8线译码器的设计,掌握组合逻辑电路的设计方法。 2、初步了解QUARTUSII原理图输入设计的全过程。 3、掌握组合逻辑电路的静态测试方法。 二、实验原理 3线-8线译码器三输入,八输出。当输入信号按二进制方式的表示值为N时,输出端标号为N的输出端输出高电平表示有信号产生,而其它则为低电平表示无信号产生。因为三个输入端能产生的组合状态有八种,所以输出端在每种组合中仅有一位为高电平的情况下,能表示所有的输入组合。其真值表如表1-1所示 输入输出 D2 D1 D0 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 表1-1 3线-8线译码器真值表 译码器不需要像编码器那样用一个输出端指示输出是否有效。但可以在输入中加入一个输出使能端,用来指示是否将当前的输入进行有效的译码,当使 能端指示输入信号无效或不用对当前信号进行译码时,输出端全为高电平,表 示无任何信号。本例设计中没有考虑使能输入端,自己设计时可以考虑加入使 能输入端时,程序如何设计。 三、实验内容 在本实验中,用三个拨动开关来表示3线-8线译码器的三个输入(D2-D0);用

VHDL实验报告

专用集成电路实验报告 13050Z01 1305024237 刘德文

实验一开发平台软件安装与认知实验 实验内容 1、本实验以三线八线译码器(LS74138)为例,在Xilinx ISE 9.2软件平台上完成设计 电路的VHDL文本输入、语法检查、编译、仿真、管脚分配和编程下载等操作。下载芯片选择Xilinx公司的CoolRunner II系列XC2C256-7PQ208作为目标仿真芯片。 2、用1中所设计的的三线八线译码器(LS74138)生成一个LS74138元件,在Xilinx ISE 9.2软件原理图设计平台上完成LS74138元件的调用,用原理图的方法设计三线八线译 码器(LS74138),实现编译,仿真,管脚分配和编程下载等操作。 源程序: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; -- Uncomment the following lines to use the declarations that are -- provided for instantiating Xilinx primitive components. --library UNISIM; --use UNISIM.VComponents.all; entity ls74138 is Port ( g1 : in std_logic; g2 : in std_logic; inp : in std_logic_vector(2 downto 0); y : out std_logic_vector(7 downto 0)); end ls74138; architecture Behavioral of ls74138 is begin process(g1,g2,inp) begin if((g1 and g2)='1') then case inp is when "000"=>y<="00000001"; when "001"=>y<="00000010";

EDA技术与VHDL语言设计

《EDA技术与VHDL语言设计》 课程设计 题目:交通灯控制器 姓名: ***** 院系:电子信息工程系 专业:电子信息工程 班级:电信112班 学号: ****** 指导教师: ****** 2013年6 月

交通灯控制器 *** (电子信息工程学系指导教师:**) 摘要:传统的交通灯控制器多数由单片机实现,本文介绍基于EDA技术设计交通灯控制器的 一种方案。EDA技术的一个重要特征是使用硬件描述语言来完成系统的设计文件,这在电子 设计领域已得到设计者的广泛采用。给出了交通灯控制器的源程序和仿真结果,仿真结果表明 该设计方案可行。 关键词:交通灯控制器;仿真;设计 1.设计原理 1.1设计要求 设计一个十字路口交通控制器,器示意图如图1.1所示,A方向和B方向歌设红(R)、黄(Y)、 绿(G)、和左拐(L)四盏灯,四种灯按合理的顺序亮灭,并能将灯亮的时间以倒计时的形式显示出来。A方向红、绿、黄、左拐灯亮的时间分别为65s、40s、5s、和15s,B方向红、绿、黄、左拐灯亮的时 间分别为55s、30s、5s、和15s。 1.2功能要求 两个方向各种灯亮的时间能够进行设置和修改,此外假设A方向是主干路,车流大,因此在 表1.2 交通灯控制器的状态 1.3设计思路和原理 根据交通灯控制器要求实现的功能,考虑用两个并行执行的always模块来分别控制A和B两个方向的四盏灯,这两个always模块使用同一个时钟信号,以进行同步。也就是说,两个always模块的敏感信号是同一个,每个模块控制一个方向的四种灯按如下顺序点亮,并往复循环:绿灯→黄灯→左拐灯→黄灯→红灯。 每种灯亮的时间采用一个减法计数器进行计数,计数器用同步预置法设计,这样只需改变计数器的

EDA技术与VHDL基础课后习题答案(供参考)

《EDA技术与VHDL基础》 课后习题答案 第一章EDA技术概述 一、填空题 1、电子设计自动化 2、非常高速集成芯片硬件描述语言 3、CAD、CAE、EDA 4、原理图输入、状态图输入、文本输入 5、VHDL、Verilog HDL 6、硬件特性 二、选择题 1、A 2、C 3、A 4、D 5、C 6、D 7、A 第二章可编程逻辑器件基础 一、填空题 1、PLD 2、Altera公司、Xilinx公司、Lattice公司 3、基于反熔丝编程的FPGA 4、配置芯片 二、选择题 1、D 2、C 3、C 4、D 第三章VHDL程序初步——程序结构 一、填空题 1、结构、行为、功能、接口 2、库和程序包、实体、结构体、配置 3、实体名、类型表、端口表、实体说明部分

4、结构体说明语句、功能语句 5、端口的大小、实体中子元件的数目、实体的定时特性 6、设计库 7、元件、函数 8、进程PROCESS、过程PROCEDURE 9、顺序语句、并行语句 二、选择题 1、D 2、C 3、C 4、B 5、D 6、B 7、A 8、C 三、简答题 2、 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY nand_3in IS PORT(a,b,c:IN STD_LOGIC; y:OUT STD_LOGIC); END; ARCHITECTURE bhv OF nand_3in IS BEGIN y<=NOT(a AND b AND c); END bhv; 5、0000 6、(247) 第四章VHDL基础 一、填空题 1、顺序语句、并行语句 2、跳出本次循环 3、等待、信号发生变化时 4、函数、过程 5、值类属性、函数类属性、信号类属性、数据类型类属性、数据范围类属性 6、程序调试、时序仿真 7、子程序、子程序 二、选择题

EDA实验指导书

ED心验指导书齐鲁理工学院

目录 实验一Protel DXP 2004认识实验 0 实验二两级阻容耦合三极管放大电路原理图设计 0 实验三原理图元件库建立与调用 (2) 实验四两级阻容耦合三极管放大电路PCB图设计............................ .4实验五集成电路的逻辑功能测试.. (6) 实验六组合逻辑电路分析与设计............................................... 1.1实验七Quartus II的使用 ................................................. 1.6实验八组合逻辑器件设计. (16) 实验九组合电路设计 (24)

实验一Protel DXP 2004 认识实验 一、实验目的 1. 掌握Protel DXP 2004的安装、启动和关闭。 2. 了解Protel DXP 2004主窗口的组成和各部分的作用。 3. 掌握Protel DXP 2004工程和文件的新建、保存、打开。 二、实验内容与步骤 1、Protel_DXP_2004 的安装 (1) 用虚拟光驱软件打开Protel_DXP_2004.iso 文件 (2) 运行setup\Setup.exe 文件,安装Protel DXP 2004 (3) 运行破解程序后,点击导入模版”,先导入一个ini文件模版(如果要生成单机版的License选择Unified Nexar-Protel License.ini;要生成网络版的License选择Unified Nexar-Protel Network License.ini ),然后修改里面的参数:TransactorName=Your Name (将"Your Name替换为你想要注册的用户名);SerialNumber=0000000 (如果你只有一台计算 机,那么这个可以不用修改,如果有两台以上的计算机且连成局域网,那么请保证每个License文件中的SerialNumber=为不同的值。修改完成后点击生成协议文件",任意输入一 个文件名(文件后缀为.alf)保存,程序会在相应目录中生成1个License文件。点击替换密钥”,选取DXP.exe (在DXP 2004安装目录里,默认路径为),程序会自动替换文件中的公开密钥。将前面生成的License文件拷贝至DXP 2004安装目录里(默认路径为)授权完成。 (4) 打开Protel 在左上角DXP 菜单下的Preference 菜单项里,选中Use localize resources后关闭Protel_DXP_2004 ,重新打开软件变为简体中文版本。 2、Protel_DXP_2004 的卸载 卸载Protel_DXP_2004的具体步骤如下: (1) 在Windows的“开始”菜单中选择“设置/控制面板”,然后在控制面板中选择“添加/删除程序”选项,将弹出对话框。从中选择DXP 2004应用软件。 (2) 单击删除”按钮,将弹出对话框,询问用户是否真的要删除程序。 (3) 单击“是”按钮,开始卸载。在卸载过程中,若想终止卸载,可单击“取消”按

vhdl实验报告--蜂鸣器

VHDL 实验报告 一、实验目的 1、掌握蜂鸣器的使用; 2、通过复杂实验,进一步加深对VHDL语言的掌握程度。 二、实验原理乐曲都是由一连串的音符组成,因此按照乐曲的乐谱依次输出这些音符所对应的频率,就可以在蜂鸣器上连续地发出各个音符的音调。而要准确地演奏出一首乐曲,仅仅让蜂鸣器能够发声是不够的,还必须准确地控制乐曲的节奏,即每个音符的持续时间。由此可见,乐曲中每个音符的发音频率及其持续的时间是乐曲能够连续演奏的两个关键因素。 乐曲的12 平均率规定:每2 个八度音(如简谱中的中音1 与高音1)之间的频率相差1 倍。在2个八度音之间,又可分为12个半音。另外,音符A(简谱中的低音6)的频率为440Hz, 音符B到C之间、E到F之间为半音,其余为全音。由此可以计算出简谱中从低音I至高音1 之间每个音符的频率,如表所示。 音名频率/Hz 音名频率/Hz 音名频率/Hz 低音1 中音1 高音1 低音2 中音2 高音2 低音3 中音3 高音3 低音4 中音4 高音4 低音5 392 中音5 784 高音5 1568 低音6 440 中音6 880 高音6 1760 低音7 中音7 高音7 表简谱音名与频率的对应关系 产生各音符所需的频率可用一分频器实现, 由于各音符对应的频率多为非整数, 而分频系数又不能为小数, 故必须将计算得到的分频数四舍五入取整。若分频器时钟频率过低, 则由于分频系数过小, 四舍五入取整后的误差较大;若时钟频率过高,虽然误差变小,但分频数将变大。实际的设计应综合考虑两方面的因素, 在尽量减小频率误差的前提下取合适的时钟频率。实际上,只要各个音符间的相对频率关系不变,演奏出的乐曲听起来都不会走调。 音符的持续时间须根据乐曲的速度及每个音符的节拍数来确定。因此, 要控制音符的音 长,就必须知道乐曲的速度和每个音符所对应的节拍数, 本例所演奏的乐曲的最短的音符为四分音符,如果将全音符的持续时间设为1s 的话,那么一拍所应该持续的时间为秒,则只需要提供一个4HZ的时钟频率即可产生四分音符的时长。 本例设计的音乐电子琴选取40MHZ的系统时钟频率。在数控分频器模块,首先对时钟频率进行40分频,得到1MHZ的输入频率,然后再次分频得到各音符的频率。由于数控分频器 输出的波形是脉宽极窄的脉冲波, 为了更好的驱动蜂鸣器发声, 在到达蜂鸣器之前需要均衡占空比, 从而生成各音符对应频率的对称方波输出。这个过程实际上进行了一次二分频, 频率变为原来的二分之一即。 因此,分频系数的计算可以按照下面的方法进行。以中音1为例,对应的频率值为 523. 3Hz,它的分频系数应该为: 0.375MHZ 0.375 106 716 523.3 523.3

EDA技术与VHDL(第2版)习题解答

第3章 VHDL 基础 3-1 如图所示 input output enable buf3s mux21 in0in1output sel 3-2 程序: IF_THEN 语句 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY mux21 S PORT ( s1,s0 : IN STD_LOGIC_VECTOR ; a,b,c,d : IN STD_LOGIC ; y : OUT STD_LOGIC ) ; END ENTITY mux21 ; ARCHITECTURE one OF mux21 IS BEGIN PROCESS ( s0,s1,a,b,c,d ) BEGIN IF s1=?0? AND s0=?0? THEN y<=a ; ELSIF s1=?0? AND s0=?1? THEN y<=b ; ELSIF s1=?1? AND s0=?0? THEN y<=c ; ELSIF s1=?1? AND s0=?1? THEN y<=d ; ELSE y<=NULL ; END IF ; END PROCESS ; END ARCHITECTURE one ; CASE 语句 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY mux21 IS

PORT ( s1,s0 : IN STD_LOGIC_VECTOR ; a,b,c,d : IN STD_LOGIC ; y : OUT STD_LOGIC ) ; END ENTITY mux21 ; ARCHITECTURE two OF mux21 IS SIGNAL s : STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ; BEGIN s<=s1 & s0 ; PROCESS ( s ) BEGIN CASE s IS WHEN “00” => y<=a ; WHEN “01” => y<=b ; WHEN “10” => y<=c ; WHEN “11” => y<=d ; WHEN OTHERS => NULL ; END CASE ; END PROCESS ; END ARCHITECTURE two ; 3-3 程序: LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY MUXK IS PORT ( s0,s1 : IN STD_LOGIC ; a1,a2,a3 : IN STD_LOGIC ; outy : OUT STD_LOGIC ) ; END ENTITY MUXK ; ARCHITECTURE double OF MUXK IS SIGNAL tmp : STD_LOGIC ; --内部连接线 SIGNAL u1_s, u1_a, u1_b, u1_y : STD_LOGIC ; SIGNAL u2_s, u2_a, u2_b, u2_y : STD_LOGIC ; BEGIN p_MUX21A_u1 : PROCESS ( u1_s, u1_a, u1_b, u1_y ) BEGIN

EDA实验指导书new_Quartus2

EDA技术实验手册及程序代码 物理与信息项目学院 学号:111000228 姓名:汪艺彬 注意事项 1、本实验手册是为了配合《EDA技术实用教程》,作为本课程实验环节的补充 指导而编制。 2、实验中涉及的QuartusⅡ软件的使用请参考 《EDA技术实用教程》中有关章节。 手册中所有的虚线空白框,都留出来作为实验记录之用,每个实验完成后,应按照实验内容的要求将实验结果记入框中。 4、每个实验后面都附有一道思考题,完成实验内容后可以作为更进一步的练习 。 5、每次实验后将手册相关部分<完成实验结果记录)和实验源代码<.vhd文件) 一起,作为实验报告上交。 6、课程结束后请将所有报告按顺序加封面装订好上交,作为实验部分成绩计入 总成绩。 实验一利用原理图输入法设计4位全加器一、实验目的: 熟悉如何在QuartusⅡ集成环境下利用原理图输入设计简单组合逻辑电路,掌握层次化的电路设计方法。 二、实验原理: 一个4位全加器可以由4个一位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的进位输入信号cin相接。 三、实验内容: 1.QuartusII软件的熟悉

熟悉QuartusⅡ环境下原理图的设计方法和流程,可参考课本5.4节的内容,重点掌握层次化的设计方法。 2.设计1位全加器原理图 设计的原理图如下所示 3.利用层次化原理图方法设计4位全加器 <1)生成新的空白原理图,作为4位全加器设计输入 <2)利用已经生成的1位全加器作为电路单元,设计4位全加器的原理图,如下所示 4、设计一个超前进位4位全加器 以上设计的全加器是基于串行进位的结构,高位的进位输入必须等待低位的运算结果,造成较长的延时。通过对进位位进行超前运算,可以缩短这部分的延时。 在已有1位全加器的基础上设计一个具有超前进位结构的4位全加器,原理图如下所示 5、完成设计流程

相关主题
文本预览
相关文档 最新文档