CN109343950A - 一种适用于Xilinx软核处理器的中断通用处理方法 - Google Patents
一种适用于Xilinx软核处理器的中断通用处理方法 Download PDFInfo
- Publication number
- CN109343950A CN109343950A CN201811199886.1A CN201811199886A CN109343950A CN 109343950 A CN109343950 A CN 109343950A CN 201811199886 A CN201811199886 A CN 201811199886A CN 109343950 A CN109343950 A CN 109343950A
- Authority
- CN
- China
- Prior art keywords
- interrupt
- intc
- array
- interruption
- vector
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
本发明公开了一种适用于Xilinx软核处理器的中断通用处理方法,具体为按照中断源的优先级顺序排列生成中断向量数组,然后设置中断掩码数组和中断确认数组,在收到中断请求信号后,根据发出请求中断的序号,确定对应的中断掩码数组元素、中断确认数组元素和中断向量数组元素;从而将确定的数组元素写入IER中断使能寄存器和IAR中断确认寄存器,屏蔽低优先级中断,开放高优先级中断,确认唯一中断触发。本发明方法易操作,适用于固定优先级系统,通过简单指令代码对数组操作即可捕捉中断请求信号,并确定中断优先级,纵向定位三个数组的对应元素,实现中断抢占与嵌套以及中断服务。
Description
技术领域
本发明涉及一种适用于Xilinx软核处理器的中断通用处理方法,属于网络通信技术领域。
背景技术
Xilinx MicroBlaze软核处理器具备的AXI INTC中断控制器资源支持中断的抢占与嵌套,但其自带的驱动没有实现抢占和嵌套功能,并且植入的操作系统需做很多代码改写才能适配。现有技术没有提供直接的方法使操作系统移植后支持中断抢占与嵌套。嵌入式处理器芯片结合移植的嵌入式操作系统,对中断请求处理的一般方法见图1。在嵌入式领域应用广泛的32位芯片多是ARM架构,移植嵌入式操作系统的中断处理方法已经比较成熟。另一类使用较多的是DSP芯片,其中TI公司的TMS320系列DSP极具代表性,其中断处理方法如图2所示。
可见中断请求处理的一般方法是,根据芯片硬件特征,结合中断处理相关寄存器组特性,等待中断源的中断请求信号,一旦处理器捕获信号后,利用相关控制字确定、使能中断;并保护现场,等到处理完成中断服务程序后,恢复现场。保护现场与恢复现场多在汇编代码中完成,直接操作寄存器;而中断向量表生成、中断使能、确认等工作也会有专用寄存器通过特定控制字完成,一般在嵌入式操作系统(多数是C语言)中完成,而这些工作是实现中断处理、抢占、嵌套等处理的关键,也是不同处理器芯片处理中断处理的区分点。
Xilinx FPGAs芯片提供的MicroBlaze软处理器内核配置了中断控制器核LogiCORE IP(AXI INTC,即AXI Interrupt Controller)接收来自外围设备的多个中断信号输入(可扩展数量),并提供一个选项来提供优先级编码方案将它们合并到系统处理器的一个总中断输出,该输出是为了连接到一个能够产生中断条件的设备。用于存储中断向量地址、检查、启用和确认中断的寄存器组通过一个用于AMBA(Advanced MicrocontrollerBus Architecture,高级微控制器总线结构)规范的从接口来访问,根据目标系统进行调整中断的数量和其他参数。AXI INTC中断控制器根据AXI4-Lite协议进行接口。
AXI INTC中断控制器捕获到中断源的中断请求,并保留,直到确认。中断可以在全局或单独地启用或禁用。当所有中断都在全局启用时,处理器会发出中断条件,并且至少有一个捕获的中断是单独启用的。AXI INTC中断处理器还支持可配置的软件中断数量,这些中断主要用于多处理器系统中的跨处理器中断,是由软件写入中断状态寄存器触发的。
在官网下载的资料AN-1013描述了嵌入式操作系统μC/OS-Ⅱ移植到XilinxMicroBlaze软核处理器上的操作。详尽的文档及源码提供了一些初始化芯片外设和中断服务程序,用于底层面向硬件实现的系统自带文件os_cpu_a.s汇编代码必须根据硬件修改,所以只适于μC/OS-Ⅱ操作系统。而且该文档没有提供清晰而简洁的技术方法。os_cpu_a.s中汇编代码实现中断处理前的现场保存与中断处理后的现场回复,直接对专用寄存器操作。但在嵌入式C代码实现中断向量地址、检查、启用和确认中断方面,虽然可以对多个中断设置不同优先级,却没有代码实例实现中断的抢占与嵌套处理。
论文《Spartan6芯片μC/OS II的可抢占式嵌套中断控制方法》是针对MicroBlaze软核处理器提出的技术方案,但流程图中“实现中断抢占逻辑”和“实现中断嵌套逻辑”是如何实现的,论文并没有详述,并且论文中对中断向量表的生成、中断控制器获得中断信号后对其优先级的比较判定、以至于判定优先级后是否会发生抢占或嵌套操作等都没有论述,这就使得该技术方案与已有的或传统的方法没有明显区分,对于Xilinx FPGAs芯片没有针对性。而只在Spartan6芯片上试验也不具备MicroBlaze软核处理器的通用性。
论文《基于FPGA中断管理的研究及硬件化设计》给出中断管理模块结构模型,采用VHDL将中断管理模块由硬件实现,设计中断源、中断嵌套等管理中断的电路,没有发挥MicroBlaze软核的作用,且局限于μC/OS-Ⅱ系统实现。
可见,对于Xilinx MicroBlaze软核处理器的AXI INTC中断控制器并没有实用、通用的中断请求处理方法。
发明内容
本发明所要解决的技术问题是克服现有技术的缺陷,提供一种适用于Xilinx软核处理器的中断通用处理方法,可以实现抢占或嵌套调度,并针对具备MicroBlaze软核处理器的多种Xilinx FPGAs芯片都可移植通用,而且使用标准C代码可以实现在多种嵌入式操作系统中移植使用。
为解决上述技术问题,本发明提供一种适用于Xilinx软核处理器的中断通用处理方法,包括以下步骤:
1)确定中断源个数INTC_NUM及优先级顺序,按照优先级从高到低的顺序排列生成中断向量数组INTC_Vector,所述中断向量数组INTC_Vector中的元素按照优先级顺序排列的中断处理程序函数,元素序号是优先级序号;
2)根据中断向量数组INTC_Vector设置中断掩码数组INTC_MSK和中断确认数组INTC_ACK,三个数组的长度都是INTC_NUM;
3)一旦有中断源发出请求信号,INTC中断控制器响应,进入中断处理;
4)MicroBlaze软核处理器系统自动关闭总中断;
5)保存所有寄存器内容,禁止中断;
6)中断嵌套计数器INTC_Counter加1;
7)判断中断嵌套计数器是否大于阈值,如果是,则跳转到步骤13);如果否,则进行步骤8);
8)读取IAR中断确认寄存器,获取当前最高优先级序号;
9)根据步骤8)确定的最高优先级序号,确定对应的中断掩码数组INTC_MSK元素、中断确认数组INTC_ACK元素和中断向量数组INTC_Vector元素;
10)将确定的中断掩码数组INTC_MSK元素写入IER中断使能寄存器,对应的中断确认数组INTC_ACK数组元素写入IAR中断确认寄存器;
11)开放INTC中断控制器总中断;
12)如果又有中断请求信号到来,则跳转到步骤4);如果没有中断请求信号到来,则进行步骤13);
13)找到并执行当前最高优先级序号对应的中断处理程序函数;
14)中断嵌套计数器INTC_Counter减1;
15)恢复寄存器内容;
16)中断处理退出。
前述的中断向量数组INTC_Vector中的元素序号按照十进制表示,从0开始;所述中断掩码数组INTC_MSK和中断确认数组INTC_ACK中的元素按照二进制表示;
所述中断向量数组INTC_Vector中的元素是按照优先级顺序排列的中断处理程序函数,所述中断掩码数组INTC_MSK的第n个元素是二进制表示的2n-1,所述中断确认数组INTC_ACK的第n个元素是二进制表示的2n,其中,n=0,1,2,……表示元素序号。
前述的步骤3)中,支持多个中断源同时发出请求信号。
前述的步骤7)中的阈值为一个小于INTC_NUM的整数值。
前述的中断处理过程采用具有可移植性的标准C代码实现,能够在MicroBlaze环境中应用到多种使用标准C代码完成的嵌入式操作系统中。
前述的移植C代码时,只需要确定中断源个数,中断嵌套计数器阈值,将各个中断源对应的中断处理程序函数作为中断向量数组元素并按优先级排列即可。
本发明所达到的有益效果为:
(1)本发明方法易操作,适用于固定优先级系统。中断向量表数组处理优先级清楚明晰,中断掩码数组和中断确认数组可根据中断源数目灵活设置,通过简单指令代码对这些数组的操作即可捕捉中断请求信号,并应用查表对应确定中断优先级,纵向定位三个数组的对应元素,实现中断抢占与嵌套以及中断服务。
(2)本发明通过设置中断计数器阈值,可以防止中断嵌套过深。
(3)本发明方法还具备通用性。使用标准C代码实现,能够在MicroBlaze环境中应用到多种使用标准C代码完成的嵌入式操作系统中。在多处理器系统中的AXI INTC中断处理器功能使得本发明方法可扩展到Xilinx 这类多处理器系统。
(4)本发明基于用户接口AXI4-Lite的Xilinx MicroBlaze软核处理器LogiCOREIP核AXI INTC中断控制器实现,所以本发明方法可以应用于Xilinx公司的具备用户接口AXI4-Lite的器件族 Virtex-6,
附图说明
图1为中断请求处理的一般方法流程图;
图2为DSP处理器的中断处理方法流程图;
图3为本发明方法的流程图。
具体实施方式
下面对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
本发明方法采用中断方式,只需要中断源发出请求,INTC中断控制器即可响应处理。
系统启动后,初始化程序会将INTC中断控制器初始化,总中断打开,才能接收中断信号输入。
参见图3,具体实施方法按照如下步骤执行:
(1)确定中断源个数INTC_NUM及其优先级顺序,按照优先级从高到低的顺序排列从而生成中断向量数组INTC_Vector,优先级是开发人员根据外设性质和工程需要自行设定的。
数组中的元素是按照优先级顺序排列的中断处理程序函数,元素序号是优先级序号。例如,INTC_Vector[INTC_NUM]={INTC_ISR1,INTC_ISR2,INTC_ISR3,INTC_ISR4,INTC_ISR5}。
(2)根据中断向量数组INTC_Vector设置中断掩码数组INTC_MSK和中断确认数组INTC_ACK,三个数组的长度都是INTC_NUM。设置中断掩码数组与中断确认数组必须按照以下表1确定,表中按照十进制表示元素序号,按照二进制表示INTC_MSK和INTC_ACK的元素。
表1
不失一般性,对应的同序号数组元素设置:中断掩码数组INTC_MSK的第n个元素是2n-1,中断确认数组INTC_ACK的第n个元素是2n,其中n=0,1,2,……。
(3)一旦有中断源发出请求信号,INTC中断控制器响应,进入中断处理。
(4)MicroBlaze软核处理器系统自动关闭总中断。
(5)保存所有寄存器内容,禁止中断。
(6)中断嵌套计数器INTC_Counter加1。
(7)判断中断嵌套计数器是否大于阈值(显然阈值必须不大于INTC_NUM,一般会取一个小于INTC_NUM的整数值):如果是,则跳转到第(13)步;如果否,则继续到步骤(8)。设置中断嵌套计数器阈值的目的在于防止同一中断反复进入或中断嵌套过深。
(8)读取IAR中断确认寄存器,获取当前最高优先级序号。同时发出中断请求的中断可能有多个,但IAR只反映当前优先级最高的中断,即IAR中断确认寄存器保存的就是当前最高优先级的序号,到步骤9掩码屏蔽低优先级中断,后面触发的是该最高优先级中断。
(9)查表1,确定步骤(8)确定的最高优先级序号对应的中断掩码数组元素、中断确认数组元素和中断向量数组元素(即中断服务程序函数)。
(10)将确定的INTC_MSK数组元素写入IER中断使能寄存器,对应的INTC_ACK数组元素写入IAR中断确认寄存器,屏蔽低优先级中断,开放高优先级中断,确认唯一中断触发。
在MicroBlaze软核处理器中,IER中断使能寄存器和IAR中断确认寄存器控制字定义规则。其中,IER的某一位写1,相应的中断服务使能;写0,相应的中断服务被禁止。IAR的某一位写1,相应的中断请求被清除;写0,相应的中断被激活,直到中断请求清除前一直保持激活状态。
(11)开放INTC中断控制器总中断。
(12)如果这时又有另一个中断请求信号到来,则跳转到第(4)步;当INTC中断控制器总中断打开,就可以接受新的中断请求信号,所以这时如果又有另一个中断请求信号到来,同样需要判断优先级,从而实现抢占。如果没有另一个中断请求信号,则直接执行下一步。
(13)找到并执行当前最高优先级中断处理程序函数。
(14)中断嵌套计数器INTC_Counter减1。
(15)恢复寄存器内容。
(16)中断处理退出。
本发明中步骤(4)和步骤(11)中的总中断是INTC中断控制器特有的。AXI INTC中断控制器接收来自外围设备的多个中断输入,并将它们合并到系统处理器的一个总中断输出,该输出是为了连接到一个能够产生中断条件的设备。
本发明中步骤(6)和步骤(14),通过中断嵌套计数器INTC_Counter累计计数确定中断处理进入次数或中断嵌套层数,进中断加1,出中断减1。进入中断处理前可初始化为0,中断处理结束后仍为0。
进一步的,本发明中中断掩码数组和中断确认数组元素数目可根据中断源数目灵活设置,通过简单指令代码对这些数组的操作即可捕捉中断请求信号。
进一步的,本发明采用通用的、具有可移植性的标准C代码实现,能够在MicroBlaze环境中应用到多种使用标准C代码完成的嵌入式操作系统中。代码可移植性,是将其他软件平台或编译环境的程序代码经过修改转移到自己的操作系统中。并且本发明标准C代码可作为Xilinx MicroBlzae处理器上操作系统(移植后的)的一部分。移植C代码时,只需要确定中断源个数,中断嵌套计数器阈值,将各个中断源对应的中断处理程序函数作为中断向量数组元素并按优先级排列即可。
AXI INTC中断处理器还支持可配置的软件中断数量,这些中断主要用于多处理器系统中的跨处理器中断,是由软件写入中断状态寄存器触发的。在多处理器系统中的AXIINTC中断处理器功能使得本发明方法应用到Xilinx 多处理器系统中,即中断信号既可以是硬件外设发出的硬件中断信号,又可以是软件中断信号。
本发明方法基于具备用户接口AXI4-Lite的Xilinx MicroBlaze软核处理器LogiCORE IP核AXI INTC中断控制器实现,而Xilinx公司的器件族Virtex-6,均具备MicroBlaze软核,所以本发明方法均可以应用于这些Xilinx公司的器件族。
更进一步的,基于本发明方法设计适用于Xilinx软核处理器的多中断通用处理系统,该系统包括可读的标准C代码以实现本发明方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (6)
1.一种适用于Xilinx软核处理器的中断通用处理方法,其特征在于,包括以下步骤:
1)确定中断源个数INTC_NUM及优先级顺序,按照优先级从高到低的顺序排列生成中断向量数组INTC_Vector,所述中断向量数组INTC_Vector中的元素按照优先级顺序排列的中断处理程序函数,元素序号是优先级序号;
2)根据中断向量数组INTC_Vector设置中断掩码数组INTC_MSK和中断确认数组INTC_ACK,三个数组的长度都是INTC_NUM;
3)一旦有中断源发出请求信号,INTC中断控制器响应,进入中断处理;
4)MicroBlaze软核处理器系统自动关闭总中断;
5)保存所有寄存器内容,禁止中断;
6)中断嵌套计数器INTC_Counter加1;
7)判断中断嵌套计数器是否大于阈值,如果是,则跳转到步骤13);如果否,则进行步骤8);
8)读取IAR中断确认寄存器,获取当前最高优先级序号;
9)根据步骤8)确定的最高优先级序号,确定对应的中断掩码数组INTC_MSK元素、中断确认数组INTC_ACK元素和中断向量数组INTC_Vector元素;
10)将确定的中断掩码数组INTC_MSK元素写入IER中断使能寄存器,对应的中断确认数组INTC_ACK数组元素写入IAR中断确认寄存器;
11)开放INTC中断控制器总中断;
12)如果又有中断请求信号到来,则跳转到步骤4);如果没有中断请求信号到来,则进行步骤13);
13)找到并执行当前最高优先级序号对应的中断处理程序函数;
14)中断嵌套计数器INTC_Counter减1;
15)恢复寄存器内容;
16)中断处理退出。
2.根据权利要求1所述的一种适用于Xilinx软核处理器的中断通用处理方法,其特征在于,所述中断向量数组INTC_Vector中的元素序号按照十进制表示,从0开始;所述中断掩码数组INTC_MSK和中断确认数组INTC_ACK中的元素按照二进制表示;
所述中断向量数组INTC_Vector中的元素是按照优先级顺序排列的中断处理程序函数,所述中断掩码数组INTC_MSK的第n个元素是二进制表示的2n-1,所述中断确认数组INTC_ACK的第n个元素是二进制表示的2n,其中,n=0,1,2,……表示元素序号。
3.根据权利要求1所述的一种适用于Xilinx软核处理器的中断通用处理方法,其特征在于,所述步骤3)中,支持多个中断源同时发出请求信号。
4.根据权利要求1所述的一种适用于Xilinx软核处理器的中断通用处理方法,其特征在于,所述步骤7)中的阈值为一个小于INTC_NUM的整数值。
5.根据权利要求1所述的一种适用于Xilinx软核处理器的中断通用处理方法,其特征在于,所述中断处理过程采用具有可移植性的标准C代码实现,能够在MicroBlaze环境中应用到多种使用标准C代码完成的嵌入式操作系统中。
6.根据权利要求5所述的一种适用于Xilinx软核处理器的中断通用处理方法,其特征在于,移植C代码时,只需要确定中断源个数,中断嵌套计数器阈值,将各个中断源对应的中断处理程序函数作为中断向量数组元素并按优先级排列即可。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811199886.1A CN109343950B (zh) | 2018-10-16 | 2018-10-16 | 一种适用于Xilinx软核处理器的中断通用处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811199886.1A CN109343950B (zh) | 2018-10-16 | 2018-10-16 | 一种适用于Xilinx软核处理器的中断通用处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109343950A true CN109343950A (zh) | 2019-02-15 |
CN109343950B CN109343950B (zh) | 2021-06-08 |
Family
ID=65310428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811199886.1A Active CN109343950B (zh) | 2018-10-16 | 2018-10-16 | 一种适用于Xilinx软核处理器的中断通用处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109343950B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778684A (zh) * | 2021-09-15 | 2021-12-10 | 中国电子科技集团公司第三十四研究所 | 一种面向多信息源的fpga与cpu数据同步装置及方法 |
CN114726657A (zh) * | 2022-03-21 | 2022-07-08 | 京东科技信息技术有限公司 | 中断管理和数据收发管理的方法、装置及智能网卡 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521177A (zh) * | 2011-12-07 | 2012-06-27 | 福建星网锐捷网络有限公司 | 中断处理方法及装置、中央处理器以及处理设备 |
CN103019848A (zh) * | 2012-12-25 | 2013-04-03 | 北京航天测控技术有限公司 | 一种pci总线非向量中断实现方法 |
CN103676727A (zh) * | 2013-11-27 | 2014-03-26 | 南京国电南自美卓控制系统有限公司 | 基于嵌入式芯片的可抢占、可嵌套中断控制方法 |
CN103778009A (zh) * | 2012-10-18 | 2014-05-07 | 深圳市中兴微电子技术有限公司 | 中断处理方法及装置 |
CN105335222A (zh) * | 2014-06-04 | 2016-02-17 | 华为技术有限公司 | 中断信息的处理方法、虚拟机监控器及中断控制器 |
US20160378699A1 (en) * | 2015-06-27 | 2016-12-29 | Vmware, Inc | Implementing pseudo non-masking interrupts behavior using a priority interrupt controller |
US9684613B2 (en) * | 2013-05-15 | 2017-06-20 | Seagate Technology Llc | Methods and systems for reducing spurious interrupts in a data storage system |
-
2018
- 2018-10-16 CN CN201811199886.1A patent/CN109343950B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521177A (zh) * | 2011-12-07 | 2012-06-27 | 福建星网锐捷网络有限公司 | 中断处理方法及装置、中央处理器以及处理设备 |
CN103778009A (zh) * | 2012-10-18 | 2014-05-07 | 深圳市中兴微电子技术有限公司 | 中断处理方法及装置 |
CN103019848A (zh) * | 2012-12-25 | 2013-04-03 | 北京航天测控技术有限公司 | 一种pci总线非向量中断实现方法 |
US9684613B2 (en) * | 2013-05-15 | 2017-06-20 | Seagate Technology Llc | Methods and systems for reducing spurious interrupts in a data storage system |
CN103676727A (zh) * | 2013-11-27 | 2014-03-26 | 南京国电南自美卓控制系统有限公司 | 基于嵌入式芯片的可抢占、可嵌套中断控制方法 |
CN105335222A (zh) * | 2014-06-04 | 2016-02-17 | 华为技术有限公司 | 中断信息的处理方法、虚拟机监控器及中断控制器 |
US20160378699A1 (en) * | 2015-06-27 | 2016-12-29 | Vmware, Inc | Implementing pseudo non-masking interrupts behavior using a priority interrupt controller |
Non-Patent Citations (2)
Title |
---|
孙丰祥,许学芳,程玉伟: "Spartan6芯片μC/OS II的可抢占式嵌套中断控制方法", 《单片机与嵌入式系统应用》 * |
王运盛,王坚: "VxWorks实时操作系统中的中断处理机制分析", 《电讯技术》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778684A (zh) * | 2021-09-15 | 2021-12-10 | 中国电子科技集团公司第三十四研究所 | 一种面向多信息源的fpga与cpu数据同步装置及方法 |
CN114726657A (zh) * | 2022-03-21 | 2022-07-08 | 京东科技信息技术有限公司 | 中断管理和数据收发管理的方法、装置及智能网卡 |
Also Published As
Publication number | Publication date |
---|---|
CN109343950B (zh) | 2021-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103761145B (zh) | 用于各个处理器的辅助中断虚拟化的访客中断控制器 | |
KR101673990B1 (ko) | 프로그램가능 예외 처리 지연 | |
CN107046508B (zh) | 报文接收方法及网络设备 | |
CN111656335A (zh) | 存储器控制器 | |
CN108268386A (zh) | 加速硬件中的存储器排序 | |
US20020161957A1 (en) | Methods and systems for handling interrupts | |
CN104025050A (zh) | 在图形处理单元上虚拟机之间变化 | |
US20020065953A1 (en) | Priority in a portable thread environment | |
CN102067083A (zh) | 对虚拟化环境中的中断结束消息的懒惰处理 | |
CN101529392A (zh) | 在非侵入性数字信号处理器调试期间用于指令填充操作的方法和系统 | |
US6961934B2 (en) | Portable thread environment | |
KR20160051883A (ko) | 가상 재시도 큐 | |
US20130318530A1 (en) | Deadlock/livelock resolution using service processor | |
US20070198997A1 (en) | Customer framework for embedded applications | |
US6938246B2 (en) | Diagnostic tool for a portable thread environment | |
CN109343950A (zh) | 一种适用于Xilinx软核处理器的中断通用处理方法 | |
US7209993B2 (en) | Apparatus and method for interrupt control | |
CN103019848B (zh) | 一种pci总线非向量中断实现方法 | |
CN110858164B (zh) | 进程间通信方法、装置及计算机可读介质 | |
CN101639791B (zh) | 一种改善嵌入式实时操作系统中断延迟的方法 | |
US11360702B2 (en) | Controller event queues | |
US20050193260A1 (en) | Interrupt control program, recording medium, and interrupt control method | |
US7680967B2 (en) | Configurable application specific standard product with configurable I/O | |
US7562207B2 (en) | Deterministic microcontroller with context manager | |
US10803007B1 (en) | Reconfigurable instruction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB03 | Change of inventor or designer information |
Inventor after: Luo Ming Inventor after: Xu Xuefang Inventor after: Ding Junjian Inventor before: Luo Ming Inventor before: Xu Xuefang Inventor before: Ding Junjian |
|
CB03 | Change of inventor or designer information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |