1.寄存器输出型状态机 VS 组合逻辑输出型状态机 2.状态编码方法 这块讲的不好,也比较少. 3.系统设计中模块划分的指导性原则…
基于Verilog HDL整数乘法器设计与仿真验证 1.预备知识 整数分为短整数,中整数,长整数,本文只涉及到短整数.短整数:占用一个字节空间,8位,其中最高位为符号位(最高位为1表示为负数,最高位为0表示为正数),取值范围为-127~127. 负数的表示方法为正值的求反又加1.例如: 8’b0000_0100; //表示值:4,正值求反为:8’b1111_1011:再加1表示为:8’b1111_1100,这样便得到了-4的表示方法为:8’b1111_1100. 同理,负值变成正值的方法为:负值…
菜鸟做的的小实验链接汇总:           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 实验…
本次实验是在“基于Verilog HDL的ADC0809CCN数据采样”实验上进一步改进,利用ADC0809采集到的8位数据,进行BCD编码,以供查表方式相加进行显示,本次实验用三位数码管. ADC0809的8位数数据BCD编码方式,低四位与高四位分开进行编码,其对应值我也是从网上得来的,具体对应值请看代码,编完码得到12位宽的数据后,对两个编码进行相加,如代码中的cout[11:0] = L[11:0] + H[11:0],这里注意,高四位[11:8].中四位[7:4].低四位[3:0]. 假…
基于Verilog HDL的数字时钟设计 一.实验内容:     利用FPGA实现数字时钟设计,附带秒表功能及时间设置功能.时间设置由开关S1和S2控制,分别是增和减.开关S3是模式选择:0是正常时钟显示:1是进入调分模式:2是进入调时模式:3是进入秒表模式,当进入秒表模式时,S1具有启动和停止功能,S2具有复位归零功能.只有四位数码管,所以没有做万年历,下一步会在这个基础上加入定时闹钟. 二.实验板 自个制作的实验板,用的是Altera CycloneIII EP3C40Q240C8N.上面的…
在项目设计中,经常需要显示一些数值,比如温湿度,时间等等.在数字电路中数据都是用二进制的形式存储,要想显示就需要进行转换,对于一个两位的数值,对10取除可以得到其十位的数值,对10取余可以得到个位的数值.对于Verilog来说它的标准是支持除法和取余运算的,综合器也会有IP可以进行除法运算.但是这样未免会耗费太多资源,使用移位加3算法就可以实现二进制到BCD码之间的转换. BCD码(Binary-Coded Decimal‎)亦称二进码十进数或二-十进制代码.用4位二进制数来表示1位十进制数中的…
通常我们所使用的加法器一般是串行进位,将从输入的ci逐位进位地传递到最高位的进位输出co,由于电路是有延迟的,这样的长途旅行是需要时间的,所以为了加快加法器的运算,引入了超前进位全加器. 全加器的两个逻辑表达式 sum = a ^ b ^ cin; co = a & b | (a ^ b) & cin; sum = a ^ b ^ cin; co = a & b + a & cin + b & cin; 这两个公式的电路图看起来不一样,但其实是一样的,同一个功能的电…
本实验是用ADC0809CCN进行数据采样,并用7段数码管进行显示. ADC0809由一个8路模拟开关.一个地址锁存与译码器.一个A/D转换器和一个三态输出锁存器组成.多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换.三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据.如下图所示. 时序图(本实验用上升沿去采数据): 原理图: 工作方式: ALE为地址锁存允许输入线,高电平有效.当ALE线为高电平时,地址锁存与译码器将…
上升沿检测电路之Moore型FSM // Listing 5.3module edge_detect_moore ( input wire clk, reset, input wire level, output reg tick ); // symbolic state declaration localparam [1:0] zero = 2'b00, edg = 2'b01, one = 2'b10; // signal declaration reg [1:0] state_reg, s…
将陆续上传本人写的新书<自己动手写处理器>(尚未出版),今天是第六篇.我尽量每周四篇 2.3 Verilog HDL简单介绍 本书实现的OpenMIPS处理器是使用Verilog HDL编写的,所以本章接下来的几节将介绍Verilog HDL的一些基本知识.包含语法.结构等.由于本书并非一本讲授Verilog HDL的专门书籍,所以此处介绍的内容并非Verilog HDL的所有,仅仅是一些基础知识.以及在OpenMIPS处理器实现过程中会使用到的知识. 读者假设对Verilog HDL有进一步…