动态建立直接内存访问通路的方法及系统技术方案

技术编号:2831129 阅读:212 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种动态建立直接内存访问通路的方法及系统,特别涉及一种动态建立直接内存访问通路的方法,包括:侦测一直接内存访问通路使用请求;配置一通路控制寄存器与一通路传输寄存器,以建立一直接内存访问通路;判断是否有对应于该通路的直接内存访问传输请求发出;若有,则依据所述通路控制寄存器及所述通路传输寄存器的参数,进行数据传输;以及判断所述通路是否使用完毕,若是,则释放所述通路对应的通路传输寄存器与通路控制寄存器。本发明专利技术可通过配置通路控制寄存器与通路传输寄存器,依据使用状况动态地配置直接内存访问通路。

【技术实现步骤摘要】

本专利技术是有关于直4妻内存^方问 (Direct memory access, DMA),特别是有关于一种可支持直接内存访问传输的系统。
技术介绍
直4妾内存^方问(Direct memory access, DMA)是一种直接 由硬件实现数据传输的技术,并且数据传输过程中不需要微处 理器(CPU)的干预。直接内存访问控制器通常位于外围设备与 系统总线之间,用来控制外围设备与存储体之间的直接内存访 问传输。随着技术的发展,计算机系统所连接的外部设备越来 越多,因而直接内存访问控制器中需要设置相应的存取通路, 以达到为多个外围设备服务的目的。图1所示为传统的提供多通路直接内存访问传输的计算机 系统的示意图。如图所示,计算机系统100包括微处理器10、存 储体ll、设备12与直接内存访问控制器13。其中,设备12由多 个外围设备组成。此处假设有四个外围设备,分别标号为121、 122、 123和124。外围设备121 124通过相应的DMA请求线连接 至DMA控制器13,以实现与存储体ll之间的DMA传输操作。 DMA控制器13包括一第一传输接口 130、第二传输接口131、仲 裁器132、通路控制器133与数据暂存器136。通路控制器133包 括四个通路控制逻辑1341 1344,分别与外围设备121 124相对 应,用以处理相应的外围设备121 124发出的DMA传输请求。 每 一 通路控制逻辑1341 1344中设有 一 参数寄存器组 1351 1354,用于记录该通路的各项传输参数。参数寄存器组 1351 1354中的数据是在通路使用以前由CPU预置的,其所记录的传输参数包括相应通路的数据传送长度、内存地址等信息。仲裁器132用于将优先级最高的DMA传输请求输出至通路控制 器133。举例来说,^暇设外围设备121发出一DMA传输请求至 DMA控制器13,以将数据写入存储体ll中。假设此时外围设备 121发出的DMA传输请求的优先级最高,则仲裁器132会将该 DMA传输请求传输至通路控制器133,并发出 一响应信号至外 围设备121。外围设备121依据该响应信号将需要传输的数据输 出至DMA控制器13的第二传输接口 131。通路控制器133中与外 围设备121相对应的通路控制逻辑1341会依据参数寄存器组中 存储的传输参数进行DMA传输。具体来说,通路控制逻辑1341 会依据传输参数,控制第二传输接口 131将需要传输的数据存储 到数据暂存器136中,然后控制第一传输接口 130将数据暂存器 136中的数据写入到存储体ll中。在完成该DMA传输请求所对 应的DMA传输后,通路控制逻辑1341还会依据当前数据存储的 状况更新参数寄存器组中的传输参数。显然,图l所示的计算机系统中,外围设备与DMA通路是 ——对应的,并且在系统完成配置后,DMA控制器可支持的 DMA通路的数目是固定的。因而,若需要连接新的外围设备, DMA控制器中也需要增加相应的通路控制逻辑及参数寄存器 组,使得DMA控制器的面积与电路设计复杂度增加。鉴于此,我们希望能够提供一种可依据使用状况动态配置 DMA通路的计算机系统。
技术实现思路
本专利技术的目的在于提供一种可依据使用状况动态配置 DMA通路的系统。本专利技术提供一种支持直接内存访问传输的系统,其包括一微处理器; 一存储体,具有多个由所述微处理器配置的通路传输寄存器,所述通路传输寄存器分别用于存储对应的直接内存访问通路的传输参数;以及一直接内存访问控制器。直接内 存访问控制器包括多个通路控制寄存器,分别存储所述微处 理器写入的相应的直接内存访问通路的控制参数; 一 仲裁器, 用于依据所述通路控制寄存器中存储的控制参数,裁决接收到 的直接内存访问传输请求的优先级,并输出一仲裁结果;以及 一通路控制器,依据所述仲裁器的仲裁结果,控制相应的直接 内存访问通路至所述存储体的对应通路传输寄存器中读取所述 通路传输参数,并根据读取的通路传输参数进行数据传输操作。本专利技术提供一种动态建立直接内存访问通路的方法,其包 括侦测一直接内存访问通路使用请求;配置一通路控制寄存 器与一通路传输寄存器,以建立一直接内存访问通路;判断是 否有对应于该该直接内存访问通路的直接内存访问传输请求发 出;若有,则依据所述通路控制寄存器及所述通路传输寄存器 的参数进行数据传输;以及判断所述该直接内存访问通路是否 使用完毕,若是,则释放所述该直接内存访问通路对应的通路 传输寄存器与通路控制寄存器。本专利技术所述的系统,可通过配置通路控制寄存器与通路传 输寄存器,依据使用状况动态地配置直接内存访问通路。附图说明通过下面结合示例性地示出 一例的附图进行的描述,本发 明的上述和其他目的和特点将会变得更加清楚,其中图l为现有技术的支持多个直接内存访问通路的计算机系 统的示意图2为根据本专利技术 一 实施例的支持多个直接内存访问通路的系统的示意图3为根据本专利技术又一 实施例的支持多个直接内存访问通 路的系统的示意图4为根据本专利技术 一 实施例的仲裁直接内存访问传输请求 优先级的方法的流程图;以及图5为根据本专利技术 一 实施例的动态建立直接内存访问通路 的流程图。具体实施例方式为让本专利技术的上述和其它目的、特征和优点能更明显易懂, 下文特举出较佳实施例,并配合所附图式,作详细说明如下。图2为根据本专利技术一实施例的支持直接内存访问(Direct memory access, DMA )通路的计算机系统的示意图。如图所示, 本专利技术 一 实施例的计算机系统200包括一微处理器1 、存储体2、 设备3与DMA控制器4。设备3由标号3J 3一n的n个外围设备组 成。夕卜围设备3—1 ~3—n分别通过DMA请求线L1 Ln连接至DMA 控制器4,以透过D M A控制器4实现与存储体2之间的数据传输。 DMA控制器4包括第一传输接口40、第二传输接口41、仲裁器 42、通路控制器43与数据暂存器44。第一传输接口40设有由微 处理器1配置的参数存储单元400,用以存储DMA控制器4的各 个参数。更进一步来说,参数存储单元400包括全局控制寄存器 401与通路控制寄存器CCRl CCRn。全局控制寄存器401,用于 存储DMA控制器4的配置参数,例如通路的数量、参数存储区 20的基地址、状态信息、中断控制等参数信息。每一通路控制 寄存器CCRl CCRn为l双字(double word, DW),用于存储各 个通路的控制参数,例如传输方向、传输长度(burst length) 等信息。仲裁器42裁决所接收到的DMA传输请求的优先级,并发出一响应信号至相应的外围设备(例如外围设备3—1 )以及一 仲裁结果至通路控制器43。仲裁器42输出的仲裁结果包括将要 执行DMA传输的通路(channel—id)、传输数据长度(data count) 以及传输方向。通路控制器4 3包括 一 操作电路4 3 0与 一 通用寄存 器431,用于依据仲裁器42输出的仲裁结果进行DMA传输操作。 数据暂存器44用于暂存进行DMA传输的数据。于本实施例中, 在使用通路进行数据传输之前,微处理器1在存储体2中配置了 一个参数存储区20 ,该参数存储区20由地址连续的通路传输寄 存器CRl本文档来自技高网
...

【技术保护点】
一种支持直接内存访问传输的系统,其特征在于,包括:一微处理器;一存储体,具有多个由所述微处理器配置的通路传输寄存器,所述通路传输寄存器分别用于存储对应的直接内存访问通路的传输参数;一直接内存访问控制器,包括: 多个通路控制寄存器,分别存储所述微处理器配置的相应的直接内存访问通路的控制参数;一仲裁器,用于依据所述通路控制寄存器中存储的控制参数,裁决接收到的直接内存访问传输请求的优先级,并输出一仲裁结果;以及一通路控制器,依据所述仲裁 器的仲裁结果,控制相应的直接内存访问通路至所述存储体的对应通路传输寄存器中读取所述通路传输参数,并根据读取的通路传输参数进行数据传输操作。

【技术特征摘要】
1.一种支持直接内存访问传输的系统,其特征在于,包括一微处理器;一存储体,具有多个由所述微处理器配置的通路传输寄存器,所述通路传输寄存器分别用于存储对应的直接内存访问通路的传输参数;一直接内存访问控制器,包括多个通路控制寄存器,分别存储所述微处理器配置的相应的直接内存访问通路的控制参数;一仲裁器,用于依据所述通路控制寄存器中存储的控制参数,裁决接收到的直接内存访问传输请求的优先级,并输出一仲裁结果;以及一通路控制器,依据所述仲裁器的仲裁结果,控制相应的直接内存访问通路至所述存储体的对应通路传输寄存器中读取所述通路传输参数,并根据读取的通路传输参数进行数据传输操作。2. 根据权利要求l所述的支持直接内存访问传输的系统, 其特征在于,所述仲裁器包括一任务管理器,依据接收到的直接内存访问传输请求所对 应的通路控制寄存器中存储的控制参数,将所述直接内存访问 传输请求输出至相应的队列;多个队列,存储所述任务管理器输出的直接内存访问传输 请求;以及一仲裁单元,用于裁决所述多个队列中最上面的多个直接 内存访问传输请求的优先级,并输出所述仲裁结果。3. 根据权利要求2所述的支持直接内存访问传输的系统, 其特征在于,所述每 一 通路控制寄存器中存储的控制参数包括 一优先级组号,所述任务管理器依据所述直接内存访问传输请求所对应的通路控制寄存器中存储的优先级组号,将所述直接 内存访问传输请求输出至相应的队列。4. 根据权利要求2所述的支持直接内存访问传输的系统, 其特征在于,所述仲裁器还包括一计时器,用于调整所述直接 内存访问传输请求的优先级。5. 根据权利要求4所述的支持直接内存访问传输的系统, 其特征在于,所述仲裁单元包括一仲裁结果产生单元,依据所述计时器的输出,裁决所述 多个队列中最上面的多个直接内存访问传输请求的优先级;一计时控制单元,依据所述仲裁结果产生单元的输出,控 制所述计时器的计时操作;以及一队列控制单元,依据所述仲裁结果产生单元的输出,将 所述多个队列中优先级最高的直接内存访问传输请求作为所述 仲裁单元的仲裁结果输出。6. 根据权利要求5所述的支持直接内存访问传输的系统, 其特征在于,所述计时器对应于所述多个队列中的一个队列, 若所述计时器期满,则所述仲裁结果产生单元裁决所述计时器 对应的队列中最上面的直接内存访问传输请求的优先级最高。7. 根据权利要求6所述的支持直接内存访问传输的系统, 其特征在于,若所述计时器对应...

【专利技术属性】
技术研发人员:李德建高鹏杨存勇
申请(专利权)人:威盛电子股份有限公司
类型:发明
国别省市:71[中国|台湾]

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

1