FPGA设计基础
捌肆幺幺
FPGA 逻辑
展开
-
FPGA设计基础04——modelsim仿真
1.在编写完测试文件以后,就要用modelsim对文件进行仿真。首先,建立仿真文件夹,并放入两个文件,分别是.v的源文件和测试文件。2.打开modelsim,新建工程,如图。3.添加源文件和测试文件后,进行编译,有错误不能进行仿真。4.找到仿真的测试文件,右键点击simulate开始仿真。5.弹出仿真窗口,点击需要查看的信号,添加波形。6.设置好运行的时间,开始运行。由图可知,qqnum正确输出841185604并循环,原创 2021-08-27 14:30:41 · 2737 阅读 · 2 评论 -
FPGA设计基础03——测试文件编写
1.什么是测试文件?①测试文件就是给设计好的v文件做测试的文件。②模块写好了需要验证其功能,则需要给出模块的输入信号,比如时钟、复位信号。③总的来说,其作用是写入输出信号,也就是我们常说的激励信号2.测试文件怎么写?先看要测试的文件的端口列表(一会要例化以及输入信号要编写): module text_qqnum ( clk, rst_n, qqnum //输出博主的 QQ号:841185604原创 2021-08-26 23:41:28 · 5132 阅读 · 0 评论 -
FPGA设计基础02——FSM有限状态机
除了常用的计数器之外,状态机也能和计数器一样实现状态转换的效果。1.状态机处理的多数是乱序,像1-3-2。因为如果是顺序的我们可以用计数器来实现,如1-2-3。2.我们采用四段式的状态机写法。第一段:将要来临的状态(next)赋给现在的状态(current),IDLE为初始状态 always@(posedge clk or negedge rst_n)begin if(!rst_n)begin state_c<= IDLE;原创 2021-08-11 14:33:20 · 346 阅读 · 0 评论 -
FPGA设计基础01——计数器
1.计数器的功能就是计数。2.计数器计的数是时钟脉冲的个数。3.计数的最大值与位宽有关,位宽为n,则最大数为2的n次方。4.常用于计算时间,如若FPGA的晶振为50M赫兹,那么他一个时钟的时间就是1/50_000_000=20ns,也就是说每来一个时钟就+20ns,通过多次计数可以得到想要的不同的时间。5.计数器的设计只需要记住两个关键:加一条件、结束条件。 always @(posedge clk or negedge rst_n)begin i原创 2021-08-11 13:46:17 · 7435 阅读 · 2 评论