KR100922955B1 - 통신 시스템에서 호핑 시퀀스 생성 방법 및 장치 - Google Patents

통신 시스템에서 호핑 시퀀스 생성 방법 및 장치 Download PDF

Info

Publication number
KR100922955B1
KR100922955B1 KR1020070023524A KR20070023524A KR100922955B1 KR 100922955 B1 KR100922955 B1 KR 100922955B1 KR 1020070023524 A KR1020070023524 A KR 1020070023524A KR 20070023524 A KR20070023524 A KR 20070023524A KR 100922955 B1 KR100922955 B1 KR 100922955B1
Authority
KR
South Korea
Prior art keywords
sequence
window
array
size
value
Prior art date
Application number
KR1020070023524A
Other languages
English (en)
Other versions
KR20080082788A (ko
Inventor
박성은
김태영
박동식
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020070023524A priority Critical patent/KR100922955B1/ko
Priority to US12/045,299 priority patent/US20080219324A1/en
Publication of KR20080082788A publication Critical patent/KR20080082788A/ko
Application granted granted Critical
Publication of KR100922955B1 publication Critical patent/KR100922955B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/713Spread spectrum techniques using frequency hopping
    • H04B1/7143Arrangements for generation of hop patterns
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)

Abstract

본 발명은 통신 시스템에서 캐리어 주파수 혹은 타임 슬롯의 호핑 패턴을 나타내는 호핑 시퀀스 생성 방법 및 장치에 대한 것으로서, 호핑 시퀀스와 동일한 크기를 가지는 배열 시퀀스를 초기화하는 과정과, 의사 잡음(PN) 시퀀스의 생성을 위해 사용되는 쉬프트 레지스터를, 호핑 시퀀스의 생성을 위해 입력된 시드값으로 초기화하는 과정과, 미리 정해지는 윈도우 독출 주기마다 상기 쉬프트 레지스터의 출력인 상기 PN 시퀀스에 윈도우를 적용한 결과인 윈도우 값을 획득하고, 상기 배열 시퀀스 중 상기 윈도우 값에 해당하는 요소를 다른 요소와 스와핑하는 과정과, 상기 배열 시퀀스의 모든 요소들이 스와핑될 때까지 상기 스와핑하는 과정을 반복한 후, 상기 배열 시퀀스를 상기 호핑 시퀀스로서 출력하는 과정을 포함한다.
순열, 시드값, 시퀀스, 호핑 시퀀스, 순열 시퀀스, 윈도우, 쉬프트 레지스터

Description

통신 시스템에서 호핑 시퀀스 생성 방법 및 장치{METHOD AND APPARATUS FOR GENERATING HOPPING SEQUENCE IN A COMMUNICATION SYSTEM}
도 1은 시드값에 상응하여 생성된 순열 시퀀스를 도시한 도면.
도 2는 본 발명의 실시예에 따른 통신 시스템에서 의사 랜덤 시퀀스를 생성하는 장치를 개략적으로 도시한 도면.
도 3은 본 발명의 실시예에 따른 통신 시스템에서 시퀀스 생성기가 호핑 시퀀스를 생성하는 과정을 도시한 도면.
도 4는 본 발명의 실시예에 따른 통신 시스템에서 호핑 시퀀스를 생성하는 예를 개략적으로 도시한 도면.
도 5는 본 발명의 실시예에 따른 통신 시스템에서 시퀀스 발생기에 의해 생성되는 시퀀스를 도시한 도면.
도 6은 본 발명의 실시예에 따른 통신 시스템에서 시퀀스 생성기가 호핑 시퀀스를 생성하는 과정을 도시한 도면.
도 7은 본 발명의 실시예에 따른 통신 시스템에서 시퀀스를 생성하는 장치를 개략적으로 도시한 도면.
도 8은 본 발명의 실시예에 따른 통신 시스템에서 시퀀스 발생기에 의해 생성되는 시퀀스를 도시한 도면.
본 발명은 통신 시스템에 관한 것으로, 특히 통신 시스템에서 시드(seed)값에 상응한 시퀀스(sequence) 생성 방법 및 장치에 관한 것이다.
차세대 통신 시스템에서는 고속의 다양한 서비스 품질(QoS: Quality of Service, 이하 'QoS' 칭하기로 함)을 가지는 서비스들을 사용자들에게 제공하기 위한 활발한 연구가 진행되고 있다. 특히, 현재 차세대 통신 시스템에서는 무선 근거리 통신 네트워크(WLAN: Wireless Local Area Network, 이하 'WLAN'이라 칭하기로 함) 시스템 및 무선 도시 지역 네트워크(WMAN: Wireless Metropolitan Area Network, 이하 'WMAN'이라 칭하기로 함) 시스템과 같은 광대역 무선 접속(BWA: Broadband Wireless Access, 이하 'BWA'라 칭하기로 함) 통신 시스템에 이동성(mobility)과 QoS를 보장하는 형태로 고속 서비스를 지원하도록 하는 연구가 활발하게 진행되고 있으며, 그 대표적인 통신 시스템이 IEEE(Institute of Electrical and Electronics Engineers) 802.16a/d 통신 시스템 및 IEEE 802.16e 통신 시스템이다.
상기 BWA 통신 시스템인 IEEE 802.16a/d 통신 시스템 및 IEEE 802.16e 통신 시스템은 상기 WMAN 시스템의 물리 채널(physical channel)에 광대역(broadband) 전송 네트워크를 지원하기 위해 직교 주파수 분할 다중(OFDM: Orthogonal Frequency Division Multiplexing, 이하 'OFDM'이라 칭하기로 함)/직교 주파수 분 할 다중 접속(OFDMA: Orthogonal Frequency Division Multiple Access, 이하 'OFDMA'이라 칭하기로 함) 방식을 적용한 통신 시스템이다. 상기 IEEE 802.16a/d 통신 시스템은 현재 가입자 단말기(SS: Subscriber Station, 이하 'SS'라 칭하기로 함)가 고정된 상태, 즉 SS의 이동성을 전혀 고려하지 않은 상태 및 단일 셀 구조만을 고려하고 있는 시스템이다. 이와는 달리 IEEE 802.16e 통신 시스템은 상기 IEEE 802.16a 통신 시스템에 SS의 이동성을 고려하는 시스템이며, 상기 이동성을 가지는 SS를 이동 단말기(MS: Mobile Station, 이하 'MS'라 칭하기로 함)라고 칭하기로 한다.
한편, 통신 시스템은 호핑 시퀀스(hopping sequence)에 의해 정의된 특정 호핑 패턴에 상응하여 변경되는 주파수를 통해 기지국(BS: Base Station, 이하 'BS'라 칭하기로 함)과 MS 사이에 데이터를 송수신한다. 예를 들어, 주파수 호핑 대역 확산(frequency hopping spread spectrum) 방식의 통신 시스템에서는 호핑 시퀀스에 상응하여 캐리어 주파수(carrier frequency)가 호핑 또는 스위칭되며, 상기 호핑 또는 스위칭되는 캐리어 주파수 상에서 BS와 MS간의 데이터 송수신이 이루어진다. 또한, 시간 호핑 대역 확산(time hopping spread spectrum) 방식의 통신 시스템은 데이터 전송 프레임이 다수의 타임 슬롯으로 분할되고 호핑 시퀀스에 의해 정의된 특정 패턴에 상응하여 타임 슬롯들이 선택된 후, 상기 선택된 타임 슬롯들을 통해 BS와 MS간의 데이터 송수신이 이루어진다. 상기 OFDM/OFDMA 방식의 통신 시스템은 다수의 사용자들, 즉 MS들이 호핑 시퀀스에 의해 정의된 특정 패턴에 상응하여 자신에게 할당된 구간에 데이터를 송수신한다.
이러한 통신 시스템은 호핑 시퀀스의 일예로 순열(permutation) 시퀀스를 이용하며, 순열은 순서화된(ordered)된 리스트 집합에서 자기 자신으로의 일대일 대응(one-to-one correspondence)으로 정의된다. 다시 말해 순열은 집합 내에서 원소의 순서를 재배열하는 것으로서, 예컨대 원소의 개수가 M인 집합에서 가능한 순열들의 개수는 M!(M factorial)이 되며, 상기 M!은 하기 수학식 1과 같이 정의된다.
Figure 112007019446836-pat00001
통신 시스템은 시퀀스를 생성하기 위한 다양한 시드값들이 입력되면, 상기 시드값들에 대응하는 상이한 순열들을 발생하여 상기 순열들에 상응하는 순열 시퀀스들을 생성한다. 예를 들어 통신 시스템에서 시드값이 S비트이고, 순열의 길이가 M인 경우, 2S개의 조합 가능한 모든 시드값들에 대해 총 M!개의 순열들 중에서 2S개가 선택된 후, 상기 시드값들을 상기 선택한 순열들에 각각 대응시킨다.
그러면 여기서 도 1을 참조하여 시드값에 상응한 순열 시퀀스를 설명하기로 한다.
도 1은 시드값에 상응하여 생성된 순열 시퀀스를 도시한 도면이다. 여기서, 도 1은 M이 7이고 S가 5인 경우의 순열 시퀀스를 나타낸 것이다.
도 1을 참조하면, 앞서 가정한 바와 같이 S가 5개의 비트들, 즉 S0, S1, S2, S3, S4로 구성되므로 25=32개의 시드값에 대해 7!=7×6×5×4×3×2×1=5040개의 가능한 모든 순열들 중에서 25=32개의 순열들을 선택한 후, 각 시드값을 상기 선택한 각 순열에 대응시킨다.
이렇게 도 1에 도시한 바와 같이 각 시드값과 상기 각 시드값에 대응되는 순열 시퀀스는 통신 시스템의 송수신기에 각각 저장되며, 이때 순열을 발생하는 시드값, 즉 S와 순열의 길이, 즉 M이 클 경우 시드값과 상기 시드값에 대응되는 순열 시퀀스가 증가하고, 그에 따라 상기 순열 시퀀스를 저장하는 송수신기의 메모리 용량이 증가하는 문제점이 있다.
따라서, 본 발명의 목적은 통신 시스템에서 시퀀스 생성 방법 및 장치를 제공함에 있다.
본 발명의 다른 목적은 통신 시스템에서 시드값에 상응하여 상이한 시퀀스의 생성 방법 및 장치를 제공함에 있다.
상기한 목적들을 달성하기 위한 본 발명의 방법은, 통신 시스템에서 호핑 시퀀스의 생성 방법에 있어서, 호핑 시퀀스와 동일한 크기를 가지는 배열 시퀀스를 초기화하는 과정과, 의사 잡음(PN) 시퀀스의 생성을 위해 사용되는 쉬프트 레지스터를, 호핑 시퀀스의 생성을 위해 입력된 시드값으로 초기화하는 과정과, 미리 정해지는 윈도우 독출 주기마다 상기 쉬프트 레지스터의 출력인 상기 PN 시퀀스에 윈도우를 적용한 결과인 윈도우 값을 획득하고, 상기 배열 시퀀스 중 상기 윈도우 값에 해당하는 요소를 다른 요소와 스와핑하는 과정과, 상기 배열 시퀀스의 모든 요소들이 스와핑될 때까지 상기 스와핑하는 과정을 반복한 후, 상기 배열 시퀀스를 상기 호핑 시퀀스로서 출력하는 과정을 포함하는 것을 특징으로 한다.
본 발명의 장치는, 통신 시스템에서 호핑 시퀀스의 생성 장치에 있어서, 의사 잡음(PN) 시퀀스의 생성을 위해 사용되는 쉬프트 레지스터를 포함하여 구성되는 PN 시퀀스 생성기와, 호핑 시퀀스와 동일한 크기를 가지는 배열 시퀀스를 초기화하고, 상기 쉬프트 레지스터를 호핑 시퀀스의 생성을 위해 입력된 시드값으로 초기화하고, 미리 정해지는 윈도우 독출 주기마다 상기 쉬프트 레지스터의 출력인 상기 PN 시퀀스에 윈도우를 적용한 결과인 윈도우 값을 획득하여, 상기 배열 시퀀스 중 상기 윈도우 값에 해당하는 요소를 다른 요소와 스와핑하며, 상기 배열 시퀀스의 모든 요소들이 스와핑될 때까지 상기 스와핑을 반복한 후, 상기 배열 시퀀스를 상기 호핑 시퀀스로서 출력하는 제어부를 포함하는 것을 특징으로 한다.
본 발명의 장치는, 통신 시스템에서 호핑 시퀀스의 생성 장치에 있어서, 의사 잡음(PN) 시퀀스의 생성을 위해 사용되는 쉬프트 레지스터를 포함하여 구성되는 PN 시퀀스 생성기와, 호핑 시퀀스와 동일한 크기를 가지는 배열 시퀀스를 초기화하고, 상기 쉬프트 레지스터를 호핑 시퀀스의 생성을 위해 입력된 시드값으로 초기화하고, 미리 정해지는 윈도우 독출 주기마다 상기 쉬프트 레지스터의 출력인 상기 PN 시퀀스에 윈도우를 적용한 결과인 윈도우 값을 획득하여, 상기 배열 시퀀스 중 상기 윈도우 값에 해당하는 요소를 다른 요소와 스와핑하며, 상기 배열 시퀀스의 모든 요소들이 스와핑될 때까지 상기 스와핑을 반복한 후, 상기 배열 시퀀스를 상기 호핑 시퀀스로서 출력하는 제어부를 포함하는 것을 특징으로 한다.
본 발명의 다른 방법은, 통신 시스템에서 호핑 시퀀스의 생성 방법에 있어서, 호핑 시퀀스와 동일한 크기를 가지는 플래그 배열을 0으로 초기화하는 과정과, 의사 잡음(PN) 시퀀스 생성을 위해 사용되는 쉬프트 레지스터를, 호핑 시퀀스의 생성을 위해 입력된 시드값으로 초기화하는 과정과, 미리 정해지는 윈도우 독출 주기마다 상기 쉬프트 레지스터의 출력인 PN 시퀀스에 윈도우를 적용한 결과인 윈도우 값을 획득하고, 상기 플래그 배열 중 상기 윈도우 값에 해당하는 제1 요소가 0이면 상기 제1 요소를 1로 변경하고 상기 호핑 시퀀스와 동일한 크기를 가지는 배열 시퀀스의 한 요소를 상기 윈도우 값으로 업데이트하는 과정과, 상기 배열 시퀀스의 모든 요소들이 업데이트될 때까지 상기 업데이트하는 과정을 반복한 후, 상기 배열 시퀀스를 상기 호핑 시퀀스로서 출력하는 과정을 포함하는 것을 특징으로 한다.
본 발명의 다른 장치는, 통신 시스템에서 호핑 시퀀스의 생성 장치에 있어서, 의사 잡음(PN) 시퀀스의 생성을 위해 사용되는 쉬프트 레지스터를 포함하여 구성되는 PN 시퀀스 생성기와, 호핑 시퀀스와 동일한 크기를 가지는 플래그 배열을 0으로 초기화하고, 상기 쉬프트 레지스터를 호핑 시퀀스의 생성을 위해 입력된 시드값으로 초기화하고, 미리 정해지는 윈도우 독출 주기마다 상기 쉬프트 레지스터의 출력인 PN 시퀀스에 윈도우를 적용한 결과인 윈도우 값을 획득하여, 상기 플래그 배열 중 상기 윈도우 값에 해당하는 제1 요소가 0이면 상기 제1 요소를 1로 변경하고 상기 호핑 시퀀스와 동일한 크기를 가지는 배열 시퀀스의 한 요소를 상기 윈도우 값으로 업데이트하며, 상기 배열 시퀀스의 모든 요소들이 업데이트될 때까지 상기 업데이트를 반복한 후, 상기 배열 시퀀스를 상기 호핑 시퀀스로서 출력하는 제어부를 포함하는 것을 특징으로 한다.
이하, 본 발명에 따른 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다.
본 발명은 통신 시스템에서 통신에 사용되는 채널, 일 예로서 캐리어 주파수 혹은 타임 슬롯의 호핑 패턴을 나타내는 호핑 시퀀스(hopping sequence)의 생성 방법 및 장치를 제안한다. 후술할 본 발명의 실시예에서는 호핑 시퀀스를 생성하기 위한 시드값이 입력되면, 상기 시드값을 이용하여 의사 랜덤 시퀀스(pseudo random sequence)를 생성하고, 상기 생성한 의사 랜덤 시퀀스에 소정 크기의 윈도우, 다시 말해 소정 비트의 윈도우를 적용한 결과를 이용하여 호핑 시퀀스로서 사용되기 위한 순열(permutation) 시퀀스를 생성한다. 이로써 본 발명은 각 시드값과 상기 각 시드값에 대응되는 순열 시퀀스를 저장하기 위해 통신 시스템의 송수신기에 요구되는 메모리 부담을 감소시킨다.
여기서, 후술할 본 발명의 실시예에서는 호핑 시퀀스의 생성을 위해 입력되는 시드값으로 초기화되어 동작하는 PN 시퀀스의 순환 쉬프트 레지스터로부터, 소정의 독출 주기마다 소정의 윈도우에 의해 독출된 값에 상응하여 시퀀스 배열의 요소들을 스와핑(swaping)하여 순열 시퀀스를 생성한다. 또한, 후술할 본 발명의 다른 실시예에서는, 상기 쉬프트 레지스터로부터 윈도우에 의해 독출된 값에 상응하여 시퀀스 배열의 각 요소를 업데이트하여 순열 시퀀스를 생성한다. 그러면 여기서 도 2를 참조하여 본 발명의 실시예에 따른 통신 시스템에서 의사 랜덤 시퀀스를 생성하는 장치에 대해 구체적으로 설명하기로 한다.
도 2는 본 발명의 실시예에 따른 통신 시스템에서 의사 랜덤 시퀀스를 생성하는 장치를 개략적으로 도시한 도면이다. 여기서, 도 2는 시퀀스 생성을 위해 소정 비트의 시드값이 입력되면 상기 시드값에 상응하여 의사 랜덤 시퀀스로서 의사 잡음(PN: Pseudo Noise, 이하 'PN'이라 칭하기로 함) 시퀀스를 생성하는 PN 시퀀스 생성기를 도시한 도면이다.
도 2를 참조하면, 상기 PN 시퀀스 생성기는, 일 예로서 20비트의 시드값(210)을 초기 입력으로 하는 20비트의 쉬프트 레지스터(shift register)(220)와, 상기 쉬프트 레지스터(220)의 출력들 중 적어도 일부를 입력으로 하는 배타적 가산기(230)를 포함한다. 상기 쉬프트 레지스터(220)를 구성하는 쉬프트 레지스터 소자들 각각은 매 클록마다 이전 단의 출력을 받아들여 저장하며, 요구된 시점에서의 쉬프트 레지스터의 출력이 PN 시퀀스가 된다. 상기 PN 시퀀스 생성기가 프리미티브 다항식(primitive polynomial) p(x)=1+x17+x20을 생성 다항식(generator polynomial)으로 사용하는 경우, 배타적 가산기(230)로는 상기 쉬프트 레지스터(220)를 구성하는 20개의 쉬프트 레지스터 소자들 중 S17 및 S20의 출력들이 입력되며, 그 출력은 S1으로 리턴된다.
상기 시드값(210)이 쉬프트 레지스터(220)에 입력되면 상기 쉬프트 레지스터(220)는 상기 시드값(210)으로 초기화된다. 4비트 크기의 윈도우(215)가 사용되는 경우, 상기 쉬프트 레지스터(220)에 대한 윈도우(215)의 위치가 결정되고, 상기 결정된 위치에서 상기 윈도우(215)가 PN 시퀀스 생성기의 상기 쉬프트 레지스터(220)에 적용된다. 예를 들어, 4비트의 윈도우(215)는 20비트의 쉬프트 레지스터(220)에서 S5, S4, S3, S2에 위치한다. 이때, S5가 상기 윈도우(215)의 최상위비트(MSB: Most Signification Bit, 이하 'MSB'라 칭하기로 함)이고, S2가 상기 윈도우(215)의 최하위비트(LSB: Least Signification Bit, 이하 'LSB'라 칭하기로 함)가 되며, 상기 윈도우(215)에 의해 구해진 시퀀스를 십진수(이하 윈도우 값이라 칭함)로 나타내면 8S5+4S4+2S3+S2가 된다.
이하에서는, 도 3 내지 도 5를 참조하여 통신 시스템에서 시퀀스 생성기가 PN 시퀀스 생성기의 쉬프트 레지스터 출력들에 대해 윈도우된 결과에 상응하여 시퀀스 배열의 요소들을 스와핑함으로써 순열 시퀀스를 생성하는 실시예를 설명하고, 도 6 내지 도 8을 참조하여 상기 윈도우된 결과에 상응하여 시퀀스 배열의 각 요소를 업데이트함으로써 순열 시퀀스를 생성하는 실시예를 설명하기로 한다.
도 3은 본 발명의 실시예에 따른 통신 시스템에서 시퀀스 생성기가 호핑 시퀀스를 생성하는 과정을 도시한 도면이다. 여기서, 시퀀스를 생성하기 위한 시드값이 입력되면 상기 시드값에 상응하여 시퀀스 배열을 초기화하고, 상기 시드값에 윈도우를 적용하여 윈도우된 결과에 따라 상기 시퀀스 배열의 소정 요소들을 스와핑하여 호핑 시퀀스를 생성하는 과정을 도시한다. 이하에서는 설명의 편의를 위해 S비트의 시드값이 입력되면 S비트의 쉬프트 레지스터를 포함하는 시퀀스 생성기를 통해 크기가 M인 시퀀스를 생성하는 경우에 대해 설명하기로 한다.
도 3을 참조하면, 앞서 설명한 바와 같이 시퀀스를 생성하기 위한 S비트의 시드값이 입력되면 301단계에서 시퀀스 생성기는 상기 시드값에 대한 윈도우의 크기, 즉 윈도우의 비트 수인 n을 결정한 후 303단계로 진행한다. 여기서, 상기 n은 하기 수학식 2를 만족하는 최소 정수이다.
Figure 112007019446836-pat00006
상기 수학식 2에서 M은 정수로서 앞서 설명한 바와 같이 시퀀스 생성기가 생성하는 시퀀스의 크기, 즉 M 순열 시퀀스를 의미한다.
303단계에서 상기 시퀀스 생성기에 포함된 쉬프트 레지스터에 위치하는 윈도우에서 윈도우 값을 독출하는 주기를 나타내는 파라미터 K와 시퀀스 생성을 위해 후술할 동작을 반복 수행하는 횟수, 즉 시퀀스 배열의 소정 값들을 스와핑하는 횟수를 결정하는 파라미터 L을 결정한다. 여기서, 상기 K는 다양한 시드값에 의해 생성된 순열들의 상관관계(correlation)가 최소가 되도록 결정된다.
305단계에서 시퀀스 생성기는 상기 쉬프트 레지스터에서 n비트의 윈도우의 위치를 결정한 후 307단계로 진행하고, 상기 307단계에서 순열 시퀀스를 결정하기 위해 사용되는 중간 저장수단인, 크기가 M인 시퀀스 배열을 초기화한다. 즉 시퀀스 배열의 요소들인 A[0], A[1], ...A[M-1]의 각 값이 A[0]=0, A[1]=1, ...A[M-1]=M-1로 초기화된다. 그리고 나서, 시퀀스 생성기는, 309단계에서 S비트의 시드값으로 상기 쉬프트 레지스터를 초기화한 다음, 311단계에서 카운터 변수인 i를 M-1로 설정하여 상기 i가 0이 될 때까지 후술하는 시퀀스 생성 동작(313 내지 331 단계)을 반복하여 수행한다.
구체적으로, 313단계에서 시퀀스 생성기는 상기 카운터 변수에 상응하여 하기 수학식 3을 만족하는 최소 정수로서 윈도우로부터 독출할 LSB의 개수 p를 결정한 후, 315단계로 진행한다.
Figure 112007019446836-pat00009
상기 315단계에서 시퀀스 생성기는 스와핑 변수 j를 0으로 설정하고, 상기 i에 상응하여 출력 변수 x를 i+1로 초기화한다. 317단계에서 상기 시퀀스 생성기에 클럭이 인가되면 상기 클럭에 따라 쉬프트 레지스터 및 배타적 가산기가 동작하여 PN 시퀀스들이 순차적으로 생성되며, K번째의 클럭들이 인가된 시점에서 상기 쉬프트 레지스터의 출력인 PN 시퀀스 중 상기 결정된 위치에 배치된 상기 윈도우에 의해 독출된 p비트의 LSB 값을 상기 출력 변수 x에 저장한 후, 319단계에서 스와핑 변수 j를 1만큼 증가시키고 321 단계로 진행한다.
상기 321단계에서 시퀀스 생성기는 상기 스와핑 변수 j와 파라미터 L을 비교하고, 상기 출력 변수 x와 카운터 변수 i를 비교한다. 상기 321단계에서의 비교 결과 상기 스와핑 변수 j가 상기 파라미터 L에 도달하였거나, 또는 상기 출력 변수 x가 카운터 변수 i 이하이면, 즉 상기 두 가지 조건들 중 어느 하나의 조건이라도 만족하면 323단계로 진행하고, 상기 두 가지 조건들 모두를 만족하지 않으면 317단계로 진행한다. 상기 317단계에서 시퀀스 생성기에 클럭이 인가되면 상기 클럭에 따라 쉬프트 레지스터 및 배타적 가산기가 동작하며, K개의 클럭이 인가된 시점에서, 즉 K번째 클럭에서 시퀀스 생성기는 상기 결정된 위치에 배치된 윈도우 내의 p비트의 LSB 값을 상기 출력 변수 x에 저장한다. 상기 321단계의 두 가지 조건들 중 하나의 조건을 만족할 때까지 전술한 317단계 내지 321단계는 반복하여 수행된다.
상기 두 가지 조건들 중 어느 하나의 조건이 만족되면, 323단계에서 시퀀스 생성기는 출력 변수 x와 카운터 변수 i를 비교하고, 상기 비교 결과 상기 출력 변수 x가 카운터 변수 i보다 크면 325단계로 진행하여 상기 출력 변수 x를 x-i로 설정한 다음, 327단계에서 상기 시퀀스 배열의 요소들을 스와핑, 즉 출력 변수 x에 해당하는 A[x]와 카운터 변수 i에 해당하는 A[i]를 스와핑한 후, 329단계로 진행한다. 반면, 상기 323단계에서의 비교 결과, 상기 출력 변수 x가 카운터 변수 i 이하이면 327단계로 바로 진행하여, 출력 변수 x를 변경시키지 않은 채 시퀀스 배열의 요소들인 A[x]와 A[i]를 스와핑한다.
329단계에서 시퀀스 생성기는 카운터 변수 i를 1만큼 감소시킨 후, 331단계에서 상기 카운터 변수 i가 0에 도달하였는지에 따라 전술한 시퀀스 생성 동작을 반복하여 수행할 것인지를 판단한다. 시퀀스 생성기는, 상기 331단계에서 상기 카운터 변수 i가 0이 아닐 경우, 즉 전술한 시퀀스 생성 동작을 반복 수행하기 위해 313단계로 진행하여, 상기 카운터 변수에 상응하여 상기 수학식 3을 만족하는 윈도우의 LSB의 크기 p를 결정한다. 한편, 상기 331단계에서 상기 카운터 변수 i가 0이 되었으면, 시퀀스 생성기는 상기 시퀀스 배열 A[0], A[1], ...A[M-1]에 저장된 값들이 순열 시퀀스가 되는 것으로 최종 판단하고 동작을 종료한다. 그러면 상기 순열 시퀀스가 단말과 기지국간 통신을 위한 호핑 패턴을 지시하는 호핑 시퀀스로서 사용되며, 상기 호핑 시퀀스의 각 요소가 지시하는 캐리어 주파수 혹은 타임 슬롯을 통해 기지국과 단말간 통신이 이루어진다.
도 4와 도 5를 참조하여 본 발명의 실시예에 따른 통신 시스템에서 도 3에 도시한 바와 같은 동작을 수행하여 시퀀스를 생성하는 과정을 보다 구체적으로 설명하기로 한다.
도 4는 본 발명의 실시예에 따른 통신 시스템에서 시퀀스를 생성하는 예를 개략적으로 도시한 도면이다. 여기서, S=4, 즉 4비트의 시드값이 입력되면 M=7, 즉 크기가 7인 시퀀스를 생성하는 경우에 대해 설명하기로 한다.
도 4를 참조하면, 시퀀스 생성기는, 5비트의 시드값 {1, 0, 1, 0, 1}(410)을 초기 입력으로 하는 5비트의 쉬프트 레지스터(420)와, 상기 쉬프트 레지스터(420)의 출력들 중 적어도 일부를 입력으로 하는 배타적 가산기(430)를 포함한다. 프리미티브 다항식 p(x)=1+x2+x5이 PN 생성 다항식으로 사용되는 경우, 배타적 가산기(430)로는 상기 쉬프트 레지스터(420)를 구성하는 5개의 쉬프트 레지스터 소자들 중 S2, S5의 출력들이 입력되며, 그 출력은 S1으로 리턴된다.
상기 시드값(410)이 쉬프트 레지스터(420)에 입력되면 상기 쉬프트 레지스터(420)는 상기 시드값(410)으로 초기화된다. 3비트 크기의 윈도우(415)가 사용되는 경우, 상기 쉬프트 레지스터(420)에 대한 윈도우(415)의 위치가 결정되고, 상기 결정된 위치에서 상기 윈도우(415)가 시퀀스 생성기의 상기 쉬프트 레지스터(420)에 적용된다. 예를 들어, 3비트의 윈도우(415)는 5비트의 쉬프트 레지스터(420)에서 S3, S2, S1에 위치한다. 이때, S3이 상기 윈도우(415)의 MSB이고, S1이 상기 윈도우(415)의 LSB가 되며, 상기 윈도우(415)에 의해 구해진 시퀀스를 십진수로 나타내면 4S3+2S2+S1이 된다.
도 5는 본 발명의 실시예에 따른 통신 시스템에서 시퀀스 발생기에 의해 생성되는 시퀀스들을 도시한 도면이다. 여기서, 도 5는 도 4에 도시한 구조에 의해 생성된 시퀀스들을 도시한 것으로서 이하에서는 설명의 편의를 위해 도 3에 도시한 동작 과정을 이용하여 설명한다. 윈도우에서 윈도우 값을 독출하는 주기 K는 3 클럭으로 설정되고, 시퀀스 배열의 소정 값들을 스와핑하는 횟수를 결정하는 파라미터 L은 2로 설정된다.
도 5를 참조하면, 0 클럭에서 시드값으로 {S5, S4, S3, S2, S1}={1, 0, 1, 0, 1}이 입력되며, 시퀀스 생성기는 301단계에서 상기 수학식 2를 만족하는 윈도우의 비트 수 n을 3으로 결정한다. 그런 다음, 303단계에서 시퀀스 생성기는 K를 3, L을 2로 결정한 후, 305단계에서 3비트의 윈도우의 위치를 도 4에 도시한 바와 같이 S3, S2, S1으로 결정한다.
307단계에서 크기가 M=7인 시퀀스 배열이 초기화된다. 즉 시퀀스 배열의 요소들인 A[0], A[1], ... A[6]의 각 값이 A[0]=0, A[1]=1, ... A[6]=6 으로 초기화된다. 309단계에서 시퀀스 생성기는 상기 시드값 {1, 0, 1, 0, 1}로 쉬프트 레지스터를 초기화하고 나서, 311단계에서 카운터 변수인 i를 6으로 설정하고, 313단계에서 상기 수학식 3을 만족하는 윈도우의 LSB의 크기 p를 3으로 결정한다.
315단계에서 시퀀스 생성기는 스와핑 변수 j를 0으로 설정하고, 카운터 변수 i=6에 따라 출력 변수 x를 7로 설정한다. 317단계에서 시퀀스 생성기에 클럭들이 인가되면, 상기 클럭들에 따라 쉬프트 레지스터(420) 및 배타적 가산기(430)가 동작하며, 3번째의 클럭에서 상기 쉬프트 레지스터의 값들 중 상기 윈도우에 의해 독출된 3 LSB, 즉 S3, S2, S1의 십진수 값인 4S3+2S2+S1에 의한 6이 출력 변수 x로 저장된다. 다음으로, 319단계에서 시퀀스 생성기는 스와핑 변수 j를 1로 증가시킨 다음, 321단계에서 상기 스와핑 변수 j인 1과 상기 파라미터 L인 2를 비교하고, 상기 출력 변수 x로서 6과 상기 카운터 변수 i인 6을 비교한다.
시퀀스 생성기는 상기 321단계에서의 비교 결과 상기 출력 변수 x(=6)가 카운터 변수 i(=6)와 같으므로 323단계로 진행하고, 상기 323단계에서의 비교 결과 상기 출력 변수 x(=6)가 카운터 변수 i(=6)보다 크지 않으므로 327단계로 진행한다. 그러면, 327단계에서 상기 시퀀스 배열의 요소들 중 출력 변수 x=6에 해당하는
Figure 112008059584148-pat00018
과 카운터 변수 i=6에 해당하는
Figure 112008059584148-pat00019
을 스와핑한다. 이때, 자기 자신과의 스와핑은 무의미하므로 스와핑은 이루어지지 않는다. 다음으로 시퀀스 생성기는 329단계로 진행하여 i를 5로 설정한 후, 331단계에서의 확인 결과 i가 0이 아니므로 313단계로 복귀하여, 상기 수학식 3을 만족하는 윈도우의 LSB의 크기 p를 3으로 결정한다.
다시, 315단계에서 스와핑 변수 j를 0으로 설정하고, 카운터 변수 i=5에 따라 출력 변수 x를 6로 설정한다. 317단계에서 시퀀스 생성기에 클럭들이 인가되어, 6번째의 클럭에서 상기 윈도우에 의해 독출된 3 LSB, 즉 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00020
에 의한 6을 출력 변수 x에 저장한다. 319단계에서 스와핑 변수 j를 1로 증가시킨 다음, 321단계에서 상기 스와핑 변수 j인 1과 파라미터 L인 2를 비교하고, 상기 출력 변수 x로서 6과 카운터 변수 i인 5를 비교한다.
상기 321단계에서의 비교 결과 스와핑 변수 j와 파라미터 L이 다르고 출력 변수 x가 카운터 변수 i보다 크므로 317단계로 진행한다. 317단계에서 시퀀스 생성기에 다시 3개의 클럭들이 인가된 후, 9번째의 클럭에서 상기 윈도우에 의해 독출된 3 LSB, 즉 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00021
에 의한 1을 출력 변수 x에 저장한다. 319단계에서 스와핑 변수 j를 2로 증가시키고, 321단계에서 상기 스와핑 변수 j인 2와 파라미터 L인 2를 비교하고, 상기 출력 변수 x인 1과 카운터 변수 i인 5를 비교한다.
상기 321단계에서의 비교 결과 스와핑 변수 j와 파라미터 L이 같고 출력 변수 x가 카운터 변수 i 이하이므로, 323단계로 진행한다. 상기 323단계에서는 상기 출력 변수 x가 카운터 변수 i보다 작으므로 327단계로 진행한다. 그러면, 327단계에서 상기 시퀀스 배열의 요소들 중 출력 변수 x=1에 해당하는
Figure 112008059584148-pat00022
과 카운터 변수 i=5에 해당하는
Figure 112008059584148-pat00023
를 스와핑한다. 다음으로, 329단계로 진행하여 i를 4로 설정한 후, 331단계에서의 확인 결과 i가 0이 아니므로 313단계로 복귀하여 상기 수학식 3을 만족하는 윈도우의 LSB의 크기 p를 3으로 결정한다.
다시, 315단계에서 스와핑 변수 j를 0으로 설정하고, 카운터 변수 i=4에 따라 출력 변수 x를 5로 설정한다. 317단계에서 시퀀스 생성기에 3개의 클럭들이 인가되면, 12번째의 클럭에서 상기 윈도우에 의해 독출된 3 LSB, 즉 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00024
에 의한 7을 출력 변수 x에 저장한다. 319단계에서 스와핑 변수 j를 1로 증가시킨 다음, 321단계에서 상기 스와핑 변수 j인 1과 파라미터 L인 2를 비교하고, 상기 출력 변수 x로서 7과 카운터 변수 i인 4를 비교한다.
상기 321단계에서의 비교 결과 스와핑 변수 j와 파라미터 L이 다르고 출력 변수 x가 카운터 변수 i보다 크므로 317단계로 진행한다. 317단계에서 시퀀스 생성기에 다시 3개의 클럭들이 인가된 후, 15번째의 클럭에서 상기 윈도우에 의해 독출된 3 LSB, 즉 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00025
에 의한 4를 출력 변수 x에 저장한다. 319단계에서 스와핑 변수 j를 2로 증가시키고, 321단계에서 상기 스와핑 변수 j인 2와 파라미터 L인 2를 비교하고, 상기 출력 변수 x로서 4와 카운터 변수 i인 4를 비교한다.
상기 321단계에서의 비교 결과 스와핑 변수 j와 파라미터 L이 같고 출력 변수 x가 카운터 변수 i 이하이므로, 323단계로 진행한다. 상기 323단계에서는 상기 출력 변수 x가 카운터 변수 i와 같으므로 327단계로 진행한다. 그러면, 327단계에서 상기 시퀀스 배열의 요소들을 중 출력 변수 x=4에 해당하는
Figure 112008059584148-pat00026
와 카운터 변수 i=4에 해당하는
Figure 112008059584148-pat00027
를 스와핑한다. 이때, 자기 자신과의 스와핑은 무의미하므로 스와핑은 이루어지지 않는다. 다음으로 시퀀스 생성기는 329단계로 진행하여 i를 3으로 설정한 후, 331단계에서의 확인 결과 i가 0이 아니므로 313단계로 복귀하여 상기 수학식 3을 만족하는 윈도우의 LSB의 크기 p를 2로 결정한다.
다시, 315단계에서 스와핑 변수 j를 0으로 설정하고, 카운터 변수 i=3에 따라 출력 변수 x를 4로 설정한다. 317단계에서 시퀀스 생성기에 3개의 클럭들이 인가된 후, 18번째의 클럭에서 상기 윈도우에 의해 독출된 2 LSB, 즉 S2, S1의 십진수 값인
Figure 112008059584148-pat00028
에 의한 2를 출력 변수 x에 저장한다. 319단계에서 스와핑 변수 j를 1로 증가시킨 다음, 321단계에서 상기 스와핑 변수 j인 1과 파라미터 L인 2를 비교하고, 상기 출력 변수 x로서 2와 카운터 변수 i인 3을 비교한다.
상기 321단계에서의 비교 결과 상기 출력 변수 x가 카운터 변수 i 이하이므로, 323단계로 진행한다. 상기 323단계에서는 상기 출력 변수 x가 카운터 변수 i보다 작으므로 327단계로 진행한다. 그러면, 327단계에서 상기 시퀀스 배열의 요소들 중 출력 변수 x=2에 해당하는
Figure 112008059584148-pat00029
와 카운터 변수 i=3에 해당하는
Figure 112008059584148-pat00030
을 스와핑한다. 다음으로, 329단계로 진행하여 i를 2로 설정한 후, 331단계에서의 확인 결과 i가 0이 아니므로 313단계로 복귀하여 상기 수학식 3을 만족하는 윈도우의 LSB의 크기 p를 1로 결정한다.
다시, 315단계에서 스와핑 변수 j를 0으로 설정하고, 카운터 변수 i=2에 따라 출력 변수 x를 3으로 설정한다. 317단계에서 시퀀스 생성기에 3개의 클럭들이 인가되면, 21번째의 클럭에서 상기 윈도우에 의해 독출된 1 LSB, 즉 S1의 십진수 값인
Figure 112008059584148-pat00031
에 의한 0을 출력 변수 x에 저장한다. 319단계에서 상기 스와핑 변수 j를 1로 증가시킨 다음, 321단계에서 상기 스와핑 변수 j인 1과 파라미터 L인 2를 비교하고, 상기 출력 변수 x로서 0과 카운터 변수 i인 2를 비교한다.
상기 321단계에서의 비교 결과 출력 변수 x가 카운터 변수 i 이하이므로, 323단계로 진행한다. 상기 323단계에서는 상기 출력 변수 x가 카운터 변수 i보다 작으므로 327단계로 진행한다. 327단계에서 상기 시퀀스 배열의 요소들 중 출력 변수 x=0에 해당하는
Figure 112008059584148-pat00032
와 카운터 변수 i=2에 해당하는
Figure 112008059584148-pat00033
를 스와핑한다. 다음으로, 329단계로 진행하여 i를 1로 설정한 후, 331단계에서의 확인 결과 i가 0이 아니므로 313단계로 복귀하여 상기 수학식 3을 만족하는 윈도우의 LSB의 크기 p를 1로 결정한다.
다시, 315단계에서 스와핑 변수 j를 0으로 설정하고, 카운터 변수 i=1에 따라 출력 변수 x를 2로 설정한다. 317단계에서 시퀀스 생성기에 3개의 클럭들이 인가된 후, 24번째의 클럭에서 상기 윈도우에 의해 독출된 1 LSB, 즉 S1의 십진수 값인
Figure 112008059584148-pat00034
에 의한 0을 출력 변수 x에 저장한다. 319단계에서 스와핑 변수 j를 1로 증가시킨 다음, 321단계에서 상기 스와핑 변수 j인 1과 파라미터 L인 2를 비교하고, 상기 출력 변수 x로서 0과 카운터 변수 i인 1을 비교한다.
상기 321단계에서의 비교 결과 출력 변수 x가 카운터 변수 i 이하이므로, 323단계로 진행하고, 상기 323단계에서는 상기 출력 변수 x가 카운터 변수 i보다 작으므로 327단계로 진행한다. 그러면, 327단계에서 상기 시퀀스 배열의 요소들 중 출력 변수 x=0에 해당하는
Figure 112008059584148-pat00035
와 카운터 변수 i=1에 해당하는
Figure 112008059584148-pat00036
을 스와핑한다. 다음으로, 329단계로 진행하여 i를 0으로 설정한 후, 331단계에서 i가 0인지를 확인한다.
상기 331단계에서의 확인 결과 i가 0이므로 시퀀스 생성 동작은 종료되며, 상기 시퀀스 배열
Figure 112008059584148-pat00037
에 최종적으로 저장된 값들, 즉
Figure 112008059584148-pat00038
에 따라, 시퀀스 생성을 위해 입력된 시드값 {1, 0, 1, 0, 1}에 의해 생성된 순열 시퀀스인 {5, 3, 0, 2, 4, 1, 6}이 생성된다. 상기 순열 시퀀스는 단말과 기지국간 통신을 위한 호핑 시퀀스로서 사용된다.
그러면 이하에서는, 도 6 내지 도 8을 참조하여 본 발명의 실시예에 따른 통신 시스템에서 시퀀스 생성기가 윈도우 값에 상응하여 플래그 배열과 시퀀스 배열을 업데이트하여 순열 시퀀스를 생성하는 방안을 보다 구체적으로 설명하기로 한다.
도 6은 본 발명의 실시예에 따른 통신 시스템에서 시퀀스 생성기가 호핑 시퀀스를 생성하는 과정을 도시한 도면이다. 여기서, 시퀀스를 생성하기 위한 시드값이 입력되면 상기 시드값에 상응하여 플래그 배열을 초기화하고, 상기 시드값에 윈도우를 적용하여 윈도우된 결과에 따라 플래그 배열과 시퀀스 배열을 업데이트하여 호핑 시퀀스를 생성하는 과정을 도시한다. 이하에서는 설명의 편의를 위해 S비트의 시드값이 입력되면 S비트의 쉬프트 레지스터를 포함하는 시퀀스 생성기를 통해 크기가 M인 시퀀스를 생성하는 경우에 대해 설명하기로 한다.
도 6을 참조하면, 앞서 설명한 바와 같이 시퀀스를 생성하기 위한 S비트의 시드값이 입력되면 601단계에서 시퀀스 생성기는 상기 시드값에 대한 윈도우의 크기, 즉 윈도우의 비트 수인 n을 결정한 후 603단계로 진행한다. 여기서, 상기 n은 상기 수학식 2를 만족하는 최소 정수이다.
603단계에서 상기 시퀀스 생성기에 포함된 쉬프트 레지스터에 위치하는 윈도우에서 윈도우 값을 독출하는 클록 간격을 나타내는 파라미터 K를 결정한다. 여기서, 상기 K는 다양한 시드값에 의해 생성된 순열들의 상관관계가 최소가 되도록 결정된다.
605단계에서 시퀀스 생성기는 상기 쉬프트 레지스터에서 n비트의 윈도우의 위치를 결정한 후 607단계로 진행하고, 상기 607단계에서 순열 시퀀스를 결정하기 위해 사용되는 크기가 M인 플래그 배열을 0으로 초기화한다. 즉 플래그 배열의 요소들인
Figure 112008059584148-pat00039
의 각 값을
Figure 112008059584148-pat00040
으로 각각 초기화한다. 그리고 나서 시퀀스 생성기는, 609단계에서 S비트의 시드값으로 상기 쉬프트 레지스터를 초기화한 다음, 611단계에서 카운터 변수인 i를 0으로 설정하여 상기 i가 M이 될 때까지 후술하는 시퀀스 생성 동작(613 내지 621단계)을 반복하여 수행한다.
삭제
구체적으로, 613단계에서 상기 시퀀스 생성기에 클럭들이 인가되면 상기 클럭들에 따라 쉬프트 레지스터 및 배타적 가산기가 동작하여 PN 시퀀스들이 순차적으로 생성되며, K개의 클럭들이 인가된 시점에서 상기 쉬프트 레지스터의 값들 중 상기 결정된 위치에 배치된 n비트의 윈도우에 의해 독출된 값이 상기 출력 변수 x에 저장된다. 615단계에서 시퀀스 생성기는 상기 출력 변수 x와 순열 시퀀스의 크기 M을 비교하고, 상기 플래그 배열의 요소들 중 출력 변수 x에 해당하는
Figure 112008059584148-pat00041
가 0인지를 확인한다. 상기 출력 변수 x가 M보다 작고,
Figure 112008059584148-pat00042
가 0이면, 즉 상기 두 가지 조건을 모두 만족하면 617단계로 진행하고, 상기 두가지 조건들 모두가 만족하지 않으면 613단계로 복귀한다. 상기 613단계로 복귀하면 시퀀스 생성기로 다시 K개의 클럭들이 인가되며, 다음 K번째의 클럭에서 n비트의 윈도우 값을 상기 출력 변수 x에 다시 저장한다. 상기 615단계의 두 가지 조건들 모두를 만족할 때까지 전술한 613단계와 615단계를 반복하여 수행한다.
상기 두가지 조건들 모두를 만족하면, 617단계에서 시퀀스 생성기는 출력 변수 x를 상기 시퀀스 배열의 요소들 중 카운터 변수 i에 해당하는
Figure 112008059584148-pat00043
에 저장하고, 1을 플래그 배열의 요소들 중 출력 변수 x에 해당하는
Figure 112008059584148-pat00044
에 설정한 후 619단계로 진행한다. 상기 619단계에서 시퀀스 생성기는 카운터 변수 i를 i+1로 업데이트한 후, 621단계에서 상기 카운터 변수 i가 시퀀스의 크기 M보다 작은지를 확인한다. 상기 621단계에서의 확인 결과 카운터 변수 i가 시퀀스의 크기 M보다 작을 경우, 즉 전술한 시퀀스 생성 동작을 반복하여 수행하기 위해 613단계로 복귀한다. 반면 카운터 변수 i가 시퀀스의 크기 M 이상이 되면, 시퀀스 생성 동작은 종료되고, 상기 시퀀스 배열
Figure 112008059584148-pat00045
에 저장된 값들이 최종적으로 순열 시퀀스가 된다. 그러면 상기 순열 시퀀스가 단말과 기지국간 통신을 위한 호핑 패턴을 지시하는 호핑 시퀀스로서 사용되며, 상기 호핑 시퀀스의 각 요소가 지시하는 캐리어 주파수 혹은 타임 슬롯을 통해 기지국과 단말간 통신이 이루어진다.
여기서, 도 7과 도 8을 참조하여 본 발명의 실시예에 따른 통신 시스템에서 도 6에 도시한 바와 같은 동작을 수행하여 시퀀스를 생성하는 과정을 보다 구체적으로 설명하기로 한다.
도 7은 본 발명의 실시예에 따른 통신 시스템에서 시퀀스를 생성하는 예를 개략적으로 도시한 도면이다. 여기서, S=4, 즉 4비트의 시드값이 입력되면 M=7, 즉 크기가 7인 시퀀스를 생성하는 경우에 대해 설명하기로 한다.
도 7을 참조하면, 시퀀스 생성기는, 5비트의 시드값 {1, 0, 1, 0, 1}(710)을 초기 입력으로 하는 5비트의 쉬프트 레지스터(720)와, 상기 쉬프트 레지스터(720)의 출력들 중 적어도 일부를 입력으로 하는 배타적 가산기(730)를 포함한다. 프리미티브 다항식
Figure 112008059584148-pat00046
이 PN 생성 다항식으로 사용되는 경우, 배타적 가산기(730)로는 상기 쉬프트 레지스터(720)를 구성하는 5개의 쉬프트 레지스터 소자들 중 S2, S5의 출력들이 입력되며, 그 출력은 S1으로 리턴된다.
상기 시드값(710)이 쉬프트 레지스터(720)에 입력되면 상기 쉬프트 레지스터(720)는 상기 시드값(710)으로 초기화된다. 3비트 크기의 윈도우(715)가 사용되는 경우, 상기 쉬프트 레지스터(720)에 대한 윈도우(415)의 위치가 결정되고, 상기 결정된 위치에서 상기 윈도우(715)가 시퀀스 생성기의 상기 쉬프트 레지스터(720)에 적용된다. 예를 들어, 3비트의 윈도우(715)는 5비트의 쉬프트 레지스터(720)에서 S3, S2, S1에 위치한다. 이때, S3이 상기 윈도우(715)의 MSB이고, S1이 상기 윈도우(715)의 LSB가 되며, 상기 윈도우(715)에 의해 구해진 시퀀스를 십진수(윈도우 값)로 나타내면
Figure 112008059584148-pat00047
이 된다.
도 8은 본 발명의 실시예에 따른 통신 시스템에서 시퀀스 발생기에 의해 생성되는 시퀀스들을 도시한 도면이다. 여기서, 도 8은 도 7에 도시한 구조에 의해 생성된 시퀀스들을 도시한 것으로서 이하에서는 설명의 편의를 위해 도 6에 도시한 동작 과정을 이용하여 설명한다. 윈도우에서 윈도우 값을 독출하는 주기 K는 3 클럭으로 설정된다.
도 8을 참조하면, 0 클럭에서 시드값 {S5, S4, S3, S2, S1}={1, 0, 1, 0, 1}이 입력되며, 시퀀스 생성기는 601단계에서 상기 수학식 2를 만족하는 윈도우의 비트 수 n을 3으로 결정한다. 그런 다음, 603단계에서 시퀀스 생성기는 K를 3으로 결정한 후, 605단계에서 3비트의 윈도우의 위치를 도 7에 도시한 바와 같이 S3, S2, S1으로 결정한다.
607단계에서 크기가 M=7인 플래그 배열이 초기화된다. 즉 플래그 배열의 요소들인
Figure 112008059584148-pat00048
의 각 값을
Figure 112008059584148-pat00049
으로 각각 초기화한다. 609단계에서 시퀀스 생성기는 상기 시드값 {1, 0, 1, 0, 1}로 쉬프트 레지스터를 초기화하고 나서, 611단계에서 카운터 변수인 i를 0으로 설정한다.
613단계에서 시퀀스 생성기에 클럭들이 인가되면 상기 클럭들에 따라 쉬프트 레지스터 및 배타적 가산기가 동작하며, 3번째의 클럭에서 상기 쉬프트 레지스터의 값들 중 상기 결정된 위치의 윈도우에 의해 독출된 3비트의 시퀀스, 즉 {S3, S2, S1}의 십진수 값인
Figure 112008059584148-pat00050
에 의한 6을 출력 변수 x에 저장한다.
615단계에서 상기 출력 변수 x인 6과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=6에 해당하는
Figure 112008059584148-pat00051
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과, 출력 변수 x가 시퀀스의 크기 M보다 작고,
Figure 112008059584148-pat00052
이 0이므로 617단계로 진행한다. 617단계에서 출력 변수 x=6을 상기 시퀀스 배열의 요소들 중 카운터 변수 i=0에 해당하는
Figure 112008059584148-pat00053
에 저장하고, 1을 플래그 배열의 요소들 중 출력 변수 x=6에 해당하는 값
Figure 112008059584148-pat00054
에 설정한다.
619단계에서 카운터 변수 i를 1로 증가시킨 후, 621단계에서 상기 카운터 변수 i=1이 시퀀스 크기 M=7보다 작은지를 확인하여, i가 M보다 작으므로 613단계로 진행한다. 상기 613단계에서 시퀀스 생성기에 클럭들이 인가되어, 6번째의 클럭에서 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00055
에 의한 6을 출력 변수 x에 저장한다.
615단계에서 상기 출력 변수 x인 6과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=6에 해당하는 값
Figure 112008059584148-pat00056
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과,
Figure 112008059584148-pat00057
이 0이 아니므로 613단계로 진행한다. 상기 613단계에서 시퀀스 생성기에 클럭들이 인가되어, 9번째의 클럭에서 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00058
에 의한 1을 출력 변수 x에 저장한다.
615단계에서 상기 출력 변수 x인 6과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=1에 해당하는 값
Figure 112008059584148-pat00059
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과, 출력 변수 x가 시퀀스의 크기 M보다 작고,
Figure 112008059584148-pat00060
이 0이므로 617단계로 진행한다. 617단계에서 출력 변수 x=1을 상기 시퀀스 배열 중 카운터 변수 i=1에 해당하는
Figure 112008059584148-pat00061
에 저장하고, 1을 플래그 배열중 출력 변수 x=1에 해당하는
Figure 112008059584148-pat00062
에 설정한다.
그런 다음, 619단계에서 카운터 변수 i를 2로 증가시킨 후, 621단계에서 상기 카운터 변수 i=2가 시퀀스 크기 M=7보다 작은지를 확인하여, i가 M보다 작으므로 613단계로 진행한다. 상기 613단계에서 시퀀스 생성기에 클럭들이 인가되어, 12번째의 클럭에서 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00063
에 의한 7을 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 7과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=7에 해당하는 값
Figure 112008059584148-pat00064
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과, 출력 변수 x와 시퀀스의 크기 M과 같으므로 613단계로 진행한다. 상기 613단계에서 시퀀스 생성기에 클럭들이 인가되어, 15번째의 클럭에서 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00065
에 의한 4를 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 4와 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=4에 해당하는
Figure 112008059584148-pat00066
가 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과, 출력 변수 x가 시퀀스의 크기 M보다 작고,
Figure 112008059584148-pat00067
가 0이므로 617단계로 진행한다. 617단계에서 출력 변수 x=4를 상기 시퀀스 배열 중 카운터 변수 i=2에 해당하는
Figure 112008059584148-pat00068
에 저장하고, 1을 플래그 배열 중 출력 변수 x=4에 해당하는
Figure 112008059584148-pat00069
에 설정한다.
그런 다음, 619단계에서 카운터 변수 i를 3으로 증가시킨 후, 621단계에서 상기 카운터 변수 i=3이 시퀀스 크기 M=7보다 작은지를 확인하여, i가 M보다 작으므로 613단계로 진행한다. 상기 613단계에서 시퀀스 생성기에 클럭들이 인가되면, 18번째의 클럭에서 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00070
에 의한 6을 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 6과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=6에 해당하는
Figure 112008059584148-pat00071
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과,
Figure 112008059584148-pat00072
이 0이 아니므로 613단계로 진행한다. 상기 613단계에서 시퀀스 생성기에 클럭들이 인가되어 21번째의 클럭에서 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00073
에 의한 4를 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 4와 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=4에 해당하는
Figure 112008059584148-pat00074
가 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과,
Figure 112008059584148-pat00075
가 0이 아니므로 613단계로 진행한다. 상기 613단계에서 24번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00076
에 의한 4를 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 4와 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=4에 해당하는 값
Figure 112008059584148-pat00077
가 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과,
Figure 112008059584148-pat00078
가 0이 아니므로 613단계로 진행한다. 상기 613단계에서 27번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00079
에 의한 1을 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 1과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=1에 해당하는
Figure 112008059584148-pat00080
가 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과,
Figure 112008059584148-pat00081
이 0이 아니므로 613단계로 진행한다. 상기 613단계에서 30번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00082
에 의한 2를 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 2와 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=2에 해당하는 값
Figure 112008059584148-pat00083
가 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과, 출력 변수 x가 시퀀스의 크기 M보다 작고,
Figure 112008059584148-pat00084
가 0이므로 617단계로 진행한다. 상기 617단계에서 출력 변수 x=2를 상기 시퀀스 배열 중 카운터 변수 i=3에 해당하는
Figure 112008059584148-pat00085
에 저장하고, 1을 플래그 배열 중 출력 변수 x=2에 해당하는
Figure 112008059584148-pat00086
에 설정한다.
그런 다음, 619단계에서 카운터 변수 i를 4로 증가시킨 후, 621단계에서 상기 카운터 변수 i=4가 시퀀스 크기 M=7보다 작은지를 확인하여, i가 M보다 작으므로 613단계로 진행한다. 상기 613단계에서 33번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00087
에 의한 7을 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 7과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=7에 해당하는
Figure 112008059584148-pat00088
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과, 출력 변수 x와 시퀀스 크기 M과 같으므로 613단계로 진행한다. 상기 613단계에서 36번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00089
에 의한 3을 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 3과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=3에 해당하는
Figure 112008059584148-pat00090
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과, 출력 변수 x가 시퀀스의 크기 M보다 작고,
Figure 112008059584148-pat00091
이 0이므로 617단계로 진행한다. 상기 617단계에서 출력 변수 x=3을 상기 시퀀스 배열 중 카운터 변수 i=4에 해당하는
Figure 112008059584148-pat00092
에 저장하고, 1을 플래그 배열 중 출력 변수 x=3에 해당하는
Figure 112008059584148-pat00093
에 설정한다.
그런 다음, 619단계에서 카운터 변수 i를 5로 증가시킨 후, 621단계에서 상기 카운터 변수 i=5가 시퀀스 크기 M=7보다 작은지를 확인하여, i가 M보다 작으므로 613단계로 진행한다. 상기 613단계에서 39번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00094
에 의한 0을 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 0과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=0에 해당하는 값
Figure 112008059584148-pat00095
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과, 출력 변수 x가 시퀀스의 크기 M보다 작고,
Figure 112008059584148-pat00096
이 0이므로 617단계로 진행한다. 상기 617단계에서 출력 변수 x=0을 상기 시퀀스 배열 중 카운터 변수 i=5에 해당하는
Figure 112008059584148-pat00097
에 저장하고, 1을 플래그 배열 중 출력 변수 x=0에 해당하는
Figure 112008059584148-pat00098
에 설정한다.
그런 다음, 619단계에서 카운터 변수 i를 6으로 증가시킨 후, 621단계에서 상기 카운터 변수 i=6이 시퀀스 크기 M=7보다 작은지를 확인하여, i가 M보다 작으므로 613단계로 진행한다. 상기 613단계에서 42 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00099
에 의한 7을 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 7과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=7에 해당하는 값
Figure 112008059584148-pat00100
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과, 출력 변수 x와 시퀀스의 크기 M과 같으므로 613단계로 진행한다. 상기 613단계에서 45번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00101
에 의한 6을 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 6과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=6에 해당하는 값
Figure 112008059584148-pat00102
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과,
Figure 112008059584148-pat00103
이 0이 아니므로 613단계로 진행한다. 상기 613단계에서 48번째 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00104
에 의한 3을 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 3과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=3에 해당하는 값
Figure 112008059584148-pat00105
이 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과,
Figure 112008059584148-pat00106
이 0이 아니므로 613단계로 진행한다. 상기 613단계에서 51번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00107
에 의한 2를 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 2와 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=2에 해당하는 값
Figure 112008059584148-pat00108
가 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과,
Figure 112008059584148-pat00109
가 0이 아니므로 613단계로 진행한다. 상기 613단계에서 54번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00110
에 의한 2를 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 2와 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=2에 해당하는 값
Figure 112008059584148-pat00111
가 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과,
Figure 112008059584148-pat00112
가 0이 아니므로 613단계로 진행한다. 상기 613단계에서 57번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00113
에 의한 0을 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 0과 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=0에 해당하는 값
Figure 112008059584148-pat00114
이 0인지를 확인하여, 즉
Figure 112008059584148-pat00115
이 0이 아니므로 613단계로 진행한다. 상기 613단계에서 60번째의 클럭에 도달하면 상기 윈도우에 의해 독출된 S3, S2, S1의 십진수 값인
Figure 112008059584148-pat00116
에 의한 5를 출력 변수 x에 저장한다.
다음으로, 615단계에서 상기 출력 변수 x인 5와 시퀀스의 크기인 7을 비교하고, 상기 출력 변수 x=5에 해당하는 값
Figure 112008059584148-pat00117
가 0인지를 확인한다. 상기 615단계에서의 비교 및 확인 결과, 출력 변수 x가 시퀀스의 크기 M보다 작고,
Figure 112008059584148-pat00118
가 0이므로 617단계로 진행한다. 상기 617단계에서 출력 변수 x=5를 상기 시퀀스 배열 중 카운터 변수 i=6에 해당하는
Figure 112008059584148-pat00119
에 저장하고, 1을 플래그 배열 중 출력 변수 x=5에 해당하는
Figure 112008059584148-pat00120
에 설정한다.
그런 다음, 619단계에서 카운터 변수 i를 7로 증가시킨 후, 621단계에서 상기 카운터 변수 i=7이 시퀀스 크기 M=7보다 작은지를 확인한다. 상기 619단계에서의 확인 결과, i가 M과 같으므로 시퀀스 생성 동작은 종료되고, 상기 시퀀스 배열
Figure 112008059584148-pat00121
에 저장된 값들, 즉
Figure 112008059584148-pat00122
이, 시드값 {1, 0, 1, 0, 1}에 의해 생성된 순열 시퀀스 {6, 1, 4, 2, 3, 0, 5}로서 최종 생성된다. 상기 순열 시퀀스는 단말과 기지국간 통신을 위한 호핑 시퀀스로서 사용된다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해 져야 한다.
상술한 바와 같은 본 발명은, 통신 시스템에서 시퀀스 생성을 위한 시드값이 입력되면, 상기 시드값에 윈도우를 적용하고, 상기 윈도우 값에 상응하여 시퀀스를 생성함으로써, 상기 시드값에 상응하여 상이한 시퀀스를 생성하며, 또한 시드값에 상응한 시퀀스 생성, 및 상기 시드값과 각 시드값에 대응하는 시퀀스 저장을 위한 시스템의 복잡도를 감소시킬 수 있다.

Claims (38)

  1. 통신 시스템에서 호핑 시퀀스의 생성 방법에 있어서,
    호핑 시퀀스와 동일한 크기를 가지는 배열 시퀀스를 초기화하는 과정과,
    의사 잡음(PN) 시퀀스의 생성을 위해 사용되는 쉬프트 레지스터를, 호핑 시퀀스의 생성을 위해 입력된 시드값으로 초기화하는 과정과,
    미리 정해지는 윈도우 독출 주기마다 상기 쉬프트 레지스터의 출력인 상기 PN 시퀀스에 윈도우를 적용한 결과인 윈도우 값을 획득하고, 상기 배열 시퀀스 중 상기 윈도우 값에 해당하는 요소를 다른 요소와 스와핑하는 과정과,
    상기 배열 시퀀스의 모든 요소들이 스와핑될 때까지 상기 스와핑하는 과정을 반복한 후, 상기 배열 시퀀스를 상기 호핑 시퀀스로서 출력하는 과정을 포함하는 것을 특징으로 하는 호핑 시퀀스 생성 방법.
  2. 제1항에 있어서,
    상기 쉬프트 레지스터를 초기화하기 이전에 상기 호핑 시퀀스의 크기에 상응하여 상기 윈도우의 크기를 결정하고, 상기 PN 시퀀스에 상기 윈도우를 적용할 위치를 결정하는 과정을 더 포함하는 것을 특징으로 하는 호핑 시퀀스 생성 방법.
  3. 제2항에 있어서, 상기 윈도우의 크기는,
    n 비트이며, 상기 n은 상기 호핑 시퀀스의 크기 M에 상응하여 M≤2n을 만족하는 최소 정수로 결정됨을 특징으로 하는 호핑 시퀀스 생성 방법.
  4. 제1항에 있어서, 상기 배열 시퀀스는,
    A[0]=0, A[1]=1, ... A[M-1]=M-1 과 같이 초기화되며, 여기서 A[x]는 상기 배열 시퀀스의 각 요소이며, M은 상기 호핑 시퀀스의 크기인 것을 특징으로 하는 호핑 시퀀스 생성 방법.
  5. 제1항에 있어서, 상기 윈도우 값은,
    상기 PN 시퀀스 중 상기 윈도우에 포함되는 시퀀스의 p LSB(Least Signification Bit)에 상응하는 십진수 값으로 정해지며, 여기서 p는, 상기 쉬프트 레지스터가 초기화될 때 상기 호핑 시퀀스의 크기 M에 따라 M-1로 설정된 후 상기 스와핑하는 과정이 수행될 때마다 1씩 감소하는 카운터 변수인 i에 상응하여, i<2p 를 만족하는 최소 정수인 것을 특징으로 하는 호핑 시퀀스 생성 방법.
  6. 제5항에 있어서, 상기 스와핑하는 과정은,
    상기 윈도우 값이 상기 카운터 변수 i보다 작아질 때까지 상기 윈도우 독출 주기마다 상기 윈도우 값을 반복하여 획득하고, 상기 배열 시퀀스의 요소들 중에서 상기 윈도우 값에 해당하는 요소를 상기 카운터 변수에 해당하는 요소와 스와핑하는 것을 특징으로 하는 호핑 시퀀스 생성 방법.
  7. 제1항에 있어서, 상기 윈도우 값은,
    상기 PN 시퀀스 중 상기 윈도우에 포함되는 시퀀스의 p LSB에 상응하는 십진수 값이, 상기 쉬프트 레지스터가 초기화될 때 상기 호핑 시퀀스의 크기 M에 따라 M-1로 설정된 후 상기 스와핑하는 과정이 수행될 때마다 1씩 감소하는 카운터 변수인 i보다 크면, 상기 십진수 값에서 상기 카운터 변수를 감산한 값으로 정해지며, 여기서 p는 i<2p 를 만족하는 최소 정수임을 특징으로 하는 호핑 시퀀스 생성 방법.
  8. 제7항에 있어서, 상기 스와핑하는 과정은,
    상기 윈도우 독출 주기마다 상기 윈도우 값을 미리 정해지는 횟수만큼 반복하여 획득하고, 상기 배열 시퀀스의 요소들 중에서 상기 윈도우 값에 해당하는 요소를 상기 카운터 변수에 해당하는 요소와 스와핑하는 것을 특징으로 하는 호핑 시퀀스 생성 방법.
  9. 통신 시스템에서 호핑 시퀀스의 생성 장치에 있어서,
    의사 잡음(PN) 시퀀스의 생성을 위해 사용되는 쉬프트 레지스터를 포함하여 구성되는 PN 시퀀스 생성기와,
    호핑 시퀀스와 동일한 크기를 가지는 배열 시퀀스를 초기화하고, 상기 쉬프트 레지스터를 호핑 시퀀스의 생성을 위해 입력된 시드값으로 초기화하고, 미리 정해지는 윈도우 독출 주기마다 상기 쉬프트 레지스터의 출력인 상기 PN 시퀀스에 윈도우를 적용한 결과인 윈도우 값을 획득하여, 상기 배열 시퀀스 중 상기 윈도우 값에 해당하는 요소를 다른 요소와 스와핑하며, 상기 배열 시퀀스의 모든 요소들이 스와핑될 때까지 상기 스와핑을 반복한 후, 상기 배열 시퀀스를 상기 호핑 시퀀스로서 출력하는 제어부를 포함하는 것을 특징으로 하는 호핑 시퀀스 생성 장치.
  10. 제9항에 있어서, 상기 제어부는,
    상기 쉬프트 레지스터를 초기화하기 이전에 상기 호핑 시퀀스의 크기에 상응하여 상기 윈도우의 크기를 결정하고, 상기 PN 시퀀스에 상기 윈도우를 적용할 위치를 결정하는 것을 특징으로 하는 호핑 시퀀스 생성 장치.
  11. 제10항에 있어서, 상기 윈도우의 크기는,
    n 비트이며, 상기 n은 상기 호핑 시퀀스의 크기 M에 상응하여 M≤2n을 만족하는 최소 정수로 결정됨을 특징으로 하는 호핑 시퀀스 생성 장치.
  12. 제9항에 있어서, 상기 배열 시퀀스는,
    A[0]=0, A[1]=1, ... A[M-1]=M-1 과 같이 초기화되며, 여기서 A[x]는 상기 배열 시퀀스의 각 요소이며, M은 상기 호핑 시퀀스의 크기인 것을 특징으로 하는 호핑 시퀀스 생성 장치.
  13. 제9항에 있어서, 상기 윈도우 값은,
    상기 PN 시퀀스 중 상기 윈도우에 포함되는 시퀀스의 p LSB(Least Signification Bit)에 상응하는 십진수 값으로 정해지며, 여기서 p는, 상기 쉬프트 레지스터가 초기화될 때 상기 호핑 시퀀스의 크기 M에 따라 M-1로 설정된 후 상기 스와핑이 수행될 때마다 1씩 감소하는 카운터 변수인 i에 상응하여, i<2p 를 만족하는 최소 정수인 것을 특징으로 하는 호핑 시퀀스 생성 장치.
  14. 제13항에 있어서, 상기 제어부는,
    상기 윈도우 값이 상기 카운터 변수 i보다 작아질 때까지 상기 윈도우 독출 주기마다 상기 윈도우 값을 반복하여 획득하고, 상기 배열 시퀀스의 요소들 중에서 상기 윈도우 값에 해당하는 요소를 상기 카운터 변수에 해당하는 요소와 스와핑하는 것을 특징으로 하는 호핑 시퀀스 생성 장치.
  15. 제9항에 있어서, 상기 윈도우 값은,
    상기 PN 시퀀스 중 상기 윈도우에 포함되는 시퀀스의 p LSB에 상응하는 십진수 값이, 상기 쉬프트 레지스터가 초기화될 때 상기 호핑 시퀀스의 크기 M에 따라 M-1로 설정된 후 상기 스와핑하는 과정이 수행될 때마다 1씩 감소하는 카운터 변수인 i보다 크면, 상기 십진수 값에서 상기 카운터 변수를 감산한 값으로 정해지며, 여기서 p는 i<2p 를 만족하는 최소 정수임을 특징으로 하는 호핑 시퀀스 생성 장치.
  16. 제15항에 있어서, 상기 제어부는,
    상기 윈도우 독출 주기마다 상기 윈도우 값을 미리 정해지는 횟수만큼 반복하여 획득하고, 상기 배열 시퀀스의 요소들 중에서 상기 윈도우 값에 해당하는 요소를 상기 카운터 변수에 해당하는 요소와 스와핑하는 것을 특징으로 하는 호핑 시퀀스 생성 장치.
  17. 통신 시스템에서 호핑 시퀀스의 생성 방법에 있어서,
    호핑 시퀀스와 동일한 크기를 가지는 플래그 배열을 0으로 초기화하는 과정과,
    의사 잡음(PN) 시퀀스 생성을 위해 사용되는 쉬프트 레지스터를, 호핑 시퀀스의 생성을 위해 입력된 시드값으로 초기화하는 과정과,
    미리 정해지는 윈도우 독출 주기마다 상기 쉬프트 레지스터의 출력인 PN 시퀀스에 윈도우를 적용한 결과인 윈도우 값을 획득하고, 상기 플래그 배열 중 상기 윈도우 값에 해당하는 제1 요소가 0이면 상기 제1 요소를 1로 변경하고 상기 호핑 시퀀스와 동일한 크기를 가지는 배열 시퀀스의 한 요소를 상기 윈도우 값으로 업데이트하는 과정과,
    상기 배열 시퀀스의 모든 요소들이 업데이트될 때까지 상기 업데이트하는 과정을 반복한 후, 상기 배열 시퀀스를 상기 호핑 시퀀스로서 출력하는 과정을 포함하는 것을 특징으로 하는 호핑 시퀀스 생성 방법.
  18. 제17항에 있어서,
    상기 쉬프트 레지스터를 초기화하기 이전에 상기 호핑 시퀀스의 크기에 상응하여 상기 윈도우의 크기를 결정하고, 상기 PN 시퀀스에 상기 윈도우를 적용할 위치를 결정하는 과정을 더 포함하는 것을 특징으로 하는 호핑 시퀀스 생성 방법.
  19. 제18항에 있어서, 상기 윈도우의 크기는,
    n 비트이며, 상기 n은 상기 호핑 시퀀스의 크기 M에 상응하여 M≤2n을 만족하는 최소 정수로 결정됨을 특징으로 하는 호핑 시퀀스 생성 방법.
  20. 제19항에 있어서, 상기 업데이트하는 과정은,
    상기 쉬프트 레지스터가 초기화될 때 0으로 설정된 후 상기 업데이트하는 과정이 수행될 때마다 1씩 증가하는 카운터 변수인 i가 상기 호핑 시퀀스의 크기 M에 도달할 때까지, 상기 배열 시퀀스의 요소들 중에서 상기 카운터 변수에 해당하는 요소를 상기 윈도우 값으로 업데이트하는 것을 특징으로 하는 호핑 시퀀스 생성 방법.
  21. 통신 시스템에서 호핑 시퀀스의 생성 장치에 있어서,
    의사 잡음(PN) 시퀀스의 생성을 위해 사용되는 쉬프트 레지스터를 포함하여 구성되는 PN 시퀀스 생성기와,
    호핑 시퀀스와 동일한 크기를 가지는 플래그 배열을 0으로 초기화하고, 상기 쉬프트 레지스터를 호핑 시퀀스의 생성을 위해 입력된 시드값으로 초기화하고, 미리 정해지는 윈도우 독출 주기마다 상기 쉬프트 레지스터의 출력인 PN 시퀀스에 윈도우를 적용한 결과인 윈도우 값을 획득하여, 상기 플래그 배열 중 상기 윈도우 값에 해당하는 제1 요소가 0이면 상기 제1 요소를 1로 변경하고 상기 호핑 시퀀스와 동일한 크기를 가지는 배열 시퀀스의 한 요소를 상기 윈도우 값으로 업데이트하며, 상기 배열 시퀀스의 모든 요소들이 업데이트될 때까지 상기 업데이트를 반복한 후, 상기 배열 시퀀스를 상기 호핑 시퀀스로서 출력하는 제어부를 포함하는 것을 특징으로 하는 호핑 시퀀스 생성 장치.
  22. 제21항에 있어서, 상기 제어부는,
    상기 쉬프트 레지스터를 초기화하기 이전에 상기 호핑 시퀀스의 크기에 상응하여 상기 윈도우의 크기를 결정하고, 상기 PN 시퀀스에 상기 윈도우를 적용할 위치를 결정하는 것을 특징으로 하는 호핑 시퀀스 생성 장치.
  23. 제22항에 있어서, 상기 윈도우의 크기는,
    n 비트이며, 상기 n은 상기 호핑 시퀀스의 크기 M에 상응하여 M≤2n을 만족하는 최소 정수로 결정됨을 특징으로 하는 호핑 시퀀스 생성 장치.
  24. 제23항에 있어서, 상기 제어부는,
    상기 쉬프트 레지스터가 초기화될 때 0으로 설정된 후 상기 업데이트하는 과정이 수행될 때마다 1씩 증가하는 카운터 변수인 i가 상기 호핑 시퀀스의 크기 M에 도달할 때까지, 상기 배열 시퀀스의 요소들 중에서 상기 카운터 변수에 해당하는 요소를 상기 윈도우 값으로 업데이트하는 것을 특징으로 하는 호핑 시퀀스 생성 장치.
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
KR1020070023524A 2007-03-09 2007-03-09 통신 시스템에서 호핑 시퀀스 생성 방법 및 장치 KR100922955B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070023524A KR100922955B1 (ko) 2007-03-09 2007-03-09 통신 시스템에서 호핑 시퀀스 생성 방법 및 장치
US12/045,299 US20080219324A1 (en) 2007-03-09 2008-03-10 Method and apparatus for generating a hopping sequence in a communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070023524A KR100922955B1 (ko) 2007-03-09 2007-03-09 통신 시스템에서 호핑 시퀀스 생성 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20080082788A KR20080082788A (ko) 2008-09-12
KR100922955B1 true KR100922955B1 (ko) 2009-10-22

Family

ID=39741563

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070023524A KR100922955B1 (ko) 2007-03-09 2007-03-09 통신 시스템에서 호핑 시퀀스 생성 방법 및 장치

Country Status (2)

Country Link
US (1) US20080219324A1 (ko)
KR (1) KR100922955B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006101369A1 (en) * 2005-03-24 2006-09-28 Lg Electronics Inc. Method of connecting to network in broadband wireless access system
US8891586B1 (en) * 2008-10-17 2014-11-18 Honeywell International Inc. System, apparatus and method for identifying transmission frequencies for communicating data
US9735831B1 (en) 2009-09-22 2017-08-15 Honeywell International Inc. System, apparatus and method for synchronizing communications between devices
US8594066B2 (en) * 2010-07-13 2013-11-26 Electronics And Telecommuniations Research Institute Apparatus and method for managing channel resource in beacon-enabled wireless personal area network (WPAN)
CN107395251B (zh) * 2017-07-17 2019-07-02 电子科技大学 适用于多收发信机认知无线网络的跳频序列生成方法
US10320442B1 (en) 2018-02-09 2019-06-11 Ademco Inc. High bandwidth channel in a frequency hopping system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040033745A (ko) * 2002-10-15 2004-04-28 국방과학연구소 주파수도약수열 발생장치
KR20080061411A (ko) * 2005-10-27 2008-07-02 퀄컴 인코포레이티드 무선 통신 시스템에서 역방향 링크 홉핑을 위한 순열을생성하는 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040033745A (ko) * 2002-10-15 2004-04-28 국방과학연구소 주파수도약수열 발생장치
KR20080061411A (ko) * 2005-10-27 2008-07-02 퀄컴 인코포레이티드 무선 통신 시스템에서 역방향 링크 홉핑을 위한 순열을생성하는 방법 및 장치
KR20080072684A (ko) * 2005-10-27 2008-08-06 퀄컴 인코포레이티드 무선 통신 시스템에서 순방향 링크 홉핑을 위한 순열을생성하는 방법 및 장치

Also Published As

Publication number Publication date
KR20080082788A (ko) 2008-09-12
US20080219324A1 (en) 2008-09-11

Similar Documents

Publication Publication Date Title
KR100922955B1 (ko) 통신 시스템에서 호핑 시퀀스 생성 방법 및 장치
JP4777971B2 (ja) インタリーバメモリ及びデインタリーバメモリのためのアドレス生成装置
JP6881859B2 (ja) Polar符号を用いてデータを符号化する方法及び装置
JP5230820B2 (ja) 広帯域無線通信システムにおいて疑似ランダムシーケンスを生成する方法及び装置
JP2010519850A (ja) Ofdmaシステム用の周波数ホッピング方式
KR20100004470A (ko) 광대역 무선통신 시스템에서 순열 시퀀스 생성 장치 및방법
JP5078989B2 (ja) 無線送信装置及び無線送信方法
US7817707B2 (en) Apparatus and method for generating ranging pseudo noise code
US8594066B2 (en) Apparatus and method for managing channel resource in beacon-enabled wireless personal area network (WPAN)
KR100530400B1 (ko) 송신기와 수신기 및, 인터리빙 방법과 디인터리빙 방법
US7991057B2 (en) Apparatus and method for generating ranging pseudo noise code
US7894327B2 (en) Buffer-based generation of OVSF code sequences
RU2577588C1 (ru) Способ и устройство для формирования кода скремблирования
CN112579045A (zh) 伪随机序列的生成方法、装置及存储介质
JPH11243382A (ja) 物理チヤネル割当方法及び送信装置
KR101007339B1 (ko) 의사난수 배열 생성 방식의 스크램블러 장치
KR20020011499A (ko) 가변 데이터 레이트 매칭 방법
KR100640924B1 (ko) 레이트 매칭 방법 및 장치
KR101459044B1 (ko) 무선 통신 시스템에서 이단 방식을 이용하여 효율적으로ovsf 코드를 생성하는 장치 및 방법
US20040028083A1 (en) Method and system for the blind determination of frequency hopping system characteristics and synchronization thereto
JP3646978B2 (ja) 通信チャンネル選択方法および通信チャンネル選択装置および通信制御方法および通信制御システム
WO2004059893A1 (en) Apparatus and method for midamble generation
CN118318221A (zh) 生成伪随机序列(prs)的计算机实施方法
KR100771598B1 (ko) 왈쉬 코드 생성 방법 및 왈쉬 코드 생성기
KR101427353B1 (ko) 광대역 무선통신 시스템에서 사운딩 코드를 생성하기 위한장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee