KR19990063101A - 우선순위·인코더 및 우선순위·인코드 방법 - Google Patents

우선순위·인코더 및 우선순위·인코드 방법 Download PDF

Info

Publication number
KR19990063101A
KR19990063101A KR1019980055381A KR19980055381A KR19990063101A KR 19990063101 A KR19990063101 A KR 19990063101A KR 1019980055381 A KR1019980055381 A KR 1019980055381A KR 19980055381 A KR19980055381 A KR 19980055381A KR 19990063101 A KR19990063101 A KR 19990063101A
Authority
KR
South Korea
Prior art keywords
signal
priority
encoded
address
output
Prior art date
Application number
KR1019980055381A
Other languages
English (en)
Other versions
KR100291814B1 (ko
Inventor
다께시 신도
Original Assignee
가네꼬 히사시
닛뽕덴끼 가부시끼가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가네꼬 히사시, 닛뽕덴끼 가부시끼가이샤 filed Critical 가네꼬 히사시
Publication of KR19990063101A publication Critical patent/KR19990063101A/ko
Application granted granted Critical
Publication of KR100291814B1 publication Critical patent/KR100291814B1/ko

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements

Abstract

대용량 CAM 에 바람직한, 고속으로 작동하는 우선순위·인코더를 제공한다.
복수의 입력신호로부터 미리 설정된 우선도에 의해서 인코드 결과를 순차적으로 출력하는 우선순위·인코더에 있어서, 입력신호수에 대응하는 비트수의 인코드 결과, 및 입력신호 중 어드레스에 코드화하고자하는 신호가 있는지의 여부를 나타내는 제 1 인에이블 신호를 출력하는 복수의 제 1 인코드 결과만을 출력하기 위한 복수의 멀티플렉서와, 제 1 인에이블 신호를 입력하여, 그 입력수에 대응하는 비트수의 인코드 결과, 및 그의 입력 중 어드레스에 코드화하기 위한 신호가 있는지의 여부를 나타내는 제 2 인에이블신호를 출력하는 제 2 인코더회로를 갖는 구성으로 되어있다.

Description

우선순위·인코더 및 우선순위·인코드 방법
본 발명은 어드레스에 코드화하고자 하는 신호가 포함된 복수의 입력신호로부터 미리 설정된 우선도에 따라 어드레스를 순차적으로 출력하는 우선순위·인코더에 관한 것으로, 특히 연상메모리의 각 메모리셀에서 출력되는 일치신호의 인코드를 행하는 우선순위·인코더에 관한 것이다.
통상의 메모리가 번지 (어드레스)를 지정하여 데이터의 판독/기입을 행하는것에 대하여, 연상메모리 (associative memory), 즉 CAM (Content Addressable Memory) 에서는, 통상의 RAM 기능 이외에 검색데이터를 입력하여 이와 동일하거나 또는 유사한 데이터의 유무나, 그 데이터가 속하는 워드 이외의 데이터나 어드레스 등의 정보를 출력한다. 그러나, 검색데이터와 일치하는 워드는 1 개로 한정되지 않으므로 복수의 워드에서 검색데이터와 일치한 경우, 통상의 인코더에서는 바른 인코드출력을 얻을 수 없다. 따라서, CAM 에는, 메모리셀에서 출력되는 일치신호 (검색데이터와 일치한 것을 나타내는 신호) 를 인코드하여 미리 정해진 우선순위에 따라 어드레스신호를 차례대로 출력하는 우선순위·인코더가 필요하다.
종래의 이와 같은 우선순위·인코더로서, 일본 공개특허공보 평5-189979 호에 그 기술이 기재되어 있다. 도 7 은 상기 일본 공개특허공보 평5-189979 호에 기재된 우선순위·인코더의 구성을 나타낸 블록도이다.
도 7 에서, 종래의 우선순위·인코더는, 최하위층, 중위층 및 최상위층 3 층이 계층적으로 형성되어 있다. 최하위층은 가장 상위 (도 7 에서는 상측이 상위) 에 입력된 일치신호에 대응하는 출력으로부터 순차적으로 1을 출력하는 16 개의 제 1 층용 우선순위회로 (110∼ 1115) 로 구성되고, 중위층은 최하위층과 동일한 4 개의 제 2 층용 우선순위회로 (120∼ 123) 로 구성되어 있다. 또, 최상위층은 최하위층 및 중간층과 동일한 1 개의 제 3 층용 우선순위회로 (13) 로 구성되어 있다. 제 1 층용 우선순위회로 (110∼ 1115) 의 출력, 제 2 층용 우선순위로 (120∼ 123) 의 출력 및 제 3 층용 우선순위 회로 (13) 의 출력에는, 각각의 출력신호에서 인코드 결과를 출력 (2 비트) 하는 어드레스인코더 (14) 가 접속되어 있다.
여기에서, 제 1 층용 우선순위회로 (110∼ 113) 의 출력신호 (OR) 는, 각각 제 2 층용 우선순위회로 (120) 에 입력되고, 마찬가지로, 제 1 층용 우선순위회로 (114∼ 117) 의 출력신호 (OR) 는, 각각 제 2 층용 우선순위회로 (121) 에 입력되며, 제 1 층용 우선순위회로 (118∼ 1111) 의 출력신호 (OR) 는, 각각 제 2 층용 우선순위회로 (122) 에 입력되고, 제 1 층용 우선순위회로 (1112∼ 1115) 의 출력신호 (OR) 는 각각 제 2 층용 우선순위회로 (123) 에 입력되어 있다. 또, 제 2 층용 우선순위회로 (120∼ 123) 의 출력신호 (OR) 는, 각각 제 3 층용 우선순위회로 (13) 에 입력되어 있다. 또한, 출력신호(OR) 는, 4 개의 입력신호의 논리화 출력으로, 입력신호의 어느 하나가 일치신호 1 이 되었을 때에 1을 출력한다.
또한, 제 1 층용 우선순위회로 (110∼ 113) 의 각 인에이블 입력단자 (EN) 에는 제 2 층용 우선순위회로 (120) 의 출력신호가 차례대로 (상위부터 하위 순서) 귀환되고, 마찬가지로, 제 1 층용 우선순위회로 (114∼ 117) 의 각 인에이블 입력단자 (EN) 에는 제 2 층용 우선순위회로 (121) 의 출력신호가 차례대로 귀환되며, 제 1 층용 우선순위회로 (118∼ 1111) 의 각 인에이블 입력단자 (EN) 에는 제 2 층용 우선순위회로 (122) 의 출력신호가 차례대로 귀환되고, 제 1 층용 우선순위회로 (1112∼ 1115) 의 각 인에이블 입력단자 (EN) 에는 제 2 층용 우선순위회로 (123) 의 출력신호가 차례대로 귀환되고 있다. 또, 제 2 층용 우선순위회로 (120∼ 123) 의 각 인에이블 입력단자 (EN) 에는, 제 3 층용 우선순위회로 (13) 의 출력신호가 차례대로 귀환되고 있다.
또, 제 1 층용 우선순위회로 (110∼ 1115), 제 2 층용 우선순위회로 (120∼ 123) 및 제 3 층용 우선순위회로 (13) 는 각각 동일회로로 구성된다. 또한, 최하위층에 4 입력의 제 1 층용 우선순위회로를 16 개 구비하고 있기 때문에, 도 7 에 나타낸 우선순위·인코더는 64 개의 입력신호의 인코드 결과를 출력하는 회로이다. 따라서, 인코드 결과는 6 비트 (A0 ∼ A5) 에서 출력된다.
한편, 어드레스 인코더 (14) 는 제 1 층용 우선순위 회로 (110∼1115), 제 2 층용 우선순위 회로 (120∼123) 및 제 3 층용 우선순위 회로 (13) 의 각 출력신호에 따라 ON/OFF 되는 복수의 MOSFET(15) 로 구성되고, MOSFET(15) 는 각 우선순위 회로마다 4 개씩 설치되어 있다. 또, 어드레스 인코더 (14) 는, 제 1 층용 우선순위회로 (110∼1115) 의 출력신호로부터 어드레스의 하위 2 비트 (A0, A1) 를 결정하고, 제 2 층용 우선순위회로 (120∼123) 의 출력신호로부터 어드레스의 중위 2 비트 (A2, A3) 를 결정하고, 제 3 층용 우선순위회로 (13) 의 출력신호로부터 어드레스의 상위 2 비트 (A4, A54) 를 결정한다.
이와 같은 구성에 있어서, 제 1 층용 우선순위회로 (110∼1115), 제 2 층용 우선순위회로 (120∼123) 및 제 3 층용 우선순위회로 (13) 는, 각각 가장 상측의 입력단자에 입력된 일치신호 “1”에 대응하는 출력단자에만 “1”을 출력하도록 동작한다.
또한, 제 3 층용 우선순위회로 (13) 의 출력신호 및 제 2 층용 우선순위회로 (120∼123) 의 출력신호를, 각각의 지배하에 있는 하위층의 우선순위회로에 인에이블 입력단자 (EN) 로 귀환시킴으로써, 입력신호 중에 일치신호가 없는 (모두 “0”) 제 1 층용 우선순위회로 (110∼1115) 의 출력신호 및 그 출력신호를 입력하는 제 2 층용 우선순위회로 (120∼123) 의 출력신호가 모두 무효화되고, 복수의 일치신호가 있는 경우에도 가장 우선도가 높은 일치신호의 인코드 결과 (어드레스) 에서 차례로 A5∼ A0단자로 출력된다.
최근의 CAM 에서는 그 메모리 용량이 증대하고, 우선순위·인코더의 입력수도 증가하는 경향이 있다.
상기한 바와 같은 종래의 우선순위·인코더에서는 우선순위회로를 계층화함으로써 고속화를 도모하고 있지만, 상위층에 있는 우선순위회로의 출력신호를 하위층에 있는 우선순위회로의 인에이블 입력단자 (EN) 로 귀환시키고 있기 때문에, 우선순위·인코더의 입력수가 매우 많아진 최근의 대용량 CAM 에서는, 인코드 결과가 출력되기까지의 시간 (지연시간) 이 걸린다고 하는 문제가 발생하고 있다.
본 발명은 상기한 바와 같은, 종래의 기술이 갖는 문제점을 해결하기 위해 이루어진 것으로, 대용량 CAM 에 적합한 고속으로 동작하는 우선순위·인코더를 제공하는 것을 목적으로 한다.
도 1 은 본 발명의 우선순위·인코더의 일실시예의 구성을 나타내는 블록도이다.
도 2 는 본 발명의 우선순위·인코더의 구성을 나타내는 도면으로, 다입력으로 대응 가능한 우선순위·인코더의 일실시예를 나타내는 블록도이다.
도 3 은 본 발명의 우선순위·인코더에서 사용되는 인코더 회로의 일실시예의 구성을 나타내는 회로도이다.
도 4 는 본 발명의 우선순위·인코더에서 사용되는 멀티플렉서의 일실시예의 구성을 나타내는 회로도이다.
도 5 는 본 발명의 우선순위·인코더에서 사용되는 인코더 회로의 다른 실시예의 구성을 나타내는 회로도이다.
도 6 은 본 발명의 우선순위·인코더에서 사용되는 멀티플렉서의 다른 실시예의 구성을 나타내는 회로도이다.
도 7 은 종래의 우선순위·인코더의 구성을 나타내는 블록도이다.
*도면의 주요부분에 대한 부호의 설명*
10∼13: 제 1 층용 인코더 회로 20∼22: 제 2 층용 멀티플렉서
3 : 제 3 층용 인코더 회로 41, 42: 확장용 멀티플렉서
상기 목적을 달성하기 위해, 본 발명의 우선순위·인코더는, 어드레스에 코드화하고자 하는 신호가 포함된 복수의 입력신호로부터, 미리 설정된 우선도에 따라 상기 어드레스를 순차적으로 출력하는 우선순위·인코더로서,
상기 복수의 입력신호가 소정수마다 분할되고, 상기 소정수의 입력신호를 각각 입력하여, 상기 소정수에 대응하는 비트수의 인코드 결과인 제 1 인코드 신호 및 상기 소정수의 입력신호 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 1 인에이블 신호를 각각 출력하는 복수의 제 1 인코더 회로와,
상기 제 1 인코드 신호 중, 우선도가 가장 높은, 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만을 출력하기 위한 복수의 멀티플렉서와,
상기 제 1 인에이블 신호를 입력하여, 상기 입력수에 대응하는 비트수의 인코드 결과인 제 2 인코드 신호 및 상기 입력 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 2 인에이블 신호를 출력하는 제 2 인코더 회로를 갖는 구성이다.
이때, 상기 멀티플렉서는, 상기 제 1 인에이블 신호의 공급원인, 제 1 인코드 신호인 제 1 출력신호, 상기 제 1 출력신호보다도 우선도가 낮은 제 1 인코드 신호인 제 2 출력신호를 각각 입력하여,
상기 제 1 인에이블 신호에서 상기 어드레스에 코드화하고자 하는 신호가 있는 경우에는 상기 제 1 출력신호를 출력하고, 상기 어드레스에 코드화하고자 하는 신호가 없는 경우에는 상기 제 2 출력신호를 출력하여도 된다.
또, 상기 우선순위·인코더를 복수개 구비하고,
전단(前段)으로부터의 인에이블 신호를 입력하고, 상기 입력 수에 대응한 비트수에 인코드 결과인 제 3 인코드 신호 및 상기 입력 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 3 인에이블 신호를 출력하는 하나 이상의 확장용 인코더 회로와,
전단의 인코드 결과 중, 우선도가 가장 높은, 상기 어드레스에 코드화하고자 하는 신호의 인코드 신호만 출력하기 위한 복수의 확장용 멀티플렉서를 갖는 1 단 이상의 확장회로가 상기 우선순위·인코더의 출력에 계층적으로 형성된 구성이어도 되고,
상기 우선순위·인코더를 복수개 구비하고,
복수의 상기 우선순위·인코더에 입력되는 모든 입력신호로부터 미리 설정된 우선도에 따라서 상기 어드레스를 순차적으로 출력하기 위한 1 단 이상의 확장회로가 상기 우선순위·인코더의 출력에 계층적으로 형성되며,
제 1 인코더 회로 및 제 2 인코더 회로의 입력신호수를 m, 상기 확장회로의 단수를 n, k 를 0 에서 n-1 까지의 정수로 했을 때,
제 n-k 단의 상기 확장회로에,
입력신호수가 m 이고, 전단으로부터의 인에이블 신호를 입력하여 상기 입력수에 대응한 비트수의 인코드 결과인 제 3 인코드 신호 및 상기 입력 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 3 인에이블 신호를 출력하는 mk개의 확장용 인코더 회로와,
전단의 인코드 결과 중, 우선도가 가장 높은, 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만 출력하기 위한 (n+1)(m-1) 개 이상의 확장용 멀티플렉서를 갖는 구성이어도 된다.
이 때, 상기 제 1 인코더 회로, 상기 제 2 인코더 회로 및 상기 확장용 인코더 회로는, 4 개의 입력신호에서 2 비트의 인코드 결과를 출력하고,
상기 멀티플렉서 및 확장용 멀티플렉서는 2 개의 2 비트의 인코드 결과 중 어느 한쪽을 출력하는 구성이 바람직하다.
한편, 본 발명의 우선순위·인코더 방법은, 어드레스에 코드화하고자 하는 신호가 포함된 복수의 입력신호로부터 미리 설정된 우선도에 따라 상기 어드레스를 순차적으로 출력하는 우선순위·인코더방법으로,
상기 복수의 입력신호를 소정수마다 분할하고, 상기 소정수의 입력신호로부터 상기 소정수에 대응하는 비트수의 인코드 결과인 제 1 인코드 신호 및 상기 소정수의 입력신호 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 1 인에이블 신호를 각각 출력하는 제 1 공정과,
상기 인코드 결과 중, 우선도가 가장 높은, 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만 출력하는 제 2 공정과,
상기 제 1 인에이블 신호로부터 상기 제 1 인이에블 신호의 수에 대응한 비트수의 인코드 결과인 제 2 인코드 신호 및 상기 제 1 인에이블 신호 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 2 인에이블 신호를 출력하는 제 3 공정을 구비하는 방법이다.
이 때, 상기 제 2 공정은,
상기 제 1 인에이블 신호의 공급원인 제 1 인코드 신호인 제 1 출력신호, 상기 제 1 출력신호보다도 우선도가 낮은 인코드 신호인 제 2 출력신호를 각각 입력하여,
상기 제 1 인에이블 신호로부터 상기 어드레스에 코드화하고자 하는 신호가 있는 경우에는 상기 제 1 출력신호를 출력하고, 상기 어드레스에 코드화하고자 하는 신호가 없는 경우에는 상기 제 2 출력신호를 출력하여도 된다.
또한, 상기 우선순위·인코드 방법으로 출력된 복수 신호에 대해,
전단으로부터의 인에이블신호를 입력하고, 이 입력수에 대응한 비트수의 인코드 결과인 제 3 인코드 신호, 및 상기 입력중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 3 인에이블신호를 출력하는 하나 이상의 제 1 확장용 공정과,
전단의 인코드 결과중, 우선도가 가장 높은, 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만 출력하기 위한 복수의 제 2 확장용 공정을 갖는 1 단 이상의 확장공정을 계층적으로 처리하는 방법이어도 되고,
상기 우선순위·인코드 방법으로 출력된 복수 신호에 대해 미리 설정된 우선도에 따라 상기 어드레스를 순차적으로 출력하기 위한 1 단 이상의 확장공정을 계층적으로 처리하고,
제 1 공정 및 제 2 공정의 입력신호수를 m, 상기 확장공정의 단수를 n, k 를 0 에서 n-1 까지의 정수로 하였을 때,
제 n-k 단째의 상기 확장공정은
입력신호가 m 이고, 전단으로부터의 인에이블 신호를 입력하여 상기 입력수에 대응한 비트수의 인코드 결과인 제 3 인코드신호 및 이 입력중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 3 인에이블 신호를 출력하는 병렬처리되는 mk의 제 1 확장용 공정과,
전단의 인코드 결과중, 우선도가 가장 높은 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만 출력하기 위한 병렬처리되는 (n+1)(m-1) 이상의 제 2 확장용 공정을 갖고 있어도 된다.
이 때, 상기 제 1 공정, 상기 제 3 공정 및 상기 제 1 확장용 공정에서는 4 개의 입력신호에서 2 비트의 인코드 결과를 출력하고,
상기 제 2 공정 및 상기 제 2 확장용 공정에서는 2 개의 2 비트의 인코드 결과중 어느 한쪽을 출력하는 방법이 바람직하다.
상기와 같이 구성된 우선순위·인코더는, 입력신호의 인코드 결과를 출력하는 복수의 인코더 회로와 우선도가 높은 인코드 결과만 출력하기 위한 복수의 멀티플렉서를 계층적으로 설치함으로써, 신호가 이동하는 단수를 입력신호수의 대수치에 비례하여 감소시킬 수 있다.
발명의 실시형태
이어서, 본 발명에 대해 도면을 참조하여 설명한다.
도 1 은 본 발명의 우선순위·인코더의 일실시예의 구성을 나타내는 블록도이다. 또한, 도 1 에 나타낸 우선순위·인코더는 16 개의 입력신호에서 4 비트의 인코드 결과를 출력하는 회로의 구성예를 나타낸다.
도 1 에 있어서 우선순위·인코더는 최하위층, 중위층 및 최상위층의 3 층이 계층적으로 형성되어 있다. 최하위층은 각각 4 개의 입력신호의 인코드 결과 (2 비트) 및 논리화 출력인 인에이블 신호 (EN) 를 출력하는 4 개의 제 1 층용 인코더 회로 (10∼ 13) 로 구성되어 있다. 또, 중위층은 제 1 층용 인코더 회로 (10∼ 13) 에서 출력되는 인에이블신호 (EN) 에 따라 입력단자 A0, A1 또는 입력단자 B0,B1 중 어느 한쪽에 입력된 신호를 출력하는 3 개의 제 2 층용 멀티플렉서 (20∼ 22) 로 구성되어 있다. 또한, 최상위층은 최하위층과 동일한 4 개의 입력신호의 인코드 결과 (2 비트) 및 논리화 출력인 인에이블신호 (EN) 를 출력하는 1 개의 제 3 층용 인코더 회로 (3) 로 구성되어 있다. 그리고, 제 1 층용 인코더 회로 (10∼ 13) 및 제 3 층용 인코드 회로 (3) 는 각각 동일한 구성의 회로이다.
제 1 층용 인코더 회로 (10∼ 13) 및 제 3 층용 인코드 회로 (3) 는 4 개의 입력단자 (D,C,B,A) 중, 일치신호 “1” 이 입력된 입력단자에 대응하여 Y0, Y1 에 2 비트의 인코드 결과를 출력하고, 입력단자 (D, C, B, A) 가 모두“0”인 경우에는 인에블 신호 (EN) 로서“0”을 출력한다. 또한, 도 1 에 나타낸 우선순위·인코더에서는, 제 1 층용 인코더 회로 (10∼ 13) 에 대한 입력신호 (MLO ∼ MLF) 중, 가장 우선도가 높은 입력신호는 MLO 이다. 우선도의 순위는 MLO 를 가장 높게 할 필요는 없으며, MLF 가 가장 높은 우선도여도 된다.
제 2 층용 멀티플렉서 (20∼ 22) 는 각각 컨트롤 단자 (C) 에“1” 이 입력되었을 때, 입력단자 (A0, A1) 에 입력된 신호를 출력단자 (Y0, Y1) 에서 출력하고, 컨트롤 단자 (C) 에 “0”이 입력되었을 때, 입력단자 (B0, B1) 에 입력된 신호를 Y0, Y1 에서 출력한다. 여기에서는 인에블 신호 (EN) 를 공급하는 제 1 층용 우선순위 신호의 출력신호가 입력단자 (A0, A1) 에 입력되고, 그보다 하위에 있는 제 1 층용 우선순위회로의 출력신호가 입력단자 (B0, B1) 에 입력된다 (제 2 층용 멀티플렉서를 통한 경우와 통하지 않는 경우가 있다.)
이러한 구성에 있어서, 제 1 층용 우선순위회로 (10∼ 13) 는 입력단자 (D, C, B, A) 중 어느 하나에 일치신호 “1”이 입력되었을 때, 인에블 신호 (EN) 로서“1”을 출력하고, 입력단자 (D, C, B, A) 에 모두 “0”이 입력되었을 때, 인에블 신호 (EN) 로서“0”을 출력한다.
제 2 층용 멀티플렉서 (20∼ 22) 는 컨트롤 단자 (C) 에 인에블 신호 (EN) 로서“1”이 입력되었을 때, 그 인에블 신호 (EN) 의 공급원인 제 1 층용 우선순위회로의 출력을 출력단자 (Y0, Y1) 에서 출력한다. 또, 컨트롤 단자 (C) 에 인에블 신호 (EN) 로서“0”이 입력되었을 때, 그보다 하위에 있는 제 2 층용 멀티플렉서의 출력신호, 또는 제 1 층용 우선순위회로의 출력신호를 그대로 출력단자 (Y0, Y1) 에서 출력한다.
따라서, 최상위에 있는 제 2 층용 멀티플렉서 (22) 로부터는, 제 1 층용 우선순위회로 (10∼13) 에서 출력되는 인코드 결과 중, 우선도가 가장 높은 인코드 결과 (어드레스의 하위 2 비트가 된다) 가 출력된다.
또한, 제 3 층용 우선순위회로 (3) 로부터는 제 1 층용 우선순위회로 (10∼13) 의 각 인에블 신호 (EN) 의 인코드 결과 (어드레스의 하위 2 비트가 된다) 가 출력된다.
이어서, 보다 많은 입력신호의 인코드 결과를 출력할 수 있는 우선순위·인코더의 구성에 대해서는 도 2 를 참조하며 설명한다.
도 2 는 본 발명의 우선순위·인코더의 구성을 나타내는 도면으로, 다입력에 대응 가능한 우선순위·인코더의 일실시예를 나타내는 블록도이다. 또한, 도 2 는 64 개의 입력신호를 인코드하는 우선순위·인코더의 구성을 나타낸다.
도 2 에 있어서, 입력신호의 수를 64 개로 하는 경우에는 도 1 에 나타낸 우선순위·인코더를 4 개 준비한다. 또, 어드레스의 최상위의 2 비트를 출력하기 위한 확장용 인코더 회로 (도시하지 않음) 와, 어드레스의 나머지 비트를 출력하기 위한 확장용 멀티 프렉서를 도 1 에 나타낸 우선순위·인코더마다 각각 2 개씩 설치함으로써 계층화한다. 또한, 인코드 결과는 2 비트 늘려 6 비트로 출력된다.
이 때의 구성을 구체적으로 설명하면, 도 1 에 나타낸 우선순위·인코더마다 2 개의 확장용 멀티플렉서 (41, 42) 를 각각 설치하는데, 제 2 층용 멀티플렉서 (22) 의 출력단자와 확장용 멀티플렉서 (41) 의 입력단자 (A0, A1) 를 접속하고, 제 3 층용 인코더 회로 (3) 의 출력단자와 확장용 멀티플렉서 (42) 의 입력단자 (A0, A1) 를 접속한다. 또한, 확장용 멀티플렉서 (41) 의 입력단자 (B0, B1) 는 그보다 하위측에 있는 확장용 멀티플렉서 (41) 의 출력단자 (Y0, Y1) 와 접속한다. 따라서, 각 확장용 멀티플렉서 (41) 의 입력단자 (B0, B1) 에는, 전단 (하위측) 으로부터의 신호 (IAO, IAI) 가 각각 입력되고, 출력단자 (YO, Y1) 으로부터는, 다음단 (상위측) 에 대한 신호 (OA0, OA1) 가 출력된다.
마찬가지로, 확장용 멀티플렉서 (42) 의 입력단자 (B0, B1) 는 그보다 하위측에 있는 확장용 멀티플렉서 (42) 의 출력단자 (Y0, Y1) 와 접속한다. 따라서, 각 확장용 멀티플랙서 (42) 의 B0, B1 에는 전단 (하위측) 으로부터의 신호 (IA2, IA3) 가 각각 입력되고, 출력단자 (Y0, Y1) 로부터는 차단 (상위측) 에 대한 신호 (OA2, OA3) 가 출력된다.
또한, 각 우선순위·인코더의 제 3 층용 인코더 회로 (3) 의 인에이블 출력 (EN) 을, 제 1 층용 인코더 회로와 동일하게 구성된 도시하지 않은 확장용 인코더 회로에 각각 입력한다.
이때, 최상위에 있는 확장용 멀티플렉서 (41) 로부터는 어드레스의 최하위의 2 비트가 출력되고, 최상위에 있는 확장용 멀티플렉서 (42) 로부터는 어드레스의 중위의 2 비트가 출력되며, 도시하지 않은 확장용 인코더 회로로부터는 어드레스의 최상위의 2 비트가 출력된다.
또, 더 많은 입력신호를 인코드하는 것이 가능한 우선순위·인코더를 구성할 경우는, 도 1 에 나타낸 우선순위·인코더를 입력신호수에 맞추어 복수개 준비하며, 1 개 이상의 확장용 인코더 회로 (도시하지 않음) 및 복수의 확장용 멀티플렉서로 이루어진 복수의 확장회로를 계층적으로 형성하는 것으로 대응한다.
이때, 제 n-k 단째의 확장회로는, mk개의 확장용 인코더 회로와, 적어도 (n+1)(m-1) 개의 확장용 멀티플랙서를 갖는 구성이 된다. 단, m 은 인코더 회로의 입력신호수, n 은 확장회로의 단수, k 는 0 ∼ n-1 의 정수이다.
그런데, 우선순위·인코더는 논리게이트만으로 구성할 수도 있다. 이때, 논리게이트 1 단당의 지연시간을 a 로 하면, 우선순위·인코더의 총 지연시간 (Tpd') 은 최악의 경우 a×w (w: 워드수) 가 된다.
한편, 도 1 에 나타낸 바와 같이 인코더 회로 및 멀티플렉서로 계층화된 우선순위·인코더의 경우, 1 층당의 지연시간은 a 의 n 배 (n: 1 층당의 논리게이트의 단수) 로 증가한다. 그러나 이동하는 단수가 w 에서 log4(w) 가 되기 때문에, 총 지연시간 Tpd 는 최대라도 a×n×log4(w) 가 된다.
논리게이트만으로 우선순위·인코더를 구성하는 경우라도, 복수 입력의 논리게이트를 사용하여 우선순위·인코더를 구성하면 논리게이트의 단수를 w 이하로 줄일 수 있다. 그러나, 논리게이트의 입력수에는 한계가 있기 때문에, 특히 다수의 입력신호를 인코드하는 경우에는, 논리게이트의 단수를 계층화된 우선순위·인코더보다도 줄이는 것은 불가능하다.
따라서, 워드수가 증가하는 경향에 있는 근래의 대용량 CAM 에 본 발명의 우선순위·인코더를 사용하면, 그 지연시간을 대폭으로 저감시킬 수 있다.
또, 본 발명의 우선순위·인코더는, 신호가 하위층에서 상위층으로 일방향으로만 전반 (傳搬) 되어, 종래예와 같이 상위층의 출력신호가 하위층으로 귀환되는 일이 없기 때문에, 인코드 결과가 더욱 고속으로 출력된다.
이어서, 도 2 에 나타낸 우선순위·인코더의 구성요소인 제 1 층용 인코더 회로, 제 3 층용 인코더 회로, 제 2 층용 멀티플랙서 및 확장용 멀티플랙서의 구체적인 구성에 대하여 도 3 ∼ 도 6 을 참조하여 설명한다. 또한, 제 1 층용 인코더 회로 및 제 3 층용 인코더 회로는 동일한 구성이므로, 이하에서는 인코더 회로로 총칭한다. 또, 제 2 층용 멀티플렉서 및 확장용 멀티플렉서도 동일한 구성이므로 이하에서는 멀티플렉서로 총칭한다.
도 3 은 본 발명의 우선순위·인코더에서 사용되는 인코더 회로의 일실시예의 구성을 나타내는 회로도이고, 도 4 는 본 발명의 우선순위·인코더에서 사용되는 멀티플렉서의 일실시예의 구성을 나타내는 회로도이다. 또, 도 5 는 본 발명의 우선순위·인코더에서 사용되는 인코더 회로의 다른 실시예의 구성을 나타내는 회로도이고, 도 6 은 본 발명의 우선순위·인코더에서 사용되는 멀티플렉서의 다른 실시예의 구성을 나타내는 회로도이다.
도 3 에 나타낸 인코더 회로 및 도 4 에 나타낸 멀티플렉서는 각각 논리게이트를 조합하여 구성한 회로로, 각각의 동작을 나타내는 진리값표에서 얻을 수 있는 논리동작에 따라 인버터나 NAND 게이트를 조합한 회로이다.
한편, 도 5 에 나타낸 우선순위회로 및 도 6 에 나타낸 멀티플렉서는, 각각 MOSFET 로 이루어진 스위치와 논리게이트를 조합하여 구성한 회로로, 도 3 또는 도 4 에 나타낸 회로에 비해 논리게이트의 수를 줄일 수 있다. 따라서, 우선순위·인코더의 지연시간을 보다 저감시킬 수 있다.
본 발명은 이상 설명한 바와 같이 구성되어 있으므로 이하에 기재한 효과를 갖는다.
입력신호수가 많아진 경우에 인코드에 필요한 지연시간을 대폭 저감시킬 수 있다.
또, 신호가 하위층에서 상위층의 일방향으로만 이동되어, 종래예와 같이 상위층의 출력신호가 하위층으로 귀환되는 일이 없기 때문에 인코드 결과가 보다 고속으로 출력된다.

Claims (10)

  1. 어드레스에 코드화하고자 하는 신호가 포함된 복수의 입력신호로부터, 미리 설정된 우선도에 따라 상기 어드레스를 순차적으로 출력하는 우선순위·인코더로서,
    상기 복수의 입력신호가 소정수마다 분할되고, 상기 소정수의 입력신호를 각각 입력하여 상기 소정수에 대응한 비트수의 인코드 결과인 제 1 인코드 신호 및 상기 소정수의 입력신호 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 1 인에이블 신호를 각각 출력하는 복수의 제 1 인코더 회로와,
    상기 제 1 인코드 신호 중, 우선도가 가장 높은 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만 출력하기 위한 복수의 멀티플렉서와,
    상기 제 1 인에이블 신호를 입력하여 상기 입력수에 대응한 비트수의 인코드 결과인 제 2 인코드 신호 및 상기 입력 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 2 인에이블 신호를 출력하는 제 2 인코더 회로를 갖는 우선순위·인코더.
  2. 제 1 항에 있어서, 상기 멀티플렉서는, 상기 제 1 인에이블 신호의 공급원인, 제 1 인코드 신호인 제 1 출력신호, 상기 제 1 출력신호보다도 우선도가 낮은 제 1 인코드 신호인 제 2 출력신호를 각각 입력하고,
    상기 제 1 인에이블 신호에서, 상기 어드레스에 코드화하고자 하는 신호가 있는 경우에는 상기 제 1 출력신호를 출력하고, 상기 어드레스에 코드화하고자 하는 신호가 없는 경우에는 상기 제 2 출력신호를 출력하는 우선순위·인코더.
  3. 제 1 또는 제 2 항에 기재된 우선순위·인코더를 복수개 구비하고,
    전단으로부터의 인에이블 신호를 입력하고, 상기 입력 수에 대응한 비트수의 인코드 결과인 제 3 인코드 신호 및 상기 입력 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 3 인에이블 신호를 출력하는 하나 이상의 확장용 인코더 회로와,
    전단의 인코드 결과 중, 우선도가 가장 높은, 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만을 출력하기 위한 복수의 확장용 멀티플렉서
    를 갖는 1 단 이상의 확장회로가 상기 우선순위·인코더의 출력에 계층적으로 설치된 우선순위·인코더.
  4. 제 1 항 또는 제 2 항에 기재된 우선순위·인코더를 복수개 구비하고,
    복수의 상기 우선순위·인코더에 입력되는 모든 입력신호로부터 미리 설정된 우선도에 따라서 상기 어드레스를 순차적으로 출력하기 위한 1 단 이상의 확장회로가 상기 우선순위·인코더의 출력에 계층적으로 형성되며,
    제 1 인코더 회로 및 제 2 인코더 회로의 입력신호수를 m, 상기 확장회로의 단수를 n, k 를 0 에서 n-1 까지의 정수로 했을 때,
    제 n-k 단의 상기 확장회로에,
    입력신호수가 m 이고, 전단으로부터의 인에이블 신호를 입력하여 상기 입력수에 대응한 비트수의 인코드 결과인 제 3 인코드 신호 및 상기 입력 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 3 인에이블 신호를 출력하는 mk개의 확장용 인코더 회로와,
    전단의 인코드 결과 중, 우선도가 가장 높은, 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만을 출력하기 위한 (n+1)(m-1) 개 이상의 확장용 멀티플렉서를 갖는 우선순위·인코더.
  5. 제 4 항에 있어서, 상기 제 1 인코더 회로, 상기 제 2 인코더 회로 및 상기 확장용 인코더 회로는, 4 개의 입력신호에서 2 비트의 인코드 결과를 출력하고,
    상기 멀티플렉서 및 확장용 멀티플렉서는 2 개의 2 비트의 인코드 결과 중 어느 한쪽을 출력하는 우선순위·인코더.
  6. 어드레스에 코드화하고자 하는 신호가 포함된 복수의 입력신호로부터, 미리 설정된 우선도에 따라 상기 어드레스를 순차적으로 출력하는 우선순위·인코드방법으로,
    상기 복수의 입력신호를 소정수마다 분할하고, 상기 소정수의 입력신호로부터, 상기 소정수에 대응하는 비트수의 인코드 결과인 제 1 인코드 신호 및 상기 소정수의 입력신호 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 1 인에이블 신호를 각각 출력하는 제 1 공정과,
    상기 인코드 결과 중, 우선도가 가장 높은, 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만을 출력하는 제 2 공정과,
    상기 제 1 인에이블 신호로부터, 상기 제 1 인이에블 신호의 수에 대응한 비트수의 인코드 결과인 제 2 인코드 신호 및 상기 제 1 인에이블 신호 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 2 인에이블 신호를 출력하는 제 3 공정을 갖는 우선순위·인코드 방법.
  7. 제 6 항에 있어서, 상기 제 2 공정은,
    상기 제 1 인에이블 신호의 공급원인, 제 1 인코드 신호인 제 1 출력신호, 상기 제 1 출력신호보다도 우선도가 낮은 인코드 신호인 제 2 출력신호를 각각 입력하여,
    상기 제 1 인에이블 신호로부터 상기 어드레스에 코드화하고자 하는 신호가 있는 경우에는 상기 제 1 출력신호를 출력하고, 상기 어드레스에 코드화하고자 하는 신호가 없는 경우에는 상기 제 2 출력신호를 출력하는 우선순위·인코드 방법.
  8. 제 6 항 또는 제 7 항에 기재된 우선순위·인코드 방법으로 출력된 복수 신호에 대하여,
    전단으로부터의 인에이블신호를 입력하고, 상기 입력수에 대응하는 비트수의 인코드 결과인 제 3 인코드 신호 및 상기 입력중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 3 인에이블신호를 출력하는 하나 이상의 제 1 확장용 공정과,
    전단의 인코드 결과중, 우선도가 가장 높은, 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만을 출력하기 위한 복수의 제 2 확장용 공정을 갖는 1 단 이상의 확장공정을 계층적으로 처리하는 우선순위·인코드 방법.
  9. 제 6 항 또는 제 7 항에 기재된 우선순위·인코드 방법으로 출력된 복수 신호에 대해 미리 설정된 우선도에 따라 상기 어드레스를 순차적으로 출력하기 위한 1 단 이상의 확장공정을 계층적으로 처리하고,
    제 1 공정 및 제 2 공정의 입력신호수를 m, 상기 확장공정의 단수를 n, k 를 0 에서 n-1 까지의 정수로 하였을 때,
    제 n-k 단째의 상기 확장공정은
    입력신호수가 m 이고, 전단으로부터의 인에이블 신호를 입력하여 상기 입력수에 대응하는 비트수의 인코드 결과인 제 3 인코드신호 및 상기 입력 중에 상기 어드레스에 코드화하고자 하는 신호가 있는지의 여부를 나타내는 제 3 인에이블 신호를 출력하여, 병렬처리되는 mk의 제 1 확장용 공정과,
    전단의 인코드 결과중, 우선도가 가장 높은 상기 어드레스에 코드화하고자 하는 신호의 인코드 결과만을 출력하기 위하여 병렬처리되는 (n+1)(m-1) 이상의 제 2 확장용 공정을 갖는 우선순위·인코드 방법.
  10. 제 9 항에 있어서, 상기 제 1 공정, 상기 제 3 공정 및 상기 제 1 확장용 공정에서는 4 개의 입력신호에서 2 비트의 인코드 결과를 출력하고,
    상기 제 2 공정 및 상기 제 2 확장용 공정에서는 2 개의 2 비트의 인코드 결과중 어느 한쪽을 출력하는 우선순위·인코드 방법.
KR1019980055381A 1997-12-16 1998-12-16 우선순위·인코더 및 우선순위·인코드 방법 KR100291814B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP34644497A JP3166838B2 (ja) 1997-12-16 1997-12-16 プライオリティ・エンコーダ及びプライオリティ・エンコード方法
JP97-346444 1997-12-16

Publications (2)

Publication Number Publication Date
KR19990063101A true KR19990063101A (ko) 1999-07-26
KR100291814B1 KR100291814B1 (ko) 2001-07-12

Family

ID=34225003

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980055381A KR100291814B1 (ko) 1997-12-16 1998-12-16 우선순위·인코더 및 우선순위·인코드 방법

Country Status (4)

Country Link
US (1) US5973950A (ko)
JP (1) JP3166838B2 (ko)
KR (1) KR100291814B1 (ko)
CN (1) CN1119811C (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050058867A (ko) * 2003-12-12 2005-06-17 삼성전자주식회사 아날로그-디지털 변환 제어장치 및 그 방법

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3141866B2 (ja) * 1999-01-18 2001-03-07 日本電気株式会社 連想記憶装置及び連想メモリ検索方法
US6591331B1 (en) 1999-12-06 2003-07-08 Netlogic Microsystems, Inc. Method and apparatus for determining the address of the highest priority matching entry in a segmented content addressable memory device
US6256253B1 (en) 2000-02-18 2001-07-03 Infineon Technologies North America Corp. Memory device with support for unaligned access
CA2321466C (en) 2000-09-29 2006-06-06 Mosaid Technologies Incorporated Priority encoder circuit and method
EP1356471A1 (en) * 2001-01-30 2003-10-29 Memcall Inc. Combined content addressable memories
US6865097B2 (en) * 2001-07-06 2005-03-08 Micron Technology, Inc. Priority encoder
TW569090B (en) * 2001-07-17 2004-01-01 Taiwan Semiconductor Mfg Priority address encoder and method of the same
ITMI20012795A1 (it) * 2001-12-24 2003-06-24 St Microelectronics Srl Circuito di codifica binaria
KR100518599B1 (ko) * 2003-11-03 2005-10-04 삼성전자주식회사 우선 순위 엔코더의 결함 여부 테스트가 가능한 캠 및우선 순위 엔코더의 결함 여부 테스트 방법
TWI708253B (zh) * 2018-11-16 2020-10-21 力旺電子股份有限公司 非揮發性記憶體良率提升的設計暨測試方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5555397A (en) * 1992-01-10 1996-09-10 Kawasaki Steel Corporation Priority encoder applicable to large capacity content addressable memory
US5619446A (en) * 1992-01-10 1997-04-08 Kawasaki Steel Corporation Hierarchical encoder including timing and data detection devices for a content addressable memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050058867A (ko) * 2003-12-12 2005-06-17 삼성전자주식회사 아날로그-디지털 변환 제어장치 및 그 방법

Also Published As

Publication number Publication date
CN1220463A (zh) 1999-06-23
JPH11177429A (ja) 1999-07-02
JP3166838B2 (ja) 2001-05-14
CN1119811C (zh) 2003-08-27
US5973950A (en) 1999-10-26
KR100291814B1 (ko) 2001-07-12

Similar Documents

Publication Publication Date Title
US5555397A (en) Priority encoder applicable to large capacity content addressable memory
KR100291814B1 (ko) 우선순위·인코더 및 우선순위·인코드 방법
US4626825A (en) Logarithmic conversion apparatus
KR100500855B1 (ko) 연산장치의연산방법,기억매체및연산장치
US4747080A (en) Semiconductor memory having self correction function
US4825105A (en) Circuit for generation of logic variables, using multiplexes and inverters
JPS61107596A (ja) 連想記憶装置
US5467088A (en) Huffman code decoding circuit
US5721809A (en) Maximum value selector
US4857882A (en) Comparator array logic
US20020122337A1 (en) Content addressable memory having redundant circuit
US5995029A (en) Parallel bit counter using bit sorters
US6718433B1 (en) Match and priority encoding logic circuit
US4945509A (en) Dual look ahead mask generator
US7000066B1 (en) Priority encoder circuit for content addressable memory (CAM) device
JPH0666050B2 (ja) ソート処理方法
EP0814416B1 (en) Match and match address signal generation in a content addressable memory encoder
US3204221A (en) Character comparators
US6392570B1 (en) Method and system for decoding 8-bit/10-bit data using limited width decoders
JP3103416B2 (ja) プライオリティ・エンコーダ
US5285185A (en) Dual-coded data comparator
US7436688B1 (en) Priority encoder circuit and method
US4862346A (en) Index for a register file with update of addresses using simultaneously received current, change, test, and reload addresses
Singleton Load-sharing core switches based on block designs
Wei et al. A Global Self-Repair Method for TSV Arrays With Adaptive FNS-CAC Codec

Legal Events

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

Payment date: 20070313

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee