国产FPGA厂商:紫光同创,安路科技,高云半导体,复旦微电子,智多晶,遨格芯,华微科技,京威齐力
润石,圣邦微,兆易创新,信路达,新源汇博,扬兴,芯力特,中科银河芯等
FPGA:可通过编程来进行修改内部逻辑功能的数字集成电路(芯片)
CLB:可配置逻辑块
LUT:查找表
FF:触发器 类似DQ触发器
FPGA结构:
PL:可编程的FPGA
PS:
APU:应用处理单元 包含arm处理器和其他外围电路一级缓存,二级缓存
AXI接口:低延迟,高带宽
PS的内部结构图:
红框内是APU
黑线上面是PS,下面是PL
GIC:通用的中断控制器
SWDT:系统看门狗,用于当系统异常时进行复位
TTC:定时器
System Level Contral Regs:系统级控制 用于 IO外设的状态控制
DMA 8:直接内存访问 用于协助CPU进行大量的数据搬移 8代表8通道
Central Interconnect:互联开关
Clock Generation:时钟产生电路,用于产生不同的时钟
Reset:复位电路的管理 如上电复位和看门狗复位
I/O Peripherals:IO外设 USB、GigE千兆网控制器、SD、GPIO低速如按键,控制灯、UART、CAN、I2C、SPI
MIO:复用的IO 54个引脚
EMIO:扩展IO,当MIO54个引脚不够用时可以用这个扩展引脚
Memory Interfaces:连接存储类的外设
SRAM:静态RAM
DDR2/3.3L:动态RAM
DevC:配置电路,对PS/PL进行初始化的配置 也可进行加密
下面是PS和PL之间的交互高速接口:
AXI
EMIO
XADC:可采集外部模拟电压,也可采集芯片内部的电源,温度
General-Purpose Ports:通用用途端口用于中低端通讯,通讯速率不高
DMA:将PL端数据大量搬移到PS
IRQ:中断
Config AES:配置接口
High-Performance Ports Programmable Logic:高性能接口,当有大量数据需要快速搬运的时候需要
ACP:加速一致性接口,连接到SCU中直接访问SCU内部的缓存
APU的内部结构图:
MMU:内存管理单元,实现虚拟地址到实际物理地址的映射。
NEON:NEON引擎实现单指令多数据(SIMD)功能
FPU:浮点运算单元,对浮点运算进行一个加速
L1(D) L1(I):一级cache储存器分为数据指令缓存和指令缓存,每个32kb
二级缓存cache:是共享的512kb
OCM:片上储存器RAM256kb
SCU:当ARM同时访问二级缓存时进行仲裁,也可与PL相连
PL和PS数据交互的常用接口:
General-Purpose Ports:通用端口,用于中低速通讯,有两个,上面的ps做主机,下面的ps做从机 共4个接口 是32位的 简称GP接口
High-Performance Ports Programmable Logic:高性能接口,当有大量数据需要快速搬运的时候需要要到,简称HP接口 PS做从机 PL做主机 其中FIFOs 用于缓存数据
ACP:加速一致性接口,连接到SCU中直接访问IPU内部的缓存
AXI接口:高级可扩展总线
AXI4或AXI4-Full:用于中高速传输,支持突发传输,需要提供传输地址和数据
AXI4-Lite:用于低速传输,不支持突发传输,需要提供传输地址和数据,占用资源比AXI4少
AXI4-Stream:大量数据的高速传输,不需要提供地址
veilog基础语法
位宽少的,高位补0
veilog程序框架
状态机