上一页 1 ··· 7 8 9 10 11 12 下一页
摘要: 1、序列检测器的逻辑功能描述:序列检测指的就是将一个指定的序列从数字码流中识别出来。本例中,我们将设计一个"10010”序列的检测器。设x_in为数字码流输入,z_out为检出标记输出,高电平表示“发现指定序列”,低电平表示“没有发现指定序列”。2、本次试验的data stream是18'b11_0010_0100_0010_0101,通过循环来给x_in进行赋值。其中还要考虑到重叠现象。3、重点是状态图的描绘,仅有当状态机跳到E状态时,z_out才置1,说明发现了指定序列。其实这个试验关键是怎么来描绘该状态机。第一次看到夏宇闻书上该例子时,脑子里马上想到头一个问题,就是他是 阅读全文
posted @ 2013-12-06 17:08 MyBooks 阅读(3241) 评论(3) 推荐(0) 编辑
摘要: 1、如果数据位中包含偶数个1 校验位(P)就会置1,如果数据位中包含奇数个1,校验位(P)就会置0。数据位中1的个数加上校验位(P)总为奇数,这就是奇校验。例:0010_0001, P = 1 ===>Reslut=1_0010_0001,在Reslut中所有“1”加起为奇数0000_0001, P = 0 ===>Reslut=0_0000_0001,在Reslut中所有“1”加起为奇数2、如果数据位中包含偶数个1 校验位(P)就会置0,如果数据位中包含奇数个1,校验位(P)就会置1。数据位中1的个数加上校验位(P)总为偶数,这就是偶校验。例:0010_0001, P =0 == 阅读全文
posted @ 2013-12-05 14:47 MyBooks 阅读(2250) 评论(0) 推荐(0) 编辑
摘要: 这两天回归书本,继续阅读书上的内容,此时的体会与刚开始学那会的体会是不一样的,比如3_8decoder,之前就认为可以用case来写,而书上有一种更简便的方式来描述,带给你新的思路,既然有新方式可以描述,那就来比较这两者有什么区别。方法1,利用case语句描述: 1 module decoder3_8(in,out); 2 input [2:0] in; 3 output [7:0] out; 4 5 reg [7:0] out; 6 always @(*) 7 begin 8 case(in) 9 3'b000: out = 8'b0000_0001;10 3'b0. 阅读全文
posted @ 2013-12-04 17:52 MyBooks 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 此实验是在“基于I2C EPPRPM(AT24C02B) + LCD12864实验”基础上,把LCD模块里的一段式状态机改成三段式,I2C EPPROM模块暂时未改出来,一步一步来吧,改完后代码下载到板子上验证是OK的。 三段式状态机里面要注意的是,抽出来reg 如计数器num、lcd_rs,在利用状态作为判断条件时,得注意是用n_state呢还是用c_state,对于我这样的初学者,一时半会弄不清是用哪个作为判断条件好,怎么办,每种情况都试一次吧。结果用n_state能正常显示,用c_state显示乱码。用c_state作为判断条件的仿真波形如下:好奇怪哦,左边框中num为什么没有清零呢.. 阅读全文
posted @ 2013-11-28 17:15 MyBooks 阅读(658) 评论(0) 推荐(0) 编辑
摘要: 一直想从一段式状态机切换到三段式状态机,从书上和网上不断搜寻三段式案例及方法,感觉很简单,就想拿之前做过的实验把一段式改成三段式,可是写起来并非那么简单,很棘手,改完后也没有成功,尤其状态机里面的计数器,查了一些资料,就一句话带过,把计数器提出来,但怎么提、怎么来保证同步、怎么不让生成latch,并没有仔细的讲清楚。也许自己比较笨吧,一时半会改不出来,当时就想,是不是起步太高了,应该在找一个简单的例程改写,循序渐进。这时就重新阅读黑金的"Verilog那些事儿"教程,看里面哪个例程比较简单,容易改的,结果找到建模篇的实验五例程进行改写,改完后发现三段式写还是比较简单的,思路 阅读全文
posted @ 2013-11-26 16:42 MyBooks 阅读(547) 评论(0) 推荐(0) 编辑
摘要: 本次实验目的:在指定的EPPROM地址中,写入一数据,延时100MS后,在从该地址中读取,并在LCD上显示。该实验在前两天就开始做了,一开始并没有成功,读出的一直0x00,当时也调了一会,但跳回到PS2鼠标实验继续调试(因为晚上睡觉会一直想那个问题),当把PS2鼠标实验调通之后,感觉自己对时序图有进一步的好感,写状态机时,我能抓住每一个动作细节,这就是经验吧,然后今天晚上调试I2C实验,直接对着时序图一步一步检查状态机的变动,经过仔细的检查,确实发现不少问题,当场就改掉,检查完一遍后(仅检查了一遍),改完后立即编译下载到板子上验证,结果很OK。此时我非常高兴,PS2鼠标实验花了那么长的时间去调 阅读全文
posted @ 2013-10-28 00:07 MyBooks 阅读(876) 评论(0) 推荐(0) 编辑
摘要: 抱着“不气馁、不放弃、誓不罢休、搞不定你我还能搞其他玩意吗”的心态,调试许久的PS2鼠标实验,终于在今天被我搞定了。发几张图显摆一下,嘿嘿。。。 左键按下+鼠标移动 右键按下+鼠标移动 中键按下+鼠标移动一、程序框架:大概情况:1、先由控制模块启动发送模块,把指令0xff发送给鼠标,进入复位模式。2、发送完后,通知控制模块启动接收模块,接收鼠标应答数据fa、aa、00。3、接收完后,在次给鼠标发送0xf4,鼠标进入待... 阅读全文
posted @ 2013-10-26 15:27 MyBooks 阅读(1725) 评论(1) 推荐(0) 编辑
摘要: 此试验我一人调试许久都未成功,但发送ff时,读出来的数据确是对的,一开始让我窃喜,但发送f4时,读出来的数据确是错的,哎让苦恼啊,能力有限,只能先暂时就这样吧,那位什么还要贴出来呢,有两个原因:1、等自己能力达到一定时,在回过头来,把这个问题解决掉,我相信,一定能实现的。2、晒出来就是希望能得到各位网友能帮忙指点哪个地方容易出问题。在此先拜谢了!>>PS2鼠标实验是一个双向通信实验,那就得知道PS2鼠标传输协议,本人觉得自己对PS2传输协议有所掌握(也许理解的还不够到位)。具体传输协议就不多描述,还是看专业的“PS/2 技术参考”。>>在写代码之前,我参考网上一个例子, 阅读全文
posted @ 2013-10-22 23:05 MyBooks 阅读(1201) 评论(0) 推荐(0) 编辑
摘要: 菜鸟做的的小实验链接汇总: 1、基于Verilog HDL 的数字时钟设计 2、乘法器 3、触发器(基本的SR触发器、同步触发器、D触发器) 4、基于Verilog HDL的ADC0809CCN数据采样 5、基于Verilog HDL 的数字电压表设计 6、LCD12864 液晶显示-汉字及自定义显示(并口) 7、LCD12864 液晶显示-汉字及自定义显示(串口) 8、基于M9K块配置ROM的LCD12864图片显示实验 9、PS2键盘 + LCD12864 实验 阅读全文
posted @ 2013-10-11 23:05 MyBooks 阅读(762) 评论(0) 推荐(0) 编辑
摘要: 本实验是通过LCD12864来显示键盘上被按下的按键,实验比较简单,在LCD12864固定的DDRAM地址上显示,缺点就是不能保存上一次被按的内容,后者会覆盖掉前面,所以屏上仅有一个字符显示。保存上一次内容不被覆盖掉方法还待改进。目前将就这样吧。关于LCD12864显示可以参考“LCD12864 液晶显示-汉字及自定义显示(并口)”,代码稍微改了一下,可以参考代码。PS2键盘解码实验也比较简单,可以参考特权的或是“verilog HDL的那些事儿”也可以在网上找到相关的资料。ps2_control.v 1 module ps2_control( 2 ... 阅读全文
posted @ 2013-10-11 22:28 MyBooks 阅读(737) 评论(1) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 下一页