计算机组成原理偶校验编码设计,计算机组成原理校验码生成电路的设计.doc
计算机组成原理校验码生成电路的设计
编 号:学 号: 9
课 程 设 计
教 学 院计算机学院课程名称计算机组成原理课程设计题 目校验码生成电路的设计专 业计算机科学与技术班 级计科一班姓 名陈建辉同组人员周海涛 石义沣 明廷柱指导教师杨 斐
2013年1月11日
目 录
一 概述2
1.课程设计的目的2
2.课程设计的要求2
二 总体方案设计3
1.设计原理3
2.整体设计思路4
3. EDA技术及QUARTUS II软件的简介4
4. 主要特点7
5. 具备的功能7
6. 分工情况8
7. 设计环境8
三 详细设计9
1. 12位的寄存器设计9
2. 奇偶校验电路的设计10
3. CRC码生成电路的设计10
4. 17位寄存器设计13
5. 整体电路13
四.程序的调试与运行结果说明15
1. 建立工作库文件夹和编辑设计文件15
2. 时序仿真16
3. 设置开始时间和结束时间及时间段17
4. 奇偶校验码波形图17
5. CRC码校验仿真波形图18
6. 整合电路校验码的波形图18
五 课程设计总结19
参考文献20
一 概述
1.课程设计的目的
1. 理解和掌握该课程中的有关基本概念,程序设计思想和方法。
2.培养综合运用所学知识独立完成课题的能力。
3.培养勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。
4.掌握从资料文献、科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。
2.课程设计的要求
1. 能够熟练掌握计算机中校验码的工作原理及其多种实现方案;
2. 掌握硬件描述语言VHDL及原理图设计方法;
3. 熟练掌握Quartus II软件平台;
4. 各小组按模块分工,每人独立完成自己负责的模块;
5. 合作完成最终的硬件下载及调试;
6. 独立撰写符合要求的课程设计报告。
二 总体方案设计
1.设计原理
二进制信息位流沿一条线逐位在部件之间或计算机之间传送称为串行传送。
奇偶校验码是一种通过增加冗余位使得码字中"1"的个数恒为奇数或偶数的编码方法,它是一种检错码。在实际使用时又可分为垂直奇偶校验、水平奇偶校验和水平垂直奇偶校验等几种。它是由k位的信息码加上一位偶检验码(或奇校验码组成)。奇偶校验码常用于存储器读、写检查或ASCII码传送过程中的检查。在实际应用中,多采用奇校验,因为奇校验中不存在全“0”代码,在某些场合下更便于判别。
CRC码一般是指k位信息码之后拼接r位校验码。应用CRC码的关键是如何从k位信息位简便地得到r位效验位,以及如何从k+r位信息码判断是否出错。
奇偶校验码的生成:
奇偶校验码的实现方法是在每个被传送码的左边或右边加上1位奇偶校验位“0”或“1”,若采用奇校验位,只需把每个编码中1的个数凑成奇数;若采用偶校验位,只要把每个编码中1的个数凑成偶数。
CRC码生成:
多项式M(x)·x3除以生成多项式G(x)所得的r位余数为效验位(为了得到
R位余数,G(x)必须是r+1位)。然后将余数拼接在信息组左移r位空出的r位上,就构成了这个有效信息的CRC码。(因为k=4,所以k-1=3位)
CRC码效验:
将收到的循环效验码用约定的生成多项式G(x)去除,如果码字无误则余数应为0,如果某一位出错,则余数不为0,不同位数出错余数不同。更换不同的待测码字可以证明:余数与出错位的对应关系是不变的,只与码制和生成多项式有关,对于其他码制或选用其他生成多项式,出错模式将发生变化。
如果循环码有一位出错,用G(x)作模2除将得到一个不为0的余数。可通过异或门将它纠正后在下一次移位时送回A16继续移满一个循环,就得到一个纠正后的码字。
2.整体设计思路
1.利用QUARTUS软件设计校验码生成电路,能实现奇偶校验码和循环冗余CRC码的设计。
2.用原理图设计法设计奇偶校验码生成电路。
3.用VHDL设计法设计循环冗余CRC码生成电路。
4.输入12位二进制数据存放在A寄存器中,加码后的数据以二进制显示在发光二级管上。
5.总电路的设计如下:
图 2-1 总电路示意图
3. EDA技术及QUARTUS II软件的简介
EDA是Electronic Design Automation(电子设计自动化)的缩写 。
由于它是一门刚刚发展起来的新技术,涉及面广,内容丰富,理解各异,所以目前尚无一个确切的定义。但从EDA技术的几个主要方面的内容来看,可以理解为
计算机组成原理偶校验编码设计,计算机组成原理校验码生成电路的设计.doc相关推荐
- 计算机组成原理课程设计海明码,海明码生成与校验电路的设计
海明码生成与校验电路的设计 沈阳航空航天大学 课课 程程 设设 计计 报报 告告 课程设计名称:计算机组成原理课程设计计算机组成原理课程设计 课程设计题目:海明码生成与校验电路的设计海明码生成与校验电 ...
- CRC校验码生成逻辑的实现原理详解——结合C语言和Verilog语言代码分析
文章目录 前言 一.CRC校验码的计算 1.CRC模型 2.CRC计算 步骤1:输入数据与初始值模2加并左移 步骤2:被除数与多项式模2除 二.CRC校验码生成逻辑的C语言实现 1.实现代码 2.代码 ...
- 计算机组成原理:定点数和浮点数、校验码
1.定点数和浮点数 小数点在计算器中并没有专门的器件进行存放.根据小数点的位置是否固定,可将数字分为定点数和浮点数. 定点数 定点数是小数点位置固定的数,小数点的位置由事先约定.同一种定点数的机器码中 ...
- 硬件加速 | 常用电路设计之CRC校验码产生器的设计
一.CRC校验码的产生原理 循环冗余编码(CRC)是二进制通信系统中一种常用的差错检测方法,它是通过在原始数据后面添加冗余校验码来实现检测差错的目的.CRC编码的基本原理就是:CRC可由原始数据流的二 ...
- Java语言 CRC-16/MODBUS..16+x15+x2+1校验码生成
CRC算法名称 多项式公式 宽度 多项式 初始值 结果异或值 输入值反转 输出值反转 CRC-16/MODBUS 16+x15+x2+1 16 8005 FFFF 0000 true true 查表法 ...
- 计算机组成原理 微指令编码_计算机组成原理(指令)
图片来源于网络 大家有没有想过这样的问题!计算机是如何运行的?为什么它能执行我们需要的操作?其实这和指令息息相关. 计算机的工作的过程也是指令执行的过程 操作系统是程序的合集 程序由一组指令组成: 指 ...
- 一维条形码ean-13格式编码 最后一位校验码的生成规则 及代码
/*** * @param code * @return 如果返回值是一个大于0的整数 如果返回-2表示所传的参数为空 ,如果返回值是-1 表示字符串中含有非数字字符*/public static i ...
- java生成SSCC编码第18位校验码
问题描述 java实现SSCC编码校验位 public String add18EAN(String value) {if (value.length() < 17) {return value ...
- 单片机STM32F103RB,BLDC直流电机控制器设计,原理图、源码和电路方案
基于STM32 BLDC直流无刷电机控制器设计,并附上原理图和源码等.源代码是基于免费开源CoOS(UCOS类似)操作系统上写的,在学习无刷电机的控制同时还能学习到操作系统的知识.同时提供用Matla ...
最新文章
- 10没有基于策略的qos_分布式QoS算法解析
- python 编程入门-python编程入门(第3版)
- 前端发给后台的参数中含有中文
- Mysql存储引擎详解
- 第8.15节 Python重写自定义类的__repr__方法
- keil5中文乱码的解决
- BI中事实表,维度表和数据集市,数据仓库的理解
- 科研|饶毅:科学在被淘汰的博士后引领下狂奔
- 12. Integer to Roman
- 使用表的id+随机数做不重复的订单号
- java编程中的点_java编程中所遇到的知识点(持续更新)
- 逻辑回归与线性回归是什么关系呢?
- c++ 类全局变量_static在C和C++中的用法总结
- QGIS 3初级到高级
- where 空集_实验七SQL的空值和空集处理.doc
- 小米html查看器 联网,小米摄像机如何连接无线路由器通过手机查看
- 【相机硬触发】大恒相机硬触发说明文档
- AEAI Portlet开发心得
- 风控策略的开发与场景应用
- 一知半解学CubeMX——IIC:OLED屏显示