最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

USB3_0头包信息中CRC_16的Verilog实现

IT圈 admin 38浏览 0评论

2024年4月22日发(作者:藏红艳)

卷第

 

012

 

合肥工业大学学报

自然科学版

JOURNALOF

 

HEFEIUNIVERSITYOFTECHNOLOGY

    

Vol.35No.5

 

Ma2012

 

 

:/

.issn.1003Doi10.39695060.2012.05.015

USB3.0

头包信息中

CRC16

Verilo

实现

吴从中

 

尹夕振

 

 

()

合肥工业大学计算机与信息学院

安徽合肥

 

230009

 

文章基于

根据

通过

VRC

检错原理

SB3.0

协议规定的要求

erilo

RC16

实现了一种并行的

计算方法

设计模块在

给出了电路实现结构图

模块的接口信号

信号的物理意义以

uartus

中编译和仿真

并将实验结果与

及部分程序和仿真波形图

SB3.0

规范中给出的数据帧样本进行了比较

结果证明这种方

法能完成

满足数据传输准确性和时序要求

并能用于

USB3.0

头包信息中

CRC16

的计算

SB3.0

控制器包

的产生模块和包的检测模块

关键词

头包

控制器

USB3.0

协议

Verilo

语言

()

中图分类号

TP302.2

   

文献标识码

   

文章编号

10035060201205063204

---

VeriloimlementationofCRC6inUSB3.0headerinformationacket

  -

    

gpp

 

,,

WUConzhonINXizhenENGLe

 - 

 - 

 

gg

(,

SchoolofComuterandInformationefeiUniversitofTechnoloefei230009

China

       

pygy

 

:,

AbstractBasedontheCRCcheckrincileandaccordintothesecifiedreuirementsofUSB3.0a

           -

ppgpq

 

,,

arallelCRC16calculationmethodisimlementedbVerilolanuaeandthedesinreement

 -      

pyggggg

  

,,

iscomiledandsimulatedintheQuartus.Thecircuitstructureinterfacesinalsofmodulemodule

            

pg

,,

meaninsofsinalsandsimulationwaveformchartareandthehsicalartialroramsresented

           

ggpyppgp

resultsarecomaredwiththesamledataframesbUSB3.0secification.Theexerimentaliven

          

ppyppg

 

rovesresultthatthismethodcancomletetheCRC16calculationofUSB3.0

acketheaderinforma

        -    -

pp

tionandmeettheaccuracandtimeseuencereuirementsofthedatatransmissionsoitcanbeused

               

yqq

 

enerationackettheandcheckinmodulesoftheofUSB3.0controller.for

         

gpg

 

:;;

acketKewordsUSB3.0areementheadererilolanuaecontroller

 

pgggg

 

 

的串行总线技术

用于连接大量的外围设备

传输

过程中用

CRC

来确保和检测数据的正确性

了解决在新的

常用的

CSB3.0

标准协议下

RC

校验码的串行算法在

USB

数据传输中已不能满

随着新一足新协议的要求所带来的一系列问题

国内外许多公司都开始

SB3.0

标准的出现

着手于

必然会应用头

SB3.0

相关产品的研发

所以研究头包

CRC16

的计算

RC16

的实

--

现有着现实的意义

本文根据

USB3.0

协议中的

规定

研究了头包数据传输中

CRC

校验码的并行

算法及其

Verilo

实现过程

 

  

通用串行总线

是一种标准的连接接

USB

[]

/,

是目前

SB3.0

传输数据速率达

5Gbs

[]

与传统串口

1USB2.0

版本的

10

15200bs

 

的速度相比

是其

40000

多倍

USB3.0

协议规定

 

各种头包的传输需要

CRC

来保证头包信息传输

[]

的正确性

循环冗余校验码

是一种常用

RC

的检测错误码

具有很强的检错能力

且编码器和

错误检测电路都比较容易实现

是一种比较适合

高速串行传输的编码方法

USB

是一种高速

  

收稿日期

修回日期

2011102120111114

----

基金项目

中央高校基本科研业务费专项资金资助项目

2011HGZL0001

作者简介

吴从中

安徽安庆人

合肥工业大学副教授

硕士生导师

.1965-

 

期吴从中

USB3.0

头包信息中

CRC16

Verilo

实现

633

 

CRC

基本思想及头包结构

1.1

 

CRC

基本思想

是数据通信领域中最

CRC

即循环冗余校验

常用的一种差错校验码

其特征是信息字段和校

验字码字段的长度可任意选定

利用

CRC

进行

在发送端根据要传送的

位二进制码序列

检测

以一定的规则产生一个校验用的

位监督码

(,

附在原始信息后面

构成一个新的

+CRC

位二进制码序列

[]

在接收端

根据信息码和

CRC

码之间所遵

路由选择

设备地址等相关信

USB3.0

包的类型

在主机和设备通信的过程中

为保证信息传输

的正确性

并且要满足

本文采

SB3.0

传输速度

[]

能满足准确性和时序用并行的

CRC

计算方法

要求

 

CRC16

电路实现

USB3.0

协议中规定

CRC16

的生成多项式

16123

6′h100B

+1

块在被初始化后余数寄存器里面的数必须是

并且在开始每个字节计算的顺序为

16′hFFFF

字节

根据协议要求设计实现电路

如图

所示

循的规则进行检验

以确定传送中数据是否出错

与完整

1.2

 

USB3.0

头包结构

设备和主机之间通过

USB3.0

通信系统中

CRC16

保证数据传输的正确性

主机和设备通

信的最小单位是包

其中头包属于包的一部分

CRC16

就是用来保证头包信息的正确性

头包

长度是

包括

14

个字节

个字节的头信息和

头包结构如图

所示

个字节的

CRC16

 

CRC16

码的并行实现框图

串行数据首先需要进行串并转换

将转换后

的数据放寄存器中

将并行数据通过

CRC16

运算电路加入控制信号

控制信号决行运算电路

定并行运算电路的开和关

因为头包结构含有

每次处理都是以字节为单位来处理

12

个字节

后面字节的运算结果与前面计算的结果具有相关

所以需要一个余数寄存器将每次运算的

CRC16

结果保存起来

最后根据

USB3.0

协议

故在电路的输出端设置规定结果需要反向输出

了一个反相器

 

头包结构

主机和设备通信中的链路管理包

LMP

、、

务包

数据包

同步时间戳包

TP

DP

ITP

都需要对其头包信息的

RC16

进行计算

其结构如图

所示

ERDY

事务包为例

 

CRC16

算法模块的

Verilo

实现

3.1

 

CRC16

模块的端口定义

模块的接口信号见表

所列

 

接口信号

  

u30dcclk

 

u30dcrstn

 

crc16

sk

 

crc16

en

 

crc16

os

 

[]

crc16

dat31

[]

crc16

rsd15

方向

in

ut

in

ut

inut

in

ut

in

ut

 

inut

   

时钟信号

上升沿触发

低电平复位

保持信号

输入数据有效

CRC

输出信号采样使能

输入数据

 

ERDY

事务包结构

oututRC16

输出结果

 

链路管理包

事务包

数据包的头包和同步时

间戳包的结构与

都是

RDY

事务包的结构一样

实质上就是计算

DWO2

个字节组成

RD0

DWORD1

DWORD2

CRC

头包中包括

6-8

该模块采用同步设计

低电平信号异步

复位

crc16n

c16krcs

都属于

CRC

16

的控制信号

634

3.2

 

算法实现过程

自然科学版

   

合肥工业大学学报

35

 

3.2.1

 

循环冗余码

CRC16

的逻辑原理

循环冗余码

CRC16

的逻辑原理如图

图中以

为循环余数的

表示的中间结果

二进制补码

最后通过反相器得到

CRC16

的循

环冗余码

 

CRC16

时序控制图

低电平复位后

crc16sd

就等于

16′hFFFF

()

复位信号无效

如果

2rc16k

=1

余数寄存器

crc16sdrc16sd

=c

()

如果

表示

3rc16kcrc16n=1

=0

此时输入数据有效

如果

crc16s=1

rc16

,!

,!

rsd

rc16al

rc16

cal

[],!

[,!

[,!

crc16al2rc16al3

rc16al4

[],!

[,![,!

crc16al5rc16al6

crc16al7

 

CRC16

逻辑原理图

,!

,!

ccrc16al

rc16al

rc16al

[,!

,!,!

10

rc16

cal

11

crc16al

12

,!

ccrc16al

13

crc16al

14

rc16al

[]})。

15

()

如果

c4rc16s=0

rc16sd

crc16al

其他情况下

,(

5crc16sd

=16′hFFFF

3.2.2

 

循环冗余码

CRC16

的计算方法

对应的

DC0

C150

15

型触发器的状态

R15

CRC16

的输入字节为

D0

D7

可以得到如下双字根据

CRC16

的计算规则

CRC16

并联计算的逻辑表达式

);

C0=

R15=

!(

R7^R11^R15^D0^D4

);

C1=

R14=

!(

R6^R10^R14^D1^D5

);

C2=

R13=

!(

R5^R9^R13^D2^D6

);

C3=

R12=

!(

R4^R8^R12^D3^D7

C4=

R11=

R3

);

C5=

R10=

!(

R2^R15^D0

);

C6=

R9=

!(

R1^R14^D1

);

C7=

R8=

!(

R0^R15^D0^R13^D2

);

C8=

R7=

!(

R15^D0^R14^D1^R12^D3

);

C9=

R6=

!(

R14^D1^R13^D2^R11^R15^D0^D4

);

C10=

R5=

!(

R13^D2^R12^D3^R10^R14^D1^D5

C11=

R4=

!(

R12^D3^R11^R15^D0^D4^R9^

);

R13^D2^D6

C12=

R3=

!(

R11^R15^D0^D4^R10^R14^D1^D5^R8^

);

R12^D3^D7

);

C13=

R2=

!(

R10^R14^D1^D5^R9^R13^D2^D6

);

C14=

R1=

!(

R9^R13^D2^D6^R8^R12^D3^D7

 

测试方法及仿真结果

根据

USB3.0sec

协议中的数据帧校验样本

所给出的测试样本

对设计进行测试

如图

所示

ERDY

事务包中有

个双字

个双字为

DWORD0=16′h0200004

个双字为

DWORD1=16′h00010003

个双字为

DWORD2=16′h00000000

电路复位之后

在时钟的下降沿依次输入

每个数据保持

DWORD0

DWORD1

DWORD2

个时钟

信号

crc16n

DWORD0

输入时刻

置高电平

保持到

DWO

在时钟上升

RD2

无效时

沿拉为低电平

表示输入的数据

rc16n

置高

位需要计算

CRC16

的数据

crc16s

保持

个时钟

DWORD2

输入时候置高

电路在时钟上升沿对

crc16s

为高电平时

输出

CCRC16

运算结果进行采样

RC16

的运算

--

结果

crc16sduartus

Waveform

据时序输入数据帧校验样本数据

其仿真结果如

所示

)。

C15=

R0=

!(

R8^R12^D3^D7

3.2.3

 

循环冗余码时序控制

实现时序控制如图

所示

 

期吴从中

USB3.0

头包信息中

CRC16

Verilo

实现

635

 

数据帧校验样本

 

Quartus

中仿真结果

crc16sd

的值为

16′hFFFF

  

电路复位后

输入数据

32′h02000004

32′h00010003

的计算

结果分别为

结果被存入

6′h1FD0

16′h8F4E

余数寄存器中

输出结果在

crc16s

为高电平的时候进行

最终输出结果为

即为头包输出采样

6′h8F4E

CRC16

的计算结果

其结果与

USB3.0

协议中

的样本数据结果完全一致

说明该设计方法是有

符合

效的

SB3.0

协议的计算要求

 

 

 

[,

niversalserialbus3.0secificationRevision1.0

2008

 

    

[]

S.

[],

2niversalserialbus2.0secificationRevision2.0

2000

 

    

[]

S.

[]]

3RC

算法分析与实现

J.

微计算机信息

 

马吉明

字节型

():

2006

22332-3.

[]]

4J.

微电子学与

 

蒋安平

循环冗余校验码的硬件并行实现

():

计算机

2007

242107-109.

[]

陈晓莉

基于

U5SB

CRC

算法及其

VHDL

实现

 

张俊涛

[]():

J.

微计算机信息

2007

235289-290.

[]

6eriloHDL

设计技术

 

夏宇闻

复杂数字电路与系统的

 

北京

北京航空航天大学出版社

2002

26-45.

[]

面向

U7SB

应用的

CRC

编解码电路的设计与实现

 

张德云

[]:

自然科学版

2J.

合肥工业大学学报

005

28

292-295.

[]

 

 

基于数据可靠性的

U8SB

接口硬件

 

 

设计及实现

自然科学版

J.

合肥工业大学学报

2007

():

308999-1002.

 

结束语

CRC16

实现方法完全能满足

USB3.0

能够用于设计包

CRC16

的正确性和时序要求

同时也能应用在

USB3.0

控制器中包组建模块

搭建测试平台时包的检测模块中

计算主机接收

到的头包文件的

然后与头包中的

CRC16RC

--

如果一致

说明头包文件传输正确

否则

16

比较

错误

虽然该设计方法面向

USB3.0

头包中的

通过改变端口信号的控制性能

CRC16

计算

能用于其他方面的设计

责任编辑

 

 

2024年4月22日发(作者:藏红艳)

卷第

 

012

 

合肥工业大学学报

自然科学版

JOURNALOF

 

HEFEIUNIVERSITYOFTECHNOLOGY

    

Vol.35No.5

 

Ma2012

 

 

:/

.issn.1003Doi10.39695060.2012.05.015

USB3.0

头包信息中

CRC16

Verilo

实现

吴从中

 

尹夕振

 

 

()

合肥工业大学计算机与信息学院

安徽合肥

 

230009

 

文章基于

根据

通过

VRC

检错原理

SB3.0

协议规定的要求

erilo

RC16

实现了一种并行的

计算方法

设计模块在

给出了电路实现结构图

模块的接口信号

信号的物理意义以

uartus

中编译和仿真

并将实验结果与

及部分程序和仿真波形图

SB3.0

规范中给出的数据帧样本进行了比较

结果证明这种方

法能完成

满足数据传输准确性和时序要求

并能用于

USB3.0

头包信息中

CRC16

的计算

SB3.0

控制器包

的产生模块和包的检测模块

关键词

头包

控制器

USB3.0

协议

Verilo

语言

()

中图分类号

TP302.2

   

文献标识码

   

文章编号

10035060201205063204

---

VeriloimlementationofCRC6inUSB3.0headerinformationacket

  -

    

gpp

 

,,

WUConzhonINXizhenENGLe

 - 

 - 

 

gg

(,

SchoolofComuterandInformationefeiUniversitofTechnoloefei230009

China

       

pygy

 

:,

AbstractBasedontheCRCcheckrincileandaccordintothesecifiedreuirementsofUSB3.0a

           -

ppgpq

 

,,

arallelCRC16calculationmethodisimlementedbVerilolanuaeandthedesinreement

 -      

pyggggg

  

,,

iscomiledandsimulatedintheQuartus.Thecircuitstructureinterfacesinalsofmodulemodule

            

pg

,,

meaninsofsinalsandsimulationwaveformchartareandthehsicalartialroramsresented

           

ggpyppgp

resultsarecomaredwiththesamledataframesbUSB3.0secification.Theexerimentaliven

          

ppyppg

 

rovesresultthatthismethodcancomletetheCRC16calculationofUSB3.0

acketheaderinforma

        -    -

pp

tionandmeettheaccuracandtimeseuencereuirementsofthedatatransmissionsoitcanbeused

               

yqq

 

enerationackettheandcheckinmodulesoftheofUSB3.0controller.for

         

gpg

 

:;;

acketKewordsUSB3.0areementheadererilolanuaecontroller

 

pgggg

 

 

的串行总线技术

用于连接大量的外围设备

传输

过程中用

CRC

来确保和检测数据的正确性

了解决在新的

常用的

CSB3.0

标准协议下

RC

校验码的串行算法在

USB

数据传输中已不能满

随着新一足新协议的要求所带来的一系列问题

国内外许多公司都开始

SB3.0

标准的出现

着手于

必然会应用头

SB3.0

相关产品的研发

所以研究头包

CRC16

的计算

RC16

的实

--

现有着现实的意义

本文根据

USB3.0

协议中的

规定

研究了头包数据传输中

CRC

校验码的并行

算法及其

Verilo

实现过程

 

  

通用串行总线

是一种标准的连接接

USB

[]

/,

是目前

SB3.0

传输数据速率达

5Gbs

[]

与传统串口

1USB2.0

版本的

10

15200bs

 

的速度相比

是其

40000

多倍

USB3.0

协议规定

 

各种头包的传输需要

CRC

来保证头包信息传输

[]

的正确性

循环冗余校验码

是一种常用

RC

的检测错误码

具有很强的检错能力

且编码器和

错误检测电路都比较容易实现

是一种比较适合

高速串行传输的编码方法

USB

是一种高速

  

收稿日期

修回日期

2011102120111114

----

基金项目

中央高校基本科研业务费专项资金资助项目

2011HGZL0001

作者简介

吴从中

安徽安庆人

合肥工业大学副教授

硕士生导师

.1965-

 

期吴从中

USB3.0

头包信息中

CRC16

Verilo

实现

633

 

CRC

基本思想及头包结构

1.1

 

CRC

基本思想

是数据通信领域中最

CRC

即循环冗余校验

常用的一种差错校验码

其特征是信息字段和校

验字码字段的长度可任意选定

利用

CRC

进行

在发送端根据要传送的

位二进制码序列

检测

以一定的规则产生一个校验用的

位监督码

(,

附在原始信息后面

构成一个新的

+CRC

位二进制码序列

[]

在接收端

根据信息码和

CRC

码之间所遵

路由选择

设备地址等相关信

USB3.0

包的类型

在主机和设备通信的过程中

为保证信息传输

的正确性

并且要满足

本文采

SB3.0

传输速度

[]

能满足准确性和时序用并行的

CRC

计算方法

要求

 

CRC16

电路实现

USB3.0

协议中规定

CRC16

的生成多项式

16123

6′h100B

+1

块在被初始化后余数寄存器里面的数必须是

并且在开始每个字节计算的顺序为

16′hFFFF

字节

根据协议要求设计实现电路

如图

所示

循的规则进行检验

以确定传送中数据是否出错

与完整

1.2

 

USB3.0

头包结构

设备和主机之间通过

USB3.0

通信系统中

CRC16

保证数据传输的正确性

主机和设备通

信的最小单位是包

其中头包属于包的一部分

CRC16

就是用来保证头包信息的正确性

头包

长度是

包括

14

个字节

个字节的头信息和

头包结构如图

所示

个字节的

CRC16

 

CRC16

码的并行实现框图

串行数据首先需要进行串并转换

将转换后

的数据放寄存器中

将并行数据通过

CRC16

运算电路加入控制信号

控制信号决行运算电路

定并行运算电路的开和关

因为头包结构含有

每次处理都是以字节为单位来处理

12

个字节

后面字节的运算结果与前面计算的结果具有相关

所以需要一个余数寄存器将每次运算的

CRC16

结果保存起来

最后根据

USB3.0

协议

故在电路的输出端设置规定结果需要反向输出

了一个反相器

 

头包结构

主机和设备通信中的链路管理包

LMP

、、

务包

数据包

同步时间戳包

TP

DP

ITP

都需要对其头包信息的

RC16

进行计算

其结构如图

所示

ERDY

事务包为例

 

CRC16

算法模块的

Verilo

实现

3.1

 

CRC16

模块的端口定义

模块的接口信号见表

所列

 

接口信号

  

u30dcclk

 

u30dcrstn

 

crc16

sk

 

crc16

en

 

crc16

os

 

[]

crc16

dat31

[]

crc16

rsd15

方向

in

ut

in

ut

inut

in

ut

in

ut

 

inut

   

时钟信号

上升沿触发

低电平复位

保持信号

输入数据有效

CRC

输出信号采样使能

输入数据

 

ERDY

事务包结构

oututRC16

输出结果

 

链路管理包

事务包

数据包的头包和同步时

间戳包的结构与

都是

RDY

事务包的结构一样

实质上就是计算

DWO2

个字节组成

RD0

DWORD1

DWORD2

CRC

头包中包括

6-8

该模块采用同步设计

低电平信号异步

复位

crc16n

c16krcs

都属于

CRC

16

的控制信号

634

3.2

 

算法实现过程

自然科学版

   

合肥工业大学学报

35

 

3.2.1

 

循环冗余码

CRC16

的逻辑原理

循环冗余码

CRC16

的逻辑原理如图

图中以

为循环余数的

表示的中间结果

二进制补码

最后通过反相器得到

CRC16

的循

环冗余码

 

CRC16

时序控制图

低电平复位后

crc16sd

就等于

16′hFFFF

()

复位信号无效

如果

2rc16k

=1

余数寄存器

crc16sdrc16sd

=c

()

如果

表示

3rc16kcrc16n=1

=0

此时输入数据有效

如果

crc16s=1

rc16

,!

,!

rsd

rc16al

rc16

cal

[],!

[,!

[,!

crc16al2rc16al3

rc16al4

[],!

[,![,!

crc16al5rc16al6

crc16al7

 

CRC16

逻辑原理图

,!

,!

ccrc16al

rc16al

rc16al

[,!

,!,!

10

rc16

cal

11

crc16al

12

,!

ccrc16al

13

crc16al

14

rc16al

[]})。

15

()

如果

c4rc16s=0

rc16sd

crc16al

其他情况下

,(

5crc16sd

=16′hFFFF

3.2.2

 

循环冗余码

CRC16

的计算方法

对应的

DC0

C150

15

型触发器的状态

R15

CRC16

的输入字节为

D0

D7

可以得到如下双字根据

CRC16

的计算规则

CRC16

并联计算的逻辑表达式

);

C0=

R15=

!(

R7^R11^R15^D0^D4

);

C1=

R14=

!(

R6^R10^R14^D1^D5

);

C2=

R13=

!(

R5^R9^R13^D2^D6

);

C3=

R12=

!(

R4^R8^R12^D3^D7

C4=

R11=

R3

);

C5=

R10=

!(

R2^R15^D0

);

C6=

R9=

!(

R1^R14^D1

);

C7=

R8=

!(

R0^R15^D0^R13^D2

);

C8=

R7=

!(

R15^D0^R14^D1^R12^D3

);

C9=

R6=

!(

R14^D1^R13^D2^R11^R15^D0^D4

);

C10=

R5=

!(

R13^D2^R12^D3^R10^R14^D1^D5

C11=

R4=

!(

R12^D3^R11^R15^D0^D4^R9^

);

R13^D2^D6

C12=

R3=

!(

R11^R15^D0^D4^R10^R14^D1^D5^R8^

);

R12^D3^D7

);

C13=

R2=

!(

R10^R14^D1^D5^R9^R13^D2^D6

);

C14=

R1=

!(

R9^R13^D2^D6^R8^R12^D3^D7

 

测试方法及仿真结果

根据

USB3.0sec

协议中的数据帧校验样本

所给出的测试样本

对设计进行测试

如图

所示

ERDY

事务包中有

个双字

个双字为

DWORD0=16′h0200004

个双字为

DWORD1=16′h00010003

个双字为

DWORD2=16′h00000000

电路复位之后

在时钟的下降沿依次输入

每个数据保持

DWORD0

DWORD1

DWORD2

个时钟

信号

crc16n

DWORD0

输入时刻

置高电平

保持到

DWO

在时钟上升

RD2

无效时

沿拉为低电平

表示输入的数据

rc16n

置高

位需要计算

CRC16

的数据

crc16s

保持

个时钟

DWORD2

输入时候置高

电路在时钟上升沿对

crc16s

为高电平时

输出

CCRC16

运算结果进行采样

RC16

的运算

--

结果

crc16sduartus

Waveform

据时序输入数据帧校验样本数据

其仿真结果如

所示

)。

C15=

R0=

!(

R8^R12^D3^D7

3.2.3

 

循环冗余码时序控制

实现时序控制如图

所示

 

期吴从中

USB3.0

头包信息中

CRC16

Verilo

实现

635

 

数据帧校验样本

 

Quartus

中仿真结果

crc16sd

的值为

16′hFFFF

  

电路复位后

输入数据

32′h02000004

32′h00010003

的计算

结果分别为

结果被存入

6′h1FD0

16′h8F4E

余数寄存器中

输出结果在

crc16s

为高电平的时候进行

最终输出结果为

即为头包输出采样

6′h8F4E

CRC16

的计算结果

其结果与

USB3.0

协议中

的样本数据结果完全一致

说明该设计方法是有

符合

效的

SB3.0

协议的计算要求

 

 

 

[,

niversalserialbus3.0secificationRevision1.0

2008

 

    

[]

S.

[],

2niversalserialbus2.0secificationRevision2.0

2000

 

    

[]

S.

[]]

3RC

算法分析与实现

J.

微计算机信息

 

马吉明

字节型

():

2006

22332-3.

[]]

4J.

微电子学与

 

蒋安平

循环冗余校验码的硬件并行实现

():

计算机

2007

242107-109.

[]

陈晓莉

基于

U5SB

CRC

算法及其

VHDL

实现

 

张俊涛

[]():

J.

微计算机信息

2007

235289-290.

[]

6eriloHDL

设计技术

 

夏宇闻

复杂数字电路与系统的

 

北京

北京航空航天大学出版社

2002

26-45.

[]

面向

U7SB

应用的

CRC

编解码电路的设计与实现

 

张德云

[]:

自然科学版

2J.

合肥工业大学学报

005

28

292-295.

[]

 

 

基于数据可靠性的

U8SB

接口硬件

 

 

设计及实现

自然科学版

J.

合肥工业大学学报

2007

():

308999-1002.

 

结束语

CRC16

实现方法完全能满足

USB3.0

能够用于设计包

CRC16

的正确性和时序要求

同时也能应用在

USB3.0

控制器中包组建模块

搭建测试平台时包的检测模块中

计算主机接收

到的头包文件的

然后与头包中的

CRC16RC

--

如果一致

说明头包文件传输正确

否则

16

比较

错误

虽然该设计方法面向

USB3.0

头包中的

通过改变端口信号的控制性能

CRC16

计算

能用于其他方面的设计

责任编辑

 

 

发布评论

评论列表 (0)

  1. 暂无评论