A method for arbitrating priority levels comprising: setting a plurality of first stage polling arbiters and a second stage priority level arbiter respectively, wherein the number of the first stage polling arbiters is equal to the number of priority levels contained in a plurality of source ends; receiving task request signals for requesting tasks from the plurality of source ends, and assigning request tasks with the same priority level to the same first stage polling arbiter; each of the first stage polling arbiters polling the received request tasks with the same priority level respectively to obtain one request task, and transmitting the request task to the second stage priority level arbiter; the second stage priority level arbiter receiving the plurality of request tasks, and outputting an output result of request tasks with the highest priority level to a destination end, wherein the step of assigning the request tasks with the same priority level to the same first stage polling arbiter further comprises: assigning the request tasks with the same priority level from the same source end to a corresponding first stage polling arbiter in sequence, characterised in that, if a command for changing the priority level of the request tasks is received if the request tasks have been processed by the corresponding first stage polling arbiter, changing the priority level of the request tasks, and assigning the request tasks to the corresponding first stage polling arbiter according to the changed priority level; and if the request tasks are not sent to the corresponding first stage polling arbiter, changing the priority level of the request tasks, and assigning the request tasks to the corresponding first stage polling arbiter according to the changed priority level; if the request tasks have been sent to the corresponding first stage polling arbiter and are not processed, not changing the priority level of the request tasks; and if the first stage polling arbiter corresponding to the previous priority level of the request tasks is in an idle state, changing the priority level of the request tasks, and assigning the request tasks to the corresponding first stage polling arbiter according to the changed priority level; if the first stage polling arbiters corresponding to the previous priority level of the request tasks is in a busy state, not changing the priority level of the request tasks. setting a plurality of first stage polling arbiters and a second stage priority level arbiter respectively, wherein the number of the first stage polling arbiters is equal to the number of priority levels contained in a plurality of source ends; receiving task request signals for requesting tasks from the plurality of source ends, and assigning request tasks with the same priority level to the same first stage polling arbiter; each of the first stage polling arbiters polling the received request tasks with the same priority level respectively to obtain one request task, and transmitting the request task to the second stage priority level arbiter; the second stage priority level arbiter receiving the plurality of request tasks, and outputting an output result of request tasks with the highest priority level to a destination end, wherein the step of assigning the request tasks with the same priority level to the same first stage polling arbiter further comprises: assigning the request tasks with the same priority level from the same source end to a corresponding first stage polling arbiter in sequence, characterised in that, if a command for changing the priority level of the request tasks is received if the request tasks have been processed by the corresponding first stage polling arbiter, changing the priority level of the request tasks, and assigning the request tasks to the corresponding first stage polling arbiter according to the changed priority level; and if the request tasks are not sent to the corresponding first stage polling arbiter, changing the priority level of the request tasks, and assigning the request tasks to the corresponding first stage polling arbiter according to the changed priority level; assigning the request tasks with the same priority level from the same source end to a corresponding first stage polling arbiter in sequence, characterised in that, if a command for changing the priority level of the request tasks is received if the request tasks have been processed by the corresponding first stage polling arbiter, changing the priority level of the request tasks, and assigning the request tasks to the corresponding first stage polling arbiter according to the changed priority level; and if the request tasks are not sent to the corresponding first stage polling arbiter, changing the priority level of the request tasks, and assigning the request tasks to the corresponding first stage polling arbiter according to the changed priority level; if the request tasks have been sent to the corresponding first stage polling arbiter and are not processed, not changing the priority level of the request tasks; and if the first stage polling arbiter corresponding to the previous priority level of the request tasks is in an idle state, changing the priority level of the request tasks, and assigning the request tasks to the corresponding first stage polling arbiter according to the changed priority level; if the first stage polling arbiters corresponding to the previous priority level of the request tasks is in a busy state, not changing the priority level of the request tasks.