FPGA算法实现与应用技术高级研修班
1 整体的观感
对FPGA资源要理解,记住常见的值,做项目的判断;
算法 FPGA怎么玩的Xilinx的人怎么个思路;
信号与系统这门课的快速版学习;
高层次语言编程效率高,同时要了解底层和原理,能解决问题;
要看xilinx 白皮书。
FPGA开发流程
1 选FPGA型号等
(一般要留一手,本来设计的FPGA是1156管脚,一定要有一款1156管脚但资源大一号的FPGA可选);
2 阻抗匹配等
分配管脚 ;
3 面向结构、时序写代码;
4写全局约束
即不分组的约束;
5 综合;
6 看综合报告
是否near timing,如果现在时序就差太多,就改代码重新设计;
7 实现
8 meet timing
哪里不过的做特定约束,分组的那种;
9 实现,完成
整体来讲,FPGA的规划就是规划流水、数据关系
2 老师的背景是汽车电子
3 信号与系统基础知识
数学上的时域和频域;
离散傅里叶变换频谱分析;
快速傅里叶变换不好理解但傅里叶变换是基础 FFT要以DFT为基础;
预处理目标是提高信噪比;
数字滤波是求滑动点积和;
时域相乘=频域卷积;
频谱搬运,调制定理,解调定理;
频谱倒置: x(t)乘以[-1,1,-1,1,…]离散序列;
方波门信号(时域是一个离散的)——对应频域就是周期的连续的波形
多个方波周期的信号(时域是周期的)——对应频域就是离散的一个个脉冲
傅里叶变换是信号放大镜,时域的窄脉冲到频域是无限宽
4 滤波器基础知识
三抽头FIR滤波器就是三个滑动窗,英文是3 taps。
探测一个物体的信号,认为短时间内,该物体是不动的。短时间内有16个回波,认为16次是一样的,正常信号按幅度累加,噪声不变,这样信噪比提升16倍;
常规FIR,从每tap:6SLICE可以变到每tap:0.25SLICE
通过各种方法 ,思路就是 乘法——累加——加法——查表
查表:每6抽头做个ROM表
5 机器学习、人工智能类基础知识
模式识别用机器对事物进行分类聚类;
复杂算法倾向用高级语言(有AI课,高层次开发工具,用C语言,也不是传统C,依然要从结构出发,脑中有电路图);
神经网络节点运算,就是求相关;
人工智能通过超大量计算,找到某个相关分完了类,才告诉你为什么这么分;
makeshop365 通过对话做PPT。
6 FPGA电路板相关
学了一些电路的知识:芯片间的电气互联输出阻抗、输入阻抗要匹配;
lvds跨接100欧姆电阻可以放到FPGA内部解决 ;
FPGA管脚分配 要按bank分不同的芯片,不要按一圈来分。
7 EMC测试
让EMC测试通过,整体用的方法是滤波、接地、屏蔽
图形中会有尖叠加小波纹:抖频 20khz的信号控制开关,发现会有频率谐波,解决办法不要控制信号一直正好是20k,让它15k~20k变化,打破时域的周期性。
小波纹这种信号,是mos开关管的上升沿太陡,用方法减缓上升沿就能削减,即让mos开关慢一点。
随机抖频注入伪随机序列 DDS技术,生成数字域正弦波
采样不准,本质是量化噪声。