CN102521177A - 中断处理方法及装置、中央处理器以及处理设备 - Google Patents

中断处理方法及装置、中央处理器以及处理设备 Download PDF

Info

Publication number
CN102521177A
CN102521177A CN2011104036051A CN201110403605A CN102521177A CN 102521177 A CN102521177 A CN 102521177A CN 2011104036051 A CN2011104036051 A CN 2011104036051A CN 201110403605 A CN201110403605 A CN 201110403605A CN 102521177 A CN102521177 A CN 102521177A
Authority
CN
China
Prior art keywords
list item
interrupt
pointer
current sensing
hardware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2011104036051A
Other languages
English (en)
Other versions
CN102521177B (zh
Inventor
邓彬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujian Star Net Communication Co Ltd
Original Assignee
Fujian Star Net Communication Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujian Star Net Communication Co Ltd filed Critical Fujian Star Net Communication Co Ltd
Priority to CN201110403605.1A priority Critical patent/CN102521177B/zh
Publication of CN102521177A publication Critical patent/CN102521177A/zh
Application granted granted Critical
Publication of CN102521177B publication Critical patent/CN102521177B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

本发明公开了一种中断处理方法及装置、中央处理器以及处理设备,该方法包括步骤:中央处理器CPU在接收到硬件执行接收数据包或发送数据包的操作后发送的中断处理请求后,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项;判断软件指针当前指向的表项与硬件指针当前指向的表项是否相同;若判断结果为否,则从软件指针当前指向的表项开始,对所述中断向量查询表中的各表项依次进行处理,直至软件指针与硬件指针指向同一个表项。采用本发明技术方案,解决了现有技术中中断向量查询表中的各表项均为无效表项时,遍历中断向量查询表中的各表项浪费了非常多的处理资源的问题。

Description

中断处理方法及装置、中央处理器以及处理设备
技术领域
本发明涉及中断处理技术领域,尤其涉及一种中断处理方法及装置、中央处理器以及处理设备。
背景技术
E1通信技术运用脉冲编码调制技术和时分复用技术,将编码信号在线对上传输,它最早起源于公众电话网络,其一帧由32个时隙组成,每个时隙占用一个字节,帧频为固定的8000帧/秒,因此在E1模式(即所有的32个时隙都分配到一个通道的情况)下,其速率为2.048兆比特/秒。而在CE1模式下,可以将某一个或某几个时隙分配到一个通道,这样就可以在链路层创建多个通道,从而提供更多的通道供用户使用。其中,除去时隙0传输帧同步信号外,剩余的31个时隙可以最多分配到31个通道,即将每个时隙分别分配到一个单独的通道,此时每个通道的带宽为64千比特/秒。
在现有技术中,通常利用中断向量查询表的各个表项来保存每个通道的通道号以及需要在该通道执行的操作,中断向量查询表的一般结构如表一所示。
表一:
  表项0
  表项1
  表项2
  表项3
  表项4
  表项5
  表项6
  表项7
  表项8
  ...
  ...
  表项k-2
  表项k-1
中断向量查询表由处理设备的中央处理器(CPU,Central Processing Unit)创建,保存在处理设备的内存中,其中,中断向量查询表中的各表项在内存中是顺序排列的。
初始时,软件指针和硬件指针都会指向中断向量查询表中的第一个表项(即表一中的表项0),处理设备的硬件依次向各表项中写入相应内容(通道号和需要在该通道执行的操作),每次向表项中写入相应内容后,该表项由无效表项转为有效表项,然后使对应的硬件指针加一,硬件指针加一后会指向下一个表项。处理设备的CPU依次提取各有效表项中存储的相应内容,每次完成一个有效表项的内容提取后,该表项由有效表项转为无效表项,然后使对应的软件指针加一,软件指针加一后会指向下一个表项。当硬件处理完最后一个表项后,会自动跳回到第一个表项,然后再依次往下执行写入内容的操作,同样的,当CPU处理完最后一个表项后,也会自动跳回到第一个表项,然后再依次往下执行提取内容的操作。
中断向量查询表中的每个表项都可分为若干个域,如表二所示。
表二:
  域3   域2   域1   域0
在表二中,每个表项由四个域组成,其中,域0用于表示该表项是否为中断向量查询表的最后一个表项,域1用于表示该表项对应的通道(可以用通道号标识),域2和域3用于表示对应需要在通道中进行的操作。
如图1所示,为现有技术中的中断处理方法流程示意图,其具体处理流程如下:
步骤11,处理设备启动时,将针对中断向量查询表的软件指针和硬件指针分别进行初始化,使其均指向中断向量查询表的第一个表项(即表一中的表项0);
步骤12,硬件进行接收数据包或发送数据包的操作时,在中断向量查询表的表项中写入相应内容(需要接收数据包或发送数据包的通道号,以及需要在通道中执行的操作),并设置中断状态寄存器的值,然后以中断的方式通知处理设备的CPU,即向处理设备的CPU发送中断处理请求;
步骤13,处理设备的CPU进入中断处理程序,读取中断状态寄存器的值,然后将中断状态寄存器的值归位;
步骤14,根据读取的中断状态寄存器的值,判断中断向量查询表是否溢出,若判断结果为是,则执行步骤15,否则,执行步骤16;
步骤15,清空中断向量查询表,使软件指针和硬件指针指向第一个表项(即表一中的表项0);
步骤16,根据步骤13读取的中断状态寄存器的值,判断全局中断是否有效,若判断结果为是,则执行步骤17,否则,执行步骤113;
步骤17,提取中断向量查询表中软件指针当前所指向的表项中所存储的内容;
步骤18,根据提取出的内容,判断该表项是否为有效表项,若判断结果为是,则执行步骤111,否则,执行步骤19;
步骤19,将软件指针依次加一,并在每次加一后提取当前指向的表项中的内容,并根据提取出的内容判断当前指向的表项是否为有效表项,直至判断出当前指向的表项为有效表项;
步骤110,判断步骤19是否查找到有效表项,若判断结果为是,则转至步骤111,否则,转至步骤113;
步骤111,根据从判断出的有效表项中提取出的内容进行相应的处理(例如接收数据包处理或发送数据包处理);
步骤112,在步骤111处理完成后,将软件指针加一,指向下一个表项,然后转至步骤17;
步骤113,退出此次中断处理程序。
由上可见,现有技术在实现E1通道在CE1模式下进行收发数据包处理时,由于中断状态寄存器中的值是处理设备的硬件负责写入的,处理设备的CPU进入中断处理程序后,若根据中断状态寄存器的值判断出全局中断有效,就会对中断向量查询表中的各表项依次进行处理,在处理完所有有效表项后才能退出中断处理程序,如果在CPU退出此次中断处理程序之前,硬件又执行了收发数据包的操作,那么硬件就会重新设置中断状态寄存器中的值,但是,处理设备的CPU只有在退出此次中断处理程序之后,才能重新读取中断状态寄存器中的值,而此时中断向量查询表中已经不存在有效表项了,CPU依然会根据中断状态寄存器中的值再一次执行中断处理程序,由于此时各表项均为无效表项,因此就需要遍历中断向量查询表中的各表项,从而浪费了非常多的处理资源。
发明内容
本发明实施例提供一种中断处理方法及装置、中央处理器以及处理设备,用以解决现有技术中中断向量查询表中的各表项均为无效表项时,遍历中断向量查询表中的各表项浪费了非常多的处理资源的问题。
本发明实施例技术方案如下:
一种中断处理方法,该方法包括步骤:CPU在接收到硬件执行接收数据包或发送数据包的操作后发送的中断处理请求后,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项;判断软件指针当前指向的表项与硬件指针当前指向的表项是否相同;若判断结果为否,则从软件指针当前指向的表项开始,对所述中断向量查询表中的各表项依次进行处理,直至软件指针与硬件指针指向同一个表项。
一种中断处理装置,包括:中断处理请求接收单元,用于接收硬件执行接收数据包或发送数据包的操作后发送的中断处理请求;表项确定单元,用于在中断处理请求接收单元接收到所述中断处理请求后,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项;表项判断单元,用于判断软件指针当前指向的表项与硬件指针当前指向的表项是否相同;表项处理单元,用于在表项判断单元的判断结果为否时,从软件指针当前指向的表项开始,对所述中断向量查询表中的各表项依次进行处理,直至软件指针与硬件指针指向同一个表项。
一种中央处理器,包括上述中断处理装置。
一种处理设备,包括上述中央处理器。
本发明实施例技术方案中,CPU在接收到硬件执行接收数据包或发送数据包的操作后发送的中断处理请求后,不再是直接从软件指针当前所指向的表项开始依次处理中断向量查询表中的各表项,而是首先判断软件指针和硬件指针是否指向同一表项,只有在软件指针当前指向的表项与硬件指针当前指向的表项不相同时,才执行从软件指针当前所指向的表项开始依次处理中断向量查询表中的各表项的操作。由于硬件指针每针对一个表项完成内容写入操作后,硬件指针都会加一,因此在中断向量查询表中存在有效表项时,这些有效表项应为软件指针当前指向的表项以及软件指针和硬件指针之间的表项,若软件指针所指向的表项与硬件指针所指向的表项相同,则说明此时中断向量查询表中已经没有有效表项了,那么就可以退出此次中断处理,因此能够避免中断向量查询表中的各表项均为无效表项时,还要遍历中断向量查询表中的各表项的操作,从而有效地节省了较多的处理资源。
附图说明
图1为现有技术中,中断处理方法流程示意图;
图2为本发明实施例一中,中断处理方法流程示意图;
图3为本发明实施例一中,中断向量查询表中的有效表项示意图;
图4为本发明实施例二中,中断处理方法具体实现流程示意图;
图5为本发明实施例三中,中断处理装置结构示意图。
具体实施方式
下面结合各个附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细地阐述。
实施例一
如图2所示,为本发明实施例一中的中断处理方法流程示意图,其具体处理流程如下:
步骤21,CPU在接收到硬件执行接收数据包或发送数据包的操作后发送的中断处理请求后,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项;
当处理设备启动时,将针对中断向量查询表的软件指针和硬件指针分别进行初始化,使其均指向中断向量查询表的第一个表项。
硬件进行接收数据包或发送数据包的操作时,在中断向量查询表的表项中写入相应内容(需要接收数据包或发送数据包的通道号,以及需要在通道中执行的操作),并设置中断状态寄存器的值,然后硬件以中断的方式通知处理设备的CPU,即硬件向处理设备的CPU发送中断处理请求,处理设备的CPU进入中断处理程序,读取中断状态寄存器的值,然后将中断状态寄存器的值归位。
在处理设备的CPU进行中断处理时,可以直接执行步骤21,即确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项。此外,由于处理设备的CPU有时会发生误判的情况,即在硬件未发生收发数据包的操作时,误认为硬件发生了数据收发数据包操作,从而进入中断处理程序,浪费了较多的处理资源。为了解决该问题,可以在执行步骤21之前,先根据读取出的中断状态寄存器的值,判断全局中断是否有效,若判断出全局中断有效,则执行步骤21,即确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项,若判断出全局中断无效,则可以直接退出此次中断处理程序,从而避免了由于CPU误判造成的浪费资源的问题。
其中,中断状态寄存器的值中,预先设置某一位或几位用来标识全局中断是否有效,预先设置的某一位或几位可以称为全局中断标识位,CPU判断中断状态寄存器的值中的全局中断标识位的值是否为标识全局中断有效的值(例如值1能够标识全局中断有效,值0标识全局中断无效),若是,则CPU确认全局中断有效,否则,CPU确认全局中断无效。
当处理设备的硬件频繁的执行收发数据包操作时,可能会存在下述情况:中断向量查询表中的各表项都为有效表项,此时硬件无法再针对中断向量查询表进行写入内容的操作。这种情况可以称为中断向量查询表溢出,若中断向量查询表溢出,则硬件后续进行收发数据包操作时,就无法再向中断向量查询表的表项中写入相应内容。为了解决该问题,可以在执行步骤21之前,先根据读取出的中断状态寄存器的值,判断中断向量查询表是否溢出,若判断出中断向量查询表未溢出,则执行步骤21,即确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项,若判断出中断向量查询表溢出,则可以清空中断向量查询表,然后执行步骤21。
其中,中断状态寄存器的值中,预先设置某一位或几位用来标识溢出中断是否有效,预先设置的某一位或几位可以称为溢出中断标识位,CPU判断中断状态寄存器的值中的溢出中断标识位的值是否为标识溢出中断有效的值(例如值1能够标识溢出中断有效,值0标识溢出中断无效),若是,则CPU确认中断向量查询表溢出,否则,CPU确认中断向量查询表未溢出。
如果处理设备的CPU进入中断处理程序,那么就会在处理完中断向量查询表的所有有效表项后才退出此次中断处理程序,但是在CPU未退出此次中断处理程序之前,硬件可能会不断的向中断向量查询表的表项中写入内容,如果此时中断向量查询表溢出,则硬件会将中断状态寄存器的值中的溢出中断标识位置为标识溢出中断有效的值,但是由于此时CPU未退出此次中断处理程序,因此CPU不能感测到溢出中断有效,CPU会继续处理中断向量查询表中的各有效表项,若处理完中断向量查询表的所有有效表项,CPU退出此次中断处理程序,此时CPU发现中断状态寄存器的值中的溢出中断标识位为标识溢出中断有效的值,则会进行溢出处理,即清空中断向量查询表,但是此次中断向量查询表中的各表项均为无效表项,因此清空中断向量查询表的操作会浪费较多的处理资源。此外,如果在中断向量查询表溢出时,CPU只是清空中断向量查询表,但是缓存设备中各有效通道(即由于中断向量查询表溢出,硬件未能向中断向量查询表中写入的内容所对应的通道)中的接收缓存描述符和发送缓存描述符依然存在,这样就会使得这些通道后续无法继续进行收发数据包的操作,从而引发处理异常。
针对该问题,本发明实施例一提出,在判断出中断向量查询表溢出时,可以不再执行清空中断向量查询表的操作,而是清空缓存设备中每个有效通道的接收缓存描述符和发送缓存描述符,从而不仅能够避免中断向量查询表中的各表项均为无效表项时,清空中断向量查询表的操作浪费较多的处理资源的问题,也能够释放缓存设备中的存储空间,避免处理异常。
步骤22,判断软件指针当前指向的表项与硬件指针当前指向的表项是否相同;
步骤23,若判断结果为否,则从软件指针当前指向的表项开始,对所述中断向量查询表中的各表项依次进行处理,直至软件指针与硬件指针指向同一个表项。
初始时,软件指针和硬件指针都会指向中断向量查询表中的第一个表项(即表一中的表项0),硬件完成一个通道的接收数据包或发送数据包的处理之后,会触发处理设备的CPU进入中断处理程序,此时中断向量查询表中的软件指针所指向的表项一定是有效表项,处理设备的硬件依次向中断向量查询表的各表项中写入相应内容(通道号和需要在该通道执行的操作),每次向表项中写入相应内容后,该表项由无效表项转为有效表项,然后使对应的硬件指针加一,硬件指针加一后会指向下一个表项,因此通常状况下,软件指针当前所指向的表项和软件指针与硬件指针之间的表项,即为需要CPU进行处理的有效表项。
例如,如图3所示,在CPU进入中断处理程序时,软件指针指向中断向量查询表中的表项1,硬件指针指向中断向量查询表中的表项7,因此表项1至表项6为有效表项,其他表项为无效表项。
本发明实施例一提出,当软件指针和硬件指针指向同一表项时,表明该中断向量查询表中不存在有效表项,均为无效表项,因此可以不进行处理,从而节省了较多的处理资源;当软件指针和硬件指针指向不同表项时,表明该中断向量查询表中存在有效表项,因此CPU对有效表项进行处理,即从软件指针当前指向的表项开始,对中断向量查询表中的各表项依次进行处理,直至软件指针与硬件指针指向同一个表项。
本发明实施例一中,对中断向量查询表中各表项的处理可以但不限于包括按照该表项中的内容,对相应通道进行接收数据包或发送数据包的处理。
由于硬件是依次向中断向量查询表的各表项中写入内容,所以正常情况下,软件指针当前所指向的表项以及软件指针与硬件指针之间的表项都应该是有效表项,而不应该出现无效表项,也就是说,中断向量查询表中的各有效表项必须是连续的,中间不能出现“跳跃”的情况,若软件指针当前所指向的表项以及软件指针与硬件指针之间的表项中出现了无效表项,则说明硬件发生了写入异常,因此,在执行步骤23时,若发现软件指针当前所指向的表项以及软件指针与硬件指针之间的表项中出现了无效表项,则记录硬件异常信息,后续可以根据记录的硬件异常信息来监测硬件是否出现了写入异常的情况,从而跟踪硬件的工作状态。
由上述处理过程可知,本发明实施例技术方案中,CPU在接收到硬件执行接收数据包或发送数据包的操作后发送的中断处理请求后,不再是直接从软件指针当前所指向的表项开始依次处理中断向量查询表中的各表项,而是首先判断软件指针和硬件指针是否指向同一表项,只有在软件指针当前指向的表项与硬件指针当前指向的表项不相同时,才执行从软件指针当前所指向的表项开始依次处理中断向量查询表中的各表项的操作。由于硬件指针每针对一个表项完成内容写入操作后,硬件指针都会加一,因此在中断向量查询表中存在有效表项时,这些有效表项应为软件指针当前指向的表项以及软件指针和硬件指针之间的表项,若软件指针所指向的表项与硬件指针所指向的表项相同,则说明此时中断向量查询表中已经没有有效表项了,那么就可以退出此次中断处理,因此能够避免中断向量查询表中的各表项均为无效表项时,还要遍历中断向量查询表中的各表项的操作,从而有效地节省了较多的处理资源。
下面给出更为具体的实施方式。
实施例二
如图4所示,为本发明实施例二中的中断处理方法具体实现流程示意图,其具体处理流程如下:
步骤41,处理设备启动时,将针对中断向量查询表的软件指针和硬件指针分别进行初始化,使其均指向中断向量查询表的第一个表项(即表一中的表项0);
步骤42,硬件进行接收数据包或发送数据包的操作时,在中断向量查询表的表项中写入相应内容(需要接收数据包或发送数据包的通道号,以及需要在通道中执行的操作),并设置中断状态寄存器的值,然后以中断的方式通知处理设备的CPU,即向处理设备的CPU发送中断处理请求;
步骤43,处理设备的CPU进入中断处理程序,读取中断状态寄存器的值,然后将中断状态寄存器的值归位;
步骤44,根据读取的中断状态寄存器的值,判断中断向量查询表是否溢出,若判断结果为是,则执行步骤45,否则,执行步骤46;
步骤45,清空每个有效通道的接收缓存描述符和发送缓存描述符,然后转至步骤414;
步骤46,根据步骤43读取的中断状态寄存器的值,判断全局中断是否有效,若判断结果为是,则执行步骤47,否则,执行步骤414;
步骤47,在进行中断处理时,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项;
步骤48,判断软件指针当前指向的表项与硬件指针当前指向的表项是否相同,若判断结果为是,则执行步骤414,否则,执行步骤49;
步骤49,提取中断向量查询表中软件指针当前所指向的表项中所存储的内容;
步骤410,根据提取出的内容,判断该表项是否为有效表项,若判断结果为是,则执行步骤412,否则,执行步骤411;
步骤411,记录硬件异常信息,并将软件指针加一,然后转至步骤48;
步骤412,根据从判断出的有效表项中提取出的内容进行相应的处理(例如接收数据包处理或发送数据包处理);
步骤413,在步骤412处理完成后,将软件指针加一,指向下一个表项,然后转至步骤48;
步骤414,退出此次中断处理程序。
由上述处理过程可知,本发明实施例技术方案中,在判断出中断向量查询表溢出后,不是去清空中断向量查询表,而是清空每个有效通道的接收缓存描述符和发送缓存描述符,可以释放缓存设备中的存储空间,避免引发处理异常,也能够避免资源浪费问题;在判断出全局中断有效后,不是从当前软件指针所指的表项开始,在中断向量查询表中依次处理有效表项,而是首先判断软件指针指向的表项是否与硬件指针指向的表项相同,在软件指针指向的表项与硬件指针指向的表项不同时,才对中断向量查询表中的各表项进行处理,直至软件指针指向的表项与硬件指针指向的表项相同,从而有效避免了中断向量查询表中的各表项均为无效表项时依然执行遍历中断向量查询表的操作,节省了较多的处理资源;另外,在上述处理过程中,还可以记录硬件异常信息,为定位硬件问题提供帮助。
实施例三
相应的,本发明实施例三提供了一种中断处理装置,其结构如图5所示,包括:
中断处理请求接收单元51,用于接收硬件执行接收数据包或发送数据包的操作后发送的中断处理请求;
表项确定单元52,用于在中断处理请求接收单元51接收到所述中断处理请求后,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项;
表项判断单元53,用于判断软件指针当前指向的表项与硬件指针当前指向的表项是否相同;
表项处理单元54,用于在表项判断单元53的判断结果为否时,从软件指针当前指向的表项开始,对所述中断向量查询表中的各表项依次进行处理,直至软件指针与硬件指针指向同一个表项。
较佳地,所述中断处理装置还包括:
第一读取单元,用于在表项确定单元52确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项之前,读取中断状态寄存器的值;
全局中断判断单元,用于根据第一读取单元读取出的中断状态寄存器的值,判断全局中断是否有效;
所述表项确定单元52,具体用于在全局中断判断单元判断出全局中断有效时,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项。
较佳地,所述中断处理装置还包括:
第二读取单元,用于在表项确定单元52确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项之前,读取中断状态寄存器的值;
中断溢出判断单元,用于根据第二读取单元读取出的中断状态寄存器的值,判断中断向量查询表是否溢出;
所述表项确定单元52,具体用于在中断溢出判断单元判断出中断向量查询表未溢出时,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项。
更佳地,所述中断处理装置还包括描述符清空单元,用于在中断溢出判断单元判断出中断向量查询表溢出时,清空缓存设备中各有效通道的接收缓存描述符和发送缓存描述符。
相应的,本发明实施例三提供了一种中央处理器,至少包括上述中断处理装置。
此外,本发明实施例三还提供一种处理设备,至少包括上述中央处理器。其中,只要是能够存储中断向量查询表,并能够根据中断向量查询表进行中断处理的设备都在本发明实施例三提出的处理设备的保护范围内。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种中断处理方法,其特征在于,包括:
中央处理器CPU在接收到硬件执行接收数据包或发送数据包的操作后发送的中断处理请求后,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项;
判断软件指针当前指向的表项与硬件指针当前指向的表项是否相同;
若判断结果为否,则从软件指针当前指向的表项开始,对所述中断向量查询表中的各表项依次进行处理,直至软件指针与硬件指针指向同一个表项。
2.如权利要求1所述的方法,其特征在于,在确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项之前,还包括:
读取中断状态寄存器的值;并
根据读取出的中断状态寄存器的值,判断全局中断是否有效;
若判断出全局中断有效,则执行确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项的操作。
3.如权利要求1所述的方法,其特征在于,在确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项之前,还包括:
读取中断状态寄存器的值;并
根据读取出的中断状态寄存器的值,判断中断向量查询表是否溢出;
若判断出中断向量查询表未溢出,则执行确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项的操作。
4.如权利要求3所述的方法,其特征在于,还包括:
若判断出中断向量查询表溢出,则清空缓存设备中各有效通道的接收缓存描述符和发送缓存描述符。
5.一种中断处理装置,其特征在于,包括:
中断处理请求接收单元,用于接收硬件执行接收数据包或发送数据包的操作后发送的中断处理请求;
表项确定单元,用于在中断处理请求接收单元接收到所述中断处理请求后,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项;
表项判断单元,用于判断软件指针当前指向的表项与硬件指针当前指向的表项是否相同;
表项处理单元,用于在表项判断单元的判断结果为否时,从软件指针当前指向的表项开始,对所述中断向量查询表中的各表项依次进行处理,直至软件指针与硬件指针指向同一个表项。
6.如权利要求5所述的装置,其特征在于,还包括:
第一读取单元,用于在表项确定单元确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项之前,读取中断状态寄存器的值;
全局中断判断单元,用于根据第一读取单元读取出的中断状态寄存器的值,判断全局中断是否有效;
所述表项确定单元,具体用于在全局中断判断单元判断出全局中断有效时,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项。
7.如权利要求5所述的装置,其特征在于,还包括:
第二读取单元,用于在表项确定单元确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项之前,读取中断状态寄存器的值;
中断溢出判断单元,用于根据第二读取单元读取出的中断状态寄存器的值,判断中断向量查询表是否溢出;
所述表项确定单元,具体用于在中断溢出判断单元判断出中断向量查询表未溢出时,确定中断向量查询表中软件指针当前指向的表项以及硬件指针当前指向的表项。
8.如权利要求7所述的装置,其特征在于,还包括:
描述符清空单元,用于在中断溢出判断单元判断出中断向量查询表溢出时,清空缓存设备中各有效通道的接收缓存描述符和发送缓存描述符。
9.一种中央处理器,其特征在于,包括权利要求5~8中任一权利要求所述的中断处理装置。
10.一种处理设备,其特征在于,包括权利要求9所述的中央处理器。
CN201110403605.1A 2011-12-07 2011-12-07 中断处理方法及装置、中央处理器以及处理设备 Active CN102521177B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110403605.1A CN102521177B (zh) 2011-12-07 2011-12-07 中断处理方法及装置、中央处理器以及处理设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110403605.1A CN102521177B (zh) 2011-12-07 2011-12-07 中断处理方法及装置、中央处理器以及处理设备

Publications (2)

Publication Number Publication Date
CN102521177A true CN102521177A (zh) 2012-06-27
CN102521177B CN102521177B (zh) 2015-01-21

Family

ID=46292106

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110403605.1A Active CN102521177B (zh) 2011-12-07 2011-12-07 中断处理方法及装置、中央处理器以及处理设备

Country Status (1)

Country Link
CN (1) CN102521177B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109343950A (zh) * 2018-10-16 2019-02-15 南京国电南自维美德自动化有限公司 一种适用于Xilinx软核处理器的中断通用处理方法
CN111078387A (zh) * 2017-12-25 2020-04-28 贵阳忆芯科技有限公司 中断聚合装置及其方法
CN111722916A (zh) * 2020-06-29 2020-09-29 长沙新弘软件有限公司 一种通过映射表处理msi-x中断的方法
CN114237945A (zh) * 2022-02-25 2022-03-25 四川鸿创电子科技有限公司 一种基于srio接口的互联系统消息处理方法、装置和介质
CN115412398A (zh) * 2021-05-10 2022-11-29 青岛中加特电气股份有限公司 一种can网桥数据通讯方法、can网桥及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6247064B1 (en) * 1994-12-22 2001-06-12 Unisys Corporation Enqueue instruction in a system architecture for improved message passing and process synchronization
CN101014937A (zh) * 2004-03-02 2007-08-08 五级网络公司 用于多事件队列的中断管理
CN101478481A (zh) * 2009-01-07 2009-07-08 成都市华为赛门铁克科技有限公司 缓存管理方法及装置、数据转发系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6247064B1 (en) * 1994-12-22 2001-06-12 Unisys Corporation Enqueue instruction in a system architecture for improved message passing and process synchronization
CN101014937A (zh) * 2004-03-02 2007-08-08 五级网络公司 用于多事件队列的中断管理
CN101478481A (zh) * 2009-01-07 2009-07-08 成都市华为赛门铁克科技有限公司 缓存管理方法及装置、数据转发系统

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111078387A (zh) * 2017-12-25 2020-04-28 贵阳忆芯科技有限公司 中断聚合装置及其方法
CN111078387B (zh) * 2017-12-25 2024-01-23 贵阳忆芯科技有限公司 中断聚合装置及其方法
CN109343950A (zh) * 2018-10-16 2019-02-15 南京国电南自维美德自动化有限公司 一种适用于Xilinx软核处理器的中断通用处理方法
CN109343950B (zh) * 2018-10-16 2021-06-08 南京国电南自维美德自动化有限公司 一种适用于Xilinx软核处理器的中断通用处理方法
CN111722916A (zh) * 2020-06-29 2020-09-29 长沙新弘软件有限公司 一种通过映射表处理msi-x中断的方法
CN111722916B (zh) * 2020-06-29 2023-11-14 长沙新弘软件有限公司 一种通过映射表处理msi-x中断的方法
CN115412398A (zh) * 2021-05-10 2022-11-29 青岛中加特电气股份有限公司 一种can网桥数据通讯方法、can网桥及可读存储介质
CN115412398B (zh) * 2021-05-10 2024-03-22 青岛中加特电气股份有限公司 一种can网桥数据通讯方法、can网桥及可读存储介质
CN114237945A (zh) * 2022-02-25 2022-03-25 四川鸿创电子科技有限公司 一种基于srio接口的互联系统消息处理方法、装置和介质
CN114237945B (zh) * 2022-02-25 2022-05-13 四川鸿创电子科技有限公司 一种基于srio接口的互联系统消息处理方法、装置和介质

Also Published As

Publication number Publication date
CN102521177B (zh) 2015-01-21

Similar Documents

Publication Publication Date Title
CN102521177A (zh) 中断处理方法及装置、中央处理器以及处理设备
CN104796337A (zh) 一种转发报文的方法及装置
CN101707565B (zh) 零拷贝网络报文发送、接收方法和装置
WO2011102700A2 (en) Methods and device of managing resources in a wireless communication network
RU2014150504A (ru) Назначение локального идентификатора устройства при связи от устройства к устройству, осуществляемой при содействии сети
CN103905526A (zh) 一种调度方法及服务器
CN102255926A (zh) MapReduce系统中的任务分配方法、系统及装置
CN101557348A (zh) 一种基于令牌桶的报文转发方法及装置
CN104376036A (zh) 具有减少时延的分组处理的套接字管理
CN103049240B (zh) Pci-e设备及其接收数据重排序方法
CN101877659A (zh) 一种丢包监控的方法、设备和系统
CN109614240A (zh) 内存申请方法、设备及存储介质
US20230269596A1 (en) Audio stream identification by a wireless network controller
CN102750245A (zh) 报文接收方法、报文接收模块、装置及系统
CN103019858B (zh) 媒体访问控制老化方法及网络处理器
US9537735B2 (en) Data collection method, mobile terminal and data storage device
CN108235800B (zh) 一种网络故障探测方法、控制中心设备及计算机存储介质
CN103312614A (zh) 一种组播报文处理方法、线卡及通信设备
CN102215145A (zh) 一种上报链路连通状态检测结果的方法和装置
CN113760559A (zh) 一种双核通信方法和电子设备
US9880955B2 (en) Interface unit for direct memory access utilizing identifiers
CN103945422A (zh) 一种对工单进行控制的方法和设备
CN107704421A (zh) 一种多核处理器及报文处理方法
US9582438B2 (en) Method and apparatus for identifying cause of interrupt
CN102780611A (zh) 包交换电路及包交换方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant