书籍详情

CPLD系统设计技术入门与应用

CPLD系统设计技术入门与应用

作者:黄正谨[等]编著

出版社:电子工业出版社

出版时间:2002-03-01

ISBN:9787505375017

定价:¥40.00

购买这本书可以去
内容简介
  本书定位于复杂可编程逻辑器件的系统设计技术,以ALTERA公司的系列芯片和相应的开发软件为目标载体进行阐述.本书从系统设计的角度详尽地阐述了ALTERA主要系列的PLD芯片的结构和特点以及相应的开发软件MAX+PlusII和Quartus的使用.同时,本书以大量新颖而详尽的设计实例为基础,着重描述了数字系统设计的系统级设计方法,并且从数字系统设计的完整性的角度对数字系统设计的重要性,数字系统的可测性和数字系统的可靠设计作了初步的探讨.本书不仅可作为相关专业的各个层次的学生,教师的参考书与实验指导书,同时也可作硬件系统设计人员掌握最新技术的实用参考书.序言众所周知,电子系统的集成化,不仅可使系统的体积小、重量轻且功耗低,更重要的是可使系统的可靠性大大提高。因此自集成电路问世以来,集成规模便以10倍/6年的速度增长。从20世纪90年代初以来,电子系统日趋数字化、复杂化和大规模集成化。由于个人电脑、无绳电话和高速数据传输设备的发展需求,电子厂商们越加迫切地追求电子产品的高功能、优品质、低成本、微功耗和微小封装尺寸。为达此目标,必须采用少量的IC器件和面积尽可能小的PCB板研制高集成化的复杂系统,这些要求进一步促进集成工艺的发展。1999年,以0.18微米工艺为基础的百万门器件已经出现,预计在2002年和2005年,集成?ひ战直鸫锏?0.13微米和0.1微米。深亚微米半导体工艺、B表面安装技术的发展又支持了产品的集成化程度的进步,使电子产品进入了片上系统(SOC,SystemOnChip)时代。所谓片上系统的设计,是将电路设计、系统设计、硬件设计、软件设计和体系结构设计集合于一体的设计。这样复杂的设计通常需要很多人、经过多年研究开发方能实现,不依靠计算机的帮助是无法在短期完成的。图0-1产品的利润与其上市时间的关系另一方面,电子产品设计周期短和上市快也是电子厂商们坚持不懈的追求。图0-1表明了产品上市时间与其利润之间的关系。一个产品从开始上市到其从市场上被淘汰为止,其销售情况是一个三角形。这个三角形的面积便是此产品的总的利润,如果产品上市晚了,如图中t2时间较t1时间晚了时间Δ,则从t2开始的三角形的面积比从t1开始的三角形的面积将小得多,也就是所获得的总利润将小得多。这说明,一个企业如果能够比其竞争对手更快地推出新产品,更快地对市场作出反应,即可获取更大的市场份额和更大的利润。电子设计自动化(EDA,ElectronicsDesignAutomation),即用计算机帮助设计人员完成繁琐的设计工作,是解决以上两个问题的惟一途径。电子设计自动化在不同的时期有不同的内容。在20世纪70年代表现为计算机辅助设计(CAD),即将电子设计中涉及到的许多计算用计算机程序实现。在20世纪80年代表现为计算机辅助工程(CAE),主要体现在一些绘图软件出现,减轻了设计人员的劳动。从20世纪80年代末开始,设计复杂程度越来越高,EDA的主要内容逐步转变为电子系统设计自动化(ESDA)。现在数字系统的EDA可以直接根据设计要求,以自顶至底的方式设计,并相应地完成系统描述、仿真、集成和验证等环节,直到最后生成所需要的器件。在以上过程中,除系统级设计和行为级描述及对功能的描述以外均可由计算机自动完成。也就是说,设计人员借助开发软件的帮助,可以将设计过程中的许多细节问题抛开,而将注意力集中在产品的总体开发上。这样大大减轻了工作人员的工作量,提高了设计效率,减少了以往复杂的工序,缩短了开发周期,实现了真正意义上的电子设计自动化。这个变化是伴随着片上系统的设计出现的,因此有人将EDA转向片上系统看作是一次关于系统设计的革命。对电子系统设计自动化而言,现代设计方法和现代测试方法是至关重要的。当前,EDA包含单片机、ASIC(专用集成电路)和DSP(数字信号处理)等主要方向。无论哪一种方向,都需要一个功能齐全、处理方法先进、使用方便和高效的开发系统。目前世界上一些大型EDA软件公司已开发了一些著名的软件,如orCAD、Cadence、PSPICE(以及由其衍生出的软件ElectronicWorkBench)和Viewlogic(现在为INNOVEDA)等,各大半导体器件公司为了推动其生产的芯片的应用,也推出了一些开发软件,如Lattice公司的Synario,ALTERA公司的Max+plusII,Xilinx公司的Fundation等。随着新器件和新工艺的出现,这些开发软件也在不断更新或升级,如Lattice公司的Synario和ALTERA公司的Max+plusII将分别被Expert和Quatues所代替。软件系统变化如此之快,使得几年前出版的有关书籍,特别是教材,已经不能完全适用于现在的器件和开发系统的现状。每个开发系统都有自己的描述语言,为了便于各系统之间的兼容,IEEE公布了几种标准语言,最常用的有VHDL和Verilog。VHDL是美国国防部于20世纪80年代初推出,其全称是VeryHighSpeedIntegratedCircuitHDL,即超高速集成电路硬件描述语言,该语言曾于1987年和1993年两次被定为IEEE的标准;Verilog语言原是美国GatewayDesignAutomation公司于20世纪80年代开发的逻辑模拟器Verilog-XL所使用的硬件描述语言。1989年Cadence公司收购该公司后于1990年公开以VerilogHDL名称发表,并成立了OVI(OpenVerilogInternational)组织负责该语言的发展。由于该语言的优越性,各大半导体器件公司纷纷采用它作为开发本公司产品的工具。IEEE也于1995年将其定为协会的标准,即IEEE1364-1995,这两种语言已成为从事EDA的电子工程师必须掌握的工具。与开发工具同样重要的是器件,就ASIC方向而言,所使用的集成方式有全定制、半定制和可编程逻辑器件等。可编程逻辑器件(PLD)与全定制和半定制不同,它按标准器件生产,芯片工厂因此可以获得规模生产效益。而用户则可以通过编程PLD器件以实现特殊的应用,从而获得ASIC产品的功能。换言之,PLD将控制功能交给用户,用户在用PLD器件研发产品时即获得了这种控制功能。CPLD和FPGA较全定制和半定制方法具有更多的灵活性——既适用于短研制周期、小批量产品开发,也可用于大批量产品的样品研制,且项目开发前期费用低,开发时间短,有利于新产品占领市场,是目前ASIC设计所使用的最主要的方法。有人认为,可编程逻辑器件(PLD)不仅近年来受到系统设计者的青睐,而且在半导体领域中呈现出一支独秀的增长态势,成为系统级平台设计的首选。随着PLD器件向更高速、更高集成度、更强功能和更灵活的方向发展,将来也仍然是掩膜式专用集成电路(全定制与半定制方式)有力的竞争者。CPLD和FPGA普及的另一个重要原因是IP(知识产权)越来越被高度重视,带有IP内核的功能块在ASIC设计平台上的应用日益广泛。越来越多的设计人员,采用设计重用,将系统设计模块化,为设计带来了快捷和方便。并可以使每个设计人员充分利用软件代码,提高开发效率,减少应市时间,降低研发费用,缩短研发周期,降低风险。这是研究EDA技术必须关注的问题。本丛书的宗旨为读者介绍当前我国最流行的几种EDA软件以及CPLD和FPGA的原理和应用,其中包括通用设计软件Protel,电路设计软件OrCAD,电路设计软件Multisim(原ElectronicWorkbench6.0以上版本),系统模拟软件Systemview和CPLD开发软件Max+plusII(Quatues),FPGA开发软件Fundation,ispLSI开发软件Expert(Synario)等。在介绍这些EDA软件时,既不像大部分教科书那样只简要介绍它们的基本规则和有关器件的基本原理(这种介绍只适用于对初学者的训练,对生产科研的实际应用则不能完全适应);也不像使用手册那样洋洋大篇,难以快速掌握;更不像公司宣传用的资料那样过多地介绍自己的产品,缺乏可读性。而是从教会读者基本使用方法开始,通过各种实例,由浅入深地介绍其应用(在3个介绍开发软件的著作中还按以用为本的原则对有关的器件和VHDL语言作了必要的阐述)。丛书作者都是有一定教学和科研实践经验的教师,清楚如何启发读者快速地掌握软件的精要,各本书中也不同程度地反映了作者教学和科研实践中的宝贵经验,其中很多是在教科书和使用手册中见不到的(例如对VHDL的应用,教科书上介绍的只是通用的规则,本丛书则是介绍针对某个开发系统中适用的规则)。尤其介绍了若干较大型的设计实例,直至对IP的简单应用。读者可以从入门开始,经过由浅入深的训练,逐步达到精通的境界。黄正瑾于东南大学2001年12月
作者简介
暂缺《CPLD系统设计技术入门与应用》作者简介
目录
第一篇 CPLD概述
第1章 CPLD与FPGA 
1.1 CPLD的基本结构与发展概况 
1.1.1 SPLD的基本结构 
1.1.2 CPLD的结构特点 
1.1.3 CPLD的编程工艺 
1.2 FPGA的基本结构与发展概况 
1.2.1 门阵列简介 
1.2.2 FPGA的基本结构 
1.2.3 FPGA的编程 
1.3 CPLD和FPGA的新概念 
1.3.1 CPLD的在系统编程技术 
1.3.2 片内存储器和其他片内逻辑 
1.3.3 低电压、低功耗系列芯片 
1.3.4 IP的使用和嵌入式模块 
1.3.5 混合编程技术 
1.4 CPLD和FPGA的选用 
1.4.1 逻辑单元 
1.4.2 互连 
1.4.3 编程工艺 
第2章 ALTERA系列CPLD 
2.1 ALTERA系列CPLD和FPGA简介 
2.1.1 可编程片上系统解决方案 
2.1.2 APEX系列器件 
2.1.3 FLEX系列器件 
2.1.4 MAX系列器件 
2.1.5 ACEX系列器件 
2.1.6 配置器件 
2.2 ALTERA系列CPLD和FPGA的结构 
2.2.1 Classic系列 
2.2.2 MAX系列 
2.2.3 FLEX系列 
2.2.4 ACEX系列 
2.2.5 APEX系列 
2.2.6 小结 
第3章 ALTERA系列CPLD的特点及使用 
3.1 ALTERA系列库和IP核 
3.1.1 IP核 
3.1.2 LPM 
3.2 器件编程与配置 
3.2.1 编程硬件 
3.2.2 编程/配置模式 
第二篇 VHDL编程技术
第4章 VHDL基本结构与语法 
4.1 VHDL程序基本结构 
4.1.1 实体 
4.1.2 结构体 
4.2 VHDL语言要素 
4.2.1 标识符 
4.2.2 数据对象 
4.2.3 数据类型 
4.2.4 运算符 
4.2.5 VHDL的属性 
4.3 VHDL基本描述方法 
4.3.1 顺序语句 
4.3.2 并行语句 
4.4 常用电路描述 
4.4.1 加法器(全加器、BCD码加法器) 
4.4.2 译码器 
4.4.3 编码器 
4.4.4 比较器 
4.4.5 数据选择器 
4.4.6 奇偶校验电路 
4.4.7 三态输出电路 
4.4.8 同步化电路 
4.4.9 移位寄存器 
4.4.10 M=60的计数器 
4.4.11 堆栈(stack) 
第5章 VHDL程序设计进阶 
5.1 库、程序包、子程序和子程序重载 
5.1.1 库 
5.1.2 程序包 
5.1.3 子程序 
5.1.4 子程序重载 
5.1.5 决断函数 
5.2 结构VHDL 
5.2.1 元件及元件例化 
5.2.2 配置 
5.3 有限状态机 
第6章 逻辑综合和实现 
6.1 可综合的VHDL设计特点 
6.1.1 编码提示 
6.1.2 设计要点 
6.2 SYNOPSYS综合过程 
6.2.1 概述 
6.2.2 行为级综合的概念 
6.2.3 行为级描述的局限性 
6.2.4 示例 
6.2.5 Synopsys行为综合工具 
第三篇 软件操作
第7章 MAX+plusII基本操作 
7.1 MAX+plusII概述 
7.1.1 MAX+plusII10.0(Baseline)的功能 
7.1.2 系统要求 
7.2 MAX+plusII10.0的安装 
7.2.1 MAX+plusII10.0的安装 
7.2.2 MAX+plusII10.0的第一次运行 
7.3 MAX+plusII的设计过程 
7.4 图形输入的设计过程 
7.4.1 项目建立与图形输入 
7.4.2 项目编译 
7.4.3 项目检验 
7.4.4 目标器件选择与管脚锁定 
7.4.5 器件编程/配置 
7.5 工具条和常用菜单选项说明 
7.6 图形的层次化设计及BUS使用 
7.6.1 层次化设计 
7.6.2 BUS使用 
7.7 语言描述输入法 
7.8 混合设计输入 
7.9 使用LPM及FLEX10K中的RAM 
7.9.1 LPM(可调参数元件)的使用 
7.9.2 FLEX10K中RAM的使用 
7.10 常见错误及处理方法 
第8章 MAX+plusII设计进阶 
8.1 项目层次结构与文件系统 
8.1.1 项目层次结构 
8.1.2 文件系统 
8.2 功能库和IP核的使用 
第9章 设计综合与器件配置 
9.1 设计综合选择项 
9.1.1 器件选择,资源和探测分配 
9.1.2 反向注释 
9.1.3 全局项目器件选择项 
9.1.4 全局项目参数 
9.1.5 全局项目定时要求 
9.1.6 全局项目逻辑综合 
9.2 器件配置 
9.2.1 简介 
9.2.2 使用Flash Memory配置PLD 
第10章 Quartus II设计流程 
10.1 Quartus II软件概述及安装 
10.1.1 Quartus II概述 
10.1.2 Quartus II的功能 
10.1.3 系统安装要求 
10.1.4 Quartus II软件安装 
10.2 设计输入 
10.3 设计编译 
10.4 设计定时分析 
10.5 设计仿真 
10.6 器件编程 
第四篇 数字系统设计方法及范例
第11章 数字系统设计方法 
11.1 数字系统基本结构与模型 
11.1.1 数字系统的基本概念 
11.1.2 数字系统的基本模型 
11.2 数字系统设计方法论 
11.2.1 自顶向下设计方法 
11.2.2 设计验证 
11.3 自顶向下的设计方法 
11.3.1 分离的控制器和体系结构 
11.3.2 锤炼体系结构和控制算法 
第12章 数字系统设计的重用性、可测性和可靠性 
12.1 数字系统设计的重用性 
12.1.1 概述 
12.1.2 针对FPGA的系统级重用要点 
12.1.3 编码和综合技巧 
12.1.4 验证策略 
12.2 数字系统设计的可测性 
12.2.1 简介 
12.2.2 IEEE Std.1149.1 BST架构 
12.2.3 IEEE Std.1149.1边界扫描寄存器 
12.3 数字系统设计的可靠性 
12.3.1 故障容错技术 
12.3.2 编码检错技术 
12.3.3 自检测试设计 
12.3.4 电路的故障安全性和可自检性 
12.3.5 事故安全设计 
12.3.6 软件容错技术 
第13章 测试平台的建立 
13.1 概述 
13.1.1 测试平台的逻辑结构 
13.1.2 不同级别的测试平台 
13.1.3 测试平台的优点 
13.1.4 测试平台的建立方法 
13.1.5 TextIO相关定义 
13.2 建立测试平台 
13.2.1 源代码 
13.2.2 测试平台的代码 
13.2.3 测试向量文件 
13.2.4 测试结果 
第14章 数字系统设计开发平台及范例 
14.1 设计开发系统、平台简介 
14.2 设计范例 
14.2.1 设计实例一:自适应数字频率计 
14.2.2 设计实例二:直接数字频率合成信号发生器(DDS)设计 
14.2.3 设计实例三:CPU设计 
14.3 展望 
参考文献
猜您喜欢

读书导航