[FPGA博客大赛]我的第一块Xilinx FPGA 开发板 2010-03-09 11:45
工作了两年后,想买个FPGA开发板,可是经过一番考察比较,发现市面上所出售的开发板很贵,而且没有专门针对数字IC 设计的,因此想做自己做一个开发板,我们公司用的是Xilinx 的virtex 4 系列的FPGA, 所以我选择Xilinx 低端的spartan 3 系列的XC3S400 作为开发板的FPGA ,本来开始选择的是XC3S500E ,但是后仔细阅读文档后发现XC3S500E 有25 个引脚只能做为输入,这是一个很大的缺陷,最终选择了XC3S400。
我仔细阅读了spartan 3 系列FPGA的文档,发现spartan 3 系列FPGA 设计的难点在于电源部分和配置电路, 由于现在主流的数字芯片电压都是3.3v ,所以FPGA 的I/O 电压要设置为3.3v ,这给配置芯片带来了不少麻烦,因为FPGA的配置引脚是由辅助电压供电的,是2.5v 的,还有一些其他引脚是I/O 电压,即3.3v 的,这些引脚要连接到配置芯片上,配置芯片若由2.5v 供电,那么这些引脚的电压会不符合,若由3.3v供电,配置引脚的电压会不符合,因此这里就需要注意一下。关于FPGA 3.3v 的配置Xilinx 有专门文档讲解,请到Xilinx 官方网站下载, 也有中文的。
另外就是电源的设计了,TI出了一款专门的针对Xilinx Spartan3 系列的电源芯片,TPS75003 ,如果用这个芯片的话,供电顺序已经做了处理,基本没什么问题。如果用单独的LDO等 给FPGA 供电的话,由于有上电顺序的原因可能会产生过剩电流,这里需要注意的是上电顺序。可以在各电源上加电容来调整上电顺序。具体的上电顺序请仔细研读Xilinx文档。根据Xilinx文档上讲的,早期的FPGA对VCCO的上升斜率也有要求,如果FPGA 的掩膜版本号是E 及以后的对VCCO的上升斜率没有要求,这里也需要注意一下。
以上是设计Xilinx Spartan3 FPGA 最小系统时需要注意的几点,其他的外围的设计就要看个人的应用了,我的开发板上主要有高速的USB PHY CY7C68000, 全速的USB PHY PDIUSBP11A, 以及I2C 接口的eeprom ,串口,等等的一些外围,我的开发板主要是用来验证和测试ASIC。有关此开发板详细内容请加QQ群69952830 讨论。群空间里面有图片。
2月3号终于把PCB画好,发出去做板了,本想在2月10号拿到板子后,去找个专门焊芯片的把几个比较难焊接的芯片先焊上去,结果2月11号才拿到板子,焊芯片的都放假了,没办法只能自己硬着头皮焊了,FPGA是pq208 封装的,第一次焊这种封装的芯片,结果最后焊的是引脚也歪了,焊盘和铜线也翘起来了,我以为这片80元的FPGA就报废了,结果经过我的一番修理,歪了的引脚肉眼看起来是连到一起的,可是用万用表测试,是分开的,最终测试都没有误连接后,把电源配置芯片焊上去,上点,联机,结果电脑出现unknown device,进过一番测试,发现了一些小问题,还是有关配置的问题(配置这块需要特别注意),电脑识别设备了。我的第一块FPGA 开发板基本完成(主要就是FPGA主芯片和配置电路这块,其他模块比较简单,应该没什么问题)。
这个开发板叫做MaLogic ASIC 开发板,MaLogic读做My Logic ,可以解释为魔法逻辑,Magic Logic 的缩写,也可理解为我的逻辑 My Logic。