嵌入式数字信号处理器中的零开销循环制造技术

技术编号:16755091 阅读:37 留言:0更新日期:2017-12-09 01:50
一种解码逻辑方法被安排成用于在嵌入式数字信号处理器(DSP)中执行零开销循环。在该方法中,从存储器中提取指令数据,并且从该指令数据得出的多个指令令牌存储在令牌缓冲器中。将来自该令牌缓冲器的一个或多个指令令牌的第一部分传递至第一解码模块,该第一解码模块可以是指令解码模块,并将来自该令牌缓冲器的一个或多个指令令牌的第二部分传递至第二解码模块,该第二解码模块可以是循环解码模块。该第二解码模块检测特殊循环指令令牌,并且基于对该特殊循环指令令牌的检测,有条件地测试循环计数器。使用该第一解码模块将迭代算法的至少一个指令令牌汇编至单条指令中,该单条指令在单个执行周期中是可执行的。基于对循环计数器的条件测试,该第一解码模块进一步将该迭代算法的循环分支指令汇编至在一个执行周期中可执行的单条指令中。

Zero overhead cycle in embedded digital signal processor

A decoding logic method is arranged to perform a zero overhead cycle in an embedded digital signal processor (DSP). In this method, the instruction data is extracted from the memory, and a plurality of instruction tokens obtained from the instruction data are stored in the token buffer. From the token buffer of one or more instructions in the first part of the first token passed to the decoding module, the decoding module can be the first instruction decoding module, the second part of one or more instructions and token from the token buffer transfer to second decoding module, the decoding module is second cycle decoding module. The second decoding module detects a special loop instruction token, and tests the cycle counter on a conditional basis, based on the detection of the special loop instruction token. The first decoding module is used to compile at least one instruction token of the iterative algorithm to a single instruction, which is executable in a single execution cycle. Based on the conditional test of the cyclic counter, the first decoding module further computes the cyclic branch instruction of the iterative algorithm to the executable single instruction in one execution cycle.

【技术实现步骤摘要】
嵌入式数字信号处理器中的零开销循环
本披露总体上涉及嵌入式数字信号处理器(DSP)。更具体地,但非排他地,本披露涉及嵌入式DSP中的零开销循环。
技术介绍
传统的嵌入式数字信号处理器(DSP)广泛用于工业应用、消费者应用、以及许多其他应用中。传统的嵌入式DSP专注于使支持更广泛的应用的专用数字算法加速。例如,传统的移动蜂窝电话可以包括应用处理器以控制用户界面、用于应用程序、多媒体的存储和分发等。在这些情况下,传统的移动蜂窝电话还将包括嵌入式DSP以用于移动无线电处理、图像处理、以及其他算法工作量大的功能。更确切地,嵌入式DSP用于实现快速傅里叶变换(FFT)、有限脉冲响应(FIR)滤波器、卷积油和编解码、以及更多。许多数字信号算法的一个共同特征是几百次、几千次、或甚至几百万次地重复执行少量的特定指令以得出单一结果。在背景部分中讨论的所有主题无需是现有技术并且不应当仅仅由于其在背景部分的讨论而被假定为是现有技术。据此,除非特别说明是现有技术,对在背景部分中所讨论的现有技术中存在的问题或与这种主题相关联的问题的任何认识不应该被看作现有技术。替代地,对在背景部分中的任何主题的讨论都应该被看做专利技术人解决具体问题的方法的一部分,其本身以及本质上也可以是有创造性的。
技术实现思路
使用具有解码逻辑的嵌入式DSP解决了使计数器减量、测试该计数器以及跳回循环的开始的控制指令的开销所造成的内核循环低效的问题,该解码逻辑将新的循环指令和正常指令组合并将两者作为单条指令一起执行。在处理器中,如数字信号处理(DSP)处理器,新的循环指令具有特殊格式,并且新的解码逻辑检测该新的循环指令。当检测到并执行新的循环指令被时,同时实施循环条件和有条件的跳回。新的循环指令与以前已知的正常指令合作,从而减小某些内核循环功能中的执行周期开销。本披露中的零开销循环架构包括指令编码的特殊结构以及一种检测下一个指令何时是零开销循环的具体部分。如果未检测到零开销循环指令,则新的解码逻辑将与传统处理器中一样逐一执行单条指令。可替代地,如果检测到零开销循环指令,则新的解码逻辑将组合两条指令并一起执行:比较指令和跳转指令。以此方式,加快了在嵌入式DSP中执行的内核循环。被安排成用于执行零开销循环的解码逻辑模块可以被总结为包括:提取逻辑模块;令牌缓冲器,所述令牌缓冲器耦接至所述提取逻辑模块并被安排成用于存储从所述提取逻辑模块传递的多个指令令牌;第一解码模块;第二解码模块;第一多路复用器,该第一多路复用器耦接在该令牌缓冲器与该第一解码模块之间并被安排成用于将多个指令令牌从该令牌缓冲器传递至该第一解码模块;第二多路复用器,该第二多路复用器耦接在该令牌缓冲器与该第二解码模块之间并被安排成用于将多个指令令牌从该令牌缓冲器传递至该第二解码模块;以及循环控制模块,该循环控制模块被安排成用于测试循环计数器并进一步被安排成用于与该第二解码模块检测特殊循环指令令牌合作更新该循环计数器,其中,该第一解码模块被安排成用于将迭代算法的至少一个指令令牌汇编至在单个执行周期中可执行的单条指令中,并且基于该循环控制模块测试所述循环计数器,该第一解码模块进一步被安排成用于将该迭代算法的循环分支指令汇编至该单个执行周期中可执行的该单条指令。可以用嵌入式数字信号处理器的内核模式执行迭代算法。该循环控制模块被安排成用于测试该循环计数器可以包括该循环控制模块被安排成用于将该循环计数器与零进行比较,并且其中,该循环控制模块被安排成进一步更新该循环计数器可以包括该循环控制模块被安排成用于使该循环计数器减量。解码逻辑模块可以进一步包括:令牌指针,该令牌指针被安排成用于指引多个指令令牌通过该第一多路复用器传递至该第一解码模块,该令牌指针进一步被安排成用于基于该循环控制模块对该循环控制器的测试来指引该特殊循环指令令牌通过该第一多路复用器传递至该第一解码模块。可以在单个时钟周期内完成单个执行周期。该解码逻辑模块可以安排在嵌入式数字信号处理器中。该第一解码模块可以被安排成用于选择将哪些指令令牌从该令牌缓冲器通过该第二多路复用器传递至该第二解码模块。执行零开销循环的解码逻辑方法可以被总结为包括:从存储器提取指令数据;将多个指令令牌存储在令牌缓冲器中,该多个指令令牌是从该指令数据中得到的;将一个或多个指令令牌中的至少第一部分从该令牌缓冲器传递至第一解码模块,该第一解码模块是指令解码模块;将一个或多个指令令牌中的至少第二部分从该令牌缓冲器传递至第二解码模块,该第二解码模块是循环解码模块;使用该第二解码模块检测特殊循环指令令牌;基于对该特殊循环指令令牌的检测,有条件地测试循环计数器;使用该第一解码模块将迭代算法的至少一个指令令牌汇编至在单个执行周期中可执行的单条指令中;并且基于对该循环计数器的条件测试,使用该第一解码模块进一步将该迭代算法的循环分支指令汇编至在一个执行周期中可执行的单条指令中。该特殊循环指令可以被安排成正好在该迭代算法的最后一个指令之后在该迭代算法中执行。解码逻辑方法可以进一步包括联合有条件地对该循环计数器进行测试来更新该循环计数器。更新该循环计数器可以包括使该循环计数器减量。解码逻辑方法可以包括:每次检测到特殊循环指令令牌时无条件地更新该循环计数器。有条件地测试该循环计数器可以包括将该循环计数器与零进行比较。该迭代算法可以与快速傅里叶变换(FFT)算法或有限脉冲响应(FIR)滤波器算法相关联。解码逻辑方法可以进一步包括在下一单个执行周期内执行单条指令。集成电路可以被总结为包括:被安排成用于执行零开销循环的解码逻辑模块,该解码逻辑包括:提取逻辑模块,该提取逻辑模块从存储器接收指令数据;令牌缓冲器,该令牌缓冲器被安排成用于存储从该指令数据检索的多个指令令牌;第一解码逻辑模块,该第一解码逻辑模块将一个或多个令牌汇编至单个指令中,该单个指令在单个执行周期内是可执行的;第二解码逻辑模块,该第二解码逻辑模块识别特殊循环指令令牌;第一多路复用器,该第一多路复用器将该一个或多个令牌中的至少一些令牌从该令牌缓冲器拷贝到该第一解码逻辑模块;第二多路复用器,该第二多路复用器将未来的特殊循环指令令牌拷贝到该第二解码逻辑模块,其中,在检测到该特殊循环指令令牌时,循环控制模块被安排成用于测试并修改循环计数器,并且其中,在检测到该循环计数器越过阈值时,该第一解码逻辑模块将循环分支指令汇编至该单条指令中。该集成电路可以被安排成为嵌入式数字信号处理器(DSP)。集成电路可以进一步包括:执行单元,该执行单元在一个执行周期内执行该单条指令,该单条指令被安排成用于实施至少两项操作,该至少两项操作中的第一操作是迭代循环中的最后操作,并且该至少两项操作中的第二操作是该迭代循环中的跳转操作。该第一解码逻辑可以被安排成用于将该一个或多个令牌汇编在该单个指令中,与该循环控制模块被安排成用于测试并修改该循环计数器的时间同时。该阈值可以是零。已提供了此简要概述来以简化的形式引入在以下详细说明书中进一步详细描述的某些概念。除非另外明确表述,否则本概述并不旨在标识所要求的主题的关键或必要特征,也不旨在限制或限定所要求保护的主题的范围。附图说明参照以下附图描述了非限制性且非穷尽的实施例,其中,除非另外指定,贯穿不同视图,类似的标号指代类似的部分。附本文档来自技高网...
嵌入式数字信号处理器中的零开销循环

【技术保护点】
一种被安排成用于执行零开销循环的解码逻辑模块,包括:提取逻辑模块;令牌缓冲器,所述令牌缓冲器耦接至所述提取逻辑模块并被安排成用于存储从所述提取逻辑模块传递的多个指令令牌;第一解码模块;第二解码模块;第一多路复用器,所述第一多路复用器耦接在所述令牌缓冲器与所述第一解码模块之间并被安排成用于将多个指令令牌从所述令牌缓冲器传递至所述第一解码模块;第二多路复用器,所述第二多路复用器耦接在所述令牌缓冲器与所述第二解码模块之间并被安排成用于将多个指令令牌从所述令牌缓冲器传递至所述第二解码模块;以及循环控制模块,所述循环控制模块被安排成用于测试循环计数器并进一步被安排成用于与所述第二解码模块检测特殊循环指令令牌合作更新所述循环计数器,其中,所述第一解码模块被安排成用于将迭代算法的至少一个指令令牌汇编至在单个执行周期中可执行的单条指令中,并且基于所述循环控制模块测试所述循环计数器,所述第一解码模块进一步被安排成用于将所述迭代算法的循环分支指令汇编至所述单个执行周期中可执行的所述单条指令。

【技术特征摘要】
1.一种被安排成用于执行零开销循环的解码逻辑模块,包括:提取逻辑模块;令牌缓冲器,所述令牌缓冲器耦接至所述提取逻辑模块并被安排成用于存储从所述提取逻辑模块传递的多个指令令牌;第一解码模块;第二解码模块;第一多路复用器,所述第一多路复用器耦接在所述令牌缓冲器与所述第一解码模块之间并被安排成用于将多个指令令牌从所述令牌缓冲器传递至所述第一解码模块;第二多路复用器,所述第二多路复用器耦接在所述令牌缓冲器与所述第二解码模块之间并被安排成用于将多个指令令牌从所述令牌缓冲器传递至所述第二解码模块;以及循环控制模块,所述循环控制模块被安排成用于测试循环计数器并进一步被安排成用于与所述第二解码模块检测特殊循环指令令牌合作更新所述循环计数器,其中,所述第一解码模块被安排成用于将迭代算法的至少一个指令令牌汇编至在单个执行周期中可执行的单条指令中,并且基于所述循环控制模块测试所述循环计数器,所述第一解码模块进一步被安排成用于将所述迭代算法的循环分支指令汇编至所述单个执行周期中可执行的所述单条指令。2.根据权利要求1所述的解码逻辑模块,其中,以嵌入式数字信号处理器的内核模式执行所述迭代算法。3.根据权利要求1所述的解码逻辑模块,其中,所述循环控制模块被安排成用于测试所述循环计数器包括所述循环控制模块被安排成用于将所述循环计数器与零进行比较,并且其中,所述循环控制模块被安排成用于进一步更新所述循环计数器包括所述循环控制模块被安排成用于使所述循环计数器减量。4.根据权利要求1所述的解码逻辑模块,包括:令牌指针,所述令牌指针被安排成用于指引多个指令令牌通过所述第一多路复用器传递至所述第一解码模块,所述令牌指针进一步被安排成用于基于所述循环控制模块对所述循环控制器的测试来指引所述特殊循环指令令牌通过所述第一多路复用器传递至所述第一解码模块。5.根据权利要求1所述的解码逻辑模块,其中,在单个时钟周期内完成所述单个执行周期。6.根据权利要求1所述的解码逻辑模块,其中,所述解码逻辑模块被安排在嵌入式数字信号处理器中。7.根据权利要求1所述的解码逻辑模块,其中,所述第一解码模块被安排成用于选择将哪些指令令牌从所述令牌缓冲器通过所述第二多路复用器传递至所述第二解码模块。8.一种用于执行零开销循环的解码逻辑方法,包括:从存储器提取指令数据;将多个指令令牌存储在令牌缓冲器中,所述多个指令令牌是从所述指令数据中得到的;将一个或多个指令令牌中的至少第一部分从所述令牌缓冲器传递至第一解码模块,所述第一解码模块是指令解码模块;将一个或多个指令令牌中的至少第二部分从所述令牌冲缓器传递至第二解码模块,所述第二解码模块是循环解码模块;使用所述第二解码模块检测特殊循环指令令牌;基于对所述特殊循环指令令牌的所述检测,有条件地测试循环计数器;使用所述第一解...

【专利技术属性】
技术研发人员:朱鹏飞焦小康
申请(专利权)人:世意法北京半导体研发有限责任公司
类型:发明
国别省市:北京,11

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

1