【技术实现步骤摘要】
【国外来华专利技术】
本专利技术一般涉及存储器访问和传输,特别涉及直接存储器存取(DMA)控制器。
技术介绍
在计算机或者其他电子系统中的数据传输经常是这种系统性能中的一个综合因素。不管计算机或者电子设备的中央处理单元(CPU)处理数据能有多快,如果数据不能以足够快的方式向CPU或从CPU通信,则系统性能肯定受损。一直用来改善数据传输性能的一种技术被称为直接存储器存取(DMA)。DMA使用一个专用控制器或者电路独立于CPU来处理数据传输,从而在数据的传输操作期间释放CPU以处理其他任务。通常,DMA用于在存储器和外围设备或输入/输出(I/O)设备诸如扩展卡、网络端口、存储设备等之间传输数据。常规DMA控制器通常很少需要CPU的照料以处理数据操作。通常,需要CPU来使DMA控制器初始化以处理一次特定的传输操作,例如通过指定操作的源和目的地和要传输的数据量。DMA控制逻辑通常包括一个字节计数器,它由CPU初始化以设定在一个操作中要传输的数据的总字节数。一旦一个数据传输操作由CPU起动后,DMA控制逻辑就将开始传输数据,而不需CPU的任何进一步干预。在数据传输操作期间,随着DMA控制逻辑传输每一数据字节,它将字节计数器减量,直到字节计数器达到零。此时,DMA控制逻辑可以给CPU发送一个中断信号,通知CPU数据传输操作已完成。经常使用DMA的许多外围设备依赖于相对简单的协议。一些设备例如是基于字符的设备,它们在有字符可提供时给DMA控制逻辑发送信号。在这种实例中要传输的进入字符数通常是基于规则的(亦即它要么是常数要么是由协议动态定义的)。另一种设备是块设备,这些设备使用固定块大小来 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种电路结构,包括(a)直接存储器存取(DMA)控制电路(38),配置成在至少一个DMA通道(24)上传递数据,和(b)DMA计数寄存器(54),配置成用于存储计数值,该计数值控制在DMA通道(24)上的数据传输的长度,其中DMA控制电路(38)被配置成有选择地使DMA计数寄存器(54)失效和独立于DMA计数寄存器(54)执行数据传输。2.权利要求1的电路结构,进一步包括端点监视定时器(40),它被耦合DMA控制电路(38)并被配置成在一个预定时间段内如果DMA通道(24)未接收到数据则产生一个中断。3.权利要求1的电路结构,其中,DMA控制电路(38)被配置成当在DMA通道(24)上传递数据包时,如果最后字是一个部分字,则延迟该数据包中的数据的最后字的传输。4.权利要求3的电路结构,其中,DMA控制电路(38)被配置成仅当为DMA控制电路(38)选择一个部分字推迟方式时才延迟数据的最后字的传输。5.权利要求1的电路结构,进一步包括错误计数器寄存器(58),它被配置成用于记录在DMA通道(24)上的数据传输期间检测到的错误。6.权利要求1的电路结构,其中,DMA控制电路(38)被配置成在响应接收到关断DMA通道(24)的请求而关断DMA通道(24)之前先完成在DMA通道(24)上正在进行的数据包中的数据传输。7.权利要求6的电路结构,其中,请求关断DMA通道(24)的请求是条件停止请求。8.权利要求1的电路结构,进一步包括字节计数器(36),它被配置成用于累计在DMA通道(24)上传输的数据量。9.权利要求1的电路结构,其中,DMA控制电路(38)可以有选择地工作在计数方式和连续方式,其中,在计数方式中,DMA控制电路(38)起动DMA计数寄存器(54),而在连续方式中,DMA控制电路(38)使DMA计数寄存器(54)失效。10.权利要求9的电路结构,其中,DMA控制电路(38)可以有选择地工作在包结束方式,其中,在包结束方式中DMA控制电路(38)使DMA计数寄存器(54)失效并响应检测到数据包的结束而终止在DMA通道(24)上的数据传输。11.权利要求1的电路结构,进一步包括一个通用串行总线(USB)简档电路(26),它耦合到DMA控制电路(38)并配置成去控制DMA控制电路(38)的至少一个操作参数以便有选择地优化DMA控制电路(38)使其与从受USB简档电路(26)所支持的多个USB协议中所选中的一个USB协议一起使用。12.权利要求1的电路结构,进一步包括一个通用串行总线(USB)端点(28),它耦合到DMA控制电路(38),其中,DMA控制电路(38)被配置成去控制在USB端点(28)和一个可编程电子设备之间的数据传输。13.权利要求1的电路结构,其中,DMA控制电路(38)被配置成在多个DMA通道(24)上传递数据,其中,所述电路结构包括多个分别与多个DMA通道(24)关联的DMA计数寄存器(54),其中,每一DMA计数寄存器(54)被配置成在相关联的DMA通道(24)上执行数据传输期间被DMA控制电路(38)有选择地使其失效。14.包括权利要求1的电路结构的DMA控制器(34)。15.包括权利要求1的电路结构的USB控制器(18)。16.包括权利要求1的电路结构的集成电路。17.一种程序产品,包括一个规定权利要求1的电路结构的硬件定义程序,和一个承载该硬件定义程序的信号承载介质,其中,信号承载介质包括可记录介质和传输介质中的至少一种介质。18.一种使用DMA控制电路(38)在直接存储器存取(DMA)通道(24)上传输数据的方法,所述方法包括(a)通过在控制第一数据传输操作长度的DMA计数寄存器(54)中存储一个计数值来执行第一数据传输操作,和(b)通过使DMA计数寄存器(54)失效来执行在DMA通道(24)上的第二数据传输操作,以使得第二数据传输操作与DMA计数寄存器(54)无关地去执行。19.权利要求18的方法,其中,执行第二数据传输操作包括如果在预定时间段内DMA通道(24)没有接收到数据就使用耦合到DMA控制电路(38)上的端点监视定时器来产生一个中断。20.权利要求18的方法,其中,执行第二数据传输操作包括在DMA通道(24)上传输数据包,和如果最后字是一个部分字则延迟传输数据包中的数据的最后字。21.权利要求18的方法,其中,执行第二数据传输操作包括把在DMA通道(24)上传输数据期间检测到的错误记录到错误计数器寄存器(58)中。22.权利要求18的方法,其中,执行第二数据传输操作包括响应在数据包中的数据的传输完成之前接收到关断DMA通道(24)的请求的接收,从而在关掉DMA通道(24)之前完成在DMA通道(24)上对数据包中的数据的传输。23.权利要求18的方法,进一步包括在执行第一和第二数据传输操作期间在字节计数器(56)中累计在DMA通道(24)上传输的数据量。24.权利要求18的方法,其中,执行第一数据传输操作包括把DMA控制电路(38)配置成以计数方式操作,其中,执行第二数据传输操作包括把DMA控制电路(38)配置成以连续方式操作。25.权利要求24的方法,进一步包括执行第三数据传输操作,其中包括把DMA控制电路(38)配置成以包结束方式操作,和响应检测到数据包结束而终止第三数据传输操作。26.权利要求18的方法,其中执行第一和第二数据传输操作的每一种操作包括向或从一个USB端点(28)传输通用串行总线(USB)数据,该方法进一步包括使用一个USB简档电路(26)去控制DMA控制电路(38)的至少一个操作参数来有选择地优化DMA控制电路(38),以便与从受USB简档电路(26)支持的多个USB协议中选中的一个USB协议一起使用。27.一种电路结构,包括(a)直接存储器存取(DMA)控制电路(38),它被配置为在至少一个DMA通道(24)上传递数据;和(b)端点监视定时器(40),它连接到DMA控制电路(38),并被配置为如果在一个预定时间段内DMA通道(24)没有接收到数据则产生一个中断。28.权利要求27的电路结构,其中,端点监视定时器(40)被配置成响应DMA控制电路(38)接收到数据而被复位。29.权利要求27的电路结构,其中,DMA控制电路(38)被配置...
【专利技术属性】
技术研发人员:L·C·戈夫,B·罗斯顿,
申请(专利权)人:皇家飞利浦电子股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。