在直接存储器存取任务请求之间进行仲裁的装置和方法制造方法及图纸

技术编号:2828088 阅读:161 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种用于在直接存储器存取(DMA)任务请求之间进行仲裁的方法(500),该方法(500)包括接收多个DMA任务请求(510);该方法的特征在于响应于与DMA任务有关的计时期限而从多个DMA任务请求当中选择DMA任务请求(520)。本发明专利技术还涉及一种装置(90),它包括接口(420),其适用来接收DMA任务请求;该装置(90)特征在于,包括仲裁器(410),其适用来响应于与DMA任务有关的计时期限而从多个DMA任务请求当中选择DMA任务请求。

【技术实现步骤摘要】
【国外来华专利技术】 专利
本专利技术涉及在DMA任务请求之间进行仲裁的装置和方法。 专利技术背景最近十年以来,集成电路的复杂性极大地提高了。为了支持各种 应用,例如,但不局限于,多媒体应用、实时应用等,正在研究芯片 上系统和其他多核集成电路。现代的集成电路能够实质上并行执行大量任务。其中某些任务要 求在存储器映射装置之间传输相对大量数据。多通道直接存储器存取 (DMA)控制器可以管理多个数据传输,同时减少了来自集成电路核 心(处理器)的加载。然而,DMA控制器还可以通过每当完成特定 DMA任务时发布中断来加载这些核心。以下所有的在此引用作为参考的专利和专利申请描述了各种 DMA控制器:Olivier等人的美国专利6738881、 Wunderlich的美国专 利6122679、 Amini等人的美国专利5450551、 Farazmandnia等人的美 国专利6728795、 Kihara的美国专利4502117、 Brewer等人的美国专利 4556952、 Riley等人的美国专利5838993、 Wolford等人的美国专利 5692216、5603050和5884095、Loyer等人的美国专利6298396、Morrison 等人的美国专利6542940、 Leichty等人的美国专利6041060、 Goff等 人的序列号为2004/0073721A1的美国专利申请、Takashi等人的序列号 为20040037156A1的美国专利申请、Cheung的序列号为2004021618A1 的美国专利申请、Hedeki等人的公开号为JP07168741A2的日本专利、 Masahiko的公开号为JP06187284A2的日本专利、Yoshihiro的公开号 为 JP2004252533A2的日本专利、Tadayoshi等人的公开号为JP04324755A2的日本专禾U、Hiroyuki的公开号为JP2004013395A2的日 本专利、Tetsuya的公开号为JP08249267A2的日本专利、Katsuyuki等 人的公开号为JP02048757A2的日本专利以及Simon等人的公开号为 WO2005/013084的PCT专利申请。由于DMA任务的复杂性,所以大量DMA任务研究员在定义每一 个DMA任务的优先级上花费了许多资源。这些优先级可以被定制于专用程序。这就需要提供一种在DMA任务请求之间进行仲裁的有效的装置 和方法
技术实现思路
一种正如所附权利要求所述的在DMA任务请求之间进行仲裁的 装置和方法。附图说明从以下结合附图的详细描述将更加全面地了解和理解本专利技术,其中图1示出了一种根据本专利技术实施例的装置;图2示出了 一种根据本专利技术实施例的DMA控制器;图3示出了一种根据本专利技术实施例的总线接口;图4示出了根据本专利技术实施例的文件寄存器的各个寄存器;图5示出了一种根据本专利技术实施例的缓冲器描述符表;图6示出了一种根据本专利技术实施例的四维缓冲器;图7示出了一种根据本专利技术实施例的DMA通道和选定的DMA通道逻辑;图8示出了根据本专利技术实施例在示范性数据传输操作中涉及的各 个缓冲器;图9是一种根据本专利技术实施例的在多个DMA任务请求之间进行仲裁的方法的流程图;图IO是一种根据本专利技术实施例的用于控制第一个DMA任务的执 行的方法的流程图;图11是一种根据本专利技术实施例的用于执行DMA任务的方法的流程图;图12是一种根据本专利技术实施例的用于控制多个DMA任务的方法 的流程图。优选实施例的详细描述以下附图示出了本专利技术的示范性实施例。它们并不是打算用来限 定本专利技术的范围,而是帮助理解本专利技术的某些实施例。还要注意所有 附图都不是按照比例绘制的。DMA任务包括从一个位置到另一个位置的信息传输。DMA任务 可以要求许多DMA事务处理(transaction)。每个DMA任务的DMA 事务处理的数量响应于在DMA任务期间应当传输的数据的总大小与 在单个DMA事务处理期间能够传输的数据的大小之间的关系。还要注 意,DMA事务处理的数量可以响应于DMA事务处理的成功,这是因 为在失败的DMA事务处理后面可以有数据的重发,该数据是在失败的 DMA事务处理过程中要传输的数据。单个DMA任务可以包括多个DMA子任务。单个DMA子任务可 以包括要求多个DMA事务处理。DMA子任务与对多维缓冲器中单个 维度的写入(或从其读出)有关。周期性DMA任务可以包括多个DMA任务循环(iteration)。每 一个周期性DMA任务操作可以包括多个DMA事务处理,并且可以包 括多个DMA子任务。 一个DMA循环可以认为是重复性的DMA任务, 除非它被掩蔽、冻结、去使能(disabled)或者要不然就被停止。多维缓冲器包括多个相互链接的缓冲器段。这些段可以形成连贯 的地址范围,但这不是必需的。缓冲器通常与多个逻辑组件例如寄存器有关。 一个多维缓冲器比 一组独立的缓冲器(虽然其中每一个缓冲器对应于多维缓冲器中一个 单独的维度)要求更少的逻辑。方便地,多维缓冲器包括多个存储器 段。由每一个维度的大小信息来定义存储器段的数量。特定维度的大 小信息表示在之前维度的大小与当前维度的大小之间的比率。比如说, 如果第一个维度包括Z个基本存储器段,而第二个维度的大小信息为Y,则该二维缓冲器包括(ZxY)个存储器段。根据本专利技术的实施例,多个DMA任务可以是基于周期时间的 DMA任务。基于周期时间的DMA任务是重复的DMA任务,但是它 的重复率受到DMA任务执行周期的限制。方便地,在单个DMA任务 执行周期内应当仅执行基于单 一 周期时间的D M A任务。根据本专利技术的实施例,可以将大量的DMA任务定义为基于周期 时间的DMA任务,因此降低了 DMA控制器预编程的复杂性。而且, 利用基于周期时间的DMA任务防止了在每一个周期对DMA控制器进 行编程。方便地,提供了一种装置(例如图1的装置90)。该装置包括至 少一个存储器单元以及适用来访问该存储器单元的DMA控制器。装置 90适用来在该至少一个存储器单元内实现多维缓冲器。该装置包括 DMA控制器100,它适用来执行多个DMA子任务,其中该执行包括 在缓冲器间的跳变点上在缓冲器之间跳转;其中,所述缓冲器间的跳 变点基本被定义在多个多维缓冲器当中的每一个多维缓冲器的一个或 多个维度的末端。方便地,提供了一种装置(例如图1的装置90)。装置90包括一个或多个存储器单元(例如图1的存储器单元93、 94)。装置90还包 括DMA控制器IOO,它适用来(i)访问为多个DMA通道中的每一 个DMA通道而定义的多个缓冲器描述符当中的至少一个缓冲器描述 符,其中至少两个缓冲器描述符包括计时信息,该计时信息控制基于 周期时间的DMA任务的执行;(ii)接收多个DMA任务请求,(iii) 从该多个DMA任务请求当中选择DMA任务请求,以及(iv)执行DMA 任务或DMA任务循环,并更新与所选定的DMA任务请求有关的缓冲 器描述符,以此来反映该执行。以下的说明描述了各种计数器。本领域技术人员将理解可以使用 向上计数器和向下计数器而不脱离本专利技术的范围。因此,可以用计数 器减量操作来代替计数器增量操作。为了简单起见,以下附图并不包括在实际系统中要求的本领域技 术人员所本文档来自技高网
...

【技术保护点】
一种用于在直接存储器存取(DMA)任务请求之间进行仲裁的方法(500),所述方法(500)包括接收多个DMA任务请求(510);所述方法的特征在于:响应于与所述DMA任务相关的计时期限而从所述多个DMA任务请求当中选择DMA任务请求(520)。

【技术特征摘要】
【国外来华专利技术】1. 一种用于在直接存储器存取(DMA)任务请求之间进行仲裁的方法(500),所述方法(500)包括接收多个DMA任务请求(510);所述方法的特征在于响应于与所述DMA任务相关的计时期限而从所述多个DMA任务请求当中选择DMA任务请求(520)。2. 根据权利要求l所述的方法(500),其中所述选择(520)进 一步包括响应于预定的优先级而在与基本相同的计时期限相关的DMA 任务请求之间进行选择。3. 根据权利要求l所述的方法(500),其中所述选择(520)进 一步包括通过应用计时期限无差异仲裁方案来在与基本相同的计时期 限相关的DMA任务请求之间进行选择。4. 根据权利要求1-3中任一项所述的方法(500),其中所述选择 进一步响应于至少一个可用带宽参数。5. 根据权利要求l-4中任一项所述的方法(500),其中所述选择 进一步响应于至少一个请求的带宽参数。6. 根据权利要求1-5中任一项所述的方法(500),其中至少一个 DMA任务是重复性任务。7. 根据权利要求1-6中任一项所述的方法(500),进一步包括定 义计时期限范围(505),以及其中所述选择(520)包括在与属于一 个计时期限范围的计时期限相关的多个DMA任务请求之间进行选择。8. 根据权利要求1-7中任一项所述的方法(500),其中每一个 DMA任务与1/0端口相关,以及其中所述选择(520)包括在与所述相同I/O端口相关的DMA任务请求之间进行仲裁。9. 根据权利要求1-8中任一项所述的方法(500),其中至少一个 DMA任务涉及从多维缓冲器检索信息。10. 根据权利要求1-9中任一项所述的方法(500),进一步包括 响应于可能的计时期限冲突生成中断...

【专利技术属性】
技术研发人员:乌里沙沙沙吉古芬克尔吉拉德阿西埃兰坎耶胡达施瓦格尔
申请(专利权)人:飞思卡尔半导体公司
类型:发明
国别省市:US[美国]

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

1