一种嵌入式数据安全系统用soc芯片的制作方法
【专利摘要】本发明涉及一种嵌入式数据安全系统用SOC芯片,内部资源极其丰富,使用该芯片实现的嵌入式数据安全系统通过在线调试及上位机通讯模块同上位机相连接,与上位机上的专用软件配合即可完成对任何计算机文件的安全性操作,如数据加密、数据解密等,本发明提供的嵌入式数据安全系统用SOC芯片将采用单芯片的方式设计数据安全系统,形成一个片上系统芯片,用该芯片实现的新型的数据安全系统,将具有体积更小、功耗更低、安全性更高、可靠性更高、系统结构更简单、系统维护更方便等优点。
【专利说明】-种嵌入式数据安全系统用SOC芯片
【技术领域】
[0001] 本发明涉及一种SOC芯片,具体地说,涉及一种嵌入式数据安全系统用SOC芯片, 属于电子【技术领域】。
【背景技术】
[0002] SOC即System On Chip的缩写,指的是片上系统芯片,也称作芯片级系统。SOC是 属于专用集成电路范畴,其内部包含多种功能部件或模块,具有完整系统的功能,有的还可 嵌入软件的功能。SOC技术的应用和发展,有助于电子设备减小体积重量、降低功耗、提高可 靠性、降低系统成本。
[0003] 随着现代社会信息化程度的不断提高,所有信息均可转变成了计算机所能识别的 数据。数据可复制和易传输的特性为人们的生活和工作提供了巨大的便利。然而,数据的这 种可复制和易传输特性也为信息泄露大开方便之门,给信息的安全性带来了空前的挑战。 为了给信息传输提供安全保障,就需要用到数据安全系统。数据安全系统一般由软件和硬 件两大部分构成。现有的数据安全系统硬件一般包含处理器芯片(如单片机)、数据存储器 芯片、程序存储器芯片、密钥存储器芯片、接口电路芯片、电源电路芯片、时钟芯片、复位芯 片等多个分立的部分组成,如图1所示,其中处理器芯片负责整个数据安全系统的任务调 度管理等工作,数据存储器芯片为处理器芯片提供程序运行的空间,程序存储器芯片用来 存储数据安全系统的程序,密钥存储器芯片用来存储系统密钥,接口电路芯片用来提供数 据安全系统与上位机的接口,电源电路芯片为整个数据安全系统提供电源,时钟芯片为数 据安全系统提供驱动时钟信号,复位芯片为数据安全系统提供复位信号。
[0004] 在实现本发明过程中,发明人发现现有技术中至少存在以下问题:现有方式构成 的数据安全系统用到多个和多种彼此独立的芯片,这样就会造成数据安全系统的体积大、 功耗高、成本高、维修维护复杂、安全算法更新难度大、安全性差。
【发明内容】
[0005] 本发明要解决的问题是针对以上不足,提供一种嵌入式数据安全系统用SOC芯 片,将现有数据安全系统用到的多个和多种彼此独立的芯片通过SOC技术集成到一个大规 模的SOC芯片中,用一颗SOC芯片就可实现现有数据安全系统要多种和多个芯片才能实现 的功能,克服了现有技术中数据安全系统存在的体积大、功耗高、成本高、维修维护复杂、安 全算法更新难度大、安全性差的缺陷。
[0006] 为解决上述问题,本发明采用以下技术方案: 一种嵌入式数据安全系统用SOC芯片,该芯片集成如下子模块:RISC处理器、在线调试 及上位机通讯模块、总线仲裁器、程序存储器ROM、数据存储器RAM、密钥存储器、随机数发 生器、安全算法模块、定时器、中断控制器、UART串行通讯接口、SPI总线控制器、I2C总线控 制器、GPIO接口模块、电源转换器、时钟/复位发生器。
[0007] 所述芯片内部采用总线式结构,利用片内互联总线连接各个片内子模块。
[0008] 所述片内互联总线遵循WishBone标准,片内互联总线同一时刻只能被一个主设 备访问。
[0009] 所述线仲裁器来控制片内互联总线的访问。RISC处理器和在线调试及上位机通讯 模块为片内互联总线上的两个主设备。
[0010] 片内互联总线上的从设备有:程序存储器ROM、数据存储器RAM、密钥存储器、随机 数发生器、安全算法模块、定时器、中断控制器、UART串行通讯接口、SPI总线控制器、I2C总 线控制器、GPIO接口模块、电源转换器、时钟/复位发生器。从设备不能主动访问总线,只 能被动响应由主设备发起的总线访问。
[0011] 所述片内总线上连接的所有主设备与片内总线的连接信号类型和数量相同,具体 包含: (1) 主设备地址输出信号m_addr_out [31:0]; (2) 主设备数据输入信号m_dada_in[31:0]; (3) 主设备数据输出信号m_data_out [31:0]; (4) 主设备选通输出信号m_sel_out ; (5) 主设备写有效输出信号m_wr_out ; (6) 主设备读有效输出信号m_rd_out ; (7) 主设备应答输入信号m_ack_in。
[0012] 所述片内总线上连接的所有从设备与片内总线的连接信号类型和数量相同,具体 包含: (1) 从设备地址输入信号s_addr_in[31:0]; (2) 从设备数据输入信号s_dada_in [31:0]; (3) 从设备数据输出信号s_data_out [31:0]; (4) 从设备选通输入信号s_sel_in ; (5) 从设备写有效输入信号s_wr_in ; (6) 从设备读有效输入信号s_rd_in ; 从设备应答输出信号s_ack_out。
[0013] 所述主设备要对某一个从设备进行写数操作,其过程如下: 第一步,主设备通过m_sel_out信号向片内总线输出选通信息、通过m_wr_out向片内 总线输出写有效信息、通过m_addr_out [31:0]信号向片内总线输出目标地址信息、通过m_ data_〇ut[31:0]向片内总线输出待写入数据信息。片内总线上所有从设备都可以通过8_ addr_in[31:0]信号接收到主设备的地址信息、通过s_dada_in[31:0]信号接收到主设备 的数据信息。
[0014] 第二步,总线仲裁器根据主设备输送到片内总线的地址信息进行译码并选中访问 目标(译码规则参见表1 ),并只将目标从设备的s_sel_in和s_wr_in信号置成有效状态,其 它从设备的8_861_;[11和s_wr_in信号保持无效状态。
[0015] 第三步,当目标从设备检测到自身的s_sel_in和s_wr_in信号有效时,就会从自 身的s_addr_in[31:0]信号上获取目标地址,并将目标数据通过自身s_dada_out[31:0]信 号传送到片内总线,并通过自身的S_ack_〇ut向片内总线发出操作应答信息。
[0016] 第四步,总线仲裁器将目标从设备的操作应答信息通过片内总线传递到发起写操 作的主设备的m_ack_in信号。主设备在收到此应答信息后,即确认整个写数操作结束。 [0017] 所述主设备要对某一个从设备进行读数操作,其过程如下: 第一步,主设备通过m_sel_out信号向片内总线输出选通信息、通过m_rd_out向片内 总线输出写有效信息、通过m_addr_out[31:0]信号向片内总线输出目标地址信息。片内总 线上所有从设备都可以通过s_addr_in[31:0]信号接收到主设备的地址信息。
[0018] 第二步,总线仲裁器根据主设备输送到片内总线的地址信息进行译码并选中访问 目标(译码规则参见表1 ),并只将目标从设备的s_sel_in和s_rd_in信号置成有效状态,其 它从设备的s_sel_in和s_rd_in信号保持无效状态; 第三步,当目标从设备检测到自身的s_sel_in和s_rd_in信号有效时,就会从自身的 s_addr_in[31:0]信号上获取目标地址,并将自身s_dada_in[31:0]信号上的数据写入自 身的目标区域,然后,通过自身的S_ack_〇ut向片内总线发出操作应答信息; 第四步,总线仲裁器将目标从设备的操作应答信息通过片内总线传递到发起写操作 的主设备的m_ack_in信号。主设备在收到此应答信息后,就立即通过自身的m_dada_ in[31:0]信号从片内总线获取要读取的数据,然后确认整个读数操作结束。
[0019] 所述芯片中集成总线仲裁器,总线仲裁器根据主设备访问请求的先后顺序来裁决 下一时刻片内互联总线给哪一个主设备使用. 所述总线仲裁器根据主设备的最高7位地址信号来译码决定被访问的目标从设备。
[0020] 本发明嵌入式数据安全系统用SOC芯片,其具有如下优点: (1) 实现过程简单:单SOC芯片即可实现嵌入式数据安全系统,设计实现过程将大幅度 简化,开发进度加快,产品面世周期变短; (2) 体积小:单SOC芯片即可实现嵌入式数据安全系统,系统体积将显著变小; (3) 功耗低:单SOC芯片即可实现嵌入式数据安全系统,系统整体功耗将显著降低; (4) 安全性高:加解密算法、密钥、应用程序等均集成在SOC芯片内部,切断了泄密的通 道,提高了系统的安全性; (5) 可靠性高:单SOC芯片即可实现嵌入式数据安全系统,降低了因零部件多而带来的 可靠性降低的可能性,相应的也就提供了系统的可靠性; (6) 系统结构简单:单SOC芯片即可实现嵌入式数据安全系统,系统结果自然简单得 多; (7) 维修维护方便:单SOC芯片即可实现嵌入式数据安全系统,自然可以提供系统的可 维护维修性,降低了系统的维修和维护难度。
[0021] 该SOC芯片主要用于嵌入式数据安全系统,是嵌入式数据安全系统硬件部分的核 心,其承担着系统管理、算法运算、外设控制等任务。
[0022] 本发明嵌入式数据安全系统用SOC芯片内部资源极其丰富,若采用该芯片来设计 嵌入式数据安全系统,其实现过程将极其简单。硬件方面只需额外再搭配电源、接口驱动芯 片、晶体振荡器等少量外围电路即可构成完整的数据安全系统硬件平台。软件方面只需用 户开发相应的底层软件和上位机软件即可。使用该芯片实现的嵌入式数据安全系统通过在 线调试及上位机通讯模块同上位机(如PC机)相连接,与上位机上的专用软件配合即可完成 对任何计算机文件的安全性操作,如数据加密、数据解密等。本专利提供的嵌入式数据安全 系统用SOC芯片将改变传统数据安全系统的硬件系统由多个芯片及模块组成的结构方式, 将采用单芯片的方式设计数据安全系统。本专利将SOC技术应用于数据安全系统,所设计 的数据安全系统用SOC技术将各相关功能模块集成在一个单芯片内,形成一个片上系统芯 片。用该芯片实现的新型的数据安全系统,将具有体积更小、功耗更低、安全性更高、可靠性 更高、系统结构更简单、系统维护更方便等优点。
[0023] 下面结合附图和实施例对本发明进行详细说明。
【专利附图】
【附图说明】
[0024] 附图1是现有数据安全系统的典型硬件结构图; 附图2是采用本发明提供的专用SOC芯片的嵌入式数据安全系统的典型硬件结构图; 附图3是本发明实施例中SOC芯片的结构框图; 附图4是本发明实施例中SOC芯片的片内总线主设备与片内总线的连接示意及信号 图; 附图5是本发明实施例中SOC芯片的片内总线从设备与片内总线的连接示意及信号 图; 附图6是本发明实施例中SOC芯片的处理器结构图; 附图7是本发明实施例中SOC芯片在线调试及上位机通讯模块结构图; 附图8是本发明实施例中SOC芯片的程序存储器ROM结构图; 附图9是本发明实施例中SOC芯片的数据存储器RAM结构图; 附图10是本发明实施例中SOC芯片的随机数发生器结构图; 附图11是本发明实施例中SOC芯片的安全算法模块结构图; 附图12是本发明实施例中SOC芯片的密钥存储器结构图; 附图13是本发明实施例中SOC芯片的中断控制器结构图; 附图14是本发明实施例中SOC芯片的电源转换器结构图。
【具体实施方式】
[0025] 实施例,如图2和图3所示,清楚地表述了本芯片的内部架构、功能模块种类数量 以及各模块连接关系。
[0026] -种嵌入式数据安全系统用SOC芯片,该芯片集成如下子模块:RISC处理器、在线 调试及上位机通讯模块、总线仲裁器、程序存储器ROM、数据存储器RAM、密钥存储器、随机 数发生器、安全算法模块、定时器、中断控制器、UART串行通讯接口、SPI总线控制器、I2C总 线控制器、GPIO接口模块、电源转换器、时钟/复位发生器。
[0027] 如图3所示,本发明实施例中嵌入式数据安全系统用SOC芯片内部采用总线式结 构,利用片内互联总线连接各个片内子模块。
[0028] 本专利选用的片内互联总线遵循WishBone标准,片内互联总线同一时刻只能被 一个主设备访问。
[0029] 本专利设计了总线仲裁器来控制片内互联总线的访问。RISC处理器和在线调试及 上位机通讯模块为片内互联总线上的两个主设备。
[0030] 片内互联总线上的从设备有:程序存储器ROM、数据存储器RAM、密钥存储器、随机 数发生器、安全算法模块、定时器、中断控制器、UART串行通讯接口、SPI总线控制器、I2C总 线控制器、GPIO接口模块、电源转换器、时钟/复位发生器。从设备不能主动访问总线,只 能被动响应由主设备发起的总线访问。
[0031] 如图4所示,本发明实施例中嵌入式数据安全系统用SOC芯片的片内总线上连接 的所有主设备与片内总线的连接信号类型和数量相同,具体包含: (8) 主设备地址输出信号m_addr_out [31:0]; (9) 主设备数据输入信号m_dada_in[31:0]; (10) 主设备数据输出信号m_data_out[31:0]; (11) 主设备选通输出信号m_sel_out ; (12) 主设备写有效输出信号111_界1'_〇1^ ; (13) 主设备读有效输出信号111_1(1_〇111:; (14) 主设备应答输入信号m_ack_in。
[0032] 主设备利用m_addr_out[31:0]信号从将地址信息传递给片内总线,利用m_data_ in[31:0]信号从片内总线获取数据,利用m_data_〇ut[31:0]信号将自身数据送到片内总 线,利用m_Sel_〇Ut信号将选通命令传送给片内总线,利用m_wr_ 〇ut信号将写操作命令传 送给片内总线,利用m_rd_〇Ut信号将读操作命令传送给片内总线,利用m_ack_in信号从片 内总线获取应答信号。
[0033] 如图5所示,本发明实施例中嵌入式数据安全系统用SOC芯片的片内总线上连接 的所有从设备与片内总线的连接信号类型和数量相同,具体包含: (7) 从设备地址输入信号s_addr_in[31:0]; (8) 从设备数据输入信号s_dada_in[31:0]; (9) 从设备数据输出信号s_data_out [31:0]; (10) 从设备选通输入信号s_sel_in ; (11) 从设备写有效输入信号s_wr_in ; (12) 从设备读有效输入信号s_rd_in ; (13) 从设备应答输出信号s_ack_out。
[0034] 从设备利用s_addr_in [31:0]信号从片内总线获取地址信息,利用s_data_ in[31:0]信号从片内总线获取数据,利用s_data_〇ut[31:0]信号将自身数据送到片内总 线,利用s_sel_in信号从片内总线获取选通命令,利用m_wr_in信号从片内总线获取写操 作命令,利用s_rd_in信号从片内总线获取读操作命令,利用s_ack_in信号将应答信号传 递给片内总线。
[0035] 主设备要对某一个从设备进行写数操作,其过程如下: 第一步,主设备通过m_sel_out信号向片内总线输出选通信息、通过m_wr_out向片内 总线输出写有效信息、通过m_addr_out [31:0]信号向片内总线输出目标地址信息、通过m_ data_〇ut[31:0]向片内总线输出待写入数据信息。片内总线上所有从设备都可以通过8_ addr_in[31:0]信号接收到主设备的地址信息、通过s_dada_in[31:0]信号接收到主设备 的数据信息。
[0036] 第二步,总线仲裁器根据主设备输送到片内总线的地址信息进行译码并选中访问 目标(译码规则参见表1 ),并只将目标从设备的s_sel_in和s_wr_in信号置成有效状态,其 它从设备的8_861_;[11和s_wr_in信号保持无效状态。
[0037] 第三步,当目标从设备检测到自身的s_sel_in和s_wr_in信号有效时,就会从自 身的s_addr_in[31:0]信号上获取目标地址,并将目标数据通过自身s_dada_out[31:0]信 号传送到片内总线,并通过自身的S_ack_〇ut向片内总线发出操作应答信息。
[0038] 第四步,总线仲裁器将目标从设备的操作应答信息通过片内总线传递到发起写操 作的主设备的m_ack_in信号。主设备在收到此应答信息后,即确认整个写数操作结束。
[0039] 主设备要对某一个从设备进行读数操作,其过程如下: 第一步,主设备通过m_sel_out信号向片内总线输出选通信息、通过m_rd_out向片内 总线输出写有效信息、通过m_addr_out[31:0]信号向片内总线输出目标地址信息。片内总 线上所有从设备都可以通过s_addr_in[31:0]信号接收到主设备的地址信息。
[0040] 第二步,总线仲裁器根据主设备输送到片内总线的地址信息进行译码并选中访问 目标(译码规则参见表1 ),并只将目标从设备的s_sel_in和s_rd_in信号置成有效状态,其 它从设备的s_sel_in和s_rd_in信号保持无效状态; 第三步,当目标从设备检测到自身的s_sel_in和s_rd_in信号有效时,就会从自身的 s_addr_in[31:0]信号上获取目标地址,并将自身s_dada_in[31:0]信号上的数据写入自 身的目标区域,然后,通过自身的S_ack_〇ut向片内总线发出操作应答信息; 第四步,总线仲裁器将目标从设备的操作应答信息通过片内总线传递到发起写操作 的主设备的m_ack_in信号。主设备在收到此应答信息后,就立即通过自身的m_dada_ in[31:0]信号从片内总线获取要读取的数据,然后确认整个读数操作结束。
[0041] 如图3所示,本发明实施例中嵌入式数据安全系统用SOC芯片中集成总线仲裁器, 总线仲裁器根据主设备访问请求的先后顺序来裁决下一时刻片内互联总线给哪一个主设 备使用。总线仲裁器根据主设备的最高7位地址信号(8卩m_addr_〇ut [31:25])来译码决定 被访问的目标从设备,译码规则如表1所示。
[0042] 表1总线仲裁器地址译码表
【权利要求】
1. 一种嵌入式数据安全系统用SOC芯片,其特征在于:该芯片集成如下子模块:RISC 处理器、在线调试及上位机通讯模块、总线仲裁器、程序存储器ROM、数据存储器RAM、密钥 存储器、随机数发生器、安全算法模块、定时器、中断控制器、UART串行通讯接口、SPI总线 控制器、I2C总线控制器、GPI0接口模块、电源转换器、时钟/复位发生器。
2. 如权利要求1所述的嵌入式数据安全系统用S0C芯片,其特征在于:所述芯片内部 采用总线式结构,利用片内互联总线连接各个片内子模块。
3. 如权利要求2所述的嵌入式数据安全系统用S0C芯片,其特征在于:所述片内互联 总线遵循WishBone标准,片内互联总线同一时刻只能被一个主设备访问。
4. 如权利要求3所述的嵌入式数据安全系统用S0C芯片,其特征在于:所述线仲裁器 来控制片内互联总线的访问,RISC处理器和在线调试及上位机通讯模块为片内互联总线上 的两个主设备; 片内互联总线上的从设备有:程序存储器ROM、数据存储器RAM、密钥存储器、随机数发 生器、安全算法模块、定时器、中断控制器、UART串行通讯接口、SPI总线控制器、I2C总线控 制器、GPI0接口模块、电源转换器、时钟/复位发生器,从设备不能主动访问总线,只能被动 响应由主设备发起的总线访问。
5. 如权利要求4所述的嵌入式数据安全系统用S0C芯片,其特征在于:所述片内总线 上连接的所有主设备与片内总线的连接信号类型和数量相同,具体包含: 主设备地址输出信号m_addr_out [31:0]; 主设备数据输入信号m_dada_in [31:0]; 主设备数据输出信号m_data_out [31:0]; 主设备选通输出信号m_sel_out ; 主设备写有效输出信; 主设备读有效输出信号111_1(1_0111:; 主设备应答输入信号m_ack_in。
6. 如权利要求5所述的嵌入式数据安全系统用SOC芯片,其特征在于:所述片内总线 上连接的所有从设备与片内总线的连接信号类型和数量相同,具体包含: 从设备地址输入信号s_addr_in [31:0]; 从设备数据输入信号s_dada_in [31:0]; 从设备数据输出信号s_data_out [31:0]; 从设备选通输入信号s_sel_in ; 从设备写有效输入信号s_wr_in ; 从设备读有效输入信号s_rd_in ; 从设备应答输出信号s_ack_out。
7. 如权利要求6所述的嵌入式数据安全系统用SOC芯片,其特征在于:所述主设备要 对某一个从设备进行写数操作,其过程如下: 第一步,主设备通过m_sel_out信号向片内总线输出选通信息、通过m_wr_out向片内 总线输出写有效信息、通过m_addr_out [31:0]信号向片内总线输出目标地址信息、通过m_ data_〇ut[31:0]向片内总线输出待写入数据信息,片内总线上所有从设备都可以通过8_ addr_in[31:0]信号接收到主设备的地址信息、通过s_dada_in[31:0]信号接收到主设备 的数据信息; 第二步,总线仲裁器根据主设备输送到片内总线的地址信息进行译码并选中访问目 标,并只将目标从设备的8_861_;[11和s_wr_in信号置成有效状态,其它从设备的s_sel_in 和s_wr_in信号保持无效状态; 第三步,当目标从设备检测到自身的s_sel_in和s_wr_in信号有效时,就会从自身的 s_addr_in[31:0]信号上获取目标地址,并将目标数据通过自身s_dada_out[31:0]信号传 送到片内总线,并通过自身的s_ack_out向片内总线发出操作应答信息; 第四步,总线仲裁器将目标从设备的操作应答信息通过片内总线传递到发起写操作的 主设备的m_ack_in信号,主设备在收到此应答信息后,即确认整个写数操作结束。
8. 如权利要求7所述的嵌入式数据安全系统用SOC芯片,其特征在于:所述主设备要 对某一个从设备进行读数操作,其过程如下: 第一步,主设备通过m_sel_out信号向片内总线输出选通信息、通过m_rd_out向片内 总线输出写有效信息、通过m_addr_out [31:0]信号向片内总线输出目标地址信息,片内总 线上所有从设备都可以通过s_addr_in[31:0]信号接收到主设备的地址信息; 第二步,总线仲裁器根据主设备输送到片内总线的地址信息进行译码并选中访问目标 (译码规则参见表1),并只将目标从设备的8_%1」11和s_rd_in信号置成有效状态,其它从 设备的s_sel_in和s_rd_in信号保持无效状态; 第三步,当目标从设备检测到自身的s_sel_in和s_rd_in信号有效时,就会从自身的 s_addr_in[31:0]信号上获取目标地址,并将自身s_dada_in[31:0]信号上的数据写入自 身的目标区域,然后,通过自身的S_ack_〇ut向片内总线发出操作应答信息; 第四步,总线仲裁器将目标从设备的操作应答信息通过片内总线传递到发起写操 作的主设备的m_ack_in信号,主设备在收到此应答信息后,就立即通过自身的m_dada_ in[31:0]信号从片内总线获取要读取的数据,然后确认整个读数操作结束。
9. 如权利要求8所述的嵌入式数据安全系统用SOC芯片,其特征在于:所述芯片中集 成总线仲裁器,总线仲裁器根据主设备访问请求的先后顺序来裁决下一时刻片内互联总线 给哪一个主设备使用。
10. 如权利要求9所述的嵌入式数据安全系统用SOC芯片,其特征在于:所述总线仲裁 器根据主设备的最高7位地址信号来译码决定被访问的目标从设备。
【文档编号】G06F13/40GK104391813SQ201410569274
【公开日】2015年3月4日 申请日期:2014年10月23日 优先权日:2014年10月23日
【发明者】刘振宇, 杨雪莹, 杜青阳 申请人:山东维固信息科技股份有限公司