KR20140007919A - 디 에스 엘 벡터 소거를 파티셔닝하는 시스템 및 방법 - Google Patents

디 에스 엘 벡터 소거를 파티셔닝하는 시스템 및 방법 Download PDF

Info

Publication number
KR20140007919A
KR20140007919A KR1020137025006A KR20137025006A KR20140007919A KR 20140007919 A KR20140007919 A KR 20140007919A KR 1020137025006 A KR1020137025006 A KR 1020137025006A KR 20137025006 A KR20137025006 A KR 20137025006A KR 20140007919 A KR20140007919 A KR 20140007919A
Authority
KR
South Korea
Prior art keywords
erase
chips
vectorized
dsl
vce
Prior art date
Application number
KR1020137025006A
Other languages
English (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 이카노스 커뮤니케이션스, 인크.
Publication of KR20140007919A publication Critical patent/KR20140007919A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/32Reducing cross-talk, e.g. by compensating
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M11/00Telephonic communication systems specially adapted for combination with other electrical systems
    • H04M11/06Simultaneous speech and data transmission, e.g. telegraphic transmission over the same conductors
    • H04M11/062Simultaneous speech and data transmission, e.g. telegraphic transmission over the same conductors using different frequency bands for speech and other data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/46Monitoring; Testing
    • H04B3/487Testing crosstalk effects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M11/00Telephonic communication systems specially adapted for combination with other electrical systems
    • H04M11/06Simultaneous speech and data transmission, e.g. telegraphic transmission over the same conductors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
  • Noise Elimination (AREA)

Abstract

DSL 시스템은 DSL 희생 라인들 또는 DSL 교란 라인들 또는 DSL 톤들을 기반으로 하여 둘 또는 그 이상의 그룹들로 파티션된 복수의 벡터화 소거 칩들을 이용하여 혼선 소거를 수행한다. 본 발명의 실시예들은 단일-기준 파티셔닝 방법 그리고 이중-기준 파티셔닝 방법 둘 모두를 포함한다. 이중-기준 실시예들에서, 벡터화 소거 (VCE) 칩들은 둘 또는 그 이상의 희생 DSL 라인 그룹들로 먼저 파티션되며 그리고 그 후 각 그룹에서 상기 VCE 칩들이 교란 DSL 라인 프로세싱에 의해서 더 파티션된다. 대안으로, 상기 벡터화 소거 (VCE) 칩들은 둘 또는 그 이상의 교란 DSL 라인 그룹들로 먼저 파티션되며 그리고 각 그룹 내에서 희생 DSL 라인 프로세싱에 의해서 추가로 파티션된다. 본 발명의 어떤 모습들에 따르면, 여기에서 설명된 것처럼 계산을 파티션하여, 본 발명은 너무 많은 조정 (co-ordination) 복잡합이 없이도 상기 칩들 사이에서의 링크들의 개수 및 대역폭을 줄어들게 한다. 이는 더 많은 개수의 칩들에 걸쳐서 파티션하는 것을 가능하게 하며, 그럼으로써 더 많은 벡터화된 그룹들에 걸쳐 혼선 소거를 허용한다.

Description

디 에스 엘 벡터 소거를 파티셔닝하는 시스템 및 방법{System and method for partitioning DSL vector cancellation}
관련된 출원들 상호 참조
본 출원은 2011년 2월 23에 출원된 미국 임시 출원 No. 61/446,012에 대해 우선권을 주장하며, 상기 출원의 내용들은 그 전체가 본원에 참조로 편입된다.
본 발명은 DSL 벡터화를 수행하기 위한 장치들, 시스템들, 방법들, 기술들 등에 관련되며, 더욱 상세하게는, 프로세서들 사이에서 DSL 벡터화 계산들을 파티션 (partition)하는 것에 관련된다.
디지털 가입자 루프 (Digital Subscriber Loop (DSL)) 네트워크 용의 벡터 소거 (Vector Cancellation) 시스템들은 벡터화된 그룹에서 라인들 사이에서의 혼선 (crosstalk)을 소거한다. 더욱 상세하게는, 벡터화는 묶음에 들어온 라인 대 라인 혼선을 소거한다. 이는 업스트림에 대해서는 모든 라인들 상에서 수신된 데이터를 취소함으로써, 그리고 다운스트림에 대해서는 모든 라인들 상에서 전송될 데이터를 미리 취소함으로써 중앙국 (central office (CO)) 측에서 하는 것이 보통이다. 각 DSL 칩은 보통은 다중의 DSL 포트들을 지원하며, 그리고 자신의 주파수 도메인 데이터 (다운스트림 상에서는 IFFT 입력 또는 업스트림 상에서는 FFT 출력)를 포장하여 그것을 서데스 (SerDes) 인터페이스와 같은 고속 인터페이스 상으로 벡터 소거 (vector canceller) 칩들로 송신한다.
공동으로 계속중인 미국 출원 공개 번호 No. 2011/0080938의 출원은, 그 내용들 전체가 본원에 참조로서 편입되며, 벡터화된 DSL 혼선 소거의 종래 기술을 진행시켰다. 그러나, 본 발명자들은 어떤 도전들이 남아 있음을 인식한다.
본 발명은 DSL 벡터 소거를 파티셔닝하는 시스템 및 방법을 제공하려고 한다.
DSL 시스템은 DSL 희생 라인들 또는 DSL 교란 라인들 또는 DSL 톤들을 기반으로 하여 둘 또는 그 이상의 그룹들로 파티션된 복수의 벡터화 소거 칩들을 이용하여 혼선 소거를 수행한다. 본 발명의 실시예들은 단일-기준 파티셔닝 방법 그리고 이중-기준 파티셔닝 방법 둘 모두를 포함한다. 이중-기준 실시예들에서, 벡터화 소거 (VCE) 칩들은 둘 또는 그 이상의 희생 DSL 라인 그룹들로 먼저 파티션되며 그리고 그 후 각 그룹에서 상기 VCE 칩들이 교란 DSL 라인 프로세싱에 의해서 더 파티션된다. 대안으로, 상기 벡터화 소거 (VCE) 칩들은 둘 또는 그 이상의 교란 DSL 라인 그룹들로 먼저 파티션되며 그리고 각 그룹 내에서 희생 DSL 라인 프로세싱에 의해서 추가로 파티션된다. 본 발명의 어떤 모습들에 따르면, 여기에서 설명된 것처럼 계산을 파티션하여, 본 발명은 너무 많은 조정 (co-ordination) 복잡합이 없이도 상기 칩들 사이에서의 링크들의 개수 및 대역폭을 줄어들게 한다. 이는 더 많은 개수의 칩들에 걸쳐서 파티션하는 것을 가능하게 하며, 그럼으로써 더 많은 벡터화된 그룹들에 걸쳐 혼선 소거를 허용한다.
이런 그리고 다른 모습들에 따라, 본 발명의 실시예들에 따른 DSL 시스템에서 벡터화된 DSL 혼선 소거를 수행하기 위한 방법은: 상기 DSL 시스템에서 D개의 교란 (disturber) 라인들을 정의하는 단계; 상기 DSL 시스템에서 V개의 희생 (victim) 라인들을 정의하는 단계; 상기 DSL 시스템에서 T개의 DSL 톤 (tone)들을 정의하는 단계; 복수의 벡터화 소거 칩들 사이에서 혼선 소거를 단일 기준에 의해서 파티셔닝하는 단계로서, 상기 단일 기준은 상기 교란 라인들, 상기 희생 라인들 그리고 상기 톤들 중 하나인, 파티셔닝 단계; 그리고 상기 단일 기준을 기반으로 하여 상기 벡터화 소거 칩들 각각이 부분적인 소거를 수행하도록 하는 단계를 포함한다.
이런 그리고 다른 모습들에 더 따라서, 본 발명의 실시예들에 따른 DSL 시스템에서 벡터화된 DSL 혼선 소거를 수행하기 위한 방법은: 상기 DSL 시스템에서 D개의 교란 라인들을 정의하는 단계; 상기 DSL 시스템에서 V개의 희생 라인들을 정의하는 단계; 상기 DSL 시스템에서 T개의 DSL 톤 (tone)들을 정의하는 단계; 복수의 벡터화 소거 칩들 사이에서 혼선 소거를 이중 (double) 기준에 의해서 파티셔닝하는 단계로서, 상기 이중 기준은 희생-교란 파티셔닝 및 교란-희생 파티셔닝 중 하나인, 파티셔닝 단계; 그리고 상기 이중 기준을 기반으로 하여 상기 벡터화 소거 칩들 각각이 부분적인 소거를 수행하도록 하는 단계를 포함한다.
이런 그리고 다른 모습들에 또한 더 따라서, 본 발명의 실시예들에 따른, DSL 시스템 내에 D 개의 교란 라인들, V 개의 희생 라인들을 그리고 T 개의 DSL 톤들을 가진 DSL 시스템을 위한 벡터 소거 시스템은, 제1의 복수의 벡터 소거 칩들; 및 제2의 복수의 벡터 소거 칩들을 포함하며, 상기 제1의 복수의 벡터 소거 칩들은 상기 교란 라인들, 상기 희생 라인들 및 상기 톤들 중 하나인 기준에 대해서 부분적인 소거를 수행한다.
본 발명의 효과는 본 명세서의 해당되는 부분들에 개별적으로 명시되어 있다.
본 발명의 이런 그리고 다른 모습들 및 특징들은
첨부된 도면들과 함께 본 발명의 특정 실시예들에 관한 다음의 설명을 참조한 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들에게는 명백하게 될 것이다.
도 1은 본 발명에 따른 벡터 소거의 모습들을 그림으로 도시한 것이다.
도 2는 본 발명에 따른 벡터 소거의 첫 번째 파티셔닝을 그림으로 도시한 것이다.
도 3은 본 발명에 따른 벡터 소거의 두 번째 파티셔닝을 그림으로 도시한 것이다.
도 4는 본 발명에 따른 벡터 소거의 세 번째 파티셔닝을 그림으로 도시한 것이다.
도 5는 본 발명에 따른 벡터 소거를 위한 첫 번째로 가능한 이중-기준 파티셔닝을 그림처럼 도시한 것이다.
도 6은 본 발명에 따른 벡터 소거를 위한 첫 번째로 가능한 이중-기준 파티셔닝에서의 데이터 흐름을 도시한 도면이다.
도 7은 본 발명에 따른 벡터 소거를 위한 두 번째로 가능한 이중-기준 파티셔닝을 그림처럼 도시한 것이다.
도 8은 본 발명에 따른 벡터 소거를 위한 두 번째로 가능한 이중-기준 파티셔닝에서의 데이터 흐름을 도시한 도면이다.
도 9는 본 발명의 모습에 따른 벡터 소거 칩의 내부 구성의 예를 도시한 블록도이다.
도 10은 본 발명의 모습에 따른 벡터 소거 칩의 내부 구성의 다른 예를 도시한 블록도이다.
도 11은 본 발명의 특정 모습들을 구현하기 위해서 사용될 수 있는 예시의 벡터 카드를 도시한 블록도이다.
도 12는 본 발명의 특정 모습에 따른 벡터 소거 칩의 또 다른 예시의 내부 구성을 도시한 블록도이다.
도 13은 본 발명에 따른 벡터 소거를 위한 세 번째 가능한 이중-기준 파티셔닝에서의 데이터 흐름을 도시한 도면이다.
도 14는 본 발명에 따른 벡터 소거를 위한 다른 가능한 이중-기준 파티셔닝을 그림처럼 도시한 것이다.
본 발명은 상기 도면들을 참조하여 상세하게 설명될 것이며, 상기 도면들은 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들이 본 발명을 실행하는 것을 가능하게 하기 위해서 본 발명의 예시적인 예들로서 제공되었다. 특히, 상기 도면들 그리고 아래의 예들은 본 발명의 범위를 단일의 실시예로 한정하려고 의도된 것이 아니며, 설명된 또는 도시된 요소들 중의 몇몇 또는 모두를 교환하여 다른 실시예들도 가능하다. 더욱이, 본 발명의 특정 요소들은 알려진 컴포넌트들을 이용하여 부분적으로 또는 완전하게 실행될 수 있을 것이며, 본 발명을 이해하기 위해서 필수적인 그런 알려진 컴포넌트들의 단지 그런 부분들만이 설명될 것이며, 그리고 본 발명을 불명료하게 하지 않기 위해서 그런 알려진 컴포넌트들의 다른 부분들에 대한 상세한 설명은 생략될 것이다. 소프트웨어로 구현되는 것으로서 설명된 실시예들은 그 소프트웨어로 한정되어서는 안되며, 여기에서 다르게 규정하지 않는다면 하드웨어, 또는 소프트웨어와 하드웨어의 결합, 그리고 그 반대로 구현된 실시예들을 포함할 수 있으며, 이는 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들에게는 명백할 것이다. 본 명세서에서, 단일의 컴포넌트를 보여주는 실시예는 한정하는 것으로 간주되어서는 안되며; 오히려, 여기에서 다르게 명시적으로 선언된 것이 아니라면, 본 발명은 복수의 동일한 컴포넌트를 포함하는 다른 실시예들을 망라하는 것으로 의도된 것이며, 그 반대도 마찬가지이다. 더욱이, 본 출원인들은 본 명세서에 또는 청구항들에서의 어떤 용어도 일반적이지 않거나 또는 특별한 의미를 가진다고 미리 명시적으로 제시하지 않았다면, 그런 일반적이지 않거나 특별한 의미를 가지는 것으로 의도하지 않는다. 또한, 본 발명은 예시로서 여기에서 언급된, 알려진 컴포넌트들에 현재의 그리고 미래의 알려진 등가물들을 포함한다.
특히, 도면들을 포함한 다음의 상세한 설명은 본 발명의 하나 또는 그 이상의 실시예들을 언급할 것이지만, 그런 실시예들로 한정되지는 않는다. 오히려, 상세한 설명은 단지 예시적인 것으로 의도된 것이다. 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들은 상기 도면들에 관련하여 주어진 상세한 설명은 설명을 위한 목적만을 위해서 제공된 것이라는 것을 쉽게 이해할 것이다. 본 발명에 따른 장치들, 시스템들, 방법들, 기술들 등은, 예를 들면, DSL 시스템 또는 유사한 통신 시스템에서의 전송들을 향상시키는 것을 포함하고 그리고 그것에 속한다 (그러나, 그것으로 한정되지는 않는다). 예를 들면, 유도된 혼선의 영향들을 제거하기 위해서 신호들이 벡터화된 DSL 시스템과 결합하여, DSL 벡터화 시스템 및 유사한 것의 실시예들은 업스트림-말단 전송 장비 및 유사한 것과 주어진 네트워크 상에서 DSL 통신들에서 존재하는 혼선을 중점을 두어 다루도록 구성된 벡터 프로세싱 기기들 사이에서의 전송 그리고 데이터 프로세싱을 향상시킨다. 다른 방법들, 컴포넌트들, 시스템들, 구조들, 이용들 등은 다음의 개시되는 내용들 그리고 그와 함께 제공된 도면들을 참조한 후의 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들에게는 명백할 것이다.
배경기술로서, 벡터화 (vectoring) 배후의 기본적인 원칙은 전화기 케이블 내에 모든 꼬인 쌍 사이에서의 통신들을 조정하는 것이다. 상기 케이블 내 모든 꼬인 쌍들이 DSLAM (DSL access multiplexer)으로서 알려진 하나의 중앙의 위치에서 종결하기 때문에, 상기 DSLAM은 이 통신을 조정하기 위한 자연적인 위치이다. 벡터화 시스템들에서 모뎀들을 효율적으로 벡터화하기 위해서, 상기 모뎀들은 동일한 DMT 심볼로 동기화되어야만 하며 그리고 희생 모뎀들이 특별한 교란-희생 (disturber-victim) 모뎀 쌍들 사이에서의 혼선 (crosstalk) 채널 특성들을 식별하는 것을 허용하기 위해서 미리-배치된 (각 모뎀에 유일한) 트레이닝 데이터 패턴들 을 갖춘 동기화된 트레이닝/트래픽 구간들을 가져야만 한다. 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들이 이해할 수 있을 것처럼, 그런 시스템들에서, DSL 시스템들 그리고 그것들의 구현에 속한 다양한 적용할 수 있는 표준들에서 설명될 수 있을 하나 또는 그 이상을 포함하는 혼선을 식별하기 위한 다양한 기술들이 존재한다.
"혼선 토포그래피 (crosstalk topography)" 또는 (DSL 라인들 사이에서의 다양한 인터액티브/혼선 관계들을 나타내는 계수들의 행렬로서 보여지거나 또는 고려되는 것이 보통인) 트레이닝 등의 동안에 결정된 매핑을 이용하여, 전송 선-보상 (transmit pre-compensation) (예를 들면, 프리코딩 (precoding))이 (DSLAM으로부터 커스터머 사이트로의) 다운스트림 방향에서 사용될 수 있다. 결과로, 주어진 모뎀에 대한 전송 파형은 많은 다른 모뎀들 (즉, FEXT가 상기 주어진 모뎀의 신호들에 실질적으로 영향을 주는 다른 모뎀들)에 의해서 사용되고 있는 전송 파형들을 기반으로 하여 선-왜곡되어 (pre-distorted), 간섭하는 FEXT가 효율적으로 균형을 잡게 하며 그리고 그것의 영향들은 그래서 그 선-왜곡된 모뎀 신호가 그것의 커스터머 측 말단에 도달하는 시각까지 제거되도록 한다. (커스터머 측으로부터 DSLAM으로의) 업스트림 방향에서, 업스트림 수신 측에서 업스트림 FEXT를 소거하기 위해서 상기 DSLAM에서 MIMO (multiple-input-multiple-output) 공간적 필터링이 사용된다. 상기 FEXT 필터 소거 계수들의 식별 및 트래킹은 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들에게 잘 알려진 LMS (Least Mean Squares) 적응적 알고리즘들 또는 다른 최소-자승 유형의 방법들을 이용하여 수행될 수 있을 것이다. FEXT 필터 계수들 식별을 지원하기 위한 트레이닝 신호들은 VDSL2와 같은 알려진 DSL 표준의 수정된 버전으로 통합될 수 있을 것이다.
하나의 통신 회사 "중앙국", "CO", "노드", "캐비넷" 등에서 종결하는 전형적인 전화기 케이블 또는 다중의 케이블들의 그룹은 잠재적으로 수십 개 이상의 바인더 케이블들 사이에 잠재적으로 퍼져있는 50 내지 2000 개의 (또는 그 이상의) 꼬인 쌍들을 어디에서건 포함할 수 있을 것이다. 통신 회사 배치 관습들의 결과로서, 동일한 바인더 케이블 내의 꼬인 쌍들에 할당된 모뎀들은 동일한 라인 카드 또는 DSLAM 섀시들에 연결되지 않을 수 있을 것이다. 이는 커스터머들이 DSL 서비스로 가입할 때에 통신 회사들이 섀시 (또는 하나 또는 그 이상의 추가적인 섀시들)에 라인 카드들을 추가하기 때문에 발생한다. 모뎀 포트들은, 사용자 신원, 다운스트림 말단 위치 등을 기반으로 하여 같이 그룹으로 되기보다는 "선착순 (first-come-first-served)"을 기초로 할당된다. 통신 회사 관습들이 상이했다고 해도, 그것은 시작의 바인더 (바인더 그룹 관리로서 알려진 관습)에 따라서 전화 라인들을 분리하기 위한 작동 (그리고 오류-경향의) 신청일 수 있다. 경험적인 케이블 관리들은 의미있는 FEXT 커플링이 인접한 바인더들로부터 또는 심지어는 통신 회사 노드에서 패치 패널 또는 "크로스 박스"의 사용으로 인한 동일한 통신 회사 노드에서 종결하는 상이한 케이블들로부터 올 수 있다는 것을 보여준다. 이 패치 패널들은, 개별적인 구리 쌍들 (아마도 상이한 바인더들 또는 통신 회사 케이블들)을 상기 DSLAM 라인 카드들 상의 특정 모뎀 포트들로 매핑하기 위해서 사용된다.
다른 관련된 이슈는 다중의 모뎀 포트들을 같이 본딩 (bonding)하는 관습이다. 단일의 모뎀 포트가 원하는 데이터 레이트를 제공할 수 없는 경우인 상황들에 바인딩 (binding)은 커스터머 데이터 레이트를 증가시킬 수 있다. 단일 모뎀 포트들로 시작한 커스터머는 그 커스터머에게 추가적인 서비스들을 제공하기 위한 업그레이드로서 추가된 두 번째 포트를 구비할 수 있다 (다중-포트 DSL 서비스는 그래서 더 많은 데이터를 운반하기 위한, 더 빠른 속도들에서 동작하기 위한 잠재력을 가진다). 많은 현재의 시스템들은 본딩되는 모뎀 포트들이 동일한 라인 카드에 연결될 것을 필요로 한다. 상기에서 설명된 것처럼, 바인더 그룹 관리가 실용적이 아니라는 동일한 이유들로 인해서, 이는 대개의 통신 회사들에게는 실용적이 아니다.
마지막으로, DSL 벡터화의 계산의 요구사항들 - 특히 사용자 데이터 신호들과 연결한 혼선 정보의 실시간 프로세싱 -은 데이터 전송 그리고 프로세싱 병목들 그리고 다른 문제점들을 만든다. (레이턴시/지연들을 줄이기 위해서) 빠르게 프로세싱될 필요가 있는 데이터의 큰 양은 효율적으로 전송되고 그리고 프로세시되어야만 한다. 공동으로 계속중인 출원의 실시예들은, 벡터화되는 DSL 라인들의 레이턴시 그리고/또는 성능에 부정적인 영향을 거의 미치치 않으면서도, 이런 많은 양의 데이터를 그렇게 효율적으로 처리하고 프로세싱하는 것을 제공하는 시스템들, 장치들 및 방법들을 제공한다.
벡터화를 구현하기 위해서, 섀시 내 각 모뎀은 그 섀시 (또는 심지어는 복수의 섀시 유닛들) 내 다른 모뎀들과 실시간 FEXT 정보를 교환해야만 한다. 보통의 DSL 모뎀들은 4 kHz 내지 8 kHz 범위의 DMT 심볼을 사용하며, 그리고 FEXT 소거는 말단-대-말단 모뎀 시스템의 전반적인 레이턴시를 저하시키는 것을 피하기 위해서 몇몇 DMT 심볼들 (또는 그 이하의 DMT 심볼들)의 순서 (order) 상에서의 프로세싱 지연을 가진 DMT 심볼마다 벡터화된 대역폭을 통해서 일단 실행되어야 한다. 이는 복잡하고 도전적인 데이터 네트워크 환경을 생성하며, 이 환경에서 각 라인 카드가 자신의 모뎀들 각각으로부터의 실시간 FEXT 정보를 시스템 내 다른 모뎀들 각각과 공유한다 (상기 시스템은 그 시스템 내 다른 라인 카드 또는 섀시 상의 모뎀들을 포함할 수 있을 것이다). 보통의 DSLAM 시스템에서, 벡터화 정보의 통신 흐름은 합계 초당 수십 기가비트일 수 있다. 전류 생성 DSLAM 구리 백플레인들은 보통은 이 추가적인 통신 부하를 처리할 수 없으며, 그리고 미래의 구리 백플레인은 적당한 복잡성 및 동작 성능을 가진 이 통신 흐름을 관리하기 위한 실제의 방법을 필요로 한다.
상기 공동-계속 중인 출원은, 벡터화된 DSL 시스템들에 직면할 수 있을 통신 병목들을 제어하거나 또는 실질적으로 줄이는 장치들, 시스템들, 방법들 등을 설명한다. 이 실시예들은 작은 포트-개수의 시스템들 (예를 들면, 단일의 라인 카드 시스템)부터 다중의 라인 카드들 및/또는 다중의 섀시를 통해서 분포한 수천의 모뎀 포트들을 가진 아주 더 큰 시스템들까지 확장 가능하다. 상기 공동-계속중인 출원의 실시예들은 (다중의 섀시 시스템들 또는 레거시 섀시 장비로의 라인 카드 업그레이드의 경우의) 광학 상호접속 기술들로 동작하며 그리고 모든 통신들이 구리 백플레인 상의 단일의 DSLAM 내에서 또는 높은 대역폭의 구리 상호연결을 이용하여 흐르는 미래의 구리 상호연결 기술들로 또한 동작한다. 상기 공동-계속중인 출원의 실시예들은 통신 회사들이 다중의 라인 카드들 및/또는 다중의 섀시들을 통해서 모뎀 포트들을 가상적으로 본딩 (bonding)하는 것을 허용하는 "가상의 본딩"을 또한 허용한다.
본 발명을 구현하기 위해서 사용될 수 있는 예시적인 일 실시예에서, 상기 공동-계속중인 출원은 자신의 도1과 결합하여, 라인 카드들이 꼬인-쌍 라인들 상에서의 통신들을 제어하는 DSL 모뎀들 (예를 들면, 다중-포트 기기들)을 포함하는 벡터화 데이터 통신 시스템을 설명한다. 다중 라인 카드들은 XAUI 라인들 등과 같은 고속의 통신 장치를 경유하여 중앙화된 벡터화 모듈 (이는, 예를 들면, 벡터화 카드일 수 있다)로 연결된다. XAUI는 MAC 그리고 10 기가비트 이더넷 (10 GbE)의 PHY 레이어 사이에서 XGMII (10 Gigabit Media Independent Interface)를 확장하기 위한 표준이며 그리고 그런 고속의 데이터 통신 라인들은 모뎀들을 라인 카드 벡터 라우터 컴포넌트들 (VRC-Ls)로 연결하기 위해서 사용될 수 있다. 상기 VRC-Ls 는 상기 모뎀을 위한 추상화 계층 (abstraction layer)을 형성하며, 이는 상기 모뎀은 한 하나의 VRC-L만에 연결될 필요가 있으며 그리고 특정 벡터화 배치의 복잡성 (예를 들면, 포트들, 라인 카드들 등의 개수)은 그러면 각 모뎀에 대해서 숨겨지기 때문이다. VRC-L 은 상기 DSL 모뎀 칩으로부터 분리된 칩일 수 있으며, 또는 그것은 상기 DSL 모뎀 칩 그 자체 내부에 포함된 모듈일 수 있다.
각 모뎀으로부터 모뎀 각자의 VRC-L로의 벡터화 데이터 흐름은 다운스트림 및 업스트림 통신들용의 주파수 도메인 샘플들을 - 즉, 다운스트림 벡터화용의 IFFT-입력 전송 (TX) 데이터 그리고/또는 업스트림 벡터화용의 FFT-출력 수신 (RX) 데이터를 - 포함한다. VRC-L을 경유하여 상기 벡터화 모듈로부터 각 모뎀으로 돌아온 데이터는, 다른 벡터화 시스템 모뎀들로부터의 혼선 간섭을 방지하고 그리고/또는 제어하기 위해서 조절되고 그리고/또는 프로세싱된, 상기 모뎀의 혼선-조절된 (즉, 벡터화된) IFFT-입력 그리고/또는 FFT-출력 데이터이다. 각 라인 카드 내 VRC-L은 그 라인 카드의 모뎀과 상기 벡터화 모듈 사이에서의 인터페이스로서 행동한다. 고속의 통신 라인들 (예를 들면, 10-40 Gbps 또는 더 고속의 광학 또는 구리 상호 연결)은 각 라인 카드 상의 VRC-L을 상기 벡터화 모듈 상의 동료 VRC-V 로 네트워크를 형성한다. 10-40 Gbps는 상기 벡터화 모듈과 각 라인 카드 사이에서 구현될 수 있는 공통의 데이터 통신 요구 사항이다. 오늘날 이것은 대부분 전기적인 백플레인 또는 광학 케이블을 통한 5 Gbps 또는 10 Gbps XAUI 라인들 또는 유사한 것의 집성일 것 같다.
벡터화 모듈 상의 VRC-V들은 상기 모뎀 벡터화 데이터 스트림을 하나 또는 그 이상의 벡터 프로세서들에서, 시스템 요구 사항들에서 정의한 것과 같이, 연이은 혼선 소거를 위한 서브-밴드들로 세분한다. 상기 벡터 프로세서들은 "벡터 프로세서 컴포넌트들", "계산 기기들", 벡터화 소거 (vectoring cancellation (VCE)) 칩들" 등으로 또한 언급될 수 있을 것이다. 즉, 데이터가 각 모뎀 내 보통의 (즉, 벡터화되지 않은) 데이터로부터 제거되며 그리고 주파수 특성들에 의해서 정의된 데이터 묶음들로 재편성되며, 그래서 그 데이터는 주파수를 기반으로 하여 (예를 들면, 톤 단위로 (tone-by-tone), 톤들의 그룹들 등으로) 혼선-프로세싱 (crosstalk-processed)될 수 있다. 일단 프로세싱되면, 그 데이터는 그러면 혼선-제거 프로세싱을 위해서 사용된 주파수-기반의 묶음들로부터 다시 인식되며 그리고 상기 모뎀들에 의한 전송/사용을 위해서 다시 조립된다.
예를 들면, 업스트림 대역들 그리고 다운스트림 대역들은 하나 또는 그 이상의 VRC들 (예를 들면, VRC-L/VRC-V 쌍)에 의해서 개별 VCE들로 벡터 라우팅될 수 있다. 벡터 라우터는 프로세싱 또는 데이터 전송 병목들을 회피하기 위해서 모뎀들과 벡터 프로세서들 사이에서 벡터화 데이터를 효율적으로 이동시키는 목적을 위한, 이더넷 네트워크와 유사할 수 있는, 특화된 "사적" 데이터 네트워크를 구현하는 특화된 데이터 네트워킹 기기 또는 서브시스템이다. 벡터화 데이터의 패킷들은, 각 모뎀과 벡터 프로세서 기기 사이에서의 전용의 링크들을 필요로 하지 않으면서 데이터 네트워크를 통한 벡터링 데이터의 효율적인 라우팅을 가능하게 하는 헤더들 및/또는 다른 상태 정보를 포함할 수 있다. 이 목적을 위해서, 벡터 라우터는 벡터 데이터 패킷들을 상기 모뎀들에 의해서 쉽게 공급된 포맷으로부터 상기 벡터 프로세서들에 의해서 자연스럽게 활용된 포맷으로 또한 변환하며, 그리고 벡터화가 수행된 이후에 다시 반대로 변환한다 (예를 들면, 상기 모뎀 벡터화 데이터 스트림을 인터리빙하고 그리고 디-인터리빙 (de-interleaving)한다). 이 태스크는, 설정에 따라서, VRC-L들 그리고 VRC-V들 사이에서 분리될 수 있을 것이며, 또는 어느 하나에서만 수행될 수 있을 것이다. 대안으로, VCE 할당은 (업스트림 및 다운스트림 대역 할당에 독립적으로) 고르게 이격된 서브-밴드들을 기반으로 할 수 있다. 상기 벡터링 모듈 상의 VRC-L들 그리고 VRC-V들 사이에서의 데이터 전송은 고속 상호연결 라인들 (예를 들면, XAUI 또는 유사한 것)을 이용하여 수행될 수 있다.
특정한 모습들에 따르면, 본 발명의 발명자들은 몇몇의 DSL 시스템들에서 혼선을 소거하기 위해서 필요한 메모리와 계산의 양이 벡터화 그룹 내 라인들의 개수의 제곱에 비례한다는 것을 인식한다. 많은 개수의 라인들을 가진 벡터화 그룹에 대해서, 그러므로 필요한 메모리와 계산 로직을 하나의 칩 내로 꼭 맞게 넣는다는 것은 가능하지 않으며 그래서 이 로직은 상기 벡터화된 그룹을 위해서 혼선 소거를 같이 수행하는 다중의 칩들 사이에서 파티션되거나 또는 그 다중의 칩들에 걸쳐서 분산될 필요가 있다. 상기에서 설명된 것과 같은 벡터 소거기 (vector canceller (VCE)) 칩들은 자신들끼지 데이터를 교환할 필요가 있으며, 이는 포인트-대-포인트 고속 시리얼화/디시리얼화 (serializer/deserializer (SerDes)) 링크들을 사용하여 행해질 수 있다. 상기 칩들 사이에서 교환되는 데이터의 양 그리고 그 칩들을 조절하는 복잡성은 그 계산이 상기 칩들 사이에서, 상기 칩들에 걸쳐서 (물리적으로, 논리적으로 또는 물리적, 논리적 둘 모두에 따라서) 어떻게 파티션되는가에 달려있다.
포트의 데이터가 혼선에 의해서 영향을 받는 (그리고 출력이 그 포트용으로 계산되고 있는) 그런 포트는 "희생 (victim) 포트 (또는 희생 라인)로 불리며, 그리고 포트들의 혼선 분담들 (crosstalk contributions)이 소거된 그런 포트들은 "교란 (disturber)" 포트들 (또는 교란 라인들)로 불린다. 상기에서 제시된 것처럼, 주어진 톤에 대한 라이들의 쌍 사이에서의 혼선은, 예를 들면, 트레이닝 동안에 결정된 계수에 의해서 표현될 수 있다. 그러므로, 혼선 소거가 필요한 N 개의 포트들, 그리고 DSL 심볼당 T 개의 톤들이 존재한다면, 각 톤에 대해 계수들의 N2개의 행렬이 존재하며, 그리고 전체 (N * N * T) 개의 계수들이 사용되어야만 한다. 그 계산은 아래와 같이 수행된다.
x[t,d]를 교란 포트 'd'의 톤 (tone) 't'에 대한 입력이라고 한다;
그리고 y[t,v]를 희생 포트 'v' 용의 톤 't'에 대한 혼선 소거된 출력이라고 한다;
그리고 h[t,d,v]를 희생 포트 'v' 상의 교란 포트 'd'의 톤 (tone) 't'에 대한 혼선 계수라고 한다;
x, y, 그리고 h는 모두 복소수들일 수 있다는 것에 유의한다. y[t,v]의 계산은 아래의 수학식에서 있는 것과 같다.
[수학식 1]
희생 포트 v에 영향을 주는 모든 교란들에 대해서,
y[t,v] = Σ(x[t,d] * h[t,d,v])
상기의 수학식에서, 라인 그 자체 상으로의 그 라인의 교란을 나타내는 상기 계수 h[t,d=v,v]는 1로 세팅된 것에 유의한다. 이는 상기 출력이 상기 라인 상으로 상기 전송된 값을 동일한 수학식 내의 다른 라인들에 대한 교정들에 추가하는 것을 허용한다. 따라서, 모든 희생들 용의 모든 톤들에 대해서 혼선 소거 출력을 얻기 위해서, y[t,v]는 t = 0 내지 T-1의 모든 톤들, d = 0 내지 N-1까지의 모든 교란들, 그리고 v = 0 내지 N-1까지의 모든 희생들에 대해서 상기에서 계산된다
그래서, 전체 소거 시스템을 위한 계산들의 전체 회수는 심볼 당 (N * N * T)이다. VDSL2 17a 프로파일 시스템에 대해서, 예를 들면, 심볼 레이트는 4000 심볼/sec 이며 그리고 심볼 당 4096개의 톤들이 존재한다. 192개의 포트들을 구비한, VDSL2 17a 프로파일을 이용하는 벡터화된 시스템은 그러므로 초당 192 * 192 * 4096 * 4000 = 약 603 Gig 복합 곱셈-누적 기능 (multiply-accumulate function (MAC))들을 수행할 필요가 있다. 한편으로는, 비록 용량들이 크게 변하기는 하지만, 전통적인 프로그래머블 DSP 코어들은 초당 5 내지 10 Gig MAC들을 달성할 수 있을 것이며, 그리고 여러 코어들이 단일의 칩 상에 집적될 수 있을 것이다. 여전히, 768개 포트들 또는 그 이상을 필요로 하는 시스템들에 대해서는 특히 여러 칩들이 필요할 수 있을 것이다.
특정 모습들에 따라서, 그러므로, 본 발명은 상기 소거 계산을 분산시키고 그리고/또는 파티셔닝하기 위한 장치들, 시스템들, 방법들, 기술들 등을 포함한다. 실시예들은 희생-기반 (victim-based) 파티셔닝, 교란-기반 (disturber-based) 파티셔닝 그리고 톤-기반 (tone-based) 파티셔닝과 같은 단일 기준의 파티셔닝을 포함한다. 실시예들은 희생-교란 (victim-disturber) 파티셔닝, 또는 교란-희생 (disturber-victim) 파티셔닝과 같은 이중 기준 파티셔닝을 더 포함한다. 단일 기준 파티션된 벡터화 소거 시스템과 비교하면, 이중 기준 희생-교란 (또는 교란-희생) 파티셔닝은 칩들 사이에서의 링크들의 개수 그리고 대역폭을 줄여주며 그리고 단일-기준 파티션된 시스템들에 비해서 덜 복잡하게 수행한다. 이는 더 많은 개수의 칩들에 걸쳐서 파티션하는 것을 가능하게 만들며, 그럼으로써 더 많은 벡터화된 그룹들에 걸쳐서 혼선 소거를 가능하게 하며 그리고 통상적인 시스템들보다 더욱 쉽게 규모 조절 가능한 시스템을 제공한다.
실시예들에서, (사용된 계수들을 저장하는 것을 포함하는) 상기 계산들은 다중의 소거기 (canceller) 칩들로 파티션될 수 있으며, 각 소거기 칩들 (또한 "벡터화 소거 칩", "VCE 칩"으로도 언급된다)은 상기 계산의 일부 (즉, 부분적인 소거)를 처리한다.
도 1은 혼선 소거 계산들을 3차원 어레이로 그림처럼 보여주며, 참조번호 102의 한 축은 희생 (victim)들의 행들을 표시하며, 참조번호 104의 다른 축은 교란 (disturber)들의 열들을 나타내며, 그리고 참조번호 106의 마지막 축은 톤 (tone)들을 나타낸다. 계수들 h[t,d,v] 는 3차원 어레이의 요소들로서 간주될 수 있으며, 그리고 각 요소는 그 요소와 연관된 복합 곱셈-누적 기능 (multiply-accumulate function (MAC))을 개념적으로 가진다. 교란 데이터 x[t,d] 는 제일 위로부터 피딩되며, 소거 계수들로 곱해지며, 그리고 상기 계산된 y[t,v] 는 왼쪽으로 나가는 것으로 보인다.
아래에서 더 상세하게 설명될 것처럼, 상기 계산을 여러 벡터화 소거 칩들로 파티션하는 것은 다양한 방식들로 달성될 수 있다. 벡터화 소거 칩들의 전체 개수가 C로 정의되며, 그 벡터화 소거 칩들은 VCE0, VCE1, . . . VCEC-1 로 언급된다. 각 칩은 여러 포트들 (예를 들면, N/C 개 포트들, 이 경우 N은 상기 벡터화 그룹 내 포트들의 전체 개수이며 - 상기 벡터화 시스템에 연결된 N개의 DSL 라인들이 존재한다는 것을 의미한다)을 다루는 디지털 신호 프로세싱 (DSP) 칩들 (또는 다른 하드웨어)에 직접 연결될 수 있다.
각 벡터화 소거 칩은, 상기 벡터화 소거 칩이 연결되는 상기 DSP 칩(들) 상의 N/C 개 포트들에 대해서, 모든 톤 t에 대해 교란 d의 데이터 x[t,d]의 모든 심볼을 수집한다.
혼선 소거된 출력 y[t,v]의 계산이 수행된 이후에, 각 벡터화 소거 칩은 상기 N/C 개의 DSL 포트들에 대한 혼선 소거된 출력 y[t,v]을 자신이 연결된 DSP 칩들로 송신한다.
여기에서 설명의 간략함을 위해서, N (상기 벡터화 그룹 내 포트들의 개수)은 아래에서 설명되는 하나 또는 그 이상의 실시예들에서 C의 배수라고 가정한다. 몇몇의 시스템들에서 그렇지 않다면, 상기 벡터화 소거 칩들 중 하나가 상이한 양의 계산을 가질 경우를 제외하고는, 혼선 소거는 아래에서 설명되는 것과 유사한 방식으로 수행될 수 있다. 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들은 다양한 대안들이 가능하다는 것을 이해할 것이다.
희생들 (Victims)에 의한 파티션:
계산 신뢰성이 희생들을 기반으로 하여 C 개의 벡터화 소거 (VCE) 칩들에 배분되는 시스템에서, 각 벡터화 소거 (VCE) 칩은, 예를 들면, (N/C)개의 희생들을 다룰 수 있다. 즉, 각 벡터화 소거 (VCE) 칩은 모든 교란들 그리고 N/C 개의 희생 행들에 대한 모든 톤들에 대해서 계산들을 수행한다. 도 2는 이 "희생들에 의한 파티셔닝" 모드를 위한 그런 계산들을 그림으로 보여준다. m 번째 벡터화 소거 (VCE) 칩 VCEm에 의해서 수행된 상기 계산들은 다음과 같다:
[수학식 2]
희생들 v = m*(N/C) 부터 ((m+l)*(N/C))- 1에 대해서, t=0 부터 T-1 에 대해 y[t,v]
이때에, 희생 포트 v에 영향을 주는 모든 교란들 (d = 0 부터 N-1)에 대해 y[t,v] = Σ(x[t,d] * h[t,d,v])
이런 유형의 시스템은 조정 (coordination)의 면에서는 단순하지만, 모든 교란 데이터가 모든 벡터화 소거 (VCE) 칩들로 송신되어야만 하기 때문에 여러 벡터화 소거 (VCE) 칩들 사이에서 높은 대역폭을 필요로 한다. 각 벡터화 소거 (VCE) 칩은 자신의 교란 데이터를 모든 다른 VCE 칩들로 송신하고 그리고 모든 다른 VCE 칩들로부터 교란 데이터를 수신하기 위해서 모든 다른 벡터화 소거 (VCE) 칩들에 연결될 필요가 있다.
교란들 (Disturbers)에 의한 파티션:
상기 "희생들에 의한 파티셔닝" 모드와 어딘가 유사하게, "교란들에 의한 파티셔닝" 모드에서, 각 벡터화 소거 (VCE) 칩은 (N/C)개의 교란들을 다룰 수 있다. 즉, 각 벡터화 소거 (VCE) 칩은 모든 희생들 그리고 N/C 개의 교란 열들에 대한 모든 톤들에 대해서 계산들을 수행한다. 도 3은 이 "교란들에 의한 파티셔닝" 케이스를 위한 그런 계산들을 그림으로 보여준다. m 번째 벡터화 소거 (VCE) 칩 VCEm 은 t = 0 부터 T-1 그리고 v = 0 부터 N-1 에 대해서 먼저 z[t,v,m]를 계산하며, 이 경우
[수학식 3]
교란들 d = m*(N/C) 부터 ((m+l)*(N/C))-l 에 대해서
z[t,v,m] = Σ(x[t,d] * h[t,d,v])
상기 z[t,v,m] 은 부분적인 누적된 곱 (partial accumulated product)들이며, 그리고 이것들은 같이 합산되어 최종 출력 합 y[t,v]를 가질 필요가 있다. 각 벡터화 소거 (VCE) 칩은 자신이 연결된 DSL 포트들에 대해 최종 합 y[t,v]를 계산한다. 상기 m 번째 벡터화 소거 (VCE) 칩 VCEm 은 최종 합을 계산한다:
[수학식 4]
희생들 v = m*(N/C) 부터 ((m+l)*(N/C))-1 에 대해서, t=0 부터 T-1까지에 대해 y[t,v],
이 경우 m = 0 부터 C-1에 대해서 y[t,v] = Σ(z[t,v,m])
각 벡터화 소거 (VCE) 칩은 상기 부분적인 누적된 곱들 z[t,v,m]를 'v' 인덱스 범위를 기반으로 하여, 그 'v' (희생들) 값에 대해서 상기 최종 합 y[t,v]를 계산하고 있는 상기 벡터화 소거 (VCE) 칩으로 포워딩한다.
이는 약간 더 복잡한 조정을 필요로 하며, 이는 그것이 다양한 벡터화 소거 (VCE) 칩들 사이에서 교환될 부분적인 누적된 곱들을 필요로 하기 때문이다. "희생에 의한 파티셔닝" 모드를 이용하여, 각 벡터화 소거 (VCE) 칩은 자신이 계산한 부분적인 누적된 곱들을 송신하고 그리고 다른 VCE 칩들에 의해 계산된 부분적인 누적된 곱들을 수신하기 위해서 모든 다른 벡터화 소거 (VCE) 칩들에 연결될 필요가 있다
톤들 (Tones)에 의한 파티션:
"톤들에 의한 파티셔닝" 모드 동작에서, 각 벡터화 소거 (VCE) 칩은 (T/C)개의 톤들을 다룰 수 잇다. 즉, 각 벡터화 소거 (VCE) 칩은 모든 희생들 그리고 T/C 개의 톤들에 대한 모든 교란들에 대해서 계산들을 수행한다. 도 4는 그런 계산을 톤들 모드에 의한 이 파티셔닝에 대해서 그림으로 보여준다. m 번째 VCE 칩 VCEm 에 의해서 수행되는 그 계산들은 다음과 같을 수 있다:
[수학식 5]
톤들 t = m*(T/C) 부터 ((m+l)*(T/C))-1에 대해, v=0 부터 N-1 에 대한 y[t,v], 이 경우 희생 포트 v 에 영향을 주는 모든 교란들 (d = 0 부터 N-1)에 대해서 y[t,v] = Σ(x[t,d] * h[t,d,v])
교란 데이터는 각 벡터화 소거 (VCE) 칩이 프로세싱하고 있는 톤들을 기반으로 하여 하나의 벡터화 소거 (VCE) 칩에 의해서 다른 벡터화 소거 (VCE) 칩으로 송신될 필요가 있기 때문에, 이것은 더 복잡한 조정을 필요로 한다. 이어서, 각 벡터화 소거 (VCE) 칩은 그 계산된 결과들을 다른 VCE들에 의해서 톤들이 프로세싱된 다른 VCE들로부터 되찾으며, 그리고 이 계산된 결과들을 적합한 DSP로 거꾸로 송신한다. 이 유형의 동작은 상기 벡터화 소거 (VCE) 칩들 사이에서, 희생들에 의한 파티셔닝 또는 교란들에 의한 파티셔닝보다, 더 낮은 대역폭을 필요로 하지만, 그런 칩은 모든 다른 벡터화 소거 (VCE) 칩들에 연결될 것을 여전히 필요로 한다.
상기의 세 가지 방법들에서, 각 벡터화 소거 (VCE) 칩은 모든 다른 그런 칩들에 연결될 것을 필요로 하며, 그래서 그런 C 개의 VCE 칩들을 가지는 시스템에서, VCE 칩들 사이에서의 논리적인 링크들의 개수는
(C * (C- 1))/2 이다.
각 논리적 링크 상에서 운반되는 대역폭은 상기 단일-기준 파티셔닝 방법들 사이에서 변하며 그리고 비록 "톤들에 의한 파티션" 동작 모드가 벡터화 소거 (VCE) 칩들의 조정의 면에서는 가장 높은 복잡도를 가지지만, 최소한은 이 "톤들에 의한 파티션" 모드의 동작에 대한 대역폭이다. VCE 칩들 사이에서의 대역폭에 의존하여, 그런 칩들 사이에서의 각 논리적인 링크는 하나 또는 그 이상의 물리적인 링크들 (보통은 SerDes 링크들)로 구현될 것이다.
본 발명의 모습들에 따른 본 발명의 실시예들은 추가의 이중-기준 파티셔닝 기술들을 이용하여 필요한 링크들의 개수를 줄어들게 한다.
희생들 및 교란들 (Victims and Disturbers)에 의한 파티션:
더 상세하게는, 추가적인 또는 다른 유리한 점들을 위해서, 본 발명의 실시예들은 이중-기준-기반의 파티셔닝을 이용한다. 도 5에서 하나의 예시의 시스템 (500)에서 도시된 것과 같은, 예시의 희생-교란 이중 파티셔닝에서, 여섯 개의 VCE 칩들 (510)은 (예를 들면, 첫 번째 DSLAM (531)에 대응하는 DSP 칩들 그리고 두 번째 DSLAM (532)에 대응하는 DSP 칩들을 기반으로 하여) 두 개의 칩 그룹들로 분할될 수 있다.
본 발명의 실시예들에 따른 희생-교란 이중 파티셔닝에서, 상기 소거는 희생에 의해서 VCE들에 걸쳐서 그룹들로 파티션되며 그리고 교란들에 의해서 각 그룹으로 파티션된다. 그래서 도 5의 예시의 시스템 (500)에서, DSLAM (532)이 그런 것처럼, DSLAM (531)도 세 개의 벡터화 VCE 칩들 (510)을 구비하며, 희생-교란 파티셔닝 방식은 여섯 개의 VCE 칩들 (510)에 걸쳐서 소거를 파티션한다. 384개 포트 상황들에서, 예를 들면, 이 파티셔닝은 각 VCE 칩 (510)이 192 x 128 소거를 수행할 것을 필요로 한다 (즉, 192개 희생들 (V=384/2 개 그룹들) 그리고 128 교란들 (그룹마다 D=384/3 VCE)에 대한 혼선 소거).
보이는 것처럼, 첫 번째 DSLAM (531) 내 각 벡터화 소거 (VCE) 칩 (510)은 두 번째 DSLAM (532) 내 단 하나의 벡터화 소거 (VCE) 칩 (510)에 연결되어 교란 데이터를 교환한다. 각 그룹 내에서, 상기 VCE 칩들은 부분적인 누적된 곱들을 서로 교환한다. 그래서, 모든 VCE 칩들 사이의 논리적인 링크들의 전체 개수는
(C/2) + ((C/2) * ((C/2)-1)) 이다.
상기 VCE 사이의 논리적인 링크들의 개수는 그러므로 줄어들며, 반면 조정의 복잡도는 상기에서 설명된 "톤들에 의한 파티션"처럼 높지는 않다.
384개의 포트들 그리고 VDSL2 17a 프로파일을 가진 도 5에서 보이는 것과 같은 예시의 시스템에서, DSLAM들 (531 및 532)은 DSLAM 당 하나의 벡터 카드를 포함하며, 그리고 벡터 카드 당 세 개의 VCE들을 포함하며, 그리고 각 VCE는 라인 카드의 DSP들에 연결된다. 여기에서, 각 라인 카드는 라인 카드 당 4개의 DSP들을 이용하여 64개 포트들을 처리하고, 각 DSP는 16개 포트들을 처리하는 것으로 보인다. 라인 카드 상의 각 DSP는 10 Gbps 서데스 (SerDes) 링크를 통해서 자신의 VCE에 연결되며, 그래서 각 라인 카드는 자신의 VCE로의 4개의 10 Gbps 서데스 (SerDes) 링크들을 가진다. 도 5의 예에서, 라인 카드를 VCE로 연결하는 링크들 (520)은 4개의 10 Gpbs 서데스 (SerDes) 링크들을 나타내는 단일의 논리적 링크로서 도시된다. 이 예시의 방법은 벡터 카드 상의 VCE가, 예를 들면, 40 Gbps (4 x 10 Gbps)의 섀시간 케이블 (512)을 이용하여 달성될 수 있는 40 Gpbs 대역폭으로 다른 벡터 카드 상의 단 하나의 다른 VCE로 연결될 것을 필요로 한다. 그래서 세 개의 그런 40 Gbps 케이블들 (512)이 DSLAM 섀시들 (531, 532) 사이에서 필요하다. 이 예시의 방법은 각 VCE가 자신의 그룹 내 모든 다른 VCE들로, 즉, 상기 DSLAM 내 동일한 벡터 카드 내 두 개의 다른 VCE들로 연결될 것을 더 필요로 한다. 동일한 벡터 카드 내 두 개의 VCE들 사이에서의 대역폭은 또한 40 Gbps이다. 어떤 두 VCE들 사이에서의 링크들 (522)은 도 5에서 40 Gbps (4 x 10 Gbps links)를 나타내는 단일의 논리적인 링크로서 도시된다. 이 예에서, 각 VCE가 세 개의 다른 VCE들 (각각은 4개의 서데스 링크들을 필요로 한다) 그리고 4개의 DSP 칩들 (각각은 1개의 서데스 링크를 필요로 한다)에 신호를 하며, 각 VCE (510)는 그래서 16개의 서데스 링크들 (각각 10 Gbps)을 필요로 한다. 따라서, 모든 VCE들 사이에 전체 9개의 논리적인 링크들이 존재하며, 각 논리적인 링크는 이 예에서 네 개의 10 Gbps 서데스 링크들에 의해서 구현된다.
384개의 포트들 그리고 여섯 개의 VCE 칩들을 구비한 예시의 시스템에서 이런 유형의 파티셔닝을 위한 VCE 칩들 사이에서의 데이터 흐름은 도 6에서 더 상세하게 보여진다. 도 6에서 보이는 것처럼, 각 그룹 (531, 532) 내에서 교란에 의해서 파티션을 하기 위해서, 각 VCE (510)는 자신의 열들에 대한 곱들의 합 (sum of product)을 송신하며, 그리고 최종의 합을 수행한다. 이 예에서, 대각 요소 (계수 1)를 포함하는 합을 송신할 필요가 없다. 도 6이 제어 메시지들 및 트레이닝 관련된 데이터 (슬라이서 (slicer) 오류, FFT 데이터 등)를 위한 상기 VCE 칩들 사이에서 흐름을 보여주지 않는다는 것에 유의해야만 한다.
상이한 실시예에서, 도 7은 각 VCE 칩 (710)은 192 x 96 소거를 수행하며, 384개 포트 경우에 대해서 두 개의 그룹들 (721, 722) 내 여덟 개의 VCE 칩들에 걸친 희생-교란 파티셔닝에 의한 파티셔닝을 도시한다. 더 상세하게는, 도 7에서 보이는 것처럼, VCE 칩들 (710)은 처음에는 상기 교란들을 기반으로 하여 VCE들의 두 개 그룹들 (721, 722)로 먼저 분리된다. 384 포트들에 대한 여덟 개의 VCE 칩들 의 예시의 시스템에서, 각 VCE 칩 (710)은 192 x 96 개의 소거를 수행한다. VCE 칩들의 첫 번째 그룹 (721)은 첫 번째 192개 희생 포트들에 대한 계산을 처리하며, 그리고 VCE 칩들의 두 번째 그룹 (722)은 두 번째 192개 희생 포트들에 대한 계산을 처리한다. 첫 번째 그룹의 각 VCE는 다른 그룹 내 단 하나의 다른 VCE에 연결되며 그리고 그것과 교란 데이터를 교환한다.
희생-교란 파티셔닝 모드의 동작을 이용하여 384개 포트들을 여덟 개의 VCE 칩들로 이렇게 파티셔닝하기 위한 VCE 칩들 사이의 데이터 흐름이 도 8에서 보인다. 이것이 상기 VCE 칩들 사이에서 제어 메시지들 및 트레이닝 관련된 데이터 (슬라이서 (slicer) 오류, FFT 데이터 등)를 위한 흐름을 보여주지 않는다는 것에 유의한다.
이 예에서, 각 VCE 칩 (710)은 동일한 그룹 내 다른 칩들로 송신될 부분적인 누적된 곱들의 세트를 계산하며, 그리고 (동일 그룹 내 다른 칩들로부터) 수신한 부분적인 누적된 곱들에 자신이 계산한 상기 값들을 더함으로써 자신의 희생들을 위한 출력들을 또한 계산한다.
도 8은 도 7의 실시예들을 위한 데이터 흐름을 도시하기 위해서 (도 1과 유사하게) 교란들을 열들로서 그리고 희생들을 열들로서 보여준다. 파티셔닝이 희생 및 교란만에 의한 것일 때에는 톤들의 차원은 보이지 않는다. 상기 VCE 칩들 (710)의 첫 번째 그룹 (721) (Vce_0 내지 Vce_3으로 구성된다)은 첫 번째 192개 희생 포트들에 대한 계산을 처리하며, 그리고 상기 VCE 칩들 (710)의 두 번째 그룹 (722) (Vce_4 내지 Vce_7로 구성된다)은 두 번째 192개 희생 포트들에 대한 계산을 처리한다. 도 8에서 보이는 이 예에서, VCE (710) 내부의 각 컬러 박스 (802)는 48 x 48 소거를 나타내며, 그리고 각 VCE (710)는 그런 박스들 (802)의 4개 행들 및 2개 열들을 구비하여 192 x 96 소거를 수행한다. 단일-라인 화살표들 (804)은 교란 데이터 송신을 표시하기 위해서 사용되며 그리고 이중-라인 화살표들 (806)은 부분적인 누적된 곱들 송신을 표시하기 위해서 사용된다.
VCE들의 첫 번째 그룹에서, 0부터 '(C/2)-1'까지의 범위인 'm'에 대해 'm'으로 번호가 매겨진 VCE 칩 (VCEm)은 0부터 T-1 까지의 범위인 톤 't' 그리고 ((m)*(N/C))부터 (((m+1)*(N/C))-1) 까지의 범위인 희생 'v'에 대해서 혼선 소거된 출력 y[t,v]를 다음과 같이 계산한다:
[수학식 10]
j = 0 부터 (C/2)-1 에 대해서 y[t,v] = Σ(z[j,t,v])
이 경우에 z[j,t,v] 는 아래의 수학식에서와 같이 톤 't', 희생 'v'에 대해서 VCE 칩 'j'에 의해서 계산된 부분적인 누적된 곱들의 합이다.
VCE들의 첫 번째 그룹에서, 0부터 '(C/2)-1'까지의 범위인 'm'에 대해 'm'으로 번호가 매겨진 상기 VCE 칩 (VCEm)은 0부터 T-1 까지의 범위인 톤 't', 그리고 0 부터 (N/2)-1 까지의 범위인 희생 'v'에 대해서 상기 부분적인 누적된 곱들의 합 z[m,t,v]를 다음과 같이 또한 계산한다:
[수학식 11]
k = ((m)*(N/C)) 부터 (((m+1)*(N/C))-1)에 대해서 그리고
k = ((M+(C/2))*(N/C)) 부터 (((m+1+(C/2))*(N/C))-1) 에 대해서,
z[m,t,v] = Σ (x[t,k] * h[t,k,v])
VCE의 두 번째 그룹에서, '(C/2)'부터 'C-1'까지의 범위인 'm'에 대해 'm'으로 번호가 매겨진 VCE 칩 (VCEm)은 0부터 T-1 까지의 범위인 톤 't', 그리고 ((m)*(N/C))부터 (((m+1)*(N/C))-1)까지의 범위인 희생 'v'에 대해서 상기 혼선 소거된 출력 y[t,v]를 다음과 같이 계산한다:
[수학식 12]
j = (C/2) 부터 C-1까지에 대해서 y[t,v] = Σ (z[j,t,v])
이 경우에 z[j,t,v] 는 아래의 수학식에서와 같이 톤 't', 희생 'v'에 대해서 VCE 칩 'j'에 의해서 계산된 부분적인 누적된 곱들의 합이다.
VCE의 상기 두 번째 그룹에서, '(C/2)'부터 'C-1'까지의 범위인 'm'에 대해 'm'으로 번호가 매겨진 VCE 칩 (VCEm)은 0부터 T-1 까지의 범위인 톤 't', 그리고 N/2부터 N까지의 범위인 희생 'v'에 대해서 상기 부분적인 누적된 곱들의 합 z[m,t,v]를 다음과 같이 계산한다:
[수학식 13]
k = ((m-(C/2))*(N/C)) 부터 (((M+1-(C/2))*(N/C))-1)에 대해서 그리고
k = ((m*(N/C))부터 (((m+1)*(N/C))-1)에 대해서,
z[m,t,v] = Σ (x[t,k] * h[t,k,v])
더욱 일반화된 의미에서, 여기에서의 하나 또는 그 이상의 실시예들에 따른 희생-교란 파티셔닝은 벡터화된 그룹 내 N 개의 DSL 라인들/포트들을 혼란들의 D 개 그룹들 및 희생들의 V 개의 그룹들로 분할하는 것으로 보일 수 있다. C 개의 벡터화 소거 (VCE) 칩들의 그룹을 이용하여, 상기 C 개의 칩들은, 각각 N/V 개 희생 라인들을 위해서 데이터를 프로세싱하는 둘 또는 그 이상의 희생 DSL 라인 그룹들로 먼저 분할될 수 있다. 그런 각 희생 DSL 라인 그룹 내 각 벡터화 소거 (VCE) 칩은 그러면 혼선 소거 프로세싱을 위해서 N/D 개 교란 라인들이 할당받는다.
도 9는 384개 포트 8 VCE 경우에 대해 도 7 및 도 8과 결합하여 상기에서 설명된 '희생 및 교란' 방법에 의한 파티셔닝을 위한 VCE (예를 들면, VCE_0)의 내부 구성의 일 예를 보여준다. 이 경우에, 각 VCE는 192 x 96 소거를 수행한다. VCE 내 소거 로직은 다양한 방식들로 조직될 수 있다. 도 9에서 보여진 실시예는 소거를 여기에서 VPM (vector product matrix) (910)으로 언급되는 네 개의 블록들로서 조직하며, 이 경우에 각 VPM (910)은 96개 교란들에 의해 48개 희생들을 처리한다. 상기 네 개의 VPM들은 4개 행 x 1개 열로 구성되어, 192 x 96 소거를 수행한다. VPM (910)은 도 8 내 컬러의 48x48 박스들 (802) 중 두 개와 동등하다. VPM들의 이 조직은, 도 5 내지 도 8과 결합하여 설명된 것과 같은 '희생 및 교란'에 의한 파티셔닝 또는 도 13과 결합하여 아래에서 설명되는 '교란 및 희생' 방법 중 어느 하나를 지원하도록 구성될 수 있도록 선택된다.
여기에서, VCE_0 은 자신의 DSP들로부터 자신의 입력단 LC0_In 상으로 수신했던 교란 데이터를 다른 그룹 내 대응하는 VCE (VCE_4)로 송신하며, 그리고 VCE_4에 부착된 DSP들로부의 교란 데이터를 그 VCE_4로부터 수신한다. VCE_0 내의 이 교란 데이터는 자신의 입력 VPM0_In0 및 VPM0_In1을 통해서 VPM0 및 VPM1 로 피딩된다. 이 '희생 및 교란' 방법에서, VCE는 192 x 96 소거기 (canceller)로서 사용되며, 그리고 상기 도면에서 보이는 것처럼, 입력 VPM0_In0 은 내부적으로 VPM1_In0 으로 송신되며 그리고 입력 VPM0_In1 은 내부적으로 VPM1_In1으로, VPM1 및 VPM3 으로 송신된다. 상기 VCE는 다른 VCE로부터 부분적인 누적된 곱들 (부분적 벡터 합들로서 또한 알려짐)을 또한 얻는다. 여기에서, VCE_0 는 부분적인 누적된 곱들 PS0_1, PS0_2, PS0_3을 VCE_1, VCE_2, 그리고 VCE_3 각각으로부터 얻는다. VPM0이 계산한 곱들의 합 'VPM0_Out'은 PS0_1, PS0_2, PS0_3 으로 더해져서 첫 번째 48개 희생들을 위한 최종 출력 'LC0_Out'을 계산하도록 하며 그리고 VCE_0이 연결된 DSP 칩들로 송신된다. VPM2가 계산한 곱들의 합 'VPM2_Out'은 VCE1으로 송신된다. VPM1이 계산한 곱들의 합 'VPM1_Out'은 VCE_2로 송신되며, 그리고 VPM3이 계산한 곱들의 합 'VPM3_Out'은 VCE_3으로 송신된다.
도 10은 도 13과 연결하여 아래에서 더욱 상세하게 설명되는 '교란 및 희생' 방법에 의한 파티셔닝을 위한 VCE_0의 내부 구성의 일 예를 보여준다. 실시예들에서, 네 개의 VCE들을 구비한 하나의 보드는 192 포트 경우를 지원할 수 있으며, 그리고 펌웨어 구성을 구비한 동일한 보드는 384 포트 8개 VCE 경우에 대한 두 번째 DSLAM 상의 유사한 보드에 연결될 수 있다. 도 10에서 보여진 실시예는 상기 소거를 여기에서 VPM (vector product matrix) (1010)으로 언급되는 네 개의 블록들로 조직하며, 이 경우에 각 VPM (1010)은 96개 교란들에 의해 48개 희생들을 처리한다. 상기 네 개의 VPM들은 두 개의 행 x 두 개의 열로 구성되어, 96 x 192 소거를 수행한다. VPM은 도 13에서 컬러로 된 48x48 박스들 중 두 개와 동등하다.
네 개의 VCE를 구비한 192개 포트들의 경우에 대해서, VPM2 및 VPM3는 사용되지 않으며 그리고 파워 다운될 수 있다. 이 구성은, 두 번째 192-포트 DSLAM이 추가될 때에 나중에 384 포트 소거로 업그레이드하는 것이 필요할 때에, 192-포트 DSLAM을 위한 벡터 카드에서 사용된다. 그 경우에, 하나의 보드 내 VCE들은 다른 보드 내 대응하는 VCE에, 도 9에서와 같은 섀시 간 케이블들에 의해서 각각 연결될 수 있으며, 그리고 펌웨어는 각 VCE의 VPM2 및 VPM3를 활성화할 수 있다.
여기에서, 각 VCE는 96 x 192 소거기로서 사용되며, 그리고 VCE_0는 자신의 DSP들로부터 자신의 입력 LC0_In 상으로 수신했던 교란 데이터를 동일한 그룹 내 모든 다른 VCE들 (VCE_1, VCE_2, VCE_3)로 송신한다. VCE_0는 동일한 그룹 내 다른 VCE들로부터 교란 데이터 VCE1_In, VCE2_In, 및 VCE3_In을 또한 얻는다. 상기 교란 데이터 LC0_In 및 VCE1_In 은 VPM0 및 VPM2로 피딩되며, 그리고 교란 데이터 VCE2_In 및 VCE3_In 은 VPM1 및 VPM3 으로 피딩된다. VPM0 및 VPM1 의 부분적인 누적된 곱들이 상기 첫 번째 48개 희생들을 위한 최종 출력 'LC0_Out'을 얻기 위해서 더해지며 그리고 대응하는 DSP 칩들로 송신된다. 384 포트 경우에, VPM2 및 VPM3의 부분적인 누적된 곱들은 두 번째 48개 희생들을 위한 최종 출력 'LC1_Out'을 얻기 위해서 더해지며 그리고 대응하는 DSP 칩들로 송신된다.
도 11은 96개 포트들 또는 192개 포트들의 소거를 지원할 수 있는 두 개의 VCE들을 구비한 벡터 카드 (1102)의 일 예를 보여준다. 도 10에서 보이는 구성이 384개 포트들로의 하드웨어 변경을 하지 않고 업그레이드 가능할 수 있게 유지하기 위해서 192개 포트들 용으로 4개의 VCE들을 사용한다는 것에 유의한다. 192 포트들을 넘어서 업그레드하는 것을 필요로 하지 않는 192 포트 벡터 소거 시스템들을 위해서, 도 11의 두 개의 VCE 구성이 사용될 수 있다.
도 12는 두 개의 VCE들을 구비한 192 포트 소거를 위해 도 13과 연결하여 설명되는 '교란 및 희생' 방법에 의한 파티셔닝을 위한 VCE_0의 내부 구성의 일 예를 보여준다. 상기 구성은, 이 경우에서 VPM2 및 VPM3의 합이 출력 LC1_Out 의 두 번째 집합이라는 것을 제외하면, 도 10의 구성 (네 개의 칩들을 구비한 192 포트)과 유사하다
상기에서 설명된 희생-교란 방법의 대한의 파티셔닝이 도 13에 도시된다. 교란-희생 방법으로 불리는 이 대안의 방법에서, VCE 칩들은 교란에 의해 두 개의 칩 그룹들로 먼저 분리되며, 그리고 그 후 각 그룹은 희생들에 의해서 분리된다. 이 경우에, 첫 번째 그룹 내 각 VCE 칩은 두 번째 그룹 내 단 하나의 VCE 칩으로 연결되어 부분적인 누적된 곱들을 교환한다. 각 그룹 내에서, VCE 칩들은 서로 교란 데이터를 교환한다.
도 13에서 보이는 예에서, 파티셔닝은 384 포트 경우에 대해 여덟 개의 VCE 칩들에 걸쳐서 수행되며, 이 경우 각 VCE 칩 (1310)은 96 x 192 소거를 수행한다.
VCE 칩들의 첫 번째 그룹 (1321)은 첫 번째 192개 포트들로부터의 교란 데이터를 취급하며, 그리고 VCE 칩들의 두 번째 그룹 (1322)은 두 번째 192 포트들로부터의 교란 데이터를 취급한다. 상기 첫 번째 그룹 내 각 VCE (1310)는 다른 그룹 내 단 하나의 다른 VCE (1310)에 연결되며 그리고 그것과 부분적인 누적된 곱들을 교환한다. 각 그룹 (1321, 1322) 내에서, 각 VCE 칩 (1310)은 (자신에게 연결된 DSP들로부터 자신이 수신했던) 자신의 교란 데이터를 동일 그룹 내 모든 다른 VCE 칩들로 송신한다. 그래서 상기 VCE 칩들 사이의 논리적인 링크들의 개수는
(C/2) + ((C/2) * ((C/2)-1)) 이다.
VCE들 사이의 논리적인 링크들의 개수는 그래서 줄어들며, 반면 조정의 복잡성은 '톤들에 의한 파티션' 방법에서만큼 높지는 않다.
도 13은 '교란들 및 희생들' 방법에 의해서 384 포트들을 여덟 개의 VCE 칩들로 이렇게 파티션하는 것을 위한 상기 VCE들 사이에서의 데이터 흐름을 더 보여준다. 이것은 제어 메시지들 및 트레이닝 관련된 데이터 (슬라이서 (slicer) 오류, FFT 데이터 등)를 위한 상기 VCE 칩들 사이에서 흐름을 보여주지 않는다는 것에 유의해야만 한다.
이 파티셔닝에서, 각 VCE 칩은 다른 그룹 내 자신의 대응하는 칩으로 송신된 부분적인 누적된 곱들의 집합을 계산하며, 그리고 다른 그룹 내 자신의 대응 칩으로부터 수신한 부분적인 누적된 합들을 자신이 계산한 상기 값들에 더하여 자신의 희생들을 위한 출력들을 또한 계산한다.
VCE들의 첫 번째 그룹에서, 0부터 '(C/2)-1'까지의 범위인 'm'에 대해 'm'으로 번호가 매겨진 VCE 칩 (VCEm)은 0부터 T-1 까지의 범위인 톤 't' 그리고 ((m)*(N/C))부터 (((m+1)*(N/C))-1) 까지의 범위인 희생 'v'에 대해서 혼선 소거된 출력 y[t,v]를 다음과 같이 계산한다:
[수학식 14]
k = 0 부터 (N/2)에 대해서 y[t,v] = z[m+C/2,t,v] + Σ(x[t,k] * h[t,k,v])
이 경우에 z[j,t,v] 는 톤 't', 희생 'v'에 대해서 VCE 칩 'j'에 의해서 계산된 부분적인 누적된 곱들의 합이다.
VCE들의 첫 번째 그룹에서, 0부터 '(C/2)-1'까지의 범위인 'm'에 대해 'm'으로 번호가 매겨진 상기 VCE 칩 (VCEm)은 0부터 T-1 까지의 범위인 톤 't', 그리고 ((m+(C/2))*(N/C)) 부터 (((m+1+(C/2))*(N/C))-1) 까지의 범위인 희생 'v'에 대해서 상기 부분적인 누적된 곱들의 합 z[m,t,v]를 다음과 같이 또한 계산한다:
[수학식 15]
k = 0 부터 (N/2)-1 에 대해서 z[m,t,v] = Σ (x[t,k] * h[t,k,v])
VCE들의 두 번째 그룹에서, '(C/2)'부터 'C-1'까지의 범위인 'm'에 대해 'm'으로 번호가 매겨진 VCE 칩 (VCEm)은 0부터 T-1 까지의 범위인 톤 't', 그리고 ((m)*(N/C))부터 (((m+1)*(N/C))-1)까지의 범위인 희생 'v'에 대해서 상기 혼선 소거된 출력 y[t,v]를 다음과 같이 계산한다:
[수학식 16]
k = (N/2) 부터 N-1까지에 대해서 y[t,v] = z[m-C/2,t,v] + Σ (x[t,k] * h[t,k,v])
이 경우에 z[j,t,v] 는 톤 't', 희생 'v'에 대해서 VCE 칩 'j'에 의해서 계산된 부분적인 누적된 곱들의 합이다.
VCE의 상기 두 번째 그룹에서, '(C/2)'부터 'C-1'까지의 범위인 'm'에 대해 'm'으로 번호가 매겨진 VCE 칩 (VCEm)은 0부터 T-1 까지의 범위인 톤 't', 그리고 ((m-(C/2))*(N/C)) 부터 (((m+1-(C/2))*(N/C))-1) 까지의 범위인 희생 'v'에 대해서 상기 부분적인 누적된 곱들의 합 z[m,t,v]를 다음과 같이 계산한다:
[수학식 17]
k = (N/2) 부터 N-1 에 대해서, z[m,t,v] = Σ(x[t,k] * h[t,k,v])
VCE 칩들을 파티션하는 많은 대안의 방법들이 가능하다는 것에 유의해야 한다. 예를 들면, 도 14는 예시의 시스템들을 도시하며, 이 시스템은 768개 포트들을 구비하며 16개의 VCE 칩들 (1410)이 네 개의 그룹들 (1421, 1422, 1423 및 1424)로 분리되며, 각 그룹 내에 네 개의 VCE 칩들 (1410)을 구비한다. 일 예에서, 상기 VCE들은 처음에는 교란에 의해서 그룹화되며, 그리고 그 후에 각 그룹 내에서는 희생에 의해서 그룹화되며, 이 경우 각 칩은 192 x 192 소거를 수행한다. 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들은 상기의 예들에 의해서 교시를 받을 후에, 이런 그리고 다른 가능한 파티션들의 추가의 상세한 내용을 이해할 것이다.
여기에서 개시된 주제의 실시예들은 벡터 소거기 ASIC (application-specific integrated circuit)에서, 또는 FPGA (field programmable gate array)에서 구현될 수 있다. 예를 들면, 각 벡터화 소거 (VCE) 칩은, 예를 들면, 도 7 및 도 9에서 보이는 것처럼 다중의 프로세싱 유닛들이 정의되는 개별적인 기기 (ASIC, FPGA 등)일 수 있다. 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들이 이해할 것처럼, 다른 하드웨어 구현들도 가능하다.
VCE 칩들에 걸쳐서 계산 파티셔닝은 벡터화된 그룹 내 더 많은 개수의 포트들을 허용한다 - 이는 벡터화된 DSL 시스템들 (예를 들면, 벡터화된 VDSL 시스템들 및 유사한 것)의 큰 규모의 배치를 위해서 필요할 수 있을 것이다. 다중의 VCE 칩들에 걸쳐서 계산을 분배하기 위한 상이한 파티셔닝 방식들이 여기에서 개시된다. 희생-교란 또는 교란-희생 파티셔닝은 VCE 칩들 사이의 논리적인 링크들의 개수를 줄어들게 하면서도, 조정의 복잡성은, 예를 들면, "톤들에 의한 파티션" 방식보다 더 단순한 레벨에서 유지시킨다.
본 개시의 주제의 많이 특징들 및 유리함들은 상기 기재된 설명으로부터 명백하며, 그래서 첨부된 청구항들은 그런 특징들 및 유리함들 모두를 커버하도록 의도된 것이다. 또한, 많은 수정들 및 변경들이 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자들에게 쉽게 발생할 것이기 때문에, 벡터 파티셔닝은 예시되고 설명된 정확한 구성 및 동작으로 한정되는 것이 아니다. 그러므로, 상기 설명된 실시예들은 예시적인 것으로서 받아들여져야 하며, 제한하는 것으로서 받아들여서는 안되며, 여기에서의 벡터 파티셔닝은 여기에서 주어진 상세한 내용으로 한정되어서는 안되며, 이제 또는 미래에 예견할 수 있거나 또는 예견할 수 없건 간에, 이어지는 청구항들 및 그 청구항들 전체 범위의 등가물들에 의해서 특히 한정되어야 한다.
따라서, 비록 본 발명이 바람직한 실시예들을 참조하여 특히 설명되었지만, 형상 및 상세한 내용들에서의 변경들 및 수정들이 본 발명의 사상과 범위를 벗어나지 않으면서 만들어질 수 있을 것이라는 것은 본 발명이 속한 기술 분야에서의 통상의 지식을 가진 자에게는 쉽게 명백할 것이다. 첨부된 청구항들은 그런 변경들 및 수정들을 망라하는 것으로 의도된 것이다.

Claims (20)

  1. DSL (Digital Subscriber Loop) 시스템에서 벡터화된 DSL 혼선 소거 (crosstalk cancellation)를 수행하기 위한 방법으로서,
    상기 DSL 시스템에서 D개의 교란 (disturber) 라인들을 정의하는 단계;
    상기 DSL 시스템에서 V개의 희생 (victim) 라인들을 정의하는 단계;
    상기 DSL 시스템에서 T개의 DSL 톤 (tone)들을 정의하는 단계;
    복수의 벡터화 소거 칩들 사이에서 혼선 소거를 단일 기준에 의해서 파티셔닝하는 단계로서, 상기 단일 기준은 상기 교란 라인들, 상기 희생 라인들 그리고 상기 톤들 중 하나인, 파티셔닝 단계; 그리고
    상기 단일 기준을 기반으로 하여 상기 벡터화 소거 칩들 각각이 부분적인 소거를 수행하도록 하는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 DSL 시스템은 N 개의 포트들을 포함하며,
    D = V = N인, 방법.
  3. 제1항에 있어서,
    상기 단일 기준은 상기 희생 라인들이며, 그리고
    상기 부분적인 소거를 수행하는 것은 주어진 희생 라인 v에 대해서 모든 교란들 (d = 0 내지 D-1) 그리고 모든 톤들 (t = 0 내지 T-1)에 대한 부분적인 누적된 곱 (accumulated product)을 계산하는 것을 포함하는, 방법.
  4. 제3항에 있어서,
    상기 시스템은 C개의 벡터화 소거 칩들을 포함하며, 그리고
    각 벡터 소거 칩은 V/C 개의 희생들에 대해 상기 부분적인 소거를 수행하는, 방법.
  5. 제1항에 있어서,
    상기 단일 기준은 상기 교란 라인들이며, 그리고
    상기 부분적인 소거를 수행하는 것은 주어진 교란 라인 d에 대해서 모든 희생들 (v = 0 내지 V-1) 그리고 모든 톤들 (t = 0 내지 T-1)에 대한 부분적인 누적된 곱을 계산하는 것을 포함하는, 방법.
  6. 제5항에 있어서,
    상기 시스템은 C개의 벡터화 소거 칩들을 포함하며, 그리고
    각 벡터 소거 칩은 D/C 개의 교란들에 대해 상기 부분적인 소거를 수행하는, 방법.
  7. 제1항에 있어서,
    상기 단일 기준은 상기 톤들이며, 그리고
    상기 부분적인 소거를 수행하는 것은 주어진 톤 t에 대해서 모든 희생들 (v = 0 내지 V-1) 그리고 모든 교란들 (d = 0 내지 D-1)에 대한 부분적인 누적된 곱을 계산하는 것을 포함하는, 방법.
  8. 제7항에 있어서,
    상기 시스템은 C개의 벡터화 소거 칩들을 포함하며, 그리고
    각 벡터 소거 칩은 T/C 개의 톤들에 대해 상기 부분적인 소거를 수행하는, 방법.
  9. DSL 시스템에서 벡터화된 DSL 혼선 소거를 수행하기 위한 방법으로서,
    상기 DSL 시스템에서 D개의 교란 라인들을 정의하는 단계;
    상기 DSL 시스템에서 V개의 희생 라인들을 정의하는 단계;
    상기 DSL 시스템에서 T개의 DSL 톤 (tone)들을 정의하는 단계;
    복수의 벡터화 소거 칩들 사이에서 혼선 소거를 이중 (double) 기준에 의해서 파티셔닝하는 단계로서, 상기 이중 기준은 희생-교란 파티셔닝 및 교란-희생 파티셔닝 중 하나인, 파티셔닝 단계; 그리고
    상기 이중 기준을 기반으로 하여 상기 벡터화 소거 칩들 각각이 부분적인 소거를 수행하도록 하는 단계를 포함하는, 방법.
  10. 제9항에 있어서,
    상기 DSL 시스템은 N 개의 포트들을 포함하며,
    D = V = N인, 방법.
  11. 제9항에 있어서,
    상기 이중 기준은 희생-교란 파티셔닝이며, 그리고
    상기 희생들은 그룹들로 처음 파티션되며, 각 그룹은 Gd 개의 벡터화 소거 칩들 사이에서 교란들을 기반으로 하여 파티션되며, 그리고 상기 부분적인 소거를 수행하는 것은 주어진 희생들의 그룹에 대해서 D/Gd 개의 교란들 그리고 모든 톤들 (t = 0 내지 T-1)에 대한 부분적인 누적된 곱을 계산하는 것을 포함하는, 방법.
  12. 제11항에 있어서,
    상기 시스템은 Gv 개의 그룹들을 포함하며, 그 그룹 각각은 C/Gv 개의 벡터화 소거 칩들을 가지며, 그리고
    그룹 내 각 벡터 소거 칩은 V/Gv 개 희생들의 그룹에 대해 부분적 소거를 수행하는, 방법.
  13. 제11항에 있어서,
    상기 이중 기준은 교란-희생 파티셔닝이며, 그리고
    상기 교란들은 그룹들로 처음 파티션되며, 각 그룹은 Gv 개의 벡터화 소거 칩들 사이에서 희생들을 기반으로 하여 파티션되며, 그리고 상기 부분적인 소거를 수행하는 것은 주어진 교란들의 그룹에 대해서 V/Gv 개의 희생들 그리고 모든 톤들 (t = 0 내지 T-1)에 대한 부분적인 누적된 곱을 계산하는 것을 포함하는, 방법.
  14. 제13항에 있어서,
    상기 시스템은 Gd 개의 그룹들을 포함하며, 그 그룹 각각은 C/Gd 개의 벡터화 소거 칩들을 가지며, 그리고
    그룹 내 각 벡터 소거 칩은 D/Gd 개 교란들의 그룹에 대해 부분적 소거를 수행하는, 방법.
  15. DSL 시스템 내에 D 개의 교란 라인들, V 개의 희생 라인들을 그리고 T 개의 DSL 톤들을 가진 DSL 시스템을 위한 벡터 소거 시스템으로서,
    제1의 복수의 벡터 소거 칩들; 및
    제2의 복수의 벡터 소거 칩들을 포함하며,
    상기 제1의 복수의 벡터 소거 칩들 및 상기 제2의 복수의 벡터 소거 칩들은 각각 각자의 부분적 소거를 수행하며,
    기준을 기반으로 하여 상기 제1의 복수의 벡터 소거 칩들과 상기 제2의 복수의 벡터 소거 칩들 사이에서 벡터 소거를 파티셔닝하며, 상기 기준은 상기 교란 라인들, 상기 희생 라인들 그리고 상기 톤들 중 하나인, 시스템.
  16. 제15항에 있어서,
    상기 기준은 상기 톤들이며, 그리고
    상기 부분적 소거를 수행하는 것은 주어진 톤에 대해서 모든 희생들 (v = 0 내지 V-1) 그리고 모든 교란들 (d = 0 내지 D-1)에 대한 부분적인 누적된 곱을 계산하는 것을 포함하는, 시스템.
  17. 제15항에 있어서,
    상기 기준은 상기 희생 라인들이며, 그리고
    상기 부분적 소거를 수행하는 것은 주어진 희생 라인 v에 대해서 모든 교란들 (d = 0 내지 D-1) 그리고 모든 톤들 (t = 0 내지 T-1)에 대한 부분적인 누적된 곱을 계산하는 것을 포함하는, 시스템.
  18. 제15항에 있어서,
    상기 기준은 상기 교란 라인들이며, 그리고
    상기 부분적 소거를 수행하는 것은 주어진 교란 라인 d에 대해서 모든 희생들 (v = 0 내지 V-1) 그리고 모든 톤들 (t = 0 내지 T-1)에 대한 부분적인 누적된 곱을 계산하는 것을 포함하는, 시스템.
  19. 제15항에 있어서,
    상기 기준은 희생-교란 파티셔닝이며, 그리고
    상기 희생들은 그룹들로 처음 파티션되며, 각 그룹은 Gd 개의 벡터화 소거 칩들 사이에서 교란들을 기반으로 하여 파티션되며, 그리고 상기 부분적인 소거를 수행하는 것은 주어진 희생들의 그룹에 대해서 D/Gd 개의 교란들 그리고 모든 톤들 (t = 0 내지 T-1)에 대한 부분적인 누적된 곱을 계산하는 것을 포함하는, 방법.
  20. 제15항에 있어서,
    상기 기준은 교란-희생 파티셔닝이며, 그리고
    상기 교란들은 그룹들로 처음 파티션되며, 각 그룹은 Gv 개의 벡터화 소거 칩들 사이에서 희생들을 기반으로 하여 파티션되며, 그리고 상기 부분적인 소거를 수행하는 것은 주어진 교란들의 그룹에 대해서 V/Gv 개의 희생들 그리고 모든 톤들 (t = 0 내지 T-1)에 대한 부분적인 누적된 곱을 계산하는 것을 포함하는, 방법.
KR1020137025006A 2011-02-23 2012-02-23 디 에스 엘 벡터 소거를 파티셔닝하는 시스템 및 방법 KR20140007919A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161446012P 2011-02-23 2011-02-23
US61/446,012 2011-02-23
PCT/US2012/026264 WO2012116147A2 (en) 2011-02-23 2012-02-23 System and method for partitioning dsl vector cancellation

Publications (1)

Publication Number Publication Date
KR20140007919A true KR20140007919A (ko) 2014-01-20

Family

ID=46721441

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137025006A KR20140007919A (ko) 2011-02-23 2012-02-23 디 에스 엘 벡터 소거를 파티셔닝하는 시스템 및 방법

Country Status (6)

Country Link
US (1) US9065534B2 (ko)
EP (1) EP2678997A4 (ko)
JP (1) JP5940098B2 (ko)
KR (1) KR20140007919A (ko)
CN (1) CN103444156B (ko)
WO (1) WO2012116147A2 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2672661B1 (en) * 2011-05-18 2014-09-10 Huawei Technologies Co., Ltd. Vectored-digital subscriber line method, system, single board and digital subscriber line access multiplexer device
WO2012092895A2 (zh) * 2012-02-03 2012-07-12 华为技术有限公司 接入设备端口线路的串扰抵销处理方法、相关设备及系统
US9258410B2 (en) * 2014-05-30 2016-02-09 Alcatel Lucent Methods and systems for determining crosstalk for a joining line in a vectored system
US10069534B2 (en) * 2016-12-07 2018-09-04 Alcatel Lucent Methods and systems for load balancing in vectoring
WO2021050942A1 (en) * 2019-09-11 2021-03-18 Newwire Systems, Inc. Single-ended vectored dsl system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06175986A (ja) * 1992-12-10 1994-06-24 Nippon Telegr & Teleph Corp <Ntt> 行列演算の並列処理方法
US20010004383A1 (en) * 1999-12-14 2001-06-21 Tomas Nordstrom DSL transmission system with far-end crosstalk compensation
US20040090927A1 (en) * 2002-11-07 2004-05-13 Zimmerman George A. Method and apparatus for precode crosstalk mitigation
WO2009152188A2 (en) * 2008-06-10 2009-12-17 Vector Silicon, Inc. Vectored dsl crosstalk cancellation
US20100220823A1 (en) * 2009-02-27 2010-09-02 Ikanos Communications, Inc. Systems and Methods for Mitigating Self-Induced Far-End Crosstalk

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7394752B2 (en) * 2001-11-06 2008-07-01 The Board Of Trusttees Of The Leland Stanford Junior University Joint reduction of NEXT and FEXT in xDSL systems
EP1414164A1 (en) * 2002-10-25 2004-04-28 Alcatel Method for cross-talk cancellation
JP4881736B2 (ja) * 2003-05-16 2012-02-22 マーベル インターナショナル リミテッド イコライゼーションおよびクロストーク緩和の方法および器具
US7499487B2 (en) * 2004-12-01 2009-03-03 Texas Instruments Incorporated System and method to mitigate interference in DSL systems
CN101136659B (zh) * 2006-08-28 2012-01-25 华为技术有限公司 一种xDSL多线对串扰消除的方法、系统及设备
CN101262253B (zh) * 2007-03-06 2011-11-09 华为技术有限公司 解决数字用户线路中串扰问题的方法及串扰消除装置
US20080285740A1 (en) * 2007-04-10 2008-11-20 Ikanos Communication, Inc., A California Corporation Method and apparatus for crosstalk estimation
US8081560B2 (en) * 2007-08-31 2011-12-20 Alcatel Lucent Method and apparatus for self-tuning precoder
CN101222244B (zh) * 2008-01-23 2012-05-23 中兴通讯股份有限公司 串扰消除方法及装置
ATE519281T1 (de) * 2008-06-16 2011-08-15 Alcatel Lucent Vorrichtung und zugehöriges verfahren zur übersprechnungbeurteilung
EP2297912A4 (en) 2008-07-01 2016-11-30 Ikanos Communications Inc VECTORED DSL WITH REDUCED MEMORY
WO2010075559A1 (en) * 2008-12-23 2010-07-01 Actelis Networks Ltd. System and method for digital subscriber loop crosstalk cancellation
ATE540484T1 (de) * 2009-06-24 2012-01-15 Alcatel Lucent Gemeinsame signalverarbeitung über mehrere leitungsendkarten
US8498408B2 (en) * 2009-06-29 2013-07-30 Alcatel Lucent Crosstalk estimation and power setting based on interpolation in a multi-channel communication system
US20110007623A1 (en) * 2009-07-10 2011-01-13 Futurewei Technologies, Inc. Method for Estimating the Strength of a Crosstalk Channel
WO2012018289A2 (en) * 2010-08-05 2012-02-09 Telefonaktiebolaget Lm Ericsson (Publ) Method in a communication system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06175986A (ja) * 1992-12-10 1994-06-24 Nippon Telegr & Teleph Corp <Ntt> 行列演算の並列処理方法
US20010004383A1 (en) * 1999-12-14 2001-06-21 Tomas Nordstrom DSL transmission system with far-end crosstalk compensation
US20040090927A1 (en) * 2002-11-07 2004-05-13 Zimmerman George A. Method and apparatus for precode crosstalk mitigation
WO2009152188A2 (en) * 2008-06-10 2009-12-17 Vector Silicon, Inc. Vectored dsl crosstalk cancellation
US20100220823A1 (en) * 2009-02-27 2010-09-02 Ikanos Communications, Inc. Systems and Methods for Mitigating Self-Induced Far-End Crosstalk

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
국제공개공보 WO2009/152188(2009.12.17.) 1부. *

Also Published As

Publication number Publication date
WO2012116147A3 (en) 2012-12-06
JP2014508474A (ja) 2014-04-03
EP2678997A2 (en) 2014-01-01
CN103444156A (zh) 2013-12-11
EP2678997A4 (en) 2017-11-15
CN103444156B (zh) 2016-09-07
WO2012116147A2 (en) 2012-08-30
JP5940098B2 (ja) 2016-06-29
US9065534B2 (en) 2015-06-23
US20130051488A1 (en) 2013-02-28

Similar Documents

Publication Publication Date Title
US9584182B2 (en) Vectored DSL crosstalk cancellation
KR101567118B1 (ko) 감소된 메모리 벡터 dsl
US8897347B2 (en) Alien interference removal in vectored DSL
EP1914905B1 (en) Vectored digital subscriber line system having modular vectoring arrangements
US9065534B2 (en) System and method for partitioning DSL vector cancellation
EP2963904A1 (en) Enhanced vectoring operation with single loop unbundling
EP3113378B1 (en) Method, device and system for cancelling circuit crosstalk in dsl system
EP1998464A1 (en) Method and device for data processing and communication system comprising such device
US9379770B2 (en) Methods and systems for activating and deactivating communication paths
EP1851872B1 (en) Method and device for connecting an additional subscriber to a telephone exchange
US10069534B2 (en) Methods and systems for load balancing in vectoring

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application