芯片设计完成,给到工厂制造,封装后回来,要经过最重要的一个点亮的环节,你知道什么叫做点亮吗?
其实,什么样叫做点亮,每家公司有每家的标准,本着自已不为难自已的原则,一般会有最简单的过程。当然,和不同的芯片也有关系,这里我只是以FPGA芯片为例,说说比较普遍的行业点亮标准。
Step1 专用引脚配置
检查dedicated I/O 相关PIN 是否按照配置方式配置正确。具体保留了哪些专用的引脚实现专用功能。可以举几个例子。
1: 置JTAG模式 mode 引脚
2: 初始化完成 init_b
3: 数据加载完成 done
4: 重新加载 program_b
5: 内部时钟输入 cfg_sel
......
FPGA(可编程逻辑器件)通常具有一些专用的I/O引脚,这些引脚需要按照设计时的配置方式进行正确配置。这些专用的I/O引脚用于连接到外部设备、传感器、其他芯片或模块,以实现数据输入和输出。因此,确保这些引脚按照配置方式正确配置非常重要。
一般会有一个清单,逐条按照描述进行检查即可,每家每型号的FPGA的专用配置会不同。
Step2 上电正常
对电源进行限流,依次对不同引脚进行上电(具体有哪些引脚,这和芯片相关),保证每路电源上升时间大于0.2ms,小于40ms。
通常是为了验证和确保电源电压的稳定性和可靠性。
这个要求的验证背后可能涉及以下几个方面的考虑:
-
电源稳定性: 电源的上升时间是指从电源电压开始上升到稳定工作电压所需的时间。如果电源的上升时间太快,可能会导致电压噪声和不稳定性,对FPGA的正常运行产生不利影响。因此,限流可以确保电源电压的上升时间在可接受的范围内,从而提高电源的稳定性。
-
电源噪声: 电源电压的快速变化可能会引入噪声,影响FPGA内部电路的性能。通过限流,可以减缓电源电压的变化速度,从而减少潜在的电源噪声。
-
可靠性: 电源电压的过快上升可能对电源电路和电子元件产生不必要的应力,从而缩短其寿命。通过控制电源上升时间,可以提高电路和元件的可靠性。
-
电源管理: 一些FPGA和其他集成电路可能具有电源管理功能,可以根据特定的上升时间要求来控制电源电压的变化。通过满足这些要求,可以更好地利用电源管理功能,实现功耗优化。
总之,通过对电源进行限流以确保上升时间在0.2毫秒至40毫秒之间,可以提高FPGA系统的稳定性、可靠性和性能。这是一种设计和验证中的关键参数,有助于确保电源电压在不损害系统的情况下适当上升。
step3 初始化正常
观察引脚int_b pin,若灯亮,表示初始化完成。
当FPGA处理配置复位状态时,init_b将被拉低,当FPGA初始化完成时,init_b将会变成高电平。
step 4 Configure正常
JTAG Interface 正常,接着就应该验证configure是否正常,是否可以正常将bitstream装入。
可以用一个工具来测试JTAG的pram数据写入和读回正确。
step 5 bitsteam下载正常
接着进行bitsteam下载的验证。
Bitstream下载包括 sync,ID Check,load bitstream,CRC 四个环节。可以通过JTAG读取内部寄存器来获取相关信息。load bitstream 完成后,进入 wake up 阶段,wake up完成后,Done信号指示灯亮,显示程序加载完成。
step 6 程序正常运行
最后一步,自然是验证程序能否正常运行了,一般会使用最简单的程序,如:跑马灯。
跑马灯是非常经典的程序,类似软件领域的 printf("hello world!");
FPGA 要能正确运行LED的闪烁程序,需要满足以下几个条件:
1: EDA工具可以将verilog 正常编译为 bitstream。
2: FPGA芯片上电正常,配置电路正常,通过JTAG可以正常烧录bitstream。
3: FPGA的 IO 单元(输入输出),CLC(逻辑单元),SwitchBox 等核心单元能正常工作。
以上6步完成,基本可以认为芯片已点亮!!!!