FPGA
blue0432
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
硬件描述语言Verilog设计经验总结
一、硬件描述语言Verilog粗略地看Verilog与C语言有许多相似之处。分号用于结束每个语句,注释符也是相同的(/* ... */和// 都是熟悉的),运算符“==”也用来测试相等性。Verilog的if..then..else语法与C语言的也非常相似,只是Verilog用关键字 begin和end代替了C的大括号。事实上,关键字begin和end对于单语句块来说是可有可无的,就与C中的大转载 2013-04-25 15:34:30 · 7831 阅读 · 0 评论 -
比较好的三段式状态机verilog范例
状态机采用VerilogHDL语言编码,建议分为三个always段完成。三段式描述方法虽然代码结构复杂了一些,但是换来的优势是使FSM做到了同步寄存器输出,消除了组合逻辑输出的不稳定与毛刺的隐患,而且更利于时序路径分组,一般来说在FPGA/CPLD等可编程逻辑器件上的综合与布局布线效果更佳。示列如下://第一个进程,同步时序always模块,格式化描述次态寄存器迁移到现态寄存器转载 2013-04-25 15:36:49 · 2374 阅读 · 0 评论 -
Verilog HDL语法提纲
1.模块的端口定义module 模块名(口1,口2,口3,口4, ………); 2.(数据类型及其常量、变量)数字整数: 位宽>进制>数字>这是一种全面的描述方式。1) 二进制整数(b或B)2) 十进制整数(d或D)3) 十六进制整数(h或H)4) 八进制整数(o或O)x和z值 :在数字电路中,x代表不定值,z代表高转载 2013-04-25 07:59:55 · 1025 阅读 · 0 评论 -
键盘消抖
首先将按键值保存两次,以检验按键值的变化。当按键值变后将计数器置0,否则继续加1。当计数器值等于fffff的时候,说明按键是正常按下的,接着保存两次,检测值的变化。若相应位有变化,则将相应的led控制取反。(好像新的代码中键值只检验了一次,不过找不到新代码了。)`timescale 1ns / 1ps/////////////////////////////////////////////转载 2013-04-27 07:48:03 · 1104 阅读 · 0 评论 -
脉冲边沿检测(Verilog)
在很多时候都要对输入脉冲进行边沿检测,如PS/2时序,ps2_data数据在ps2_clk时钟下降沿接收。 边沿检测Verilog程序代码: 布线布局后仿真波形如下图:点击看原图 可以注意到其中的移位寄存器用了非阻塞赋值(ps2_clk_r0ps2_clk_r1ps2_clk_r2 如果用阻塞赋值的话,综合的时候会把其中两个寄存器去点,用转载 2013-04-26 21:12:04 · 4031 阅读 · 1 评论
分享