首页/文章/ 详情

射频人学基带(9)--背靠AI和老师,学新东西完全不带怕的

3月前浏览253
(1)
昨天开始看杨博(见下面海报)课程的第五讲,昨晚看了一遍,晚上睡觉的时候,又稍稍回忆了一下,有非常好的催眠效果。
第五讲,主要是写一个加扰和解扰的FPGA程序。
看这讲的时候,对于我这个FPGA小白来说,难度还是挺大的。
首先,语法完全不懂,虽然那个if else ,always,assign这些单词认识,也隐约知道这些个语句是个什么意思,但是具体是怎么个操作,为什么assign放在always外面,然后<=,是在always里面,是完全不知道的。
这样的话,就只能指导这个程序大概在干嘛,但是是没法了解程序是怎么干的。
(2)
像这种凌乱不堪,完全没有条理的问题,肯定是不敢去打扰老师的,虽说老师说了,他会保驾护航。
那怎么办呢?放在以前,肯定就卡壳了。但是现在完全不用怕的啊,有AI啊!
我也不用担心把AI问烦了,也不用害怕语句组织的不好耽误AI时间。
我把PPT中有疑惑的点,老师话语中不懂的点,都记录下来,一个个地问AI。
在我问完AI,已经了解大概,但是还有一些没找到答案的问题的时候,我就会去找有经验的老师去答疑了。
比如上次有个QPSK的问题,当时问了各个AI,还是没能解除我的疑惑,然后就去问了一下杨博。
后来,杨博就把对这个问题的解答,录制成了一个答疑视频。
(3)
通过一顿和AI交流,我对这个程序中的语法和运行逻辑有那么一点点的概念了(以下都是基于deepseek的回答给出的描述,若有误的话,欢迎留言探讨。)
知道了,程序中的assign和always,分别称为组合逻辑和时序逻辑。
组合逻辑是立即更新,表达式右侧的信号发生变化,左侧会立马更新;而<=用于时序逻辑,只在always块中使用。
然后always块里的代码,在时钟上升沿的瞬间,开始执行,此时<=右侧的表达式是基于当前寄存器的值。
在时钟上升沿之后的一个极小仿真单位内,<=左侧的寄存器会统一更新为右侧的新值。
据deepseek说,里面的代码都是并行执行,和写的顺序没有关系,这点确实和以前的软件层面的认知有很大不同。
(4)
在了解这些FPGA语法的背景知识后,再回去看那段小程序,明显感觉熟悉多了。
争取再熟悉熟悉,可以自己根据理解,能把那段程序复现出来

来源:加油射频工程师
芯片
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-05-05
最近编辑:3月前
加油射频工程师
分享所学知识
获赞 267粉丝 105文章 647课程 1
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈