An operation device, comprising an instruction module, a data module and an operation module, wherein: the instruction module is used to cache an instruction, and provide the instruction to the data module and operation module; the data module is used to provide an operation data to the operation module according to the instruction in the instruction module; the operation module is used to perform an operation according to the instruction in the instruction module and the operation data provided by the data module; wherein the data module comprises a data I/O unit and a data temporary storage unit, wherein the data temporary storage unit is used to store the operation data and provide it to the operation module after adjusting the operation data; wherein the data temporary storage unit storing the operation data and providing it to the operation module after adjusting the operation data comprising: when lengths of two operation data that are involved in the operation are less than or equal to an operation scale of the operation module, the data temporary storage unit directly provides the two operation data to the operation module; when lengths of two operation data that are involved in the operation are greater than an operation scale of the operation module, each operation data is divided into a plurality of sub-operation data whose length is less than or equal to the operation scale, and the sub-operation data is provided to the operation module in multiple times; characterized in that: when a length of one of two operation data that are involved in the operation is greater than an operation scale of the operation module and a length of another operation data of the two operation data that are involved in the operation is less than or equal to the operation scale of the operation module, the operation data having the length greater than the operation scale is divided into a plurality of sub-operation data each having a length equal to or smaller than the operation scale, and the plurality of sub-operation data and the operation data having the length less than or equal to the operation scale are provided to the operation module in multiple times; wherein the operation data is a vector, and the length of the operation data is a number of elements of the vector. the instruction module is used to cache an instruction, and provide the instruction to the data module and operation module; the data module is used to provide an operation data to the operation module according to the instruction in the instruction module; the operation module is used to perform an operation according to the instruction in the instruction module and the operation data provided by the data module; wherein the data module comprises a data I/O unit and a data temporary storage unit, wherein the data temporary storage unit is used to store the operation data and provide it to the operation module after adjusting the operation data; wherein the data temporary storage unit storing the operation data and providing it to the operation module after adjusting the operation data comprising: when lengths of two operation data that are involved in the operation are less than or equal to an operation scale of the operation module, the data temporary storage unit directly provides the two operation data to the operation module; when lengths of two operation data that are involved in the operation are greater than an operation scale of the operation module, each operation data is divided into a plurality of sub-operation data whose length is less than or equal to the operation scale, and the sub-operation data is provided to the operation module in multiple times; characterized in that: when a length of one of two operation data that are involved in the operation is greater than an operation scale of the operation module and a length of another operation data of the two operation data that are involved in the operation is less than or equal to the operation scale of the operation module, the operation data having the length greater than the operation scale is divided into a plurality of sub-operation data each having a length equal to or smaller than the operation scale, and the plurality of sub-operation data and the operation data having the length less than or equal to the operation scale are provided to the operation module in multiple times; wherein the operation data is a vector, and the length of the operation data is a number of elements of the vector. when a length of one of two operation data that are involved in the operation is greater than an operation scale of the operation module and a length of another operation data of the two operation data that are involved in the operation is less than or equal to the operation scale of the operation module, the operation data having the length greater than the operation scale is divided into a plurality of sub-operation data each having a length equal to or smaller than the operation scale, and the plurality of sub-operation data and the operation data having the length less than or equal to the operation scale are provided to the operation module in multiple times; wherein the operation data is a vector, and the length of the operation data is a number of elements of the vector.