Verilog奇偶校验_zt
http://blog.sina.com.cn/s/blog_6c7b6f030101hj8p.html
1、奇偶校验位于数据位之后,占1位,用于表示串口通信中的校验方式。该位有用户根据需要决定,有奇校验,偶校验,无校验三种。一般都采用无奇偶校验的方式
2、所谓奇校验,就是判断发送方的数据位中1的个数是否是奇数。选择奇校验时,首先将数据位的各位进行“异或”操作,然后将结果与1相“异或”,得到的结果就是奇校验位的值。
说白了,奇校验就是确保发送的数据位中1的个数为奇数,如果数据位中1的个数是偶数,那就给校验位赋值1,如果数据位中1的个数是奇数,那就给校验位赋值0.这样就确保发送的数据中1的个数是奇数
3、偶校验跟奇校验相反,但处理步骤是一样的。偶检验位的计算方法是首先将数据位的各位进行“异或”操作,然后将结果与0相“异或”,得到的结果就是奇校验位的值。
4、串口发送时,先把奇偶校验位的值写入TB8,然后再将要发送的数据写入发送缓冲器SBUF
5、串口接收时,先接受数据缓冲器SBUF里面的数,并计算接收数据中的1的个数,然后读取RB8的值,进行比较,根据奇偶校验规则判断接收数据是否正确。
6、为什么奇偶校验不常用?
数据通信中的数据只能是1或者0,如果一个数据中的1位发生错误,那1的个数肯定就从奇数变为偶数(或者偶数变为奇数)。
但是如果数据中有多个数据位都发生错误了呢。举例来说,我们要发送11110000.如果有两位发生了错误,比如变成了11000000,那么1的个数还是偶数,那奇偶校验就检测不出来错误了。
所以说:如果数据中发生多位数据错误就可能检测不出来,更检测不到错误发生在哪一位;
7、关于TB8和RB8,这两位既可以作奇偶校验位。也可以做多机通信的数据,地址选择位
module parity(even_numbits,odd_numbits,input_bus);
output even_numbits,odd_numbits;
input [7:0] input_bus;
assign odd_numbits = ^input_bus;
assign even_numbits=~odd_numbits;
endmodule
转载于:https://www.cnblogs.com/agllero/p/4444564.html
Verilog奇偶校验_zt相关推荐
- 【数字IC】从零开始的Verilog UART设计
从零开始的UART协议设计 一.写在前面 1.1 协议标准 1.2 数字IC组件代码 二.设计要求 三.模块划分 四.全局参数 五.整体结构 六.波特率生成器 6.1 设计文件 6.2 仿真文件 6. ...
- 奇偶校验verilog
题目描述: 现在需要对输入的32位数据进行奇偶校验,根据sel输出校验结果(0输出奇校验,1输出偶校验) 信号示意图: `timescale 1ns/1ns module odd_sel( input ...
- hls fifo_【FCCM2020】HLS 高手对比 Verilog 高手,到底输哪了?
防秒退提醒:如果你不懂 HLS 但是懂 FPGA,也可以读一下 Verilog 层面的优化手段. 高级综合(high-level synthesis,简称 HLS)能自动把 C/C++ 之类的高级语言 ...
- FPGA学习之路—接口(1)—URAT Verilog程序设计
FPGA学习之路--URAT Verilog程序设计 UART(Universal Asynchronous Receiver Transmitter,通用异步收发器)是广泛使用的异步串行数据通信协议 ...
- (48)VHDL实现8位奇偶校验电路(process语句语句)
(48)VHDL实现8位奇偶校验电路(process语句语句) 1.1 目录 1)目录 2)FPGA简介 3)VHDL简介 4)VHDL实现8位奇偶校验电路(process语句语句) 5)结语 1.2 ...
- (47)VHDL实现8位奇偶校验电路(for loop语句)
(47)VHDL实现8位奇偶校验电路(for loop语句) 1.1 目录 1)目录 2)FPGA简介 3)VHDL简介 4)VHDL实现8位奇偶校验电路(for loop语句) 5)结语 1.2 F ...
- (49)VHDL实现8位奇偶校验电路(while loop语句)
(49)VHDL实现8位奇偶校验电路(while loop语句) 1.1 目录 1)目录 2)FPGA简介 3)VHDL简介 4)VHDL实现8位奇偶校验电路(while loop语句) 5)结语 1 ...
- 基于Flash的ECC纠错算法基本原理及软件C语言算法和硬件Verilog实现(PPT在主页可下载)
目录: 1: ECC原理 2: ECC校验-列校验 3: ECC校验-行校验 4: ECC校验结果的分析 5: 算法实现 6: 实例分析 7: 校验流程总结 8:硬件verilog代码 1.ECC校验 ...
- Verilog实现UART串口收发器数字电路
阿群的笔记 Verilog实现串口的思路: 节拍生成器:开发板自带晶振频率50MHz,串口波特率≈115200比特/秒,设计一个节拍生成器=16拍/比特,计算节拍生成器的计数最大值=50MHz÷(11 ...
- 再说System Verilog 与 Verilog 的关系
System Verilog 与 Verilog 的关系 标准 当前的System Verilog标准是由IEEE(国际电子电气工程师协会)和Accellera(基于工业的标准协会)两个国际组织制定的 ...
最新文章
- c语言错误2015,C语言2015(回答).doc
- Java_Object类
- 在linux学习中遇到的问题
- netty系列之:Event、Handler和Pipeline
- 通达信版弘历软件指标_中线公式指标(副图 通达信 贴图)明确文字提示,辅助判断中线走势下载_通达信公式...
- Android官方开发文档Training系列课程中文版:线程执行操作之定义线程执行代码
- 订单结算中最佳优惠券组合推荐策略分析
- 4步教你玩转可视化大屏设计|内附实际操作
- openwrt php 吃内存,ipkg, opkg 与 openWrt
- C++串行编程步骤介绍
- Java基础知识学习06-封装、继承
- putty远程登录linux无ssh,收集的linux远程ssh连接putty失败解决办法!
- 基于微信小程序点餐系统的设计与实现(含word论文)
- Leetcode-1436: 旅行终点站(6行简单解法)
- 巴马冷泉、巴马水到底是个什么?有市场吗?
- 我梦想中的学习组织-勤学会
- 英特尔多核平台编码优化大赛就顺便试试身手了
- 我是如何用微信抢红包一年抢了一千万的
- [产品经理]产品管理职位的级别
- 主板外形尺寸 ATX 介绍