新闻中心

EEPW首页>EDA/PCB>设计应用> 基于FPGA的异步串行总线设计

基于FPGA的异步串行总线设计

作者: 时间:2012-05-02 来源:网络 收藏

c.JPG



2总线传输协议
根据系统对上下位机指令响应时间要求,自定义了总线的传输速率和传输协议。因为本协议为传输协议,所以在每包数据的前面增加了1.5bit的起始位,在每包数据的后面增加了1bit的数据停止位作为一包数据的开始标志和结束标志。为提高数据传输的准确性,在发送起始位之后和信息数据结束之前分别增加了8bit题头和题尾,用于数据接收方信息同步和数据识别;如果接收方收到的题头或者题尾任意一个有误,就判本包数据传输有误。并且在本包数据末端增加了CRC-8校验码,对发送的整个串行码流进行校验。具体传输协议如下:
(1)串行传输格式:
起始位→题头→命令字→信息→题尾→CRC8→停止位;
(2)传输速率:40MHz;
(3)起始位:0(1.5bit)
(4)题头:10100101;
(5)命令字:B7 B6 B5 B4 B3 B2 B1 B0:B0为读写控制位(0读,1写);B1为数据LSB和MSB传输标志位(0为LSB先出,1为MSB先出);B5B4 B3B2为访问地址(0000自检状态寄存器,0001控制状态寄存器,1110错误重发请求标志寄存器,1111装置ID软件版本寄存器,其它根据实际需求任意扩展定义);B7B6为传输数据长度(00为0个8bit数据长度,01为1个8bit数据长度,10为2个8bit数据长度,11为3个8 bit数据长度)等。
(6)信息:长度为8bit的整数倍;
(7)题尾:01011010;
(8)CRC校验多项式:CRC8=X8+X7+X6+X4+X2+1;
(9)停止位:1(1bit);
(10)无数据时为高电平。读操作时后面的数据长度为0;不够8bit的,空位默认为“0”。



评论


相关推荐

技术专区

关闭