A convolution operation device includes a convolution calculation module, a memory and a buffer device. The convolution calculation module has a plurality of convolution units, and each convolution unit performs a convolution operation according to a filter and a plurality of current data, and remains a part of the current data after the convolution operation. The buffer device is coupled to the memory and the convolution calculation module for retrieving a plurality of new data from the memory and inputting the new data to each of the convolution units. The new data are not duplicated with the current data. A convolution operation method is also disclosed.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A convolution operation device, comprising: a convolution calculation module having a plurality of convolution units, wherein each of the convolution units performs a convolution operation according to a filter and a plurality of current data, and remains a part of the current data after the convolution operation; a memory; and a buffer device coupled to the memory and the convolution calculation module, wherein the buffer device retrieves a plurality of new data from the memory and inputs the new data to the convolution units, and the new data are not duplicated with the current data; wherein, the convolution units performs a next convolution operation according to the filter, the remained part of the current data, and the new data. 2. The convolution operation device of claim 1, wherein a stride for moving the filter is smaller than a shortest width of the filter. 3. The convolution operation device of claim 1, further comprising: an interleaving sum unit coupled to the convolution operation module and generating a characteristics output result according to a result of the convolution operation. 4. The convolution operation device of claim 3, wherein the convolution operation device comprises a plurality of the convolution operation modules, and the convolution units and the interleaving sum unit are operated in a low-scale convolution mode or a high-scale convolution mode; wherein, in the low-scale convolution mode, the interleaving sum unit is configured to sum results of the convolution operations of the convolution operation modules by interleaving so as to output sum results; and wherein, in the high-scale convolution mode, the interleaving sum unit is configured to sum the results of the convolution operations of the convolution units as outputs. 5. The convolution operation device of claim 3, further comprising: a sum buffer unit coupled to the interleaving sum unit and the buffer device for registering the characteristics output result; wherein, after finishing selected convolution operations, the buffer device retrieves all data registered in the sum buffer unit and writes the retrieved data into the memory. 6. The convolution operation device of claim 5, wherein the sum buffer unit comprises: a partial sum region for registering data outputted from the interleaving sum unit; and a pooling region performing a pooling operation with the data registered in the partial sum region. 7. The convolution operation device of claim 6, wherein the pooling operation is a max pooling or an average pooling. 8. The convolution operation device of claim 1, further comprising: a data reading controller; and an instruction decoder receiving a control instruction from the data reading controller and decoding the control instruction for obtaining a size, a number of columns, a number of rows, a characteristics number of data inputted from the memory, and an initial address of the inputted data in the memory. 9. The convolution operation device of claim 1, wherein each of the convolution units comprises: a plurality of low-scale convolution outputs, wherein each of the convolution units performs a low-scale convolution operation for outputting the convolution result; and a plurality of high-scale convolution outputs, wherein each of the convolution units outputs performs a high-scale convolution operation for outputting a high-scale convolution result. 10. A convolution operation method for a data stream, comprising steps of: sliding a convolution operation window; retrieving data, which are not processed in a previous convolution operation, from the data stream; performing a current convolution operation with data remained in a convolution operation module and the data retrieved from the data stream according to a filter coefficient of the convolution operation window; and remaining a part of the data for the current convolution operation in the convolution operation module, wherein the remained part of the data is provided for a next convolution operation. 11. The convolution operation method of claim 10, further comprising a step of: performing a partial operation for a consecutive layer of a convolutional neural network according to the results of the current convolution operation. 12. The convolution operation method of claim 10, wherein a stride for a sliding window of the convolution operation is smaller than a shortest width of the sliding window. 13. The convolution operation method of claim 10, further comprising steps of: selecting one of a low-scale convolution mode and a high-scale convolution mode for performing the convolution operation; and when selecting the low-scale convolution mode, summing results of the convolution operations of the convolution operations corresponding to channels by interleaving with an interleaving sum unit so as to output sum results. 14. The convolution operation method of claim 10, further comprising a step of: performing a pooling operation with the results of the convolution operations. 15. The convolution operation method of claim 14, wherein the pooling operation is a max pooling or an average pooling.