zoukankan      html  css  js  c++  java
  • 错误检测(2)奇偶校验

    之前的实验中 通过按按钮启动两个板子,由于clock不同步产生了问题,于是我们接入了clock信号使信号保持同步,

    但是即使这样,由于磁场影响或者其他原因,传输的数据仍然可能出现错误:

    怎么来进行错误检测呢,

    1.可以说一共有104个bits

    所以103 或者110个都是有错误的

    2.可以说47%的bit都是1:

    3.可以说最多有6个zero:

     

    4.可以说有49个1:

    (可是,如果1个字节里面1消失了 另个里面1存在了,其实也还是49个1

    parity n.奇偶性

    奇数个1

    …using a single bit)

    D触发器

    (能通过触发储存一比特数据

    然后把output接到input上:

    然后再插个xor门:

    走一下:

    然后发现这个东东发奇数个1 ,就是输出1,发偶数个1就输出0

    插上东西跑一下:

    (灯会根据传送字节中的奇偶最终保持亮暗

    现在我们希望能再receiver这边也检查出parity 如果parity不一样,那就是有错

    跑一次:

     

    (跑通了

    (这次就有错了,中间没有逗号

    定义一下Parity

    最后再多传1bit,如果奇数个,就传1 最后整体是偶数个

    如果偶数个就传0 ,最后整体还是偶数个

    最后就是 

    (如果灯亮了就说明出错了

    到这里基本结束了,

    但是以上都是在考虑1个bit改变的情况

    如果两个bit同时变了呢 最后反映出的结果似乎是没有错

    所以不够perfect

    我们可以给每个字节后面都进行parity计算

    这样就检测出一个字节的错误了

    但是就算这样也有一个字节中出错的可能

     

    所以我们可以每4bits 每2bits来检测

    trade off

    以后介绍其他的更复杂的错误检测方法

    ??

  • 相关阅读:
    体验用yarp连接websocket
    从 ASP.NET Core 5.0 迁移到.NET 6
    对接网易云信音视频2.0呼叫组件集成到vue中,实现web端呼叫app,视频语音通话。
    .NET6 WebAPI 自定义过滤器
    .NET6 WebApi 获取访问者IP地址
    .NET6 部署到 IIS
    .NET6 WebApi JSON传到前台默认变成小驼峰
    开发环境 测试环境 生产环境
    .NET6 WebApi 使用 log4net
    .NET6 WebApi 解决跨域问题
  • 原文地址:https://www.cnblogs.com/eret9616/p/10230927.html
Copyright © 2011-2022 走看看