СПОСОБ И СИСТЕМА ВЫЧИСЛЕНИЯ УКАЗАТЕЛЯ ДЛЯ МАСШТАБИРУЕМОГО ПРОГРАММИРУЕМОГО КОЛЬЦЕВОГО БУФЕРА

1. Способ адресации кольцевого буфера, содержащий этапы, на которых
устанавливают длину упомянутого кольцевого буфера, причем упомянутая длина предназначена для ограничения адресуемого диапазона упомянутого кольцевого буфера;
устанавливают начальный адрес для упомянутого кольцевого буфера, причем упомянутый начальный адрес выровнен в степень 2;
устанавливают конечный адрес для упомянутого кольцевого буфера, причем упомянутый конечный адрес расположен на расстоянии от упомянутого начального адреса на упомянутую длину, меньшую чем упомянутая степень 2, и большую чем упомянутая длина;
определяют местоположение текущего указателя для адреса в упомянутом кольцевом буфере, причем местоположение упомянутого текущего указателя находится между упомянутым начальным адресом и упомянутым конечным адресом;
определяют величину шага по индексу бит между упомянутым начальным адресом и упомянутым конечным адресом;
определяют местоположение нового указателя в упомянутом кольцевом буфере с помощью сдвига от местоположения упомянутого текущего указателя на число бит упомянутой величины шага по индексу; и
определяют местоположение отрегулированного указателя, находящееся в упомянутом кольцевом буфере, с помощью арифметической операции местоположения упомянутого нового указателя с упомянутой длиной.
2. Способ по п.1, дополнительно содержащий этап, на котором устанавливают местоположение упомянутого отрегулированного указателя в случае положительного шага по индексу: (а) в случае, когда местоположение упомянутого нового указателя меньше чем упомянутый конечный адрес, с помощью регулирования местоположения упомянутого отрегулированного указателя таким образом, что оно является местоположением нового указателя; и (b) в случае, когда местоположение упомянутого нового указателя больше чем упомянутый конечный адрес, с помощью регулирования упомянутого отрегулированного указателя с помощью вычитания упомянутой длины из местоположения упомянутого нового указателя.
3. Способ по п.1, дополнительно содержащий этап, на котором устанавливают местоположение упомянутого отрегулированного указателя в случае отрицательного шага по индексу: (а) в случае, когда местоположение упомянутого нового указателя больше чем упомянутый начальный адрес, с помощью регулирования местоположения упомянутого отрегулированного указателя таким образом, что оно является местоположением нового указателя; и (b) в случае, когда местоположение упомянутого нового указателя меньше чем упомянутый конечный адрес, с помощью регулирования упомянутого отрегулированного указателя с помощью прибавления упомянутой длины к местоположению упомянутого нового указателя.
4. Способ по п.1, дополнительно содержащий этап, на котором устанавливают наименьшие значащие биты упомянутого начального адреса в ноль до этапов, на которых определяют местоположение упомянутого нового указателя и определяют местоположение упомянутого отрегулированного указателя.
5. Способ по п.1, дополнительно содержащий этап, на котором получают местоположение упомянутого отрегулированного указателя в случае положительного шага по индексу с помощью прибавления замаскированного адреса в качестве упомянутого текущего указателя к упомянутому положительному шагу по индексу в устройстве генерирования адреса и вычитания упомянутой длины из суммы в сумматоре арифметического логического устройства.
6. Способ по п.1, дополнительно содержащий этап, на котором получают местоположение упомянутого отрегулированного указателя в случае отрицательного шага по индексу с помощью прибавления замаскированного адреса в качестве упомянутого текущего указателя к упомянутому отрицательному шагу по индексу в устройстве генерирования адреса, в случае отрицательной суммы получают местоположение упомянутого отрегулированного указателя непосредственно из упомянутого устройства генерирования адреса; иначе получают местоположение упомянутого отрегулированного указателя с помощью прибавления упомянутой длины к сумме в арифметическом логическом устройстве и получают местоположение упомянутого отрегулированного указателя из упомянутого арифметического логического устройства.
7. Способ по п.1, дополнительно содержащий этап, на котором используют вентиль И, чтобы выполнить маскировку входного сигнала текущего указателя для генерирования входного сигнала в сумматор устройства генерирования адреса при генерировании местоположения упомянутого нового указателя.
8. Способ по п.1, дополнительно содержащий этапы, на которых
получают сумму местоположения упомянутого текущего указателя и упомянутого шага по индексу;
маскируют и предоставляют упомянутую сумму в качестве первого входного сигнала в схему сумматора в арифметическом логическом устройстве и либо упомянутую длину, либо дополнение до двух упомянутой длины - в качестве второго входного сигнала в упомянутую схему сумматора.
9. Система для установления адресации кольцевого буфера, содержащая
кольцевой буфер, причем упомянутый кольцевой буфер содержит:
длину упомянутого кольцевого буфера, причем упомянутая длина предназначена для ограничения адресуемого диапазона упомянутого кольцевого буфера;
начальный адрес для упомянутого кольцевого буфера, причем упомянутый начальный адрес выровнен в степень 2;
конечный адрес для упомянутого кольцевого буфера, причем упомянутый конечный адрес расположен удаленно от упомянутого начального адреса на упомянутую длину, меньшую, чем упомянутая степень 2, и большую, чем упомянутая длина;
устройство генерирования адреса, предназначенное для определения местоположения текущего указателя для адреса в упомянутом кольцевом буфере, причем местоположение упомянутого текущего указателя находится между упомянутым начальным адресом и упомянутым конечным адресом;
команды определения шага по индексу, связанные с упомянутым устройством генерирования адреса, предназначенные для определения величины шага по индексу бит между упомянутым начальным адресом и упомянутым конечным адресом;
команды определения местоположения нового указателя, связанные с упомянутым устройством генерирования адреса, предназначенные для определения местоположения нового указателя в упомянутом кольцевом буфере с помощью сдвига от местоположения упомянутого текущего указателя на число бит упомянутой величины шага по индексу; и
команды определения местоположения отрегулированного указателя, связанные с упомянутым устройством генерирования адреса, предназначенные для определения местоположения отрегулированного указателя, находящегося в упомянутом кольцевом буфере, с помощью арифметической операции местоположения упомянутого нового указателя с упомянутой длиной.
10. Система по п.9, в которой команды определения местоположения упомянутого отрегулированного указателя дополнительно содержат команды, предназначенные для установки местоположения упомянутого отрегулированного указателя в случае положительного шага по индексу: (а) в случае, когда местоположение упомянутого нового указателя меньше чем упомянутый конечный адрес, с помощью регулирования местоположения упомянутого отрегулированного указателя таким образом, что оно является местоположением нового указателя; и (b) в случае, когда местоположение упомянутого нового указателя больше чем упомянутый конечный адрес, с помощью регулирования упомянутого отрегулированного указателя с помощью вычитания упомянутой длины из местоположения упомянутого нового указателя.
11. Система по п.9, в которой команды определения местоположения упомянутого отрегулированного указателя дополнительно содержат команды, предназначенные для установки местоположения упомянутого отрегулированного указателя в случае отрицательного шага по индексу: (а) в случае, когда местоположение упомянутого нового указателя больше чем упомянутый начальный адрес, с помощью регулирования местоположения упомянутого отрегулированного указателя таким образом, что оно является местоположением нового указателя; и (b) в случае, когда местоположение упомянутого нового указателя меньше чем упомянутый конечный адрес, с помощью регулирования упомянутого отрегулированного указателя с помощью прибавления упомянутой длины к местоположению упомянутого нового указателя.
12. Система по п.9, в которой команды определения упомянутого местоположения нового указателя дополнительно содержат команды, предназначенные для установки наименьших значащих бит упомянутого начального адреса в ноль до этапов, на которых определяют местоположение упомянутого нового указателя и определяют местоположение упомянутого отрегулированного указателя.
13. Система по п.9, в которой команды определения местоположения упомянутого отрегулированного указателя дополнительно содержат команды, предназначенные для получения местоположения упомянутого отрегулированного указателя в случае положительного шага по индексу с помощью прибавления замаскированного адреса в качестве упомянутого текущего указателя к упомянутому положительному шагу по индексу в устройстве генерирования адреса и вычитания упомянутой длины из суммы в сумматоре арифметического логического устройства.
14. Система по п.9, в которой команды определения местоположения упомянутого отрегулированного указателя дополнительно содержат команды, предназначенные для получения местоположения упомянутого отрегулированного указателя в случае отрицательного шага по индексу с помощью прибавления замаскированного адреса в качестве упомянутого текущего указателя к упомянутому отрицательному шагу по индексу в устройстве генерирования адреса, в случае отрицательной суммы получают местоположение упомянутого отрегулированного указателя непосредственно из упомянутого устройства генерирования адреса; иначе получают местоположение упомянутого отрегулированного указателя с помощью прибавления упомянутой длины к сумме в арифметическом логическом устройстве и получают местоположение упомянутого отрегулированного указателя из упомянутого арифметического логического устройства.
15. Система по п.9, дополнительно содержащая
арифметическое логическое устройство, предназначенное для взаимодействия с упомянутым устройством генерирования адреса при определении местоположения упомянутого текущего указателя, упомянутой величины шага по индексу и местоположения упомянутого отрегулированного указателя; и
в которой упомянутое устройство генерирования адреса содержит вентиль И и схему сумматора; и
дополнительно, в которой команды определения местоположения упомянутого отрегулированного указателя дополнительно содержат команды, предназначенные для использования вентиля И, чтобы выполнить маскировку входного сигнала текущего указателя для генерирования входного сигнала в сумматор устройства генерирования адреса при генерировании местоположения упомянутого нового указателя.
16. Система по п.9, дополнительно содержащая
арифметическое логическое устройство, предназначенное для взаимодействия с упомянутым устройством генерирования адреса при определении местоположения упомянутого текущего указателя, упомянутой величины шага по индексу и местоположения упомянутого отрегулированного указателя;
команды суммирования, связанные с командами определения местоположения упомянутого отрегулированного указателя, предназначенные для получения суммы местоположения упомянутого текущего указателя и упомянутого шага по индексу; и
команды маскировки, предназначенные для маскировки и предоставления упомянутой суммы в качестве первого входного сигнала в схему сумматора в арифметическом логическом устройстве и либо упомянутой длины, либо дополнения до двух упомянутой длины - в качестве второго входного сигнала в упомянутую схему сумматора.
17. Процессор цифровых сигналов, предназначенный для обработки цифровых сигналов и содержащий средство управления и адресации кольцевого буфера, содержащий
средство, предназначенное для установления длины упомянутого кольцевого буфера, причем упомянутая длина предназначена для ограничения адресуемого диапазона упомянутого кольцевого буфера;
средство, предназначенное для установления начального адреса для упомянутого кольцевого буфера, причем упомянутый начальный адрес выровнен в степень 2;
средство, предназначенное для установления конечного адреса для упомянутого кольцевого буфера, причем упомянутый конечный адрес расположен удаленно от упомянутого начального адреса на упомянутую длину, меньшую чем упомянутая степень 2, и большую чем упомянутая длина;
средство, предназначенное для определения местоположения текущего указателя для адреса в упомянутом кольцевом буфере, причем местоположение упомянутого текущего указателя находится между упомянутым начальным адресом и упомянутым конечным адресом;
средство, предназначенное для определения шага по индексу, связанное с упомянутым устройством генерирования адреса, предназначенное для определения величины шага по индексу бит между упомянутым начальным адресом и упомянутым конечным адресом;
средство, предназначенное для определения местоположения нового указателя, связанное с упомянутым устройством генерирования адреса, предназначенное для определения местоположения нового указателя в упомянутом кольцевом буфере с помощью сдвига от местоположения упомянутого текущего указателя на число бит упомянутой величины шага по индексу; и
средство, предназначенное для определения местоположения отрегулированного указателя, связанное с упомянутым устройством генерирования адреса, предназначенное для определения местоположения отрегулированного указателя, находящегося в упомянутом кольцевом буфере, с помощью арифметической операции местоположения упомянутого нового указателя с упомянутой длиной.
18. Процессор цифровых сигналов по п.17, дополнительно содержащий средство, предназначенное для установки местоположения упомянутого отрегулированного указателя в случае положительного шага по индексу: (а) в случае, когда местоположение упомянутого нового указателя меньше чем упомянутый конечный адрес, с помощью регулирования местоположения упомянутого отрегулированного указателя таким образом, что оно является местоположением нового указателя; и (b) в случае, когда местоположение упомянутого нового указателя больше чем упомянутый конечный адрес, с помощью регулирования упомянутого отрегулированного указателя с помощью вычитания упомянутой длины из местоположения упомянутого нового указателя.
19. Процессор цифровых сигналов по п.17, дополнительно содержащий средство, предназначенное для установки местоположения упомянутого отрегулированного указателя в случае отрицательного шага по индексу: (а) в случае, когда местоположение упомянутого нового указателя больше чем упомянутый начальный адрес, с помощью регулирования местоположения упомянутого отрегулированного указателя таким образом, что оно является местоположением нового указателя; и (b) в случае, когда местоположение упомянутого нового указателя меньше чем упомянутый конечный адрес, с помощью регулирования упомянутого отрегулированного указателя с помощью прибавления упомянутой длины к местоположению упомянутого нового указателя.
20. Процессор цифровых сигналов по п.17, дополнительно содержащий средство, предназначенное для установки наименьших значащих бит упомянутого начального адреса в ноль до этапов, на которых определяют местоположение упомянутого нового указателя и определяют местоположение упомянутого отрегулированного указателя.
21. Процессор цифровых сигналов по п.17, дополнительно содержащий средство, предназначенное для получения местоположения упомянутого отрегулированного указателя в случае положительного шага по индексу с помощью прибавления замаскированного адреса в качестве упомянутого текущего указателя к упомянутому положительному шагу по индексу в устройстве генерирования адреса и вычитания упомянутой длины из суммы в сумматоре арифметического логического устройства.
22. Процессор цифровых сигналов по п.17, дополнительно содержащий средство, предназначенное для получения местоположения упомянутого отрегулированного указателя в случае отрицательного шага по индексу с помощью прибавления замаскированного адреса в качестве упомянутого текущего указателя к упомянутому отрицательному шагу по индексу в устройстве генерирования адреса, в случае отрицательной суммы получают местоположение упомянутого отрегулированного указателя непосредственно из упомянутого устройства генерирования адреса; иначе получают местоположение упомянутого отрегулированного указателя с помощью прибавления упомянутой длины к сумме в арифметическом логическом устройстве и получают местоположение упомянутого отрегулированного указателя из упомянутого арифметического логического устройства.
23. Процессор цифровых сигналов по п.17, дополнительно содержащий
средство для использования вентиля И, чтобы выполнить маскировку входного сигнала текущего указателя для генерирования входного сигнала в сумматор устройства генерирования адреса при генерировании местоположения упомянутого нового указателя.
24. Процессор цифровых сигналов по п.17, дополнительно содержащий
средство, предназначенное для получения суммы местоположения упомянутого текущего указателя и упомянутого шага по индексу;
средство, предназначенное для маскировки и предоставления упомянутой суммы в качестве первого входного сигнала в схему сумматора в арифметическом логическом устройстве и либо упомянутой длины, либо дополнения до двух упомянутой длины - в качестве второго входного сигнала в упомянутую схему сумматора.
25. Машиночитаемый носитель, имеющий средство программного кода, выполненного с обеспечением возможности обработки команд в процессоре цифровых сигналов, причем машиночитаемый носитель содержит
средство программного кода, доступного для чтения с помощью компьютера, предназначенное для установления длины упомянутого кольцевого буфера, причем упомянутая длина предназначена для ограничения адресуемого диапазона упомянутого кольцевого буфера;
средство программного кода, доступного для чтения с помощью компьютера, предназначенное для установления начального адреса для упомянутого кольцевого буфера, причем упомянутый начальный адрес выровнен в степень 2;
средство программного кода, доступного для чтения с помощью компьютера, предназначенное для установления конечного адреса для упомянутого кольцевого буфера, причем упомянутый конечный адрес расположен удаленно от упомянутого начального адреса на упомянутую длину и меньше чем упомянутая степень 2, большая чем упомянутая длина;
средство программного кода, доступного для чтения с помощью компьютера, предназначенное для определения местоположения текущего указателя для адреса в упомянутом кольцевом буфере, причем местоположение упомянутого текущего указателя находится между упомянутым начальным адресом и упомянутым конечным адресом;
средство программного кода, доступного для чтения с помощью компьютера, предназначенное для определения шага по индексу, связанное с упомянутым устройством генерирования адреса, предназначенное для определения величины шага по индексу бит между упомянутым начальным адресом и упомянутым конечным адресом;
средство программного кода, доступного для чтения с помощью компьютера, предназначенное для определения местоположения нового указателя, связанное с упомянутым устройством генерирования адреса, предназначенное для определения местоположения нового указателя в упомянутом кольцевом буфере с помощью сдвига от местоположения упомянутого текущего указателя на число бит упомянутой величины шага по индексу; и
средство программного кода, доступного для чтения с помощью компьютера, предназначенное для определения местоположения отрегулированного указателя, связанное с упомянутым устройством генерирования адреса, предназначенное для определения местоположения отрегулированного указателя, находящегося в упомянутом кольцевом буфере, с помощью арифметической операции местоположения упомянутого нового указателя с упомянутой длиной.
26. Машиночитаемый носитель по п.25, дополнительно содержащий средство программного кода, доступного для чтения с помощью компьютера, предназначенное для установки местоположения упомянутого отрегулированного указателя в случае положительного шага по индексу: (а) в случае, когда местоположение упомянутого нового указателя меньше чем упомянутый конечный адрес, с помощью регулирования местоположения упомянутого отрегулированного указателя таким образом, что оно является местоположением нового указателя; и (b) в случае, когда местоположение упомянутого нового указателя больше чем упомянутый конечный адрес, с помощью регулирования упомянутого отрегулированного указателя с помощью вычитания упомянутой длины из местоположения упомянутого нового указателя.
27. Машиночитаемый носитель по п.25, дополнительно содержащий средство программного кода, доступного для чтения с помощью компьютера, предназначенное для установки местоположения упомянутого отрегулированного указателя в случае отрицательного шага по индексу: (а) в случае, когда местоположение упомянутого нового указателя больше чем упомянутый начальный адрес, с помощью регулирования местоположения упомянутого отрегулированного указателя таким образом, что оно является местоположением нового указателя; и (b) в случае, когда местоположение упомянутого нового указателя меньше чем упомянутый конечный адрес, с помощью регулирования упомянутого отрегулированного указателя с помощью прибавления упомянутой длины к местоположению упомянутого нового указателя.