Code allocation has a significant impact on the performance of Code Division Multiple Access (CDMA) systems. For the uplink direction, in 3G Wideband CDMA (WCDMA) cellular systems, orthogonal codes are employed to differentiate the physical channels of one transmitter and Pseudo Noise (PN) sequences are used to provide mutual randomness between the users. Since the received data spread by different codes are not perfectly orthogonal, the emerged Multiple Access Interference (MAI) is a major limitation of the system capacity. In this paper, we propose a new code allocation scheme with the aim of reducing the interference by decreasing the number of non-orthogonal spreading codes used in a cell. Consequently, the new proposed scheme improves the system capacity for the uplink direction in term of accepted calls in one cell. The idea behind is to assign one scrambling code for each class of service in a cell instead of assigning one scrambling code per mobile station as in 3G WCDMA-based...