1、cpld和fpga的原理,相同点和不同点。
cpld(complex programmable logic device)复杂可编程逻辑器件,是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过**电缆将**传送到目标芯片中,实现设计的数字系统。
fpga(field-programmable gate array)现场可编程门阵列。它采用了逻辑单元阵列lca这样一个概念,内部包括可配置逻辑模块clb、输出输入模块iob和内部连线三个部分。
相同点:两者都包括了一些相对大数量的可编程逻辑单元,cpld逻辑门的密度在几千到几万个逻辑单元之间,而fpga通常是在几万到几百万。
不同点:cpld更适合完成各种算法和组合逻辑,fpga更适合于完成时序逻辑。换句话说,fpga更适合于触发器丰富的结构,而cpld更适合于触发器有限而乘积项丰富的结构。
cpld的连续式布线结构决定了它的时序延迟是均匀的和可**的,而fpga的分段式布线结构决定了其延迟的不可**性。
在编程上fpga比cpld具有更大的灵活性。cpld通过修改具有固定内连电路的逻辑功能来编程,fpga主要通过改变内部连线的布线来编程;fpga可在逻辑门下编程,而cpld是在逻辑块下编程。
fpga的集成度比cpld高,具有更复杂的布线结构和逻辑实现。
cpld比fpga使用起来更方便。cpld的编程采用e2prom或fastflash技术,无需外部存储器芯片,使用简单。而fpga的编程信息需存放在外部存储器上,使用方法复杂。
cpld的速度比fpga快,并且具有较大的时间可**性。这是由于fpga是门级编程,并且clb之间采用分布式互联,而cpld是逻辑块级编程,并且其逻辑块之间的互联是集总式的。
在编程方式上,cpld主要是基于e2prom或flash存储器编程,编程次数可达1万次,优点是系统断电时编程信息也不丢失。fpga大部分是基于sram编程,编程信息在系统断电时丢失,每次上电时,需从器件外部将编程数据重新写入sram中。其优点是可以编程任意次,可在工作中快速编程,从而实现板级和系统级的动态配置。
cpld保密性好,fpga保密性差。
一般情况下,cpld的功耗要比fpga大,且集成度越高越明显。
2、ip核的概念、分类,以及每一类的特点。
ip核,全称知识产权核,是指某一方提供的、形式为逻辑单元、芯片设计的可重用模块。
ip核分为软核、硬核和固核。软核通常是与工艺无关、具有寄存器传输级硬件描述语言描述的设计**,可以进行后续设计;硬核是前者通过逻辑综合、布局、布线之后的一些列工艺文件,具有特定的工艺形式、物理实现方式;固核则通常介于上面两者之间,它已经通过功能验证、时序分析等过程,设计人员可以以逻辑门级网表的形式获取。
软核。软核在eda 设计领域指的是综合之前的寄存器传输级模型;具体在fpga 设计中指的是对电路的硬件语言描述,包括逻辑描述、网表和帮助文档等。软核只经过功能**,需要经过综合以及布局布线才能使用。
其优点是灵活性高、可移植性强,允许用户自配置;缺点是对模块的**性较低,在后续设计中存在发生错误的可能性,有一定的设计风险。软核是ip 核应用最广泛的形式。
硬核。以经过完全的布局布线的网表形式提供,这种硬核既具有可预见性,同时还可以针对特定工艺或购买商进行功耗和尺寸上的优化。尽管硬核由于缺乏灵活性而可移植性差,但由于无须提供寄存器转移级文件,因而更易于实现ip保护。
固核。固核通常以rtl **和对应具体工艺网表的混合形式提供。将rtl 描述结合具体标准单元库进行综合优化设计,形成门级网表,再通过布局布线工具即可使用。
和软核相比,固核的设计灵活性稍差,但在可靠性上有较大提高。目前,固核也是ip 核的主流形式之一。
3、低功耗设计主要从哪两个方面进行设计。
功耗管理的核心思想是设计并区分不同的工作模式。其管理方式可分为动态功耗管理和静态功耗管理2种。动态功耗管理的思想就是有选择地将不被调用的模块挂起,从而降低功耗。
静态功耗管理是对待机工作模式的功耗进行管理,它所要监测的是整个系统的工作状态,而不是只针对某个模块。如果系统在一段时间内一直处于空闲状态,则静态功耗管理就会把整个芯片挂起,系统进入睡眠状态,以减少功耗。
软件**的功耗优化主要包括:①在确定算法时,对所需算法的复杂性、并发性进行分析,尽可能利用算法的规整性和可重用性,减少所需的运算操作和运算资源。②把算法转换为可执行**时,尽可能针对特定的硬件体系结构进行优化。
③在操作系统中充分利用硬件提供的节电模式。随着动态电压缩放技术的出现,操作系统可以通过合理地设置工作状态来减少功耗。
低功耗设计的主要方法有:
并行结构:并行结构是将1条数据通路的工作分解到2条通路上完成。并行结构降低功耗的主要原因是其获得与参考结构相同的计算速度的前提下,其工作频率可以降低为原来的1/2,同时电源电压也可降低。
流水结构:电路流水就是采用插入寄存器的办法降低组合路径的长度,达到降低功耗的目的。
编码优化:一般可采用one-hot码、格雷码和总线反转码降低片上系统总线的功耗。
one-hot码在一个二进制数中只允许1个数位不同于其他各数位的值;格雷码在任何2个连续的数字其对应的二进制码只有1位的数值不同。由于在访问相邻的2个地址的内容时,其跳变次数比较少,从而有效地减少了总线功耗。总线反转码是在传输数据时考虑相邻数据之间的关系来决定传输的格式,从而减少总线的有效翻转数,进而减少系统的功耗。
在寄存器级进行低功耗设计的主要方法:
门控时钟:门控时钟有2种:门控到达逻辑模块的时钟和门控到达每个触发器的时钟。
但不管是哪一种,都能起到降低功耗的作用。当模块不工作时,可以关闭该模块,从而达到减少功耗的目的。
模块级时钟门控方法:当寄存器保持数据时,可以关闭寄存器时钟输入,减少功耗。
嵌入式系统导论
这将称为嵌入式系统最大的应用领域,冰箱 空调等的网络化 智能化将引领人们的生活步入一个崭新的空间。即使你不在家里,也可以通过 线 网络进行远程控制。在这些设备中,嵌入式系统将大有用武之地。4 家庭智能管理。水 电 煤气表的远程自动抄表,安全防火 防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,...
嵌入式ARM嵌入式系统设计
摘要 本系统设计了基于arm系统的嵌入式硬件平台,其中主要介绍了系统母版的具体电路实现,其硬件电路已经通过了信号完整性分析。中国 网 关键词 arm 嵌入式系统 中图分类号 tp368.1 文献标识码 a 文章编号 1007 9416 2012 12 0104 01 1 序言 本系统是设计一款基于a...
嵌入式系统
期末作业考核。满分100分。一 判断题 每题3分,共30分 1.嵌入式系统中的软件系统主要由嵌入式操作系统和应用软件组成,其中嵌入式微处理器属于嵌入式软件系统的核心。答 错。2.运行在智能手机或平板电脑中的android系统是一种嵌入式操作系统。答 对。3.windriver公司所提供的软件开发包是...