如果一个设计在开发板上验证了,那么下一步就需要自己设计原理图了。这篇笔记着眼于原理图设计,结合Cyclone V GX的器件特性,简单地谈一谈经验。
1. 开发板原理图和PCB的提取
开发板是开源的,原理图和PCB的源文件都可以得到。原理图采用ORCAD设计,可以提取出大量的原理图symbol. PCB每个人使用的设计工具都不一样,如果是使用PADS的话,9.4.1版本后带有Allegro转换功能,可以转成PADS,进而提取出封装库。
2. 电源供电
Cyclone V GX不要求各种电源的特定上电顺序。每种电源的电流大小可以使用EPE工具,就是那个Excel表格来估算。需要先有个工程,完整编译后,在Quartus II中生成EPE文件,再导入Excel. Cyclone V减少了电源的种类,因此VCC Core的电流比以往的器件要大,这个在设计时需要注意。至于开关电源芯片或者模块的选择,TI,Linear都有专门的Guide PDF. 如果有需求,开发板上也有电流测量电路,可以使用软件包来读取相关信息。
3. 时钟分配
GXB的参考时钟可以直接驱动内部逻辑,内部的PLL可以提供参考时钟给GXB。内存控制器的参考时钟有特殊的管脚要求。FPLL比传统PLL精度高。我建议一切需要在Quartus II中编译验证,检查Error和Warning. 原理图设计千万不敢随意揣测。
4. 内存控制器
在官网下载Device Pin Out来进行管脚连接和分配。使用硬核内存控制器的话,要注意同一个Bank上有些IO是接地的。这个不要漏掉。为了方便可以使用开发板上的内存型号,这样将来在例化的时候会简便很多。注意器件速度等级不同,内存接口的fmax也不同。分配好管脚后在Quartus II中编译验证。
5. 配置器件
首先注意配置器件的电平,EPCS和EPCQ都是3.3V。其次是FPGA的对应管脚和Bank的电平选择,及相应的MSEL设置。Cyclone V GX的串行配置电平需要设为3.3V。设计时需要仔细核对。
很多时候FPGA工程师不只是写HDL,综合并下载,需要在各个环节都有所了解。因为很多时候Debug是一个团队的事,没有人能完全独立。所以对原理图多了解一些,还是很有好处的。如果FPGA工程师的软件编程能力很强(C和脚本),那么会是一个非常重要的asset. 最简单可以使用Nios II,来搭建系统级的设计。更进一步可以开发些System Console,简化和加速硬件设计。