拿到一个项目该怎样去做?
Posted 园游会丶
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了拿到一个项目该怎样去做?相关的知识,希望对你有一定的参考价值。
1.首先我们需要画出系统大概框
3.结合系统看那些地方用到序列机,那些地方用到状态机
2.考虑系统有哪些输出,哪些输入
3.是否需要产生子模块的时钟频率
4.设置一个计数器cnt,要看其是否只在非空闲状态下进行计数,如果在空闲状态下不计数,则需要设置一个非空闲状态标志位,在该标志位为1的情况下cnt才开始计数。有可能只是在几个特定的状态下cnt才计数,需要根据实际情况决定
5.看系统是否有读写过程,如果有读写过程的话,一般需要设置一个读标志位和一个写标志位。
6.看系统数据传输是沿着时钟的上升沿还是下降沿,还是其他情况。在数据进行变化的时候(究竟是FPGA使数据线变化还是外部器件使数据变化未知)需要设置一个标志位,在数据稳定的时候设置一个标志位;这样的目的是为了方便后面的数据进行处理。图片中没有画出clk系统时钟
7.根据外部器件时序图或者通信协议所需要的寄存器,然后需要将这些所需要的寄存器分别定义出来
8.程序中在执行某一任务task时,可以为其设置一个标志位,这样便于调用该任务task
9.在系统设置了各种标志位,就必须考虑全面各个标志位在系统中是怎么变化的。就比如我在A模块中设置了一个标志位,但是在B模块中也有用到,就必须考虑它在B模块中的约束情况。
以上是关于拿到一个项目该怎样去做?的主要内容,如果未能解决你的问题,请参考以下文章