工作了两年后,想买个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。