一部硬件开发流水账
时间:03-26
来源:今日电子
点击:
FPGA学习之路
1994年末,一个偶然的机会,领导让我去学习一下FPGA。FPGA是什么呢,我当时一头雾水一点概念也没有。去档案室查资料才发现有3盒软盘的安装软件和一大堆的英文参考资料,原来是美国XILINX公司FPGA的安装软件。XILINX的FPGA是什么呢,查了资料后才知道是可编程门阵列。由于以前做过PAL和GAL电路,所以我就将它当成了一个大GAL。但是在安装开发环境的时候出问题了,安装的环境包括输入、逻辑仿真、编译、时序仿真、下载等环节。由于之前没有这些概念所以我不知道怎么安装,而那时XILINX的代理MEMC在上海也没有办事处,没有人可以问,只能不断地尝试。将包含开发工具的30张软盘装在我的486机器上,简单地跑一下流程试一下各部分的功能就花了一周时间。
那时的操作系统是Windows3.1。安装成功之后,我就迫不及待地做试验,第一个试验是用FPGA实现一个秒表显示,当8段码上按秒正确地显示出0~9数字时真是激动不已、无以言表。这期间,我还自学了VHDL语言,由于VHDL是基于自顶向下的方法来设计的,所以整个设计模块化很强,很易于理解,比原理图输入的自底而上的方法更简洁,便于阅读和共同设计。FPGA本质是一个灵活的可编程的硬件电路,给设计者一个想象和开拓的空间,不像ASIC电路是固定功能的。
当我不断地做试验实现了新功能的时候,那种喜悦的心情真是每天都有。那时候经常是一个人在一个小房间里学习探索,加班到深夜是经常的事。由于那时在国内使用XILINX FPGA的人还不是很多,上网也不像现在这么方便,所以最大困难是有了问题只能自己去思考、摸索。我感觉最有成就感的是不满足于完成电路的功能而是重点研究FPGA的内部结构,手工控制布局、布线效果以及提高资源的利用率,使用高级工具在芯片内部进行布局和布线调整,在CELL内部进行逻辑的设计改变,而不是死板地从源文件开始改动,这样大大缩短了时间周期,提高了芯片使用效率。
通过不断摸索,我在1995年中的时候将XILINX的XC5204应用到我们的终端产品上,大大提高了终端的集成度,降低了成本。这时候我已经不满足集成简单的逻辑电路和时序电路了,进一步尝试将标准的ASIC电路的部分功能集成到FPGA内部。通过一段时间的分析和沟通,我们分析出了HITACHI公司的显示控制器HD6445的内部结构,成功地将这个电路集成到了FPGA的内部,同时将PS2键盘控制器84C43和UART一起集成到了FPGA中,使得整个主板的芯片数量从62个减少到12个,大大提高了集成度、减低了成本,提高了可靠性,生产和维护的工作量也大大减少。这时采用的FPGA是XILINX公司低成本的XCS20,终端产品型号是CJ320H。这个产品除了应用FPGA技术外,还首次采用了FLASH芯片,使得程序可以在线下载而不需要打开机器来换程序片,同时保存参数更加可靠。还采用了带扩频功能的时钟电路,大大降低了整机的电磁辐射问题。
在终端上的FPGA开发完成后,为了进一步降低成本,我将FPGA芯片做成了HARDWIRE芯片,这是一种将FPGA中所用到的门电路固定下来,拿掉不需要的门电路的一种技术。由于电路的版图和连接方式发生变化,所以相应的时序变化很大,通过时序仿真保证了设计的正确性。当时在国内这项技术的应用还非常少。由于这些新技术的应用使得CJ320H终端整体性能处于同行业领先的地位,相应的市场竞争力也得到明显提高。我主持设计的CJ320H中西文图形终端获得1998年度江苏省科技进步二等奖。在CJ320H之后又陆续推出了CJ320S、CJ380等系列终端。本人在1999年获得常州市政府重奖和常州市杰出科技青年称号。在成功使用XILINX FPGA后,我又研究了LUCENT、ACTEL、ALTERA、LATTICE等公司不同架构的FPGA和CPLD,根据不同的终端电路应用特点使用了这些公司的可编程器件,开发出了国光CJ6812系列终端产品,自己也在可编程电路方面积累了一些经验。
继续努力
2006年,我又开始主持字符终端向ARM9平台转化的开发。这个平台的开发成功使得字符终端又上了一个新的台阶。在开发几款字符终端的同时,根据技术发展和变化设计了图形终端的硬件平台。高平台的图形终端相当于精简计算机,它在硬件上不像PC那样具有很多扩展卡,一般只有一个内存条,甚至这些内存条是ONBOARD的,没有光驱,只有一个硬盘接口,一般采用DOM或DOC作为硬盘,显卡一般是集成在北桥中,运行的操作系统有CE、XPE、LINUX。2002年初的时候,由于NS的GX1的功耗比较低性能也不错被广大的瘦客户机厂家所采用,我也采用这个平台设计了我们公司的图形终端。在2003年的时候,我觉得用VIA C3来设计图形终端具有性价比高的优点,于是又花力气设计了C3+PLE133平台。分别设计了ATX电源接口的分体式和单电源的一体式产品,特别是后一个产品将VGA到液晶转换设计集成到主板上,配合公司自己研发的造型结构,推出了造型新颖的一体化产品。去年,又基于AMD的LX系列设计出了分体式和一体式产品。今年,我们公司开始批量生产基于INTEL852平台的产品。从做产品的角度上讲是永无止尽,因为随着新技术的不断推出,可以应用这些技术来设计新的产品或应用。
一个合格的技术人员要不断地研究新的技术,将这些新技术应用到自己的产品上,使产品更具有竞争力。对于一个产品设计者,关键的不是把产品做出来,而是怎样去做好这个产品。一款产品最终要放到市场上去检验,只有比别人做得好,才有机会成功。
一分耕耘,一分收获。这些年,我研发的这些产品为公司取得了较大的经济效益,其中的两个产品获得江苏省科技进步三等奖,还有一些产品获得常州市的一些奖项。
目前,我还在开发一线从事具体的开发工作。我觉得做技术的人要踏实,要有信心和目标,在具体研发的过程中要不畏困难,办法总比困难多,不管多难的问题,只要坚持,总归会得到解决
1994年末,一个偶然的机会,领导让我去学习一下FPGA。FPGA是什么呢,我当时一头雾水一点概念也没有。去档案室查资料才发现有3盒软盘的安装软件和一大堆的英文参考资料,原来是美国XILINX公司FPGA的安装软件。XILINX的FPGA是什么呢,查了资料后才知道是可编程门阵列。由于以前做过PAL和GAL电路,所以我就将它当成了一个大GAL。但是在安装开发环境的时候出问题了,安装的环境包括输入、逻辑仿真、编译、时序仿真、下载等环节。由于之前没有这些概念所以我不知道怎么安装,而那时XILINX的代理MEMC在上海也没有办事处,没有人可以问,只能不断地尝试。将包含开发工具的30张软盘装在我的486机器上,简单地跑一下流程试一下各部分的功能就花了一周时间。
那时的操作系统是Windows3.1。安装成功之后,我就迫不及待地做试验,第一个试验是用FPGA实现一个秒表显示,当8段码上按秒正确地显示出0~9数字时真是激动不已、无以言表。这期间,我还自学了VHDL语言,由于VHDL是基于自顶向下的方法来设计的,所以整个设计模块化很强,很易于理解,比原理图输入的自底而上的方法更简洁,便于阅读和共同设计。FPGA本质是一个灵活的可编程的硬件电路,给设计者一个想象和开拓的空间,不像ASIC电路是固定功能的。
当我不断地做试验实现了新功能的时候,那种喜悦的心情真是每天都有。那时候经常是一个人在一个小房间里学习探索,加班到深夜是经常的事。由于那时在国内使用XILINX FPGA的人还不是很多,上网也不像现在这么方便,所以最大困难是有了问题只能自己去思考、摸索。我感觉最有成就感的是不满足于完成电路的功能而是重点研究FPGA的内部结构,手工控制布局、布线效果以及提高资源的利用率,使用高级工具在芯片内部进行布局和布线调整,在CELL内部进行逻辑的设计改变,而不是死板地从源文件开始改动,这样大大缩短了时间周期,提高了芯片使用效率。
通过不断摸索,我在1995年中的时候将XILINX的XC5204应用到我们的终端产品上,大大提高了终端的集成度,降低了成本。这时候我已经不满足集成简单的逻辑电路和时序电路了,进一步尝试将标准的ASIC电路的部分功能集成到FPGA内部。通过一段时间的分析和沟通,我们分析出了HITACHI公司的显示控制器HD6445的内部结构,成功地将这个电路集成到了FPGA的内部,同时将PS2键盘控制器84C43和UART一起集成到了FPGA中,使得整个主板的芯片数量从62个减少到12个,大大提高了集成度、减低了成本,提高了可靠性,生产和维护的工作量也大大减少。这时采用的FPGA是XILINX公司低成本的XCS20,终端产品型号是CJ320H。这个产品除了应用FPGA技术外,还首次采用了FLASH芯片,使得程序可以在线下载而不需要打开机器来换程序片,同时保存参数更加可靠。还采用了带扩频功能的时钟电路,大大降低了整机的电磁辐射问题。
在终端上的FPGA开发完成后,为了进一步降低成本,我将FPGA芯片做成了HARDWIRE芯片,这是一种将FPGA中所用到的门电路固定下来,拿掉不需要的门电路的一种技术。由于电路的版图和连接方式发生变化,所以相应的时序变化很大,通过时序仿真保证了设计的正确性。当时在国内这项技术的应用还非常少。由于这些新技术的应用使得CJ320H终端整体性能处于同行业领先的地位,相应的市场竞争力也得到明显提高。我主持设计的CJ320H中西文图形终端获得1998年度江苏省科技进步二等奖。在CJ320H之后又陆续推出了CJ320S、CJ380等系列终端。本人在1999年获得常州市政府重奖和常州市杰出科技青年称号。在成功使用XILINX FPGA后,我又研究了LUCENT、ACTEL、ALTERA、LATTICE等公司不同架构的FPGA和CPLD,根据不同的终端电路应用特点使用了这些公司的可编程器件,开发出了国光CJ6812系列终端产品,自己也在可编程电路方面积累了一些经验。
继续努力
2006年,我又开始主持字符终端向ARM9平台转化的开发。这个平台的开发成功使得字符终端又上了一个新的台阶。在开发几款字符终端的同时,根据技术发展和变化设计了图形终端的硬件平台。高平台的图形终端相当于精简计算机,它在硬件上不像PC那样具有很多扩展卡,一般只有一个内存条,甚至这些内存条是ONBOARD的,没有光驱,只有一个硬盘接口,一般采用DOM或DOC作为硬盘,显卡一般是集成在北桥中,运行的操作系统有CE、XPE、LINUX。2002年初的时候,由于NS的GX1的功耗比较低性能也不错被广大的瘦客户机厂家所采用,我也采用这个平台设计了我们公司的图形终端。在2003年的时候,我觉得用VIA C3来设计图形终端具有性价比高的优点,于是又花力气设计了C3+PLE133平台。分别设计了ATX电源接口的分体式和单电源的一体式产品,特别是后一个产品将VGA到液晶转换设计集成到主板上,配合公司自己研发的造型结构,推出了造型新颖的一体化产品。去年,又基于AMD的LX系列设计出了分体式和一体式产品。今年,我们公司开始批量生产基于INTEL852平台的产品。从做产品的角度上讲是永无止尽,因为随着新技术的不断推出,可以应用这些技术来设计新的产品或应用。
一个合格的技术人员要不断地研究新的技术,将这些新技术应用到自己的产品上,使产品更具有竞争力。对于一个产品设计者,关键的不是把产品做出来,而是怎样去做好这个产品。一款产品最终要放到市场上去检验,只有比别人做得好,才有机会成功。
一分耕耘,一分收获。这些年,我研发的这些产品为公司取得了较大的经济效益,其中的两个产品获得江苏省科技进步三等奖,还有一些产品获得常州市的一些奖项。
目前,我还在开发一线从事具体的开发工作。我觉得做技术的人要踏实,要有信心和目标,在具体研发的过程中要不畏困难,办法总比困难多,不管多难的问题,只要坚持,总归会得到解决
- VIA选用Tensilica Xtensa数据处理器 进行固态硬盘SoC设计(01-16)
- ST发布业内最完整的硬件开发工具套件(04-12)
- 共享单车倒闭对LED行业的启示(06-14)