在电子这一行搞了多年了,主要做USB控制器的FPGA实现电路和PCI控制器的FPGA实现电路。
一日朋友的朋友问,能否给他设计一个USB音箱的方案?我只好答曰:USB通讯部分没问题,可以Audio部分我不懂啊。
再一日,另一朋友的朋友问,能否给他们设计一个PCI的高速数据采集卡?我只好答曰:PCI控制器部分没问题,就是高速模拟信号采集部分我不懂啊。
这些年来,虽然可以很自豪地说自己对USB、PCI接口的实现已经达到非常深入的地步了,MCU中对Z80、51也很熟悉了,对FPGA也熟悉了,对多种处理器的系统架构、总线组织、DMA控制器等也很熟悉了,对SPI/IIC/UART/EPP/IRDA/CAN等常见的功能模块也早已熟悉了。但是我现在忽然觉得很沮丧:熟悉这麽些有什么用呢?它们都只不过是实现产品的某些工具罢了。好比一个高超的铁匠可以打造出削铁如泥的兵器,但是到了两军阵前他却会被打的丢盔卸甲。当我对USB、PCI的设计在更精更专的时候,我却发现自己离开发产品却越来越远了。郁闷啊。
chunyang 发表于 2005-6-10 11:19 人才聘任 ←返回版面 |
搞技术侧重点不同 |
在大公司讲究“精”,哪怕其它的都白痴,只要精通一点点就有价值。在中小公司或经常跳槽的话,那就得“通”了,中小公司既无必要也无能力在某一特定技术领域长期浸淫,“船小好掉头”,所以“通”就成了必要的素质。所以“精”和“通”不好也不能直接比较,互相看不起或“这山望着那山高”都是不对的。“精”与“通”兼备当然最好,但非天才的话只能靠长期积累,一般没有个至少20年以上的功力,恐怕还不敢这么说。 对于年轻人而言,选择“精”还是“通”,主要看自己的职业倾向,但无论选哪一条路,一旦无以为进的时候,就是到了要考虑一下以后的“出路”的时候了。 | |
gdtyy 发表于 2005-6-10 17:32 人才聘任 ←返回版面 |
同感 |
做硬件就要做最终产品,不然会很郁闷。 FPGA的设计难点在于要了解各种规范和协议,至于HDL语言,只要写好几个模板,以后加加减减就可以了,说白了就是自己抄自己。数字逻辑的设计思想也很简单---状态机+同步时序+三态。这样看来,设计FPGA只不过是在物理上实现硬件规范和协议。一些人制定了硬件游戏规则---状态机,我们遵照实现,如果调试出错,说明要么我们没有遵守游戏规则,增加了未知状态,要么就是走错了状态,否则就不会出错,仅此而已。 目前硬件的发展趋势是逐渐向通用CPU靠拢,高度集成。一般,开始时用FPGA设计专有电路,然后推出专用ASIC,通用ASIC,专用CPU,最后集成到通用CPU。例如:现在的通用CPU已经集成了USB、LCD、MAC、PCI、E1/HDLC等控制器。虽然你用FPGA设计过PCI桥片,但我想很多人还是会选择专用芯片(9054/5933等)。因为软核只有一个灵活的优点,在速度和成本上比不过硬核,更不用说有些CPU已经集成了控制器。你做的PCI和USB控制器现在看来已没有商业价值。另外,随着多核CPU的出现,有些硬件设备恐怕要改成软件实现了。 不过,不必灰心,硬件还是相当重要的。为什么软交换做不好?为什么防火墙慢?全都是不重视硬件造成的。只知道买别人的硬件设备,不重视自己开发,只关注软件,不重视硬件,以为硬件就是抄板和画PCB,以为软件就要人多,硬件就要人少,岂知软件再怎么优化,硬件不行一样白搭(软交换的关键在硬件)。目前,硬件工程师的职责就是为软件人员提供一个“大马拉小车”的环境,让他们未经优化的代码能很顺畅地跑起来。 硬件如此重要,未来还是有前景的。你的最大价值不在于你会FPGA,而是你对PCI和USB规范细节理解深刻,真真让人羡慕啊。不过FPGA毕竟离最终产品远了一些,而且估计你的FPGA大概也拼不过老外做的ASIC,说到底,那些协议规范都是老外定的,你不具备核心价值,一旦游戏规则换代,你以前做的就都没用了。其实FPGA也没有什么可留恋的,看似学不完的知识,说穿了本质就是一个状态机---别人制定的游戏规则罢了。 有设计FPGA的背景,改画原理图吧,一样是硬件设计,不用那么累,而且离最终产品近,你就不会郁闷了。
---------------- |硬件系统架构师| ---------------------- | 硬件原理图设计师 | ---------------------------- | 模拟/数字IC设计师 | ---------------------------- ---------------------------------------------------- ---------------------------------- | FPGA/DSP算法工程师 | ---------------------------------------- | 单片机工程师 | ---------------------------------------------- | PCB绘制、抄板、反向 | ----------------------------------------------
·--- 成本最低廉的FPGA解决方案
| |