虽然只听了上午的部分,不过也多少了解了关于7系列的一些东西,所以对FPGA开发有了一些疑问,在这写出来,希望可以和大家交流,也希望论坛里的大虾们可以指点一下。
1. 现在两家最大的FPGA供应商ALT和XI的产品越来越高端,尤其是XI,就那现在的7系列来说,从工艺到结构到片上的资源,各方面的水平不算最先进,也是最先进之一。片内集成的功能模块也越来越多,这样会不会让设计越来越依靠器件,RTL代码的可移植性也就越来越差???个人理解的可编程逻辑器件就是因为某些ASIC无法满足用户的特殊要求而用来在原有基础上进行硬件平台的升级、扩展的器件,它本身并不是重点,而是上面跑的逻辑。但是个人感觉现在的FPGA按现在的模式发展到一定程度,用它们做出的产品从某种意义上来说依然是全定制的,只不过ASIC不再是焊到板子上的分立器件,而是集成了众多功能于一体的FPGA芯片。用户的逻辑功能更多依靠器件本身的资源,那么可编程的硬件平台意义在哪???开源硬件的意义在哪???相对ASIC来说它的优势在哪?仅仅是资源的丰富吗?但是在丰富资源的同时是不是也是一种浪费呢??
2. 关于7系列使用C语言的进行综合的工具。在Xilinx的新开发工具Vivado里推出了这种综合工具,众所周知,不管语法再怎么相似,硬件描述语言(此处指Verilog)和C语言还是有本质区别的,顺序性和并行性根本就是两个概念,就像一对双胞胎一样,就算他们的长相大家都没办法分辨,他们也是两个不同的人。。所以即便可以对C进行RTL的转换,还是要依靠人为的加一些约束条件。那么既然无法将C自然的转换为电路结构,为什么要开发这种功能呢?因为没用过这套新的开发环境,所以不知道效果如何。用通用软件语言进行综合的效率可以比专用的硬件描述语言还高吗?翻译出来的电路结构准确性如何?既然要靠工程师自己添加转换的约束条件,那为何不直接用硬件描述语言综合,那样岂不是一步到位?
|