Bulk percentage profile computation
The percentile-based computation method for determining bit loading profiles in DOCSIS networks addresses the issue of non-optimized profile assignments, enhancing throughput and reducing errors by leveraging bulk noise data analysis.
Patent Information
- Application Number
- PCT/US2024/052652
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-10-23
- Filing Date
- 2024-10-23
- Publication Date
- 2025-05-01
AI Technical Summary
In DOCSIS networks, the assignment of bit loading profiles to cable modems is not uniquely optimized for each modem, leading to increased error proneness in transmissions.
A percentile-based computation method is used to determine bit loading profiles by analyzing bulk noise data collected by cable modems, improving throughput and reducing errors compared to traditional clustering techniques.
The percentile-based approach enhances the overall throughput of DOCSIS networks by optimizing bit loading profiles based on aggregated noise data, thereby reducing transmission errors and improving channel efficiency.
Smart Images

Figure US2024052652_01052025_PF_FP_ABST
Abstract
Description
BULK PERCENTAGE PROFILE COMPUTATIONCROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority under 35 USC 119(e) to the filing date of U.S. Provisional Application No 63 / 545,334 filed on October 23, 2023, the contents of which are hereby incorporated by reference in its entiretyBACKGROUND
[0002] The subject matter of this application generally relates to the creation and assignment of bit loading profiles to cable modems in a DOCSIS transmission architecture.
[0003] Orthogonal Frequency Division Multiplexing (OFDM) technology was introduced as a cable data transmission modulation technique during the creation of the CableLabs DOCSIS 3. 1 specification. OFDM technology was defined for use directly in the downstream direction and was adapted for multiple access (Orthogonal Frequency Division with Multiple Access - OFDMA) for use in the upstream direction. In each direction, the relatively wide channel is subdivided into many small subcarriers. In the downstream direction, each of these subcarriers may use its own Quadrature Amplitude Modulation (QAM) level, which equates to a different bit capacity per subcarrier QAM symbol. In the upstream direction, groups of subcarriers are combined and, w hen time multiplexed, create the atomic unit of upstream bandwidth assignment known as a “minislot.’' In the upstream direction, all subcarriers of a minislot are assigned the same QAM level and thus all subcarriers of a minislot have the same bit capacity per QAM symbol.
[0004] The purpose of OFDM / OFDMA technology is to maximize the efficiency of data transmissions across a cable data network by optimizing the QAM modulation level used for each subcarrier of RF frequency bandwidth. Ideally, each cable modem would be assigned its own vector of per-subcarrier QAM modulation levels, i.e. a. bit loading vector, that is uniquely optimized for that cable modem. For cost reasons, however, the DOCSIS 3.1 specification defines a compromise where groups of cablemodems having similar RF characteristics can be assigned the same bit loading vector, if that vector is constructed such that that all cable modems assigned that vector could use it. In this manner, the needed number of bit loading vectors could be reduced to a cost-manageable set of ‘‘bit loading profiles” that could each be assigned to multiple cable modems at once. For example, the current generation of DOCSIS allows head ends that communicate with cable modems to utilize up to sixteen bit loading profiles per channel in the downstream direction and up to seven bit loading profiles per channel in the upstream direction. Similarly, the current generation of DOCSIS permits each cable modem to be assigned up to five profiles per channel in the dow nstream direction and up to two profiles per channel in the upstream direction.
[0005] However, because each cable modem is no longer assigned a bit loading profile uniquely optimized for that cable modem, transmissions over the network are more prone to errors. What is desired, therefore, is an improved method of determining a plurality of bit loading vectors that are assigned among cable modems in a DOCSIS network.BRIEF DESCRIPTION OF THE DRAWINGS
[0006] For a better understanding of the invention, and to show how the same may be carried into effect, reference will now be made, by way of example, to the accompanying drawings, in which:
[0007] FIG. 1 illustrates an Orthogonal Frequency Division Multiplexing technique.
[0008] FIG. 2 illustrates a Quadrature Amplitude Modulation technique.
[0009] FIG. 3 shows a DOCSIS network transmission architecture for delivering content to a plurality of cable modems, organized into groups so as to reduce transmission errors, and where the cable modems each use one or more bit loading profiles.
[0010] FIG. 4 shows exemplary upstream noise data by OFDMA subcarrier frequency, along with a histogram and a cumulative distribution function of the noise data.
[0011] FIG. 5 shows an exemplary method of using upstream noise data to create bit loading profiles and assign them to cable modems.DETAILED DESCRIPTION
[0012] Preliminarily, the following terms will be accorded the meanings that respectively follow them, which should be understood by those familiar with the art. These meanings are provided to facilitate understanding of the specification by those unskilled in the art, as well.
[0013] Allowable QAM: The list of QAM ordered modulation that may be used in an upstream OFDMA system. For example, a CMTS may support up to 10-bit QAM etc. Allowable QAM is a list of all QAM modulation orders that may be used, for example [6, 7, 8, 9, 10],
[0014] Max Profiles: A number representing the maximum number of allowable profiles for this OFDMA channel. A typical value may be 4 or 7.
[0015] Max Exceptions: A number representing the maximum number of exclusions allowed in describing a profile. Typical values may be 4, 10, or 16 for some releases with RPDs.
[0016] MER Thresholds: MER Thresholds are the level of MER readings necessary to support a specific QAM modulation. For example, to support 10-bit QAM assuming an acceptable bit-error rate of .05%, a MER must be greater than or equal to 34dB, thus 34 would be the MER threshold for 10-bit QAM in this case. The ICO-2 code base includes a method to calculate the MER threshold for all QAM values in the Allowable QAM list given a specific acceptable bit-error rate.
[0017] RxMER Vector: A RxMER vector is a list of RxMER values taken at a single point in time. The length of the list is dependent on the OFDMA channelwidth and the sub-carrier spacing. Typically, all available QAM modulation orders use 50 kHz spacing or equivalently 20 sub-carriers per 1 MHz of channel width. An OFDMA channel of 24 MHz will have RxMER vectors of length 480 (24x20) where each point represents the RxMER value for a specific sub-carrier on the channel ordered from the lowest frequency sub-carrier to the highest frequency sub-carrier.
[0018] MAX QAM PERCENT: The percentile value of the MAX QAM MER relative to the entire set of MER data.
[0019] MAX QAM MULTIPLIER: A meta-parameter that represents a multiplier on the Max_QAM_Percent value. The default value is 1.0. Allowable values are in range [0, 2]
[0020] ADJUSTED QAM PERCENT: Equal to the MAX QAM PERCENT x MAX QAM MULTIPLIER but less than 100.
[0021] Channel MER: Channel MER is a MER vector that is at channel resolution. Channel resolution is equivalent to the number of minislots on the OFDMA channel. For example if an OFDMA channel is 8 MHz wide it will have 160 sub-carriers assuming 50 kHz spacing and 20 minislots each 400 kHz wide. In this case the channel MER is length of 20 or 1 / 8 of the sub-carrier RxMER, i.e. each minislot consists of 8 consecutive sub-carriers. Note that for a 25 kHz spacing there are 16 sub-carriers per mini slot.
[0022] OFDM is based on the well-known technique of Frequency Division Multiplexing (FDM). In FDM different streams of information are mapped onto separate parallel frequency channels. Each FDM channel is separated from the others by a frequency guard band to reduce interference between adjacent channels.
[0023] Orthogonal Frequency Division Multiplexing (OFDM) extends the FDM technique by using multiple subcarriers within each channel. Rather than transmit a high-rate stream of data with a single subcarrier, OFDM makes use of a large number of closely spaced orthogonal subcarriers that are transmitted in parallel. Each subcarrier is modulated with a conventional digital modulation scheme (e.g. QPSK,16QAM, etc.) at low symbol rate. However, the combination of many subcarriers enables data rates similar to conventional single-carrier modulation schemes within equivalent bandwidths.
[0024] Referring for example to FIG. 1, in the frequency domain, adjacent orthogonal tones or subcarriers 1 and 2 may be each independently modulated with complex data. Though only two subcarriers are illustrated in FIG. 1, those of ordinary skill in the art will appreciate that a typical OFDM transmission will include a large number of orthogonal subcarriers. As just note noted, subcarriers 1 and 2 (as well as all other subcarriers) are orthogonal to each other. Specifically, as can be seen in FIG. 1, subcarrier 1 has spectral energy comprising a sine function having a center frequency 3 with sidebands having peaks and nulls at regular intervals. These sidebands overlap those of subcarrier 2, but each of the spectral peaks of subcarrier 1 align with the nulls of subcarrier 2. Accordingly, the overlap of spectral energy does not interfere with the system’s ability to recover the original signal; the receiver multiplies (i.e. , correlates) the incoming signal by the know n set of sinusoids to recover the original set of bits sent.
[0025] In the time domain, all frequency subcarriers 1, 2 etc. are combined in respective symbol intervals 4 by performing an Inverse Fast Fourier Transform (IFFT) on the individual subcarriers in the frequency domain. Guard bands 5 may preferably be inserted between each of the symbol intervals 4 to prevent inter-symbol interference caused by multi-path delay spread in the radio channel. In this manner, multiple symbols contained in the respective subcarriers can be concatenated to create a final OFDM burst signal. To recover the signal at a receiver, a Fast Fourier Transform (FFT) may be performed to recover the original data bits.
[0026] As also noted previously, each subcarrier in an OFDM transmission may be independently modulated with complex data among a plurality' of predefined amplitudes and phases. FIG. 2. for example, illustrates a Quadrature Amplitude Modulation (QAM) technique where a subcarrier may be modulated among a selective one of sixteen different phase / amplitude combinations (16QAM). Thus, for example, subcarrier 1 of FIG. 1 may in a first symbol interval transmit the symbol0000 by having an amplitude of 25% and a phase of 45° and may in a second symbol interval transmit the symbol 101 1 by having an amplitude of 75% and a phase of 135°. Similarly, the subcarrier 2 may transmit a selected one of a plurality of different symbols.
[0027] FIG. 2 illustrates a 16QAM modulation technique, but modem DOCSIS transmission architectures allow for modulations of up to 4096QAM. Moreover, each of the subcarriers 1, 2, etc. shown in FIG. 1 may operate with its own independent QAM modulation, i.e. subcarrier 1 may transmit a 256QAM symbol while subcarrier 2 may transmit a 2048QAM symbol. Thus, in order for a receiver and a transmitter to properly communicate, a bit loading profile is a vector that specifies, for each subcarrier, the modulation order (16QAM, 256QAM, etc) used by the subcarrier during a symbol interval. The current DOCSIS 3.1 specification allows each cable modem to be assigned up to five different bit loading profiles that it is allowed to use in the downstream direction, and up to two different bit loading profiles that it is allowed to use in the upstream direction. The particular bit loading profile used for a given symbol interval is communicated between the cable modem and a head end, so that transmitted information can be properly decoded.
[0028] FIG. 3 illustrates a system that uses bit loading profiles to communicate data in a DOCSIS architecture. Specifically, a system 10 may include a Cable Modem Termination Service (CMTS) 12 typically found within a head end of a video content and / or data service provider. The CMTS 12 communicates with a plurality of cable modems 16 at its customers' premises via a network through one or more nodes 14. Typically, the network may be a hybrid fiber-coaxial network where the majority of the transmission distance comprises optical fiber, except for trunk lines to Optical Network Units (not shown) at the customers' premises and cabling from the ONUs to the cable modems 16, which are coaxial. More recent architectures, e g. Fiber-to-the Premises (FTTP) however, have replaced the entire line from the ONUs to the upstream node with optical fiber.
[0029] As already mentioned, ideally each cable modem 16 would be assigned a bit loading profile specifically tailored to the performance characteristics of that cablemodem. For example, higher modulation orders can be assigned to subcarriers experiencing higher a SNR characteristic over a channel used by a cable modem, and lower modulation orders may be best for subcarriers with a low SNR characteristic. In this manner, the bandwidth efficiency of transmissions to and from a cable modem are high when if the cable modem’s ideal bit loading vector closely follows the bit loading profile in use by the cable modem. However, because the DOCSIS standard restricts the number of available profiles that can be used by cable modems, a Cable Modem Termination Service (CMTS) must communicate with multiple cable modems 16 with different SNR profiles using the same bit loading profile. For example. FIG. 3 shows an example where cable modems 16 are segmented into groups 18, 20, and 22 where the cable modems 16 in each group are assigned a common bit loading profile by the CMTS 12. This virtually guarantees that not all cable modems will use a bit loading profile that closely follows its optimum bit loading vector.
[0030] Thus, in order to most efficiently use the limited number of available bit loading profiles, the CMTS 12 preferably divides cable modems 16 into groups that each have similar performance characteristics. To this end, the CMTS 12 may periodically include in the downstream transmission known pilot tones that together span the entire OFDM downstream bandwidth. Each cable modem 16 then uses these pilots to measure its error for received downstream transmissions at each subcarrier frequency, where the error at a particular modulation frequency is measured based on the vector in the 1-Q plane (shown in FIG. 2) between the ideal constellation point at that modulation order and the actual constellation point received by the receiver. Such error measurements may comprise any of several available forms, including the actual error vector, the Euclidian distance between these tw o points, or the Modulation Error Ratio (MER) calculated from the error vector. Alternatively, in some embodiments, the error measurement may be expressed as a maximum QAM value that a cable modem may reliably use at a given subcarrier, given the measured error.
[0031] The collection of the errors for a cable modem, across all subcarrier frequencies, produces the modulation error data (typically expressed as a vector) forthat cable modem 16, which is transmitted back to the CMTS 12. For upstream transmissions, the process is generally reversed; the CMTS 12 commands each cable modem to send known pilot tones to the CMTS together spanning the entire OFDM upstream bandwidth in a single upstream probing signal for each particular cable modem 16. The CMTS 12 uses these received probing signals to estimate the upstream modulation error data for each of the cable modems.
[0032] Once the CMTS 12 has assembled the modulation error data for all cable modems that it serves, it preferably uses this data to organize the cable modems into ■‘N’’ groups of cable modems, where “N” is at most the number of profiles available to the collection of cable modems. For example, in a DOCSIS 3.1 environment, cable modems could be arranged in up to sixteen groups for receiving signals in the downstream direction and up to seven groups for receiving signals in the upstream direction.
[0033] Typically, a K-means clustering technique is used to arrange cable modems into groups. For example, in one such technique “N’‘ seed vectors may be initially chosen by. e.g. randomly selecting error vectors from among the collection of cable modems, and using each of the cable modems associated with these vectors as the initial members of the “N” groups. Then, another cable modem is selected, and it is placed in the group for which the cable modem's error vector has the shortest Euclidean distance to the centroid of the error vectors already within that group. Once a cable modem is added to the group, the centroid for that group is updated based on the error vector of the added cable modem. This process repeats until all cable modems have been assigned to a group. Alternative K-means clustering techniques may also be employed, by for example, initially assigning all cable modems to the initial ”N" groups based on the minimum Euclidean distance to the initial seed vectors and then recomputing the centroids of each group. After recomputing the centroids, each cable modem is reassigned, a new centroid is computed etc. until the process converges to a point where no cable modems are reassigned.
[0034] Once all cable modems are finally assigned into the desired plurality of groups, a set of available bit loading profiles may be generated for the CMTS toassign to the population of cable modems serviced in each of the upstream and downstream directions, and subsequently the cable modems in each group may be assigned profiles from this set.
[0035] The effectiveness of the clustering technique previously described is limited, and in particular it is heavily influenced by the selection of the initial seed vectors for each of the profile groups. As noted above, one technique is to randomly select seed vectors from among the error vectors in the population of cable modems served by a head end. However, this approach has limited effectiveness in maximizing channel efficiency, given the hit-or-miss approach of random seed vector selection. Moreover, random selection of seed vectors frequently causes drastic changes in configuration parameters when the system is updated based on new MER measurements. As another example, small changes in MER measurements may cause the K-means clustering technique to group cable modems in an entirely new way such that cable modems may not be associated with any of the same bit loading profiles. Widespread system changes may even be necessary when a cable modem is assigned the same set of profile vectors or a very similar set of profile vectors before and after a management update. For example, after incorporating new MER measurements, profile 1 for a cable modem after an update may be the same as or similar to profile 3 for that cable modem before the update, yet the new profile assignments require signalling of widespread configuration changes to the entire population of cable modems.
[0036] Accordingly, the present specification discloses an alternate approach of determining bit loading profiles and assigning them to cable modems which, instead of a clustering technique utilizes a percentile-based computation on the bulk noise data collected by the cable modems. From observed field data, this percentile-based approach improves the overall throughput relative to what what the clustering algorithm achieves, and also improves over using simple flat profiles. This percentile approach has been informally named the ‘bulkPercentile’ approach due to the fact that this method relies on all RxMER data from all modems and all times as it calculates percentiles.
[0037] FIG. 4 shows an example of aggregated upstream noise data in plot 30, where received modulation error ratio (RxMER) is plotted as a function of frequency, measured from a plurality7of cable modems. From this data, a probability distribution 32 may be plotted showing the relative frequency of each MER value in plot 30. Finally, a cumulative distribution 34 shows the total likelihood of a given MER value or less. From such data, this specification discloses novel systems and methods of determining a set of bit loading profiles and assigning those profiles to cable modems.
[0038] Specifically, the disclosed systems and methods utilize aggregated noise data, such as is shown in FIG. 4 to associate a particular or predefined QAM value with a first percentile score. In one embodiment, this percentile score measures the percent of the aggregated MER data that is at or below that predefined QAM value. In preferred embodiments, the predefined QAM value is the maximum QAM value allowed by a CMTS. The percentile score may then be used to associate each of a predefined number of bit loading profiles with respective second percentile scores. In preferred embodiments, the second percentile scores are each different from each other, and less than or equal to the first percentile score. The respective second percentile scores are then used to determine, for each of the predefined number of bit loading profiles, the QAM values at each frequency range of the respective profile e.g., subcarrier frequency, minislot, etc. The profiles may then be assigned to cable modems
[0039] FIG. 5 illustrates one or more steps a preferred such method 50. At step 50, from the collected noise data, minislots are mapped and the MER Noise Mitigation subcarriers are removed. If the Broadcom Noise Mitigation feature is enabled, there are many single sub-carrier exclusion zones where no data is transmitted. These include carrier exclusions that are distributed throughout the channel. These may be auto-detected using a detection algorithm, or they could be explicitly announced with the exclusion zone list in the input json metadata object. Once the list of Noise Mitigation subcarriers is known, a map is preferably generated to map the minislots to subcarriers. Without such noise mitigation, this step may not be necessary, since it may be assumed that minislots begin on the first activesubcarrier and all minislots follow with consecutive subcarriers. The implicit mapping is that the start of each minislot is simply found by taking the last minislot and adding the minislot subcarrier size. However, when some subcarriers are excluded as in the noise mitigation feature this approach is no longer valid.
[0040] To generate the mapping, one algorithm that works for the Noise Mitigation and more general user defined exclusions is as follows although other approaches may work as well:BEGIN at first active sub_carrier.Generate a list of sub_carrier indices that would be in this minislot.If any of the indices in the list are also in the excluded minislot list this minislot is not valid.Increment to the next sub carrier and retry.If no excluded subcarriers are in the list of subcarriers for the minislot then the minislot is valid. This minislot should be given an incremental minislot number and stored with the starting minislot sub_carrier.Repeat process with the first sub carrier after this minislot.A python prototype is show n below, the returned value is a list of tuples where each tuple is (minislotynumber, subcarrier at start of minislot). def minislotsl( num_subcarriers , excl, ms_size = 8) :Generates mapping of minislot number and beginning subcarrier number Input : number of subcarriers in the channel and list of excluded subcarriers .The minislot size (ms_size) defaults to 8.Returns : list of tuples of (minislot_number, sub- carrier number) mslots = [ ] ms_counter = 0 sc_number = 0 while sc_number < = num_subcarriers -ms_size : if exclusion_in_ms ( sc_number , excl) : sc_number += 1 else : mslots . append ( (ms_counter, sc_number) ) ms_counter += 1 sc_number += ms_size return mslots def exclusion in ms (se number, excl) :sc_list = [ sc_number + i for i in range(8) ] err = False for e in excl : if e in sc list : err = True return err
[0041] Once this mapping is known, all excluded subcarriers and unused subcarriers should be removed from every modem MER data vector. Once these MER values are removed, the total number of subcarriers remaining will be the original number of subcarriers less the number of excluded and unused subcarriers. The maximum number of noise mitigation subcarrier exclusions is 32 but fewer numbers of subcarriers are possible depending on the width of the OFDMA channel.
[0042] Once this step is complete the remaining steps may be completed with the reduced MER vector without the excluded subcarriers.
[0043] At step 54, the percentile value for a predefined MER threshold may be calculated. For example, in preferred embodiments, this predefined MER threshold may represent the maximum allowable QAM value set by a CMTS. For example, if the largest QAM value in the allowable QAM list is 10, the resulting MER threshold value is 34 (based on the MER Threshold example). Given this number, the percentile score for this value is found, given the totality of all data from all cable modems. For example, if the RxMER data from the OFDMA channel includes 20 cable modems each sampled 3 times per day and sample held for 7 days, each cable modem would have 21 RxMER samples or 420 RxMER vectors total (see RxMER Vector) or 420x480 = 201,600 individual RxMER values.
[0044] The list of RxMER values may include numbers from 0 to 50 or more. From this list of RxMER values, the MAX QAM PERCENT value may be calculated for the MER Threshold associated with the highest available QAM (e.g. 34). This value should be greater than 0 and no greater than 100.
[0045] If the value is 0 a flat QAM value of the highest available QAM will suffice for all modems and all subcarriers. Other profiles may be synthetically filled in as desired. A value of 100 means all the MER values are below the threshold.
[0046] A meta-parameter may be included in this calculation.MAX QAM MULTIPLIER may be a value between 0 and 2, default = 1 . The MAX_QAM_PERCENT is a multiplier to be used on the percentile value. For example, a percentile value of .3 (30%) and a multiplier of .7, results in an end value of .21. When used, the ADJUSTED QAM PERCENT should be limited to less than 100 (e.g. 99.9
[0047] At step 56, a Profde Percentile List may be calculated. This list represents the percentile values used in computing each profile for the OFDMA channel. The total number of profiles that may be generated is set by the Max Profiles configuration at the CMTS. The list may be generated by constructing Max Profiles - 1 additional numbers (additional profiles) equally spaced between 0 and theMAX QAM PERCENT value, or the ADJUSTED QAM PERCENT value, if used. For example, if Max Profiles is 4 and the ADJUSTED QAM PERCENT value is 50, the Profile Percentile list is [12.5, 25, 37.5, 50],
[0048] At step 58, the Profile Sub-carrier QAM values are calculated. The Profile Percentile list may be used to construct Sub-carrier QAM values for each profile. In this step, the RxMER Vectors are used where the subcarrier ordering must be observed. This can be thought of as a list of lists where the inner lists are RxMER vectors for every sample for every modem. From the example above, there are 420 unique RxMER vectors. In this calculation each of the sub-carriers values are placed into a bucket and the percentile values are used to find the sub-carrier RxMER vector for the individual profiles. Consider the RxMER vector lists for a system with n subcarriers and M modems as shown below:RxMERList =[SC CmM, SC2CmM, ... , SCnCmM ]]For each percentile value in the Profile Percentile list,Profilex RxMER = [ [SC1] percentile, [SC2] percentile, ... , [SCn] percentile ] where [SC1] percentile is the pth percentile for all of the M subcarrier values for the ithsub-carrier.
[0049] If Max Profiles is X, the above calculation will result in X RxMER vectors, each corresponding to one of the X profiles. From the example above, the 12.5%, 25%, 37.5%, 50% values for each of the sub-carrier lists will be calculated for the 4 profile RxMER values.
[0050] At step 60, channel MER values for each of the profile MERs may be created. For example, the profile MERs previously computed are at sub-carrier resolution, however per the DOCSIS specification, all minislots should use the same QAM modulation orders for the entire minislot. The minislot sub-carrier side is 400 kHz but the number of sub-carriers depend on the sub-carrier spacing (25 kHz or 50 kHz). With a sub-carrier spacing of 50 kHz, a minislot will be composed of 8 subcarriers. Before determining the QAM modulation order for each of the minislots, a representative RxMER value must be assigned for the minislot. The minislot RxMER value can be computed using a MIN function. Sub-carriers may be assigned to minislots based on ordering of lowest sub-carrier to highest-subcarrier. For 50 kHz spacing, the first 8 consecutive sub-carriers may be assigned to the first minislot, the next 8 consecutive sub-carriers assigned to the second mini-slot, and so on until all the sub-carriers are assigned to a minislot. If the last minislot does not include a full complement of 8 sub-carriers, this minislot calculation can be disregarded as that minislot will not be used in the system.
[0051] To create the representative minislot RxMER, the minimum MER value of each of the 8 sub-carrier RxMERs that are assigned to the minislot may be used.MinslotRxMERi = MIN( minisloti sub-carrier MER values )The resulting channel resolution RxMER vector will be 1 / 8 of the size of the original profile RxMER vector.
[0052] At step 62, the Minislot Channel RxMER values are converted to QAM values. For each profile Channel RxMER minslot RxMER, the RxMER value must be transformed into a representative QAM bitloading. This transform uses the MER threshold values from step 1. For each Profile RxMER:For each minislot RxMER:QAM Bitloading = minQAM value where Threshold value >= the minislot RxMER value.This calculation results in Profile QAM vectors at minislot resolution for each profile in MAX PROFILES.
[0053] At step 64, in some embodiments, each of the Profile QAM vectors may optionally be constrained to meet the MAX_EXCEPTIONS in the CMTS configuration. The specific algorithm is not defined in this specification, however the ICO-2 tool includes a method for this reduction. The return value should provide a default QAM value for the profile and a list of exceptions that define the profile.
[0054] At step 66, combine equal profiles if necessary. Occasionally, the preceding steps may result in two or more profiles that have identical descriptions. These profiles should be combined into a single profile. In this case the number of profiles may be reduced from the MAX PROFILES setting.
[0055] At step 68, final exclusions based on Minislot Mapping may be generated. To get the final profiles to accurately reflect the channel subcarriers, the mapping from step 52 is used. For each minislot QAM value, map these values to the subcarriers provided from the minislot map. This step produces accurate frequencybased exception vectors.
[0056] At step 70, if necessary add synthetic profile sets. In some situations it is desirable to generate a fixed number of profiles for a channel. Typically, the number of profiles output from this algorithm would be equal to the number of profiles that are fixed for a channel. However, if the preceding procedures reduces the number of optimized profiles below the number of profiles defined for the channel, syntheticallygenerated profiles may be added in between. One approach for generating a synthetic profile would be to choose a flat QAM modulation across the entire channel with a resulting channel bitrate that falls between the maximum profile bitrate and the minimum profile bitrate or alternatively consecutive profile bitrates resulting from step 7. An enhancement to the above could be to incorporate the variable bit loading from the profiles in step 66.
[0057] At step 72, assign profiles to modems. For each modem, choose a MER vector (e.g. latest MER vector sample). Alternatively one can take the minimum value by sub-carrier for all MER vectors for the modem. Starting with highest bitrate profile:Translate QAM values to QAM minimum MER valuesTransform from channel space to sub-carrier space. (This step may consist of expanding each channel space value by 8 or 16)For each element, If CM MER < subcarrier minMER: Start over with next highest bitrate profile If no CM MER < subcarrier minMER: Cable modem belongs to this profile
[0058] It will be appreciated that the invention is not restricted to the particular embodiment that has been described, and that variations may be made therein without departing from the scope of the invention as defined in the appended claims, as interpreted in accordance with principles of prevailing law, including the doctrine of equivalents or any other principle that enlarges the enforceable scope of a claim beyond its literal scope. Unless the context indicates otherwise, a reference in a claim to the number of instances of an element, be it a reference to one instance or more than one instance, requires at least the stated number of instances of the element but is not intended to exclude from the scope of the claim a structure or method having more instances of that element than stated. The word "comprise" or a derivative thereof, when used in a claim, is used in a nonexclusive sense that is not intended to exclude the presence of other elements or steps in a claimed structure or method.
Claims
CLAIMS1. A method for assigning a set of bit loading profiles to each of a pl urali ty of cable modems, the method comprising: determining aggregate noise data for the plurality of cable modems; using the aggregate noise data to associate a predefined QAM value with a percentile value of the aggregated noise data; using the percentile value to construct a plurality of bit loading profiles; and assigning each of the plurality of cable modems a respective set of bit loading profiles drawn from the plurality' of bit loading profiles.
2. The method of claim 1 where the predefined QAM value is a maximum QAM value allow ed by a CMTS servicing the plurality of cable modems.
3. The method of claim 1 where percentile value represents the percent of the aggregated MER data that is at or below that predefined QAM value.
4. The method of claim 1 where the percentile value and a predefined number of bit loading profiles to be assigned are used to determine a plurality of second percentile values.
5. The method of claim 4 where each second percentile value is associated w ith a respective one of the predefined number of bit loading profiles.
6. The method of claim 4 where the second percentile values are different from each other.
7. The method of claim 4 where the second percentile values are less than or equal to the percentile value.
8. The method of claim 4 where each profile has a plurality of associated frequency’ ranges, and the second percentile values are used to determine, for each of the predefined number of bit loading profiles, respective QAM values at each frequency range in each respective profile.
9. The method of claim 1 where any equal profiles are combined.
10. The method of claim 9 where synthetic profiles are selectively added.
Citation Information
Patent Citations
Determining One or More Data Modulation Profiles for One or More Devices
US20170141887A1
Management of Bitloading Profiles for Network Communications
US20200358684A1