电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

可编程逻辑器件

来源:文库作者:开心麻花2025-09-231

可编程逻辑器件(精选7篇)

可编程逻辑器件 第1篇

可编程逻辑器件 (PLD) 起源于上世纪80年代 (如图1) , Signetics、Raytheon、GE、National Semiconductor、AMI和MMI公司是最早推出PLD的企业。但是, 直到1984~1985年, 当今对FPGA (现场可编程门阵列) 影响最大的四家PLD企业Altera、Actel、Xilinx和Lattice纷纷诞生, 它们的共同特点是:是PLD芯片的专业供应商, 是新型的Fabless (无半导体生产线公司) 。一开始CPLD (复杂可编程逻辑器件) 十分盛行, 上世纪90年代左右, FPGA开始后来居上, 目前CPLD以低功耗只在便携式产品和较低密度的PLD领域使用。

FPGA最开始用于胶粘逻辑 (如图2) , 是各种ASIC和ASSP等芯片之间的桥梁, 或者用于样机/原型机设计, 被业界划分为ASIC/PLD类。现在随着FPGA密度的高度增加, 内部可集成各种IP和存储器, 成本在不断下降, 因此从一块辅助芯片逐渐跃居为系统的主要芯片 (如图3) , 并且把发展目标定位于取代ASIC和ASSP。

可编程逻辑器件 第2篇

摘要:通过工程实例介绍了在DSP?DigitalSignalProcessing数字信号处理?系统设计中,利用PRO-TEL99SE嵌套的AdvancedProtelPLD99硬件描述语言CUPL进行可编程逻辑器件设计的方法。

 

关键词:可编程逻辑器件(PLD);硬件描述语言(CUPL);Protel99se

1引言

在以往的DSP设计中,采用TTL、CMOS电路和专用数字电路进行设计时,器件对电路的处理功能是固定的,用户不能定义或修改其逻辑功能。但随着电子技术的发展和工程对所需功能复杂程度的进一步提高,系统将需要很多芯片,这样,在芯片之间,以及芯片和印刷电路板的布线和接点也相应增多,因而导致系统的可靠性下降和功耗增加,这样也就越来越不能满足工程实际的需要。而大规模可编程逻辑器件?PLD:ProgrammableLogicDevice?和基于芯片的EDA?ElectronicDesignAutomatic电子设计自动化?工具软件则可以解决这一问题。半导体技术的提高使ASIC?ApplicationSpecificIntegratedCircuit:特定用途集成电路?设计技术日趋完善,同时可编程逻辑器件在结构、工艺、集成度、功能、速度、灵活性等方面的改进和提高,也为高效率、高质量、灵活设计数字系统提供了可靠性。此外,CPLD?ComplexPro-grammableLogicDevice?或FPGA?FieldProgrammableArray?技术的.出现,又为DSP提供了一种崭新的方法,并使CPLD或FPGA设计的DSP系统具有良好的实用性和极强的实时性。

在Protel99se嵌套的PLD99的开发环境下,可编程逻辑器件设计可以直接面向用户要求,自上而下地逐层完成相应的描述、综合、优化、仿真与验证,直到生成能够下载到器件的JED文件,该方法结构严谨,易于操作,其设计流程如图1所示。

2实例介绍

在某工程中,要求利用SYN0,SYN1,SYN2,SYN3,SYN4,SYN5作为同步信号进行64个通道的选择,以使64个通道在不同时刻进行工作,电路产生的发射脉冲连接在64个双晶探头上,然后将双晶探头产生的原始回波信号a1,b1,c1,d1经过AD8184?四选一开关?输出到信号板进行处理。

3设计过程

3.1确定设计目的

由于每一通道的电路都是相同的,考虑到硬件电路以及电路板容量的问题,可先将64个通道分成16组,即每块电路PCB板设计四个通道,这16组利用SYN2,SYN3,SYN4,SYN5和拨码开关S1选通,然后利用SYN0,SYN1产生选通每块电路板的四个通道的选通信号A0、A1和输出使能EN,其电路原理如图2所示,信号的先后次序及逻辑关系见图3。

3.2PLD器件的选择和输入输出的确定

由于CUPL语言与器件和生产厂家无关,根据设计目的和要求,最简单、最常用的GAL22V10可以作为目标器件。根据GAL22V10的技术资料和器件各个管脚的定义,可将同步信号SYN0,SYN1,SYN2,SYN3,SYN4,SYN5和拨码开关S1的四个管脚作为输入信号,即选择2~11为输入管脚,13脚直接接地,14~20为输出管脚,其中14~17脚用来进行通道选择,18、19脚作为AD8184的选通信号,20脚作为AD8184的输出使能,参见图2。

图3信号逻辑关系图

3.3创建包括头信息的源文件

在PLD99的开发环境下,根据上述设想及管脚分配,利用Protel99se模板和硬件描述语言CUPL定义输入输出管脚,以创建包括头信息的文本文件Tan-Shang.pld,然后用CUPL语言写出如下的中间变量逻辑式和逻辑等式?注:由于描述变量EN的乘积项过多,故将变量EN分成中间变量EN1和EN2?,并完善文本文件。经过一系列设置后便可编译原文件,编译成功后会提示Compilationsuccessful,方法如下:

/**DeclarationsandIntermediateVariables**/

EN1=!(k1&k2&k3&k4&syn2&syn3&syn4&syn5

#!k1&k2&k3&k4&!syn2&syn3&syn4&syn5

#k1&!k2&k3&k4&syn2&!syn3&syn4

&syn5

#!k1&!k2&k3&k4&!syn2&!syn3&syn4&syn5

#k1&k2&!k3&k4&syn2&syn3&!syn4&syn5

#!k1&k2&!k3&k4&!syn2&syn3&!syn4&syn5

#k1&!k2&!k3&k4&syn2&!syn3&!syn4&syn5

#!k1&!k2&!k3&k4&!syn2&!syn3&!syn4&syn5??

EN2=!(k1&k2&k3&!k4&syn2&syn3&syn4&!syn5

#!k1&k2&k3&!k4&!syn2&syn3&syn4&!syn5

#k1&!k2&k3&!k4&syn2&!syn3&syn4&!syn5

#!k1&!k2&k3&!k4&!syn2&!syn3&syn4&!syn5

#k1&k2&!k3&!k4&syn2&syn3&!syn4&!syn5

#!k1&k2&!k3&!k4&!syn2&syn3&!syn4&!syn5

#k1&!k2&!k3&!k4&syn2&!syn3&!syn4&!syn5

#!k1&!k2&!k3&!k4&!syn2&!syn3&!syn4&!syn5);/**LogicEquations**/

EN=EN1&EN2?

A1=!syn1&!EN?

A0=!syn0&!EN?

a=!A1&!A0&!EN?

b=!A1&A0&!EN?

c=A1&!A0&!EN?

d=A1&A0&!EN?

图4查看波形输出文件

3.4设置仿真向量

通过创建仿真测试文件TanShang.SI可进行仿真测试,以产生如图3的仿真波形,当编译和仿真成功后,即可得到可下载到可编程逻辑器件的JED文件。该仿真测试文件Tanshang.SI如下:

ORDER:syn5,syn4,syn3,syn2,syn1,syn0,k4,k3,k2,k1,OE,EN,A1,A0,a,b,c,d;

VECTORS:

00000000001LHHLLLH

00000100001LHLLLHL

00001000001LLHLHLL

00001100001LLLHLLL

从仿真结果很明显地可以看出:拨码开关的四位K1,K2,K3,K4分别代表00~0F(十六进制码)这16组,而每组的四个通道的输出为a,b,c,d;由于SYN0,SYN1,SYN2,SYN3,SYN4,SYN5可组成00~3F(十六进制码)共64个通道,从而实现了利用SYN0,SYN1,SYN2,SYN3,SYN4,SYN5分时选通64个通道回波信号的功能。由于EN始终为低电平信号,因此保证了AD8184的选通信号能够起作用。

4结论

浅谈可编程逻辑器件 第3篇

1 八位全加器

八位全加器是由一位全加器来实现的。首先来看看一位全加器。一位全加器有三个输入, 两个输出。假设输入分别为a、b、ci, 输出的分别为sum、co。其中a、b为加数, ci为低位的进位位, sum为该位加数的和, ci为加数的进位位。首先a与b异或得到n1, ci与n1异或得到结果sum, n1和ci按位与得到n3, a和b按位与得到n2, n2和n3按位或得到进位位co。以上便是一位全家器的具体实现。现在要根据一位全家器来实现八位全加器, 当然是二进制的全加器。顾名思义, 八位全加器是由八个一位全加器来实现的。八位全加器的输入和输出分别由参数下标来区别。第一个加数的八位依次接入输入参数a1、a2、a3–a7、a8的八位, 第二个加数的八位依次接入输入参数b1、b2、b3–b7、b8的八位, 第一个全加器的低位输入进位位应置0, 其它前一个全加器的输出进位位连接到之后一个全加器的输入进位位, 每一个全加器的输出sum1、sum2–sum7、sum8构成了八位的输出结果。以上便是由一位全加器构成的八位全加器, 同理, 可由一位全加器构成十六位、三十二位全加器。

2 双向移位寄存器

双向移位寄存器具有异步清零, 双向移位, 置数的功能。如下图所示, 输入端分别为时钟脉冲clk, 异步清零clr, 置数load, 控制左移还是右移方向位left_right, 4位置数端DIN[0], DIN[1], DIN[2], DIN[3]。输出端分别为DOUT[0], DOUT[1], DOUT[2], DOUT[3]。置数时为并行置入, 输出时为并行输出。开始时, 置数端为1000, clr为低电平, left_right为低电平, 为左移, load为高电平时进行并行置数, 此时输出为1000。当load为低电平时, 将按着之前的设置在每一个时钟脉冲clk的上升沿进行移位, 输出分别为0100, 0010, 0001, 0000。当load为高电平时, 再次置数为0001, 此时left_right为高电平, 即右移。同理, 当load为低电平时, 将按着之前的设置在每一个时钟脉冲clk的上升沿进行移位, 输出分别为0010, 0100, 1000, 0000。当clr为高电平时, 将异步清理。

3 三位加计数器

同理, 三位加计数器的输入分别为复位信号clr, 时钟信号cp, 使能信号en。输出为三位结果和q[0], q[1], q[2]和进位q[3]。易知只有在clr和en为高电平时, 计数器在时钟脉冲的作用下开始工作。en为低电平时, 此时的输出端会保持不变。当clr为低电平时, 则清零。

以上通过实验, 可以看出可编程逻辑器件很灵活, 通过编程实现不同的功能, 极大地提高了电子系统的通用能力, 大大缩短了产品开发、上市的时间, 降低了开发成本, 已成为现代高层次电子设计方法的实现载体。

摘要:电子技术是20世纪发展最迅速、应用最广泛的新兴技术之一, 它成为近代科学技术发展的一个重要标志。所以现代电子设计技术是一个未来电子设计工程师必须掌握的技术。EDA是电子设计自动化 (Electronic Design Automation) 的缩写, 是由CAD (计算机辅助设计) 、CAM (计算机辅助制造) 、CAT (计算机辅助测试) 和CAE (计算机辅助工程) 的概念发展起来。可编程逻辑器件 (Programmable Logic Device) 的功能不是固定不变的, 它可根据用户的需要进行改变, 由编程的方法来确定器件的逻辑功能。由于FPGA技术的快速发展, FPGA产品在逻辑密度、性能和功能上有了极大提高, 同时器件成本也大幅下降, 可编程逻辑技术已经能与专用集成电路和专用标准产品争夺市场, 并逐渐呈现代替专用集成电路和专用标准产品的趋势。

关键词:Quartus II,编程,八位全加器

参考文献

[1]陈赜, 邹道胜, 朱如琪.CPLG/FPGA与ASIC设计实践教程 (第二版) [S].北京:科学版社, 2010.

[2]贺本涛.机械加工表面质量及影响因素[J].高科技与产业化, 2008 (08) .

基于可编程逻辑器件的数字电路设计 第4篇

可编程逻辑器件PLD (Programmable Logic Device) 是一种数字电路, 它可以由用户来进行编程和进行配置, 利用它可以解决不同的逻辑设计问题。PLD由基本逻辑门电路、触发器以及内部连接电路构成, 利用软件和硬件 (编程器) 可以对其进行编程, 从而实现特定的逻辑功能。可编程逻辑器件自20世纪70年代初期以来经历了从PROM, PLA, PAL, GAL到CPLD和FPGA的发展过程, 在结构、工艺、集成度、功能、速度和灵活性方面都有很大的改进和提高[1]。

随着数字集成电路的不断更新和换代, 特别是可编程逻辑器件的出现, 使得传统的数字系统设计方法发生了根本的改变[2]。可编程逻辑器件的灵活性使得硬件系统设计师在实验室里用一台计算机、一套相应的EDA软件和可编程逻辑芯片就可以完成数字系统设计与生产[3]。

1 Max+plus Ⅱ简介

Max+plus Ⅱ是一种与结构无关的全集成化设计环境, 使设计者能对Altera的各种CPLD系列方便地进行设计输入、快速处理和器件编程。Max+plus Ⅱ开发系统具有强大的处理能力和高度的灵活性, 其主要优点:与结构无关、多平台、丰富的设计库、开放的界面、全集成化、支持多种硬件描述语言 (HDL) 等。

数字系统的设计采用自顶向下、由粗到细, 逐步分解的设计方法, 最顶层电路是指系统的整体要求, 最下层是具体的逻辑电路的实现。自顶向下的设计方法将一个复杂的系统逐渐分解成若干功能模块, 从而进行设计描述, 并且应用EDA 软件平台自动完成各功能模块的逻辑综合与优化, 门级电路的布局, 再下载到硬件中实现设计[4], 具体设计过程如下。

1.1 设计输入

Max+plus Ⅱ支持多种设计输入方式, 如原理图输入、波形输入、文本输入和它们的混合输入。

1.2 设计处理

设计输入完后, 用Max+plus Ⅱ的编译器编译、查错、修改直到设计输入正确, 同时将对输入文件进行逻辑简化、优化, 最后生成一个编程文件, 这是设计的核心环节。

1.3 设计检查

Max+plus Ⅱ为设计者提供完善的检查方法设计仿真和定时分析, 其目的是检验电路的逻辑功能是否正确, 同时测试目标器件在最差情况下的时延, 这一查错过程对于检验组合逻辑电路的竞争冒险和时序逻辑电路的时序、时延等至关重要。

1.4 器件编程

当电路设计、校验之后, Max+plus Ⅱ的Programmer 将编译器所生成的编译文件下载到具体的CPLD器件中, 即实现目标器件的物理编程[5]。

2 以计数器为例介绍具体的设计方法

计数器是非常常用的时序逻辑电路。计数器类型有多种, 实现计数器的方法也有很多。可以买到大部分类型的中规模集成的计数器直接使用, 也可以用触发器搭建符合要求的计数器。但是采用以上方法实现的计数器灵活性不够, 不能随时进行修改, 通用性差。这里介绍基于可编程逻辑器件的实现方法。

2.1 设计输入

采用原理图输入的思维方式比较适合一直采用传统设计方法人的使用。原理图输入如图1所示。

采用硬件描述语言输入的方法对于没有传统设计方法经验的人更容易入门, 修改起来也更方便。给出了一个可逆计数器的实现实例[6], 程序的核心部分如下[7]:

PROCESS (clk)

VARIABLE cnt:INTEGER RANGE 0 TO 255;

VARIABLE direction:INTEGER;

BEGIN

IF (updown=′1′) THEN

direction:=1;

ELSE

direction:=-1;

END IF;

IF (clk′EVENT AND clk=′1′) THEN

cnt:=cnt+direction;

END IF;

qd <= cnt;

end process;

2.2 设计处理

原理图或程序完成之后, 选择好器件并进行引脚定义, 然后编译优化得到编程文件的界面如图2所示[8]。

2.3 设计检查

编译结束后, 建立波形文件进行仿真, 注意波形文件需要先保存, 保存文件名和源文件一致才能进行仿真[9]。结果如图3所示。

仿真结果达到设计目的, 符合设计要求。这时可以把编译生成的*.pof文件下载到选定的器件使用。用以上方法实现的器件, 修改起来非常方便, 只需要修改程序重新编译下载即可, 任何类型的计数器都可以在可编程逻辑器件实现。

3 结 语

随着电子技术的高速发展, CPLD 和FPGA 器件在集成度、功能和性能 (速度及可靠性) 方面已经能够满足大多数场合的使用要求。用CPLD, FPGA等大规模可编程逻辑器件取代传统的标准集成电路、接口电路和专用集成电路已成为技术发展的必然趋势。

可编程逻辑器件是逻辑器件家族中发展最快的一类器件, 它出现使得产品开发周期缩短、现场灵活性好、开发风险变小, 随着工艺、技术及市场的不断发展, PLD产品的价格将越来越便宜、集成度越来越高、速度越来越快, 再加上其设计开发采用符合国际标准的、功能强大的通用性EDA工具, 可编程逻辑器件的应用前景将愈来愈广阔[10]。

参考文献

[1]徐伟业, 江冰, 虔湘宾.CPLD/FPGA的发展与应用之比较[J].现代电子技术, 2007, 30 (2) :4-7.

[2]郑宝华.基于CPLD的大屏幕扫描电路设计[J].现代电子技术, 2008, 31 (24) :17-19.

[3]赵延, 葛利嘉, 双涛.基于FPGA的UART设计实现及其验证方法[J].现代电子技术, 2008, 31 (17) :162-164.

[4]王淑文.基于CPLD的数字系统设计[J].现代电子技术, 2007, 30 (12) :184-186. (下转第194页)

[5]杨晖, 张凤言.大规模可编程逻辑器件与数字系统设计[M].北京:北京航空航天大学出版社, 2001.

[6]潘松.VHLD实用教程[M].西安:西安电子科技大学出版社, 2000.

[7]宋万杰.CPLD技术及其应用[M].西安:西安电子科技大学出版社, 2000.

[8]林明权.VHDL数字控制系统设计范例[M].北京:电子工业出版社, 2003.

[9]曾繁泰, 陈美金.VHDL程序设计[M].北京:清华大学出版社, 2000.

可编程逻辑器件 第5篇

电火花线切割加工中的脉冲电源有一定的脉冲形式的要求, 这种频率、宽度和间隙可调的脉冲电源对产生这种脉冲波形的装置要求较高, 而可编程逻辑器件就非常适合于此。本文采用可编程控制器件实现脉冲频率的调节控制, 主要考虑可编程控制器件可选择的频率范围大, 同时I/O端口充足, 方便满足将来更多的设计要求, 另外其模块化的设计结构, 更有利于系统的设计和调试, 适应性强。

一、电火花线切割脉冲电源的设计

(一) 脉冲电源的电压选择

脉冲电源电压根据加工对象工件的厚度不同有所差异, 总体来说脉冲电源电压主要以空载电压为取值电压, 所谓空载电压就是接通高频脉冲电源, 但不加工的电压。随着加工工件的厚度发生变化, 空载电压也应该相应变化, 空载电压取值范围一般在50V~100V之间。

(二) 脉冲电源的波形选择

电火花线切割机床脉冲电源常用的波形有两种, 分别是矩形波脉冲和分组脉冲, 我们在应用时, 应该根据不同的具体加工要求选择合适的脉冲波形。

在工艺情况类似时, 应用矩形波脉冲作为电源, 加工效率高, 应用范围广, 能保证较高的稳定性;应用分组脉冲, 能够获得良好的加工效果, 该方法多用于加工量比较小的场合。

根据项目要求, 本项目选择采用矩形波脉冲。当采用矩形波脉冲加工时, 脉冲宽度为25us~80us, 脉冲间隙一般为脉冲宽度的4 倍;加大脉冲宽度可以提高加工速度, 但会增加加工表面的粗糙度;而减小脉冲间隙, 一般不影响表面的加工效果, 加工效率也影响不大, 但是脉冲间隙过小, 会使加工过程波动, 甚至可能出现断丝现象。加工电流一般控制在4A以内。

(三) 脉冲电源设计

本文设计应用于电火花加工单元电源电路的可变压可变脉宽电源电路主要由整流滤波电路、稳压电路及驱动保护电路几个部分构成, 其控制原理结构如图1所示。

电网进来的220V交流电经过变压器, 再经过一个单相桥式电路及滤波电路后得到100V直流电, 变压整流滤波电路如图2 所示。

上面整流滤波得到的100V直流电, 再经过电流稳压电路得到0~100V可调直流电, 接着0~100V可调的直流电经过IGBT后得到的就是所需的脉宽、占空比的电压电流可调的脉冲电源。其中IGBT驱动电路采用集成化IGBT专用驱动器EXB840, 驱动输入信号由脉冲波形发生器, 即可编程逻辑器CPLD提供, 控制器ARM向CPLD提供脉冲参数。

IGBT驱动及保护电路如图3 所示。驱动电路采用绝缘栅极双极晶体管IGBT, 驱动器EXB840 的引脚2接电源, 引脚9 接地, 引脚3 为信号输出, 引脚5 为过流信号, 引脚6 为IGBT集电极监视, 14、15 引脚为信号输入, 其他不接。

保护电路在当过流信号引脚发生过流时, 与其相连接的光耦TLP521 导通, 74LS08 的2 脚变为低电平, CPLD的输入信号关断, 对IGBT形成保护作用。光耦TLP521 主要用于信号处理过程中的抗干扰。

二、可编程逻辑器件在脉冲电源中的应用

(一) 可编程逻辑器件的结构

可编程逻辑器件主要包括输入缓冲、与阵列、或阵列和输出4 部分, 结构如图4 所示。其中与阵列和或阵列是其关键结构, 与阵列产生乘积项, 或阵列进行乘积项之和的运算。输入部分可以是输入变量的原变量或其反变量, 输出可以是组合输出、时序输出或可编程的输出结构。

目前广泛应用的可编程逻辑器件是CPLD或FPGA[2]。为了便于应用在电火花线切割系统中作为脉冲电源发生器, 本文采用逻辑器件CPLD。CPLD是从PAL、GAL发展而来的阵列型高密度PLD器件, 一般采用CMOS、EPROM和FLASH存储器等编程技术, 其调试逻辑的结果可以保存在芯片中, 数据内容不易丢失, 且保密性好。

(二) 可编程逻辑器件在脉冲电源发生器中的具体应用

本文选用了高密度逻辑集成的、性价比合理的CPLD芯片MAX7128S为电火花线切割机提供脉冲电源的脉冲信号。芯片MAX7128S计数工作频率175MHz, 内含逻辑门2500 个, 宏单元128 个, 68 个可配置I/O口;支持JTAG接口在线编程, 不需要重新烧写芯片, 通过计算机串行通讯接口就可以将编写好的逻辑程序导入芯片, 支持在线调试, 芯片数据可以擦除若干次;芯片MAX7128S采用5V电源供电, 可以直接连接ARM、TTL芯片。

根据前文讨论, 对于采用矩形波脉冲作为加工电源, 脉冲宽度Tk一般为25us~80us, 脉冲间隙Tj一般不小于脉冲宽度的4 倍, 取4 倍脉冲跨度为脉冲间隙。最小脉冲宽度25us应该对应最大频率脉冲, 则整个脉冲电源周期为[3]:

则所需脉冲频率f0为8KHz, 此频率为矩形波脉冲的最大工作频率。下面利用MAX7128S CPLD芯片设计出符合要求的脉冲波形发生器。

脉冲波形发生器的频率合成主要通过芯片完成, 采用CPLD芯片MAX7128S设计合成可变频率和占空比的数字频率合成器。合成的输入信号频率fo, 晶振频率fi及频率系数D三者之间的关系如式 (2) 所示, 其中N反应精度调节的程度, 一般N越大, 精度越高:

其中确定系统所提供的晶振为16MHz, 输出信号频率fomax为8×103Hz。

由 (2) 式得:

经过计算, 取N=16, 由 (3) 式得:fomax=32。

进一步计算, 当N=16, D为最大值32 时, 输出信号频率fomax=8×103Hz;

当N=16, D取4 时, 输出信号频率fo4=1×103Hz;

当N=16, D取1 时, 输出信号频率fo1=0.25×103Hz;

经过进一步测试发现, 只要对脉冲波形发生器频率系数取不同的数值, 脉冲波形发生器得到相应的频率值的波形, 当D取值为32 时输出25us的脉冲电源, 即我们所要求的最大频率为8KHz的脉冲波形, 其他频率的电源信号可以根据D的其他取值由脉冲波形发生器产生。

由前面产生的周期为T脉冲波形产生占空比可调的信号, 然后再通过对CPLD内部的一个10 位计数器提供预置值, 占空比参数由K设定, K取值范围为0~1024, 该参数通过ARM输入CPLD, 当工作计数器到达计时时间, 向占空比控制电路发出时间到信号, 控制电路接收到信号后, 停止计数器工作, 并重新装载计数器数据, 从而产生周期为T的规定占空比的脉冲信号。产生的信号脉冲宽度范围如下式所示:

产生的占空比如下式所示:

因此, 根据设计要求对CPLD构成的脉冲波形发生器进行设计。设计流程如图5 所示, 主要包括PORT口的定义, 参数输入寄存器设计, 累加器/PWM输出设计, I/O配置, MAX7128 芯片管脚配置, 最后进行编译, 仿真。

下面对7128 进行逻辑电路设计与配置。开发工具为Altera公司提供的MAX+PLUSⅡ BASELINE, 可以方便地实现逻辑编辑、编译、功能仿真、时序仿真、时序分析等功能。在MAX+PLUSⅡ BASELINE中可用VHDL语言进行逻辑电路设计[4]。

对7128 进行逻辑电路设计与配置可得到如图6 所示的芯片。具体引脚说明如下:

·RESET:复位。

·CLK:时钟信号。

·DATAIN[7..0]:数据线 (8位) 。

·CS[1..0]:片选信号。

·WR:写信号。

·PWMOUT:波形输出。

最后对所设计的芯片进行仿真实验, 实验发现该芯片完全满足设计需要, 最后将调试通过的逻辑程序下载到EPM7128 中, 完成程序的芯片植入工作, 具体仿真结果如图7 所示。

脉冲波形发生器产生的脉冲波形经过驱动保护电路最终提供给放电电极进行放电加工, 如图8 所示是通过仿真软件进行测试得到的脉冲周期为100ns的不同脉冲宽度的放电电压波形。

三、结论

在实际应用中, 本文所设计的基于可编程逻辑器件的脉冲电源有稳定好、可控性强的特点, 大大提高了电加工机床的加工效果, 为该类设备提升制造水平有很大的帮助。

本文阐述的脉冲电源的设计与分析过程对同类脉冲电源控制系统的设计与开发有一定的借鉴作用, 既能够满足加工生产的需要, 也可以满足机电类专业教学和实验的需求。

摘要:为了提高电加工机床加工效果, 满足更高的电加工的技术要求, 对电加工机床的脉冲电源进行了研究, 针对脉冲电源的脉冲频率、脉冲宽度及脉冲间隙的具体要求, 完成基于可编程逻辑器件的脉冲电源的设计。

关键词:电加工,脉冲电源,脉冲频率,可编程逻辑器件

参考文献

[1]李勇, 王显军.微细电火花加工关键技术研究[J].清华大学学报, 1999 (8) .

[2]蒋毅, 赵万生, 顾琳, 等.微细电火花加工脉冲电源及其脉冲控制技术[J].上海交通大学学报, 2011 (11) :1684-1689.

[3]黄瑞宁, 狄士春, 迟关心, 等.新型微能可控的MWEDM脉冲电源[J].新技术新工艺, 2005 (5) .

可编程逻辑器件 第6篇

单片机系统在工业控制、微机保护等产品中的使用已经非常普遍, 对其稳定性的要求也越来越高, 提高稳定性的方法之一, 就是采用尽可能少的器件来构成系统, 简化设计的同时, 也减少了故障可能点。另外, 在现代电子产品设计中, 统一硬件平台, 通过硬件设计软件化的手段, 来区分产品类型, 不但可加快设计进度, 同时也便于升级与保护知识产权。近些年来, 单片机外围芯片不断有许多集成度高的新产品推出, PSD系列芯片便是一种与单片机接口简单且具有强大功能的可编程微控制器外围器件。

2、硬件设计

2.1 芯片功能简介

PSD (Programmable System Device) 是ST公司生产的可编程系统器件。PSD系列目前主要有用于16位系统的PSD4000系列、用于8位系统的PSD800、PSD900系列。该器件把许多外围器件的功能组合在一起, 一般包括:主FLASH存储器、次EEPROM或FLASH存储器、SRAM、超过3000门的FLASH-PLD、可配置的I/O端口以及可编程的电源管理, 同时具有串行JTAG接口, 支持对整个芯片内所有功能块的在系统编程 (ISP) , 并不需要引导EPROM或外部编程器, 对于具有主次存的器件, 通过MCU允许程序现场更新而系统同时继续正常工作, 即支持IAP (In Application Reprogramming) 功能, 这些对于实现简单、灵活的嵌入式设计方案具有很大帮助。PSD芯片的配置与开发, 利用PSDsoft Express软件开发工具生成设计文件和用于控制PSD的ANSI-C固件, 下载通过FlashLink, 连接PSD的JTAG接口在线完成。该系列各型号间的主要差别在于是否有次存储器、SRAM及存储器大小, 其它功能基本相同。

2.2 电路设计

利用PSD系列芯片可与单片机构成高集成度的两片最小系统, 一般不需要再外扩其它芯片就可实现程序存储、地址分配、I/O口扩展、在线下载、逻辑组合等功能。硬件结构简单, 并且地址分配与硬件设计无关, 可通过P S D内部的FDPLD来灵活构造。下面以PSD813F1配合常用的80C196KC单片机构成最小系统, 采用4×4键盘与液晶显示构成人机接口为例, 阐述硬件电路的设计, 系统硬件原理图见图1。PSD813F1含有128KB的主F L A S H, 3 2 K B E E P R O M, 2KBSRM, FLASH-PLD单元等, 支持ISP与IAP功能。

PSD813F1芯片可与大多数通用微控制器实现“无缝连接逻辑 (n o-g l u el o g i c) ”, 其总线接口及读、写、时序信号等控制逻辑可与MCS96单片机直接连接, 仅需通过PSDsoft开发工具配置接口类型而无需任何附加电路;某些设计中, 液晶显示一般与主电路分离, 造成总线外拉, 为增加抗干扰能力, 可利用PSD813F1的PA口作为液晶显示的总线, 采用PIO模式实现外拉总线与内部总线的隔离, 在不与液晶进行数据传输时, 断开外拉总线;4×4键盘由PSD813F1的PB口构成, PC7为键盘电路的中断输出, 键盘的扫描与去抖由PSD内部FGPLD构造状态机实现, 以节省单片机资源;JTAG下载接口由PC口中的6根口线构成, 实现程序首次下载或现场升级, 若I/O口线不足, 可构造其为复用模式。由于PSD813F1为8位总线, 因此80C196KB/C必须配置为8位总线工作方式, 其CLKOUT端为PSD提供时钟时序, 注意80C196KC的READY端必须经电阻上拉, 而不能悬浮。

3、系统的配置

P SD芯片的配置主要利用P S D s o f t Express平台, 所有的配置及写入仅需简单的七步即可完成, 具体配置流程见图2, 一般简单逻辑组合不需要编写able语言 (一种硬件描述语言) 程序。下面, 以上面的硬件设计为例, 简述对PSD813F1的各种配置。

定义PSD与MCU只需选择相应型号的器件。对PSD813F1的PA口配置为PIO模式, PB0-3为PLD输出, PB4-7为PLD输入, PC0/1/3-6口为JTAG接口 (若口线不足, 也可将其设置为其它功能与J T A G接口复用) , P C 7口为逻辑输出, PD1为时钟输入, PD2为其它扩展芯片片选地址, 剩余的口线除总线接口外可根据需要配置相应功能。

地址分配通过配置FDPLD完成, 主要包含内容有:主程存占用地址空间、辅助程存或定值数存占用地址空间、SRAM数存占用地址空间、内部寄存器占用地址空间、其它扩展芯片占用地址空间, PLD内部节点占用地址空间。结合图1的硬件设计, 主FLASH用于存储程序, 次EEPROM用于定值存放, 若地址分配超出64K空间, 可通过PSD的页寄存器扩展直至256倍, 下面给出图1中以PSD813F1为例的地址分配 (其中psel0、psel1为管理PA口PIO模式的PSD内部节点, 当二者有效时PA口与数据总线接通, 即液晶显示地址) 。

fs0= ( (address>=^h2000) & (address<=^h5FFF) ) ;"程存地址fs1= ( (address>=^h6000) & (address<=^h9FFF) ) ;"程存地址ees0= ( (ad dress>=^hA0 00) & (address<=^hBFFF) ) ;"EEPROM地址ees1= ( (add ress>=^hC00 0) & (address<=^hDFFF) ) ;"EEPROM地址rs0= ( (address>=^h0200) & (address<=^h09FF) ) ;"SRAM数存地址csiop= ( (address>=^h0A00) & (address<=^h0AFF) ) ;"PSD内部寄存器地址psel0= ( (address>=^h0B00) & (address<=^h0B00) ) ;"PSD内部节点即液晶显示地址psel1= ( (address>=^h0B01) & (address<=^h0B01) ) ;"PSD内部节点即液晶显示地址p d 2= ( (a d d res s>=^h 0 B0 3) & (address<=^h0B03) ) ;"扩展芯片片选地址

利用PSD内部的FGPLD来实现键盘管理与单片机采用扫描方式管理键盘的思路一致, 通过构造状态机产生列扫描信号P B 0-3, 当有键按下时, 行输入信号PB4-7检测到一个低电平, 构造组合逻辑使状态机停止并维持原信号, 同时启动由输入时钟构造的10ms定时电路, 若10ms定时结束, 仍旧维持原信号不便则产生中断输出到PC7, MCU直接读PSD的PB口即可得到键值。该配置必须编写Able语言程序进行硬件描述, 由于程序较大, 仅给出思路。其它配置仅需根据流程提示进行即可。

4、结论

可编程系统器件PSD与单片机组成单片机系统, 使硬件电路设计简单化、软件化, 便于维护与升级, 缩短了开发周期, 提高了可靠性, 同时利用器件的ISP和IAP功能, 不但减少了现场调试工作量, 也使远程维护成为可能。另外, 若充分利用PSD内部FLASH-PLD资源, 还可减轻单片机的负担, 提高系统工作效率。基于以上思路开发的微机保护装置在使用中性能稳定, 性价比高, 可靠性高。

参考文献

[1]PSD813F Family Data Sheet.WSI.1999.

[2]PSDAbel User Manual.WSI.1999

[3]PSDsoft express User Manual.ST.2001

可编程逻辑器件 第7篇

大规模可编程器件 (VLSI) [1,2]工程是近几年迅速发展起来的综合计算机软件、电路硬件、微电子技术等领域的现代电子电路设计学科。对VLSI器件的开发越来越受到业内人士的重视, 它的应用范围在迅速扩大。本文在分析了PCM基群帧同步提取的本质特点后, 提出了一种新的PCM编码32路时分复用基群[3,4,5]信号的帧同步信号提取的实现方法, 并且下载到ALTERA公司的在系统可编程器件EPM7064SCL44-5[1,2]上, 进行了验证和测试。该设计将所有硬件电路集成在一个芯片上, 克服了传统采用分离硬件电路实现而带来的抗干扰差和判决门限电平不容易调整等缺陷。

2. 帧同步识别的理论分析[5,6]

在可靠的通信系统中, 要保证接收端能够正确解调出信息, 必须要有一个同步系统, 以实现发送端和接收端的同步, 因此同步提取在通信系统中是至关重要的。本文设计的帧同步提取是在每一帧的前面加巴克码, 时分复用信号是PCM30/32信号, 基群一帧的时间是125us, 一帧分为32个时隙, 其中第一个时隙是帧同步信号, 第16个时隙是信令信号, 其余30路供用户使用。每一个时隙以8个比特进行编码, 一个比特的时间近似0.488ns, 基群的信息速率为2.048MB。因为巴克码具有良好的自相关性和互相关性, 当数据信息中的巴克码和本地同步头的码完全相同时, 其相关峰最大。但这个峰值可能不会达到理论值, 这是因为在数据传输中, 数据流及同步头都要受到噪声的干扰。如假设巴克码为p (n) , 第n路数据是data (n) , 数据中携带的噪声是N (n) , 那么data (n) 和巴克码p (n) 之间的循环互相关函数为:

式中, L是巴克码p (n) 的长度。当data (n) 正好与巴克码p (n) 码对齐, 即data (n) =p (n) 十N (n) 时, 有:

由于N (n) 与巴克码p (n) 是互不相关的, 因此上式的前半部分相关值很小;而对于它的后半部分, 当信号中的同步头与本地的巴克码p (n) 完全对应, 即p (n) =p (k+n) 时, Rdp (k) 将得到最大相关值。七位巴克码的尖锐的峰值可达17dB。如图1所示, 信号中的帧同步头为七位巴克码1110010, 当数据信息S-IN中的巴克码和本地同步头1110010的码完全相同时, 系统输出一个峰值脉冲GAL, 通信系统的接收端通过检测这个尖锐的峰值, 就可推定时分复用信号的一帧开头或结束。如上述分析可知, 在数据传输中, 数据流及同步头都要受到噪声的干扰。因此, 在同步脉冲提取的系统中, 还包括对输出同步脉冲的保护电路, 提高系统的抗干扰性能。

3. 基于EPM7064SCL44-5器件的帧同步提取的设计

在系统编程技术ISP (In-System Programmability Programmable digital Circuits) [1,2]是数字系统设计的新方法, 它不需专用的编程器, 而是直接在用户自己设计的目标系统中或线路板上对复杂可编程器件编程, 即使设计者的硬件电路直接写入可编程器件中。一旦写入, 器件就直接执行设计者的硬件电路功能, 而不靠执行程序指令工作;成为产品后还可根据用户的需要进行反复编程, 便于局部修改和扩充电路功能。它的应用提高了产品的集成程度和可靠性[1,2]。此处所使用的在系统可编程器件是美国ALTERA公司的EPM7064SCL44-5芯片, 用一根七芯电缆将PC机的并行口与目标系统上的在系统编程器件相连接, 便可对其编程。

本文设计首先采用“自顶向下” (Top.Down) 的模块化设计方法, 从系统设计入手, 在顶层进行系统功能模块的划分和结构设计;然后在底层一级用硬件描述语言VHDL进行行为描述、仿真、纠错, 形成功能模块库;最后采用原理图的方式设计整体系统, 在系统一级进行整体功能验证[7,8]。在EPM7064SCL44-5大规模可编程器件上设计的顶层结构电路如图2所示。它主要由识别器模块、后方保护模块和帧同步脉冲的形成器、前方保护模块构成。

3.1 识别器及后方保护模块

识别器模块是由二级模块的移位寄存移位寄存器、译码器、判决器构成, 后方保护模块主要是顶层级中的选择器和RS触发器等组成。识别器模块的二级电路如图3所示。 (1) 移位寄存器的作用是将系统输入的NRZ数据流在位同步信号的上升沿作用下进行7位的串并转换, 数据瞬时存储在7个移位寄存器中。寄存器的输出接法与帧同步的巴克码 (1110010) 相同, 当数据流中的同步头与巴克码相同时, 寄存器的输出为七个1。该移位寄存器模块的主要VHDL语言程序如下:

(2) 译码器的作用相当于对数据中的同步头进行检测, 其设计原理如图4所示。移位寄存器的输出全是1时, 此时说明移位寄存器恰好移入了信号中的帧同步巴克码, 这时译码器输出设定为111;如果移位寄存器只有一位为零, 说明信号中的帧同步头受到干扰, 设定译码器输出为110。移位寄存器如果有两位以上为零, 则输出设定为000。信号中的帧同步码出现的可能性大小与译码器的输出大小相对应。译码器模块主要的硬件编程VHDL语言如下:

(3) 选择器的输入由系统的工作状态决定。当系统处于捕捉态时, 触发器为0态, 选择器将0电平译码为111输出门限men[2..0]高电平111值;当系统处于同步维持态时, 触发器为1态, 选择器将1电平译码为110输出门限men[2..0]低电平110值。该模块的主要VHDL语言程序略。选择器模块与识别器模块的接法如图1所示。 (4) 判决器模块将译码器的输出的数据值a与选择器门限输出的数据值b相比较, 当a>=b时, 判决器输出高电平, 否则为低电平, 这样就形成了识别脉冲GAL。选择器和判决器及rs触发器等构成对输出的帧同步脉冲的后方保护。

3.2 帧同步脉冲的输出及前方保护模块

帧同步脉冲的输出及前方保护模块由钟控rs触发器模块、32分频、5分频及若干简单门电路组成。它们的连接关系如顶层结构图2所示。 (1) 钟控rs触发器有两个二级模块组成, 如图5所示。钟控模块CLKCONTR控制触发器的使能引脚, 当位同步输入信号CLK的第一个上升沿到来时, 就将触发器的使能端RES置成高电平, 使触发器能够工作时。 (2) 32分频器对32路时隙脉冲进行计数, 即当PCM基群的32路信号的128个NRZ码输入时便有进位输出。在无干扰及信号中无类似同步头码元的情况下, 它的进位周期与帧同步识别脉冲的周期相同。如果它们的相位也相同, 就可将32分频器的进位脉冲当作同步脉冲输出。 (3) 5分频器完成帧同步脉冲的前方保护作用, 同时与触发器配合对系统进行整体的调整。当连续出现只有32分频器的进位输出, 而无识别脉冲输出时, 系统仍然有帧同步脉冲输出, 即帧同步脉冲的前方保护。但最多允许5个同步脉冲输出之后, 5分频计数器有进位输出, 系统由同步维持态进入捕捉状态。这时触发器的R=1、S=0, 触发器置0态, 触发器的Q端关闭系统的同步脉冲输出。同时通过选择器将门限提高为111值, 作为识别器输出识别脉冲的门限值。当识别器有脉冲输出时, 将32分频器和5分频器清零, 同时将触发器置1态, 触发器的Q端打开输出端与门, 使同步脉冲到来时能够输出。这时32分频器的进位脉冲与信号中的同步头相一致, 系统进入同步状态, 触发器的输出通过选择器将门限降低为110值, 作为识别器输出识别脉冲的门限值。如果由于干扰或信号中有类似同步巴克码时, 虽然识别器有输出, 但是如果32分频器无进位脉冲输出, 系统的输出端仍然没有同步脉冲输出。

4. 仿真测试结果及分析

利用Quartus2.1设计软件系统和ALTERA的ByteBlaster下载电缆, 在一片可编程器件EPM7064SCL44-5上, 只用了百分之三十的逻辑单元就实现了PCM时分复用的基群帧同步脉冲提取电路功能。电路仿真如图6所示, 输入clk是的位同步时钟, 输人datain是的PCM基群信号数据, 输出zhenout是经过可编程器件内设计的电路提取的帧同步脉冲。此处仿真, 位同步周期取10ns。由输出仿真波形可知, 经过2.5us的帧同步捕捉后, 每过32路信号后输出一个帧同步脉冲。功能仿真结果与预期的帧同步脉冲输出的时间间隔相一致。

5. 结束语

本文在分析了PCM基群帧同步提取的本质特点后, 针对大规模复杂可编程器件的特点, 提出了一种新的帧同步提取的实现方法。在Quartus2.1设计环境下, 应用VHDL语言, 在EPM7064SCL44-5可编程器件上, 实现了由帧同步识别器模块、帧同步后方保护模块及前方保护模块和帧同步脉冲形成器模块构成的PCM30/32基群信号的帧同步提取的电路设计。此处的设计将所有的硬件电路集成在一个芯片上, 克服了传统采用分离硬件电路实现而带来的抗干扰差和判决门限电平不容易调整等缺陷。由于在系统可编程器件可反复编程的特点, 决定了本文的设计系统可以在不改变整体结构的基础上, 进行升级和维护。

参考文献

[1]宋万杰, 罗丰.CPLD技术及其应用[M].西安:西安电子科技大学出版社, 1999, 7.

[2]曾繁泰, 陈美金.VHDL程序设计[M].北京:清华大学出版社, 2002, 5.

[3]John G.Proakis.DigitalCommunications[M].Beijing:Publishing House of Electronics Industry, 2001.

[4]D Koulakiotis, et al.Data detection techniques for DS/CDMAmobile systems:A review[J].IEEE Per Comm.June2000:24-34.

[5]樊昌信, 张甫诩, 徐炳祥, 吴成河.通信原理.北京:国防工业出版社, 2001, 5.

[6]A.Bruce Carlson, Paul B.Crilly, Janet C.Rutledge.CommunicationSystems[M].Beijing:Higher Education Press, 2002.

[7]王素珍.基于FLEX20K器件的采样电压测量的研究[J].电子测量与仪器学报, 预定2006, 3.

可编程逻辑器件

可编程逻辑器件(精选7篇)可编程逻辑器件 第1篇可编程逻辑器件 (PLD) 起源于上世纪80年代 (如图1) , Signetics、Raytheon、GE、Nati...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部