我们的目标是ASIC
具体到一个产品里面,到底是采用FPGA还是ASIC,这个问题是多方面确定的。简单说,如果产品出货量小、时间紧、生命周期短,那么FPGA比较适合;反之就建议ASIC。但是,也不是完全绝对的,就像很难说少林和武当那个更牛一样。幸好,这不是大多数一般工程师需要考虑的问题。我们就不详细讨论了,把这个恼人的问题留给高薪(实际也没大家想象的高,但是,阿Q说:你总比我富)的架构师和产品经理们去头疼好了。闲言少叙,言归正传。
估计大多数客官应该是数字逻辑设计工程师,我就看人下菜碟,首先介绍一下,我们职位的输入和输出、还有如何从输入走到输出。装严肃,这就叫数字逻辑的设计流程。
为了叫我们干活以获得剩余价值,资本家们会雇佣一些系统架构工程师和算法工程师来写文档给我们输入。这些输入一般叫做算法说明书和系统架构说明书。
算法说明书里面,洋洋洒洒充满了各种各样的数学公式、计算流程。如果你足够幸运遇到好的算法工程师,那么你还能看到算法的结构图。这些都是告诉我们,我们该把什么量做什么运算,以及什么时候运算。
系统架构说明书的作者,显然和我们更有共同语言,因为他们大多数是我们的前辈。在这些资料里面,会有系统有那些模块、模块如何设置、模块合适启动以及模块之间的接口定义、模块的时钟频率等等。按道理,还应该有各个模块的规模要求,但是这个太难了,大多数系统架构师也得叫“臣妾,我做不到啊”。
那么我们又如何说服老板:“我们干活了,您花的薪水不亏”呢?如果您是在FPGA上实现的,那么您需要利用软件生成可以在FPGA上运行的二进制文件,叫二进制文件欢快的跑起来。如果你的目标是ASIC,那么我们不叫ASIC工程师,而是ASIC前端工程师。(有前端肯定还有后端了,他们的区别属于“小孩没娘,说来话长”,我就不多啰嗦了,省的您说我话唠。)ASIC前端工程师输出的是所谓网表文件,里面是门级电路的连接和约束关系。这个给后端的兄弟来布局布线,后面还有加工的孩子们研究工艺、加工什么的。(ASIC就是麻烦,没办法,谁叫人家速度快、后期价格便宜呢?)
页:
[1]