首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 学习FPGA设计的体会(每周更新)
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
学习FPGA设计的体会(每周更新)
发短消息
加为好友
brianwu
当前离线
UID
167247
帖子
2
精华
1
积分
128
阅读权限
20
在线时间
0 小时
注册时间
2007-8-6
最后登录
2008-7-9
注册会员
UID
167247
性别
男
1
#
打印
字体大小:
t
T
brianwu
发表于 2007-8-6 23:57
|
显示全部帖子
学习FPGA设计的体会(每周更新)
FPGA
,
体会
,
设计
,
学习
学习FPGA设计的体会
[此贴子已经被admin于2007-8-7 9:51:07编辑过]
收藏
分享
评分
回复
引用
订阅
TOP
发短消息
加为好友
brianwu
当前离线
UID
167247
帖子
2
精华
1
积分
128
阅读权限
20
在线时间
0 小时
注册时间
2007-8-6
最后登录
2008-7-9
注册会员
UID
167247
性别
男
2
#
brianwu
发表于 2007-8-6 23:58
|
显示全部帖子
学习FPGA设计的体会(每周更新)
我真正使用FPGA有10年了吧,在这个论坛潜水也有一两年了,很少发新的帖子,看到很多人对学习FPGA有很多的困惑,包括设计,语言,工具的使用等等。我将我的一些学习体会和看法写出来,抛砖引玉,希望对大家有所帮助和启发。
(1) FPGA工程师首先应该是一个硬件工程师,对所需要设计的系统的需求,架构,有深刻了解。
只有了解这些,才能知道那些可以功能可以或最好在FPGA中完成,应该如何估算需要资源,甚至将来需要增加的功能,从而选择FPGA型号,在设计上FPGA内部的系统架构如何分解,各个功能模块接口如何设计划分,以达到高稳定,可重用。
(2)语言设计的捷径
我偶尔到HDL语言论坛去看看,看到很多人对语言的学习感到困难,其实语言的学习并不困难,其捷径是什么,答案:先用原理图设计,尤其是一些基本的逻辑功能单元。分频计数,开关,串并、并串等等。从某种角度来说语言的本质是原理图设计,如果您脑袋里想的原理图,手指在键盘上敲出来的是语言,你可以不用担心代码可综合性。其实我学习语言是今两年的事情,我只看两三天Verilog语言语法,然后看看基本逻辑单元的表示方法和例子,就可以用Verilog进行设计了,当然会在设计过程中碰到一些语法表示的困难,翻翻书就可以了。
当然,不是语言不重要,功能的实现也需要语言准确的表达,例如case语句如何避免LATCH。
(3)有关仿真
我曾经有一个做FPGA的同事,每当设计完一个功能模块,就看到用MODELSIM仿真好几天,一个设计下来,仿真耗用他很多时间,为什么会这样,原因有两个:基本原因是:功能架构或者说思路没有想好,在那里凑,第二个原因是因为写代码的时候他脑袋里没有形成时序图。如果这两方面都想好,仿真的工作量会大大减少的。
在设计和仿真过程时,多想一想被处理的与其他信号的时序关系,这对你的设计能力大有益处。
我刚开始FPGA设计时,一个简单的计数器都要仿真半天,别说一个功能模块了,那个阶段设计是靠仿真才能设计出来的(汗,数字电路没有学好)。但随着设计的增多,水平的提高,仿真用的时间越来越少了,为什么?因为当你的脑袋里有时序图时,仿真回归了它真正的本意,只不过验证你(脑袋里的时序)设计是否正确的一个工具。
(4)设计思路
设计思路是指在系统或功能电路设计时的方法和技巧,我不知道定义是否准确,但他非常非常重要,是具有战略意义层面上的重要,一个好的思路,往往功能实现时简单,可靠,移植性好,反之,感觉电路繁杂,思路不清的,就要回头审视一下自己的思路。
设计思路的提高需要积累,多看看别人的设计,尤其是功能电路的设计,比较一下自己的设计,总结一下经验教训,看得多了,手段也就多了,另外多从系统的(The higher level)角度看看你的设计,你会发现更多的东西,不久,你会发现你不仅仅是一名FPGA工程师,而且是一名系统工程师。
回复
引用
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议