CN102739393B - 基于apb总线的硬件加密uart装置 - Google Patents

基于apb总线的硬件加密uart装置 Download PDF

Info

Publication number
CN102739393B
CN102739393B CN201210167383.2A CN201210167383A CN102739393B CN 102739393 B CN102739393 B CN 102739393B CN 201210167383 A CN201210167383 A CN 201210167383A CN 102739393 B CN102739393 B CN 102739393B
Authority
CN
China
Prior art keywords
module
data
uart
bus interface
apb
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210167383.2A
Other languages
English (en)
Other versions
CN102739393A (zh
Inventor
严晓浪
高锦炜
孟建熠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou C Sky Microsystems Co Ltd
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201210167383.2A priority Critical patent/CN102739393B/zh
Publication of CN102739393A publication Critical patent/CN102739393A/zh
Application granted granted Critical
Publication of CN102739393B publication Critical patent/CN102739393B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

一种基于APB总线的硬件加密UART装置,包括:APB总线接口模块,包括一根中断申请信号以及AMBAAPB总线定义的所有信号线,负责与APB主机通信;UART总线接口模块,包括用以接收RXD与发送TXD两根信号线,支持与其他UART主机通信;硬件加密模块,用以接收来自APB总线接口模块的明文数据与加密密钥,明文宽度为8位,根据密钥与明文输出8位加密数据;解密模块,根据8位加密数据与APB总线接口模块送来的密钥生成8位明文数据;硬件加密模块与解密模块在APB总线接口模块与UART总线接口模块之间。本发明硬件资源简单、具有良好的安全性和易用性。

Description

基于APB总线的硬件加密UART装置
技术领域
本发明涉及嵌入式系统安全通信领域,具体来说是一个挂载在APB总线上的带有硬件加密功能的UART装置。
背景技术
UART是目前广泛使用的一种通用串行数据接口,应用范围极其广泛,例如计算机外设、工业控制等场合。UART的作用是,它既可以接收外围设备的串行数据输入,并转换成计算机内部所需的并行数据,也可以把计算机内部的并行数据转换成串行数据,并发送给外围设备。对于串行数据传输速率要求不高的设备,使用UART进行串行通信是一种性价比较高的设计方案。
传统普通UART一般由总线接口部分、控制部分、接收器、发送器和波特率发生器组成,其中接收器和发送器部分可以是双缓冲结构,总线接口部分可以为APB总线从机结构,例如附图1所示结构。
在一些嵌入式系统通信领域,如信息安全卡,军事领域,通信安全非常重要,传统UART只能明文传输数据,不能达到安全通信的使用要求。对此有一种解决方法是先用软件加密数据,然后再将加密后的数据通过UART发送,接收方接收数据后也需要用相应软件对数据进行解密得到明文,这就对软件编程提出了要求,加大了软件开发难度。
发明内容
为了克服已有UART装置的安全性较差、卡发难度较大、实用性较差的不足,本发明提供一种硬件资源简单、具有良好的安全性和易用性的基于APB总线的硬件加密UART装置。
本发明解决其技术问题所采用的技术方案是:
一种基于APB总线的硬件加密UART装置,所述硬件加密UART装置包括:
APB总线接口模块,包括一根中断申请信号以及AMBAAPB总线定义的所有信号线,负责与APB主机通信,将APB总线上传来的要发送的明文数据交给硬件加密模块,负责将硬件解密模块传来的接收到的数据打包传到APB总线上。
UART总线接口模块,包括用以接收RXD与发送TXD两根信号线,支持与其他UART主机通信;每帧数据有起始位、5到8位的数据位和可选择的奇偶校验位以及1~2位的停止位,其中,起始位为低电平,停止位为高电平;
硬件加密模块,用以接收来自APB总线接口模块的明文数据与加密密钥,明文宽度为8位,根据密钥与明文输出8位加密数据;
解密模块,根据8位加密数据与APB总线接口模块送来的密钥生成8位明文数据;
硬件加密模块与解密模块在APB总线接口模块与UART总线接口模块之间。
进一步,所述加密模块配合一个8位2选1多路选择器,如果使能加密模块,则由控制信号控制选通发送密文数据到UART总线接口模,如果不使能加密模块,则密钥无效,由控制信号控制选通发送明文数据到UART总线接口模块;
所述解密模块配合一个8位2选1多路选择器,如果使能解密模块,则由控制信号控制选通解密后数据到APB总线接口模块,如果不使能解密模,则密钥无效,由控制信号选通直接接收到的数据到APB总线接口模块。
本发明的有益效果主要表现在:硬件资源简单、具有良好的安全性和易用性。
附图说明
图1为基于APB总线的传统UART装置模块图。
图2为基于APB总线的硬件加密UART装置的模块图。
图3为APB总线写数据时序图
图4为APB总线读数据时序图
图5为UART传输数据帧格式的示意图。
图6为UART采样接收数据的时序图。
图7为一种硬件加密模块设计的原理图。
图8为一种硬件解密模块设计的原理图。
具体实施方式
下面结合附图对本发明作进一步描述。
参照图2~图8,一种基于APB总线的硬件加密UART装置,包含APB总线模块1,UART总线模块2,硬件加密模块3,硬件解密模块4,控制模块5,加密模块8位2选1多路选择器6,解密模块8位2选1多路选择器7。
APB总线接口模块1拥有一根中断申请信号以及AMBAAPB总线定义的所有信号线,负责与APB主机通信,将APB总线上传来的控制命令与要发送的明文数据交给UART控制模块5和硬件加密模块3,负责将控制模块5的状态信号与硬件解密模块4传来的接收到的数据打包传到APB总线上。
中断申请信号在没有中断请求时保持低电平,当发生中断请求时保持高电平。
下面结合图3、图4简要描述APB总线读写具体工作原理,具体可参见ARM公司AMBA总线规范。
空闲时选通信号(PSEL)与使能信号(PENABLE)均为低,数据(PDATA)与地址(PADDR)无效。
发生一次APB写操作时,如图3,在准备周期主机将数据(PDATA),地址(PADDR)准备好,同时置位选通信号(PSEL),在使能周期置位使能信号(PENABLE)。这些信号必须保持到使能周期末的上升沿,在此上升沿,数据将根据地址写入相应寄存器。
发生一次APB读操作时,如图4,在准备周期主机将地址(PADDR)准备好,同时置位选通信号(PSEL),在使能周期置位使能信号(PENABLE),同时APB接口模块根据地址将数据(PRDATA)准备好。这些信号必须保持到使能周期末的上升沿,在此上升沿,主机将读走数据。
UART总线接口模块2拥有接收RXD与发送TXD两根信号线,支持与其他UART主机通信。具体通信格式如图5所示,每帧数据有起始位、5到8位的数据位和可选择的奇偶校验位以及1~2位的停止位,其中起始位为低电平,停止位为高电平。
具体实现时可采用以下方案:
发送数据时,将由波特率发生器产生发送时钟,发送模块根据发送时钟,数据帧控制信息,将5-8位并行数据以上文所述通信格式从TXD发送数据线上串行发送出去。
接收数据时,由波特率发生器产生接收时钟,在接收数据线RXD监测到低电平起始位后,每16个接收时钟周期采样一次接收数据线RXD,如图6所示。完成数据位、奇偶校验位与停止位采样后将5-8位并行数据放到接收缓存中。
硬件加密模块3与解密模块4在APB总线接口模块1与UART总线接口模块2之间。
APB总线接口1将要发送的明文数据与加密密钥送到硬件加密模块3。明文宽度为8位,加密模块根据密钥与明文输出8位加密数据。加密模块配合一个8位2选1多路选择器6,如果使能加密模块3,则由控制信号控制选通发送密文数据到UART总线接口模2,如果不使能加密模块3,则密钥无效,由控制信号控制选通发送明文数据到UART总线接口模2。
当UART总线接口模块2接收到加密数据后将8位加密数据送到解密模块4,解密模块4根据8位加密数据与APB接口模块1送来的密钥生成8位明文数据,解密模块配合一个8位2选1多路选择器7。如果使能解密模块4,则由控制信号控制选通解密后数据到APB总线接口模块1,如果不使能解密模4,则密钥无效,由控制信号选通直接接收到的数据到APB总线接口模块1。
密钥宽度可以为32位,也可使用64位、128位、256位,下面进行加密解密模块3设计举例,该例子为硬件比特流加密法原理图,仅表示模块的可实现性,在具体实现时并不限于这一种方式。
附图7为8位数据其中1位的加密原理图。
当密钥为32位时n为4,4个SR寄存器初始化值为密钥中的4位(数据第1位对应密钥1-4位,数据第2位对应密钥5-8位,以此类推);
当密钥为64位时n为8,8个SR寄存器初始化值为密钥中的8位(数据第1位对应密钥1-8位,数据第2位对应密钥9-16位,以此类推);
当密钥为128位时n为16,16个SR寄存器初始化值为密钥中的16位(数据第1位对应密钥1-16位,数据第2位对应密钥17-32位,以此类推);
当密钥为256位时n为32,32个SR寄存器初始化值为密钥中的32位(数据第1位对应密钥1-32位,数据第2位对应密钥33-64位,以此类推);
加密时,输出密文Y=X+SR0,并写回SRn-1。,SRn-2=SRn-1+Y,其余SR0~SRn-3均为SRi-1=SRi(i取1至n-2)。8组该电路一起一个时钟周期完成一次一个8位数据的加密。
附图8为8位数据其中1位的解密原理图。
当密钥为32位时n为4,4个DSR寄存器初始化值为密钥中的4位(数据第1位对应密钥1-4位,数据第2位对应密钥5-8位,以此类推);
当密钥为64位时n为8,8个DSR寄存器初始化值为密钥中的8位(数据第1位对应密钥1-8位,数据第2位对应密钥9-16位,以此类推);
当密钥为128位时n为16,16个DSR寄存器初始化值为密钥中的16位(数据第1位对应密钥1-16位,数据第2位对应密钥17-32位,以此类推);
当密钥为256位时n为32,32个DSR寄存器初始化值为密钥中的32位(数据第1位对应密钥1-32位,数据第2位对应密钥33-64位,以此类推);
解密时,输出明文Y=X+DSR0,同时X写入DSRn-1,DSRn-2=DSRn-1+X,其余DSR0~DSRn-3均为DSRi-1=DSRi(i取1至n-2)。8组该电路一起一个时钟周期完成一次一个8位数据的解密。

Claims (2)

1.一种基于APB总线的硬件加密UART装置,其特征在于:所述硬件加密UART装置包括:
APB总线接口模块,包括一根中断申请信号线、一根由AMBA协议定义的APB总线,所述APB总线接口模块负责与APB主机通信,将APB总线上传来的要发送的明文数据交给硬件加密模块,负责将硬件解密模块传来的接收到的数据打包传到APB总线上;
UART总线接口模块,包括用以接收RXD与发送TXD两根信号线,支持与其他UART主机通信;每帧数据有起始位、5到8位的数据位和可选择的奇偶校验位以及1~2位的停止位,其中,起始位为低电平,停止位为高电平;
硬件加密模块,用以接收来自APB总线接口模块的明文数据与加密密钥,明文宽度为8位,根据密钥与明文输出8位加密数据;
解密模块,根据8位加密数据与APB总线接口模块送来的密钥生成8位明文数据;
硬件加密模块与解密模块在APB总线接口模块与UART总线接口模块之间。
2.如权利要求1所述的基于APB总线的硬件加密UART装置,其特征在于:所述加密模块配合一个8位2选1多路选择器,如果使能加密模块,则由控制信号控制选通发送密文数据到UART总线接口模,如果不使能加密模块,则密钥无效,由控制信号控制选通发送明文数据到UART总线接口模块;
所述解密模块配合一个8位2选1多路选择器,如果使能解密模块,则由控制信号控制选通解密后数据到APB总线接口模块,如果不使能解密模,则密钥无效,由控制信号选通直接接收到的数据到APB总线接口模块。
CN201210167383.2A 2012-05-23 2012-05-23 基于apb总线的硬件加密uart装置 Active CN102739393B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210167383.2A CN102739393B (zh) 2012-05-23 2012-05-23 基于apb总线的硬件加密uart装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210167383.2A CN102739393B (zh) 2012-05-23 2012-05-23 基于apb总线的硬件加密uart装置

Publications (2)

Publication Number Publication Date
CN102739393A CN102739393A (zh) 2012-10-17
CN102739393B true CN102739393B (zh) 2015-07-22

Family

ID=46994238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210167383.2A Active CN102739393B (zh) 2012-05-23 2012-05-23 基于apb总线的硬件加密uart装置

Country Status (1)

Country Link
CN (1) CN102739393B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3729717A4 (en) * 2017-12-19 2021-01-20 Alibaba Group Holding Limited SERIAL PERIPHERAL INTERFACE COMMUNICATION DEVICE BASED ON ADVANCED PERIPHERAL BUS
EP3729285A4 (en) * 2017-12-19 2021-01-20 Alibaba Group Holding Limited ADVANCED COMMUNICATION DEVICE WITH INTER-INTEGRATED CIRCUIT ON THE BASIS OF A PERIPHERAL BUS

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103077362B (zh) * 2012-12-27 2015-09-30 深圳先进技术研究院 具有安全机制的gpio ip核
CN104486069A (zh) * 2014-12-23 2015-04-01 天津光电通信技术有限公司 一种基于fpga实现的gost加解密设备及其方法
CN108052473B (zh) * 2017-12-21 2020-02-14 杭州中天微系统有限公司 串行通信装置
CN111026691B (zh) * 2019-12-11 2021-05-25 北京工业大学 基于apb总线的owi通讯设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026528A (zh) * 2007-04-05 2007-08-29 中兴通讯股份有限公司 一种同步串行接口装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026528A (zh) * 2007-04-05 2007-08-29 中兴通讯股份有限公司 一种同步串行接口装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3729717A4 (en) * 2017-12-19 2021-01-20 Alibaba Group Holding Limited SERIAL PERIPHERAL INTERFACE COMMUNICATION DEVICE BASED ON ADVANCED PERIPHERAL BUS
EP3729285A4 (en) * 2017-12-19 2021-01-20 Alibaba Group Holding Limited ADVANCED COMMUNICATION DEVICE WITH INTER-INTEGRATED CIRCUIT ON THE BASIS OF A PERIPHERAL BUS

Also Published As

Publication number Publication date
CN102739393A (zh) 2012-10-17

Similar Documents

Publication Publication Date Title
CN102739393B (zh) 基于apb总线的硬件加密uart装置
CN107103472B (zh) 一种用于区块链的算法处理模块
CN101854353B (zh) 一种基于fpga的多芯片并行加密方法
CN106254896B (zh) 一种针对实时视频的分布式加密方法
WO2020224171A1 (zh) 一种数据保密装置、方法、电子设备及存储介质
CN101478392B (zh) 利用vlsi实现128位密钥长度aes算法的装置
CN102081713B (zh) 一种用于防止数据泄密的办公系统
CN103973432A (zh) 一种基于fpga和usb接口芯片的sm4算法加密设备
CN108123793A (zh) 基于apb总线的spi通信装置
CN101593254A (zh) 一种笔记本电脑安全输入方法及系统
CN103716166A (zh) 一种自适应混合加密方法、装置以及加密通信系统
CN102664729A (zh) 一种基于fpga的aes加解密网络通讯装置及其实现方法
CN103413094A (zh) 一种适用于航天器ctu的遥测加密系统
WO2023109235A1 (zh) 加解密初始化配置方法、边缘端、加解密平台及安全系统
CN109101829B (zh) 基于可重构密码处理器的安全固态盘数据传输系统
CN108062288A (zh) 基于apb总线的i2c通信装置
CN103346878B (zh) 一种基于fpga高速串行io的保密通信方法
CN101515853B (zh) 信息终端及其信息安全装置
CN103902932B (zh) 根据支持usb型存储设备的数据加解密的装置进行加密的方法
CN102917250A (zh) 用于数字媒体接口的音视频传输方法
CN103200007B (zh) 基于fpga的sata数据不对称加密硬件实现系统
CN103077362B (zh) 具有安全机制的gpio ip核
CN103336920B (zh) 用于无线传感网络soc芯片的安全系统
CN103427978A (zh) 基于混沌加密系统的无线汉字传输装置
CN105721139B (zh) 一种适用于有限io资源的fpga的aes加解密方法及电路

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160219

Address after: 310012 A403 room, Hangzhou Neusoft building, 99 Huaxing Road, Xihu District, Zhejiang, Hangzhou, China

Patentee after: C-SKY MICROSYSTEMS Co.,Ltd.

Address before: 310027 Hangzhou, Zhejiang Province, Xihu District, Zhejiang Road, No. 38, No.

Patentee before: Zhejiang University

TR01 Transfer of patent right

Effective date of registration: 20211112

Address after: 200135 floor 5, No. 366, Shangke road and No. 2, Lane 55, Chuanhe Road, pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee after: Pingtouge (Shanghai) semiconductor technology Co.,Ltd.

Address before: 310012 room A403, Hangzhou Neusoft venture building, No. 99, Huaxing Road, Xihu District, Hangzhou City, Zhejiang Province

Patentee before: C-SKY MICROSYSTEMS Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240202

Address after: 310052 Room 201, floor 2, building 5, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: C-SKY MICROSYSTEMS Co.,Ltd.

Country or region after: China

Address before: 200135 floor 5, No. 366, Shangke road and No. 2, Lane 55, Chuanhe Road, pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee before: Pingtouge (Shanghai) semiconductor technology Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right