总线数据传输中的同步技术_第1页
总线数据传输中的同步技术_第2页
总线数据传输中的同步技术_第3页
总线数据传输中的同步技术_第4页
总线数据传输中的同步技术_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2020/8/10,1,第三讲 总线数据传输中的同步技术,主讲人:于海滨 二教中楼309室 ,总线的数据传输方式,数据传输方式定义了二进制数据流从一个设备到另一个设备的传送模式 并行传输(Parallel)和串行传输(Serial) 同步传输(Synchronous)和异步传输(Asynchronous) 单工(Simplex)、半双工(Half-Duplex)和全双工通信(Full-Duplex),2020/8/10,2,并行传输和串行传输,并行传输 多个数据位同时在设备之间传输,形如多车道高速公路行驶的汽车,如8位ASCII码 传输率高,成本高,适用于内部总线,两设备相距较远时,代价过高

2、串行传输 只有一条数据传输线,任意时刻只能传输1位二进制数 传输速度慢,成本低,适用于远距离传输或近距离速度要求不高的应用场合,2020/8/10,3,2020/8/10,4,同步传输与异步传输,同步 在通信过程中,发送方和接收方必须在时间上保持一致才能准确的传输数据,这就叫做同步 在传送由多个字符组成的数据块时,不仅每个字符传输要保持同步,通信双方对信号的起、止时间也必须保持一致 同步对应两种传输方式:同步传输和异步传输,2020/8/10,5,同步传输,采用按位同步技术,以固定的时钟频率串行发送数字信号,字符之间有固定时间间隔,各字符中没有起始位和停止位 依据获得的时钟分量是源自信号内(信

3、号本身)还是信号外,同步传输可分为: 外同步 发送端发送数据之前先向接收端发送一串进行同步的时钟脉冲;接收端收到同步信号后进行频率锁定,然后以同步频率为准接收数据 自同步 发送端发送数据时将时钟脉冲作为同步信号包含在数据流中同时传送给接收端,接收端从数据流中辨别同步信号,再据此接收数据,2020/8/10,6,异步传输,采用“群”(组)同步技术。根据一定的规则将数据分为不同的群(组),每一个群的大小是不确定的 要求发送端与接收端在一个群内必须保持同步,发送端在数据前面加起始位,数据后面加停止位 接收端通过识别起始位和停止位来接收数据,2020/8/10,7,同步传输与异步传输比较,异步传输中发

4、送方可以在任何时刻发送数据,而接收方从不知道数据什么时候到达 例子:键盘与主机之间的通信。按下一个键就发送一个8bit的ASCII码,键盘可以在任意时刻发送,主机内部的硬件必须能够在任意时刻接收这个代码 潜在问题:接收方不知道数据什么时候到达,当它检测到数据并做出响应之前,第一个bit已经过去了 每次异步传输信息都以一个起始位开头,以给接收方响应、接收和缓存数据的时间,传输结束再发送停止位 同步传输遵循先同步、再接收的原则,一旦检测到同步信号,就在接下来的数据到达时接收它们,2020/8/10,8,同步传输通常要比异步传输快速得多,接收方不必对每组数据进行开始和停止的操作 举例:一个典型的帧可

5、能有500字节(4000 bit)的数据,采用同步传输,其中可能只包含100bit的开销,增加的bit位使传输的bit总数增加2.5%;采用异步传输,bit总数增加25%;并且随着数据帧中实际bit位的增加,开销bit所占的百分比将相应减少 帧越大,占据传输介质的连续时间也越长,将导致其它用户等得太久 异步传输实现简单,同步传输实现复杂,2020/8/10,9,单工、半双工和全双工通信,数据在通信线路上传输是有方向性的,根据某一时刻数据在通信线路上传输方向的不同可分为 单工 半双工 全双工,2020/8/10,10,单工通信,数据传输过程中,数据始终沿着同一个方向传输 为保证数据能够被正确传输

6、,就需要进行差错控制,因此单工通信采用二线制,即两个信道,主信道用于传输数据,另一个监测信道用于传送监测信号(接收数据正确与否) 无线广播、有线广播和电视广播系统,2020/8/10,11,半双工通信,在通信信道中,数据可以双向传输,但是在任一时刻,数据只能向一个方向传输 通信线路一端的通信设备既可以是信源,也可以是信宿。但是在任一时刻,要么是信源,要么是信宿,不可能既是信源,又是信宿 通信线路两端的设备轮流发送数据,2020/8/10,12,半双工通信中也有监测信号的传输,传输方式有两种: 监测与数据传输共用一条信道,在相互应答时转换信道的功能 数据传输信道与监测信道分开,有一条专门的信道供

7、监测信号使用 举例:计算机与外设的通信就是一种半双工通信,2020/8/10,13,2020/8/10,14,全双工通信,在同一时刻,位于通信线路两端的每台设备既是信源,又是信宿 位于通信线路一端的设备可以在同一时刻既接收数据,也发送数据,2020/8/10,15,全双工通信,在同一时刻,位于通信线路两端的每台设备既是信源,又是信宿 位于通信线路一端的设备可以在同一时刻既接收数据,也发送数据 有些全双工通信系统采用频分复用技术,传输信道可以分成高频群信道和低频群信道,系统采用单线制就可以实现 举例:电话系统,交换式以太网,2020/8/10,16,单工,半双工,全双工,2020/8/10,17

8、,总线同步传输实例双目图像传感器同步采集的实现,双目视觉,也称立体视觉,模拟人的双眼采用三角运算获得景物的深度(与摄像机之间的距离)信息 要求左视图、右视图之间必须严格同步 同步采集是双目立体视觉图像采集系统的一项关键技术,2020/8/10,18,现有的双目同步采集解决方案,采用外加的同步控制器或同步控制电路 通常应用于采用双摄像机或双照相机作为采集模块的双目立体视觉系统,不适用于采用传感器芯片的嵌入式系统 选用具有主从级联功能或外同步时钟输入的CMOS图像传感器或视频A/D(CCD) 主从式:通过主图像传感器芯片发同步信号给从片,可以较为方便的实现双目图像采集的同步 外同步式:两个图像传感

9、器芯片接受统一的外同步时钟,从而实现同步采集 该类芯片大多停产,如果有也是专用芯片,价格高,2020/8/10,19,2020/8/10,20,2020/8/10,21,HREF和PCLK均以VSYNC的下降沿作为触发标准,因而只要两个图像传感器之间的VSYNC的下降沿是同步的,则它们之间的HREF和PCLK也必然是是同步的 双目图像采集之间的同步与两个图像传感器之间的VSYNC下降沿之间的同步可以认为是完全等同的 严格同步的RESET(包括软复位)并不能够保证两个图像传感器的VSYNC下降沿之间的同步,而且即使复位之后两个图像传感器的VSYNC的下降沿达到同步,由于很多干扰因素的存在,在图像

10、对采集过程中VSYNC的下降沿还是会重新进入不同步的状态,2020/8/10,22,图像传感器内部所有的时序逻辑关系都是根据外输入时钟CLK建立起来的,因此可以通过调整CLK的方式实现两个图像传感器的同步控制 如何实现? CLK1和CLK2是同一个有源晶振的输出 如果当前帧的两个视图发现是不同步的,当前帧可以丢弃,甚至丢弃多帧都可以,通过反复调节达到同步即可 可以采用抑制超前时钟的方法,2020/8/10,23,基于输入时钟抑制的双目图像采集同步方法,将VSYNC下降沿超前的图像传感器的输入时钟抑制掉超前的时钟个数就能够迫使该图像传感器内部的时序逻辑全部延迟超前的时钟个数,从而达到与VSYNC

11、下降沿落后的图像传感器之间的同步,2020/8/10,24,实现步骤,判断两个图像传感器的VSYNC下降沿之间是否有差异来断定是否同步 如果断定不同步,则判断出哪一个图像传感器超前,并利用VSYNC下降沿差异计数器同时获取差异的时钟个数 将超前的图像传感器的输入时钟(CLK)抑制掉差异的时钟个数,2020/8/10,25,上述基本方案的问题: 时钟差异计数器的计数范围不可能很大(计数范围越大越耗CPLD/FPGA资源) 而某些严重的干扰(如电源扰动,剧烈震动等)可能会导致两个图像传感器的VSYNC下降沿之间的差异时钟个数很大 这种情况下仅靠VSYNC下降沿差异计数器无法在短时间内使两个图像传感

12、器达到同步 如何解决? 可将VSYNC下降沿的同步过程分为粗同步和细同步两个阶段(粗调和微调),2020/8/10,26,如果VSYNC下降沿差异计数器没有溢出,则说明两个OV7141的VSYNC下降沿之间差异的时钟个数在差异计数器的可调范围之内,直接按照差异计数器的计数结果对超前的图像传感器进行输入时钟抑制,细同步,2020/8/10,27,粗同步,如果差异计数器溢出,说明两个图像传感器的VSYNC下降沿之间差异较大,超出了细同步的调节范围,直接利用两个图像传感器的HREF之间的差异对超前OV7141进行输入时钟抑制,2020/8/10,28,粗同步与细同步是互补的两个阶段,细同步无法应用的

13、情况需要进行粗同步,而粗同步即使没有使得两个图像传感器的VSYNC下降沿之间在当前帧内获得严格同步,在下一帧还可以继续通过细同步来获得严格同步 粗同步与细同步两个阶段紧密合作就可以完成两个图像传感器的VSYNC下降沿之间的严格同步进而实现双目图像对的同步采集工作,2020/8/10,29,基于输入时钟抑制的双目图像采集同步的实现端口定义,sensor_clk: input; sensor_rs: input; sensor_rs_f_pulse: input; sensor2_vsync: input; sensor2_href: input; sensor1_vsync : input; s

14、ensor1_href: input; sensor1_clk: output; sensor2_clk: output; sync_id: output;,2020/8/10,30,基于输入时钟抑制的双目图像采集同步的实现变量定义(1),Vsync_R_Dff1: dff;-R indicates rising edge Vsync_R_Dff2: dff; Vsync_F_Dff1: dff;-F indicates falling edge Vsync_F_Dff2: dff; Sync_Cnt_OF_Dff: dff;-OF indicates overflow Vsync_F_Dif

15、f_Ahead_Dff1 : dff;-Dff indicates D-flipflop Vsync_F_Diff_Ahead_Dff2 : dff; Sync_R_Rst: node;-Rst indicates reset Sync_F_Rst: node; Vsync_OR: node; Vsync_R_Diff: node; Vsync_F_Diff: node; Sync_Ref: node;,2020/8/10,31,基于输入时钟抑制的双目图像采集同步的实现变量定义(2),Href_R_Diff: node; Href_R_Dff1: dff; Href_R_Dff2: dff;

16、Vsync_F_Diff_F_Pul: pulse_1;-Pul indicates pulse which width is 1 clock; Sync_Ref_R_Pul: pulse_1; Sync_Ref_F_Pul: pulse_1; Vsync_F_Diff_Cnt : lpm_counter with (LPM_WIDTH = SYNC_CNT_WIDTH,LPM_DIRECTION = UP); -Cnt indicates counter Vsync_Sync_Cnt : lpm_counter with (LPM_WIDTH = SYNC_CNT_WIDTH,LPM_DIR

17、ECTION = UP); Sync_SM : machine with states(SYNC_IDLE, SYNC_BUSY); -SM indicates state-machine,2020/8/10,32,基于输入时钟抑制的双目图像采集同步的实现程序主体(1),Vsync_R_Dff1.clk= sensor1_vsync; Vsync_R_Dff1.d= vcc; Vsync_R_Dff1.clrn= !Sync_F_Rst; Vsync_R_Dff2.clk = sensor2_vsync; Vsync_R_Dff2.d= vcc; Vsync_R_Dff2.clrn = !Sy

18、nc_F_Rst; Vsync_F_Dff1.clk = !sensor1_vsync; Vsync_F_Dff1.d = vcc; Vsync_F_Dff1.clrn = !Sync_R_Rst; Vsync_F_Dff2.clk = !sensor2_vsync; Vsync_F_Dff2.d = vcc; Vsync_F_Dff2.clrn= !Sync_R_Rst; Vsync_R_Diff = Vsync_R_Dff1 $ Vsync_R_Dff2; Vsync_F_Diff = Vsync_F_Dff1 $ Vsync_F_Dff2; Vsync_OR = sensor1_vsyn

19、c # sensor2_vsync; Sync_Ref = Vsync_R_Diff # Vsync_F_Diff # Vsync_OR;,2020/8/10,33,基于输入时钟抑制的双目图像采集同步的实现程序主体(2),Vsync_F_Diff_Ahead_Dff1.clk= Vsync_F_Diff ,2020/8/10,34,基于输入时钟抑制的双目图像采集同步的实现程序主体(3),Sync_Ref_F_Pul.clk_ref= sensor_clk; Sync_Ref_F_Pul.start= !Sync_Ref; Sync_Ref_R_Pul.clk_ref= sensor_clk;

20、Sync_Ref_R_Pul.start= Sync_Ref; Sync_R_Rst= sensor_rs_f_pulse # Sync_Ref_R_Pul.out; Sync_F_Rst= sensor_rs_f_pulse # Sync_Ref_F_Pul.out;,2020/8/10,35,基于输入时钟抑制的双目图像采集同步的实现程序主体(4),Vsync_F_Diff_Cnt.clock= sensor_clk; Vsync_F_Diff_Ct_en = Vsync_F_Diff ,2020/8/10,36,基于输入时钟抑制的双目图像采集同步的实现程序主体(5),Href_R_Dff1.clk= senso

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论