DSA通讯协议

1.DSA-接口规范

DSA总线是一个异步,双向的,内部设计用于在一组两个微处理器之间的通信总线。

它有三个双向线:

DATA -启动同步和数据传输

STB -数据选通(当STB为低电平时数据是有效的)

ACK -启动同步,数据传输,确认及通信应答 

 

2.通讯说明

每个数据通信包括三个阶段:

开始同步 同步发射器和接收器数据传输

数据传输 通过数据选通和应答信号传输所有的数据位。

通信应答 接收器可以让发射机知道通信是否异常,如果通信没有出现错误,有 可能重复它,直到它是确定

 

处理器被称为发射器,当它想传输数据。它从一个同步阶段开始,传输数据,并要求收到最后的通信应答。

其他处理器自动成为接收器。

 

2.1同步启动 

发射器拉低数据线,让对方知道它要发送一些数据。然后它开始等待,直到ACK线被拉低接收到一个来自接收方确认信号,确认接受传输请求和准备好接受数据。

然后发送方拉高DATA信号,等待ACK线被拉高,如果ACK被拉高则表示同步结束,发送方和接收方都准备好了数据传输。

 

有可能两个处理器要在同时传输他们的数据,同时拉低DATA线然后等待ACK线上的应答信号。因此,有必要在同步开始的时候在软件中添加超时发送。超过超时时间时,伺服处理器,伺服处理器拉高DATA线,然后检测用户处理器是否有发起同步信号。如果是,他先接受数据,然后伺服处理器可以再拉低数据线再次传输数据。

伺服处理器不能通过同步阶段当它已经有新数据要发送的时候,旧的数据将被覆盖。

 

2.2数据传输

在这部分的通信的所有数据位都从发射机传送到接收机,根据位变发射机设置数据线被发送。当数据线变稳定后,发射机拉低STB线来告诉接收机在数据线上的信息是有效的。当STB线的低电平状态被是识别后,接收器开始读DATA先的信息。然后接收机拉低ACK线来告诉发送机数据已经被读好了。当发送方检测到ACK变低后,将STB脚拉高,当接收方检测到STB变高后,将ACK拉高,完整的1bit的数据就结束了。

如果伺服处理器不能在(TTRF)传输16位数据,它拉高DATA线和STB线,并拉低ACK线进入通信阶段。

 

2.3通信应答 

总线上的尖峰可能会导致发射器和接收器出来的同步。此时接收器应该已经收到指定的位计数准确,如果接收方的位计数器不等于这个指定的计数时,接收器清除数据线,否则此线保持高,在此之后,接收器清除STB线。这意味着对于发射机,该比较结果是在DATA线上有效。发射器读取数据线,然后设置ACK线高。这意味着为接收器的数据线是由发送器读取。当接收器识别到的ACK线为高时,它设置两者的DATA和STB线高。现在,所有的通信都完成,在DSA-总线再次空闲。如果通信没有发生错误,变送器应重复(仅一次)进行最后一次通信开始同步阶段

如果接收方不在范围内TCOM通信应答阶段作出适当的反应,伺服处理器(=变送器)将此解释为一个通信错误,并设置高的所有行。

 

在使用该通讯协议的时候,需要注意一下几点: 

1.在总线空闲的时候,用户处理器和伺服处理器都处于读数据的状态。当某一方需要发送数据的时候,再把它设置为写状态。

2.在同步或是数据传输的阶段,如果超时没有接到相应的应答,发送方应将状态转为读状态。主要是为了处理双方同时需要传输数据

3.DSA总线是一个异步,双向的,内部设计用于在一组两个微处理器之间的通信总线。
4.每传输一个比特位都需要再同步。且每次只能传输一个比特位。

 

 

转载于:https://www.cnblogs.com/WenLee/p/4019495.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/410387.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

火星人谚语系列之六:一次真实应用

总目录:之一,之二,之三,之四,之五,之六,之七,之八这是2011年7月的一次QQ群对话记录,做了匿名化处理,并重新调整了顺序,以便于阅读。对话的开始&am…

[html] 怎样禁用页面中的右键、打印、另存为、复制等功能?

[html] 怎样禁用页面中的右键、打印、另存为、复制等功能&#xff1f; <body oncontextmenuself.event.returnValuefalse onselectstart"return false">个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。…

ubuntu 启动图形界面命令_Windows 10 远程连接 Ubuntu 18.04 Server图形界面

目录 0. 环境信息和说明Ubuntu 18.04上安装xrdp远程ubuntu-desktop桌面服务Ubuntu 18.04上安装xrdp远程Xfce桌面服务Ubuntu 18.04上安装vnc远程Xfce桌面服务0.环境信息和说明-----------Ubuntu版本# cat /etc/os-releaseNAME"Ubuntu"VERSION"18.04.3 LTS (Bioni…

动态条形图(RunBargraph)用于数据展示

最近公司项目需要做各种图标展示&#xff0c;用了Echarts的条形图和柱状图&#xff0c;但是老板还是觉得不够生动&#xff0c;看来时候祭出大招了 由此衍生在空余时间写下了此篇博客&#xff0c;首先还是看效果图: 注意&#xff0c;此图中数据并非真实数据&#xff0c;只是为…

找到的程序集清单定义与程序集引用不匹配

使用 MVCPager 做分页&#xff0c;调试时出现如上错误&#xff0c;甚是郁闷。自己使用的版本是 MvcPager1.5Mvc2.dll 使用 ILDASM 查看 manifest 也都没问题&#xff0c;真是奇了怪了。抱着试试看的态度把 MvcPager1.5Mvc2.dll 重命名成 MvcPager.dll 尼玛的居然成功了&#xf…

面试准备-Shell脚本

一、Shell脚本是什么&#xff1f; 一个Shell脚本是一个文本文件&#xff0c;包含一个或多个命令。我们经常需要使用多个命令来完成一项任务&#xff0c;我们可以添加这些所有命令在一个文本文件(Shell脚本)来完成这些日常工作任务。 二、运行 Shell 脚本有两种方法&#xff1a;…

网页实现凭证金额分割线_一位整理过5000个网页书签的大神分享:实用的书签管理方案...

我们在日常使用使用搜索引擎的过程中&#xff0c;会逐渐累积各式各样丰富的网站。而当我们保存的书签过多的时候&#xff0c;如果没有一套实用的管理方案&#xff0c;就会造成书签混乱&#xff0c;加大我们搜索的难度。所以&#xff0c;下面跟大家分享一套实用的书签管理方案&a…

[html] 实现一个页面锁屏的功能

[html] 实现一个页面锁屏的功能 <!DOCTYPE html> <html> <head> <title>Ctrll监控锁屏</title> </head> <body> <div id"message_div"></div> <script type"text/javascript" languageJavaScri…

【Python基础】11_Python中的字符串

1.字符串的定义 可以使用""双引号&#xff0c;也可以使用单引号定义字符串&#xff0c;一般使用双引号定义。 2.字符串的操作 判断类型&#xff1a; 查找和替换 大小写切换&#xff1a; 文本对齐 注&#xff1a;string.center(weight,str) 以str填充对齐&#xff0c;…

C# 淘宝商品微信返利助手开发-(一)返利助手原理

系列教程一目录&#xff1a;返利助手原理 系列教程二目录&#xff1a;返利助手开放文档以及帐号申请地址 系列教程三目录&#xff1a;返利助手开发&#xff08;1&#xff09;API介绍 系列教程四目录&#xff1a;返利助手开发&#xff08;2&#xff09;淘宝分享的内容如何只取…

利用分区优化SQL

一个哥们QQ问我&#xff0c;这个SQL怎么优化&#xff0c;它要跑160秒 SQL> explain plan for select a.so_region_code so_region_code,2 a.so_county_code so_county_code,3 a.so_org_id so_org_id,4 d.org_type_id org_…

c++ class struct同名_相对于C语言,C++对struct做了非常多的扩充,功能更全面了

我有相当长的一段时间(数月)没有更新文章了。并不是我放弃了写技术文章&#xff0c;而是因为这段时间&#xff0c;我把精力主要放在了图像智能算法的学习上了。去年12月时&#xff0c;我对图像智能算法还懵懵懂懂&#xff0c;做着 Linux 嵌入式应用程序开发&#xff0c;现在我已…

Burp破解安装(1.7和2.0)

依赖 由于Brup是使用java语言开发的&#xff0c;因此我们需要本地有jdk8的环境&#xff0c;教程自己百度或者<a href"https://www.runoob.com/java/java-environment-setup.html">https://www.runoob.com/java/java-environment-setup.html</a>&#xff…

[html] 请问60*80的canvas占多少内存?你是怎么计算的?

[html] 请问60*80的canvas占多少内存&#xff1f;你是怎么计算的&#xff1f; 一个像素为1byte&#xff0c;通过getImageData方法可以得到canvas的二进制流个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起…

C# ASP.NET MVC 微信和支付宝H5支付开发及Demo

微信和支付宝H5支付 最近开发任务遇到了一个要在手机浏览器里面调起微信和支付宝去支付的开发需求&#xff0c;以前都是做的扫码支付或者JSAPI都是在软件内部支付的&#xff0c;没遇到过在自己浏览器内唤醒微信或者支付宝的支付这种开发在开发的过程中遇到了许多问题和坑点这里…

dbnetlib sqlserver不存在或拒绝访问_SQL Server数据库损坏和修复

常见错误解读823错误错误信息是&#xff1a;“在文件%ls中、偏移量为%#016I64x的位置执行%S_MSG期间&#xff0c;操作系统已经向SQL Server返回了错误%ls。”“The operating systemreturned error %ls to SQL Server during a %S_MSGat offset %#016I64x in file %ls.”例如&a…

vs2008使用技巧

在做 asp.net 程序时发布站点如果报错&#xff0c;但是之前编译没有问题的话就要查看一下发布时的错误信息。查看信息是在 视图—>输出 。 &#xff08;我自己在实际的开发时遇到过&#xff0c;自己在文件夹里将一个图片删除掉了&#xff0c;所以导致在项目中无法找到这个图…

[html] 精确获取页面元素位置的方式有哪些?

[html] 精确获取页面元素位置的方式有哪些&#xff1f; let btn document.querySelector(#ele) let {top, left} getComputedStyle(btn) console.log(top:, top, left:, left)个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一…

2019.7.29学习整理python

2019.7.29学习整理python 1.变量 1.1什么是变量&#xff1f; 是变化的量。描述变化的世间万物的状态 1.2变量的组成 变量名&#xff1a;变量名用来引用变量值&#xff0c;但凡需要用变量值&#xff0c;都需要通过变量名。赋值符号&#xff1a;赋值变量值&#xff1a;存放数据&a…

C# ASP.NET MVC 阿里云短信验证码Demo

相信大家在开发过程中又很多使用到验证码验证的功能&#xff0c;今天将验证码的验证整理一下写了一个Demo 通过本篇后你能学习到: 阿里云短信服务Drapper连接SQL Server进行增改操作JS前端倒计时 完成后效果如下: (一)首先我们要使用短信我们先注册短信服务所需的内容 1.首先…