i
前 言
FPGA 是英文 Field Programmable Gate Array 的缩写,即现场可编程门阵列,
它是在 PAL、GAL、EPLD 等可编程器件的基础上进一步发展的产物。它是作为专
用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不
足,又克服了原有可编程器件门电路数有限的缺点。
FPGA 采用了逻辑单元阵列 LCA(Logic Cell Array)这样一个新概念,
内部包括可配置逻辑模块 CLB(Configurable Logic Block)、输出输入模块 IOB
(Input Output Block)和内部连线(Interconnect)三个部分。FPGA 的基本特
点主要有:
1)采用 FPGA 设计 ASIC 电路,用户不需要投片生产,就能得到合用的
芯片。
2)FPGA 可做其它全定制或半定制 ASIC 电路的中试样片。
3)FPGA 内部有丰富的触发器和 I/O 引脚。
4)FPGA 是 ASIC 电路中设计周期最短、开发费用最低、风险最小的器
件之一。
5)FPGA 采用高速 CHMOS 工艺,功耗低,可以与 CMOS、TTL 电平兼容。
可以说,FPGA 芯片是小批量系统提高系统集成度、可靠性的最佳选择
之一。
目前 FPGA 的品种很多,有 XILINX 的 XC 系列、TI 公司的 TPC 系列、
ALTERA 公司的 FIEX 系列等,本实验箱选用了 ALTERA 公司 Cyclone 系列芯片
FPGA 是由存放在片内 RAM 中的程序来设置其工作状态的,因此,工
作时需要对片内的 RAM 进行编程。用户可以根据不同的配置模式,采用不同的编
程方式。
加电时,FPGA 芯片将 EPROM 中数据读入片内编程 RAM 中,配置完成后,
FPGA 进入工作状态。掉电后,FPGA 恢复成白片,内部逻辑关系消失,因此,FPGA
能够反复使用。FPGA 的编程无须专用的 FPGA 编程器,只须用通用的 EPROM、PROM
编程器即可。当需要修改 FPGA 功能时,只需换一片 EPROM 即可。这样,同一片 FPGA,
不同的编程数据,可以产生不同的电路功能。因此,FPGA 的使用非常灵活。
VHDL 语言是一种用于电路设计的高级语言。它在 80 年代的后期出现。最初
是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种
使用范围较小的设计语言 。但是,由于它在一定程度上满足了当时的设计需求,
于是他在 1987 年成为 A I/IEEE 的标准(IEEE STD 1076-1987)。1993 年更进一
步修订,变得更加完备,成为 A I/IEEE 的 A I/IEEE STD 1076-1993 标准。目前,
大多数的 CAD 厂商出品的 EDA 软件都兼容了这种标准。VHDL 的英文全写是:
VHSIC ( Very High eed Integrated Circuit ) Hardware Descriptiong
Language.翻译成中文就是超高速集成电路硬件描述语言。因此它的应用主要是
应用在数字电路的设计中。目前,它在中国的应用多数是用在 FPGA/CPLD/EPLD
的设计中。
本实验箱可做为初学者的学习实验箱,主芯片采用了 ALTERA 公司的
ii
Cyclone 系列 EP1C3T144C8N,学习 VHDL 语言,为数字电路系统设计打下坚实的
基础,学习 ALTERA 公司的开发平台 Quartus II 6.0 ,了解 FPGA 系统的开发设
计流程。
目 录
第 1 章 FPGA 系统.......................................................................................................1
1.1 系统简介....................................................................................................................1
1.2 系统功能特点............................................................................................................1
1.3 开发平台标准配置....................................................................................................2
1.4 功能模块介绍............................................................................................................2
1.4.1 电源....................................................................................................................2
1.4.2 系统时钟............................................................................................................3
1.4.3 LED 灯...............................................................................................................3
1.4.4 8 位拨码开关.....................................................................................................3
1.4.5 数码管显示........................................................................................................4
1.4.6 键盘阵列............................................................................................................5
1.4.7 独立矩形波信号源............................................................................................5
1.4.8 蜂鸣器................................................................................................................6
第 2 章 基础门电路及触发器......................................................................................7
2.1 实验一 基本门电路....................................................................................7
2.1.1 实验目的............................................................................................................7
2.1.2 实验内容............................................................................................................7
2.1.3 实验原理及说明................................................................................................7
2.1.4 实验步骤............................................................................................................7
2.1.5 参考程序及引脚分配........................................................................................8
2.2 实验二 基本触发器............................................................................................9
2.2.1 实验目的............................................................................................................9
2.2.2 实验内容............................................................................................................9
2.2.3 实验原理及说明................................................................................................9
2.2.4 实验步骤............................................................................................................9
2.2.5 参考程序及引脚分配......................................................................................10
2.3 实验三 3-8 译码器 .............................................................................................12
2.3.1 实验目的..........................................................................................................12
2.3.2 实验内容..........................................................................................................12
2.3.3 实验原理..........................................................................................................12
2.3.4 实验步骤..........................................................................................................12
2.3.5 参考程序及引脚分配......................................................................................13
2.4 实验四 8—3 编码器...........................................................................................14
2.4.1 实验目的..........................................................................................................14
2.4.2 实验内容..........................................................................................................14
2.4.3 实验原理..........................................................................................................14
iii
2.4.4 实验步骤..........................................................................................................14
2.4.5 参考程序及引脚分配......................................................................................15
2.5 实验五 BCD 八段显示译码器 ..........................................................................16
2.5.1 实验目的..........................................................................................................16
2.5.2 实验内容..........................................................................................................16
2.5.3 实验原理..........................................................................................................16
2.5.4 实验步骤..........................................................................................................16
2.5.5 参考程序及引脚分配......................................................................................16
2.6 实验六 四选一数据选择器............................................................................18
2.6.1 实验目的..........................................................................................................18
2.6.2 实验内容..........................................................................................................18
2.6.3 实验原理及说明..............................................................................................18
2.6.4 实验步骤..........................................................................................................18
2.6.5 实验参考程序及引脚分配:..........................................................................19
2.7 实验七 数值比较器..........................................................................................20
2.7.1 实验目的..........................................................................................................20
2.7.2 实验内容..........................................................................................................20
2.7.3 实验原理及说明..............................................................................................20
2.7.4 实验步骤..........................................................................................................20
2.7.5 参考程序及引脚分配......................................................................................21
2.8 实验八 4 位二进制加法器.........................................................................22
2.8.1 实验目的..........................................................................................................22
2.8.2 实验内容..........................................................................................................22
2.8.3 实验原理及说明..............................................................................................22
2.8.4 实验步骤..........................................................................................................23
2.8.5 参考程序及引脚分配......................................................................................23
2.9 实验九 4 位二进制乘法器.................................................................................25
2.9.1 实验目的..........................................................................................................25
2.9.2 实验内容..........................................................................................................25
2.9.3 实验原理及说明..............................................................................................25
2.9.4 实验步骤..........................................................................................................26
2.9.5 参考程序及引脚分配......................................................................................26
第 3 章 逻辑电路........................................................................................................30
3.1 实验十 移位寄存器..........................................................................................30
3.1.1 实验目的..........................................................................................................30
3.1.2 实验内容..........................................................................................................30
3.1.3 实验原理..........................................................................................................30
3.1.4 实验步骤..........................................................................................................30
3.1.5 参考程序及引脚分配......................................................................................30
3.2 实验十一 串行并行转换......................................................................................32
3.2.1 实验目的..........................................................................................................32
3.2.2 实验内容..........................................................................................................32
3.2.3 实验原理及说明..............................................................................................32
3.2.4 实验步骤..........................................................................................................33
iv
3.2.5 参考程序及引脚分配......................................................................................33
3.3 实验十二 单时钟同步可逆计数器....................................................................34
3.3.1 实验目的..........................................................................................................34
3.3.2 实验内容..........................................................................................................34
3.3.3 实验原理及说明..............................................................................................35
3.3.4 实验步骤..........................................................................................................35
3.3.5 参考程序及引脚分配......................................................................................35
3.4 实验十三 顺序脉冲发生及其检测....................................................................37
3.4.1 实验目的..........................................................................................................37
3.4.2 实验内容..........................................................................................................37
3.4.3 实验原理及说明..............................................................................................37
3.4.4 实验步骤..........................................................................................................38
3.4.5 参考程序及引脚分配......................................................................................38
3.5 实验十四 按键数码管循环左移显示................................................................40
3.5.1 实验目的..........................................................................................................40
3.5.2 实验内容..........................................................................................................40
3.5.3 实验原理..........................................................................................................40
3.5.4 实验步骤..........................................................................................................41
3.5.5 参考程序和引脚分配......................................................................................41
3.6 实验十五 电子时钟............................................................................................44
3.6.1 实验目的..........................................................................................................44
3.6.2 实验内容..........................................................................................................44
3.6.3 实验原理..........................................................................................................45
3.6.4 实验步骤..........................................................................................................45
3.6.5 参考程序及引脚分配......................................................................................45
3.7 实验十六 按键控制............................................................................................51
3.7.1 实验目的..........................................................................................................51
3.7.2 实验内容..........................................................................................................51
3.7.3 实验原理..........................................................................................................51
3.7.4 实验步骤..........................................................................................................52
3.7.5 参考程序及引脚分配......................................................................................52
第 4 章 FPGA 综合应用.............................................................................................59
4.1 实验十七 数字密码锁....................................................................................59
4.1.1 实验目的..........................................................................................................59
4.1.2 实验内容..........................................................................................................59
4.1.3 实验原理..........................................................................................................59
4.1.4 实验步骤..........................................................................................................60
4.1.5 参考程序及引脚分配......................................................................................60
4.2 实验十八 智力抢答器........................................................................................65
4.2.1 实验目的..........................................................................................................65
4.2.2 实验内容..........................................................................................................65
4.2.3 实验原理及说明..............................................................................................65
4.2.4 实验步骤..........................................................................................................66
4.2.5 参考程序及引脚分配......................................................................................67
v
4.3 实验十九 自动售货机....................................................................................73
4.3.1 实验目的..........................................................................................................73
4.3.2 实验内容..........................................................................................................73
4.3.3 实验原理..........................................................................................................73
4.3.4 实验步骤..........................................................................................................74
4.3.5 参考程序和引脚分配......................................................................................74
4.4 实验二十 数字频率计................................................................................79
4.4.1 实验目的..........................................................................................................79
4.4.2 实验内容..........................................................................................................79
4.4.3 实验原理..........................................................................................................79
4.4.4 实验步骤..........................................................................................................80
4.4.5 参考程序及引脚分配......................................................................................80