嵌入式系统中信息表示[知识课件].ppt

上传人:scccc 文档编号:11967435 上传时间:2021-11-23 格式:PPT 页数:33 大小:1.52MB
返回 下载 相关 举报
嵌入式系统中信息表示[知识课件].ppt_第1页
第1页 / 共33页
嵌入式系统中信息表示[知识课件].ppt_第2页
第2页 / 共33页
嵌入式系统中信息表示[知识课件].ppt_第3页
第3页 / 共33页
嵌入式系统中信息表示[知识课件].ppt_第4页
第4页 / 共33页
嵌入式系统中信息表示[知识课件].ppt_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《嵌入式系统中信息表示[知识课件].ppt》由会员分享,可在线阅读,更多相关《嵌入式系统中信息表示[知识课件].ppt(33页珍藏版)》请在三一文库上搜索。

1、嵌入式系统中信息表示,1,实用内容,需要了解的基本知识,进位计数制与转换 二进制、十进制、十六进制以及相互转换 计算机中数的表示 原码、反码、补码 定点数:纯小数、纯整数 浮点数:尾数、阶数以及IEEE相关标准,2,实用内容,需要了解的知识(2),非数值数据编码 字符和字符串的表示(ASCII码,字符串的存放) 汉字的表示方法,输入方法 统一代码(unicode),3,实用内容,需要了解的知识(3),语音编码 音调、音强和音色 波形采样量化 采样量化的技术参数 采样频率 测量精度 声道数,4,实用内容,差错控制编码,在通信过程中,经常会产生错误。产生错误的原因包括: 信道的电气特性引起信号的幅

2、度、频率、相位的畸变; 信号反射; 串扰; 闪电、大功率电机的开关等。,5,实用内容,线路传输差错是不可避免的,但要尽量减小其影响。通信双方可采取的对策是:接收方进行差错检测,并向发送方应答,告知是否正确接收。,6,实用内容,奇偶校验(Parity Checking),在原始数据字节的最高位增加一个附加比特位,使结果中1的个数为奇数(奇校验)或偶数(偶校验)。增加的位称为奇偶校验位。 例如,原始数据=1100010,采用偶校验,则增加校验位后的数据为11100010。若接收方收到的字节奇偶结果不正确,就可以知道传输中发生了错误。,7,实用内容,汉明码(海明码),奇偶校验码只有一位监督位,只能指

3、明有、无差错两种情况,故只能检错。为了纠错,必须增加监督位。汉明码是一种能纠正单比特差错的线性分组码。为了纠错,不仅要指明有奇偶差错,还要能确定差错的位置。 汉明码是1950年由美国贝尔实验室提出来的,是一种多重奇偶检错系统。,8,实用内容,设线性分组码(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呢?,9,实用内容,在汉明码字中,比特位从最左边位(位号为1)开始依次编号。位号为2的幂的位(1,2,4,8)是r个

4、监督位(也称为汉明比特),其余位(3,5,6,7,9)是k个信息位。 例如,7个信息位为D1D2D3D4D5D6D7,则汉明码表示为:,10,实用内容,校验子错码位置的对应关系,11,实用内容,写出校验子的表达式: S1=P1 D1 D2 D4 D5 D7 S2=P2 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,12,实用内容,以某一字符的ASCII码 1100011为例,加以说明。先填入表中,如下图:

5、将码位中为1的码位号表示为二进制码,再按模2加求和,和为0111,即监督位。 将收到的汉明码中为1的各位码位号表示为二进制码,再按模2求和,无误码则为0。 若收到的汉明码为11110000011,结果如何?,13,实用内容,循环冗余校验(CRC),基本原理:在k位信息码后再拼接r位的校验码,整个编码长度n位。对于给定的(n, k)码,可以证明存在一个最高次幂为n-k=r的多项式g(x),根据g(x)可以生成k位信息的校验码,而g(x)叫做这个CRC码的生成多项式。,14,实用内容,几个基本概念,多项式与二进制数码 A(x)=x5+x4+x2+1可以转换为二进制码组110101。 生成多项式:生

6、成多项式g(x)是接收端和发送端的一个约定。应满足以下几个条件: 生成多项式的最高位和最低位必须为1,15,实用内容,当被传送信息(CRC码)任何一位发生错误时,被生成多项式做模2除后应该使余数不为0。 不同位发生错误时,应该使余数不同。 对余数继续做模2除,应使余数循环。 模2除,16,实用内容,FCS帧检验序列,将信息位后面添加的r位校验码,称为信息的FCS帧校验序列(Frame Check Sequence)。 求得FCS的方法:假设发送的信息用多项式C(x)表示,将C(x)左移r位,则可表示成C(x)*2r,这样C(x)右边就会空出r位,这就是校验码的位置。 通过C(x)*2r除以生成

7、多项式g(x)得到的余数就是校验码。 例子:信息码为11100110,生成多项式为11001,采用CRC进行差错检测,求FCS的产生过程。,17,实用内容,CRC码的编码方法,将x的最高幂次为r的生成多项式g(x)转换成对应的r+1位二进制数。 将信息码左移r位,相当于对应的多项式C(x)*2r 。 用生成多项式对信息码模2除,得到r位的余数FCS帧校验序列。 将余数拼到信息码左移后空出的位置,得到完整的CRC码。,18,实用内容,CRC码的出错模式(G(x)=1011),若收到的码字为1010111结果如何?如何纠错?,19,实用内容,ARM处理器中的信息表示,20,实用内容,首先说明的问题

8、: 51单片机是8位的处理器,即指令代码为8位,以及可进行8位的数据处理(ALU)。 对于32位的ARM处理器来说,情况就复杂一些。它既可以运行32位的ARM指令系统,也可以运行16位的Thumb(拇指)指令系统。另一方面,它既可以处理32位数据,也可以处理16位数据和8位数据。,21,实用内容,由于我们习惯于用8位作为一个单位(字节)来存储数据,每个存储单元分配一个存储地址,这样8位的51系统对指令的读取和数据的访问都只针对一个地址值。而在32位的ARM处理器中,32位指令要使用4个地址单元,16位指令要使用两个地址单元。 这样引出了一个问题:所存储的数据的排列问题。,22,实用内容,先来看

9、一段51单片机的代码,回顾一下51系统中的指令存放情况:,23,实用内容,对于ARM这样的结构,每个数据(或指令代码)要占4个存储单元(32位)或2个存储单元(16位),ARM规定有两种存储格式: 一种为大端(big-ending)格式 另一种称为(little-ending)格式,24,实用内容,小端存储格式,注:这个例子中存储一个字(两个半字),一个称为半字A,另一个称为半字A+2。,25,实用内容,以小端格式存储作答,半字1的地址是多少?值是多少? 半字6的地址是多少?值是多少? 字2的地址是多少?值是多少?,26,实用内容,大端存储格式,注:这个例子中存储一个字(两个半字),一个称为半

10、字A,另一个称为半字A+2。,27,实用内容,以大端格式存储作答,半字1的地址是多少?值是多少? 半字6的地址是多少?值是多少? 字2的地址是多少?值是多少?,28,实用内容,两种格式的说明和比较,对于字的存储来说,两种存储中字的存储地址没有差异,都是从低地址向高地址排列,但数据不一样。 半字的存储位置发生了变化。 字节的存储也发生了变化。 ARM处理器虽然有两种存储的结构,但不一定有两种格式的选择。在硬件逻辑中有一个输入逻辑(BRGEND),存储格式是由外围模块控制这个输入逻辑决定的。 在很多处理器中,存储格式是固定的。如X86构架用大端存储,而PPC用小端存储。,29,实用内容,思考题,存

11、储器内的内容为: 如果是小端存储,3个字从高到低分别是? 如果是大端存储,3个字从高到低分别是? 如果是小端存储,6个半字从高到低分别是?,30,实用内容,再来看一段51单片机的代码,说明地址有效性的问题:,如果从0802H开始读取指令,指令代码为04(INC A),这是一个错误的操作。这种错误常常发生在程序跳转的时候。,31,实用内容,地址对准,在ARM中,通常把正确的地址入口称为地址对准(alignment)。它包括字对准、半字对准。即32位时地址后两位为0,16位半字时地址最后一位为0。 不但对于指令要注意地址对准问题,对于数据的操作也要注意地址对准问题。,32,实用内容,非对准情况下可能出现的结果,结果无法预测。 忽略非对准的地址地位。 在对存储器访问时,由存储器做如下处理:字访问忽略地址最后两位,半字访问忽略地址最后一位。 究竟产生哪一种结果取决于处理器所执行的指令,而不是哪款处理器有统一的处理结果。,33,实用内容,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1