cpld-数字系统设计课件

上传人:F****n 文档编号:88134390 上传时间:2019-04-19 格式:PPT 页数:95 大小:2.09MB
返回 下载 相关 举报
cpld-数字系统设计课件_第1页
第1页 / 共95页
cpld-数字系统设计课件_第2页
第2页 / 共95页
cpld-数字系统设计课件_第3页
第3页 / 共95页
cpld-数字系统设计课件_第4页
第4页 / 共95页
cpld-数字系统设计课件_第5页
第5页 / 共95页
点击查看更多>>
资源描述

《cpld-数字系统设计课件》由会员分享,可在线阅读,更多相关《cpld-数字系统设计课件(95页珍藏版)》请在金锄头文库上搜索。

1、基于PLD的数字系统设计,1.PLD的分类,集成度,低密度: PROM,PLA,PAL,GAL,高密度:CPLD,FPGA,结构特点,阵列型的PLD器件(与或阵列): PROM,PLA,PAL,GAL及 绝大多数CPLD,单元型的PLD器件(逻辑单元):FPGA,按编程次数分类,按不同的编程元件和编程工艺划分,编程特性,GAL结构与PAL类 似:与阵列可编程改写; 与PAL的不同的是:PAL的输出口为定型为缓冲器/驱动器,GAL的输出单元为输出逻辑宏单元(OLMC),其结构和功能可由用户改写。,2、PLD的结构:,(1) PLD的基本结构,输入缓冲电路,输出缓冲电路,或阵列,与阵列,任何组合逻

2、辑电路均可化为“与或”表达式,用“与门或门”二级电路实现。 任何时序电路又都是由组合电路加上存储元件(触发器)构成的。,(2)基于乘积项的CPLD的基本结构,这种CPLD主要包括三块结构: 逻辑阵列块(LAB):由若干个宏单元(Marocell) 组成,是CPLD内部最基本的结构 可编程连线(PIA) I/O控制块,CPLD中的宏单元,乘积项阵列,实际就是一个与或阵列,每一个交叉点都是一个可编程熔丝,如果导通就是实现“与”逻辑。后面的乘积项选择矩阵是一个“或”阵列。两者一起完成组合逻辑。,可编程D触发器,它的时钟,清零输入都可以编程选择,可以使用专用的全局清零和全局时钟,也可以使用内部逻辑(乘

3、积项阵列)产生的时钟和清零。如果不需要触发器,也可以将此触发器旁路,信号直接输给PIA或输出到I/O脚。,(3)基于查找表(LUT)的FPGA的结构,A: 查找表( Look-Up-Table) 例:LUT实现的四输入与门,本质上就是一个RAM FPGA中多使用4输入的LUT,所以每一个LUT可以看成一个有4位地址线的16x1的RAM,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,1,输入 A 输入 B 输入C 输入D,查找表 输出,实际的16x1RAM结构,多路选择器,FLEX10K系列器件:,LAB:,逻辑单元LE,进位链连通LAB中的所有LE,两种不同的级联方式,连续布线

4、( Altera 基于查找表(LUT)的 FPGA ),FPGA/CPLD生产商,LATTICE VANTIS (AMD),ispLSI系列:1K、2K、3K、5K、8K ispLSI1016 、ispLSI2032、 ispLSI1032E、ispLSI3256A MACH系列 ispPAC系列:,其他PLD公司: ACTEL公司: ACT1/2/3、40MX ATMEL公司:ATF1500AS系列、40MX CYPRESS公司 QUIKLOGIC公司,CPLD,SO MUCH IC!,FPGA CPLD,3、CPLD和FPGA的性能对比,(1) 适合结构 CPLD是 “逻辑丰富” 型的,更

5、适合完成各种算法和组合逻辑, FPGA 是 “时序丰富” 型的,更适合于完成时序逻辑。 原因: CPLD 的一个宏单元可以分解十几个甚至 2030 个组合逻辑输入。而 FPGA 的1 个LUT只能处理4 输入的组合逻辑CPLD 适合用于设计译码等复杂组合逻辑。但 FPGA 的制造工艺确定了 FPGA 芯片中包含的LUT和触发器的数量非常多,集成度更高,而 PLD 一般只能做到512 个逻辑单元,所以如果设计中使用到大量触发器,例如设计一个复杂的时序逻辑,就使用 FPGA。,(2) 运行速度,CPLD优于 FPGA。 因为: CPLD 是逻辑块级编程,且其逻辑块互连是集总式的, CPLD 通过修

6、改具有固定内连电路的逻辑功能来编程;而 FPGA 是门级编程,且LAB 之间是采用分布式互连, FPGA 主要通过改变内部连线的布线来编程。 同时,由于 CPLD 有专用连线每个宏单元相连,信号到每个宏单元的延时相同并且延时最短。因此CPLD 比 FPGA 有较大的时间可预测性,产品可以给出引脚到引脚的最大延迟时间。,(3) 编程方式,目前的CPLD主要是基于 E2PROM或 FLASH存储器编程,编程次数达 1 万次,其优点是在系统断电后,编程信息不丢失,且无需外部存储器芯片,使用简单。CPLD又可分为在编程器上编程和在系统编程( In System Programma2ble , ISP)

7、两种。ISP器件的优点是不需要编程器,可先将器件装焊于印制板,再经过编程电缆进行编程,编程、 调试和维护都很方便。 FPGA大部分是基于 SRAM编程其优点是可进行任意次数的编程,并可在工作中快速编程,实现板级和系统级的动态配置,因此可称为可重配置硬件。其缺点是编程信息需存放在外部存储器上,每次上电时,需从器件的外部存储器或计算机中将编程数据写入 SRAM中,使用方法复杂,且编程数据信息在系统断电时丢失。,4、 CPLD和FPGA的编程与配置,根据器件的不同结构 ,基于电可擦除存储单元的 EEPROM或 Flash技术的 CPLD的在系统下载称为编程( Program) ,而把基于 SRAM

8、查找表结构的FPGA的在系统下载称为配置(Configure),此接口既可作编 程下载口,也可作 JTAG接口,(1) ALTERA 的 ByteBlaster并行下载方式,ByteBlaster支持两种数据下载模式:,被动串行同步(PS)方式 :可对 ACEX1K, F LEX10K,F LEX6000和 F LEX8000 等器件进行配置; JTAG方式 :具有电路边界扫描测试功能。可对 FLEX10K 系列器件进行配置以及对MAX9000 , MAX7000S 和 MAX7000A 等系列器件进行在线编程。下载时再结合 Altera 提供的仿真软件Max + plus II或者 Quar

9、tus 就可以进行编程与配置。,ISP功能提高设计和应用的灵活性,减少对器件的触摸和损伤 不计较器件的封装形式,允许一般的存储 样机制造方便 支持生产和测试流程中的修改,允许现场硬件升级 迅速方便地提升功能,未编程前先焊接安装,系统内编程-ISP,在系统现场重编程修改,ByteBlaster程序下载接口,DCLK(时钟信号) CONF DONE (配置控制) , nCONFIG(配置控制) , nSTATUS(配置状态) , DATA0(到器件的数据),TCK(时钟信号) ; TDO(来自器件的数据) ; TMS (JTAG状态机控制) ; TDI(到器件的数据),JTAG模式下对CPLD(M

10、AX7000AE)器件进行编程,多CPLD的ISP方式编程,PS方式下对 FLEX10K器件进行配置,电缆VCC为+5V,不会对3.3V被编程器件造成损坏,多FPGA芯片配置电路,(2) 用专用配置器件配置 FPGA,FPGA 器件有两种配置下载方式: 主动配置方式: 由 FPG A器件引导配置操作过程 ,它控制着外部存储器和初始化过程 被动配置方式: 由外部计算机或控制器控制配置过程。 FPG A 在正常工作时 ,它的配置数据存储在 SRAM中。由于 SRAM的易失性 ,每次加电时 ,配置数据都必须重新下载。 实验系统中 ,通常采用外部计算机或控制器进行调试 , 可使用被动配置方式。当数字系

11、统设计完毕需要正式投入使用时 , FPG A将主动从外围专用存储芯片中获得配置数据。FPG A 上电自动配置可采用EPROM,专用的配置器件或 FlashROM等等。,专用专用配置器件配置 FPG A,(3) 单片机配置FPGA,PS模式配置时序,2us,60us,5s,5、设计实例:多路音频采集系统,(1) 设计要求: 四路模拟音源的同时实时采集。模拟音源可以是麦克风输出或其它音频设备的模拟音频输出。 模拟信号的数字化。系统先将模拟信号数字化后,再通过网络发送。 采样率:44.1kHz。 采样精度:16位。 AGC(自动增益控制)功能。 提供至少1KB数据缓冲。,(2) 系统设计及方案选择,

12、需考虑的因素,前置放大器(AIC31)的配置问题;(MCU) A/D变换器的时钟供给问题;(CPLD) 数据存储方式: Big endian: 低字节放低地址,高字节放高地址。直观的字节序 Little Endian:符合人类思维的字节序 数据缓冲区的大小(4x1K)及缓冲方案: FIFO:数据从一侧流入,另一侧流出。FIFO 具有两套数据线而无地址线。 高速SRAM切换:用两片SRAM构成,在某一时刻, CPLD和DS80C400分时轮流对读写。总线切换电路复杂。 双口 RAM :双口 RAM 具有两套独立的数据、地址和控制总线,可从两个端口同时读写而互不干扰,地址分配问题,CPLD功能块划

13、分:,检测来自微控制器的启动/停止信号; 产生对微控制器的中断信号; 并控制状态LED。,为AIC31提供时钟信号, 接收自AIC31的串行数字音频数据, 音频信号的串并转换, 并行音频数据的RAM 存储。,产生写RAM的时序, 生成写地址; 接收ADC接口传送的数据,并执行RAM写操作,(3) CPLD接口设计,微控制器接口模块,ADC 接口模块,AIC31的时序,接口图,端口描述,RAM控制模块(ram_control),RAM写时序,(4) 程序设计,A: uc_interface: 模块功能(每个功能对应一个线程) 延时st_uc 延迟full信号 生成irq _uc 信号 生成sys

14、_en信号 生成led工作指示信号,library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity uc_interface is Port ( reset : in std_logic; clk : in std_logic; st_uc : in std_logic; sys_en : out std_logic; full : in std_logic; irq _uc : out std_logic; led: out sta

15、_logic; ) end ad_interface; architecture Behavioral of ad_interface is 此处定义信号 常量 begin,延时st_uc,st_uc,clk,st_d1,st_d2,st_d0,CPLD,st_d0,st_d1,st_d2,&,st_d0,st_d1,st_d2,1,st_or,st_and,process (reset , clk ) -延时 st_uc begin if reset = RESET_ACTIVE then st_uc_d0 = 1; st_uc_d1 = 1; st_uc_d2 = 1; elseif clkevent and clk = 1 then st_uc_d0 = st_uc; st_uc_d1 = st_uc_d0; st_uc_d2 = st_uc_d1; endif end p

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号