ОБНАРУЖЕНИЕ ПРЕАМБУЛЫ С ИСПОЛЬЗОВАНИЕМ ВЕКТОРНЫХ ПРОЦЕССОРОВ

1. Способ, реализованный на процессоре, для обнаружения преамбулы в сигнале данных, передаваемом с передатчика и принимаемом на приемнике после задержки распространения, причем способ содержит этапы, на которых
(a) генерируют (например, 210(0)) вектор значений корреляции на основании субвектора сигнала принятых данных и субвектора скремблирующего кода, причем:
вектор значений корреляции содержит, по меньшей мере, первое и второе значения корреляции, которые генерируют, по существу, одновременно, и
по меньшей мере, первое и второе значения корреляции соответствуют, по меньшей мере, первой и второй возможным задержкам распространения, соответственно, из множества разных возможных задержек распространения;
(b) обновляют (например, 216 и 220), по меньшей мере, два значения профиля на основании вектора значений корреляции, причем каждое значение профиля соответствует отдельной комбинации (i) возможной преамбулы из множества разных возможных преамбул и (ii) возможной задержки распространения из множества разных возможных задержек распространения, и
(c) обнаруживают преамбулу на основании, по меньшей мере, двух значений профиля.
2. Способ по п.1, в котором этап (a) содержит этапы, на которых
(a1) коррелируют (например, 1-е суммирование уравнения (3)) первое множество значений принятых данных из субвектора сигнала принятых данных с субвектором скремблирующего кода для генерации первого значения корреляции, соответствующего первой возможной задержке распространения, и
(a2) коррелируют (например, 2-е суммирование уравнения (3)) второе множество значений принятых данных из субвектора сигнала принятых данных с субвектором скремблирующего кода для генерации второго значения корреляции, соответствующего второй возможной задержке распространения.
3. Способ по п.2, в котором приемник, по существу, одновременно генерирует, по меньшей мере, первое и второе значения корреляции.
4. Способ по п.2, в котором
этап (a) дополнительно содержит этапы, на которых
(a3) генерируют (например, 210(1)) дополнительный вектор значений корреляции на основании дополнительного субвектора сигнала принятых данных и дополнительного субвектора скремблирующего кода, причем этап (a3) содержит этапы, на которых
(a3i) коррелируют первое множество значений принятых данных из дополнительного субвектора сигнала принятых данных с дополнительным субвектором скремблирующего кода для генерации первого значения корреляции в дополнительном векторе значений корреляции, причем первое значение корреляции соответствует первой возможной задержке распространения, и
(a3ii) коррелируют второе множество значений принятых данных из дополнительного субвектора сигнала принятых данных с дополнительным субвектором скремблирующего кода для генерации второго значения корреляции в дополнительном векторе значений корреляции, причем второе значение корреляции в дополнительном векторе значений корреляции соответствует второй возможной задержке распространения, и
этап (b) содержит этап, на котором обновляют, по меньшей мере, два значения профиля на основании, как вектора значений корреляции, так и дополнительного вектора значений корреляции.
5. Способ по п.4, в котором этап (b) содержит этапы, на которых
(b1) применяют обработку быстрого преобразования Адамара (например, 216) к значениям корреляции, соответствующим первой возможной задержке распространения, для обновления значений профиля, соответствующих одному или более сигнатурным кодам при первой возможной задержке распространения, и
(b2) применяют обработку быстрого преобразования Адамара (например, 216) к значениям корреляции, соответствующим второй возможной задержке распространения, для обновления значения профиля, соответствующего одному или более сигнатурным кодам при второй возможной задержке распространения.
6. Способ по п.1, в котором
этап (a) содержит этапы, на которых
k
k
(a1) деперемежают (например, 204) сигнал принятых данных в  векторов сигнала принятых данных, где >1,
(a2) сохраняют (например, 206) каждый вектор сигнала принятых данных в отдельной строке памяти,
(a3) генерируют (например, первая итерация 210(0)-(15)), для каждой строки памяти, первый вектор значений корреляции на основании первого субвектора сигнала принятых данных, извлеченного из строки, причем каждый первый вектор значений корреляции соответствует первому подмножеству возможных задержек распространения (например, первая итерация 212), и
(a4) генерируют (например, вторая итерация 210(0)-(15)), для каждой строки памяти, второй вектор значений корреляции на основании второго субвектора сигнала принятых данных, извлеченного из строки, причем каждый второй вектор значений корреляции соответствует второму подмножеству возможных задержек распространения (например, вторая итерация 212), отличному от первого подмножества возможных задержек распространения, и
этап (b) содержит этапы, на которых
(b1) обновляют (например, первая итерация 214, 216 и 220) первое подмножество значений профиля на основании векторных значений корреляции, соответствующих первому подмножеству возможных задержек распространения,
(b2) обновляют (например, вторая итерация 214, 216 и 220) второе подмножество значений профиля, отличное от первого подмножества значений профиля, на основании векторных значений корреляции, соответствующих второму подмножеству возможных задержек распространения, и
этап (c) содержит этап, на котором обнаруживают преамбулу на основании первого и второго подмножеств значений профиля.
7. Способ по п.6, в котором
k
k
скремблирующий код деперемежается в  векторов скремблирующего кода, где >1,
каждый вектор скремблирующего кода сохраняется в отдельной строке памяти, и
каждый вектор значений корреляции пропорционален:
<mrow><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>l</mi><mo>=</mo><mn>0</mn></mrow><mrow><mn>31</mn></mrow></munderover><mrow><msub><mi>x</mi><mrow><mn>16</mn><mi>l</mi><mo>+</mo><mi>k</mi><mo>+</mo><mi>j</mi></mrow></msub><mi>s</mi><msub><mi>m</mi><mrow><mn>16</mn><mi>a</mi><mo>+</mo><mn>16</mn><mi>l</mi><mo>+</mo><mi>k</mi></mrow></msub><mo>,</mo></mrow></mstyle><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>l</mi><mo>=</mo><mn>0</mn></mrow><mrow><mn>31</mn></mrow></munderover><mrow><msub><mi>x</mi><mrow><mn>16</mn><mrow><mo>(</mo><mrow><mi>l</mi><mo>+</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>+</mo><mi>k</mi><mo>+</mo><mi>j</mi></mrow></msub><mi>s</mi><msub><mi>m</mi><mrow><mn>16</mn><mi>a</mi><mo>+</mo><mn>16</mn><mi>l</mi><mo>+</mo><mi>k</mi></mrow></msub></mrow></mstyle><mn>,...</mn><mtext> </mtext><mo>,</mo><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>l</mi><mo>=</mo><mn>0</mn></mrow><mrow><mn>31</mn></mrow></munderover><mrow><msub><mi>x</mi><mrow><mn>16</mn><mrow><mo>(</mo><mrow><mi>l</mi><mo>+</mo><mn>31</mn></mrow><mo>)</mo></mrow><mo>+</mo><mi>k</mi><mo>+</mo><mi>j</mi></mrow></msub><mi>s</mi><msub><mi>m</mi><mrow><mn>16</mn><mi>a</mi><mo>+</mo><mn>16</mn><mi>l</mi><mo>+</mo><mi>k</mi></mrow></msub></mrow></mstyle><mo>,</mo></mrow>
x
sm
j
a
где  - значение принятых данных,  - значение скремблирующего кода,  - индекс, соответствующий каждому подмножеству возможных задержек распространения для сигнала принятых данных, и  - индекс, соответствующий каждому подмножеству возможных задержек распространения для скремблирующего кода.
8. Способ по п.1, в котором
этап (a) содержит этапы, на которых
k
k
(a1) деперемежают порцию сигнала принятых данных в  векторов сигнала принятых данных, где >1, и размер порции сигнала принятых данных меньше, чем размер слота доступа,
(a2) сохраняют каждый вектор порции в отдельной строке памяти, и
(a3) генерируют множество векторов значений корреляции на основании субвекторов сигнала принятых данных, извлеченных из строк памяти;
этап (b) содержит этап, на котором обновляют подмножество значений профиля на основании множества векторов значений корреляции, причем подмножество значений профиля соответствует подмножеству возможных задержек распространения, и
этапы (a) и (b) повторяются для последующей порции сигнала принятых данных, причем для последующей порции, этап (b) содержит этап, на котором обновляют последующее подмножество значений профиля, соответствующее последующему подмножеству возможных задержек распространения, отличному от подмножества возможных задержек распространения.
9. Способ по п.1, в котором способ реализован посредством программируемого векторного процессора.
10. Способ по п.1, в котором этап (a) содержит этапы, на которых
k
k
(a1) деперемежают (например, 204) сигнал принятых данных в  векторов сигнала принятых данных, где >1,
(a2) сохраняют (например, 206) каждый вектор сигнала принятых данных в отдельной строке памяти,
(a3) извлекают из каждой строки памяти первый субвектор сигнала принятых данных, причем каждый первый субвектор имеет меньше значений принятых данных, чем соответствующий вектор, и
(a4) извлекают из каждой строки памяти второй субвектор сигнала принятых данных, причем
каждый второй субвектор имеет меньше значений принятых данных, чем соответствующий вектор, и
второй субвектор, извлеченный из каждой строки, отличается от первого субвектора, взятого из соответствующей строки.
11. Устройство, предназначенное для обнаружения преамбулы в сигнале данных, передаваемом с передатчика и принимаемом на приемнике после задержки распространения, причем устройство содержит
векторный коррелятор (например, 210(0)), выполненный с возможностью генерации вектора значений корреляции на основании субвектора сигнала принятых данных и субвектора скремблирующего кода, причем
вектор значений корреляции содержит, по меньшей мере, первое и второе значения корреляции, которые генерируются, по существу, одновременно, и
по меньшей мере, первое и второе значения корреляции соответствуют, по меньшей мере, первой и второй возможным задержкам распространения, соответственно, из множества разных возможных задержек распространения, и
обновитель профиля (например, 216 и 220), выполненный с возможностью обновления, по меньшей мере, двух значений профиля на основании вектора значений корреляции, причем каждое значение профиля соответствует отдельной комбинации (i) возможной преамбулы из множества разных возможных преамбул и (ii) возможной задержки распространения из множества разных возможных задержек распространения, причем устройство выполнено с возможностью обнаружения преамбулы на основании, по меньшей мере, двух значений профиля.
12. Устройство по п.11, в котором векторный коррелятор выполнен с возможностью
коррелировать (например, 1-е суммирование уравнения (3)) первое множество значений принятых данных из субвектора сигнала принятых данных с субвектором скремблирующего кода для генерации первого значения корреляции, соответствующего первой возможной задержке распространения, и
коррелировать (например, 2-е суммирование уравнения (3)) второе множество значений принятых данных из субвектора сигнала принятых данных с субвектором скремблирующего кода для генерации второго значения корреляции, соответствующего второй возможной задержке распространения.
13. Устройство по п.12, в котором устройство, по существу, одновременно генерирует, по меньшей мере, первое и второе значения корреляции.
14. Устройство по п.12, в котором
устройство дополнительно содержит дополнительный векторный коррелятор (например, 210(1)), выполненный с возможностью
генерировать дополнительный вектор значений корреляции на основании дополнительного субвектора сигнала принятых данных и дополнительного субвектора скремблирующего кода, причем генерация дополнительного вектора значений корреляции содержит
корреляцию первого множества значений принятых данных из дополнительного субвектора сигнала принятых данных с дополнительным субвектором скремблирующего кода для генерации первого значения корреляции в дополнительном векторе значений корреляции, причем первое значение корреляции соответствует первой возможной задержке распространения, и
корреляцию второго множества значений принятых данных из дополнительного субвектора сигнала принятых данных с дополнительным субвектором скремблирующего кода для генерации второго значения корреляции в дополнительном векторе значений корреляции, причем второе значение корреляции в дополнительном векторе значений корреляции соответствует второй возможной задержке распространения, и
обновитель профиля выполнен с возможностью обновления, по меньшей мере, двух значений профиля на основании, как вектора значений корреляции, так и дополнительного вектора значений корреляции.
15. Устройство по п.14, в котором обновитель профиля содержит процессор быстрого преобразования Адамара (например, 216), выполненный с возможностью:
применять быстрое преобразование Адамара к значениям корреляции, соответствующим первой возможной задержке распространения, для обновления значений профиля, соответствующих одному или более сигнатурным кодам при первой возможной задержке распространения, и
применять быстрое преобразование Адамара к значениям корреляции, соответствующим второй возможной задержке распространения, для обновления значения профиля, соответствующего одному или более сигнатурным кодам при второй возможной задержке распространения.
16. Устройство по п.11, в котором
устройство содержит:
k
k
деперемежитель (например, 204), выполненный с возможностью деперемежать сигнал принятых данных в  векторов сигнала принятых данных, где >1,
память (например, 206), выполненную с возможностью сохранять каждый вектор сигнала принятых данных в отдельной строке памяти, и
по меньшей мере, один векторный коррелятор, выполненный с возможностью
генерировать (например, первая итерация 210(0)-(15)), для каждой строки памяти, первый вектор значений корреляции на основании первого субвектора сигнала принятых данных, извлеченного из строки, причем каждый первый вектор значений корреляции соответствует первому подмножеству возможных задержек распространения (например, первая итерация 212), и
генерировать (например, вторая итерация 210(0)-(15)), для каждой строки памяти, второй вектор значений корреляции на основании второго субвектора сигнала принятых данных, извлеченного из строки, причем каждый второй вектор значений корреляции соответствует второму подмножеству возможных задержек распространения (например, вторая итерация 212), отличному от первого подмножества возможных задержек распространения, и
обновитель профиля выполнен с возможностью
обновлять (например, первая итерация 214, 216 и 220) первое подмножество значений профиля на основании векторных значений корреляции, соответствующих первому подмножеству возможных задержек распространения, и
обновлять (например, вторая итерация 214, 216 и 220) второе подмножество значений профиля, отличное от первого подмножества значений профиля, на основании векторных значений корреляции, соответствующих второму подмножеству возможных задержек распространения, причем устройство обнаруживает преамбулу на основании первого и второго подмножеств значений профиля.
17. Устройство по п.16, в котором
k
k
скремблирующий код деперемежается в  векторов скремблирующего кода, где >1,
каждый вектор скремблирующего кода сохраняется в отдельной строке памяти, и
каждый вектор значений корреляции пропорционален
<mrow><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>l</mi><mo>=</mo><mn>0</mn></mrow><mrow><mn>31</mn></mrow></munderover><mrow><msub><mi>x</mi><mrow><mn>16</mn><mi>l</mi><mo>+</mo><mi>k</mi><mo>+</mo><mi>j</mi></mrow></msub><mi>s</mi><msub><mi>m</mi><mrow><mn>16</mn><mi>a</mi><mo>+</mo><mn>16</mn><mi>l</mi><mo>+</mo><mi>k</mi></mrow></msub><mo>,</mo></mrow></mstyle><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>l</mi><mo>=</mo><mn>0</mn></mrow><mrow><mn>31</mn></mrow></munderover><mrow><msub><mi>x</mi><mrow><mn>16</mn><mrow><mo>(</mo><mrow><mi>l</mi><mo>+</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>+</mo><mi>k</mi><mo>+</mo><mi>j</mi></mrow></msub><mi>s</mi><msub><mi>m</mi><mrow><mn>16</mn><mi>a</mi><mo>+</mo><mn>16</mn><mi>l</mi><mo>+</mo><mi>k</mi></mrow></msub></mrow></mstyle><mn>,...</mn><mtext> </mtext><mo>,</mo><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mtext></mtext><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>l</mi><mo>=</mo><mn>0</mn></mrow><mrow><mn>31</mn></mrow></munderover><mrow><msub><mi>x</mi><mrow><mn>16</mn><mrow><mo>(</mo><mrow><mi>l</mi><mo>+</mo><mn>31</mn></mrow><mo>)</mo></mrow><mo>+</mo><mi>k</mi><mo>+</mo><mi>j</mi></mrow></msub><mi>s</mi><msub><mi>m</mi><mrow><mn>16</mn><mi>a</mi><mo>+</mo><mn>16</mn><mi>l</mi><mo>+</mo><mi>k</mi></mrow></msub></mrow></mstyle><mo>,</mo></mrow>
x
sm
j
a
где  - значение принятых данных,  - значение скремблирующего кода,  - индекс, соответствующий каждому подмножеству возможных задержек распространения для сигнала принятых данных, и  - индекс, соответствующий каждому подмножеству возможных задержек распространения для скремблирующего кода.
18. Устройство по п.11, в котором
устройство дополнительно содержит
k
k
деперемежитель (например, 204) выполненный с возможностью деперемежать порцию сигнала принятых данных в  векторов сигнала принятых данных, где >1, и размер порции сигнала принятых данных меньше, чем размер слота доступа,
память (например, 206), выполненную с возможностью сохранять каждый вектор порции в отдельной строке памяти, и
по меньшей мере, один векторный коррелятор, выполненный с возможностью генерации множества векторов значений корреляции на основании субвекторов сигнала принятых данных, извлеченных из строк памяти,
обновитель профиля выполнен с возможностью обновления подмножества значений профиля на основании множества векторов значений корреляции, причем подмножество значений профиля соответствует подмножеству возможных задержек распространения, и
деперемежитель, память, по меньшей мере, один векторный коррелятор и обновитель профиля выполнены с возможностью обрабатывать последующую порцию сигнала принятых данных, причем для последующей порции, обновитель профиля предназначен обновлять последующее подмножество значений профиля, соответствующее последующему подмножеству возможных задержек распространения, отличному от подмножества возможных задержек распространения.
19. Устройство по п.11, в котором устройство представляет собой программируемый векторный процессор.
20. Устройство по п.19, в котором
программируемый векторный процессор содержит круговой загрузчик, векторный коррелятор и обновитель профиля,
круговой загрузчик реализует команду круговой загрузки для вывода субвекторов сигнала принятых данных на векторный коррелятор,
векторный коррелятор реализует команду векторной корреляции для генерации, по меньшей мере, первого и второго значений корреляции, и
обновитель профиля реализует команду быстрого преобразования Адамара для обновления, по меньшей мере, двух значений профиля.
21. Устройство для обнаружения преамбулы в сигнале данных, передаваемом с передатчика и принимаемом на приемнике после задержки распространения, причем устройство содержит
(a) средство для генерации (например, 210(0)) вектора значений корреляции на основании субвектора сигнала принятых данных и субвектора скремблирующего кода, причем
вектор значений корреляции содержит, по меньшей мере, первое и второе значения корреляции, которые генерируются, по существу, одновременно, и
по меньшей мере, первое и второе значения корреляции соответствуют, по меньшей мере, первой и второй возможным задержкам распространения, соответственно, из множества разных возможных задержек распространения,
(b) средство для обновления (например, 216 и 220), по меньшей мере, двух значений профиля на основании вектора значений корреляции, причем каждое значение профиля соответствует отдельной комбинации (i) возможной преамбулы из множества разных возможных преамбул и (ii) возможной задержки распространения из множества разных возможных задержек распространения, и
(c) средство для обнаружения преамбулы на основании, по меньшей мере, двух значений профиля.