KR100525549B1 - Read Address Counting Apparutus and its method in Block Interleaver - Google Patents

Read Address Counting Apparutus and its method in Block Interleaver Download PDF

Info

Publication number
KR100525549B1
KR100525549B1 KR10-2002-0078730A KR20020078730A KR100525549B1 KR 100525549 B1 KR100525549 B1 KR 100525549B1 KR 20020078730 A KR20020078730 A KR 20020078730A KR 100525549 B1 KR100525549 B1 KR 100525549B1
Authority
KR
South Korea
Prior art keywords
frames
frame
address
counting
value
Prior art date
Application number
KR10-2002-0078730A
Other languages
Korean (ko)
Other versions
KR20040050935A (en
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 KR10-2002-0078730A priority Critical patent/KR100525549B1/en
Publication of KR20040050935A publication Critical patent/KR20040050935A/en
Application granted granted Critical
Publication of KR100525549B1 publication Critical patent/KR100525549B1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2778Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/276Interleaving address generation

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야1. TECHNICAL FIELD OF THE INVENTION

본 발명은, 블럭 인터리버의 읽기용 어드레스 계수 장치 및 그 방법에 관한 것임.The present invention relates to an address counting device for reading a block interleaver and a method thereof.

2. 발명이 해결하려고 하는 기술적 과제2. The technical problem to be solved by the invention

본 발명은, 비동기 방식 단말기 모뎀의 전송 신호 간격(TTI :Transmission Time Interval)에 따라 다른 패턴으로 구성되는 인터리버에서 메모리에 있는 데이터를 읽어 들이기 위한 알고리즘을 단순화시킴으로써, 메모리 읽기 동작을 신속하게 처리하기 위한 읽기용 어드레스 계수 장치 및 그 방법을 제공하고자 함.The present invention simplifies an algorithm for reading data in a memory in an interleaver composed of different patterns according to a transmission time interval (TTI) of an asynchronous terminal modem. An address counting device for reading and a method thereof are provided.

3. 발명의 해결방법의 요지 3. Summary of Solution to Invention

본 발명은, 블럭 인터리버의 읽기용 어드레스 계수 장치에 있어서, 프레임의 개수를 입력받아, 상기 프레임의 개수 만큼 상기 프레임의 인수를 계수하기 위한 프레임 인수 계수 수단; 상기 프레임 인수 계수 수단에 의해 계수된 데이터를 전달받아, 상기 프레임의 개수에 의해 정해진 비트수 만큼 상기 데이터의 하위 비트의 순서를 바꾸어 출력하기 위한 비트 리버스 오더 수단; 상기 프레임의 개수를 입력받아, 상기 프레임의 개수 만큼 상기 프레임의 어드레스를 계수하기 위한 프레임 어드레스 계수 수단; 상기 프레임 어드레스 계수 수단으로부터 출력된 어드레스 계수값을 소정의 값만큼 좌 시프트하기 위한 프레임 좌 쉬프트 수단; 및 상기 비트 리버스 오더 수단의 출력값과 상기 프레임 좌 시프트 수단의 출력값을 가산하여, 읽기 어드레스 계수값을 출력하기 위한 읽기 어드레스 발생 수단을 포함함.An address counting apparatus for reading a block interleaver, comprising: frame factor counting means for receiving a number of frames and counting the number of frames by the number of frames; Bit reverse order means for receiving the data counted by said frame factor counting means and for changing the order of the lower bits of said data by the number of bits determined by the number of frames; Frame address counting means for receiving the number of the frames and counting the addresses of the frames by the number of the frames; Frame left shift means for left shifting the address count value output from the frame address count means by a predetermined value; And read address generating means for adding the output value of the bit reverse order means and the output value of the frame left shift means to output a read address count value.

4. 본 발명은 이동통신 단말기 등에 이용됨.4. The present invention is used in the mobile communication terminal.

Description

블럭 인터리버의 읽기용 어드레스 계수 장치 및 그 방법{Read Address Counting Apparutus and its method in Block Interleaver} Read Address Counting Apparutus and its method in Block Interleaver}

본 발명은 블럭 인터리버의 읽기 어드레스 계수 장치 및 그 방법에 관한 것으로, 특히 IMT-2000 비동기 방식의 이동통신 단말기 모뎀에서 전송 신호 구간에 따라 다른 패턴으로 구성되는 블럭 인터리버의 메모리에 저장된 데이터를 읽는 동작을 수행하는 읽기용 어드레스 계수 장치 및 그 방법에 관한 것이다. The present invention relates to an apparatus and method for reading an address of a block interleaver, and more particularly, to an operation of reading data stored in a memory of a block interleaver having a different pattern according to a transmission signal interval in an IMT-2000 asynchronous mobile communication terminal modem. A read address counting device to perform and a method thereof.

IMT-2000과 같은 비동기 이동통신 시스템의 단말기를 포함하는 고속의 디지털 통신 시스템에서, 채널 왜곡에 의해 발생되는 수신측에서의 비트 오류를 방지하기 위해 수신측 비트 오류를 검출하기 위한 순방향 오류 정정(Forward Error Correction) 방식 중 일부인 블럭 인터리버는 이동통신 채널 환경에서는 필수로 요구되는 기술이다.In a high-speed digital communication system including a terminal of an asynchronous mobile communication system such as IMT-2000, forward error correction for detecting a receiving bit error to prevent bit errors at the receiving side caused by channel distortion. The block interleaver, which is a part of the method, is a required technology in the mobile communication channel environment.

따라서, 비동기 이동통신 단말기 모뎀에서도 인터리버가 이용되는데 전송 신호 간격(TTI : Transmission Time Interval)에 따라 인터리버 메트릭스의 크기가 결정된다. 인터리버는 보통 두 개의 메모리를 가지고 있으며, 쓰기용 어드레스 계수기가 출력한 어드레스를 이용하여 하나의 메모리에 데이터를 쓰고, 읽기용 어드레스 계수기가 출력한 어드레스를 이용하여 저장된 데이터들을 다른 하나의 메모리로 출력하는 동작을 수행한다.Accordingly, the interleaver is also used in the asynchronous mobile terminal modem, and the size of the interleaver matrix is determined according to the transmission time interval (TTI). The interleaver usually has two memories, and writes data to one memory using the address output from the write address counter, and outputs the stored data to the other memory using the address output from the read address counter. Perform the action.

이때, 쓰기용 어드레스 계수기가 출력한 어드레스를 이용하여 메모리로 데이터를 쓰는 방식은 단순한 규칙을 갖고 있으나, 읽기용 어드레스 계수기가 출력한 어드레스를 이용하여 메모리로부터 데이터를 읽어 들이는 방식은 복잡한 알고리즘을 가지므로 인터리버 구현상 하드웨어 구조가 매우 복잡해지는 문제점이 있었다.At this time, the method of writing data to the memory using the address output by the writing address counter has a simple rule, but the method of reading data from the memory using the address output from the reading address counter has a complicated algorithm. Therefore, there is a problem that the hardware structure becomes very complicated in the implementation of the interleaver.

본 발명은, 상기한 바와 같은 문제점을 해결하기 위하여 제안된 것으로, 비동기 방식 단말기 모뎀의 전송 신호 간격(TTI)에 따라 다른 패턴으로 구성되는 인터리버에서 메모리에 있는 데이터를 읽어 들이기 위한 알고리즘을 단순화시킴으로써, 메모리 읽기 동작을 신속하게 처리하기 위한 읽기용 어드레스 계수 장치 및 그 방법을 제공하는데 그 목적이 있다. The present invention has been proposed to solve the above problems, and by simplifying an algorithm for reading data in memory in an interleaver composed of different patterns according to the transmission signal interval (TTI) of an asynchronous terminal modem, An object of the present invention is to provide an address counting device for reading and a method thereof for quickly processing a memory read operation.

상기 목적을 달성하기 위한 본 발명은, 블럭 인터리버의 읽기용 어드레스 계수 장치에 있어서, 프레임의 개수를 입력받아, 상기 프레임의 개수 만큼 상기 프레임의 인수를 계수하기 위한 프레임 인수 계수 수단; 상기 프레임 인수 계수 수단에 의해 계수된 데이터를 전달받아, 상기 프레임의 개수에 의해 정해진 비트수 만큼 상기 데이터의 하위 비트의 순서를 바꾸어 출력하기 위한 비트 리버스 오더 수단;According to an aspect of the present invention, there is provided an address counting device for reading a block interleaver, comprising: frame argument counting means for receiving a number of frames and counting the number of frames by the number of frames; Bit reverse order means for receiving the data counted by said frame factor counting means and for changing the order of the lower bits of said data by the number of bits determined by the number of frames;

상기 프레임의 개수를 입력받아, 상기 프레임의 개수 만큼 상기 프레임의 어드레스를 계수하기 위한 프레임 어드레스 계수 수단; 상기 프레임 어드레스 계수 수단으로부터 출력된 어드레스 계수값을 소정의 값만큼 좌 시프트하기 위한 프레임 좌 쉬프트 수단; 및 상기 비트 리버스 오더 수단의 출력값과 상기 프레임 좌 시프트 수단의 출력값을 가산하여, 읽기 어드레스 계수값을 출력하기 위한 읽기 어드레스 발생 수단을 포함하여 이루어진 것을 특징으로 한다.Frame address counting means for receiving the number of the frames and counting the addresses of the frames by the number of the frames; Frame left shift means for left shifting the address count value output from the frame address count means by a predetermined value; And a read address generating means for outputting a read address count value by adding an output value of the bit reverse order means and an output value of the frame left shift means.

또한, 본 발명은, 블럭 인터리버의 읽기용 어드레스 계수 방법에 있어서, 프레임의 개수를 입력받아, 입력받은 상기 프레임의 개수 만큼 프레임 인수를 계수하는 제 1 단계; 상기 제 1 단계에서 계수된 프레임 인수값 중 소정의 하위 비트값의 순서를 바꾸어 출력(비트 리버스 오더값 생성)하는 제 2 단계; 상기 프레임의 개수를 입력받아, 입력받은 상기 프레임의 개수 만큼 프레임 어드레스를 계수하는 제 3 단계; 상기 프레임의 어드레스 계수값을 소정의 값 만큼 좌 시프트하는 제 4 단계; 및 상기 비트 리버스 오더값과 상기 프레임 좌 시프트값을 가산하여, 읽기 어드레스 계수값을 출력하는 제 5 단계를 포함하여 이루어진 것을 특징으로 한다.According to another aspect of the present invention, there is provided a read address counting method of a block interleaver, comprising: a first step of receiving a number of frames and counting a frame factor by the number of the received frames; A second step of changing the order of predetermined lower bit values among the frame factor values counted in the first step and outputting the bit (reverse bit order value); Receiving a number of the frames and counting the frame addresses by the number of the received frames; A fourth step of left shifting the address count value of the frame by a predetermined value; And a fifth step of outputting a read address count value by adding the bit reverse order value and the frame left shift value.

상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1 은 본 발명이 적용되는 이동통신 단말기 모뎀 블럭 인터리버의 구성 예시도이고, 도 2 는 본 발명에 이용되는 인터리버 메트릭스를 나타낸 설명도이다.1 is an exemplary diagram illustrating a configuration of a mobile communication terminal modem block interleaver to which the present invention is applied, and FIG. 2 is an explanatory diagram showing interleaver metrics used in the present invention.

도 1에 도시된 바와 같이, 본 발명이 적용되는 인터리버는, 데이터 쓰기 및 읽기 동작을 위해 사용되는 두 개의 랜덤 액세스 메모리(RAM)인 메모리1(15) 및 메모리2(16)와, 상기 메모리(15, 16) 중 하나의 메모리(15 또는 16)로 데이터를 쓰기 위한 어드레스를 지정하는 쓰기 어드레스 계수기(11)와, 상기 메모리(15 또는 16)로부터 데이터를 읽어 들이기 위한 어드레스를 지정하는 읽기 어드레스 계수기(12)와, 쓰기 동작과 읽기 동작을 상기 메모리(15, 16)에 지정해 주기 위한 곱셈기1(13) 및 곱셈기2(14)와, 상기의 메모리(15, 16) 중 한 개의 메모리(15 또는 16)를 선택하여 상기 메모리(15 또는 16) 내에 있는 데이터를 출력하기 위한 곱셈기3(17)을 포함하여 이루어진다.As shown in FIG. 1, an interleaver to which the present invention is applied includes two random access memories (RAM), memory 1 (15) and memory (2) 16, and the memory ( A write address counter 11 for specifying an address for writing data to one of the memories 15 or 16, and a read address counter for specifying an address for reading data from the memory 15 or 16; (12), a multiplier 1 (13) and a multiplier 2 (14) for assigning a write operation and a read operation to the memories (15, 16), and one of the memories (15, 16) (15 or A multiplier 3 (17) for selecting 16) to output the data in the memory 15 or 16.

인터리버로 입력되는 데이터는 "10ms, 20ms, 40ms, 80ms" 등의 전송 시간 간격(TTI : Transmission Time Interval) 단위로 입력되며, 이때 각 전송 시간 간격(TTI) 동안 전송되는 데이터를 "프레임"이라 한다.Data input to the interleaver is input in a transmission time interval (TTI) unit such as "10 ms, 20 ms, 40 ms, 80 ms", and at this time, data transmitted during each transmission time interval (TTI) is called a "frame." .

인터리버는 전송 신호 간격(TTI) 동안 전송되는 데이터 단위로 입력되는 프레임의 개수와 프레임의 비트수에 관한 정보를 이용하여 인터리빙 동작을 수행한다. The interleaver performs an interleaving operation using information on the number of frames and the number of bits of the frame, which are input in data units transmitted during the transmission signal interval (TTI).

이하 데이터 쓰기 및 읽기를 위한 어드레스를 출력하기 위한 알고리즘을 살펴보면 다음과 같다.Hereinafter, an algorithm for outputting an address for writing and reading data will be described.

먼저, 입력된 프레임의 크기와 동일한 프레임 크기를 갖는 인터리버 메트릭스의 열(Column)벡터의 개수 C를 하기의 [표 1]을 이용하여 결정한다. First, the number C of the column vectors of the interleaver matrix having the same frame size as that of the input frame is determined using the following [Table 1].

이후, 열벡터의 개수 C와 프레임 비트수 N을 이용하여 행(row)벡터의 수 R을 다음의 [수학식 1]을 이용하여 구한다.Then, the number R of row vectors using the number C of column vectors and the number N of frame bits is obtained using Equation 1 below.

R = N/CR = N / C

다음으로, 인터리버로 입력되는 프레임을 '행벡터 개수 ×열벡터 개수(R ×C)' 크기의 메트릭스에 가로 방향부터 차례로 기입한다.Next, the frames input to the interleaver are sequentially written in a matrix having a size of 'number of row vectors x number of column vectors R × C' from the horizontal direction.

마지막으로, 하기의 [표 1]을 이용하여, 상기의 첫번 째 과정에서 결정된 열벡터 개수 C에 해당하는 열벡터간 교환 패턴의 순서에 따라 상기 메트릭스의 열벡터들을 읽어 들인다.Finally, using Table 1 below, the column vectors of the matrix are read in the order of the exchange pattern between column vectors corresponding to the column vector number C determined in the first process.

전송 신호 간격(TTI)Transmit Signal Interval (TTI) 열벡터 개수 CColumn vector count C 열벡터간 교환 패턴Exchange pattern between column vectors 10 ms10 ms 1One {0}{0} 20 ms20 ms 22 {0,1}{0,1} 40 ms40 ms 44 {0,1,2,3}{0,1,2,3} 80 ms80 ms 88 {0,4,2,6,1,5,3,7}{0,4,2,6,1,5,3,7}

상기한 바와 같이, 비동기 이동통신 단말기 모뎀에서 이용되는 인터리버는 전송 신호 간격(TTI)에 따라 인터리버 메트릭스의 크기가 결정되며, 또한 전송 시간 간격(TTI)에 따라 인터리버 메트릭스의 열벡터간 교환 패턴을 달리 구성한다.As described above, in the interleaver used in the asynchronous mobile terminal modem, the size of the interleaver matrix is determined according to the transmission signal interval (TTI), and the exchange pattern between the column vectors of the interleaver matrix is different depending on the transmission time interval (TTI). Configure.

인터리버 내에는 인터리빙 과정을 실시간으로 처리할 수 있도록 하기 위해 보통 두 개의 메모리(15,16)가 사용되며, 두 개의 메모리(15,16)를 이용하여 데이터의 쓰기와 읽기 동작을 동시에 반복 수행한다. In the interleaver, two memories 15 and 16 are generally used to process the interleaving process in real time, and the write and read operations of data are repeatedly performed simultaneously using the two memories 15 and 16.

즉, 전송 시간 간격(TTI) 단위로 두 개 중 하나의 메모리(15 또는16)에 입력 데이터를 저장한 후 상기의 알고리즘에 의해 결정되는 순서로 메모리 읽기용 어드레스를 계수하여, 어드레스 계수값에 따라 데이터를 읽어 들임으로써 인터리빙 동작을 수행하는 것이다. 즉, 실시간 인터리빙 과정을 수행하기 위해 하나의 메모리에 데이터를 저장하는 동안 이미 저장된 데이터를 상기 알고리즘에 따라 나머지 메모리로 데이터를 읽어 들인 후 출력하는 것이다.That is, the input data is stored in one of the two memories 15 or 16 in units of the transmission time interval (TTI), and the memory read addresses are counted in the order determined by the above algorithm, and according to the address count value. The interleaving operation is performed by reading data. That is, while storing data in one memory in order to perform a real-time interleaving process, the data stored in the memory is read out into the remaining memory according to the algorithm and then output.

전송 신호 간격(TTI) 동안 인터리버로 전송되는 프레임(데이터)은 두 개의 메모리(RAM)(15,16) 중 하나의 메모리(15 또는 16)로 입력되며, 한 전송 신호 간격(TTI) 동안 전송되는 프레임 비트수에 따라 쓰기용 어드레스 계수기(write address counter)(11)가 계수되어 해당되는 어드레스 포트로 입력 데이터가 전송된다.The frame (data) transmitted to the interleaver during the transmission signal interval (TTI) is input into one of the two memories (RAM) 15, 16 (15 or 16) and transmitted during one transmission signal interval (TTI). A write address counter 11 is counted according to the number of frame bits, and input data is transmitted to the corresponding address port.

또한, 입력되는 프레임(데이터)에는 도 2에서와 같이 프레임의 개수 'M'이 포함되어 있으며, 일정한 패턴으로 입력된 데이터가 인터리빙 과정을 거쳐 출력되도록 다음과 같은 읽기용 어드레스 계수기가 동작된다.In addition, the input frame (data) includes the number of frames 'M' as shown in FIG. 2, and the following address counter for reading is operated so that data input in a predetermined pattern is output through an interleaving process.

이하, 상기한 바와 같은 구조를 갖는 본 발명에 따른 이동통신 단말기 모뎀 블럭 인터리버의 읽기용 어드레스 계수기(12)의 동작 과정을 상세하게 설명하면 다음과 같다.Hereinafter, an operation process of the read address counter 12 of the mobile communication terminal modem block interleaver according to the present invention having the above structure will be described in detail.

도 3 은 본 발명에 따른 읽기용 어드레스 계수 장치의 일실시예 상세 구성도이다.3 is a detailed block diagram of an embodiment of a reading address counting apparatus according to the present invention.

도 3에 도시된 바와 같이, 본 발명에 따른 읽기 어드레스 계수 장치는, 프레임의 개수(M)를 입력받아, 프레임의 개수에 따른 총 비트수를 구성하고, 프레임의 인수를 계수하기 위한 프레임 인수 계수기(31)와, 프레임 인수 계수기(31)에 의해 계수된 데이터를 전달받아, 총 비트수 중 소정의 하위 비트의 순서를 바꾸어 출력하기 위한 비트 리버스 오더 블럭(33)과, 프레임의 개수를 입력받아, 프레임의 어드레스를 계수하기 위한 프레임 어드레스 계수기(32)와, 프레임 어드레스 계수기(32)로부터 출력된 어드레스 계수값을 소정의 값만큼 좌 시프트하기 위한 프레임 좌 시프터(34)와, 비트 리버스 오더 블럭(33)의 출력값과 프레임 좌 시프터(34)의 출력값을 가산하여, 읽기 어드레스 계수값을 출력하기 위한 뎃셈기(35)를 포함하여 이루어진다.As shown in FIG. 3, the read address counting apparatus according to the present invention receives a number M of frames, configures a total number of bits according to the number of frames, and counts a factor of a frame. (31) and the bit reverse order block 33 for receiving the data counted by the frame factor counter 31 and outputting the order of the predetermined lower bits out of the total number of bits, and receiving the number of frames. A frame address counter 32 for counting an address of a frame, a frame left shifter 34 for left shifting an address count value output from the frame address counter 32 by a predetermined value, and a bit reverse order block ( And a multiplier 35 for outputting the read address count value by adding the output value of 33) and the output value of the frame left shifter 34. FIG.

먼저, 프레임 인수 계수기(Frame Index Counter)(31)는 시스템 클럭(SYM_CLK)을 입력되는 프레임(데이터)의 개수 M(예를 들면, 1, 2, 4, 8)으로 나눈 값(시스템 클럭(SYM_CLK)/M)을 동작 주파수로 하여 0부터 M-1(즉, 0, 1, 2, 3,..., M-1)까지 계수한다. 이 계수값들은 비트 리버스 오더(Bit Reverse Order) 블럭(32)으로 입력되고, 비트 리버스 오더(Bit Reverse Order) 블럭(33)은 하기의 [수학식 2]로 비트수 L을 구하여, 프레임의 개수 M에 의해 정해진 데이터의 총 비트수 중 하위 L비트의 순서를 바꾸어 출력한다.First, the frame index counter 31 divides the system clock SYM_CLK by the number M of input frames (data) (for example, 1, 2, 4, and 8) (the system clock SYM_CLK). Count from 0 to M-1 (ie, 0, 1, 2, 3, ..., M-1) with) / M) as the operating frequency. These coefficient values are input to the bit reverse order block 32, and the bit reverse order block 33 obtains the number L of bits by the following [Equation 2], and the number of frames. The lower L bits of the total number of bits of data determined by M are reversed and output.

L=log2 (M),L = log 2 (M),

삭제delete

한편, N을 한 프레임의 비트수(즉, 전송 신호 구간 동안 전송되는 데이터 수를 프레임 수로 나눈 값)라 할 때, 프레임 어드레스 계수기(32)에서는 프레임 어드레스를 시스템 클럭(SYM_CLK)을 동작 주파수로 하여 0 부터 'N-1'까지 주어진 프레임의 개수 M만큼 반복 계수한다. On the other hand, when N is the number of bits of one frame (that is, the number of data transmitted during the transmission signal period divided by the number of frames), the frame address counter 32 sets the frame address as the system clock (SYM_CLK) as the operating frequency. The number of iterations is repeated by the number M of frames, from 0 to 'N-1'.

읽기 어드레스 계수값을 출력하기 위해, 비트 리버스 오더 블럭(33)에서 출력된 신호는 다시 데이터 프레임의 개수 M값을 곱해야 하는데 본 발명에서는 프레임 좌 시프터(Frame left Shifter)(34)를 이용하여 프레임 어드레스 계수기(32)로부터 출력되는 어드레스를 상기 [수학식 2]에서 구한 L 비트 만큼 좌 시프트한 후 가산기를 통해 비트 리버스 오처 블럭(33)의 출력값과 가산하여 읽기 어드레스 계수값을 출력하는 방법을 제시하였다.In order to output the read address count value, the signal output from the bit reverse order block 33 needs to be multiplied by the number M of data frames again. In the present invention, a frame using a frame left shifter 34 is used. A method of outputting a read address count value by left shifting an address output from the address counter 32 by L bits obtained by Equation 2, and then adding it with an output value of the bit reverse-capture block 33 through an adder It was.

이때, 프레임 레프트 시프터(Frame left Shifter)(34)의 출력값과 비트 리버스 오더(Bit Reverse Order) 블럭(33)의 출력값의 가산은 시스템 클럭(SYM_CLK) 주기로 이루어진다.At this time, the addition of the output value of the frame left shifter 34 and the output value of the bit reverse order block 33 is performed by a system clock (SYM_CLK) period.

도 4 는 본 발명에 따른 쓰기 동작에서의 어드레스 메트릭스를 나타낸 일실시예 설명도이다.4 is an exemplary diagram illustrating an address matrix in a write operation according to the present invention.

이하, 도 4를 참조하여 프레임의 개수 M과 프레임의 비트수 N을 모두 4로 가정하여 본 발명의 일실시예를 살펴보면 다음과 같다.Hereinafter, an embodiment of the present invention will be described with assuming that the number M of frames and the number N of bits of a frame are both 4 with reference to FIG. 4.

도 4에서 동그라미 안의 숫자는 읽기 어드레스 계수 알고리즘에 의해 데이터를 읽어들이는 순서를 의미한다.In FIG. 4, the numbers in circles indicate the order of reading data by the read address counting algorithm.

도 4에 도시된 바와 같이, 프레임의 개수 M을 4, 한 프레임의 비트 수 N을 4라 가정하면, 쓰기 동작에서의 메트릭스는 '4 ×4 메트릭스'가 되며, 따라서 전체 비트수는 16이 된다. 이때, 비트 리버스 오더 및 프레임 좌 시프터에서 이용하는 파라미터인 L 값은 상기의 [수학식 2]에 의해 2가 된다. 상기의 읽기 동작 알고리즘을 사용하여 메모리 메트릭스의 읽기 동작을 위한 어드레스를 계수하기 위한 읽기용 어드레스 계수값은 하기의 [표 2]에 나타나 있다.As shown in FIG. 4, assuming that the number M of frames is 4 and the number N of bits of one frame is 4, the matrix in the write operation is '4 × 4 matrix', and thus the total number of bits is 16. . At this time, the L value, which is a parameter used in the bit reverse order and the frame left shifter, becomes 2 by Equation 2 above. Read address count values for counting addresses for read operations of the memory matrix using the read operation algorithm are shown in Table 2 below.

또한, 하기의 [표 2]에는 본 발명에 따른 읽기용 어드레스 계수기의 각 구성부별 출력값을 보인 것으로, 쓰기 동작에서의 메모리 메트릭스(도 4에 도시됨)의 값들과 읽기용 어드레스 계수값이 일치함을 확인할 수 있다.In addition, Table 2 below shows the output value of each component of the read address counter according to the present invention, in which the values of the memory metrics (shown in FIG. 4) and the read address count value in the write operation coincide. can confirm.

구성 블럭Construction block 동작 주파수Operating frequency 카운트 값Count value 프레임 인수 계수기(31)Frame Factor Counter (31) 시스템클럭(SYM_CLK)/MSystem Clock (SYM_CLK) / M 0(000)0 (000) 1(001)1 (001) 2(010)2 (010) 3(011)3 (011) 비트 리버스 오더 블럭(33)Bit Reverse Order Block (33) 0(000)0 (000) 2(010)2 (010) 1(001)1 (001) 3(011)3 (011) 프레임 어드레스 계수기(32)Frame Address Counter 32 시스템클럭(SYM_CLK)System Clock (SYM_CLK) 00 1One 22 33 00 1One 22 33 00 1One 22 33 00 1One 22 33 프레임 레프트 시프터(34)Frame Left Shifter (34) 00 44 88 1212 00 44 88 1212 00 44 88 1212 00 44 88 1212 읽기용 어드레스 계수값Address count value for reading 00 44 88 1212 22 66 1010 1414 1One 55 99 1313 33 77 1111 1515

도 5 는 본 발명에 따른 읽기용 어드레스 계수 방법에 대한 일실시예 흐름도이다.5 is a flowchart illustrating an embodiment of a read address counting method according to the present invention.

도 5에 도시된 바와 같이, 먼저 전송 시간 구간에 따라 데이터와 함께 입력되는 프레임(데이터)의 개수 M과 비트수 N을 이용하여 읽기용 어드레스 계수를 위한 알고리즘에서 이용하게 될 파라미터 L 값(상기의 [수학식 2]로 구한 비트수로서 비트 리버스 오더 및 프레임 좌 시프터에서 이용하는 비트수)을 결정한다(501).As shown in FIG. 5, first, the parameter L value to be used in the algorithm for reading address coefficient using the number M and the number N of frames (data) input together with data according to the transmission time interval (described above) The number of bits used in the bit reverse order and the frame left shifter is determined as the number of bits obtained by Equation 2 (501).

이후, 프레임 인수 계수기(31)에서 상기 "501" 과정에서 결정된 파라미터값을 바탕으로 프레임의 개수(M)에 의해 정해진 동작주파수(SYM_CLK/M)로 프레임 인수를 계수하고(502), 계수된 데이터에 대해 비트 리버스 오더 블럭(33)에서 열 벡터간 교환 패턴을 얻는다(503).Subsequently, the frame factor counter 31 counts the frame factor at the operating frequency SYM_CLK / M determined by the number M of frames based on the parameter value determined in step 501, and counts the data. The bit reverse order block 33 obtains an exchange pattern between column vectors (503).

즉, 계수된 데이터는 비트 리버스 오더 블럭(33)에서 프레임의 개수에 의해 정해진 비트수 만큼 프레임의 하위 비트의 순서가 바뀌어 출력된다.That is, the counted data is output by changing the order of the lower bits of the frame by the number of bits determined by the number of frames in the bit reverse order block 33.

한편, 프레임 어드레스 계수기(32)에서는 상기 "501" 과정에서 결정된 파라미터값을 바탕으로 프레임의 어드레스를 프레임의 개수 만큼 반복 계수하고(504), 계수된 프레임 어드레스를 프레임 좌 시프터(34)에서 좌 시프트한다(505).On the other hand, the frame address counter 32 repeats counting the address of the frame as many as the number of frames based on the parameter value determined in step 501, and shifts the counted frame address from the frame left shifter 34 to the left. (505).

상기 프레임 인수 계수 및 비트 리버스 오더 과정(502,503)과 상기 프레임 어드레스 계수 및 프레임 좌 시프트 과정(504,505)은 동시에 수행된다.The frame argument coefficient and bit reverse order process 502, 503 and the frame address coefficient and frame left shift process 504, 505 are performed simultaneously.

마지막으로, 덧셈기(35)에서는 비트 리버스 오더 블럭(33)의 출력값과 프레임 좌 시프터(34)의 출력값을 가산하여(506), 읽기용 어드레스 계수값을 출력한다(507).Finally, the adder 35 adds the output value of the bit reverse order block 33 and the output value of the frame left shifter 34 (506), and outputs a read address count value (507).

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes are possible in the art without departing from the technical spirit of the present invention. It will be clear to those of ordinary knowledge.

상기한 바와 같은 본 발명은, 비동기 이동통신 단말기에서 다중 레이트(Rate)로 입력되는 데이터의 인터리빙을 수행할 때, 메모리 내에 있는 데이터를 읽기 위한 알고리즘을 간단하게 수행할 수 있는 효과가 있다.As described above, the present invention has an effect of simply performing an algorithm for reading data in a memory when interleaving data input at multiple rates in an asynchronous mobile communication terminal.

또한, 본 발명은 읽기 어드레스 계수를 위한 알고리즘과 유사한 알고리즘을 이용하는 다른 시스템에 응용하여 보다 간단한 알고리즘을 상기 시스템에 제공할 수 있는 효과가 있다. In addition, the present invention has the effect of providing a simpler algorithm to the system by applying it to another system using an algorithm similar to the algorithm for reading address count.

도 1 은 본 발명이 적용되는 이동통신 단말기 모뎀 블럭 인터리버의 구성 예시도.1 is an exemplary configuration diagram of a mobile communication terminal modem block interleaver to which the present invention is applied.

도 2 는 본 발명에 이용되는 인터리버 메트릭스를 나타낸 설명도.2 is an explanatory diagram showing interleaver metrics used in the present invention.

도 3 은 본 발명에 따른 읽기용 어드레스 계수 장치의 일실시예 구성도.3 is a block diagram of an embodiment of a reading address counting device according to the present invention;

도 4 는 본 발명에 따른 쓰기 동작에서의 어드레스 메트릭스를 나타낸 일실시예 설명도.4 is an exemplary explanatory diagram showing address metrics in a write operation according to the present invention;

도 5 는 본 발명에 따른 읽기용 어드레스 계수 방법에 대한 일실시예 흐름도.5 is a flowchart of an embodiment of a read address counting method according to the present invention;

* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

11 : 쓰기용 어드레스 계수기 12 : 읽기용 어드레스 계수기11: Write address counter 12: Read address counter

13, 14, 17 : 곱셈기 15, 16 :랜덤 액세스 메모리13, 14, 17: Multipliers 15, 16: Random access memory

31 : 프레임 인수 계수기 32 : 프레임 어드레스 계수기31: frame factor counter 32: frame address counter

33 : 비트 리버스 오더 블럭 34 : 프레임 레프트 시프터33: beat reverse order block 34: frame left shifter

35 : 덧셈기35: adder

Claims (7)

삭제delete 블럭 인터리버의 읽기용 어드레스 계수 장치에 있어서,An address counting device for reading a block interleaver, 프레임의 개수를 입력받아, 상기 프레임의 개수 만큼 상기 프레임의 인수를 계수하기 위한 프레임 인수 계수 수단; 상기 프레임 인수 계수 수단에 의해 계수된 데이터를 전달받아, 상기 프레임의 개수에 의해 정해진 비트수 만큼 상기 데이터의 하위 비트의 순서를 바꾸어 출력하기 위한 비트 리버스 오더 수단; 상기 프레임의 개수를 입력받아, 상기 프레임의 개수 만큼 상기 프레임의 어드레스를 계수하기 위한 프레임 어드레스 계수 수단; 상기 프레임 어드레스 계수 수단으로부터 출력된 어드레스 계수값을 상기 프레임의 개수에 의해 정해진 비트수 만큼 좌 시프트하기 위한 프레임 좌 시프트 수단; 및 상기 비트 리버스 오더 수단의 출력값과 상기 프레임 좌 시프트 수단의 출력값을 가산함으로써 읽기 어드레스 계수값을 출력하는 읽기 어드레스 발생 수단을 포함하여 이루어지며,Frame factor counting means for receiving the number of frames and counting the number of frames by the number of frames; Bit reverse order means for receiving the data counted by said frame factor counting means and for changing the order of the lower bits of said data by the number of bits determined by the number of frames; Frame address counting means for receiving the number of the frames and counting the addresses of the frames by the number of the frames; Frame left shift means for left shifting the address count value output from the frame address count means by the number of bits determined by the number of frames; And read address generating means for outputting a read address count value by adding an output value of the bit reverse order means and an output value of the frame left shift means, 상기 프레임 인수 계수 수단 및 상기 비트 리버스 오더 수단은 시스템 동작주파수를 상기 프레임의 개수로 나눈 값을 동작 주파수로 하며, 상기 프레임 어드레스 계수 수단과 프레임 좌 시프트 수단 및 읽기 어드레스 발생 수단은 시스템 동작 주파수를 동작 주파수로 하는 것을 특징으로 하는The frame factor counting means and the bit reverse order means are a frequency obtained by dividing a system operating frequency by the number of frames, and the frame address counting means, the frame left shifting means, and the read address generating means operate the system operating frequency. Characterized in that the frequency 블럭 인터리버의 읽기용 어드레스 계수 장치.Address counting device for reading of a block interleaver. 제 2 항에 있어서,The method of claim 2, 상기 비트 리버스 오더 수단에서 순서를 바꾸어 출력할 하위 비트의 수는 수학식 'L=log2 (M)'에 의하여 결정되는 것을 특징으로 하는 블럭 인터리버의 읽기용 어드레스 계수 장치.And the number of lower bits to be output in a reverse order in the bit reverse order means is determined by the equation 'L = log 2 (M)'. (상기 수학식에서 M은 프레임의 개수임)(Wherein M is the number of frames) 제 2 항 또는 제 3 항에 있어서,The method of claim 2 or 3, 상기 프레임 좌시프트 수단에서 좌시프트할 비트의 수는 수학식 'L=log2 (M)'에 의하여 결정되는 것을 특징으로 하는 블럭 인터리버의 읽기용 어드레스 계수 장치.And the number of bits to be left shifted in the frame left shift means is determined by Equation 'L = log 2 (M)'. (상기 수학식에서 M은 프레임의 개수임)(Wherein M is the number of frames) 블럭 인터리버의 읽기용 어드레스 계수 방법에 있어서,In the address counting method for reading a block interleaver, 프레임의 개수를 입력받아, 입력받은 상기 프레임의 개수 만큼 프레임 인수를 계수하는 제 1 단계;Receiving a number of frames and counting a frame factor by the number of the received frames; 상기 제 1 단계에서 계수된 프레임 인수값 중 상기 프레임의 개수에 의해 정해진 비트수 만큼 하위 비트의 순서를 바꾸어 생성되는 비트 리버스 오더값을 출력하는 제 2 단계;A second step of outputting a bit reverse order value generated by changing the order of the lower bits by the number of bits determined by the number of frames among the frame factor values counted in the first step; 상기 프레임의 개수를 입력받아, 입력받은 상기 프레임의 개수 만큼 프레임 어드레스를 계수하는 제 3 단계;Receiving a number of the frames and counting the frame addresses by the number of the received frames; 상기 프레임의 어드레스 계수값을 상기 프레임의 개수에 의해 정해진 비트수 만큼 좌 시프트함으로써 프레임 좌시프트 값을 출력하는 제 4 단계; 및A fourth step of outputting a frame left shift value by left shifting the address coefficient value of the frame by the number of bits determined by the number of frames; And 상기 비트 리버스 오더값과 상기 프레임 좌 시프트값을 가산하여, 읽기 어드레스 계수값을 출력하는 제 5 단계A fifth step of adding the bit reverse order value and the frame left shift value to output a read address count value; 를 포함하는 블럭 인터리버의 읽기용 어드레스 계수 방법.Address counting method for reading a block interleaver comprising a. 제 5 항에 있어서,The method of claim 5, 제 2 단계는,The second step is 수학식 'L=log2 (M)'에 의하여 결정되는 비트수 만큼 하위 비트의 순서를 바꾸어 비트 리버스 오더값을 생성하는 것을 특징으로 하는 블럭 인터리버의 읽기용 어드레스 계수 방법.An address counting method for reading a block interleaver, wherein the bit reverse order value is generated by changing the order of the lower bits by the number of bits determined by the equation 'L = log 2 (M)'. (상기 수학식에서 M은 프레임의 개수임)(Wherein M is the number of frames) 제 5 항 또는 제 6 항에 있어서,The method according to claim 5 or 6, 상기 제 4 단계는,The fourth step, 수학식 'L=log2 (M)'에 의하여 결정되는 비트수 만큼 상기 프레임의 어드레스 계수값을 좌시프트함으로써 프레임 좌시프트 값을 출력하는 것을 특징으로 하는 블럭 인터리버의 읽기용 어드레스 계수 방법.And a left shift value of the frame by shifting the address coefficient value of the frame by the number of bits determined by the equation 'L = log 2 (M)'. (상기 수학식에서 M은 프레임의 개수임)(Wherein M is the number of frames)
KR10-2002-0078730A 2002-12-11 2002-12-11 Read Address Counting Apparutus and its method in Block Interleaver KR100525549B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0078730A KR100525549B1 (en) 2002-12-11 2002-12-11 Read Address Counting Apparutus and its method in Block Interleaver

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0078730A KR100525549B1 (en) 2002-12-11 2002-12-11 Read Address Counting Apparutus and its method in Block Interleaver

Publications (2)

Publication Number Publication Date
KR20040050935A KR20040050935A (en) 2004-06-18
KR100525549B1 true KR100525549B1 (en) 2005-10-31

Family

ID=37344954

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0078730A KR100525549B1 (en) 2002-12-11 2002-12-11 Read Address Counting Apparutus and its method in Block Interleaver

Country Status (1)

Country Link
KR (1) KR100525549B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100255762B1 (en) * 1997-12-29 2000-05-01 정규석 Address generator for read operation in block interleaver
KR20010088148A (en) * 2000-03-10 2001-09-26 서평원 Block interleaving method, and apparatus for the same
KR20020000393A (en) * 2000-06-24 2002-01-05 송문섭 Apparatus and method for block interleaving of multi rate data
KR100315616B1 (en) * 1997-03-06 2002-01-17 니시무로 타이죠 Address counter and semiconductor memory

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100315616B1 (en) * 1997-03-06 2002-01-17 니시무로 타이죠 Address counter and semiconductor memory
KR100255762B1 (en) * 1997-12-29 2000-05-01 정규석 Address generator for read operation in block interleaver
KR20010088148A (en) * 2000-03-10 2001-09-26 서평원 Block interleaving method, and apparatus for the same
KR20020000393A (en) * 2000-06-24 2002-01-05 송문섭 Apparatus and method for block interleaving of multi rate data
KR100373336B1 (en) * 2000-06-24 2003-02-25 주식회사 팬택앤큐리텔 Apparatus and method for block interleaving of multi rate data

Also Published As

Publication number Publication date
KR20040050935A (en) 2004-06-18

Similar Documents

Publication Publication Date Title
US5991857A (en) Interleaving and de-interleaving of data in telecommunications
US3984668A (en) Method for generating pseudo-random bit sequence words and a device for carrying out the method
US7127004B1 (en) Interleaver and method for interleaving an input data bit sequence using a coded storing of symbol and additional information
JP3553546B2 (en) Address generator for use in a multi-stage channel interleaver / deinterleaver
US7073012B2 (en) System and method for interleaving data in a communications device
US20050262415A1 (en) Method and apparatus for convolutional interleaving/de-interleaving technique
KR100525549B1 (en) Read Address Counting Apparutus and its method in Block Interleaver
KR100499467B1 (en) Block interleaving method, and apparatus for the same
JP3304632B2 (en) Interleaving method and interleaving circuit
US7895402B2 (en) Method of accessing data in a deinterleaving device
US7061988B2 (en) Interleaver memory access apparatus and method of mobile communication system
KR100487366B1 (en) Block interleaving method, and apparatus for the same
KR20010072362A (en) Interleave device and interleave method
JP2827978B2 (en) Interleave device
KR19990033240A (en) Channel encoder design method for digital communication
JP3277305B2 (en) Variable interleave circuit
KR100447177B1 (en) Method and Apparatus for Interleaving
KR100338635B1 (en) Address generating device and method for use in multi-stage channel interleaver/deinterleaver
GB2294616A (en) Data interleaving process for radio transmission
JPH10163887A (en) Interleave device and deinterleave device
KR100601624B1 (en) Apparatus and method for interleaving and deinterleaving
KR20040031323A (en) Recording apparatus and method for path metrics of vitervi decoder
JP2000286722A (en) Interleaver
KR100217041B1 (en) Viterbi decoder
JPH08335887A (en) Interleave address generation circuit for plural interleave matrixes

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121004

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20131002

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20141013

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20151001

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20161004

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee