版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2021/3/91嵌入式系统中信息表示2021/3/92需要了解的基本知识 进位计数制与转换 二进制、十进制、十六进制以及相互转换 计算机中数的表示 原码、反码、补码 定点数:纯小数、纯整数 浮点数:尾数、阶数以及IEEE相关标准2021/3/93需要了解的知识(2) 非数值数据编码 字符和字符串的表示(ASCII码,字符串的存放) 汉字的表示方法,输入方法 统一代码(unicode)2021/3/94需要了解的知识(3) 语音编码 音调、音强和音色 波形采样量化 采样量化的技术参数 采样频率 测量精度 声道数2021/3/95差错控制编码在通信过程中,经常会产生错误。产生错误的原因包括: 信
2、道的电气特性引起信号的幅度、频率、相位的畸变; 信号反射; 串扰; 闪电、大功率电机的开关等。2021/3/96 线路传输差错是不可避免的,但要尽量减小其影响。通信双方可采取的对策是:接收方进行差错检测,并向发送方应答,告知是否正确接收。2021/3/97奇偶校验(Parity Checking) 在原始数据字节的最高位增加一个附加比特位,使结果中1的个数为奇数(奇校验)或偶数(偶校验)。增加的位称为奇偶校验位。 例如,原始数据=1100010,采用偶校验,则增加校验位后的数据为11100010。若接收方收到的字节奇偶结果不正确,就可以知道传输中发生了错误。2021/3/98汉明码(海明码)
3、奇偶校验码只有一位监督位,只能指明有、无差错两种情况,故只能检错。为了纠错,必须增加监督位。汉明码是一种能纠正单比特差错的线性分组码。为了纠错,不仅要指明有奇偶差错,还要能确定差错的位置。 汉明码是1950年由美国贝尔实验室提出来的,是一种多重奇偶检错系统。2021/3/99 设线性分组码(n,k),有k个信息位,r=n-k个监督位。为了能确定n种位置上的差错及线性无差错,要求r的值为: 2rn+1=k+r+1,即2r-rk+1 例如,k=7(7位ASCII字符),则r=4,汉明码长n=7+4=11。 如果k=15呢?2021/3/910 在汉明码字中,比特位从最左边位(位号为1)开始依次编号
4、。位号为2的幂的位(1,2,4,8)是r个监督位(也称为汉明比特),其余位(3,5,6,7,9)是k个信息位。 例如,7个信息位为D1D2D3D4D5D6D7,则汉明码表示为:码位号 1234567891011码位 P1P2 D1P3D2D3D4P4D5D6D72021/3/911 校验子错码位置的对应关系错码位号汉明码位S4S3S2S11P100012P200103D100114P301005D201016D301107D401118P410009D5100110D6101011D71011无错码2021/3/912 写出校验子的表达式: S1=P1 D1 D2 D4 D5 D7 S2=P2
5、 D1 D3 D4 D5 D7 S3=P3 D2 D3 D4 S4=P4 D5 D6 D7 可以得出监督位的表达式: P1=D1 D2 D4 D5 D7 P2=D1 D3 D4 D5 D7 P3=D2 D3 D4 P4=D5 D6 D7 2021/3/913 以某一字符的ASCII码 1100011为例,加以说明。先填入表中,如下图: 将码位中为1的码位号表示为二进制码,再按模2加求和,和为0111,即监督位。 将收到的汉明码中为1的各位码位号表示为二进制码,再按模2求和,无误码则为0。 若收到的汉明码为11110000011,结果如何?码位号 1234567891011码位 P1P2 1P3
6、100P4011码位号 1234567891011码位 11 1110000112021/3/914循环冗余校验(CRC) 基本原理:在k位信息码后再拼接r位的校验码,整个编码长度n位。对于给定的(n, k)码,可以证明存在一个最高次幂为n-k=r的多项式g(x),根据g(x)可以生成k位信息的校验码,而g(x)叫做这个CRC码的生成多项式。2021/3/915几个基本概念 多项式与二进制数码 A(x)=x5+x4+x2+1可以转换为二进制码组110101。 生成多项式:生成多项式g(x)是接收端和发送端的一个约定。应满足以下几个条件: 生成多项式的最高位和最低位必须为12021/3/916
7、当被传送信息(CRC码)任何一位发生错误时,被生成多项式做模2除后应该使余数不为0。 不同位发生错误时,应该使余数不同。 对余数继续做模2除,应使余数循环。 模2除2021/3/917FCS帧检验序列 将信息位后面添加的r位校验码,称为信息的FCS帧校验序列(Frame Check Sequence)。 求得FCS的方法:假设发送的信息用多项式C(x)表示,将C(x)左移r位,则可表示成C(x)*2r,这样C(x)右边就会空出r位,这就是校验码的位置。 通过C(x)*2r除以生成多项式g(x)得到的余数就是校验码。 例子:信息码为11100110,生成多项式为11001,采用CRC进行差错检测
8、,求FCS的产生过程。2021/3/918CRC码的编码方法 将x的最高幂次为r的生成多项式g(x)转换成对应的r+1位二进制数。 将信息码左移r位,相当于对应的多项式C(x)*2r 。 用生成多项式对信息码模2除,得到r位的余数FCS帧校验序列。 将余数拼到信息码左移后空出的位置,得到完整的CRC码。2021/3/919CRC码的出错模式(G(x)=1011)收到的收到的CRC码字码字余数余数出错出错位位码位码位A7A6A5A4A3A2A1正确1010011000无错误10100100011101000101021010111100310110110114100001111051110011
9、111600100111017若收到的码字为1010111结果如何?如何纠错?2021/3/920ARM处理器中的信息表示2021/3/921 首先说明的问题: 51单片机是8位的处理器,即指令代码为8位,以及可进行8位的数据处理(ALU)。 对于32位的ARM处理器来说,情况就复杂一些。它既可以运行32位的ARM指令系统,也可以运行16位的Thumb(拇指)指令系统。另一方面,它既可以处理32位数据,也可以处理16位数据和8位数据。2021/3/922 由于我们习惯于用8位作为一个单位(字节)来存储数据,每个存储单元分配一个存储地址,这样8位的51系统对指令的读取和数据的访问都只针对一个地址
10、值。而在32位的ARM处理器中,32位指令要使用4个地址单元,16位指令要使用两个地址单元。 这样引出了一个问题:所存储的数据的排列问题。2021/3/923先来看一段51单片机的代码,回顾一下51系统中的指令存放情况:00FBHC3CLRC00FCHEFMOVA,R700FDH33RLCA00FEHFFMOVR7,A00FFHEEMOVA,R60100H33RLCA0101HFEMOVR6,A0102HE9MOVA,R10103H33RLCA0104HF9MOVR1,A0105HE8MOVA,R00106H33RLCA2021/3/924 对于ARM这样的结构,每个数据(或指令代码)要占4个
11、存储单元(32位)或2个存储单元(16位),ARM规定有两种存储格式: 一种为大端(big-ending)格式 另一种称为(little-ending)格式2021/3/925小端存储格式位 24 23 16 15 87 0字节A+3字节A+2字节A+1字节A半字A+2的高字节半字A+2的低字节半字A的高字节半字A的低字节存储地址0 x00030 x00020 x00010 x0000注:这个例子中存储一个字(两个半字),一个称为半字A,另一个称为半字A+2。2021/3/926以小端格式存储作答存储值2A 36 47 8B 63 74 AC 9E 00 8F 23 66 C3 A8地址 0
12、x000D 0C 0B 0A 09 08 07 06 05 04 03 02 01 00半字半字7 半字6 半字5 半字4 半字3 半字2 半字1字字3字2字1半字1的地址是多少?值是多少?半字6的地址是多少?值是多少?字2的地址是多少?值是多少?2021/3/927大端存储格式位 24 23 16 15 87 0字节A字节A+1字节A+2字节A+3半字A的低字节半字A的高字节半字A+2的低字节半字A+2的高字节存储地址0 x00030 x00020 x00010 x0000注:这个例子中存储一个字(两个半字),一个称为半字A,另一个称为半字A+2。2021/3/928以大端格式存储作答存储值
13、2A 36 47 8B 63 74 AC 9E 00 8F 23 66 C3 A8地址 0 x000D 0C 0B 0A 09 08 07 06 05 04 03 02 01 00半字半字8 半字5 半字6 半字3 半字4 半字1 半字2字字3字2字1半字1的地址是多少?值是多少?半字6的地址是多少?值是多少?字2的地址是多少?值是多少?2021/3/929两种格式的说明和比较 对于字的存储来说,两种存储中字的存储地址没有差异,都是从低地址向高地址排列,但数据不一样。 半字的存储位置发生了变化。 字节的存储也发生了变化。 ARM处理器虽然有两种存储的结构,但不一定有两种格式的选择。在硬件逻辑中
14、有一个输入逻辑(BRGEND),存储格式是由外围模块控制这个输入逻辑决定的。 在很多处理器中,存储格式是固定的。如X86构架用大端存储,而PPC用小端存储。2021/3/930思考题 存储器内的内容为: 如果是小端存储,3个字从高到低分别是? 如果是大端存储,3个字从高到低分别是? 如果是小端存储,6个半字从高到低分别是?data20 4A 50 CC 89 21 73 20 C0 2F FF 3Aaddr0B 0A 09 08 07 06 05 04 03 02 01 002021/3/931再来看一段51单片机的代码,说明地址有效性的问题:0800H00NOP0801H7404MOVA,#04H0803H7D2FMOVR5,#2FH0805H2DADDA,R50806H0DINCR50807H2DADDA,R50808H7590FF MOVP1,#0FFH如果从0802H开始读取指令,指令代码为04(INC A),这是一个错误的操作。这种错误常常发生在程序跳转的时候。2021/3/932地址对准 在ARM中,通常把正确的地址入口称为地址对准(alignment)。它包括字对准、半字对准。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 核废料地质处置安全法律框架论文
- 教育公平测量指标X文献综述论文
- 桥梁监测技术发展论文
- 桥梁健康监测系统设计方法论文
- 金属有机框架催化剂应用进展论文
- 城市更新居民参与合作论文
- 产后母乳喂养技巧
- 痛风及高尿酸血症基层诊疗指南课件
- 南涧彝族自治县2026年三年级数学第一学期期末联考试题含解析
- 变频器的考试题及答案
- 树立正确婚恋观 走好幸福军旅路
- 经济法概论(财经类) 自考复习资料 自考
- 直肠及肛管超声诊断
- GB/T 13870.1-2022电流对人和家畜的效应第1部分:通用部分
- RB/T 124-2018能源管理体系建筑业施工企业认证要求
- GB/T 4208-2017外壳防护等级(IP代码)
- GB/T 34910.3-2017海洋可再生能源资源调查与评估指南第3部分:波浪能
- 花生病虫害综合防治
- 厨房生产安全培训课件
- 布卢姆教育目标分类学(修订版)课件
- 路基附属工程施工技术交底
评论
0/150
提交评论