Upload
ngothu
View
257
Download
0
Embed Size (px)
Citation preview
课程介绍
课程宗旨学习要求教学特点教学安排基本教学内容考试方法参考书籍
课 程 宗 旨
建立现代数字电子系统设计的概念;
更新传统数字电路的设计观念,建立用PLD器件取代传统TTL器
件设计数字电路的思想;
更新数字系统设计手段,学会使用硬件描述语言(HDL)代替
传统的数字电路设计方法来设计数字系统。
HDL:Hardware Description Language
PLD--Programmable Logic Device
学习要求
了解现代数字电子系统设计与应用技术。
熟悉大规模复杂可编程逻辑器件(CPLD)的结
构、功能和工作原理。
熟悉掌握一种硬件描述语言(AHDL)。
掌握数字系统的描述、建立、综合、仿真、测试
与应用的方法。
基本掌握CPLD开发系统MAX PLUS II的操作与
应用。
了解CPLD的配置与下载。
教学特点
理论联系实际,实验与理论并重。
以ALTERA公司的CPLD器件为教学样本。
介绍用AHDL硬件描述语言进行数字电路与系统的
设计方法。
使用ALTERA公司的CPLD开发系统。
教学安排
总学时:40
理论课:20 实验课:20
实验课安排
5次实验课,共完成10个实验。
基本教学内容
第1章 电子系统设计概论
第2章 可编程逻辑器件(SPLD)基础
第3章 CPLD与FPGA基础
第4章 ALTERA的CPLD与FPGA器件
第5章 AHDL语言
第6章 CPLD/FPGA的配置与下载
考试方法
闭卷或半开卷
成绩=考试(60%)+(实验+平时)40%
参考书籍
教材:《复杂可编程逻辑器件与应用设计》
付慧生 中国矿业大学出版社
参考书:
1、《可编程逻辑器件原理、开发与应用》
赵曙光 西安电子科大出版社
2、《CPLD技术与应用》
宋万杰 西安电子科大出版社
3、《大规模可编程逻辑器件与数字系统设计》
杨 晖 北京航天航空大学出版社
4、《CPLD数位电路设计发展应用·基础篇、提高篇》
林容益 台湾全华科技图书股份有限公司
第一章 电子系统设计概论
第一章 电子系统设计概论
1.1 数字系统与数字器件
1.2 构建数字系统的途径
1.3 可编程逻辑器件
1.4 EDA技术
习 题
1.1 数字系统与数字器件
数字电子系统:简称为数字系统。是可以完成某种
(或多种)特定的、功能不单一的一种电子系统。
一般应包含某种控制器及受控单元。
一个数字电子设备(产品),小到一个数字电子
钟,大到一台数控车床或超级计算机,都是一个
“数字电子系统”。
1.1 数字系统与数字器件
数字器件:即数字IC芯片。是构成数字系统的基本
部件,是数字系统的“元素”或“细胞”。
数字系统与数字器件的主要区别:
--看其是否具有控制和受控单元。
不能以系统是否复杂及芯片集成度的高低来划
分数字系统和数字器件。
数字系统与数字器件
例如:
一个大规模集成的数字存储器,它
一般只被认为是一个数字器件而非一
个数字系统。
而一个数字电子钟,虽然该数字钟
的芯片集成度并不一定很高,但它却
可被认为是一个数字系统。因为数字
钟内不仅包含有受控单元(如计数
器),也有某种控制器(如分频控制
电路、校时、预置电路等)。
应用中的数字系统芯片
数字器件是构成数字系统的“元素”或“细胞”;
标准TTL或CMOS数字集成电路(如各种门电路、计数器、寄存
器、译码器等) 是数字器件。 简单的逻辑器件是与门、或
门、非门(74LS00,74LS04等),在此基础上可实现复杂的时
序和组合逻辑功能。
几个基本概念--数字器件
焊在电路板上的数字器件
给单片机作接口控制的数字芯片
几个基本概念--可编程逻辑器件
可编程逻辑器件(PLD--Programmable Logic
Device)是一种通用的电子器件,其功能不是固定不变
的,而是可根据用户的需要而进行改变,即:可通过编程
设计的方法来定义器件的逻辑功能。这颇类似于单片机的
特性。
PLD与MCU有着基本的不同:
MCU是通过软件(指令)来实现预期的功能;
PLD是通过内部硬件布线、以硬件来实现预期的功能。所
以PLD完成逻辑功能的工作速度比MCU要快得多。
几个基本概念-- SOC 和 SOPC
近来人们已经能够在单一半导体芯片上设计、制造百万个以
上的晶体管,这种高集成度的IC芯片已经开始具备以往一个
数字系统的全部特性与功能,这就产生了现代所谓的“单片
系统”(SOC,即System On a Chip)和SOPC 。此时数字器
件已发展成为数字系统
由于单片系统集成度高、功耗低、功能强大,工作可靠,正
受到人们越来越大的重视,今后必将会有光明的发展前景。
1.2 构建数字系统的途径
1.标准化的中、小规模数字集成电路
特点:
简单易用、价格低廉,应用广泛,集成度较低,功能受限。
一般需要用较多的芯片才能构建一个数字系统,并需要进行大
量的芯片间连线,致使系统构成复杂、功耗高、可靠性偏低。
标准化的中、小规模数字集成电路是设计数字系统的基本方
法之一。
电子拔河比赛
简易电梯控制器
2位×2位十进制乘法器
数字钟(部分)
LSI--大规模集成电路(Large Scale Integration)
VLSI--超大规模集成电路(Very Large Scale Integration)
--如各种通用或嵌入式CPU、MCU(微控制器)及数字信号
处理器DSP。
2.基于LSI或VLSI的微处理器
使用CPU、MCU及DSP的系统
使用CPU、MCU及DSP构建数字系统(续)
特点:
CPU、MCU、DSP依靠执行指令(软件)可以方便的实现几
乎任意的数字逻辑功能,其应用灵活性极强。
微处理器一般需要一定的数字接口器件相配合才能有效工
作;依靠执行软件来完成数字逻辑功能的工作方法导致其
工作速度相对较慢,故在一些需要高速、实时工作的应用
场合它们的应用就受到一定的限制。
3.基于LSI或VLSI的专用集成电路ASIC
ASIC(Application Specific Integrated Circuits )——是一种为完成某种特定的电路功能而专门设计、生产的IC器件。
特点:
需要专门设计/定制,大规模集成。性能强、功耗低、工
作可靠性高、保密性高、大批量应用时成本也较低;
功能专一且不能改变,不适宜在电子产品的研发阶段予以
使用。
ASIC分类:按功能的不同可分为:数字ASIC、模拟ASIC及
混合型ASIC。
总而言之,使用ASIC进行数字系统设计需要较高的开发费
用、设计与制造周期也较长。所以ASIC只适合在大批量工
业应用的场合中使用。
4.基于LSI/VLSI的可编程逻辑器件 PLD
PLD是一种从二十世纪70年代开始发展起来的一种完全由用
户自行定义芯片逻辑功能的“通用型”数字器件。
它可以看作是半定制ASIC的一个重要分支,也是目前数字电
子技术中发展 为迅速的一个领域。
芯片厂商将其作为一种通用数字器件进行设计、生产。
用户可以在相应的EDA开发系统的支持下自行对PLD进行功能
定义与设计。
4.基于LSI/VLSI的可编程逻辑器件 PLD(续)
在这个意义上说,通用型的数字器件PLD可以归之为一种半
定制的ASIC。显然这种具有即改即用特性的PLD器件的出现,
使现代数字系统的设计与开发进入到了一种崭新的阶段。
经过用户定义与设计的PLD器件就立即变成了具有用户所要求
的特定功能的专用集成电路ASIC。如果设计有误,用户只需
修改错误,重新对芯片进行定义配置即可。
PLD数字系统的特点:
由用户自定义器件的功能、大规模集成。
设计周期短、设计风险低、应用灵活、系统功能强大、功
耗低。
用PLD来进行数字系统的开发与设计已成为现代电子设计
的一种方向与潮流。
百万门级的PLD芯片
一个由PLD为核心的SOPC系统
图像处理sopc系统
视频处理算法
1.3 可编程逻辑器件
二、简单可编程逻辑器件
三、复杂可编程逻辑器件
四、PLD器件的优点
五、PLD的发展趋势
六、主要的PLD生产厂家
一、PLD出现的背景
1、传统的数字电路设计方法
逻辑(布尔)代数是数字电路理论基础
数字电路设计的基本方法
组合电路设计问题 逻辑关系 真值表 化简(卡诺
图) 逻辑图
时序电路设计
列出原始状态转移图和表 状态优化 状态分配 触
发器选型 求解方程式 逻辑图
一、PLD出现的背景
设计方法的局限
卡诺图只适用于输入比较少的函数的化简。
采用“搭积木”的方法进行设计。必须熟悉各种中
小规模芯片的使用方法,从中挑选 合适的器
件,缺乏灵活性。
设计系统所需要的芯片种类多,且数量很大。
传统的数字电路器件
使用中、小规模器件设计电路(74、54系列与CD4000、CD4500系列)进行逻辑电路设计。
各种门电路(74LS02/04/06)
触发器(74LS74)
编码器(74LS148)
译码器(74LS154)
比较器(74LS85)
计数器(74LS193)
移位寄存器(74LS194)
………
中小规模器件的局限
电路板面积很大,芯片数量很多,功耗很大,可
靠性低-→应提高芯片的集成度。
设计比较困难-→将手工设计方法提升为计算机
辅助设计方法(使用EDA设计工具)。
电路存储、修改都麻烦-→使用EDA设计工具。
PLD器件与设计技术的出现改变了这一切!
2、PLD出现的背景
电路集成度不断提高
SSI MSI LSI VLSI
计算机技术的发展使EDA技术得到广泛应用
设计方法的发展
自下而上 自上而下
用户需要设计自己的专用电路与器件
专用集成电路(ASIC)开发周期长,投入大,风险
大。
可编程器件(PLD):开发周期短,投入小,风险小。
二、简单可编程逻辑器件
早的可编程逻辑器件就是可写入存贮器(PROM),包括:
▲可编程只读存贮器(PROM)
▲紫外线可擦除的只读存贮器(EPROM)
▲电可擦除只读存贮器(EEPROM)
由于结构的限制,这类芯片虽然能够完成一些简单的组合逻
辑电路功能,但它们一般也只作为存贮器来使用。
PROM图
1
1
1
1
1
1
Vcc
A1
A0
D3
D2
D1
D0W3W2W1W0
地址译码器
存储矩阵
EN
D3’
二极管与门作译码
A1A0=00 W0=1;A1A0=01 W1=1;A1A0=10 W2=1;A1A0=11 W3=1;
二极管或门作编码器
D3=W1+W3D2=W0+W2+W3D1= W1+W3 D0=W0+W1
D3,D2,D1,D0 分别实现四个组合逻辑函数。
二、简单可编程逻辑器件
到了20世纪70年代人们研制出了可编程逻辑器件,包括:
▲PAL (Programmable Array Logic )
可编程阵列逻辑
▲PLA (Programmable Logic Array )
可编程逻辑阵列
▲GAL(General Array Logic)
通用阵列逻辑
PAL/PLA/GAL器件的集成度一般都不超过1000门,故被称为简单
可编程逻辑器件SPLD(Simple Programmab1e Logic Device)。
二、简单可编程逻辑器件
▲PAL 可编程阵列逻辑
一般由可编程的“与阵”和固定的“或阵”组成,输出可选寄存器
锁存和直通。适合实现组合逻辑功能。
▲PLA 可编程逻辑阵列
实现逻辑功能的“与阵”和“或阵”都可编程。
电路复杂、编程设计较困难,发展缓慢,很少应用。
二、简单可编程逻辑器件
这些早期的SPLD器件的一个共同特点是可以实现速度特性良好的数字逻辑功能,是取代74系列逻辑器件的通用数字芯片。但其相对简单的电路结构也使它们只适合完成不是太复杂的数字逻辑功能。
▲GAL通用阵列逻辑
是在PAL的基础上改进设计后问世,主体仍由可编程的“与
阵”和固定的“或阵”组成,但有多种输出可选,可实现更复杂
的逻辑功能,应用设计较灵活,至今仍得到广泛应用。
一个PLD芯片:GAL16V8
三、复杂可编程逻辑器件
20世纪80年代中期美国 Altera公司和Xilinx公司分别推出了
类似于PAL结构的扩展型复杂可编程逻辑器件CPLD(Complex
Programmable Logic Dvice)和与标准门阵列结构类似的现场
可编程门阵列FPGA(Field Programmable Gate Array)。
CPLD/FPGA的集成度可做得很大(可达几万到上千万门/片),
用它可以替代几十至几千块普通的标准数字集成芯片。用这样
的CPLD/FPGA实际上就能实现一个数字系统或子系统。这种高
功能、高集成度的器件目前在世界范围都受到电子设计人员的
广泛关注和普遍欢迎。
三、复杂可编程逻辑器件
与专用ASIC芯片相比,CPLD/FPGA具有设计开发周期短、设计
制造成本低、开发工具先进、标准产品无需测试、质量稳定以
及可实时在线检验等优点,因此已广泛应用于数字系统与数字
产品的设计与生产中。几乎所有应用门阵列、ASIC、SPLD和中
小规模通用数字集成电路的场合都可应用CPLD或FPGA器件。
由于Altera公司的CPLD器件系列和Xilinx公司的FPGA器件系列
开发较早,种类较多,功能 强,因此其知名度也 高,它们
占用了较大的PLD市场分额。
一个CPLD芯片:EP1K100集成10万门;内含约100万个晶体管
管脚数目:208个
电源:
3.3V(I/O)
2.5V(内核)
速度
250MHz
内部资源
4992个逻辑单元
10万个逻辑门
49152 bit的RAM
四、PLD器件的优点
PLD集成度高,可以替代多至几千块通用IC芯片
极大减小电路的面积,降低功耗,提高可靠性
CAD技术的发展提供了完善先进的EDA开发工具
提供语言、图形、波形等设计方法,灵活、方便
通过仿真工具来验证设计的正确性,提高设计的成功
率。
可以反复地擦除、编程配置,方便进行设计修改和升级。
灵活地定义管脚功能,简化应用。
减轻设计工作量,缩短系统开发时间。
保密性好。
五、PLD的发展趋势
IP-Intelligence Property-- 指设计、生产集成芯片的硬件和软件工具与方法。
向高集成度、高速度方向进一步发展
-- 高集成度已达到1000万门
向SOPC方向发展
--可设计片内CPU、DSP及接口控制电路,构成各种嵌入式系统。
向低电压和低功耗方向发展
--5V 3.3V 2.5V 1.8V 1.5V或更低
内嵌多种功能模块
--RAM,ROM,FIFO,DSP,CPU
向数、模混合可编程方向发展
--内含ADC、DAC、PWM、PLL等
IP内核得到不断发展
--能提供更多的标准IP核
SOPC设计
六、主要的PLD生产厂家
www.altera.com大的PLD供应商之一
www.xilinx.comFPGA的发明者, 大的PLD供应商之一
www.latticesemi.comISP技术的发明者
www.actel.com提供军品及宇航级产品
Altera公司
▲世界 大的可编程逻辑器件供应商之一。主要PLD产品有:
MAX3000/7000/9000、FELX 6K/8K/10K、
ACEX1K、APEX20K、Cyclone、Stratics等系列。
其中Cyclone、Stratics系列器件是SOPC器件。
▲开发工具MaxplusII/QuartusII是一种相当成功的CPLD开发
平台。在我国高校中使用面很大。对AHDL设计有很好的支持。
但对VHDL/Verilog 的综合能力不够强,须借助其他EDA公司
的HDL综合工具才能很好的对VHDL/Verilog Hdl设计进行深
层次的设计与应用开发。
Xilinx公司
▲世界 大的可编程逻辑器件供应商之一。产品种类较全,主要
有:XC9500/4000, Spartan, Vertex,Coolrunner(XPLA3)等。
▲其开发软件为Foundition和ISE等,它们具有强大的系统设计、
综合与仿真功能。
Altera和Xilinx的CPLD/FPGA决定了PLD技术的
发展方向,这两家公司的产品占了世界PLD市场
份额约60%。
1.4 EDA技术PLD器件尤其是大规模集成的CPLD/FPGA器件的设计与应用
必须要得到电子设计自动化EDA (Electronic Design
Automation)工具软件的支持。这是PLD器件与普通数字逻辑
器件(如74/54系列TTL器件和CD4000系列CMOS器件)在应用方
法上 显著的差异。
随着数字集成电路集成度的提高,从:
SSI (小规模集成,≤100半导体元件)
MSI(中规模集成,≤1,000半导体元件)
LSI (大规模集成,≤10,000半导体元件)
VLSI(超大规模集成,>10,000半导体元件)
数字系统的设计方法,也随着同时代微电子技术和计算机
技术的不断发展而从手工电路设计走向了电子设计自动化(EDA)
设计的阶段。
EDA设计
EDA是以电子计算机为设计工具和设计平台、以电子线路硬件
描述语言HDL为主要系统描述手段,综合现代CAD(计算机辅助
设计)、CAT(计算机辅助测试)、CAE(计算机辅助工程)技
术,自动、高速的完成系统电路逻辑编译、逻辑化简、逻辑综
合、逻辑仿真、逻辑优化直至逻辑芯片版图实现,是一种自动
化电子系统与IC设计的技术和设计工具。
大规模或超大规模集成器件的开发与应用、电子系统功能的提
高,使得相应的设计和验证变得十分复杂。手工化的电子设计
已经难以开展甚至不可能进行,只有依靠计算机辅助设计,才
能进行LSI和VLSI的设计与开发。
HDL--Hardware Description Language
EDA应用
EDA主要能辅助进行3方面的系统设计与开发工作:
1、电子线路设计; (如PROTEL中的SCH设计)
2、PCB设计; (如PROTEL中的PCB设计)
3、IC设计; (如CANDENCE公司的SPW系统)
(1)普通IC设计(如74系列芯片)
(2)专用IC设计(如各种ASIC芯片)
(3)PLD应用设计(如CPLD/FPGA的应用设计)
EDA应用
没有EDA技术的支持,想要完成复杂的电子系统和大规模集成
电路的设计与制造是不可想象的,反过来,生产制造技术的不
断进步又对EDA技术提出新的要求。
没有EDA技术的发展和进步,无法有效的设计与应用现代复杂
电子系统和大规模集成电路芯片,也不会有现代电子技术的今
天。
EDA技术的迅猛发展,使得整个电子系统设计与微电子器件设
计的面貌发生了深刻改变。因此,学习和掌握电子系统的EDA
设计方法和EDA开发工具,是我们掌握现代数字系统设计技术
的必需之路。
世界 知名的专业EDA公司
1、CANDENCE公司
2、SYNOPSYS公司
3、MENTOR公司
这些专业EDA公司的产品,就是IC设计软件系统和
CPLD/FPGA开发系统。
各国的IC研究与设计企业,几乎都是使用这些公司的
EDA设计平台(软件系统)来设计他们的IC产品。包括中
科院计算所,也是用CANDENCE和SYNOPSYS公司的设计平台
来设计中国的“龙芯” CPU。
国外主要的CPLD/FPGA开发系统有:
Altera: MAX+PlusII、QuartusII
Xilinx: Foundation、Alliance
Lattice: Synario、Vantis
AMD: Micro Sim
Altec: Active CAD
Pilkington: FPAA FPMA
OrCAD: OrCAD/2000
PLD数字系统的设计步骤
设计输入
设计处理
下载编程
功能仿真
时序仿真
在线测试
设计顺序 设计验证
设计输入
原理图与HDL的关系类似于汇编语言与高级语言。
原理图输入
使用元件符号和连线等描述
比较直观,但设计大规模的数字系统时则显得繁琐
HDL语言输入
逻辑描述功能强
成为国际标准,便于移植
波形输入
根据系统信号的波形,得出产生这些波形的电路
状态图输入
根据系统状态图,得出产生满足状态图要求的电路
设计处理优化和综合
--优化:将逻辑化简,减少设计所耗用的资源
--综合:将模块化层次化设计的多个文件合并为一个网表,使设计层次平面化。
映射
--把设计分为多个适合特定器件内部逻辑资源实现的逻辑小块的形式
布局与布线
--将已分割的逻辑小块放到器件内部逻辑资源的具体位置并利用布线资源完成各功能块之间的连接
生成编程文件
--生成可供器件编程使用的数据文件
设计验证
功能仿真
--不考虑信号传输和器件的延时,得到信号的逻辑关系
波形。
时序仿真
--考虑信号传输和器件的延时后,得到信号的真实时序
逻辑关系(波形)。
(不同器件的内部延时不一样,不同的布局、布线延时
也会有比较大的不同)
在线验证
--利用实现手段测试器件 终功能和性能指标
--使所设计的器件真正在板运行,测试运行结果是否正
确。
在系统编程技术ISP-In System Program
对PLD的逻辑功能随时进行修改。甚至在板予以修改与重置。
优点:
方便硬件的调试
方便硬件版本的升级,类似于软件升级
边界扫描测试技术BST-Boundary Scan Test
据IEEE1149.1标准(JTAG标准),用于解决大规模集成电路
的测试问题。
现在新开发的可编程器件都支持边界扫描技术,并将其作
为ISP接口。
在CPLD/DSP开发和IC设计与制造中得到广泛应用。
习 题 P14
2、EDA技术中包含哪些基本内容?
5、FPGA/CPLD在ASIC设计中有什么用处?
8、使用PLD器件和使用74系列/CD4000系列器件
进行数字系统开发有何相同与不同之处?
课堂回顾
1、数字系统与数字器件
2、构建数字系统的4个途径
⑴标准逻辑电路,⑵CPU,MCU,DSP等,
⑶定制ASIC,⑷可编程逻辑器件PLD
3、为什么会发展PLD
3、为什么会发展PLD
⑴传统设计方法的局限--不宜设计复杂数字系统。
⑵中小规模器件:面积大,芯片多,功耗大,可靠性低
⑶微处理器系统:
需要一定的数字接口器件相配合才能有效工作;
工作速度相对较慢,在一些需要高速、实时工作的应用
场合受到一定的限制。
⑷专用ASIC数字系统:开发费用高、设计与制造周期长。
⑸计算机技术的发展使EDA技术得到广泛应用
⑹设计方法的发展- 自上而下的设计方法已得到了成熟应用。
⑺用PLD开发周期短,投入小,风险小。
⑻PLD可以替代多至几千块通用IC芯片,极大减小电路的面积,
降低功耗,提高可靠性。
4、简单可编程逻辑器件
到了20世纪70年代人们研制出了可编程逻辑器件,包括:
▲PAL 可编程阵列逻辑
▲PLA 可编程逻辑阵列
▲GAL 通用阵列逻辑
PAL/PLA/GAL器件的集成度一般都不超过1000门,故被称为简
单可编程逻辑器件。
早的可编程逻辑器件就是只读存贮器,包括:
PROM、EPROM、EEPROM
由于结构的限制,这类芯片虽然能够完成一些简单的组合逻
辑电路功能,但它们一般也只作为存贮器来使用。
4、PLD的发展趋势
向高集成度、高速度方向进一步发展
向SOPC方向发展
向低电压和低功耗方向发展
内嵌多种功能模块--RAM,ROM,FIFO,DSP,CPU
向数、模混合可编程方向发展--内含ADC、DAC、PWM、
PLL等
IP内核得到不断发展--能提供更多的标准IP核
原理图输入HDL语言输入波形输入状态图输入