秋招知识点总结-FPGA基础知识
1、典型FPGA的开发流程
(1)电路设计
(2)设计输出
(3)功能仿真
(4)综合优化
(5)综合后仿真
(6)布局布线
(7)时序仿真
(8)板级调试
(9)芯片编程与调试
1)、输入输出单元(IOB)
2)、可编程逻辑块(CLB)
3)、底层内嵌功能单元(DLL)
4)、丰富的布线资源(可编程布线矩阵)
5)、嵌入式块 RAM(BRAM)
6)、内嵌专用硬核
3、查找表LUT的原理
查找表(look-up-table)简称为LUT,本质上是一个RAM。目前FPGA 中多使用4输入的LUT,所以每一个LUT可以看成一个有4位地址线的16x1的RAM,多于4输入逻辑可以使用多个LUT实现。
4、FPGA芯片内的存储器资源是哪些?
FPGA芯片内有两种存储器资源:一种叫block ram,另一种是由LUT配置成的内部存储器(也就是分布式ram)。block ram由一定数量固定大小的存储块构成的,使用block ram,不占用额外的逻辑资源,并且速度快。但是使用的时钟消耗block ram的资源是其大小的整数倍。
FPGA中可以综合实现为RAM/ROM/CAM的三种资源:BLOCK RAM,查找表,FF触发器。
(1)在生成ram等存储单元的时候,应该首选block ram资源;其原因有二:第一:使用block ram等资源,可以节约更多的FF和4_LUT等底层可编写单元。使用block_ram可以说是不用白不用,最大程度发挥器件效能,节约成本的一种体现;第二:block ram是一种可以配置的硬件结构,其可靠性和速度与用LUT和register构建的存储器更有优势。
(2)弄清FPGA的硬件结构,合理使用block ram资源;
(3)分析block ram的容量,高效使用block ram资源
5、选择FPGA时考虑的因素有哪些?
6、FPGA和CPLD的区别?
CPLD | FPGA | |
内部结构 | 基于乘积项 | 基于查找表 |
程序存储 | 内部EEPROM/FLASH | SRAM,外挂EEPROM |
资源类型 | 组合资源丰富 | 时序资源丰富 |
集成度 | 低 | 高 |
使用场合 | 完成控制逻辑 | 完成比较复杂的算法 |
速度 | 慢 | 快 |
其他资源 | - | PLL,RAM和乘法器 |
保密性 | 可加密 | 一般不能保密 |
FPGA,即现场可编程门阵列,是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。它是当今数字系统设计的主要硬件平台,其主要特点就是完全由用户通过软件进行配置和编程,从而完成某种特定的功能,且可以反复擦写。在修改和升级时,不需额外地改变PCB 电路板,只是在计算机上修改和更新程序,使硬件设计工作成为软件开发工作,缩短了系统设计的周期,提高了实现的灵活性并降低了成本。
ASIC(Application Specific Integrated Circuit),即专用集成电路,是一种为专门目的而设计的集成电路。是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。ASIC的特点是面向特定用户的需求, ASIC分为全定制和半定制。亮点在于专用,量身定制所以执行速度较快。一句话总结就是,市场上买不到的芯片。水果的A系列处理器就是典型的ASIC。
FPGA | ASIC | |
速度 | 慢 | 快 |
个头 | 实现相同的功能规模需要大 | 实现相同的功能规模需要小 |
功耗 | 功耗大 | 功耗小 |
花费 | 便宜 | 贵 |
定位 | 规模小的 | 规模大的 |
10、根据FPGA和CPLD的特点,分别适用于什么情况?(C)
A、CPLD适用于时序逻辑电路,FPGA适用于组合逻辑电路
B、CPLD适用于逻辑较大的设计,FPGA适用于逻辑规模较小的设计
C、CPLD适用于组合逻辑的设计,FPGA适用于时序逻辑的设计
12、FPGA中,可以综合实现为RAM的资源包括(ABD)
13、什么是IP核?有哪些分类?
IP核(Intellectual Property core),即知识产权核。
IP核是一段具有特定电路功能的硬件描述语言程序,该程序通常与集成电路工艺无关,可以移植到不同的半导体工艺中去生产集成电路芯片。由于IP核将一些在数字电路中常用,但比较复杂的功能块设计成可修改参数的模块,因此FPGA的设计人员可以通过调用相关IP核来完成所需逻辑功能,从而节省了大量的开发时间。调用IP核能避免重复劳动,大大减轻设计人员的负担,因此使用IP核必然成为将来FPGA设计的一个发展趋势。
软核(Soft IP Core) : 软核在EDA 设计领域指的是综合之前的寄存器传输级(RTL) 模型;具体在FPGA 设计中指的是对电路的硬件语言描述,包括逻辑描述、网表和帮助文档等。软核只经过功能仿真,需要经过综合以及布局布线才能使用。其优点是灵活性高、可移植性强,允许用户自配置;缺点是对模块的预测性较低,在后续设计中存在发生错误的可能性,有一定的设计风险。软核是IP 核应用最广泛的形式。
固核(Firm IP Core) :固核在EDA 设计领域指的是带有平面规划信息的网表;具体在FPGA 设计中可以看做带有布局规划的软核,通常以RTL 代码和对应具体工艺网表的混合形式提供。将RTL 描述结合具体标准单元库进行综合优化设计,形成门级网表,再通过布局布线工具即可使用。和软核相比,固核的设计灵活性稍差,但在可靠性上有较大提高。 目前,固核也是IP 核的主流形式之一。
14、IP核和硬件原语有什么区别
15、IP核在EDA技术和开发中具有十分重要的地位,IP分软IP、固IP、硬IP、下列所描述的IP核中,对于硬IP的正确的描述为(A)
A、其他选项都不是
B、提供用VHDL语言等硬件语言描述功能块,但不涉及实现该功能块的具体电路
C、提供设计的最终产品——掩膜
16、IP核中用HDL硬件描述语言描述的功能块,不涉及实现该功能块的具体电路的IP核为(A)
17、为什么在FPGA构成的数字系统中要配备PROM或E2PROM?
18、FPGA的下载方式有哪些?
1)主动串行方式(AS)
2)主动并行方式(AP)
3)被动串行方式(PS)
19、FPGA固件烧写方案有哪些?
第一种:是使用专用的AS接口直接烧写该配置芯片,该种方式需要在电路板上设置一个独立的AS接口,占用PCB面积较大,使用起来不方便。
20、JTAG链路加载信号信号线不包含(C)
21、FPGA在烧写FLASH时可以使用三种不同的文件类型,以下哪一种不是?(B)存疑
22、在EDA工具中,能将硬件描述语言转化为硬件电路的重要工具为(B)
23、你所知道的可编程逻辑器件有哪些?
24、FPGA常用的电平标准包括(ABCD)
25、以下是XILINX常用FPGA系列支持的电平标准的有哪些?(ABD)
26、TTL电平的输入高电平即Vh是(A)
27、你知道哪些常用的逻辑电平?
常用逻辑电平:TTL、CMOS、LVTTL、LVCMOS、ECL(Emitter Coupled Logic)、
PECL(Pseudo/Positive Emitter Coupled Logic)、LVDS(Low Voltage Differential Signaling)、
GTL(Gunning Transceiver Logic)、BTL(Backplane Transceiver Logic)、ETL(enhanced
transceiver logic)、GTLP(Gunning Transceiver Logic Plus);RS232、RS422、RS485(12V,
5V,3.3V);
28、下列属于FPGA编译的步骤有(BCE)
29、以下属于verilog语法规定的I/O端口类型的是(ACD)
30、什么是逻辑综合
31、请解释xilinx的FPGA专用术语DCM
32、xilinx 推荐高电平复位?
33、Xilinx的RAM可例化多种类型,如什么?(ABD)
34、用同样的仿真平台在同样的编译环境下,仿真同样的RTL代码,下面哪一个仿真耗时最长(A)
35、下面是芯片中有关GPIO的叙述,不正确的是:(A)
A. GPIO一般只具有0态和1态,不具有高阻状态
B. GPIO的引脚一般是多功能复用的
C. GPIO作为输出接口时具有锁存功能
36、为什么需要IO电路?
37、ESD电路的概念和作用?
概念:ESD,Elecro Static Discharge,即静电放电。
38、FPGA系列的含义?