CPLD入门教程

  • 格式:pdf
  • 大小:2.81 MB
  • 文档页数:52

FPGA/CPLD入门教程

目录

前言…………………………………………………………………… 2

第一章 MAX+plusII 软件和license的获得……………………… 6

第二章 MAX+plusII 软件的安装和license及驱动的设置

2.1 MAX+plusII 软件的安装……………………………… 7

2.2 MAX+plusII 软件的license设置…………………… 8

2.3 MAX+plusII 软件的驱动设置…………………………12

第三章 用VHDL语言设计三人表决器

3.1打开MAX+plusII……………………………………… 22

3.2新建VHDL文档………………………………………… 23

3.3输入设计文件……………………………………………24

3.4保存文件…………………………………………………25

3.5检查编译…………………………………………………27

3.6创建symbol………………………………………………32

3.7波形防真…………………………………………………33

3.8下载验证…………………………………………………40

第四章 用原理图输入的方式设计三人表决器………………………47

第五章 用verilog-HDL语言设计三人表决器………………………51

Download from http://www.husoon.com writen by caijs 1FPGA/CPLD入门教程

前言

编写本入门教程(V1.2)的目点是为了让FPGA/CPLD初学者快速

地入门。该教程的特点是通过基本概念讲解和实际的例子来让初学者

迅速了解FPGA/CPLD。该教程是共享文件,可以复制、下载、转载,

如果转载该文章请注明出处: http://www.husoon.com;该教程未经

许可,不得用于商业用途。

FPGA/CPLD是电子设计领域中最具活力和发展前途的一项技术,

它的影响丝毫不亚于70年代单片机的发明和使用。

FPGA/CPLD的基本知识:

1.什么是FPGA/CPLD

FPGA (Field Programmable Gate Array)是现场可编程门阵列,

CPLD是复杂的可编程逻辑器件(Complex Programmable Logic

Device)的简称,不同厂家有不同的称呼,Xilinx把SRAM工艺,要

外挂配置用的EEPROM的PLD叫FPGA,把Flash工艺(类似EEPROM工

艺),乘积项结构的PLD叫CPLD; Altera把自己的PLD产品MAX系列

(EEPROM工艺),FLEX/ACEX/APEX系列(SRAM工艺)都叫作CPLD,

即复杂PLD(Complex PLD),由于FLEX/ACEX/APEX系列也是SRAM工艺,

要外挂配置用的EPROM,用法和Xilinx的FPGA一样,所以很多人把

Altera的FELX/ACEX/APEX系列产品也叫做FPGA.

但由于FPGA和CPLD功能基本相同,只是工艺和实现形式不同,

所以初学者可以不要详细区分,我们可以统称为FPGA/CPLD。

2.FPGA/CPLD的用途:

Download from http://www.husoon.com writen by caijs 2FPGA/CPLD入门教程

FPGA/CPLD能做什么呢?可以毫不夸张的讲,FPGA/CPLD能完成

任何数字器件的功能,上至高性能CPU,下至简单的74电路,都可以

用FPGA/CPLD来实现。FPGA/CPLD如同一张白纸或是一堆积木,工程

师可以通过传统的原理图输入法,或是硬件描述语言自由的设计一个

数字系统。通过软件仿真,我们可以事先验证设计的正确性。在PCB

完成以后,还可以利用FPGA/CPLD的在线修改能力,随时修改设计而

不必改动硬件电路。使用FPGA/CPLD来开发数字电路,可以大大缩短

设计时间,减少PCB面积,提高系统的可靠性。

FPGA/CPLD可以做数字IC设计的前端验证,用这种方式可以很

大程度上降低IC设计的成本。

FPGA/CPLD的这些优点使得FPGA/CPLD技术在90年代以后得到

飞速的发展,同时也大大推动了EDA软件和硬件描述语言(HDL)的

进步

3. CPLD/FPGA的宏单元是怎么定义?一个宏单元对应多少门?

宏单元(或逻辑单元)是PLD/FPGA的最基本单元,不同产品对

这种基本单元的叫法不同,如LE,MC,CLB,Slices等,但每个基本单

元一般都包括两部分,一部分实现组合逻辑,另一部分实现时序逻辑。

各个厂家的定义可能不一样。对ALTERA的芯片,每个基本单元含

一个触发器;对Xilinx的部分芯片,每个基本单元单元含两个触发器。

一般不用“门”的数量衡量CPLD/FPGA的大小,因为各家对门数的

算法不一样,象ALTERA和Xilinx对门的计算结果就差了一倍,推

荐用触发器的多少来衡量芯片的大小。如10万门的Xilinx的XC2S100

Download from http://www.husoon.com writen by caijs 3FPGA/CPLD入门教程

有1200个slices,即含2400个触发器;5万门的ALTERA的1K50

则含2880个LE,即2880个触发器。

4. 如何如何学习FPGA/CPLD

其实FPGA/CPLD的使用很简单,学习FPGA/CPLD比学习单片

机要简单的多,有数字电路基础,会使用计算机,就可以进行

FPGA/CPLD的开发。

开发FPGA/CPLD需要了解两个部分:(1). FPGA/CPLD开发软件

(2). FPGA/CPLD本身(芯片);另外最好配置开发系统(或实验板)

FPGA/CPLD软件已经发展的相当完善,用户甚至可以不用详细

了解FPGA/CPLD的内部结构,也可以用自己熟悉的方法:如原理图

输入或HDL语言来完成相当优秀的FPGA/CPLD设计。所以对初学

者,首先应简单了解FPGA/CPLD开发软件和开发流程。本教程就是

本着这种思想编写的。

了解FPGA/CPLD的内部结构,将有助于提高我们设计的效率和

可靠性。

本手册以目前使用频率和资料最多的ALTERA公司的软件

MAX+plusII10.2和芯片EPM7128SLC84-15为例子来讲述一个完整的

CPLD/FPGA设计的全过程。

本手册中实验所需要到软件:max+plus10.2(第一章讲述来源);

硬件:JX002开发套件(含CPLD芯片EPM7128)、PC、220V电源。

本手册的设计例子是一个很简单的实际例子:三人表决器。采用

Download from http://www.husoon.com writen by caijs 4FPGA/CPLD入门教程

VHDL、Verilog-HDL和图形的方式(以VHDL为主),硬件采用JX002B型实验板 ,你可以到www.husoon.com下载JX002B型实验板的使用

说明书。

三人表决器的功能描述:三个人分别用拨位开关SW1、SW2、SW3

来表示自己的意愿,如果对某决议同意,各人就把自己的拨位开关拨

到高电平(上方),不同意就把自己的拨位开关拨到低电平(下方)。

表决结果用LED(高电平亮)显示,如果决议通过那么实验板上L2

(黄灯)亮;如果不通过那么实验板上L1(红灯)亮;如果对某个

决议有任意二到三人同意,那么此决议通过,L2亮;如果对某个决

议只有一个人或没人同意,那么此决议不通过,L1亮。

编者将在以后的业余时间编写QUARTUS软件的使用以及FPGA在

IC设计中的应用。

该教程参考了FPGA中文网站的部分内容,在此表示感谢。

本手册仅供初学者使用。由于编者水平有限,本手册难免有错误

和不妥之处,恳请读者批评指正:fpga@caijs.com.

2004.2

shanghai

Download from http://www.husoon.com writen by caijs 5FPGA/CPLD入门教程

第一章 MAX+plusII 软件和license的获得

你可以通过下面方式来获得MAX+plusII 软件:

A:到 https://mysupport.altera.com/login/signin.asp 上

登记、注册申请并下载(那是10.2的baseline版本的)。

B:到http://www.husoon.com上下载(那是10.2的BASELINE

版本的)

C:和 fpga@caijs.com 联系

使用MAX+plusII 软件你需要license.dat文件,你可以到www.husoon.com 上下载

Download from http://www.husoon.com writen by caijs 6FPGA/CPLD入门教程

第二章 MAX+plusII 软件的安装和license、驱动的设置

2.1 MAX+plusII 软件的安装

如果是baseline10.2版本,直接双击下图的图表,按提示安装

如果是10.2完全版,双击下图中的setup.exe可执行文件,按提示

安装

其他版本也都是双击可执行文件*.exe

安装后,在开始->程序->altera(或MAX+plusII)中将看到

MAX+plusII的图标

Download from http://www.husoon.com writen by caijs 7FPGA/CPLD入门教程

安装后请按下面步骤进行。

2.2 MAX+plusII 软件的license设置

安装完成后,将license文件拷贝到硬盘的任何一个目录,连后按下

面过程设置(下面是英文原文,仅WIN2000翻译成中文了),另外根

据我们的使用经验,安装后直接在软件中的设置就可以了,如下面两

图所示:

Download from http://www.husoon.com writen by caijs 8