第一章 课程导入:紫光同创FPGA产品线介绍、学习目标、课程整体框架与学习方法
FPGA(现场可编程门阵列)作为数字电路设计领域的关键器件,其灵活性和并行处理能力使其在通信、工业控制、人工智能、视频处理等场景中扮演着不可替代的角色。长期以来,全球FPGA市场主要由海外厂商主导,而随着国产半导体产业的快速发展,以紫光同创为代表的国产FPGA厂商正逐步打破这一格局。紫光同创(Pango Micro)作为紫光集团旗下专注于FPGA研发与销售的高科技企业,其产品覆盖从低功耗CPLD到高性能千万门级FPGA的完整谱系,并提供了配套的PDS(Pango Design Suite)开发环境。本章作为整个课程的导入,将系统梳理紫光同创FPGA的产品线布局,明确本课程的学习目标,并给出课程的整体框架与高效学习方法,帮助学习者建立宏观认知,为后续的硬件开发与数字电路设计实践打下坚实基础。
1.1 紫光同创FPGA产品线全景解析
核心原理:国产FPGA的差异化布局
紫光同创的FPGA产品线覆盖了从低密度到高密度、从纯逻辑到嵌入式SoC的完整梯度。理解其产品线是选型的第一步。其产品主要分为四大系列:Titan系列(如Titan-60、Titan-100)面向高性能计算与通信,采用先进的工艺节点,逻辑单元规模从数十万到上千万门,内置高速SerDes、PCIe硬核、DDR3/4控制器等,适用于基站、OTN传输、AI加速卡等场景;Logos系列(如Logos-25、Logos-50)主打高性价比与低功耗,在同等规模下价格更具竞争力,适合工业控制、视频采集、仪器仪表等中端应用;Compact系列(如Compact-9)面向低功耗、小封装需求,常用于电池供电的便携设备或接口桥接;CPLD与SoC系列则提供非易失性逻辑器件以及集成ARM Cortex-A系列处理器的异构平台,满足系统级集成需求。
判断方法:根据项目需求进行选型
在实际工程中,选型需综合评估逻辑资源(LUT/FF)、DSP单元数量、Block RAM容量、可用IO数量、高速收发器速率、封装尺寸与功耗预算。下表给出了典型选型参考维度:
| 需求维度 | Titan系列 | Logos系列 | Compact系列 |
|---|---|---|---|
| 逻辑规模(LUT) | 100K ~ 1M+ | 25K ~ 100K | 1K ~ 10K |
| 高速接口 | SerDes 12.5Gbps+ | LVDS/MIPI | SPI/I2C |
| 典型应用 | 通信、AI、雷达 | 工业、视频、控制 | 消费电子、桥接 |
| 开发工具 | 统一使用PDS(Pango Design Suite) | ||
1.2 课程学习目标与能力模型
核心原理:从“会用”到“会设计”的进阶
本课程的目标不是简单地教会你如何操作PDS软件,而是建立完整的国产FPGA硬件开发思维。具体而言,学完本课程后,你将具备以下能力:第一,能够独立完成紫光同创FPGA的板级硬件设计,包括电源树设计、时钟/复位电路、配置电路以及外围接口(如DDR、PCIe、LVDS)的硬件连接;第二,能够使用Verilog HDL进行数字逻辑设计,掌握时序逻辑、组合逻辑、状态机、FIFO等核心设计范式;第三,能够熟练运用PDS工具进行综合、布局布线、时序分析与在线调试(使用内置逻辑分析仪);第四,能够针对实际项目进行系统级方案设计,例如搭建一个基于FPGA的视频采集与显示系统。
操作流程:课程阶段划分
为了实现上述目标,课程内容被精心划分为四个递进阶段:
- 基础认知阶段(第1-5章):介绍FPGA内部结构(CLB、BRAM、DSP、IO)、紫光同创开发板资源、PDS工具安装与工程创建。
- 核心设计阶段(第6-15章):深入Verilog语法、组合/时序逻辑设计、有限状态机、跨时钟域处理、常用接口协议(UART、SPI、I2C)的实现。
- 系统集成阶段(第16-25章):涉及DDR3/4控制器、PCIe接口、LVDS高速传输、MIPI摄像头接口、嵌入式软核(如Pango SoftCore)集成等复杂系统设计。
- 调试与优化阶段(第26-30章):聚焦时序约束与收敛、功耗优化、芯片温度管理、板级信号完整性以及基于PDS的逻辑分析仪进行在线排障。
1.3 课程整体框架与学习方法
核心原理:工程化学习路径
FPGA学习最忌讳“只看不练”。本课程框架的设计遵循“硬件设计为骨、数字逻辑为肉、系统调试为魂”的理念。每一章都包含原理讲解、代码/电路实例、上机实验和常见错误分析。课程配套的PDS工具是紫光同创官方提供的免费开发环境,支持从RTL编辑、仿真到比特流生成的完整流程。学习方法上,建议采用“三遍法”:第一遍通读教材与课件,理解概念;第二遍跟着实验手册操作,记录每一步的现象与问题;第三遍脱离手册,独立完成一个类似的小项目(如LED流水灯升级为按键控制呼吸灯)。
案例拆解:一个典型的FPGA开发流程
以“点亮LED”这一经典实验为例,其完整流程如下:
- 需求分析:确定LED连接在FPGA的哪个引脚,是高电平点亮还是低电平点亮。
- 逻辑设计:编写Verilog代码,如
assign led = sw;将开关状态直接赋给LED。 - 综合与布局布线:在PDS中运行综合,查看资源利用率报告。
- 引脚约束:在 .fdc 约束文件中将逻辑信号映射到物理引脚,并设置IO电平标准(如LVCMOS33)。
- 生成比特流并下载:连接下载器,将 .bit 文件烧录至FPGA,观察硬件现象。
这个过程虽然简单,却涵盖了FPGA开发的全部核心步骤。在后续章节中,我们将逐步替换其中的“逻辑设计”部分为复杂的IP核或软核处理器,但流程骨架不变。
常见误区与总结复盘
此外,不要忽视硬件电路本身。FPGA是芯片,其正常工作依赖于稳定的电源(核心电压、IO电压)、准确的时钟源(晶振)和可靠的复位电路。在调试过程中,如果代码仿真正确但板级不工作,请优先使用万用表检查电源电压,使用示波器观察时钟波形,这往往能快速定位问题。