可重构密码协处理器的控制电路的制作方法

文档序号:6456221阅读:117来源:国知局
专利名称:可重构密码协处理器的控制电路的制作方法
技术领域
本实用新型涉及一种实现可重构密码协处理器的控制电路设计。
背景技术
目前现有网络通信所使用的密码芯片,通常是实现特定密码算法的专用器件,其芯片结构固定不变且密码算法也是不变的。现有的专用密码芯片在使用过程中仅能实现某种特定算法,长时间使用后网络结构自身的安全性降低,易于导致密码算法被攻破而造成安全隐患,而且专用密码芯片是不可升级的,因而也就缺少扩展性。如需对上述专用密码芯片进行更新,也会相应地造成设计成本的提高。
现在已有关于可重构密码芯片的设计思路,即通过改变硬件电路的逻辑结构来配置或适应不同密码算法的设计要求,因而可以支持多种密码算法的转换。但是,目前尚未有关于可重构密码芯片电路设计内容的披露。

发明内容
本实用新型所述的可重构密码协处理器的控制电路,其目的即在于解决上述问题和不足而提供实现不同密码转换的电路设计方案。
可重构密码协处理器是一种实现数据加密/解密处理的集成电路芯片,其硬件电路的逻辑结构可实现不同密码算法的转换,因而支持多种密码算法的快速实现。
所述控制电路是可重构密码协处理器的关键组成部分,其主要功能是实现程序装载与保存,即将加密/解密所需程序由外部设备装入指令存储器中;实现程序执行控制,即根据程序执行的要求,自动地从指令存储器中逐条取出指令,送入指令译码器中译码;实现指令译码,即对取出的指令进行分析,确定指令中所包含的操作,并给出相应的控制信号,驱动相应的模块完成所需的操作等。
所述可重构密码协处理器的控制电路,主要包括指令存储器和程序装载控制电路、程序执行控制电路和指令译码器。其中,指令存储器,用于保存加/解密程序;程序装载控制电路,用于控制将指令逐条、按顺序装入指令存储器中。具体地说,程序装载控制电路用于产生指令的写使能信号和写地址;程序执行控制电路,用于实现程序执行控制功能,将根据可重构密码协处理器当前状态和各种标识等,产生相应的指令读使能信号和读地址等,以便从指令存储器中读出所需要的指令,送入指令译码器中译码,从而使密码程序能够根据用户的具体要求自动执行(顺序执行、跳转、停机等);指令译码器,用于实现指令译码功能,即根据指令系统的定义对从指令存储器中取出的每条指令进行分析,确定指令中所包含的操作,并给出相应的控制信号、数据和标识等,驱动相应的模块完成所需的操作。
本实用新型所述可重构密码协处理器的控制电路,程序装载控制电路主要包括有指令条数寄存器、比较器和指令写地址产生器共三个子模块。
程序执行控制电路,主要由有限状态机构成。
如上所述,控制电路的主要包括指令条数寄存器、比较器、指令写地址产生器、有限状态机、指令存储器、指令译码器,共6个子模块。
其中,指令条数寄存器,用于保存密码程序中的指令条数,该数据将用于判断程序装载操作是否结束。指令条数是以指令存储器的输入数据总线的数据宽度为计算单位的,而且是从0开始计数的,即指令条数=密码程序代码量/输入数据总线的数据宽度-1。指令条数寄存器的输出和输入宽度可以不同,当输出宽度大于输入宽度时,指令条数需要分多次输入。
比较器,用于比较当前的指令写操作目标地址是否等于指令条数,若相等,则比较结果标识有效,意味着程序装载操作结束。
指令写地址产生器,用于产生指令写操作的目标地址,将密码程序中的指令按顺序逐条写入指令存储器中。
有限状态机,用于控制程序的自动执行。有限状态机分为程序执行状态和非程序执行状态。
指令存储器,用于保存密码程序。
指令译码器,用于接收从指令存储器中读取的指令,并对其进行译码。
综上所述,可重构密码协处理器的控制电路支持密码程序的自动执行,只需给指令执行使能信号一个有效脉冲,就可以触发程序的自动执行过程,在此过程中可重构密码协处理器不需要外部干预,能够自动地每个时钟周期取出一条指令、加以译码后执行,有效地降低了主处理器的控制开销、节约了总线带宽、提高了加密/解密的处理速度。另外,本电路还具有电路结构简单、外部管脚数少等优点。


图1是所述控制电路的结构示意图。
具体实施方式
如图1所示,本实用新型所述的可重构密码协处理器的控制电路主要包括指令条数寄存器(insnumr)、比较器(comp)、指令写地址产生器(insw_addr generator)、有限状态机(fsm)、指令存储器(ins_mem)、指令译码器(ins_dec)。
上述子模块的相互间的连接关系、名称、含义及作用等如下表所示


如上表所示指令条数寄存器(insnumr),保存密码程序中的指令条数。当复位信号rst有效时,对指令条数寄存器赋初值,当insnumr_en有效时,将databus上的数据写入指令条数寄存器。指令条数寄存器的输出和输入宽度可以不同,当输出宽度大于输入宽度时,指令条数需要分多次输入。
比较器(comp),比较当前的指令写操作目标地址insw_addr是否等于指令条数;若相等,则比较结果标识comp_id有效,意味着程序装载操作结束。
指令写地址产生器(insw_addr generator),产生指令写操作的目标地址insw_addr。当rst有效时,insw_addr=0,表示第一条指令的地址,以后,每当写入一条指令,insw_addr自动加1,直到所有指令装载完毕,insw_addr又变为0。这样就可以将密码程序中的指令按顺序逐条写入指令存储器中。
有限状态机(fsm),当指令执行使能信号ins_exe有效时,状态机进入程序执行状态,在此状态下,每个时钟周期指令读使能信号insr_en有效并给出指令读地址insr_addr,在正常情况下,insr_addr从0开始每个时钟周期加1,当遇到跳转指令时(即jump_id有效时),insr_addr等于跳转地址jump_addr,当遇到停机指令时(即halt_id有效时),令insr_en无效,停止读取指令,状态机进入非程序执行状态,并令状态标志信号ready有效,表示程序执行结束。
指令存储器(ins_mem),在insw_en和insw_addr的控制下进行指令装载操作,在insr_en和insr_addr的控制下进行指令读取操作,其输入端口的数据宽度可以低于输出端口的数据宽度且其输入端口和指令条数寄存器的输入端口可以共享同一条外部输入总线databus,以便节省外部管脚数。
指令译码器(ins_dec),接收从指令存储器中读取的指令ins,并对其进行译码。首先确定指令的类型,若为配置指令,则给出配置寄存器的写使能信号和配置数据;若为执行指令,则给出它所包含的各个操作的写使能信号和数据来源、结果去向等编码;若为跳转指令,则首先判断跳转条件是否满足,若满足,则令跳转标识jump_id有效,同时给出跳转地址jump_addr,若不满足,则令跳转标识jump_id无效;若为停机指令,则令停机标识halt_id有效。
如图1和上表所示,所述控制电路中采用的数据输入总线databus的数据宽度为8位,指令条数寄存器的输出insnumrout为12位,指令写地址insw_addr为12位,指令读地址insr_addr为8位,指令存储器ins_mem的容量为256条208位的指令字,指令存储器ins_mem的输出ins为208位,跳转地址jump_addr为8位,指令译码器ins_dec输出的操作编码opcode为195位、配置数据con_d为192位。
权利要求1.一种可重构密码协处理器的控制电路,其特征在于所述的控制电路主要包括指令存储器、程序装载控制电路、程序执行控制电路和指令译码器。
2.根据权利要求1所述的可重构密码协处理器的控制电路,其特征在于所述的程序装载控制电路主要包括有指令条数寄存器、比较器和指令写地址产生器模块。
3.根据权利要求2所述的可重构密码协处理器的控制电路,其特征在于所述的程序执行控制电路主要由有限状态机构成。
4.根据权利要求3所述的可重构密码协处理器的控制电路,其特征在于指令存储器的输入端口和指令条数寄存器的输入端口共享同一条外部输入总线。
专利摘要本实用新型所述的可重构密码协处理器的控制电路,其主要功能是实现程序装载与保存,即将加密/解密所需程序由外部设备装入指令存储器中;实现程序执行控制,即根据程序执行的要求,自动地从指令存储器中逐条取出指令,送入指令译码器中译码;实现指令译码,即对取出的指令进行分析,确定指令中所包含的操作,并给出相应的控制信号,驱动相应的模块完成所需的操作等。所述可重构密码协处理器的控制电路,主要包括指令存储器和程序装载控制电路、程序执行控制电路和指令译码器。
文档编号G06F1/00GK2669241SQ200420038169
公开日2005年1月5日 申请日期2004年1月17日 优先权日2004年1月17日
发明者曲英杰, 刘卫东, 战嘉瑾 申请人:海信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1