FPGA开发之FPGA开发流程简介
2014-08-08 11:26
232 查看
我以前一直很疑惑芯片设计这一块在实际中是怎么做的呢?今天了解了一下,现在设计芯片一般采用FPGA开发,大概流程如下:
1、功能定义/器件选型:设计芯片之前当然你要知道你设计的芯片有什么功能,然后就模块化,写清楚谁谁谁干什么,这当然就是从上至下的方法,你试试从下到上给我看看。
2、设计输入:这一步就是说我把模块分好了,然后我做什么呢?码代码,如果看代码不爽的话你画图吧!不过现在都用verilog或者VHDL来做一些大型芯片啊!
3、功能仿真:这个就是软件仿真,就是看波形啊!还是码代码,就是码完了看波形,一般用的仿真软件有modelsim和vcs。
4、综合优化:就是把你写的那一堆verilog用与门,或门,RAm这些玩意组成一个逻辑网表。常用的工具有synplify Pro。怎么感觉这一步应该是第三步,因为用ISE的时候都是要先综合再软件仿真,没有综合出一个芯片怎么仿真呢?不能理解了,这个过程是某个大牛写的,所以还是按他的顺序写了。
5、综合后仿真:这时候又仿真,原来这里是加了延时的软件仿真,那么我就大概明白了我平时做的过程中没有第三步,第三步用来做什么呢?这一步就一般看时序之类的,看波形图发现不对那就改verilog,然后再仿真,再改再仿真。是的,就是改到你想吐。
6、实现和布线:这一步干得就是你选了你的FPGA板子,根据你选的板子,把你的verilog的配置弄进那个芯片里面。因为FPGA是CLB实现逻辑,所以要将你写的芯片映射到板上。连接各个CLB靠线来连接,通过布线就可以使得面积更加减少,而且有时候可以提高速度。
7、时序仿真:就是看看你写的芯片会不会违反时序,以检查和消除竞争冒险。
8、板级仿真与验证:把二进制文件烧录板中,然后看看有没有实现所需功能,还有检测其在不同环境中的适应情况。使用逻辑分析仪可以对设计的芯片进行仿真。
经过上面的一系列步骤,我觉得真是讲的很繁琐啊!
我觉得可以归纳为前端写代码,后端软件和板级仿真。
1、功能定义/器件选型:设计芯片之前当然你要知道你设计的芯片有什么功能,然后就模块化,写清楚谁谁谁干什么,这当然就是从上至下的方法,你试试从下到上给我看看。
2、设计输入:这一步就是说我把模块分好了,然后我做什么呢?码代码,如果看代码不爽的话你画图吧!不过现在都用verilog或者VHDL来做一些大型芯片啊!
3、功能仿真:这个就是软件仿真,就是看波形啊!还是码代码,就是码完了看波形,一般用的仿真软件有modelsim和vcs。
4、综合优化:就是把你写的那一堆verilog用与门,或门,RAm这些玩意组成一个逻辑网表。常用的工具有synplify Pro。怎么感觉这一步应该是第三步,因为用ISE的时候都是要先综合再软件仿真,没有综合出一个芯片怎么仿真呢?不能理解了,这个过程是某个大牛写的,所以还是按他的顺序写了。
5、综合后仿真:这时候又仿真,原来这里是加了延时的软件仿真,那么我就大概明白了我平时做的过程中没有第三步,第三步用来做什么呢?这一步就一般看时序之类的,看波形图发现不对那就改verilog,然后再仿真,再改再仿真。是的,就是改到你想吐。
6、实现和布线:这一步干得就是你选了你的FPGA板子,根据你选的板子,把你的verilog的配置弄进那个芯片里面。因为FPGA是CLB实现逻辑,所以要将你写的芯片映射到板上。连接各个CLB靠线来连接,通过布线就可以使得面积更加减少,而且有时候可以提高速度。
7、时序仿真:就是看看你写的芯片会不会违反时序,以检查和消除竞争冒险。
8、板级仿真与验证:把二进制文件烧录板中,然后看看有没有实现所需功能,还有检测其在不同环境中的适应情况。使用逻辑分析仪可以对设计的芯片进行仿真。
经过上面的一系列步骤,我觉得真是讲的很繁琐啊!
我觉得可以归纳为前端写代码,后端软件和板级仿真。
相关文章推荐
- Intel FPGA SDK for OpenCL 简介和开发流程
- MVC框架之—Struts原理简介与简单开发流程部署
- MVC框架之—Struts原理简介与简单开发流程部署
- Android的NDK开发(1)————Android JNI简介与调用流程
- SystemVerilog语言简介(二) 分类: 硬件开发_FPGA 2013-10-09 16:51 438人阅读 评论(0) 收藏
- SystemVerilog语言简介(一) 分类: 硬件开发_FPGA 2013-10-09 16:49 468人阅读 评论(0) 收藏
- fpga开发流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- J2EE项目开发流程简介
- 20、深入浅出MFC学习笔记,开发流程及工具简介
- FPGA组成、工作原理和开发流程
- 第4章 ISE开发环境使用指南[FPGA开发实用教程]——第3节 基于ISE的开发流程
- CUDA开发的配置方法与编译流程简介
- 基于模型设计的FPGA开发与实现:基本流程(一)之入门小例子(一):跑马灯
- 基于模型设计的FPGA开发与实现:基本流程(一)概述
- FPGA组成、工作原理和开发流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- Android的NDK开发(1)————Android JNI简介与调用流程