cpld/fpga一些问答
By: flanixtop
不同厂家的叫法不尽相同,pld是可编程逻辑器件的总称,早期多eeprom工艺,基于乘积项结构。 fpga是指现场可编程门阵列,最早由xilinx公司发明。多为sram工艺,基于查找表结构,要外挂配置用的eprom。xilinx把sram工艺,要外挂配置用的eprom的pld叫fpga,把flash工艺、乘积项结构的pld叫cpld;altera把自己的pld产品:max系列,flex/acex/apex系列都叫作cpld,即复杂pld,由于flex/acex/apex系列也是sram工艺,要外挂配置用的eprom,用法和xilinx的fpga一样,所以很多人把altera的felx/acex/apex系列产品也叫做fpga.
-zakme
l'w1z:y@ntop 1)nios ii嵌入式处理器是一个用户可配置的通用risc嵌入式处理器。它的易用性和灵活性使它成为世界上最流行的嵌入式处理器之一。
d2q!t@7a q{^p 2)cyclone ii fpga系列是价格极其敏感应用的正确选择,因为其提供了与所有其他成本优化fpga系列相比最低的单le价格。每个cyclone ii器件都被设计拥有一套最佳的功能,包括:● 多达68,416 le用于高密度应用多达1.1兆比特的嵌入式处理器用于通用存储 ● 多达150个18x18 嵌入式处理器用于低成本数字信号处理(dsp)应用 ● 专用外部存储器接口电路用以连接ddr2、ddr和sdr sdram以及qdrii sram存储器件 ● 最多4个嵌入式pll,用于片内和片外系统时钟管理 ● 支持单端i/o标准用于64-bit/66-mhz pci和64-bit/100-mhz pci-x (模式1)协议 ● 具有差分i/o信号,支持rsds、mini-lvds、lvpecl和lvds,数据速率接收端最高达805兆比特每秒(mbps),发送端最高622mbps ● 对安全敏感应用进行自动crc检测 ● 具有支持完全定制nios? ii嵌入式处理器 ● 采用串行配置器件的低成本配置解决方案 ● 可通过quartus ii软件的opencore plus评估功能进行免费的ip功能评估 ● quartus ii网络版软件提供免费软件支持。
vt+_ qx
cx/]!yc?5ftop :设计pld/fpga内部电路与设计74的分立电路是有区别的。这个问题是由于电路中的毛刺造成的。电路布线长短不同造成延时不一致,有竞争冒险,产生毛刺。分立元件之间存在分布电容和电感可以滤掉这些毛刺,所以用分立元件设计电路时,很少考虑竞争冒险和毛刺问题,但pld/fpga内部没有分布电容和电感,不可以滤掉任何毛刺(哪怕只有1ns)。有些毛刺是可以忽略的,有些是致命的(如d触发器的clk,clr,prn端)。这些致命的毛刺将导致电路不能正常工作。这是设计fpga和设计分立元件最大的不同。可以通过修改电路减少有害毛刺。根据经验,几乎所有稳定性或可靠性问题均由pld内部电路设计不合理造成的。
a[;m{@/a2xptop 当需要对某一信号作一段延时时,初学者往往在此信号后串接一些非门或其它门电路,此方法在分离电路中是可行的。但在fpga 中,开发软件在综合设计时会将这些门当冗余逻辑去掉,达不到延时的效果。用altera公司的maxplusii开发fpga时,可以通过插入一些lcell原语来产生一定的延时,但这样形成的延时在fpga芯片中并不稳定,会随温度等外部环境的改变而改变,因此并不提倡这样做。在此,可以用高频时钟来驱动一移位寄存器,待延时信号作数据输入,按所需延时正确设置移 位寄存器的级数,移位寄存器的输出即为延时后的信号。此方法产生的延时信号与原信号比有误差,误差大小由高频时钟的周期来决定。对于数据信号的延时,在输出端用数据时钟对延时后信号重新采样,就可以消除误差。
j[ f#ks$ru7rp ip核是指:将一些在数字电路中常用但比较复杂的功能块,如fir滤波器,sdram控制器,pci接口等等设计成可修改参数的模块,让其他用户可以直接调用这些模块,这样就大大减轻了工程师的负担,避免重复劳动。随着cpld/fpga的规模越来越大,设计越来越复杂,使用ip核是一个发展趋势。不过目前大多数库是收费的。