基于传输触发结构体系的专用指令集处理器制造技术

技术编号:13188435 阅读:60 留言:0更新日期:2016-05-11 17:49
本发明专利技术公开了一种基于传输触发结构体系TTA的专用指令集处理器。主要解决传统传输触发结构体系TTA的结构复杂和扩展性差的问题。其由两个运算和比较复合单元、逻辑运算单元、移位运算单元、乘和乘累加复合单元、寄存器文件、程序存储单元、数据输入和输出存储单元及数据交换网络组成。其中,两个运算和比较复合单元均采用复用同一个加法器;乘和乘累加复合单元采用复用同一个乘法器;数据输入和输出存储单元均采用双页面的存储器缓存数据;数据交换网络采用多端口寄存器堆结构。本发明专利技术能根据具体应用对功能单元进行删减或添加,具有较强的设计重复利用性及较低的设计复杂度,可用于数字信号处理系统中进行数据的高速并行实时处理。

【技术实现步骤摘要】

本专利技术属于数字信号处理
,更进一步涉及一种专用指令集处理器,可应用于数字信号处理系统中进行数据的高速并行实时处理。
技术介绍
传输触发结构体系TTA由Corporaal等人提出,其核心思想是利用数据传输来触发操作,即任何数据通过交换网络写入功能单元的特定寄存器的同时会触发一次相应功能单元的操作。传统的基于传输触发结构体系TTA架构的处理器由功能单元通过交换网络连接组成,功能单元包括算术运算单元、比较单元、逻辑运算单元、移位运算单元、乘法单元、乘累加单元、寄存器文件、程序存储单元、数据存储单元。传统传输触发结构体系TTA结构的交换网络是由总线组成的,结构复杂、不规整、扩展性差;算术运算单元与比较单元以及乘法单元与乘累加单元通常分立设计,造成电路资源浪费,功耗增加。数据存储单元采用普通的操作方式,吞吐率低。传统TTA结构对长立即数的处理通常有两种方式,如图1所示,一种是在指令头增加一个长立即数标志LIT用于指定长立即数的位置,另一种是在指令尾增加显式立即数插槽,无论哪种方法都使得指令格式变长,造成程序存储器增大,电路资源和功耗随之增加。
技术实现思路
本专利技术的目的在于提出一种基于传输触发结构体系的专用指令集处理器,以解决传统传输触发结构体系TTA结构复杂、不规整、扩展性差,及算数运算单元和比较单元分立设计造成的电路资源浪费和功耗高的问题。—种基于传输触发结构体系TTA的专用指令集处理器,包括:算术运算单元:用于实现操作数的加、减法运算;比较单元:用于比较两个有符号数的大小;乘法单元:用于实现两个有符号数的乘法运算;乘累加单元:用于实现乘累加运算;逻辑运算单元:用于实现操作数的各种逻辑运算;移位运算单元:用于实现移位操作运算;寄存器文件:用于实现数据的暂存功能;程序存储单元:用于存储处理器的指令,并且根据指令地址指针输出处理器将要执行的指令;数据输入存储单元:用于高速缓存系统内的局部数据和外部的输入数据;数据输出存储单元:用于高速缓存系统内的局部数据和处理后的数据;数据交换网络:用于与上述各功能单元进行连接,以及根据程序存储单元输出的指令,使数据在各功能单元之间进行传输,并当数据传输到某个功能单元时,触发该功能单元进行运算;其特征在于:算术运算单元与比较单元,复用同一个加法器;乘法单元和乘累加单元,复用同一个乘法器;数据输入存储单元和数据输出存储单元,均采用双页面乒乓操作的双端口存储器构成;程序存储单元中存储的处理器指令,包括有4条子指令,且最后一条子指令的字段与长立即数字段复用,当指令中有长立即数参与运算时,最后一个子指令再进行译码。数据交换网络,采用多端口寄存器堆的连接结构,对处理器中的所有功能单元进行连接;本专利技术与现有技术相比具有以下优点:第一,由于本专利技术在设计交换网络时采用基于多端口寄存器堆的方式,克服了现有技术中采用总线方式所造成的结构复杂、不规整和扩展性差的不足,使得交换网络设计简单、结构规整。该交换网络不仅具有交换数据的功能,还具有数据暂存的功能。第二,由于本专利技术的算术运算单元与比较单元复用同一个加/减法器,克服了现有技术中算术运算单元和比较单元因分立设计所造成的电路资源浪费的不足,使得处理器系统的电路资源利用率提升。第三,由于本专利技术的处理器指令格式中的最后一条子指令字段与长立即数字段复用,克服了现有技术中因处理长立即数所造成的指令字变长,指令存储器增大的不足,使得处理器指令格式规整,有效减少指令存储器大小,降低功耗。第四,本专利技术的处理器系统中的功能单元可以根据具体应用进行删减或增加,能够提尚电路资源的利用效率。第五,由于本专利技术的数据输入和输出存储器均采用双页面的存储器结构,因而具有很高的数据接口带宽并能够实现数据的高速存取与交换。【附图说明】图1为传统传输触发结构体系TTA结构指令格式;图2为本专利技术的整体结构示意图;图3为本专利技术中的算术运算单元与比较器复用的结构示意图;图4为本专利技术的乘与乘累加复用的结构示意图。图5为本专利技术的处理器指令格式示意图。图6为本专利技术中的交换网络结构示意图;【具体实施方式】下面结合附图对本专利技术做进一步的详细描述。本专利技术设计的处理器由不同的功能单元通过数据交换网络10连接而成,如图2所示。功能单元包括第一运算和比较复合单元1、第二运算和比较复合单元2、逻辑运算单元3、移位运算单元4、乘和乘累加复合单元5、寄存器文件6、程序存储单元7、数据输入存储单元8和数据输出存储单元9。除寄存器文件外,上述每一个功能单元都包括操作数寄存器、触发寄存器和结果寄存器。操作数寄存器用于存储功能单元的一个操作数,触发寄存器用于存储功能单元的另一个操作数,只有当触发寄存器有新值时,功能单元才会运算,并且把运算结果存到结果寄存器中。所述两个运算与比较复合单元I和2,均采用复用同一个加法器,如图3所示,其用于实现对算术运算单元和比较单元的合并,每一个算术运算单元和比较单元均完成加法操作、减法操作以及比较操作。用该运算与比较复合单元进行加法操作,是用加法器直接进行加法运算;用该运算与比较复合单元进行减法操作,是将操作数2取反后加I,然后与操作数I相加;用该运算与比较复合单元进行比较操作,是将操作数I减去操作数2,然后将结果与零比较。当进行算术运算时,根据操作码产生相应操作的算术运算结果,此时比较结果不变;当进行比较运算时,根据操作码产生相应的减法算术运算结果和比较结果。所述的逻辑运算单元3,是直接采用与、或、非和异或门电路,完成相应的与、或、非和异或逻辑运算。所述的移位运算单元4,采用桶形移位器,完成逻辑左移、逻辑右移和算术右移运笪并ο所述的寄存文件6,采用16个通用寄存器,完成数据暂存功能。所述的乘和乘累加复合单元5,复用同一个乘法器,如图4所示,其用于实现乘法单元和乘累加单元合并,完成乘操作和乘累加操作。用该乘和乘累加单元进行乘法操作,是运用现场可编程门阵列FPGA内部的专用乘法器单元直接进行乘法运算,这样能够提高乘法运算的速度;用该乘和乘累加单元进行乘累加操作,是采用流水线的方式,将乘到的结果存入中间寄存器中,然后再根据指令要求选择数据进行加法运算。所述的数据输入存储单元8和输出存储单元9,均采用双页面乒乓操作的双端口存储器构建。双页面乒乓操作的双端口存储器,是由两个单端口存储器构成,用页面控制信号分别控制两个单端口的处理数据,当处理第一个单端口存储器里的数据时,后续的数据输入到第二个单端口存储器里;当处理第二个单端口存储器里面的数据时,后续的数据输入到第一个单端口存储器。用这种形式构建的存储器与外界交换原始数据和处理的结果数据时,能够达到极高的数据率,从而保证数据输入/输出的连续性。所述的程序存储器7,用于存储处理器的指令,并且根据指令的地址指针输出将要执行的下一条指令,完成指令顺序执行操作、指令的无条件跳转操作以及指令的有条件跳转操作。用该程序存储器进行指令顺序执行操作,是通过当前指令地址得到紧接者当前指令的下一条指令地址;用该程序存储器进行指令的无条当前第1页1 2 本文档来自技高网...

【技术保护点】
一种基于传输触发结构体系TTA的专用指令集处理器,包括:算术运算单元:用于实现操作数的加、减法运算;比较单元:用于比较两个有符号数的大小;乘法单元:用于实现两个有符号数的乘法运算;乘累加单元:用于实现乘累加运算;逻辑运算单元:用于实现操作数的各种逻辑运算;移位运算单元:用于实现移位操作运算;寄存器文件:用于实现数据的暂存功能;程序存储单元:用于存储处理器的指令,并且根据指令地址指针输出处理器将要执行的指令;数据输入存储单元:用于高速缓存系统内的局部数据和外部的输入数据;数据输出存储单元:用于高速缓存系统内的局部数据和处理后的数据;数据交换网络:用于与上述各功能单元进行连接,以及根据程序存储单元输出的指令,使数据在各功能单元之间进行传输,并当数据传输到某个功能单元时,触发该功能单元进行运算;其特征在于:算术运算单元与比较单元,复用同一个加法器构成;乘法单元和乘累加单元,复用同一个乘法器;数据输入存储单元和数据输出存储单元,均采用双页面乒乓操作的双端口存储器构成;程序存储单元中存储的处理器指令,包括有4条子指令,且最后一条子指令的字段与长立即数字段复用,当指令中有长立即数参与运算时,最后一个子指令不在进行译码数据交换网络,采用多端口寄存器堆的连接结构,实现处理器中的所有功能单元间的数据传输与交换。...

【技术特征摘要】

【专利技术属性】
技术研发人员:张犁徐欣冉李杰李甫石光明
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1