Actel FPGA结构简介
- 格式:doc
- 大小:239.70 KB
- 文档页数:10
如何解决Actel FPGA烧写两大难题?摘要Actel FPGA烧写的两大难题:Actel Flash构架特点、难点;批量烧写的稳定性,如何拆解?为什么Actel的FPGA烧写难?Actel的FPGA为全球独创的Flash构架的FPGA,独创就在于他不同于普通RAM构架,不需要外部的EPROM、PROM存储器来保存内部逻辑状态的配置信息。
Actel的FPGA配置信息都存放在内部的Flash里面,直接忽略外部存储器,从而保证他的高安全性。
这个Flash构架的特性就决定了,Actel的 FPGA的编程具有一定的难度。
拆解Actel FPGA烧写的两大难题难题一:Actel Flash构架特点、难点Actel FPGA内部Flash有个特点,配置数据不能读回,这样来保证芯片的高安全性。
对于编程者来讲,如何保证你写入的配置数据、加密密码是成功了呢?编程者的通常做法是,读出写入芯片的数据然后与缓冲区的数据进行对比,如果一致,就校验成功;如果不一致,就校验失败。
Actel FPGA是不允许读回的,通常的做法是无法校验的。
怎么办?难题二:批量烧写的稳定性任何批量烧写工具,裸片烧写或在线烧写,最关键的指标就是稳定性。
稳定性就需要对编程口线进行严格的电气控制,经常有客户反馈在线烧写时某I/O口被击穿了,其实就是由于在直接与PCB进行连接的过程中,线材可能会串扰进来一些其他电路的尖峰电压、瞬态大电流等,形成对电路板上IC的冲击,导致了损坏芯片的情况。
一旦烧写批量大起来,生产良率如何保证?一个工具解决两大难题AK100Pro-4P是一款一拖四的量产型在线编程器,可以支持四个通道同时烧写,只需连接 FPGA芯片的JTAG接口,即可完成在线烧写操作。
图1 AK100Pro-4P在线编程器AK100Pro-4P在Flash烧写上的一些巧办法上一节提到无法用通常的做法来校验Actel FPGA,AK100Pro-4P是如何实现的呢?AK100Pro-4P的做法是再发一次相同的数据给芯片,让Actel FPGA自己进行比对校验,并返回校验的结果,充分利用Actel FPGA本身的特性,既保证了代码的安全,又保证编程的可靠。
fpga 基础单元
组成FPGA 的两个最基本的部分是组合逻辑以及时序逻辑,分别实现这两个基本部分的结构就是FPGA 的基本单元。
组合逻辑部分一般采用查找表(Look-Up-Table,LUT)的形式,时序逻辑部分一般采用触发器(Flip-Flop,FF)的形式。
1、组合逻辑的基本单元
根据数电中的知识,任何一个组合逻辑都可以表示成真值表的形式(逻辑输入对应逻辑输出),也就是任意的真值表所反映的内容都能由组合逻辑实现,查找表(LUT)就能完成这个任务。
2、时序逻辑的基本单元
时序逻辑的基本单元采用 D 触发器,这种触发器是一种在时钟的上升沿(或下降沿)将输入信号的变化转送至输出的边沿触发器。
现场可编程门阵列(FPGA)芯片技术简述杨海钢1前言从1947年第一支晶体管在贝尔实验室诞生,到1958年德克萨斯仪器公司(TI)研究小组研制出第一块集成电路,直至今天甚大规模集成电路继续遵循著名的摩尔定律(Moore’s law)不断向前发展,人类社会已经从电子时代步入以微纳技术为基础的信息时代,集成电路也已渗透到了我们日常生活的每一方面。
图1第一支晶体管及其发明者图2第一块集成电路现场可编程门阵列(Field Programmable Gate Array,FPGA)是半导体技术发展的重要产物,与CPU、DSP一样,是大规模集成电路最重要的组成部分。
它是一种可编程使用的信号处理器件,用户可通过改变配置信息的方式实现所需逻辑功能,而不必依赖由芯片制造商设计和制造的专用芯片。
在过去短短二十多年里,FPGA已从电子设计的外围器件逐渐演变为数字系统的核心,在互联网、通信、图像处理、汽车电子、航空航天和现代军事装备等诸多领域都得到了广泛的应用。
图3 大规模集成电路芯片FPGA的主要特征有:(1)具有可编程逻辑功能模块结构;(2)具有可编程输入/输出模块结构;(3)具有可编程互连资源结构;(4)具有专用EDA(Electronic Design Automation,电子设计自动化)软件对其进行配置和下载。
与传统数字电路系统相比,FPGA具有可编程、高集成度、高速和高可靠性等优点。
通过配置器件内部的逻辑功能和输入/输出端口,将原来电路板级的设计放在芯片中进行,提高了电路性能,大大减轻了印刷电路板设计的工作量和难度,有效提高了设计的灵活性和效率。
与ASIC(专用集成电路,Application Specific Integrated Circuit)相比,FPGA 开发周期短、前期投资风险小、产品上市速度快、市场适应能力强和硬件升级空间大。
当产品定型和扩大产量后,在FPGA中实现的设计也可迅速定制为ASIC 进行投产。
Actel FPGA结构简介这篇关于Actel不同种类设备系列的综述涵盖了在充足细节上的主要结构特征,以确保读者相当熟悉Actel的设备,从而能从本节其余部分获取尽量多的应用笔记。
关于每个产品功能的细节同样可以用在个别设备的产品说明上。
FPGA结构要求数字化系统设计正在变得越来越难。
系统要求不断增加的复杂性和性能,但是上市时间的紧迫性依旧限制发展周期。
系统花费也是一个重要的限制,因此必须要找到一个满足严格财政指标的解决办法。
这些相互矛盾的需求要求(我们)找到一个最优化的数字逻辑设计解决办法,以同时满足容量、性能、和上市时间的要求。
一个最优化的结构必须能平衡全部相互矛盾的要求。
Actel的结构通过提供容量、性能、耗费和使用舒适度之间的合适平衡来满足了这些全部要求,这期间使用了一个在最优逻辑单元、丰富又相互联系的资源、有效的硅使用量和强力的软件设计工具这四者之间的革新组合。
Actel设备结构一个Actel FPGA的基础结构与一个传统的门阵列的是非常相似的。
这个设备的核心是由被用于执行被需求的逻辑门和存储元素的简单逻辑单元组成。
这些逻辑单元与大量分割的路由磁道相互联系。
与门阵列不同,片段长度是被预先定义和能与低阻抗交换元素联系来建立相互联系信号所要求的准确路由长度。
周围的逻辑核心是;连着设备的I/O衰减器。
这个接口是由负责传输和相互连接从设备核心发到FPGA输出衰减器间的信号的I/O模块组成。
一个一般的Actel FPGA 的一个模型图表如图1所示。
Actel FPGA结构的主要元素是I/O单元,相互联系的资源,定时资源和逻辑单元。
每个Actei FPGA系列都有一个稍稍不同的资源组合,但都是在不同耗费、性能、密集要求之间的优化。
列表1显示每种Actel FPGA系列的能力。
每种能力都在列表1下面的章节里面被精确解释。
逻辑模块描述最优的逻辑模块应该为用户提供性能,效率,和要求执行申请的设计舒适度的正确组合。
如果逻辑模块提供了性能而没有提供效率,那设计的花费和容量要求也许就不能达到。
同样地,如果在性能消耗和使用舒服度的基础上花费和容量要求达到了,那么设备可能就不能使用。
最优逻辑模块必须能严格平衡这些交易,以确保能达到设计者的一些冲突的目标。
简单逻辑模块最初的Actel逻辑模块就是用于ACT1系列上的简单逻辑模块,如图2所示。
它是以多路复用器伟基础的逻辑模块。
通过联系从路由磁道到数据输入的信号来执行逻辑功能,并且逻辑功能也能选择多路复用器的线路。
如果需要的话,输入也能放在逻辑1或0上,即使这些信号总是在路由轨道上可用。
很多很多有用的逻辑功能都能通过这个模块来执行。
大家都知道,多路复用技术是非常有效率的,但是随机的和有次序的逻辑功能也都是有效的。
这些可选项为设计者提供了极好的组合来组合要满足运用各种各样逻辑功能的逻辑容量。
图3显示的是用Actel简单逻辑模块来执行逻辑功能的例子。
注意了,门闩线路能在一个简单的逻辑模块的每点被执行,以及寄存器每点需要两个逻辑模块。
ACT1逻辑单元在一个有组合有次序的逻辑的范围内事极其灵活的。
图1:基本Actel FPGA结构I/O Modules: I/O模块Logic Modules:逻辑模块High—Drive Clock Buffer:高—驱动器时钟缓冲器Channel—Oriented Segmented Routing Tracks:渠道—东方的的段发送跟踪列表1:Actel FPGA系列的主要结构特色总括图2:简单逻辑模块图3:ACT1简单逻辑模块执行逻辑功能举例组合逻辑模块第二代ACT2系列就是在简单逻辑模块上做一些改进。
用两个不同的逻辑模块替换简单逻辑模块,一个是用来执行组合逻辑(被称为组合逻辑模块),另一个是用来执行存储元素(被称为序列逻辑模块)。
在图4的简图里显示的组合逻辑模块与简单逻辑模块相似,但是一个额外的逻辑门被放在了第一级多路复用器上。
这个增添的逻辑门改进了一些组合功能的执行力。
(一些五个输入口的逻辑门现在也能完成这个功能。
)还有,在简单逻辑模块上的第一级多路复用器线路与组合逻辑模块相连。
在简单逻辑模块中,分离的多路复用器选择线路是被用来有有效地执行门闩线路和寄存器。
组合逻辑模块里是没有这个要求的,因为增加了序列逻辑模块。
图5举了一个组合逻辑单元执行逻辑功能的例子图4:组合逻辑模块图5:组合逻辑模块执行逻辑功能举例序列逻辑模块在图6的简图上显示的序列逻辑模块在逻辑单元的输出上有一个专门存储部分的组合逻辑模块。
这个存储部分既是一个寄存器也是一个门闩。
(它也能被绕过,因此逻辑模块也能被用作组合逻辑模块。
)时钟输入也能被选择为活跃的高电位或者为活跃的低电位。
其中一个逻辑门在组合逻辑系列正在丢失,这是它稍稍与组合逻辑模块的不同。
这个逻辑门的排除允许了与组合逻辑部分相分享的信号重置,以达到在没有增加所要求的模块输入的数量的情况下使存储部分可用。
如果存储部分被绕过了,重置的信号就能用来执行所要求的组合模块输入动作。
总之,序列单元和组合单元是交叉存取的,这样就导致了一个逻辑模块的对半组合。
这就决定了在各种各样设计和结果间的最佳设计,得到了极好的利用。
图6:序列逻辑模块宽解码逻辑模块3200DX系列的每一个产品都有大量的优化执行宽带输入相连逻辑功能的特殊逻辑单元,以操作输出缓冲。
宽解码逻辑模块由一个带有可选择输入功能七输入端的与门组成。
这个模块的输出绕过正常的路由网络和直接联系一个特定的输出缓冲器。
这个特色最低的减少了从木块输出到设备缓冲的延迟和这特色能完美地执行与典型可编程逻辑电路设备执行的宽解码功能一样的功能。
宽解码逻辑模块输出也适用于核心逻辑模块,因此它也钠泵用来其他逻辑功能到设备的连接。
如要了解宽解码逻辑模块的更多细节,请看《Series FPGAs》这本书。
在这参考资料手册里能查询数据表和3200DX宽解码逻辑模块应用笔记。
嵌双端口静态存储器3200DX系列的一些产品包含高速双端口静态存储器的专一模块。
这个静态存储器模块被安排在256点模块上,能配置成32X8或64X4.静态存储器模块能发展形成更深更宽的记忆模块。
这种静态存储器是能分开执行读写地址的两端静态存储器,一个是独立数据输入端(用于写地址),另一个是独立数据输出端(用于的读地址)。
读和写能被独立的时钟阅读和写端控制,以减轻使用静态存储器的定时要求。
这个双端结构能极好地执行先入先出发,拥挤缓冲和为了状况控制或不变数据的内部寄存器存储。
3200DX设备有从8位静态存储器模块(应用于A3200DX上)到16位静态存储器模块(应用于A32400DX上)。
如要了解更多关于双端静态存储器结构和功能的细节,请看《Series FPGAs》这本书。
在这参考资料手册里能查询数据表和3200DX双端随机存取存储器的应用笔记。
增强型序列逻辑模块用于ACT3系列的增强型序列逻辑模块是在序列逻辑模块有一个细微的改良,如图7中的简图所示。
序列部分的寄存器上的重置输入没有组合逻辑功能,因此全部的组合逻辑是由寄存器前面的组合逻辑模块来完成。
这样使得在存储部分前的全部简单模块有组合逻辑功能,通过图表或合成的输入简化了设计,并且,这也促进了宽带输入功能的高速改进。
图7:增强型序列逻辑模块简图信道互连全部Actel产品都使用了信道互连结构来取得内部逻辑模块与设备I/O插脚间的联系。
在这个结构上,水平轨道跨越了各种各样预定义分割长度的阵列的长度。
这使得大量大量的路由资源工作起来,也确保了信号总是有它们需要的有效轨道长度。
总之,当需要轨道时,轨道能通过相互间的融合,一起重新创造更长的轨道。
逻辑模块输出能跨越四个信道(两个在上,两个在下),也能与其他任何一个信道联系起来。
这意味着大多数的信号只需要两次融合就能让任何一个逻辑模块输入与任何一个逻辑模块输出连接起来。
在Actel设备里有了足够的可用路由资源导致了位置和路径都是自动完场的,无支配的路由是被要求的。
如要了解Actel设备里的互连有效资源的更多知识,参考设备系列的产品说明。
定时资源Actel设备都有很灵活的定时。
每个序列部分的定时输入能与信道内的定时互连连接起来,也能优化定时资源。
定时互连提供了最大程度上的灵活性,,也允许可能的独立定时。
每个Actel设备也提供了在芯片上的专门定时资源,以改进定时性能和简化序列信号的设计。
在大多数情况下,定时资源也能用作像重置、输出或选择信号一样的高—驱动器全球信号。
每个FPGA系列在执行定时功能的方式上都有稍微不同。
要了解关于每种定时资源的更多知识,参考相关的设备产品说明和应用知识。
定时程序全部Actel FPGA系列都有一两个能提供高驱动器、低偏信号和用于驱动需要这些特征的信号的特殊缓冲器。
这些定时程序用于每个路由的信道,也用于每个逻辑模块。
这允许定时程序信号能作用于序列和组合逻辑模块,提供了带有比专门的定时稍微更低性能的最大程度的灵活性。
专用阵列定时ACT3系列都有一个额外的定时资源,它有一个在核心阵列上被优化来驱动序列模块的高速专用定时缓冲器。
在外部插脚或者内部型号都能驱动这个定时缓冲器。
这个专用阵列定时被优化来驱动序列木块,也能从组合模块上驱动建立存储部分。
专用I/O定时ACT3系列都有另一个定时资源,它有一个在I/O模块里被优化来驱动序列模块的高速专用定时缓冲器。
这个专用I/O定时被优化来驱动I/O模块,也能在阵列中驱动存储部分。
如果通过一个共同的定时来驱动全部存储部分,那么阵列定时与I/O定时能在外部连接起来。
四分之一圆定时3200DX系列都有一个额外的定时资源,它有一个四个被称为扇形定时的特殊高驱动缓冲器。
每个缓冲器都提供跨越大概设备四分之一的一个高驱动信号(一个四分之一园)。
这些缓冲器能用于快速局部定时(也很有可能用于预分频换挡器或计数器),宽楦混乱选择,或者使I/O可用。
特别注意:虽然这些事四分之一圆导向的,然而仅仅一个简单的四分之一园定时都能作用于每个四分之一园。
四分之一圆定时能内部部连接起来跨越设备的一半长。
总之,四分之一圆定时能从内部信号获得,同外部插脚一样。
因此它们能被用作内部驱动高扇出网。
参考3200DX四分之一圆定时应用知识。
I/O模块描述每中Actel FPGA系列都有一个稍微不同的I/O模块。
在ACT1系列里的简单I/O模块优化了低耗费,还有综合系列里面的门闩I/O模块提供了一个在速度与价格间的平衡。
ACT3里的注册I/O模块在同步应用上为了高速度被优化。
要了解关于每种I/O模块的更多知识,参考相关的设备产品说明书和应用知识。
简单I/O模块用于ACT1系列的简单I/O模块(图8所示)是Actel最初发展得I/O模块,也是与逻辑阵列相连的一个简单I/O缓冲器。