490 likes | 780 Views
可编程逻辑器件讲义. 第 1 讲 概 述. 本讲主要内容. EDA 基本概念(概述) EDA 设计流程及其工具 PLD 器件简介. 1 、 EDA 基本概念. EDA? ( Electronic Design Automation ) EDA 技术发展的两个要素: 集成电路制作工艺的发展(集成度) 计算机技术的发展(软件开发平台). EDA 技术. ASIC 设计. 数字 ASIC. 门阵列( MPGA ) 标准单元( CBIC ) 全定制( ASIC ) ASIC 设计. FPGA/CPLD 可编程 ASIC 设计. 混合 ASIC
E N D
可编程逻辑器件讲义 第1讲 概 述
本讲主要内容 • EDA基本概念(概述) • EDA设计流程及其工具 • PLD器件简介
1、EDA基本概念 • EDA? (Electronic Design Automation) • EDA技术发展的两个要素: • 集成电路制作工艺的发展(集成度) • 计算机技术的发展(软件开发平台)
EDA技术 ASIC设计 数字ASIC 门阵列(MPGA) 标准单元(CBIC) 全定制(ASIC) ASIC设计 FPGA/CPLD 可编程ASIC 设计 混合 ASIC 设计 1、EDA基本概念 • EDA技术实现目标: 最终设计形成一个专用集成电路(ASIC)
1、EDA基本概念 • 硬件描述语言(HDL) • VHDL:VHSIC(Very High Speed Integrated Circuit)Hardware Description Language • 具有很强的电路描述和建模能力 • 具有与具体硬件电路无关和与设计平台无关的特性 • 具有良好的电路行为描述和系统描述的能力 • 其它HDL语言: ABEL、Verilog、AHDL、System C
C、ASM… 程序 CPU指令/数据代码: 010010 100010 1100 软件程序编译器 COMPILER 1、EDA基本概念 • HDL与软件语言综合流程比较 • 软件语言设计目标流程
硬件描述语言综合SYNTHESIZER 硬件描述语言综合SYNTHESIZER VHDL/ VERILOG程序 为ASIC设计提供的电路网表文件 1、EDA基本概念 • HDL与软件语言综合流程比较 • HDL设计目标流程
VHDL 程序 VHDL 综合器 工艺库 约束 图表 1、EDA基本概念 • VHDL综合运行流程
设计说明书 前端功能仿真 结构综合 VHDL行为模型 逻辑综合 门级时序仿真 VHDL行为仿真 测试向量生成 硬件测试 VHDL-RTL级建模 功能仿真 设计完成 1、EDA基本概念 • 基于VHDL的自顶向下设计方法
1、EDA基本概念 • EDA技术的发展趋势 • 大规模(集成度) • 促使EDA工具和IP应用 • 嵌入式系统设计
2、 EDA设计流程及其工具 • PLD开发流程
ASIC 混合 ASIC 模拟 ASIC 数字 ASIC 2、 EDA设计流程及其工具 • ASIC及其设计流程
ASIC设计方法 全定制法 半定制法 标准单元法 可编程逻辑器件法 门阵列法 2、 EDA设计流程及其工具 • ASIC及其设计流程
2、 EDA设计流程及其工具 • 常用EDA工具 • 设计输入编辑器 • HDL综合器 • 仿真器 • 适配器 • 下载器
Analysis & Synthesis (分析与综合) Fitter (适配器) Assembler (编程文件汇编) 图形或 HDL编辑 编程器 Timing Analyzer (时序分析器) 下载 设计输入 综合或编译 适配器 仿真 2、 EDA设计流程及其工具 • QuartusII简介
软IP 固IP 硬IP 2、 EDA设计流程及其工具 • IP核简介
3、 PLD器件简介 • PLD? PLD(Programmable Logic Devices) • 半定制 • 计算机软件开发平台(EDA) • 构建数字(模拟)系统
组合电路 门电路 数字电路 时序电路 触发器 输 入 输入 缓冲 电路 与 阵 列 或 阵 列 输出 缓冲 电路 输 出 3、 PLD器件简介 最小项之积 与或关系 • PLD的早期结构
PROM (Programmable Read Only Memory) PLA (Programmable Logic Array) PAL (Programmable Array Logic) GAL (Generic Array Logic) EPLD CPLD FPGA 3、 PLD器件简介 • PLD的发展历程
可编程逻辑器件(PLD) 简单 PLD 复杂 PLD PROM PLA PAL GAL CPLD FPGA 3、 PLD器件简介 • PLD的分类(按密度)
3、 PLD器件简介 • PLD的分类(按结构) • 基于可编程与或阵列结构 PROM,PLA,PAL,GAL,CPLD • 基于查找表LUT(Look Up Table)结构 FPGA
3、 PLD器件简介 • PLD中电路符号表示 PLD的互补缓冲器 PLD的互补输入 PLD中与阵列表示
3、 PLD器件简介 • PLD中电路符号表示 PLD中或阵列的表示 阵列线连接表示
3、 PLD器件简介 • PLD早期低密度器件 • PROM
PROM的逻辑阵列结构 3、 PLD器件简介 • PLD早期低密度器件 • PROM
PROM表达的 PLD阵列图 3、 PLD器件简介 • PLD早期低密度器件 • PROM
PLA逻辑阵 列示意图 3、 PLD器件简介 或阵列利用率不高 • PLD早期低密度器件 • PLA (可编辑逻辑阵列)
PAL结构 3、 PLD器件简介 • PLD早期低密度器件 • PAL (可编辑阵列逻辑)
一种PAL16V8的部分结构图 3、 PLD器件简介 • PLD早期低密度器件 • PAL (可编辑阵列逻辑)
在PAL基础上引入OLMC(输出逻辑宏单元) 3、 PLD器件简介 • PLD早期低密度器件 • GAL (通用阵列逻辑)
ALTERA公司MAX7128S (与或阵列结构) 3、 PLD器件简介 1个LAB中包含16个宏单元 • PLD高密度器件 • CPLD(复杂的可编程逻辑器件)
MAX7000单个宏单元结构 扩展乘积项 3、 PLD器件简介 5个乘积项,更复杂的输出怎么办? • PLD高密度器件 • CPLD
共享扩展 乘积项结构 3、 PLD器件简介 • PLD高密度器件 • CPLD 扩展乘积项
并联扩展项 馈送方式 3、 PLD器件简介 • PLD高密度器件 • CPLD 扩展乘积项
3、 PLD器件简介 可编程连线阵列 IO控制单元 • PLD高密度器件 • CPLD ALTERA公司MAX7128S (与或阵列结构)
Cyclone/CycloneII系列器件的结构 3、 PLD器件简介 • PLD高密度器件 • FPGA(现场可编程门阵列)
Cyclone LAB结构 3、 PLD器件简介 • PLD高密度器件 • FPGA 逻辑单元
Cyclone 系列LE结构图 3、 PLD器件简介 进位链,运算模式下快速进位 • PLD高密度器件 • FPGA 查找表(Look UP Table) 可以配置成普通模式或动态运算模式
LUT实现逻辑功能示意图 3、 PLD器件简介 • PLD高密度器件 • FPGA
Cyclone/CycloneII系列器件的结构 3、 PLD器件简介 嵌入式存储器,实现数据存储结构RAM,FIFO等 • PLD高密度器件 • FPGA 支持多种IO标准:LVDS,LVTTL等 注意:cyclone系列器件的 内核电压和IO电压是分开 供电的
3、 PLD器件简介 • PLD的主要生产厂商 • ALTERA公司 • CycloneI/II,FLEX,MAX(CPLD) • StritixI/II,ACEX • IP核(DSP,通信编解码,接口,处理器等) • XILINX公司 • LATTICE公司
3、 PLD器件简介 • PLD的编程与配置 • PLD器件的编程工艺 • 基于电可擦除存储单元的EEPROM或Flash技术,CPLD器件一般采用此工艺,掉电后编程信息不丢失。 • 基于SRAM查找表的编程单元,大部分FPGA器件采用此编程工艺,编程信息掉电后丢失,此类器件的编程也称为配置。 • 基于反熔丝编程单元,属于一次性可编程,早期FPGA器件。
CPLD(MAX系列)器件用JTAG编程下载电路(通过电脑25针打印机口下载) 3、 PLD器件简介 • PLD的编程与配置 • Altera常用器件的编程配置电路 • CPLD(MAX系列)
3、 PLD器件简介 Cyclone器件的AS(主动串行)和JTAG配置电路:JTAG接口直接将编程信息配置到Cyclone器件中,但掉电丢失,主要用于调试阶段;AS模式编程信息先烧入到专用配置芯片(EPCS*)中,每次上电信息再配置到Cyclone器件中,写入EPCS中的信息是掉电不丢失的。注意:MSEL1和MSEL0接为低电平,即“00”。 • PLD的编程与配置 • Altera常用器件的编程配置电路 • CPLD(MAX系列) • Cyclone系列FPGA器件的配置下载电路 • AS方式和JTAG JTAG模式10针口 AS模式10针口
3、 PLD器件简介 • PLD的编程与配置 • Altera常用器件的编程配置电路 • CPLD(MAX系列) • Cyclone系列FPGA器件的配置下载电路 • AS模式和JTAG模式 • PS模式 Cyclone器件的PS(被动串行)模式配置电路:利用Cyclone的专用配置引脚完成下载,由于直接配置进Cyclone芯片,信息掉电丢失。注意:MSEL1和MSEL0接为 “10”。
3、 PLD器件简介 • PLD的编程与配置 • ByteblasterII下载线的制作
3、 PLD器件简介 • PLD的编程与配置 • ByteblasterII下载线的制作 • 不同下载方式下10针头与FPGA(cylone)引脚对应关系
3、 PLD器件简介 74HC244 • PLD的编程与配置 • ByteblasterII下载线的制作 • 不同下载方式下10针头与FPGA(cylone)引脚对应关系 • 10针关与25针并口连接关系
练习题 • P12 1-2、1-5 • P26 2-5 • P63 3-2、3-3、3-4、3-6、3-7