KR20000076734A - 고유의 절단 및 사사오입 연산을 이용하여 신호 처리를최적화하는 시스템 및 방법 - Google Patents

고유의 절단 및 사사오입 연산을 이용하여 신호 처리를최적화하는 시스템 및 방법 Download PDF

Info

Publication number
KR20000076734A
KR20000076734A KR1020000009370A KR20000009370A KR20000076734A KR 20000076734 A KR20000076734 A KR 20000076734A KR 1020000009370 A KR1020000009370 A KR 1020000009370A KR 20000009370 A KR20000009370 A KR 20000009370A KR 20000076734 A KR20000076734 A KR 20000076734A
Authority
KR
South Korea
Prior art keywords
lsb
bits
bit
signal
stage
Prior art date
Application number
KR1020000009370A
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 KR20000076734A publication Critical patent/KR20000076734A/ko

Links

Classifications

    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02DFOUNDATIONS; EXCAVATIONS; EMBANKMENTS; UNDERGROUND OR UNDERWATER STRUCTURES
    • E02D5/00Bulkheads, piles, or other structural elements specially adapted to foundation engineering
    • E02D5/22Piles
    • E02D5/52Piles composed of separable parts, e.g. telescopic tubes ; Piles composed of segments
    • E02D5/523Piles composed of separable parts, e.g. telescopic tubes ; Piles composed of segments composed of segments
    • E02D5/526Connection means between pile segments
    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02DFOUNDATIONS; EXCAVATIONS; EMBANKMENTS; UNDERGROUND OR UNDERWATER STRUCTURES
    • E02D2600/00Miscellaneous
    • E02D2600/20Miscellaneous comprising details of connection between elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Structural Engineering (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Life Sciences & Earth Sciences (AREA)
  • Mining & Mineral Resources (AREA)
  • Paleontology (AREA)
  • Civil Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Digital Magnetic Recording (AREA)
  • Analogue/Digital Conversion (AREA)

Abstract

본 발명은 누산 등의 신호 처리 기능을 갖는 디바이스의 동작을 최적화하는 시스템 및 방법을 제공하는 것으로, 바람직한 실시예로서는 디지털 유한 임펄스 응답(FIR) 필터(100)가 있다. 이 시스템 및 방법은 필요한 게이트의 수를 줄임으로써 칩 상에 필요로 하는 실리콘 영역을 상당량 줄일 수 있다. 적절한 처리를 위해 필요한 최대 비트 수는 사전에 계산되는 것으로, 출력 신호를 기술하는데 필요한 비트 수이다. 출력에서 필요한 비트 수는 시스템 아키텍쳐에 의해 결정되는 모듈로 B를 나타내는 수만큼 줄어든다. B에 대해서 통상 이용되는 값은 5 및 6이다. 각 단에서의 내부 표현식 내의 하나의 MSB 비트를 제거하고 두개의 최하위 비트(LSB)를 절단하여, 8탭 FIR 필터(100)의 각 단에서 3번째 LSB를 사사오입함으로써, 예를 들면, 출력 LSB의 우수리보다 적은 에러를 초래하면서 하드웨어를 상당히 줄 일 수 있다.

Description

고유의 절단 및 사사오입 연산을 이용하여 신호 처리를 최적화하는 시스템 및 방법{A SYSTEM AND METHOD FOR OPTIMIZING SIGNAL PROCESSING VIA A UNIQUE TRUNCATING AND ROUNDING OPERATION}
본 발명은 신호를 구분적으로 처리하고 합산하는 시스템을 구축하여 운용하는 시스템 및 방법에 관한 것이다. 특히, 본 발명은 디지털 신호의 절단(truncation) 및 사사오입(rounding)의 특정한 조합에 관한 것이다.
유한 임펄스 응답(FIR) 필터는, 입력 샘플을 이용하여 유한 개수의 출력 샘플을 생성하는 디바이스이다. 유한 개수의 샘플이 생성되면, FIR 필터 출력은 그의 특정 입력 샘플에 더 이상 영향을 받지 않는다.
보통 이용되는 FIR 필터는 디지털 FIR 필터이다. 공통 애플리케이션을 선택할 경우, 그러한 필터는 디지털 신호 처리기(DSP)로서 고려할 수 있다. 그러나, 이 FIR 필터가 디지털 신호에 대해서만 동작하는 것을 의미하는 것은 아니다.
"디지털 신호"는 이산 개수의 값을 갖는 이산 시간 신호이다. 이와는 달리, "아날로그 신호"는 무한 개수의 값, 즉 연속적인 시간 또는 이산 시간을 갖는 신호이다. 디지털 신호는 아날로그 신호를 샘플링하고 양자화하여 생성될 수 있다. 아날로그 신호를 샘플링하는 것은, 신호를 이산 주기로 단속(chopping)하고 이들 주기중에서 선택된 주기의 신호로부터 진폭값을 포착하는 것을 말한다. 포착된 값은 샘플링 주기 동안의 디지털 신호의 값이 된다. 그와 같이 포착된 값은 통상 "샘플"이라고 칭한다.
양자화는 유사한 디지털 신호를 대표할 수 있는 값으로 샘플을 근사화하는 것을 말한다. 예를 들면, 샘플은 디지털 신호로 특징지어 지는 두개의 값 사이에 놓인다. (절대값에서) 샘플에 가장 가까운 값이 그 샘플을 대표하는데 사용될 수 있고, 또는 샘플은 샘플이 놓이는 두개의 값중에서 보다 낮은 값으로 대표될 수 있다. 양자화가 끝난 후, 아날로그 신호로부터의 샘플은 디지털 신호로서 전달될 수 있다. 이것은 결과 신호로서 이 신호에 따라 FIR 필터는 동작한다.
구어적으로, DSP는 (디지털 형태로 수신한) 입력 신호를 디지털 출력 신호로 변환한다. 보통 사용하는 디지털 FIR 필터에서의 변환은 입력 신호에서 원하지 않은 스팩트럼 부분을 필터링하는 것이다. 원래의 아날로그 신호를 필터링할 경우, 신호는 다중 정현파 신호의 합으로서 표현될 수 있다. 각 정현파 신호는 특정하고 고유한 주파수로 발진한다. 필터링은 수신 신호로부터 다른 주파수에는 손상을 주지않으면서 임의의 주파수를 제거하는데 사용된다.
트랜스버설 필터(transversal filter)는 FIR 필터가 클래스를 갖는 필터로서, 유한 개수의 과거 샘플을 현재의 샘플과 함께 사용하여 각 출력 샘플을 생성한다.
통상적으로, FIR 필터는 원하는 신호의 필터링 프로그래밍을 위한 명령어 집합(즉, 실제로는 계수) 및 하드웨어 설계를 사용한다. 프로그램은 실행될 때 특정 연산(즉, 신호 변환)을 수행하는 명령어의 리스트이다. 디지털 FIR 필터에서 실행되는 프로그램은 대개 실시간으로 행해진다. 실시간 프로그램은 소정의 시간 간격 내에서 실해되어야 하는 프로그램을 말한다. 프로그램이 긴주기의 시간 또는 단주기의 시간에서 실행되는지에 관계없이, 프로그램을 실행하는 결과는 동일하다. 그러나, 실시간 프로그램이 "허용된" 시간 간격보다도 긴 시간 내에서 실행되면, 이들 프로그램은 동일한 결과를 더이상 계산하지 않는다.
프로그램이 다음 샘플이 제공되기 전에 샘플 조작을 완료할 수 없으면, 그 프로그램은 결국 샘플을 손실하기 시작할 것이다. 손실된 샘플은 처리되지 않아, FIR 필터의 출력 신호는 FIR 필터에 (샘플링된) 입력 신호로 제공된 모든 정보를 더이상 포함하지 않게 된다.
보통, FIR 필터는 신호에 대한 특정 변경을 실시간으로 수행하기 위해 고정적으로 프로그램된다. FIR 필터는 다음 샘플이 제공되기 전에 일정한 회수의 변경을 실행할 수 있어야 한다.
FIR 필터를 특징짓는 고려 사항으로서, 처리량외에도 설계 비용을 들 수 있다. 하나의 중요한 비용 요인은 FIR 필터가 차지하는 실리콘 영역이다. 비교적 작은 실리콘 칩 상에 제조되는 필터들은 보통 보다 큰 실리콘 칩을 필요로 하는 필터들에 비해 저가이다. 따라서, 제조가 용이하고 비용도 저렴한 FIR 필터가 요구된다.
예를 들면, 모뎀용으로 사용되는 저속 애플리케이션의 FIR 필터 중에는, 명령어 집합의 사이즈를 줄여 명령어 메모리의 유효 사이즈를 증가시키면서 칩 영역을 유지할 수 있는 것도 있다. 명령어 집합의 사이즈를 줄이는 방법 중의 하나는 가능한 한 적은 비트로 정보를 부호화하는 것이다. 하지만, 이들 명령어는 명령어 중의 어느것이 현재 실행되고 있는지를 판단하기 위해서 복잡한 디코딩 회로를 필요로 한다. 그러한 디코딩 회로는 또한 넓은 실리콘 영역 또는 상당 양의 시간, 또는 이들 모두를 필요로 할 수 있다. 절단이나 사사오입 또는 이들 모두를 이용하여 필요한 연산의 회수를 줄이는 프로세스 방법은, 실리콘 영역을 줄이면서 성능을 최적화할 수 있다.
예를 들면, 하드 디스크 드라이브와 같은 대용량 데이터 저장 시스템을 갖는 애플리케이션과 같이, 높은 처리량을 유지하는 애플리케이션은 보다 적은 비트가 처리될 필요가 있을 때, 처리 속도를 증가시킬 수 있다는 점에서 장점이 있다. 자기 디스크 저장 시스템에 있어서, 예를 들면, 정보는 자기 편차의 패턴을 디스크 상에 유도함으로써 기록되어 정보 부호화가 행해진다. 자기 편차는 디스크 상의 동심원의 트랙을 따라 기록된다. 소정의 트랙을 따른 선형 밀도는 디스크 상에 위치한 트랙의 개수와 함께 항상 증가한다.
그러나, 기록 밀도가 증가하면, 일부의 심볼간 간섭(ISI)으로 인해 디스크로부터의 자기 리드백(readback) 신호는 판독하거나 해석하기가 점점 어렵게 된다. ISI는, 처리 시간 중복과 개개의 트랙을 따라 인접하는 자속 패턴 간의 간격뿐만 아니라 인접하는 트랙상의 자속 간의 간격이 축소되어 생긴다. 특히, 교환형 디스크를 갖는 드라이브의 경우, 각 디스크는 제조 허용 범위내에서 당연히 발생하는 편차로 인해, 자신의 불규칙성을 리드백 신호로 도일할 수 있다. 또한, 불규칙성은 각 디스크에서 항상 균일한 것은 아니지만, 헤드에 대해서 데이터 변환기의 반경 위치에 따라 어느 정도 좌우된다.
(CMOS IC를 사용하는 경우로 가정하여) 종래의 필터 회로 구현에서 소비되는 동적 전력은 다음과 같은 관계로 주어진다.
여기서,
C 〓 IC 칩에서의 게이트의 평균 로딩 커패시턴스, μf
V 〓 전력 공급 전압 레벨, v
f 〓 동작 주파수, MHz
NGate〓 주파수 f에서 스위칭되는 게이트의 개수
성능은 일반적으로 보다 높은 동작 주파수 f에서 향상되지만, 전력 손실은 더욱 많아진다. 식(1)로부터, 전력 소비는 또한 게이트의 개수에 비례한다.
FIR 필터의 통상의 IC 실시예는 탭 지연선(tapped delay line)으로서, 필터를 특징짓는 각 계수는 지연선에 따른 개개의 "탭"에 대응한다. 게이트의 개수는 탭의 개수에 비례한다. 탭의 개수가 증가함에 따라, 대기 시간(latency)(클록 주기 지연)이 길어진다.
설계 공학자에게 중요한 FIR 필터의 특징중에는, 위상 특성, 안정성(FIR 필터가 본래 안정할지라도) 및 계수 양자화 효과가 있다. 설계자가 처리하여야 할 것은 유한 워드 길이와 필터 성능을 해결하는데 있다.
무한 임펄스 응답(IIR) 필터 등의 필터 옵션과 비교할 때, FIR 필터만이 선형 위상 응답을 제공할 수 있고, 고유적으로 안정하며, 즉 FIR 필터의 출력은 이전 입력의 가중된 유한 합계이다. 부가적으로, FIR 필터는 일반적인 나이키스트 필터(Nyquist filter)보다는 상당히 낮은 차수를 이용하여, 필요로 하는 형상 계수(shape factor)를 구현한다.
계수 양자화 에러는, 실제의 시스템에 사용되는 "유한 정밀(finite precision)" 프로세서에 적합하도록 이상적인 계수를 근사화할 때 생긴다. 근사화된 계수로 인한 최종 결과는 주파수 응답의 이상값으로부터의 편차이다.
유한 워드 길이로 인한 양자화 에러 소스는 다음과 같은 것이 있다.
·입력/출력(I/O) 양자화
·필터 계수 양자화
·비상관 사사오입(절단) 노이즈
·상관 사사오입(절단) 노이즈
·동적 범위의 제약
디지털 필터에 있어서, 연속적인 시간 입력 신호의 이산적인 디지털 형태로의 아날로그-디지털(A/D) 변환에 관련된 입력 노이즈와 디지털-아날로그 변환에 관련된 출력 노이즈는 불가피하다. 그러나, 이러한 노이는의 더이상의 불가피한 것이 아니다.
비상관 사사오입 에러는 대부분 승산 에러에 의해서 발생한다. 예를 들면, 적당한 비트수를 처리하면서 승산 과정시에 소정의 위치값(place value)에 대한 정확도를 유지하기 위해서, 저장될 유한 개수의 비트가 결정되어야 한다. 일단, 시스템 아키텍쳐에 따라 개수가 정해지면, 어떤 잠정적인 또는 부분적인 적(product)의 나머지에서 최하위 비트(LSB)중의 몇개가 절단된다. 이로 인해서, 남은 연산에 의해서 "승산" 노이즈가 발생한다.
상관 사사오입 노이즈는 디지털 필터 내에 형성된 적이 절단될 때 생긴다. 또한, 상관 사사오입은, "리미트-사이클 효과(limit-cycle effect)" 또는 소진폭 발진을 야기시킨다. 적당한 계수 워드 길이와 동적 범위를 갖는 시스템의 경우에는, 그러한 후자의 문제는 무시될 수 있다. 그러나, 이들 오버플로우 및 리미트-사이클 효과에 의해서, 디지털 필터는 비선형 연산을 하게 된다.
배율(scaling parameters)과 같은 동적 범위의 제약 조건은 유한 워드 길이 레지스터의 오버플로우 및 언더플로우를 방지하는데 이용된다. FIR 필터에 경우, 출력의 오버플로우는 에러를 생성한다. 입력이 최대 진폭인 1(unity)을 가지면, 최악의 경우의 출력은 다음과 같다.
여기서,
Cmax 〓 최악의 경우의 계수
s 〓 배율
x(n) 〓 입력
y(n) 〓 출력
y(n)를 보증하는 것은, 필터의 이득 또는 입력 중의 어느 것이 "s" 만큼 축소되어야 하는 것을 의미하는 우수리(fraction)이다. 이득을 줄이는 것은, 필터 계수를 예를 들면 16비트의 계수가 더이상 유효하게 사용되지 않은 점까지 스케일링되는 것을 의미한다. 이러한 스케일링의 또 다른 결과는 높은 양자화 에러로 인해 주파수 응답을 저하시키는 것이다. 보다 양호한 대체안으로서는, 입력 신호를 스케일링하는 것이다.
5 이상의 계수를 갖는 고속 FIR의 전형적인 예로서, 타입Ⅱ FIR이 있다. 타입Ⅱ FIR은 고가의 승산/가산(MAC) 누산 단의 어레이에 기초하고 있다. MAC를 이용하는 종래의 시스템은 소정의 부분 적 정확도를 얻기 위해서 게이트의 수를 최소로 하여야 하는 제약이 있다. 예를 들면, 6비트의 입력 신호를 처리하는 8 탭 FIR 필터의 경우는 적을 정확하게 누산하기 위해서 3번째 탭이후에 최소 13비트를 필요로 한다. 이들 각 비트가 계속 유지되면, 필요한 게이트의 개수는 정확도는 향상되었다 하더라도 실리콘 영역에 충격을 주게 된다.
또한, FIR 필터의 디지털 구현은 필터의 클록 사이클에 의해 구축되는 리클록킹(reclocking) 단 간에 삽입될 수 있는 최대수의 논리 게이트에 의해 제한된다. 그러므로, 소정의 디지털 프로세스에 있어서, 최소 프로세스 시간은 임계 경로를 통한 전파 시간에 의해서 설정된다. 프로세스 과정을 고속으로 실행하기 위해서는, 임계 경로는 보다 높은 클록 속도에서 처리될 수 있는, 즉, 짧은 클록 사이클내에서 처리될 수 있는 복수의 단축 경로로 세분화된다.
가장 간단한 디지털 FIR 필터는 "부호가 ??은 2의 보수" 기수법(numbering system)을 이용한다. 이 기수법은 단순하여 저속 FIR 필터에 특히 적합하다. 다른 디지털 FIR 필터는 4기저(radix-4) 기수법을 이용하는 것으로, 약간의 개선점을 제공할지라도, 예를 들면, 고속 판독 채널에 범용으로 사용되는 6비트 2진 데이터 포멧을 충분히 이용하지는 못한다. 마지막으로, 아키텍쳐 중에는, 오로지 계수를 부호화할 목적으로 8기저 기수법을 이용하는 아키텍쳐도 있다.
FIR 필터를 이용하는 종래의 고속 시스템 중에는, 아날로그/디지털(A/D) 변환기 전단에 아날로그 FIR 필터를 사용하는 시스템도 있다. 이 시스템은 FIR 필터의 대기 시간이 샘플링 타이밍 회복 루프에서 누산되지 않도록 한다. 이러한 방법은 근본적으로 디지털 집약형 디자인에는 적합하지 않다.
"파이프라인 전송(pipelining)" 방법은 통상적으로 고 입력 데이터 전송 속도에서 보다 양호한 FIR 성능을 얻기 위해서 사용된다. 그러나, 이러한 방법을 이용하는 시스템의 비용은 잠재적으로 증가한다. 신형 시스템에 사용되는 것과 같은 고속에서 종래의 파이프라인 전송 방식은 체감 복귀(diminishing returns) 법칙을 따르게 된다. 그렇다면, 파이프라인 전송 "오버헤드"는 보다 높은 클록 속도로부터 얻어진 상당 부분의 이점을 손실하게 된다. 이 오버헤드는 모든 파이프라인 전송 커맨드에 대한 필요한 래칭 또는 리클록킹 단로 구성된다. 일반적으로, 1레벨의 파이프라인 전송에 대한 성능 개선은 2보다 적지만, 하드웨어 비용 상승은 2보다 크다. 이러한 것은 고속 클록 레이트의 입력 데이터에서 발생한다.
현재의 디자인 중에는, 타이밍 회복 루프에서 FIR 필터를 갖고, 처음부터 대기 시간을 증가시키고, 예를 들면, 타이밍 회복 루프 및 이득 루프와 같은 매립 루프의 안정성을 저하시키는 디자인도 있다.
FIR 필터를 이용하는 자기 저항(MR) 헤드에서는, 그들의 고유 응답 비선형성에 따라, 이러한 제약 조건은 점점 허용할 수 없게 되고 있다. 충분한 디지털 방식의 해결책을 갖는 최신의 방법이 있지만, 이러한 방법은 일반적으로 상당히 복잡하고, 예를 들면, 실리콘 칩 상에서 불균형의 넓은 영역을 차지한다.
FIR 필터의 성능을 향상시키기 위해서 여러 방법이 제안되어 있다. 그 중의 하나의 방법은 디지털 신호를 대수 값으로 변환함으로써 승산기를 사용하지 않는다. 두번째의 보다 전통적인 기법은 오버샘플링법을 사용한다. 또 다른 방법은 다중화의 편차를 이용한다. 한 예는, 필터가 교번 샘플의 다중화된 출력을 제공하도록, 탭 지연선으로의 입력으로서 제공된 다중화 데이터 스트림을 사용한다.
높은 동적 범위를 갖는 데이터 스트림에 대해서, 샘플링된 입력 신호를 2개의 부분으로 분리하고, 분리된 신호를 각각 별도의 필터로 어드레스하는 방법이 제안되어 있다. 물론, 이 방법은 연산의 회수와 필요로 하는 하드웨어를 가중시킨다.
비교적 저속의 애플리케이션에 적합하도록 하드웨어의 복잡도와 계산량을 줄이기 위해서, 모뎀과 같이, 종속 결합 배열된 데이터 레지스터는 디지털 부호화 데이터를 수신하고 각 샘플을 순차적으로 기록한다. 각 데이터 레지스터는 디지털 샘플의 코드 폭보다 두배 큰 데이터 용량을 가지며, 각 채널이 I 및 Q 데이터 모두를 저장하도록 한다. 필요한 데이터 용량이 입력보다 2배 크기 때문에, 이것이 사용될 수 있는 디바이스의 데이터 전송 속도는 비교적 느리다.
상기한 방법 중에는, 본 발명의 바람직한 실시예에서 필요로 하지 않은 복잡도를 추가로 유도하는 것도 있는데, 고속 애플리케이션에는 적합하지 않을 수 있다.
본 발명의 바람직한 실시예는, 일반적으로, 2진 산술 연산의 적을 절단하고 사사오입하는 소정의 방법을 이용하여, FIR 필터와 누산 기능을 갖는 트랜스버설 산술 회로의 연산을 최적화하는 시스템 및 방법을 제공한다. 본 발명의 방법을 이용하는 고유의 절단 및 사사오입 기법을 통해서, 하드웨어는 단순화되고 필요로 하는 실리콘 영역도 축소된다. 게다가, 허용 정확도가 유지되고 전력 소비도 절감된다.
상술하면, 6비트 계수의 "1/32" 해상도를 갖는 8 탭 디지털 FIR 필터에 대해서, 본 발명의 방법은 필요한 14비트의 누산 신호를 8개 탭의 각각에서 처리될 때 절단 및 사사오입한다. 게다가, 사사오입은 필요에 따라 출력단에 적용될 수 있다. (또한, 오버플로우에 대한 낮은 허용 확률을 설정하고 그의 결과값을 계산함으로써, 이론상 필요한 14비트의 누산 신호는 시스템의 필요 조건에 따라, 13비트 또는 그 보다 적은 비트로 줄어들 수 있다. 바람직한 실시예에 따라 절단 및 사사오입이 조합되어 함께 사용되면, 하나 이상의 최상위 비트(MSB)의 초기 제거에 의해서, "최적으로 적은" 수의 비트가 각 단에서 처리될 수 있다.) 계산 및 시뮬레이션을 통해서 2개 또는 3개의 최하위 비트(LSB)가 절단될 수 있고, 바로 다음의 LSB 값, 즉, 3번째 또는 4번째 LSB로부터의 LSB값이 1 또는 0에 가장 가까운 값으로 사사오입되는 것을 설명한다. 사사오입될 비트가 0이면, 이 비트는 버려지거나 절단되는 것에 주목하길 바란다.
바람직한 실시예에 있어서, 이 "truncate q-round 1" 해결책은 특히 13비트를 필요로 하는 8탭 FIR에 최적화되어 (낮은 확률의 오버플로우를 갖는) 누산 결과 신호를 기술한다. 여기서, q는 낮은 정수가 될 수 있고, 예를 들면, 2 또는 3이다. 그 밖의 FIR 필터 또는 상이한 개수의 단를 갖는 유사 회로는 최종 출력 LSB의 값의 우수리 정도로 허용가능한 바이어스(또는, 평균 dc 오프셋, 이하 "바이어스"라 칭한다)를 초래하는 절단 및 사사오입의 조합을 이용하여 최적화될 수 있다.
각 단에서 균일한 절단 및 사사오입 연산을 이용하는 것 외에도, 절단 및 사사오입 연산은 상이한 단의 회로 연산에서 상이한 조합이 되도록 개별화될 수 있다.
몇몇 애플리케이션 중에는, 보다 적은 비트가 후단보다는 초기단에서 절단되도록, 균일하지 않은 절단 및 사사오입 연산을 실행하는 것이 바람직할 수 있다. 선택적인 최종 출력 사사오입이 행해지고 있다면, 최종 단는(외부 출력에 대해서 1/2의 가중치를 갖는) 하나의 서브 LSB 비트만을 필요로 할 수 있다. 다음단에 대해서 높은 수치의 정확도가 필요하면, 각 선행 단은 사사오입을 위해 2개 이상의 LSB 비트를 필요로 한다. 따라서, 어떤 애플리케이션에서는, 각 선행 단이 출력의 수치 정확도를 유지하기에 유용한 2이상의 LSB 를 갖도록 하는 것이 유익할 수 있다. 이러한 실시예는 또한 본 발명에 의해 해결된다.
게다가, 모든 단이 종료되면 최종의 사사오입 연산은 시스템 성능을 후속 연산에서 향상시키는데 사용될 수 있다. 이 실시예도 또한 본 발명에 의해 해결되도록 의도한 것이다.
본 발명의 주된 이점 중에는 다음과 같은 것이 있다.
·필요한 칩 실리콘 영역의 상당한 감소
·제조 비용의 절감
·구성 요소의 감소
·연산 속도의 용이한 증가
·대기 시간의 용이한 감소
·오버헤드 감소
도 1은, 본 발명의 바람직한 실시예와 관련하여 사용되는, 각 단에서의 승산/가산 누산 기능(MAC)을 나타내는 샘플 8탭 FIR 필터,
도 2는, 본 발명이 실시될 수 있는 환경을 나타내는 대용량 데이터 저장 시스템 및 판독 블록도,
도 3은, 바람직한 실시예에 따른 판독 채널 회로의 블록도,
도 4는 절단만을 행한 결과로서의 바이어스 플로트 도면 및 사사오입을 행한 결과로서의 바이어스 플로트 도면,
도 5a는, (암묵적인 절단을 행한) 2비트 사사오입의 결과를 도시한 그래프,
도 5b는, 2비트 절단만을 행한 결과를 나타내는 그래프,
도 6은, 절단 및 사사오입 효과의 중첩을 나타내는 그래프.
도 7a는, 사사오입을 이용하거나 이용하지 않고, (설명의 목적상) 적은 수의 LSB 비트만의 부분 적에 대한 연산, 부분 적 합산에 대한 3개의 LSB 비트의 절단 및 누산 구조를 나타내는 도면,
도 7b는, 사사오입을 이용하거나 이용하지 않고, (설명의 목적상) 적은 수의 LSB 비트만의 부분적에 대한 연산, 부분 적 합산에 대한 2개의 LSB 비트의 절단 및 누산 구조를 나타내는 도면,
도 8a는, 각 단에서 3비트를 절단하고 1비트를 사사오입한 결과로서, (설명의 목적상) 적은 수의 LSB 비트만의 부분적에 대한 연산을 나타내는 도면,
도 8b는, 각 단에서 2비트를 절단하고 1비트를 사사오입한 결과로서, (설명의 목적상) 적은 수의 LSB 비트만의 부분적에 대한 연산을 나타내는 도면,
도 8c는, 충분한 해상도, 즉, 절단이나 사사오입없이, (설명의 목적상) 적은 수의 LSB 비트만의 부분 적에 대한 연산을 나타내는 도면,
도 9는, 바람직한 실시예에 따른 설계 방법을 설명하는 흐름도.
〈도면의 주요 부분에 대한 부호의 설명〉
100: FIR 필터
101: 노드
103: 승산기
104: 합산기
105: 계수
1002: 전치 증폭기
1003: 판독 채널 회로
1004: 디지털 신호 처리 프로세서
특히, 보다 높은 데이터 전송 속도에서, 승산 단계의 수를 최소화하는 방법은 노이즈를 줄이고 고유의 정확도를 증가시키는 것은 자명할 것이다. 다른 실시예는 일반적인 경우에, 절단 및 사사오입 프로세스에 의해서 생성된 에러가 최소화될 수 있다면 개선점이 더욱 실현될 수 있다. 이들은 "오버플로우 발진"의 클래스를 갖는다. 오버플로우는 큰 진폭의 발진을 야기시키는 가산에 의해서 생긴다. 또한, 노이즈를 제거하기 위한 하나의 대체안은 입력 신호를 스케일링하는 것이다. 이러한 스케일링에 의해서, 신호 대 잡음비(SNR)은 감소되지만, 사용된 배율은 통상 2보다 작아, SNR에 크게 영향을 주지 않는다. 이러한 유형의 스케일링 기법에 대한 대체안의 경우, 절단이나 사사오입 프로세스에 의해서 생성된 양자화 에러가 일반적인 경우에 최소화될 수 있다면 개선점이 실현될 수 있다.
k개의 계수를 갖는 FIR 필터의 클래스는 다음의 관계를 만족한다.
여기서,
C(j) 〓 입력 샘플로서의 X(n)과 출력 샘플로서의 Y(n)을 갖는 필터의 계수
Y(n) 〓 간격 j 동안의 적의 합계(j〓0,…,k-1)
j 〓 인덱스
X(n) 〓 가장 최근의 입력 샘플 값
X(n-j) 〓 C(j)와 관련된 샘플값
물론, 상기의 관계의 일련의 구현은, 모든 출력 샘플에 대해서, k개의 적과 k-1개의 합계를 순차적으로 수행할 필요가 있음을 의미한다. 수리적으로, 이것은 필터의 k개 계수로 이루어지는 벡터 또는 행과, k개의 연속적인 입력 샘플로 이루어지는벡터 또는 열의 적이다. 따라서, 이를 위해서는, 샘플 사이즈보다 적어도 k배 작은 주기를 갖는 클록 신호를 제공할 필요가 있다.
도 1을 참조하면, 본 발명의 바람직한 실시예에 따른, FIR 필터(100)는 각 탭에서 실행되는 승산/누산 연산에 관련된 8개의 노드(101)를 갖는다. 필터(100)는 또한 8개의 종속 결합된 지연 요소 D0∼D7(102)를 갖는다. 8개의 노드(101)와 지연 요소 D0∼D7(102)는 8개의 승산기 M0∼M7(103)에 접속되어 있다. 승산기(103)의 출력은 합산기 S0∼S6(104)에 접속되어 8개의 지연 요소(102)를 통해 누산된다. 승산기 M0∼M7(103)에 대한 계수 C0∼C7(105)는 계수 메모리(도시하지 않음)로부터 제공된다.
도 2는, 아날로그 신호가 판독되는 대용량 데이터 저장 시스템(1000)의 샘플을 도시하는 것으로, 이 시스템은 다른 회로 요소 중에서 FIR 필터(도 2에는 도시하지 않음)를 갖는 판독 채널 회로(1003)에 입력될 아날로그 신호(1001)를 증폭하는 전치 증폭기(1002)와, 후단에서 아날로그/디지털 변환후, FIR 필터로의 입력시 n비트로 구성되는 신호와 FIR 필터내에서 처리되는 p 비트를 처리하여, s비트로 줄어든 신호(1004)를 출력하는 판독 채널 회로(1003)로 구현된다. 여기서, p 및 s는 사전에 계산되며, FIR 필터(도시하지 않음)는 r개의 단(도시하지 않음)과, FIR의 승산 및 가산 누산(MAC) 서브 시스템(도시하지 않음)에서 누산된 처리된 p비트 신호를 수용하기에 충분한 접속을 갖는 구조를 채용하여 신호(1004)를 디지털 신호 처리 프로세서(1004)로 출력한다.
도 3은, 도 2의 판독 채널 회로(1003)의 상세한 블록도이다. 아날로그 회로(71)는 증폭 신호를 아날로그/디지털 변환기(ADC)(72)에 전송하며, ADC(72)로부터의 6비트의 디지털 입력 신호는 FIR 필터(75)에 의해 처리되어 양자화된다. FIR 필터(75) 내에서 내부적으로 처리하는데 필요한 비트수 p는, 소정의 무시가능한 오버플로우 발생 확률과 허용가능한 절단/사사오입 에러 레벨에 기초하여 사전에 계산된다. FIR 필터는 계수 Ci(74)를 이용하며, 이 계수는 사전에 결정되며 메모리(도시하지 않음)에 별도로 저장되어 있다. 여기서, i〓0, 1,…,7의 범위를 갖는다. FIR 필터(75)는, 최소 수의 비트s를 이용하여 기술되며, 출력값의 예상 범위를 커버하는데 적합한 8비트 신호(76)를 출력한다. 출력 신호는 검출기(77)에 의해 검출되어 디지털 신호 처리 프로세서(1005)로 전송된다. 피드백 라인(43)은 또한 위상 및 시간과 진폭 간의 데이터 동기를 보장하기 위해서 설정된다. 이 예에서, 출력 신호(76)는 대역/에러 검출 회로(78)에 입력되며, 이 대역/에러 검출 회로(78)는 입력 신호를 두개의 신호로서 병렬 처리하여 5개의 고차 비트(79)와 3개의 저순위 비트(80)의 출력 신호로서 출력한다. 그후, 이들 2개의 신호(79, 80)는 타이밍 그라디언트(TG) 회로에 입력된 다음, ADC(72)에서의 최종 동기 확립을 위해 위상 동기 루프(PLL)(84)에 신호(83)로서 입력된다. 또한, 신호(83)는 아날로그 회로(71)의 피드백 및 이득 조정을 위해 자동 이득 제어 회로(82)에 입력된다.
도 3에 도시한 바와 같은 신호를 처리하는데 필요한 단계외에도, 프로세스시 신호를 기술하는데 필요한 비트 수는 필요한 "실제 영역(real estate)"의 실리콘 에리어에 기여한다. 만일, 필요한 비트 수가 각 디자인에 적합하도록 최적화될 수 있다면, 이것은 모든 필요한 연산을 통해서 줄어들고(riple down) 칩상에서 요구되는 필요 실리콘 영역에 상당한 충격을 주게 된다. 또한, 보다 적은수의 라인과 게이트는 보다 효율적인 레이아웃에 구현할 수 있다. 처리 신호의 비트 사이즈의 소정의 필터 디자인에 대한 전체 충격을 추정하기 위해서, 여러 대체안이 수리적으로 평가될 수 있다.
설명에 앞서, 사용되는 용어의 의미를 구별짓는 것이 중요할 것이다. 첫째는 (FIR 필터에 대한) "내부" 신호와 "외부 입력" 신호를 구별하는 것이다. 외부 신호는 판독 채널 회로(1003)에 입력될 아날로그 증폭 신호(1001)로서 시작된다. 이 신호는 판독 채널 회로(1003)에 내장된 ADC(72)에 의해서 디지털 신호로 변환된다. 예시적인 실시예에서, 변환된 신호는 (73)으로 도시한 바와 같이 6비트의 디지털 신호로 구성된다. 이 입력 신호가 FIR 필터(75)에 공급되어 승산되고 누산되어, "내부 신호"가 된다. 각 비트의 값은 FIR 필터(75)의 다단을 통해서 누산됨에 따라 크게된다. 예를 들면, 8탭 FIR 필터에서, 확실히 제로 오버플로우라고 할 수 있는 이론적인 비트 수는 14이다. 그러므로, "내부 신호"는 일반적으로 사용되는 회로에서 14비트 신호로서 처리된다. 물론, 1이 몇몇 적당한 오버플로우 확률을 허용하게 되면, 13 또는 보다 적은 수의 비트가 (본 예에서) 사용될 수 있다.
시스템의 연산을 규정할 때 기준이 될 수 있는 두개의 영역, 즉 내부 및 외부가 있음을 유의하길 바란다. 시스템을 엄격히 외부 관점으로만 또는 내부 관점으로만 보면, 입력 및 출력은 LSB에 할당된 1의 가중치를 갖는 정수 기반으로서 간주할 수 있다. 그러나, 시스템을 외부 관점에서 바라본 내부 프로세스로서 접근하면, 적당한 관계가 각 LSB가 1/2B의 가중치를 갖는 고정점 기반의 산술로서 설명된다. 여기서, B는 FIR 필터의 계수가 필요한 해상도를 갖도록 보장하는데 필요한 모듈로로서 정의된다. 디자인 중에는 6을 요구하는 것도 있는데, B에 대한 통상의 값은 5이다. 그러므로, 본 예에서, B를 5로서 선택할 경우, 각 LSB는 외부 관점에서 내부 신호로서 바라볼 때 1/2B〓1/25〓1/32 만큼 스케일링된 위치 값을 갖는다.
제 1 평가법은 다중 비트의 2진수에 대해서 절단만 및 (암묵적인 절단을 행한) 사사오입으로 유도된 "바이어스"를 비교한다. 통상의 경우에, 다음과 같은 관계가 주어진다.
(사사오입 바이어스)
여기서,
M 〓 절단되지 않은(또는 사사오입되지 않은) 제 1 비트의 가중치
N 〓 절단된(사사오입된) 비트의 수
ULP 〓 최종 위치의 단위(Unit-in-Last-Position)(즉, 현재의 "내부" LSB)
i 〓 인덱스
(상기의 관계는, 누산 기능, 예를 들면, FIR 필터를 구체화하는 시스템의 모든 내부 처리를 수행한 일반적인 경우를 나타낸다. 다음의 논의에 있어서, 설명의 편의상 특정한 정수 산술 예를 설명한다. 이후, "ULP"는 정수값 1을 갖는 것으로 한다.)
5회의 개별 절단 및 5회의 개별 사사오입의 간단한 비교값, 즉 식(4a) 및 식(4b)를 이용하여 계산된 모든 값이 하기의 표 1에 도시된다.
표 1의 데이터를 보면, N이 커짐에 따라, 절단 바이어스 △T가 보다 큰 음의 값으로 되는 경향이 있고, 사사오입 바이어스 △R은 N이 제로를 일 때를 제외하고 모든 값이 1/2로 되는 것을 알 수 있다. 도 4는 N이 커짐에 따라 △T와 △R를 도시한 그래프이다. 이러한 관찰을 통해서, 처리하는데 "실제로" 필요한 비트의 수를 최적화하여 초래될 바이어스를 최소화하기 위해서, 비트의 절단과 비트의 사사오입의 조합을 추정할 수 있다.
도 5a는, 2비트 사사오입 연산이 주어질 때, (암묵적으로 절단을 행한) 사사오입의 효과를 나타내는 것으로, 출력 y는 입력 x의 함수이고, 각 지점의 에러 e는 y-x이다. 일반적인 의미에서, 사사오입은 여러 가지의 형태를 취할 수 있다. 다음의 경우, 사사오입 프로세스는 사사오입될 LSB를 관찰하는 것을 의미하고, LSB의 최상위 비트가 1이면, 남은 비트에 의해 규정되는 수는 증가된다. 사사오입될 최상위 비트보다 상당히 작은 모든 LSB는 간단히 버려진다. 이것은 사사오입 바이어스 방법의 가장 간단한 형태이다. 사사오입의 경우, "통계적" 해는, 어떤 보상되지 않은 상당한 에러를 야기시키는 남은 LSB 비트의 0.5로 정확히 떨어지는 값들만을 갖으면서, 이상적인 결정 라인(301)의 약 1/2 이상 및 1/2 이하를 제공할 것이다. 이들 "0.5의 값"은 각 샘플에서 적은 비트만으로 구성할 수 있다. 예를 들면, 3비트가 사사오입되면, 두개의 최하위 비트가 버려지고 3번째의 LSB가 가능한 사사오입 연산을 위해 제고된다. 양의 2비트 범위(제1의 절단되지 않은 가중치가 제3 LSB의 가중치, 즉, 22인)에 대해, 최적의 해는 도 5a 및 도 5b에서 (4개의 반복 사이클을 예로서 그려진) 45°선(즉, 이상적인 결정 라인)(301) 상에 위치할 것이고, 반면에 실제의 사사오입은 도 5a에 도시된 "계단 함수"(302)를 따르는 응답을 제공한다. (에러 값이 이상적인 결정 라인에 있으면, 그 값은 통계적으로 예상되는 최소값이다.) 2비트 사사오입을 이용하면, LSB는 버려지고, 0.5 보다 크면, 즉 1이면, 다음의 LSB는 새로운 워드(제 3 LSB)로 사사오입될 것이고, 그렇치 않으면, 또한 버려진다.
도 5b는, 2비트 절단 연산이 주어질 때, 절단만의 효과를 나타낸다. 이 절단에서는 복수의 LSB를 버리고 최종 비트가 버려지는 곳부터 올린다. 양의 2비트 범위(제1의 절단되지 않은 가중치가 제3 LSB의 가중치, 즉, 22인)에 대해, 최적의 해는 도 5b에서 이상적인 결정 라인(301) 상에 위치하고, 반면에 실제의 절단은 도 5b에 도시된 "계단 함수"를 대응하는 응답을 제공한다. 절단의 경우, "통계적" 해는 항상 이상적인 결정 라인 아래에서 음의 바이어스를 제공하여, 절단된 비트 수가 증가함에 따라 음으로 증가할 것이다. 2비트 절단을 사용하면, 두개의 LSB는 모두 버려지고, 3번째 LSB는 다음 단에서 사용될 새로운 제1의 LSB로 된다.
도 6은 도 5b로부터의 절단 결과(601)와 단일 비트 사사오입한 제3의 LSB(602)와의 조합을 설명한 도면이다. 표 1에 요약된 결과로부터, 사사오입으로 인한 양의 바이어스(와 누산 에러)가 절단으로 인한 음의 바이어스(와 음의 누산 에러)와 함께 (허용 범위 내에서) 카운트될 수 있기 때문에, 절단 및 사사오입을 현명하게 선택적으로 조합하면 이상적인 결정 라인(301)에 충분히 근점한 응답을 제공할 수 있음을 알 수 있다. 표 1의 계산이 바이어스만을 나타내고 에러가 없는 것에 주목할 필요가 있다. 이들 시스템은 각 탬에서 누적된 에러를 승산하고 누산하기 때문에, 사사오입이 1/2로 일정하고 바이어스가 각 탭에서 누산되어 적은 수의 절단 비트, 예를 들면, 3미만일지라도, (바이어스만이 반대로 되는) 절단 에러와 사사오입 에러의 차감 계산을 할 수 있다.
도 7a에는, (설명의 편의상, 저순위의 비트만을 나타내는) 3개의 LSB의 절단을 구현하는 예가 도시되어 있다. 도 1 및 도 2의 8기저로 부호화된 예, 즉 x0, x1 및 x2는 생략된다. 여기서, ci는 실행(carry out) 비트를 나타내고, ai및 bi-3는 부분 적을 나타내는 것으로, 이에 대해서는 대리인 Docket no. TI-28613인 미국 특허 출원 제 ----호에 제시되어 있고 본 명세서에 전적으로 참조 문헌으로서 인용된다. 입력 a3+ b0는 "최소" LSB로서 이 입력이 x3에 더해지면, 출력 y3이 제공됨을 알 수 있다.
도 7a는, 또한 4번째의 LSB의 사사오입을 구현하는, 즉, 부분 적 a3+ b0과 이전의 탭 x3비트의 합산 연산을 생략한 예를 나타낸다. 수평 라인은 하나의 합산 연산으로부터 다음 단으로의 "실행"을 나타내고, wi는 출력 yi를 위해 부분 적 합산을 이전의 탭 xi비트에 합산되도록 접속하는 와이어를 나타낸다.
도 8a는, 후단에서의 3 비트의 절단을 행하는 구현예(설명의 편의상, 저순위의 비트만을 도시함)를 나타낸다. 도 8b는 도 8a의 절단과 동일한 구현예를 제공하지만, 여기서는 4번째 비트를 사사오입한다. 도 8c는, 도 8a 및 도 8b에 대한 개시점으로서, 충분한 해상도, 즉, 절단/사사오입을 행하지 않은 것을 나타낸다.
고정 점 또는 정수 표현이 사용될 수 있음을 주의하길 바란다.
각 단의 부분 적에서 3비트의 절단, 즉 N〓3을 이용하는 단순한 5탭 FIR 필터의 예로서, "내부" 바이어스 △T, 즉 시스템 내부의 각 단에서 생성되는 바이어스는 누산되어 다음과 같이 계산될 수 있다.
최종 출력의 가중치가 25(5비트인 경우)이면, 바이어스는 다음과 같다.
이러한 "외부" 또는 "내부" 바이어스는 최종 단(번호 5)에 의해 주어진 가중치로부터 알 수 있듯이 출력 포트에 참조된다. 알 수 있는 바와 같이, 절단만이 사용되면 다양한 목적에 대해 개선될 수 있다.
FIR 내의 프로세스 동안에 비트를 제거하기 전에, 어떠한 신호를 입력 및 출력으로서 적절히 표현하는 데에 얼마나 많은 비트가 필요한가를 결정할 필요가 있다. 프로세스 전후 모두에서 비트 수를 조절함으로써, 시간과 실리콘의 "실제 영역"을 줄일 수 있다.
성능 측정에 중요한 사항은 바이어스이다. 단지 LSB를 사사오입하면, 고정 정수 연산에 대한 바이어스는 식(4a) 및 식 4(b)에 의해 주어진다.
"유도된" 바이어스와 관련하여, 처리될 비트의 총수를 줄이는 목적에 부합되도록 절단(음)과 사사오입(양)을 조합할 수 있음은 자명하다.
10,000개의 샘플을 갖는 MATLAB에 입각하여 내부 계수 가중치(즉, 해상도) 1/2B를(B〓5, 즉, 1/32)를 이용하는 전형적인 8탭 디지털 FIR 필터에 대한 여러 시뮬레이션을 실행한 결과, 외부 출력에서 측정했을 때, 고정 정수 산술 예에 대한 결과는 다음과 같다.
예상할 수 있는 바와 같이, 바이어스는 출력에서 1비트(테이블 2에서의 라인 2)를 사사오입함으로써 최소화될 수 있음을 알 수 있다. 그러나, 테이블을 엄밀히 보면, 프로세스시 3절단 1자리올림으로서 표현된 모드를 이용하고, 출력에서 사사오입을 하지 않으면(표 2의 라인15), 4비트 전체가 각 단에서의 프로세스 동안에 제거될 수 있음을 알 수 있다.
이것은, 최소 평방근(rms) 에러(표 2의 라인(6))에 대한 다음의 가장 "최적화된" 해에 대해 프로세스시 제거될 비트 수의 4배이다. 이것을 표 2의 최종 라인(4 절단 및 1 사사오입)과 비교한다. 바이어스가 라인(15)보다는 최종 라인에 대해서 작지만, 이 바이어스는 최종 라인에 대해 약간 양이고 rms 에러는 라인(15)에 대한 에러보다 크다. 다른 허용가능한 대체안은, emrs에 대해 약간 양호한 값으로 되는 각 단에서 2를 절단하고 1을 사사오입하는 것이지만(표 2의 라인(11)), 표 2의 라인(15)와 비교했을 때, 각 단에서 하나의 부가 비트를 필요로 한다.
마지막으로, 표 3은 각 단에서 2를 절단하고 1을 사사오입하는 효과를 나타내고, 표 4a 및 표 4b는 이와 동일한 연산을 행하는 또 다른 예를 제공한다. 표 4a로부터, 3번째 비트의 사사오입 등의 기여만이 저순위의 부분 적 ai의 3 LSB 비트로부터 유래되기 때문에, "0" 절단으로부터 (이 예에서) 현저한 부정 효과는 없다는 것을 알 수 있다.
실제로, 다음과 같은 관계로 결과를 설명할 수 있다.
여기서, 3 LSB의 좌측으로의 시프트에 의해서, 이후에 xi와 누산되는 (식(8)의 괄호 내의) 간단한 가산으로 필요한 결과가 얻어짐을 알 수 있다. 그러므로, 8 기저의 부호화 시스템의 승산 및 누산은 "가산 및 누산" 연산으로서 이루어질 수 있다.
표 3은 ULP를 이용하여 식(4a) 및 식(4b)로부터 구해진다.
여기서, "N" LSB 비트는 "제로 출력"이다.
6비트 부호 계수 - RADIX-8 인코딩
여기서,
xi〓 이전 단(탭)으로부터의 값
ai〓 8기저의 부호화에 대한 저순위의 부분 적
bi〓 8기저의 부호화에 대한 고순위의 부분 적
표 3a, 표 3b, 표 4a 및 표 4b의 제1 열의 박스 내의 계수는 부호 확장(sign extension)이다.
그러나, 3 LSB를 절단하고 다음의 LSB를 사사오입하면(표 5a, 5b 참조), 예를 들면, 현재의 b0뿐만아니라 a3는 사사오입되어야 하기 때문에, 8기저의 부호화 연산의 에러를 야기시키는 또 다른 소스가 된다. 도 4b에 도시한 바와 같이, a2의 다음 단으로의 사사오입은 저순위의 LSB 내에서 완전하게 행해질 수 있다. 마지막으로 주목할 점 중의 하나는, 각 프로세스 단이 균일한 사사오입 연산을 구현한다고 하면, xi로부터의 기인되는 것은 결코 없다는 것이다.
6비트 사인 계수-8기저의 부호화
도 9는, 본 발명의 바람직한 실시예를 구체화하는 시스템의 설계 방법의 프로세스를 설명하는 흐름도이다. 이 프로세스는 스텝(901)에서 입력 신호를 적절히 처리하고 예상되는 출력의 범위를 기술하는데 필요한 비트의 수, 즉 p와 s를 사전에 계산함으로써 시작된다. 또한, 고유의 내부 절단 단계(903), 선택적인 내부 사사오입 단계(904) 및 선택적인 최종 사사오입을 행하기 전에 LSB의 수(B)를 제거하는 단계(905)가 도시되어 있다. 여기서, B는 (출력에서 수행된 MSB 절단이 행해지지 않았으면) p-s로 된다. 이러한 설계는, (시스템 아키텍쳐의 초기 사항에 대비하여 상호 절충되는) 시스템 아키텍쳐(906)에 의해 지정된 초기의 조건과 블록 설계자(907)에 의해 지정된 엔지니어링 최적화에 따라 정해진다.
전술한 것은, 필요한 비트의 사사오입 및 사전 계산을 사용하는 본 발명의 다단 비트 절단의 주된 특징을 설명한 것으로, 본 발명의 출원, 연산 방법 또는 그 사용을 상기에 설명한 내용으로 한정하여 해석되어서는 않된다.
상기에 있어서, 본 발명은 특정한 수학식 및 구현 방법을 이용하여 설명하였고, 또한 특정 유형의 필터에 대해서 설명하였는데, 당업자라면, 수학식 선택의 다양한 변경, 구현예 또는 그 밖의 상세를 이용한 사용이 본 발명의 사상 및 범주를 벗어나지 않으면서 변경될 수 있을을 이해할 것이다.
따라서, 본 발명에 따르면, 절단 및 사사오입 기법을 선택적으로 조합하여 사용함으로써, 하드웨어를 보다 단순화할 수 있고, 필요로 하는 실리콘 영역도 축소할 수 있어, 전력 소비도 절감할 수 있는 효과가 있다.

Claims (29)

  1. 제1 단에서 상기 디지털 신호를 입력하기 전에 행해진 결정의 결과에 기초하여, 내부 신호의 비트 수가 선택적으로 감소된 p비트의 MSB를 갖는 n비트 입력 디지털 신호를 처리하는 시스템에 필요한 하드웨어를 최적화하는 방법에 있어서 -상기 시스템은 r개의 단를 갖고 누산 기능을 이용함-,
    각 단에서 최하위 비트(LSB)를 절단하는 단계, 및
    최종 단에서 B비트만큼 함축적으로 절단하여 출력 비트 수를 s로 줄이는 단계
    를 포함하며,
    하드웨어가 감소되고 에러가 제한되는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    LSB의 사사오입은 각 단에서 행해지는 것을 특징으로 하는 방법.
  3. 제1항에 있어서,
    LSB의 사사오입은 출력에서 행해지는 것을 특징으로 하는 방법.
  4. 제2항에 있어서,
    LSB의 사사오입은 출력에서 행해지는 것을 특징으로 하는 방법.
  5. 제2항에 있어서,
    상기 시스템은 각 단에서 상기 LSB의 3개의 최하위 비트를 절단하고, 상기 p비트 디지털 신호의 제4 LSB를 사사오입하는 것을 특징으로 하는 방법.
  6. 제2항에 있어서,
    상기 시스템은 각 단에서 상기 LSB의 2개의 최하위 비트를 절단하고, 상기 p비트 디지털 신호의 제3 LSB를 사사오입하는 것을 특징으로 하는 방법.
  7. 누산 기능을 이용하는 시스템에서 처리되는 n비트 입력 디지털 신호를 처리하는데 필요한 비트 수를 최적화하는 방법에 있어서 -상기 시스템은 ci계수와 관련된 내부 프로세스를 행하는 r개의 단을 가지며, 처리될 필요가 있는 최적 비트수 p 및 출력 신호를 기술하기에 적합한 비트 수 s에 대한 최적값이 사전 계산에 의해서 결정되고, n〈p, s〈p 및 i〓r이고, 상기 사전 계산은 허용할수 없는 오버플로우 확률이 초래되지 않도록 p를 결정하고, 상기 예상된 출력 신호의 범위를 일치시키기 위해서 s를 결정하며,
    상기 n비트의 입력 신호를 p비트 만큼 확장하여 처리하는 단계와,
    각 단의 내부 처리 과정에서, 상기 p비트 신호의 최하위 비트(LSB)를 절단하고 상기 처리된 p비트 신호를 s비트로 줄여 출력을 기술하는 단계
    를 포함하며,
    최종 절단은 각 단에서 내부적으로 처리되는데 필요한 비트 수를 줄일 수 있는 것을 특징으로 하는 방법.
  8. 제7항에 있어서,
    각 단에서 LSB를 사사오입하는 단계를 더 포함하며, 상기 사사오입될 LSB는 상기 절단될 LSB보다 상위에 있는 것을 특징으로 하는 방법.
  9. 제8항에 있어서,
    상기 시스템은 상기 LSB의 3개의 최하위 비트를 절단하고 제4 LSB를 사사오입하며, 다음의 값, 즉 n〓6; r〉1, s〓8, 및 p〓13이 사용되는 것을 특징으로 하는 방법.
  10. 제8항에 있어서,
    상기 시스템은 상기 LSB의 2개의 최하위 비트를 절단하고 제3 LSB를 사사오입하며, 다음의 값, 즉 n〓6; r〉1, s〓8, 및 p〓13이 사용되는 것을 특징으로 하는 방법.
  11. n비트 디지털 신호가 입력되고, p비트에 의해 정의된 신호를 내부적으로 처리하고, s비트로 감소된 신호를 출력하는 시스템에 있어서 -상기 p는 내부 처리 과정시에 필요한 이론적인 최대값 이하이며, 사전에 계산되고, 상기 s는 예상된 출력의 범위를 커버하기 위해서 사전에 계산되며, 상기 시스템은 ci계수에 관련되는 r개의 단과 누산 서브-시스템에서 누산된 p비트의 처리 신호를 수용하는데 충분한 접속을 갖는 구조를 이용하고, n〈p, s〈p, i〓r임-,
    내부 처리시 각 단에서, 상기 p비트 신호의 최하위 비트(LSB)를 무시함으로써, 상기 이론적으로 필요한 게이트의 갯수를 줄일 수 있는 회로
    를 포함하며,
    하드웨어가 감소되고 에러가 제한되는 것을 특징으로 하는 시스템.
  12. 제11항에 있어서,
    각 단에서 사사오입되는 부가적인 LSB를 무시하는 회로를 더 포함하며, 상기 사사오입된 LSB는 상기 절단된 LSB보다 상위에 있는 것을 특징으로 하는 시스템.
  13. n비트 디지털 신호가 입력되고, p비트에 의해 정의된 신호를 내부적으로 처리하고, s비트로 감소된 신호를 출력하는 시스템에 있어서 -상기 p는 내부 처리 과정시에 필요한 이론적인 최대값 이하이고 사전에 계산되며, 상기 s는 예상되는 출력의 범위를 커버하기 위해서 사전에 계산되며, 상기 시스템은 ci계수에 관련되는 r개의 단과 FIR의 승산/가산 누산(MAC) 서브-시스템에서 누산된 p비트의 처리 신호를 수용하는데 충분한 접속을 갖는 구조를 채용하는 FIR 필터를 구현하며, n〈p, s〈p, i〓r임-,
    내부 처리시 각 단에서, 상기 p비트 신호의 최하위 비트(LSB)를 무시하여 상기 이론적으로 필요한 게이트의 개수를 줄일 수 있는 회로
    를 포함하며,
    하드웨어가 감소되고 에러가 제한되는 것을 특징으로 하는 시스템.
  14. 제13항에 있어서,
    각 단에서 사사오입되는 부가적인 LSB를 무시하는 회로를 더 포함하며, 상기 사사오입된 LSB는 상기 절단된 LSB보다 상위에 있는 것을 특징으로 하는 시스템.
  15. 제14항에 있어서,
    상기 시스템은 상기 LSB의 3개의 최하위 비트를 절단하고 제4 LSB를 사사오입하며, 다음의 값, 즉 n〓6; r〉1, s〓8, 및 p〓13이 사용되는 것을 특징으로 하는 시스템.
  16. 제14항에 있어서,
    상기 시스템은 상기 LSB의 2개의 최하위 비트를 절단하고 3번째의 LSB를 사사오입하며, 다음의 값, 즉 n〓6, r〉1, s〓8, p〓13이 사용되는 것을 특징으로 하는 시스템.
  17. n비트 디지털 신호가 입력되고, p비트에 의해 정의된 신호를 내부적으로 처리하고, s비트로 감소된 신호를 출력하는 대용량 데이터 저장 시스템에 있어서 -상기 p는 내부 처리 과정시에 필요한 이론적인 최대값 이하이고 사전에 계산되며, 상기 s는 예상된 출력의 범위를 커버하기 위해서 사전에 계산되며, 상기 시스템은 ci계수와 관련되는 r개의 단과 FIR의 승산/가산 누산(MAC) 서브 시스템에서 누산된 p비트의 처리 신호를 수용하기 위해 충분한 접속을 갖는 구조를 이용하는 FIR 필터를 구현하며, n〈p, s〈p, i〓r임-,
    내부 처리시 각 단에서, 상기 p비트 신호의 최하위 비트(LSB)를 무시하여, 상기 이론적으로 필요한 게이트의 개수를 줄일 수 있는 회로를 포함하며,
    하드웨어가 감소되고 에러가 제한되는 것을 특징으로 하는 대용량 데이터 저장 시스템.
  18. 제17항에 있어서,
    각 단에서 사사오입되는 부가적인 LSB를 무시하는 회로를 더 포함하며, 상기 사사오입된 LSB는 상기 절단된 LSB보다 상위에 있는 것을 특징으로 하는 대용량 데이터 저장 시스템.
  19. 제18항에 있어서,
    상기 시스템은 상기 LSB의 3개의 최하위 비트를 절단하고 제4 LSB를 사사오입하며, 다음의 값, 즉 n〓6; r〉1, s〓8, 및 p〓13이 사용되는 것을 특징으로 하는 대용량 데이터 저장 시스템.
  20. 제18항에 있어서,
    상기 시스템은 상기 LSB의 2개의 최하위 비트를 절단하고 제3 LSB를 사사오입하며, 다음의 값, 즉 n〓6; r〉1, s〓8, 및 p〓13이 사용되는 것을 특징으로 하는 대용량 데이터 저장 시스템.
  21. 제17항에 있어서,
    상기 대용량 데이터 저장 시스템은 디스크 드라이브인 것을 특징으로 하는 대용량 데이터 저장 시스템.
  22. p비트로 줄어든 신호를 내부적으로 처리하는 누산 기능을 갖는 서브-시스템을 구현하는 시스템에서, 허용할 수 없는 오버플로우 확률을 야기시키지 않으면서 n비트 디지털 입력 신호를 처리하고, s비트의 신호를 출력하는 방법에 있어서 -상기 p는 ci계수와 관련된 r개의 단을 통해서 상기 n비트 입력 신호를 처리하기에 충분한 비트 수가 되도록 사전에 계산되며, 상기 s는 가능한 한 상기 예상된 출력 신호의 범위를 만족시키면서 상기 출력을 기술하는데 필요한 수이고, 상기 서브-시스템은 r개의 단과 내부적으로 처리되고 누산된 p비트 신호를 수용하기에 충분한 접속을 갖는 구조를 이용하며, n〈p, s〈p, i〓r임-,
    상기 n비트 입력 신호를 상기 서브-시스템에서의 내부 처리를 위해 p비트만큼 확장하는 단계,
    상기 p비트 신호의 최하위 비트(LSB)를 절단하고, 상기 p비트의 처리 신호를 상기 출력을 기술하기 위해 s비트 절단하는 단계를 포함하는 것을 특징으로 하는 방법.
  23. 제22항에 있어서,
    각 단에서 LSB를 사사오입하는 단계를 더 포함하며, 상기 사사오입되는 LSB는 상기 절단된 LSB보다 상위에 있는 것을 특징으로 하는 방법.
  24. 제23항에 있어서,
    상기 시스템은 상기 LSB의 3개의 최하위 비트를 절단하고 제4 LSB를 사사오입하며, 다음의 값, 즉 n〓6, r〉1, s〓8, p〓13이 사용되는 것을 특징으로 하는 방법.
  25. 제24항에 있어서,
    상기 시스템은 상기 LSB의 2개의 최하위 비트를 절단하고 제3 LSB를 사사오입하며, 다음의 값, 즉 n〓6, r〉1, s〓8, p〓13이 사용되는 것을 특징으로 하는 방법.
  26. p비트로 줄어든 신호를 내부적으로 처리하는 누산 기능을 갖는 FIR 필터를 구현하는 대용량 데이터 저장 시스템에서, 허용할 수 없는 오버플로우 확률을 야기시키지 않으면서, n비트 디지털 입력 신호를 처리하여 s비트의 신호를 출력하는 방법에 있어서 -상기 p는 ci계수와 관련되는 r개의 단을 통해서 상기 n비트 입력 신호를 처리하기에 충분한 수의 비트가 되도록 사전에 계산되며, 상기 s는 가능한 한 상기 예상된 출력 신호의 범위를 만족시키면서 상기 출력을 기술하는데 필요한 수이고, 상기 서브-시스템은 r개의 단과 내부적으로 처리되고 누산된 p비트 신호를 수용하기에 충분한 접속을 갖는 구조를 이용하며, n〈p, s〈p, i〓r임-,
    상기 n비트 입력 신호를 상기 서브-시스템으로의 내부 처리를 위해 p비트만큼 확장하는 단계, 및
    상기 p비트 신호의 최하위 비트(LSB)를 절단하고, 상기 p비트의 처리 신호를 상기 출력을 기술하기 위해 s비트 절단하는 단계
    를 포함하는 것을 특징으로 하는 방법.
  27. 제26항에 있어서,
    각 단에서 LSB를 사사오입하는 단계를 더 포함하며, 상기 사사오입되는 LSB는 상기 절단된 LSB보다 상위에 있는 것을 특징으로 하는 방법.
  28. 제27항에 있어서,
    상기 시스템은 상기 LSB의 3개의 최하위 비트를 절단하고 제4 LSB를 사사오입하며, 다음의 값, 즉 n〓6, r〉1, s〓8, p〓13이 사용되는 것을 특징으로 하는 방법.
  29. 제27항에 있어서,
    상기 시스템은 상기 LSB의 2개의 최하위 비트를 절단하고 제3 LSB를 사사오입하며, 다음의 값, 즉 n〓6, r〉1, s〓8, p〓13이 사용되는 것을 특징으로 하는 방법.
KR1020000009370A 1999-02-25 2000-02-25 고유의 절단 및 사사오입 연산을 이용하여 신호 처리를최적화하는 시스템 및 방법 KR20000076734A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US25804599A 1999-02-25 1999-02-25
US9/258,045 1999-02-25

Publications (1)

Publication Number Publication Date
KR20000076734A true KR20000076734A (ko) 2000-12-26

Family

ID=22978871

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000009370A KR20000076734A (ko) 1999-02-25 2000-02-25 고유의 절단 및 사사오입 연산을 이용하여 신호 처리를최적화하는 시스템 및 방법

Country Status (4)

Country Link
JP (1) JP2000252794A (ko)
KR (1) KR20000076734A (ko)
SG (1) SG90099A1 (ko)
TW (1) TW469693B (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2459271A (en) * 2008-04-15 2009-10-21 Sony Corp Bit reduction in a transmitter, before and after filtering
TWI742563B (zh) * 2019-03-15 2021-10-11 昇佳電子股份有限公司 感測訊號的運算方法
US20230053294A1 (en) * 2021-08-13 2023-02-16 Taiwan Semiconductor Manufacturing Co., Ltd. Bitwise product-sum accumulations with skip logic

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5353026A (en) * 1992-12-15 1994-10-04 Analog Devices, Inc. Fir filter with quantized coefficients and coefficient quantization method
US5696710A (en) * 1995-12-29 1997-12-09 Thomson Consumer Electronics, Inc. Apparatus for symmetrically reducing N least significant bits of an M-bit digital signal

Also Published As

Publication number Publication date
TW469693B (en) 2001-12-21
JP2000252794A (ja) 2000-09-14
SG90099A1 (en) 2002-07-23

Similar Documents

Publication Publication Date Title
US6243729B1 (en) Digital finite-impulse-response (FIR) filter with a modified architecture based on high order Radix-N numbering
US7743314B2 (en) Method and apparatus for a data-dependent noise predictive viterbi
JP2693256B2 (ja) 記録装置用ビタビ等化器及び記録装置
US5671252A (en) Sampled data read channel utilizing charge-coupled devices
US11677383B2 (en) Rate converter
US6799296B2 (en) Viterbi detector for optical disk system
KR100230554B1 (ko) Rll 코드화 데이터를 위한 최대 유사 부호 검출 방법
US7426681B2 (en) Viterbi detector
US20020152250A1 (en) Finite-impulse-response (fir) filter employing a parallel architecture
US6396254B1 (en) Read channel
KR20000076734A (ko) 고유의 절단 및 사사오입 연산을 이용하여 신호 처리를최적화하는 시스템 및 방법
US7148830B2 (en) Look-ahead delta sigma modulator with pruning of output candidate vectors using quantization error minimization pruning techniques
JP2001053622A (ja) シーケンス検出用簡素化ビタビ検出方法及びビタビ検出器
US8271567B2 (en) Methods and systems for compression, storage, and generation of digital filter coefficients
US7196647B2 (en) Signal processing with look-ahead modulator noise quantization minimization
US5935199A (en) Dc accurate multi-rate digital filter with common coefficient set and dc gain correction
JP3521584B2 (ja) 最尤復号化器および情報再生装置
US6996168B2 (en) Signal-processing circuit, and recording and playback apparatus employing the same
KR100945488B1 (ko) 비터비 검출 장치 및 방법
KR100474819B1 (ko) 데이터기록/재생장치의신호검출방법및그장치
US6954413B2 (en) Process and device for evaluating symbol lengths on a recording medium
US6745218B1 (en) Adaptive digital filter
JP2008141470A (ja) 1ビットのビットストリームをマルチビットデジタル信号に変換する装置およびプログラム
US6484286B1 (en) Error signal calculation from a Viterbi output
JP3174214B2 (ja) 信号処理回路および信号処理装置ならびに記録再生装置

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination