注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
logitech66的个人空间 https://home.eeworld.com.cn/space-uid-479145.html [收藏] [复制] [分享] [RSS]
日志

学习笔记

已有 587 次阅读2015-11-4 20:50

之前看学testbench的时候,看了特权同学的视频,觉得给了我一些启发,然后果断去图书馆借了《深入浅出玩转FPGA》,一口气读了6个笔记,感觉收获颇丰啊:

关于代码的优化,不同的语法写出来的同一功能的硬件实现是不一样的,这取决于,综合的软件的不同,但是随着软件版本的升级,其识别这样功能的能力是越来越强,使其趋近于相同,比如if else 语句和case语句实现相同功能的时候,if语句趋向于优先级的结构,而case语句是趋向于并行结构,在今后的代码编写中也要注意不同语法结构生成的RTL视图的差异,以及Technology Map Viewer

还有一个之前理解错误的地方,4比如:reg  LED_OUT ;是定义了一个这样的一个寄存器是寄存器的名字,而其他的变量可以理解为不同的信号线上的名字,之前的理解有混淆。

更深一步理解了FPGA内部是怎么一回事了,假如要用到一个四输入的与门,其内部就会分配一个4输入LUT,而当有5输入时,就会分配两个LUT 了,因为每一个都是四输入的。这样在分配的时候注意这一点可以优化资源,但是鱼和熊掌不能兼得。

在编写注释的时候,要让其明白这一句话在整个系统代码中是什么作用,而不是这句语法本身的作用,因为看代码的一般语法还是理解的,需要获取的信息是这样的语法在整个系统中实现了什么样的功能。

关于复位,有同步复位和异步复位。同步复位会多产生一个门,原因是异步复位用到了寄存器上存在的复位端,而同步没有。

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章