15.2.2. 功能描述¶
15.2.2.1. 版本¶
由于FPGA资源有限,无法实现芯片的全部逻辑,也由于模块的验证需求不尽相同,开发一款芯片 往往会实现多个FPGA版本,通过制作bitfile选择项不同,实现不同资源的bitfile,FPGA版本制作 bitfile选择项目如 表 15.1 所示。
PROCESS/MEMORY/DISPLAY/ENGINE选择模块为互斥,只能从三/二选一
除了部分接口不出IO,其他模块默认包含在FPGA中
分类 |
选择1 |
选择2 |
选择3 |
备注 |
---|---|---|---|---|
PROCESS |
CPU |
PCIE |
||
MEMORY |
DDR2 |
DDR3 |
NDDR |
|
DISPLAY |
LVDS |
MIPI |
NLCD |
选择1包含LVDS&RGB |
ENGINE |
CE |
GA |
VE |
选择1包含CE&SID |
处理器选择说明
PROCESS选择项为CPU/PCIE,两者差别如 图 15.1 所示, 左边是选择CPU,右边是选择PCIE。

图 15.1 CPU和PCIE版本的区别¶
CPU选择项版本用于各种功能验证以及操作系统调试; CPU选择项版本等同于ASIC实现,通过PC机连接仿真器,仿真器连接到FPGA的JTAG接口,控制CPU实现访问。
PCIE选择项版本主要用于DE/GE/VE等具有大吞吐数据的模块自动化验证; PCIE选择项版本通过PC的PCIe连接到FPGA PCIe,FPGA实现PCIe转AXI,使用AXI进行传输和控制; 具有数据吞吐量大(2.5Gbps,当前使用<5MB,后续需要进一步提升)且方便自动验证。
接口模块说明
由于FPGA IO限制,接口模块往往没有包括ASIC所有模块;主要表现为在有多套一样的模块时, FPGA套数没有实际芯片那么多,具体套数如 表 15.2 所示。 接口IO分配的具体位置可参考附录1
模块 |
套数 |
备注 |
---|---|---|
UART |
3 |
UART0: 2线用于DEBUG,UART1/2: 3线用于RS485验证 |
TWI |
4 |
TWI0/1:CON,TWI2: AUDIO-AC101,TWI3: DVP/MIPI-CSI |
CIR |
2 |
|
CAN |
2 |
MIPI |
GMAC |
2 |
GMAC0: RMII 100M,GMAC1: RGMII 1000M |
USB |
2 |
USB0: DEVICE,USB1: HOST |
I2S |
1 |
接AC101 |
DMIC |
1 |
|
SPK_OUT |
1 |
|
SPI |
3 |
SPI0/1用于SPI NAND/NOR,SPI2用于PWMCS ADC使用 |
SDMC |
3 |
|
PWM |
||
ADCIM |