FPGA设计的问题

来源:百度知道 编辑:UC知道 时间:2024/07/06 16:24:45
《基于Verilog语言的使用FPGA设计》一书的前言中有这么一段话:恰恰相反,有90%的FPGA设计者,他们不够耐心,也很粗心,总是想以很小的话费来编辑和调试程序。他们使用Windows操作系统的PC机。在ASIC设计者看来,他们是芸芸众生。
作者为什么觉得使用Windows操作系统不好呢?请高手指教。
本书的作者不是加拿大人就是美国人

可能有点长,耐心看完~~

其实作者本意并不是攻击某个操作系统,也不是说某个软件。作者这句话只是道破了一个客观存在的问题:就是verification。

这句话可能也不是专门对国内ic制造业说的,这句话应该套用在那些国外的小公司头上。

我没看过这本书,但是测试这个话题一向是ic行业令人作呕的话题。
首先来看两组数据:
国外:代码编写与测试的时间花费是1:3。测试花费占到整个系统设计中的40%。

国内:代码编写与测试花费时间是1:1。测试花费小于系统的20%。
套用一句俗话:好文章不是写出来的,而是改出来的。
好系统不是编出来的,而是改出来的。

FPGA是个独特的行业,FPGA工程师可能集合了程序员,测试员和分析员于一体。所以这个矛盾在FPGA上尤为突出。

测试是个极端的行业,好的测试工程师在企业内部属于技术上层。但是他可能反而很清闲,工资却很高。他可以通过短时间的测试来发现大部分问题,他认为测试是一项富有创意和乐趣的工作。但是更多的测试工程师缺面临工作乏味,压力大,费时费力,并且随时可能被解雇的危险。这又是为什么。

因为专业的测试工程师他们了解整个系统,他们可以为一个系统罗列出所有可能出歧义的地方,大到整个系统的功能,小到某个接口的时序。然后将所有的测试点罗列出来,经过总体设计以后,搭建一个测试平台,搭建这个平台是相当辛苦的,每一个系统都有一套独特的测试方法,他们在程序员开始敲打键盘的时候就开始搭建这个平台。这个平台是个灵活的平台,可以模拟出各种情况。然后再罗列一份测试用例,测试涵盖到实际应用情况的90%(说实话,如果达到70%就已经是一套完整的系统了。)而当设计者将系统样品摆到他面前的时候。他们的平台已经搭建完成。(甚至是一个无人职守的平台。)这个时候程序员看到的是他们每天在办公室里闲逛,但是同时测试错误点却全部罗列在work 日志上。

windows操作系统的IDE没有linux下的集成环境好用(但不代表某些功能缺失,要做其实是一样可以做的,只不过多费周折)所以保证平台的灵活性,测试工程师更倾向于为某个设计专门搭建一个测试