学习易错笔记

学习易错笔记

  1. 将行同步时序图和场同步时序图结合起来,就构成了VGA时序图。
  2. VGA只能识别模拟信号,而FPGA输出的图像信息为数字信号。数字图像信号转化为模拟图像信号有二种方法,其一,使用专业的转换芯片,如常用的转换芯片AD7123,这种方式更为稳定,但成本稍高;其二使用功权电阻网络实现数模转换。
  3. clocking实现PLL IP核的使用。
  4. 先跑综合仿真(Run Synthesis)-可以知道你的综合代码有没有错误,在跑仿真文件(Run Simulation)-可以知道你的输出结果是否和预想的一致。
  5. 计数器可以记到最大值,然后归零,产生脉冲标致信号时,计数到最大值减一。一个计数器记到最大值,然后另一个计数器加一,其中隐含着,一个最大值的进制关系。
  6. 实现并转串在Quartusii中使用ATLDDIO_OUT的IP核或者在VIVADO中使用ODDR原语实现。
  7. 时序逻辑有打一拍的本质。
  8. 时刻关注:数据采样、数据更新时刻。
  9. 两个逗号之间是一段,分号之间是一句。
  10. 一个计数器的always 标准写法步骤:先是一个复位条件,然后是一个归零条件,然后是一个加一条件。
  11. 在仿真中修改参数时,只需要在仿真文件中编写:defparam 例化名(例化_inst).参数 = 新数值。
    例如defparam ram_ctrl_inst.CNTMAX = 99;
  12. 顺序很重要,写完代码一定要仿真验证。时序对齐问题,条件满足问题。
  13. 锁相环中的locked信号,输出时钟只有在locked为高时才会有效,因此会是locked与sys_rst_n相与形成一个新的复位信号。即assign rst_n = locked && sys_rst_n;锁相环的复位时高电平有效。
  14. 弄清楚接口之间的联系,是谁传给谁,以及各个端口的功能。
  15. 测试系统线性特性最简单的方法就是输入一个单频正弦信号,如果输出不是同频的正弦信号,也就是可能包含其他谐波分量,则该系统时非线性的。
  16. 负数记得取一个反码。从右往左,遇到第一个1即以前的不变,后面的都取反。
  17. 四舍五入是一种准确的方法,但同时也需要更复杂的技术。该技术需要进行一个加法操作(通常是加1/2*LSB:加上最低位的二分之),然后直接截断,例如:7.89 7.89+0.09/2=7.935,然后截断到7.9
  18. 快速清理磁盘缓存:Windows+R 然后输入%TEMP%删除所有文件。
  19. 遵循先画出顶层模块的引脚,包括完成内置的各个模块,及其引脚之间的连接;然后画出时序,在时钟和输入信号的激励下,需要那些中间变量,来更好的表达输出信号(根据一定的协议);接着根据波形时序图实现代码编写,包含仿真验证,包含实现各个模块之间的连线,以及顶层例化和仿真;最后上板验证。
  20. 在Simulink中想要添加线时:在想要添加节点处按住control,拖动鼠标,就能画出分支点。
  21. 例化引出既可以是wire型也可以是reg型。
  22. 先进行综合,为了检查是否有语法错误;然后进行时序仿真,为了检查逻辑是否有错误;最后上板验证,如果没有错误就OK,如果出现不了现象,就使用逻辑分析仪进行在线调试。对应的修改代码。
  23. 多种情况可以进行编码对应其情况,比如有四种情况,就可以使用00/01/10/11四种来对应编码,去执行对应操作。
  24. 突发(Burst)是指在同一行中相邻的存储单元连续进行数据传输的方式,连续传输的周期数就是突发长度(Burst Lengths,简称BL)。如果BL=4,那么也就是说一次就传送4×64bit的数据。
  25. 弄清楚每一次计数时,计数的基本单位是啥?就弄清楚了时序的一半。
  26. 在时序逻辑中默认的else可以不写,但是你要清楚是:else A <= A; 也就是保持一个值不只在一个周期,而是保持在一个条件下,直到下一个条件满足,才会改变其值。
  27. 每次修改代码之后,如果有debug类似的错误,只需要重新生成debug就可以解决。
  28. 在顶层模块实例化的时候,一个的输出端口如果需要连接下一个模块的输出端口,需要将端以线的形式连出。
  29. 三个fifo的读使能使用同一个信号才能保证读出的数据是同步的!
  30. 什么时候进行声明操作,就需要标志信号!中间变量就是为了让初始状态转换到我们可以直接输出状态的一个过程操作需要。
  31. 计数器的一般设计设计。第一步:复位时为零;第二步:归零条件;第三步:加一条件。
  32. 脉冲标志信号( flag),它可以减少代码中 if 括号内的条件让代码更加清晰简洁,而且当需要在多处使用脉冲标志信号的地方要比全部写出的方式更节约逻辑资源,脉冲标志信号在指示某些状态时是非常有用的,当大家以后在实现相对复杂的逻辑功能时注意想到使用脉冲标志信号,后面我们还会介绍到另一个有用的信后——使能信号。
  33. 先编写计数器为零的条件(就是先写固定值的条件,一个值的条件),最后写加一的条件。
  34. 在编写测试文件(testbench)时,也可以将各个激励分别放在initial中,各个激励都是先进行初始化,然后赋初值。
  35. 边沿检测主要作用是能够准确的识别出单比特信号的上升沿或下降沿,也就是我们希望当上升沿或下降沿来到时,能够产生一个唯一标识上升沿或下降沿的脉冲信号来告诉我们上升沿或下降沿了,我们就可以根据这个脉冲信号作为后续电路功能的启动。
  36. 状态机根据影响输出的原因分为两大类,即Moore 型状态机和 Mealy 型状态机,其共同点是:状态的跳转都只和输入有关。区别主要是在输出的时候:若最后的输出只和当前状态有关而与输入无关则称为 Moore 型状态机;若最后的输出不仅和当前状态有关还和输入有关则称为 Mealy 型状态机。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

傻童:CPU

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值