数据空间仲裁器的制作方法

文档序号:6349398阅读:213来源:国知局
专利名称:数据空间仲裁器的制作方法
技术领域
本发明涉及数字处理器,且更特定来说涉及数字处理器中的数据仲裁器优先级控制系统。
背景技术
在使用具有多个外围装置及一中央处理单元(CPU)的数字处理器(例如,微控制器)的嵌入式系统中,在CPU与外围设备中的至少一些之间共享某些功能单元,例如直接存储器存取(DMA)控制器或内部电路调试(ICD)控制器。因此,使用数据空间仲裁器来确定对所共享的存储器或特殊功能寄存器的存取权利。在用于多主控器系统的数据空间仲裁器中,CPU通常为最高优先级总线主控器。典型的数据空间仲裁器由一优先级编码器及一组数据总线多路复用器组成。常规可编程数据空间仲裁器在优先级编码器中实施可编程能力, 但使用预定优先级,其中CPU通常具有最高优先级。因此,每当CPU正在存取存储器时,通常使其它外围设备停转。然而,在嵌入式系统中,举例来说,有时仅仅是临时地由外围设备对外部事件做出响应因而确保高CPU吞吐量可更重要。因此,需要一种经改善的更灵活数据空间仲裁器。

发明内容
根据一实施例,一种数字处理器可包含在默认模式中具有最高优先级的默认总线主控器;具有相关联优先级的多个次级总线主控器,其中所述多个次级总线主控器彼此具有预定优先级关系;及数据空间仲裁器,其中所述数据空间仲裁器可编程以在非默认模式中将所述次级总线主控器中的任一者的优先级升高为具有高于所述默认总线主控器的所述优先级的优先级,同时仅与也已将其所述优先级等级升高为高于所述默认总线主控器的所述优先级的那些次级总线主控器维持所述预定优先级关系。根据其它实施例,所述数据空间仲裁器可准予对数据存储器的存取且所述数据存储器可包含随机存取存储器、双端口存储器、特殊功能寄存器中的至少一者。根据其它实施例,所述数字处理器可进一步包含具有优先级超驰位的总线主控器优先级寄存器,所述次级总线主控器中的至少一者被指派到所述优先级超驰位中的一者,其中所述总线主控器优先级寄存器以可编程方式指定所述多个次级总线主控器中的哪些次级总线主控器具有高于或低于所述默认总线主控器优先级的优先级。根据其它实施例,设定优先级超驰位可致使将相关联次级总线主控器的优先级等级升高为高于所述默认总线主控器的所述优先级等级。根据其它实施例,所述数据空间仲裁器可包含用于读取及写入存取的单独仲裁器单
4元。根据其它实施例,所述数据空间仲裁器包含用于存储器及特殊功能寄存器存取的单独仲裁器单元。根据其它实施例,所述数据空间仲裁器可包含用于存储器及特殊功能寄存器存取的单独仲裁器单元。根据其它实施例,所述数字处理器可进一步包含耦合于所述数据空间仲裁器与所述数据存储器之间的地址解码器。根据其它实施例,所述数字处理器可进一步包含耦合于所述数据空间仲裁器与所述默认总线主控器或次级总线主控器之间的粗略地址解码器。根据其它实施例,所述数字处理器可为数字信号处理器且所述随机存取存储器可分裂成X存储器与Y存储器。根据其它实施例,所述默认总线主控器可为中央处理单元(CPU)。根据另一实施例,一种用于在数字处理器中仲裁数据空间存取的方法可包含给一默认总线主控器及多个次级总线主控器指派优先级,其中所述默认总线主控器在默认模式中具有最高优先级且其中所述多个次级总线主控器彼此具有预定优先级关系;及对数据空间仲裁器进行编程以在非默认模式中将所述次级总线主控器中的任一者的优先级升高为具有高于所述默认总线主控器的所述优先级的优先级,同时仅与也已将其所述优先级等级升高为高于所述默认总线主控器的所述优先级的那些次级总线主控器维持所述预定优先级关系。根据所述方法的其它实施例,所述方法可进一步包含当所述默认总线主控器能存取数据空间时由次级总线主控器请求对所述数据空间的存取,且在所述次级总线主控器的所述优先级高于所述默认总线主控器的所述优先级的情况下,准予对所述数据空间的存取,否则使所述次级总线主控器停转。根据所述方法的其它实施例,所述数据空间可为数据存储器,所述数据存储器包含随机存取存储器、双端口存储器、特殊功能寄存器中的至少一者。根据所述方法的其它实施例,编程数据空间仲裁器以升高所述次级总线主控器的优先级的所述步骤可包含设定总线主控器优先级寄存器中的位的步骤。根据所述方法的其它实施例,所述次级总线主控器中的至少一者可在所述总线主控器优先级寄存器中具有相关联位。根据所述方法的其它实施例,所述数据空间仲裁器可包含用于读取及写入存取的单独仲裁器单元。根据所述方法其它实施例,所述数据空间仲裁器可包含用于存储器及特殊功能寄存器存取的单独仲裁器单元。根据所述方法其它实施例,所述数据空间仲裁器可包含用于存储器及特殊功能寄存器存取的单独仲裁器单元。根据又一实施例,一种用于在数字处理器中仲裁数据空间存取的方法可包含在默认模式中给中央处理单元(CPU)指派最高优先级且给多个非CPU总线主控器指派其它优先级,其中所述多个非CPU总线主控器彼此具有预定固定优先级关系;通过设定总线主控器优先级寄存器中的位来编程数据空间仲裁器以将所述非CPU总线主控器中的一者的优先级升高为具有高于所述CPU的所述优先级的优先级,同时仅与也已将其所述优先级等级升高为高于所述CPU的所述优先级的那些非CPU总线主控器维持所述预定优先级关系;及当所述CPU能存取数据空间时请求由总线主控器对所述数据空间的存取,且在所述总线主控器的所述优先级高于所述CPU的所述优先级的情况下,准予对所述数据空间的存取,否则使所述总线主控器停转,其中所述数据空间为数据存储器,所述数据存储器包含随机存取存储器、双端口存储器、特殊功能寄存器中的至少一者。


通过结合附图参照下文说明可获得对本发明及其优点的更全面理解,附图中图1展示微控制器系统中的数据空间仲裁器、总线多路复用器及地址解码器的框图;图2展示根据一实施例的数个总线主控器的总线仲裁器优先级表;图3展示根据一实施例的仲裁器读取框图;图4展示根据一实施例的仲裁器写入框图;图5展示根据一实施例的仲裁器互连框图;图6及图7展示根据一实施例的四个总线主控器的RAM仲裁器实例性真值表;图8展示RAM仲裁器时序实例,其中CPU具有最高优先级;图9展示RAM仲裁器时序实例,其中CPU不具有最高优先级;图10展示根据一实施例的SFR仲裁器互连框图;及图11展示SFR仲裁器时序实例,其中CPU具有最高优先级。虽然已参照本发明的实例性实施例来描绘、描述及界定本发明的各实施例,但此类参考并不意味着限制本发明,且不应推断出存在此限制。所揭示的标的物能够在形式及功能上具有大量修改、替代及等效形式,所属领域的技术人员根据本发明将会联想到这些修改、替代及等效形式并受益于本发明。所描绘及所描述的本发明实施例仅作为实例,而并非是对本发明的范围的穷尽性说明。
具体实施例方式根据各种实施例,数据空间仲裁器经设计以允许相对于在默认模式中具有最高优先级的总线主控器(在下文中称为“默认主控器”)的优先级升高任何总线主控器的优先级,从而增加数字处理器系统中的实时响应灵活性。此可通过维持经升高总线主控器仅与也已将其优先级等级升高为高于默认主控器的优先级的那些总线主控器之间的预定优先级关系而以简易方式完成。因此,每一总线主控器的优先级等级的复杂重新指派是不必要的。根据本发明的教示,每一总线主控器(除默认主控器以外)可选择超驰此优先级。如果默认主控器为CPU,那么因此可(举例来说)通过用户定义的可编程优先级超驰位来将任何(非CPU)总线主控器优先级定义为高于或低于CPU的优先级。然而,高于默认主控器的优先级群组内的所有总线主控器的相对优先级经设计而不改变。类似地,低于默认主控器的优先级群组内的所有总线主控器的相对优先级不改变。举例来说,通过使用多路复用器基于优先级超驰位的状态来将传入总线主控器请求简单地重新排序。接着将其发送到简单的固定优先级编码器且像往常一样排定优先级。接着(举例来说)再次使用优先级超驰位的状态将所得总线准予信号重映射回到其原始次序,且准予获胜总线主控器进行总线存取。使所有其它总线主控器停转。图1展示具有三个不同总线主控器(CPU 110、内部电路调试器(I⑶)单元105及直接存储器存取(DMA)控制器11 的数字信号处理器100的原理性框图。然而,如所属领域的技术人员将了解,具有通用处理器及不同总线主控器的其它配置可适用。粗略地址解码器120与这些总线主控器耦合以决定请求命中随机存取存储器(RAM)还是特殊功能寄存器(SFR)。此粗略地址解码器产生多个输出信号,其与相应专用读取仲裁器130及140以及专用写入仲裁器135及145耦合。RAM仲裁器130、135与面板级地址解码器耦合以存取两个单独静态随机存取存储器(SRAM) 170及175。另外,提供双端口(DP)SRAM 180,其一方面与地址解码器160的输出耦合且另一方面与特殊粗略地址解码器190耦合,特殊粗略地址解码器190可为粗略地址解码器120的部分或与其相关联。所有存储器装置170、175 及180的输出经由各个多路复用器125、150、155及185与不同总线主控器110、105、115耦合。外围装置接口 165可直接经由多路复用器185与I⑶单元105耦合。然而,如上文所提及,根据各种实施例可使用其它存储器配置,举例来说,可将单个存储器与通用处理器一同使用。此外,在数字信号处理器或微控制器的此特定实施例中,提供用于RAM及SFR的单独仲裁器。此外,在每一仲裁器内,提供单独的仲裁器或读取130、140及写入存取135、145。 然而,可使用其它设计且实际仲裁器的数目可变化。举例来说,可使用单个仲裁器来提供相同功能性。根据各种实施例,仲裁器可由不同总线主控器配置。此可“在飞行中”进行,换句话说,用户程序可根据装置嵌入于其中的系统的相应需要来更改配置。图2展示在其中数字处理器与(举例来说)五个总线主控器(例如,在默认模式中为最高优先级总线主控器的CPU及多个次级总线主控器,例如以太网单元、USB单元、DMA控制器及I⑶单元)相关联的可能实施方案的情况下的表。此简单方案易于扩展以添加更多总线主控器或使用更少总线主控器,且不依赖于较大、可能较慢的可编程优先级编码器。根据一个实施例,所述系统可并非为完全可编程解决方案,因为每一群组内的总线主控器相对优先级可保持固定。举例来说,此可通过设定如图1中所示与仲裁器130、135、140及145耦合的特殊功能寄存器 MSTRPR 195中的相应位来完成。MSTRPR寄存器195可配置如下上半部
权利要求
1.一种数字处理器,其包含在默认模式中具有最高优先级的默认总线主控器;具有相关联优先级的多个次级总线主控器,其中所述多个次级总线主控器彼此具有预定优先级关系;及数据空间仲裁器,其中所述数据空间仲裁器可编程以在非默认模式中将所述次级总线主控器中的任一者的优先级升高为具有高于所述默认总线主控器的所述优先级的优先级, 同时仅与也已将其所述优先级等级升高为高于所述默认总线主控器的所述优先级的那些次级总线主控器维持所述预定优先级关系。
2.根据权利要求1所述的数字处理器,其中所述数据空间仲裁器准予对数据存储器的存取,且其中所述数据存储器包含随机存取存储器、双端口存储器及特殊功能寄存器中的至少一者。
3.根据权利要求1所述的数字处理器,其进一步包含具有优先级超驰位的总线主控器优先级寄存器,所述次级总线主控器中的至少一者被指派到所述优先级超驰位中的一者, 其中所述总线主控器优先级寄存器以可编程方式指定所述多个次级总线主控器中的哪些次级总线主控器具有高于或低于所述默认总线主控器优先级的优先级。
4.根据权利要求3所述的数字处理器,其中设定优先级超驰位致使将相关联次级总线主控器的优先级等级升高为高于所述默认总线主控器的所述优先级等级。
5.根据权利要求1所述的数字处理器,其中所述数据空间仲裁器包含用于读取及写入存取的单独仲裁器单元。
6.根据权利要求1所述的数字处理器,其中所述数据空间仲裁器包含用于存储器及特殊功能寄存器存取的单独仲裁器单元。
7.根据权利要求5所述的数字处理器,其中所述数据空间仲裁器包含用于存储器及特殊功能寄存器存取的单独仲裁器单元。
8.根据权利要求2所述的数字处理器,其进一步包含耦合于所述数据空间仲裁器与所述数据存储器之间的地址解码器。
9.根据权利要求1所述的数字处理器,其进一步包含耦合于所述数据空间仲裁器与所述默认总线主控器或次级总线主控器之间的粗略地址解码器。
10.根据权利要求2所述的数字处理器,其中所述数字处理器为数字信号处理器,且所述随机存取存储器分裂成X存储器与Y存储器。
11.根据权利要求1所述的数字处理器,其中所述默认总线主控器为中央处理单元CPU。
12.一种用于在数字处理器中仲裁数据空间存取的方法,其包含给一默认总线主控器及多个次级总线主控器指派优先级,其中所述默认总线主控器在默认模式中具有最高优先级,且其中所述多个次级总线主控器彼此具有预定优先级关系; 及对数据空间仲裁器进行编程以在非默认模式中将所述次级总线主控器中的任一者的优先级升高为具有高于所述默认总线主控器的所述优先级的优先级,同时仅与也已将其所述优先级等级升高为高于所述默认总线主控器的所述优先级的那些次级总线主控器维持所述预定优先级关系。
13.根据权利要求12所述的方法,其进一步包含当所述默认总线主控器能存取数据空间时请求由次级总线主控器对所述数据空间的存取,且在所述次级总线主控器的所述优先级高于所述默认总线主控器的所述优先级的情况下,准予对所述数据空间的存取,否则使所述次级总线主控器停转。
14.根据权利要求12所述的方法,其中所述数据空间为数据存储器,所述数据存储器包含随机存取存储器、双端口存储器及特殊功能寄存器中的至少一者。
15.根据权利要求12所述的方法,其中所述对数据空间仲裁器进行编程以升高所述次级总线主控器的优先级的步骤包含设定总线主控器优先级寄存器中的位的步骤。
16.根据权利要求15所述的方法,其中所述次级总线主控器中的至少一者在所述总线主控器优先级寄存器中具有相关联位。
17.根据权利要求12所述的方法,其中所述数据空间仲裁器包含用于读取及写入存取的单独仲裁器单元。
18.根据权利要求12所述的方法,其中所述数据空间仲裁器包含用于存储器及特殊功能寄存器存取的单独仲裁器单元。
19.根据权利要求17所述的方法,其中所述数据空间仲裁器包含用于存储器及特殊功能寄存器存取的单独仲裁器单元。
20.一种用于在数字处理器中仲裁数据空间存取的方法,其包含在默认模式中给中央处理单元CPU指派最高优先级且给多个非CPU总线主控器指派其它优先级,其中所述多个非CPU总线主控器彼此具有预定固定优先级关系;通过设定总线主控器优先级寄存器中的位来对数据空间仲裁器进行编程以将所述非 CPU总线主控器中的一者的优先级升高为具有高于所述CPU的所述优先级的优先级,同时仅与也已将其所述优先级等级升高为高于所述CPU的所述优先级的那些非CPU总线主控器维持所述预定优先级关系;及当所述CPU能存取数据空间时请求由总线主控器对所述数据空间的存取,且在所述总线主控器的所述优先级高于所述CPU的所述优先级的情况下,准予对所述数据空间的存取,否则使所述总线主控器停转,其中所述数据空间为数据存储器,所述数据存储器包含随机存取存储器、双端口存储器、特殊功能寄存器中的至少一者。
全文摘要
本发明揭示一种数字处理器,其具有在默认模式中具有最高优先级的默认总线主控器;具有相关联优先级的多个次级总线主控器,其中所述多个次级总线主控器彼此具有预定优先级关系;及数据空间仲裁器。所述数据空间仲裁器可编程以在非默认模式中将所述次级总线主控器中的任一者的优先级升高为具有高于所述默认总线主控器的所述优先级的优先级,同时仅与也已将其所述优先级等级升高为高于所述默认总线主控器的所述优先级的那些次级总线主控器维持所述预定优先级关系。
文档编号G06F13/362GK102449612SQ201080024326
公开日2012年5月9日 申请日期2010年7月20日 优先权日2009年7月21日
发明者迈克尔·I·卡瑟伍德, 阿希什·德赛 申请人:密克罗奇普技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1