一种智能芯片架构和高效处理数据的方法技术

技术编号:30371052 阅读:19 留言:0更新日期:2021-10-16 17:50
本发明专利技术公开了一种智能芯片架构,包括:模拟转数字单元、整型转浮点数单元、浮点运算单元、存储单元、算术逻辑单元、数据传输控制单元以及总线阵列控制单元;模拟转数字单元与整型转浮点数单元连接;整型转浮点数单元与总线阵列控制单元连接,并与数据传输控制单元连接;浮点运算单元与总线阵列控制单元连接;存储单元与总线阵列控制单元连接,并与数据传输控制单元连接;算术逻辑单元与数据传输控制单元连接;数据传输控制单元还与总线阵列控制单元连接。本发明专利技术减少总线的等待周期,降低总线拥塞,提高数据处理的吞吐量和数据处理效率;双数据总线和双地址总线的模式可以有效降低智能芯片架构的流水线长度,简化架构设计,且消耗的时钟周期变短。时钟周期变短。时钟周期变短。

【技术实现步骤摘要】
一种智能芯片架构和高效处理数据的方法


[0001]本专利技术属于计算机
,具体涉及一种智能芯片架构和高效处理数据的方法。

技术介绍

[0002]MCU(Microcontroller Unit,微控制单元),又可简称μC,或被称为单芯片处理器架构(Single Chip Microcontroller),通过将ROM(Read

Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)、CPU(central processing unit,中央处理器)、I/O(Input/Output,输入输出接口)集合在同一芯片中,为不同的应用场合做不同组合控制,以形成不同的智能芯片架构。现有的智能芯片架构主要存在以下缺陷:
[0003](1)在数字信号处理中,为了保证计算的精度,或者算法的收敛,往往都需要用到浮点运算;而随着多媒体数字技术的发展和人工智能的兴起,MCU对于浮点运算的需求逐渐增加,例如在MP3和无人机等领域中使用的数字滤波和图像压缩,以及在人工智能领域中的训练学习等,都需要用到大量的浮点运算。
[0004]在做浮点乘法时,整形和浮点型数据是不能进行计算的,需要把整型数据转换成浮点型数据,在通用的MCU设计中,一般整型数据转浮点型数据都需要软件来实现,而这可能需要几十条指令周期来实现,对于实时性要求比较高的应用场景,可能会导致信号处理抖动或延迟,从而导致输出信号失真,例如在麦克风阵列中对多输入的音频进行实时采集和数字滤波,为了实现实时性的目的,往往需要MCU具有较高的运行频率,而芯片的功耗和频率的平方成正比,一味增加芯片的主频会导致芯片的功耗较高。
[0005]此外,对于浮点乘法运算,也有采用定点乘法的方式和利用单指令硬件浮点乘法器的方式。其中,定点乘法的方式存在数据的表示范围和精度都受不同程度的影响,通用性不强的缺陷;而单指令硬件浮点乘法器的方式存在需要将数据送入到处理器内核逻辑处理单元的寄存器中、需要加入多级流水线架构和多条数据总线、通用性较差以及成本较高的缺陷。
[0006](2)处理器数据运算可分为单目运算、双目运算和三目运算。现有的MCU通常采用单数据总线和地址总线设计,在存储器和算术逻辑单元间一次只能搬运一目数据,芯片通过流水线架构设计方式可以依次搬运双目数据到达算术逻辑单元进行运算,从而实现单指令周期的双目运算。然而,当需要将数据回写内存或访问内存数据的时候,流水线需要中断或者等待,实质上是无法实现单周期指令,或者更高的执行效率。而这类架构无法适用于大数据量的并发传输和处理。
[0007]此外,由于受制于总线带宽的设计,例如从外设到内存、内存到内存、内存到外设间的大数据量访问或者DMA(Direct Memory Access,直接存储器访问))传输,往往需要总线的总裁进行分配,防止DMA占用过长时间导致CPU空闲等待,或者CPU长时间占用总线,使得外设的数据不能及时传输到内存造成数据被新的数据覆盖,为了解决这一问题,现有技术利用增加流水线的长度来提高指令的执行效率,但流水线越长,芯片架构的设计就越复
杂,也越容易造成流水线死锁而需要进行强制等待或者清除流水线,且重新建立流水线需要消耗一定的时钟周期,如果频繁地清除又建立流水线,芯片的执行效率反而降低。

技术实现思路

[0008]本专利技术的目的是提供一种智能芯片架构和高效处理数据的方法,用于解决现有技术中存在的至少一个问题。
[0009]为了实现上述目的,本专利技术采用以下技术方案:
[0010]第一方面,本专利技术提供一种智能芯片架构,包括:模拟转数字单元、整型转浮点数单元、浮点运算单元、存储单元、算术逻辑单元、数据传输控制单元以及总线阵列控制单元;
[0011]所述模拟转数字单元与所述整型转浮点数单元连接;
[0012]所述整型转浮点数单元通过第一双数据总线与所述总线阵列控制单元连接,并通过第一信号总线与所述数据传输控制单元连接;
[0013]所述浮点运算单元通过第二双数据总线与所述总线阵列控制单元连接;
[0014]所述存储单元通过第三双数据总线与所述总线阵列控制单元连接,并通过第一双地址总线和第一控制总线与所述数据传输控制单元连接;
[0015]所述算术逻辑单元通过第四双数据总线和第二信号总线与所述数据传输控制单元连接;
[0016]所述数据传输控制单元还通过第五双数据总线、第二双地址总线以及第二控制总线与所述总线阵列控制单元连接。
[0017]在一种可能的设计中,还包括若干外设单元,每一所述外设单元通过第六双数据总线和第三双地址总线与所述总线阵列控制单元连接。
[0018]在一种可能的设计中,每一所述外设单元包括配置寄存器,所述外设单元通过所述第三双地址总线选中对应的所述配置寄存器,并通过所述第六双数据总线获取所述配置寄存器的配置参数。
[0019]在一种可能的设计中,所述存储单元包括随机存储子单元和非易失性存储子单元。
[0020]在一种可能的设计中,所述总线阵列控制单元包括传输门或三态总线缓冲器。
[0021]在一种可能的设计中,所述数据传输控制单元用于:
[0022]产生控制所述智能芯片架构运作的运作时序;
[0023]通过所述第二控制总线向所述总线阵列控制单元传输第一控制信号;
[0024]取指令、译码、通过所述第四数据总线将数据传输到所述算术逻辑单元执行数据运算以及通过所述第一双地址总线将数据回写至所述存储单元;
[0025]通过所述第一控制总线向所述存储单元传输第二控制信号,以选择所述第三双数据总线的数据传输通道以及所述第一双地址总线的地址传输通道。
[0026]在一种可能的设计中,所述总线阵列控制单元用于:
[0027]接收所述第一控制信号,并根据所述第一控制信号进行各数据总线间和/或各地址总线间的切换。
[0028]在一种可能的设计中,所述整型转浮点数单元用于:
[0029]通过所述第一信号总线接收所述数据传输控制单元的第三控制信号;
[0030]根据所述第三控制信号选择所述第一双数据总线的输入数据;
[0031]接收所述模拟转数字单元的整型数据;
[0032]对接收的数据进行数据转换,并通过所述第一双数据总线将转换后的数据经过所述总线阵列控制单元传输至对应的单元。
[0033]在一种可能的设计中,所述算术逻辑单元用于:
[0034]对通过所述第四双数据总线接收的数据进行算术运算,并通过所述第二信号总线进行状态标示。
[0035]第二方面,本专利技术提供一种高效处理数据的方法,所述方法应用如第一方面任意一种可能的设计中所述的微处理架构提高数据处理的效率。
[0036]有益效果:
[0037]1.本专利技术采用双数据总线和双地址总线的设计,所述数据传输控制单元根据计算机系统的指令或者所述总线阵列控制单元的工作状态,通过所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种智能芯片架构,其特征在于,包括:模拟转数字单元、整型转浮点数单元、浮点运算单元、存储单元、算术逻辑单元、数据传输控制单元以及总线阵列控制单元;所述模拟转数字单元与所述整型转浮点数单元连接;所述整型转浮点数单元通过第一双数据总线与所述总线阵列控制单元连接,并通过第一信号总线与所述数据传输控制单元连接;所述浮点运算单元通过第二双数据总线与所述总线阵列控制单元连接;所述存储单元通过第三双数据总线与所述总线阵列控制单元连接,并通过第一双地址总线和第一控制总线与所述数据传输控制单元连接;所述算术逻辑单元通过第四双数据总线和第二信号总线与所述数据传输控制单元连接;所述数据传输控制单元还通过第五双数据总线、第二双地址总线以及第二控制总线与所述总线阵列控制单元连接。2.根据权利要求1所述的智能芯片架构,其特征在于,还包括若干外设单元,每一所述外设单元通过第六双数据总线和第三双地址总线与所述总线阵列控制单元连接。3.根据权利要求2所述的智能芯片架构,其特征在于,每一所述外设单元包括配置寄存器,所述外设单元通过所述第三双地址总线选中对应的所述配置寄存器,并通过所述第六双数据总线获取所述配置寄存器的配置参数。4.根据权利要求1所述的智能芯片架构,其特征在于,所述存储单元包括随机存储子单元和非易失性存储子单元。5.根据权利要求1所述的智能芯片架构,其特征在于,所述总线阵列控制单元包括传输门或三态总线缓冲器。6.根据权利要求1...

【专利技术属性】
技术研发人员:宋大为
申请(专利权)人:河南亿秒电子科技有限公司
类型:发明
国别省市:

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

1