A video decoding method, based on a data and function splitting scheme using a variable length decoding unit, N number of clusters arranged in a unidirectional loop, N number of data memories supporting data communication between the variable length decoding unit and the N number of clusters, each cluster including M number of resources, a corresponding shared memory that receives an output only from said each cluster for exclusive use by one of the clusters immediately downstream from said each cluster, and (M−1) number of resource shared memories that is each exclusively shared by neighboring two of the M number of resources, N and M being natural numbers larger than 1, the method comprising:
- performing variable length decoding and parsing on a bit stream of the video to acquire residual data and a decoding parameter from a bit stream, and splitting the residual data and the decoding parameter by row;
- acquiring, by each of the N number of clusters, the residual data and the decoding parameter, and macroblock (MB) processing information from the corresponding shared memory of one of the clusters immediately upstream from said each cluster;
- splitting, by said each of the N number of clusters, a decoding operation into M number of functions to be respectively processed by the M number of resources, splitting the acquired residual data, decoding parameter and MB processing information, and parallel-processing the same using the M number of resources;
- and
- supporting, for said each of the N number of clusters, inter-resource data communication between neighboring two of the M number of resources in said each cluster using the (M−1) number of resource shared memories thereof.