怎样将ALTERA的CPLD芯片的pof文件读出来,被读取的芯片是EMP7032SLC44-10N

怎样将ALTERA的CPLD芯片的pof文件读出来,被读取的芯片是EMP7032SLC44-10N,第1张

可编程逻辑器件(Programable Logic Device)的简称,FPGA是现场可编程门阵列(Field Programable Gate Array)的简称,两者的功能基本相同,只是实现原理略有不同,所以我们有时可以忽略这两者的区别,统称为可编程逻辑器件或PLD/FPGA。

PLD是电子设计领域中最具活力和发展前途的一项技术,它的影响丝毫不亚于70年代单片机的发明和使用。

PLD能做什么呢?可以毫不夸张的讲,PLD能完成任何数字器件的功能,上至高性能CPU,下至简单的74电路,都可以用PLD来实现。PLD如同一张白纸或是一堆积木,工程师可以通过传统的原理图输入法,或是硬件描述语言自由的设计一个数字系统。通过软件仿真,我们可以事先验证设计的正确性。在PCB完成以后,还可以利用PLD的在线修改能力,随时修改设计而不必改动硬件电路。使用PLD来开发数字电路,可以大大缩短设计时间,减少PCB面积,提高系统的可靠性。 PLD的这些优点使得PLD技术在90年代以后得到飞速的发展,同时也大大推动了EDA软件和硬件描述语言(HDL)的进步。

如何使用PLD呢?其实PLD的使用很简单,学习PLD比学习单片机要简单的多,有数字电路基础,会使用计算机,就可以进行PLD的开发。不熟悉PLD的朋友,可以先看一看可编程逻辑器件的发展历程。

开发PLD需要了解两个部分:1.PLD开发软件 2.PLD本身

1.PLD开发软件

由于PLD软件已经发展的相当完善,用户甚至可以不用详细了解PLD的内部结构,也可以用自己熟悉的方法:如原理图输入或HDL语言来完成相当优秀的PLD设计。所以对初学者,首先应了解PLD开发软件和开发流程。了解PLD的内部结构,将有助于提高我们设计的效率和可靠性。

如何获得PLD开发软件软件呢? 许多PLD公司都提供免费试用版或演示版(当然商业版大都是收费的),例如:可以免费从 上下载Altera公司的 QuartusII (web版),或向其代理商索取这套软件。Xilinx 公司也提供免费软件:ISE WebPack,这套可以从xilinx网站下载。Lattice 提供isplever Base版下载,Actel等公司也都有类似的免费软件提供。以上免费软件都需要在网上注册申请License文件,如果您对License的安装还有不清楚,请仔细阅读相关网页上的说明,也可以下载这篇文档:EDA软件的license管理与安装。 通常这些免费软件已经能够满足一般设计的需要,当然,要想软件功能更强大一些,只能购买商业版软件。

如果您打算使用VHDL或Verilog HDL硬件描述语言来开发PLD/FPGA,通常还需要使用一些专业的HDL开发软件,这是因为FPGA厂商提供的软件的HDL综合能力一般都不是很强,需要其他软件来配合使用,详细情况可以通过浏览:开发软件栏目获得等多信息.

对于PLD产品,一般分为:基于乘积项(Product-Term)技术,EEPROM(或Flash)工艺的中小规模PLD,以及基于查找表(Look-Up table)技术,SRAM工艺的大规模PLD/FPGA。EEPROM工艺的PLD密度小,多用于5,000门以下的小规模设计,适合做复杂的组合逻辑,如译码。SRAM工艺的PLD(FPGA),密度高,触发器多,多用于10,000门以上的大规模设计,适合做复杂的时序逻辑,如数字信号处理和各种算法。如希望进一步了解PLD/FPGA结构与原理,请点击此处。

目前有多家公司生产CPLD/FPGA,最大的三家是:ALTERA,XILINX,Lattice, 您可以参阅PLD厂商栏目获得更多信息

2.PLD/FPGA的分类和使用

在PLD/FPGA开发软件中完成设计以后,软件会产生一个最终的编程文件(如 .pof )。如何将编程文件烧到PLD芯片中去呢?

1.对于基于乘积项(Product-Term)技术,EEPROM(或Flash)工艺的PLD(如Altera的MAX系列,Lattice的大部分产品,Xilinx的XC9500,Coolrunner系列), 厂家提供编程电缆,电缆一端装在计算机的并行打印口上,另一端接在PCB板上的一个十芯插头,PLD芯片有四个管脚(编程脚)与插头相连。(如图)

下载 ALTERA 编程电缆(Byteblaster MV)的数据手册

下载 Xilinx编程电缆的电路原理图

下载 Lattice的电缆资料

它向系统板上的器件提供配置或编程数据,这就是所谓的在线可编程(ISP,如下图)。Byteblaster使用户能够独立地配置PLD器件,而不需要编程器或任何其它编程硬件。编程电缆可以向代理商购买,也可以根据厂家提供的编程电缆的原理图自己制作,成本仅需一,二十元。 早期的PLD是不支持ISP的,它们需要用编程器烧写。目前的PLD都可以用ISP在线编程,也可用编程器编程。这种PLD可以加密,并且很难解密,所以常常用于单板加密。

1.将PLD焊在PCB板上2.接好编程电缆 3.现场烧写PLD芯片

2.对于基于查找表(LUT,Look-Up table)技术,SRAM工艺的FPGA(如Altera的所有FPGA,如ACEX,Cyclone,Stratix系列,Xilinx的所有FPGA,如Spartan,Virtex系列,Lattice的EC/ECP系列等),由于SRAM工艺的特点,掉电后数据会消失,因此调试期间可以用下载电缆配置PLD器件,调试完成后,需要将数据固化在一个专用的EEPROM中(用通用编程器烧写,也有一些可以用电缆直接改写),上电时,由这片配置EEPROM先对FPGA加载数据,十几个毫秒到几百个毫秒后,FPGA即可正常工作。(亦可由CPU配置FPGA)。但SRAM工艺的PLD一般不可以直接加密。

3.还有一种反熔丝(Anti-fuse)技术的FPGA,如Actel,Quicklogic的部分产品就采用这种工艺。但这种的PLD是不能重复擦写,需要使用专用编程器,所以开发过程比较麻烦,费用也比较昂高。但反熔丝技术也有许多优点:布线能力更强,系统速度更快,功耗更低,同时抗辐射能力强,耐高低温,可以加密,所以在一些有特殊要求的领域中运用较多,如军事及航空航天。 为了解决反熔丝FPGA不可重复擦写的问题,Actel等公司在90年代中后期开发了基于Flash技术的FPGA,如ProASIC系列,这种FPGA不需要配置,数据直接保存在FPGA芯片中,用户可以改写(但需要10几伏的高电压)。

随着技术的发展,在2004年以后,一些厂家推出了一些新的PLD和FPGA,这些产品模糊了PLD和FPGA的区别。例如Altera最新的MAXII系列PLD,这是一种基于FPGA(LUT)结构,集成配置芯片的PLD,在本质上它就是一种在内部集成了配置芯片的FPGA,但由于配置时间极短,上电就可以工作,所以对用户来说,感觉不到配置过程,可以传统的PLD一样使用,加上容量和传统PLD类似,所以altera把它归作PLD。 还有像Lattice的XP系列FPGA,也是使用了同样的原理,将外部配置芯片集成到内部,在使用方法上和PLD类似,但是因为容量大,性能和传统FPGA相同,也是LUT架构,所以Lattice仍把它归为FPGA。

怎么样?对PLD/FPGA的使用有了一定的了解了吧,如有疑问,可在本站论坛:新手入门栏目上提出上提出,大家一起讨论。

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

vaela

1、"PLD"-可编程逻辑器件:

它是做为一种通用集成电路生产的,逻辑功能按照用户对器件编程来设计。

目前使用的PLD产品主要有:

①现场可编程逻辑阵列FPLA。

②可编程阵列逻辑PAL。

③通用阵列逻辑GAL。

④可擦除的可编程逻辑器件EPLD。

⑤现场可编程门阵列FPGA.其中EPLD和FPGA的集成度比较高。有时又把这两种器件称为高密度PLD。

2、"PLC"-可编程逻辑控制器:

是一种专门为在工业环境下应用而设计的数字运算 *** 作的电子装置。

它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等 *** 作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。

PLC及其有关的外围设备都应该按易于与工业控制系统形成一个整体,易于扩展其功能的原则而设计。

3、PLC 和PLD的关系:PLC可编程控制器也是计算机家族中的一员,它是为工业控制应用而设计制造的 。

扩展资料:

1、PLC 工作原理:

当可编程逻辑控制器投入运行后,其工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新三个阶段。完成上述三个阶段称作一个扫描周期。在整个运行期间,可编程逻辑控制器的CPU以一定的扫描速度重复执行上述三个阶段。

①输入采样:

在输入采样阶段,可编程逻辑控制器以扫描方式依次地读入所有输入状态和数据,并将它们存入I/O映象区中的相应的单元内。输入采样结束后,转入用户程序执行和输出刷新阶段。在这两个阶段中,即使输入状态和数据发生变化,I/O映象区中的相应单元的状态和数据也不会改变。

因此,如果输入是脉冲信号,则该脉冲信号的宽度必须大于一个扫描周期,才能保证在任何情况下,该输入均能被读入。

②用户程序执行:

在用户程序执行阶段,可编程逻辑控制器总是按由上而下的顺序依次地扫描用户程序(梯形图)。

在扫描每一条梯形图时,又总是先扫描梯形图左边的由各触点构成的控制线路,并按先左后右、先上后下的顺序对由触点构成的控制线路进行逻辑运算,然后根据逻辑运算的结果,刷新该逻辑线圈在系统RAM存储区中对应位的状态。

或者刷新该输出线圈在I/O映象区中对应位的状态;或者确定是否要执行该梯形图所规定的特殊功能指令。

③输出刷新:

当扫描用户程序结束后,可编程逻辑控制器就进入输出刷新阶段。在此期间,CPU按照I/O映象区内对应的状态和数据刷新所有的输出锁存电路,再经输出电路驱动相应的外设。这时,才是可编程逻辑控制器的真正输出。

2、PLD分类:

①按集成度划分:

(1)低集成度芯片。早起出现的PROM、PAL、可重复编程的GAL都属于这类,可重构使用的逻辑门数大约在500门以下,称为简单PLD。

(2)高集成度芯片。如现在大量使用的CPLD、FPGA器件,称为复杂PLD。

②按结构划分:

(1)乘积项结构器件。其基本结构为“与-或”阵列的器件,大部分简单PLD和CPLD都属于这个范畴。

(2)查找表结构器件。由简单的查找表组成可编程门,再构成阵列形式。大多数FPGA是属于此类器件。

③按编程工艺划分:

(1)熔丝型器件。早期的PROM器件就是采用熔丝结构的,编程过程是根据设计的熔丝图文件来烧断对应的熔丝,达到编程和逻辑构建的目的。

(2)反熔丝型器件。是对熔丝技术的改进,在编程处通过击穿漏层使得两点之间获得导通,这与熔丝烧断获得开路正好相反。

(3)EPROM型。称为紫外线擦除电可编程逻辑器件,是用较高的编程电压进行编程,当需要再次编程时,用紫外线进行擦除。

(4)EEPROM型。即电可擦写编程软件,现有部分CPLD及GAL器件采用此类结构。它是对EPROM的工艺改进,不需要紫外线擦除,而是直接用电擦除。

(5)SRAM型。即SRAM查找表结构的器件,大部分FPGA器件都采用此种编程工艺,如Xilinx和Altera的FPGA器件。

这种方式在编程速度、编程要求上要优于前四种器件,不过SRAM型器件的编程信息存放在RAM中,在断电后就丢失了,再次上电需要再次编程(配置),因而需要专用的器件来完成这类配置 *** 作。

(6)Flash型。Actel公司为了解决上述反熔丝器件的不足之处,推出了采用Flash工艺的FPGA,可以实现多次可编写,同时做到掉电后不需要重新配置,现在Xilinx和Altera的多个系列CPLD也采用Flash型。

参考资料:百度百科-可编程逻辑控制器

百度百科-PLD

PLD里是一堆逻辑门,你像搭积木一样把他们组合起来实现一定的逻辑,而单片机里面有一个处理器,你是提供指令,单片机按顺序执行。

单片机是通过程序改变I/O口的电平来控制外围器件工作。PLD是通过编程改变芯片的内部结构。

比如单片机有三个I/O口A,B,C,可通过编程控制A,B,C何时输出高,低电平。

再比如PLD有三个I/O口A,B,C,可通过编程使C=A&B或使C=A|B。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12134169.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存