KR101986206B1 - 비휘발성 메모리 소자를 이용한 가변 입출력 구조의 룩업 테이블 회로 - Google Patents

비휘발성 메모리 소자를 이용한 가변 입출력 구조의 룩업 테이블 회로 Download PDF

Info

Publication number
KR101986206B1
KR101986206B1 KR1020180000936A KR20180000936A KR101986206B1 KR 101986206 B1 KR101986206 B1 KR 101986206B1 KR 1020180000936 A KR1020180000936 A KR 1020180000936A KR 20180000936 A KR20180000936 A KR 20180000936A KR 101986206 B1 KR101986206 B1 KR 101986206B1
Authority
KR
South Korea
Prior art keywords
multiplexer
storage unit
storage
power
unit
Prior art date
Application number
KR1020180000936A
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 연세대학교 산학협력단
Priority to KR1020180000936A priority Critical patent/KR101986206B1/ko
Application granted granted Critical
Publication of KR101986206B1 publication Critical patent/KR101986206B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17724Structural details of logic blocks
    • H03K19/17728Reconfigurable logic blocks, e.g. lookup tables
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/1776Structural details of configuration resources for memories

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Sources (AREA)

Abstract

본 실시예들은 복수의 비휘발성 소자 및 하나 이상의 멀티플렉서를 조합하고, 입력 비트의 일부 비트에 대응하여 복수의 비휘발성 소자에 데이터를 저장하고, 멀티플렉서가 입력 비트의 나머지 비트에 대응하여 복수의 비휘발성 소자 중에서 일부를 선택하고, 비휘발성 소자 및/또는 멀티플렉서의 전원을 선택적으로 턴오프함으로써, 입출력이 가변적인 구조를 가지면서 불필요한 소모 전력을 제거할 수 있는 룩업 테이블 회로를 제공한다.

Description

비휘발성 메모리 소자를 이용한 가변 입출력 구조의 룩업 테이블 회로 {Lookup Table Circuit Having Variable Input And Output Structure Using Nonvolatile Memory Element}
본 실시예가 속하는 기술 분야는 비휘발성 메모리 소자를 이용한 룩업 테이블 회로에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
기존의 룩업 테이블 회로는 휘발성 메모리 소자를 이용하여 구현되었다. 휘발성 메모리 소자는 전원을 턴오프하면 데이터를 다시 기입(Write)해야 하기 때문에, 전원을 턴오프할 수 없는 문제점이 있다.
비휘발성 메모리 소자를 이용한 룩업 테이블 회로는 전원이 차단되어도 데이터를 저장할 수 있고, 독출 전력(Read Power)과 고정 전력(Static Power)를 감소시킬 수 있다. 하지만, 비휘발성 메모리 소자를 이용한 룩업 테이블 회로는 각 데이터 셀마다 비휘발성 메모리 소자를 갖기 때문에 회로의 사이즈가 커지는 문제가 있다.
본 발명의 실시예들은 복수의 비휘발성 소자 및 하나 이상의 멀티플렉서를 조합하고, 룩업 테이블 회로의 입력 비트의 일부 비트에 대응하여 복수의 비휘발성 소자에 데이터를 저장하고, 멀티플렉서가 입력 비트의 나머지 비트에 대응하여 복수의 비휘발성 소자 중에서 일부를 선택하고, 비휘발성 소자 및/또는 멀티플렉서의 전원을 선택적으로 턴오프함으로써, 룩업 테이블 회로의 입출력이 가변적인 구조를 가지면서 불필요한 소모 전력을 제거하는 데 발명의 주된 목적이 있다.
본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.
본 실시예의 일 측면에 의하면, 복수의 입력 비트로 동작하는 룩업 테이블 회로에 있어서, 상기 입력 비트의 일부 비트에 대응하여, 비휘발성 소자에 데이터를 저장하는 복수의 저장부, 상기 입력 비트의 나머지 비트에 대응하여, 상기 복수의 저장부 중에서 일부를 선택하는 하나 이상의 멀티플렉서, 및 상기 복수의 저장부 및 상기 하나 이상의 멀티플렉서에 각각 연결되어 상기 데이터를 출력하는 출력 선택부를 포함하는 룩업 테이블 회로를 제공한다.
본 실시예의 다른 측면에 의하면, 복수의 저장부, 하나 이상의 멀티플렉서, 출력 선택부, 및 전원 제어부를 포함하는 룩업 테이블 회로의 동작 방법에 있어서, 상기 복수의 저장부가 상기 입력 비트의 일부 비트에 대응하여, 비휘발성 소자에 데이터를 저장하는 단계, 상기 하나 이상의 멀티플렉서가 상기 입력 비트의 나머지 비트에 대응하여, 상기 복수의 비휘발성 소자 중에서 일부를 선택하는 단계, 상기 전원 제어부가 상기 복수의 저장부, 상기 하나 이상의 멀티플렉서, 및 상기 출력 선택부 중에서 일부의 전원을 턴온 또는 턴오프하는 단계, 및 상기 출력 선택부가 상기 데이터를 출력하는 단계를 포함하는 룩업 테이블 회로의 동작 방법을 제공한다.
이상에서 설명한 바와 같이 본 발명의 실시예들에 의하면, 복수의 비휘발성 소자 및 하나 이상의 멀티플렉서를 조합하고, 룩업 테이블 회로의 입력 비트의 일부 비트에 대응하여 복수의 비휘발성 소자에 데이터를 저장하고, 멀티플렉서가 입력 비트의 나머지 비트에 대응하여 복수의 비휘발성 소자 중에서 일부를 선택하고, 비휘발성 소자 및/또는 멀티플렉서의 전원을 선택적으로 턴오프함으로써, 룩업 테이블 회로의 입출력이 가변적인 구조를 가지면서 불필요한 소모 전력을 제거할 수 있는 효과가 있다.
본 발명의 실시예들에 의하면, 룩업 테이블에 대하여 비휘발성 소자를 이용하여 가변 입출력 구조를 형성함으로써, 실시간으로 데이터를 읽고 쓰는 애플리케이션을 구동시키더라도, 독출 시간을 감소시키고, 전체 하드웨어 면적을 감소시킬 수 있고, 전체 소비전력을 감소시킬 수 있는 효과가 있다.
여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급된다.
도 1은 PCSA(Pre-Charged Sense Amplifier) 기반의 룩업 테이블 회로를 예시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 룩업 테이블 회로의 개념도이다.
도 3 및 도 4는 본 발명의 실시예들에 따른 룩업 테이블 회로를 예시한 블록도이다.
도 5a 내지 도 8은 본 발명의 실시예들에 따른 룩업 테이블 회로를 예시한 회로도이다.
도 9는 본 발명의 다른 실시예에 따른 룩업 테이블 회로의 동작 방법을 예시한 흐름도이다.
도 10은 본 발명의 실시예들에 따라 MRAM LUT와 비교하여 수행된 모의실험 결과를 도시한 것이다.
도 11a, 도 11b, 및 도 11c는 본 발명의 실시예들에 따라 SRAM LUT와 비교하여 수행된 모의실험 결과를 도시한 것이다.
이하, 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하고, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다.
도 1은 PCSA(Pre-Charged Sense Amplifier) 기반의 룩업 테이블 회로를 예시한 블록도이다. 도 1을 참조하면, PCSA 기반의 비휘발성 룩업 테이블 회로는 데이터 한 개당 감지 증폭기(Sense Amplifier)를 각각 갖는 것과 같이 동작하므로, 회로 사이즈가 비교적 크다. 예컨대, N(N은 자연수) 입력의 룩업 테이블은 2N개의 PCSA 데이터 셀(데이터 셀)을 갖는다.
일반적으로 동작하는 각 PCSA 데이터 셀은 프리 차지(Pre-Charge) 상태로 전원을 차단하고 있다가, 룩업 테이블의 입력에 의해 선택이 되면 프리 차지 전압을 이용하여 데이터를 읽고, 이후 래치(Latch)로 데이터를 유지한다. 프리 차지 전압을 이용하여 저전력으로 데이터를 읽기 때문에, 독출 전력(Read Power)이 개선된다. 데이터 읽기가 완료되면 래치(Latch)로 인해 작은 누설(Leakage) 전류만 흐르게 되므로 고정 전력(Static Power) 소모가 작다.
2N개의 PCSA 데이터 셀의 출력을 하나로 묶고 출력단 인버터(Output Inverter)에 의해 선택된 출력이 최종 출력으로 사용되므로, N이 커질수록 출력단의 부하(Load)도 커지게 되어 독출 시간(Read Time) 및 독출 전력(Read Power)이 증가하게 된다.
PCSA 기반의 비휘발성 룩업 테이블이 큰 사이즈를 갖는 것은 2N개의 PCSA 데이터 셀이 주 원인이므로 2N개의 PCSA 데이터 셀을 최대한 이용할 수 있도록 입출력 구조를 가변할 필요가 있다.
도 2는 입출력 가변 구조를 갖는 룩업 테이블 회로의 개념도이다. 도 2를 참조하면, PCSA 데이터 셀이 2N개가 있을 경우에, PCSA 데이터 셀을 몇 개씩 묶어서 사용하느냐에 따라 룩업 테이블의 입력 단위를 줄일 수 있고 입력 단위를 줄인 만큼 여러 개의 룩업 테이블을 사용할 수 있다.
예컨대, PCSA 데이터 셀의 개수가 64개일 경우, 1개의 6입력 룩업 테이블은 64개의 PSCA 데이터 셀에 대하여 64개의 PSCA 데이터 셀을 그룹으로 묶고 1개의 그룹으로 지정할 수 있다. 2개의 5입력 룩업 테이블은 64개의 PSCA 데이터 셀에 대하여 32개의 PSCA 데이터 셀마다 그룹으로 묶고, 2개의 그룹으로 지정하여 사용할 수 있다. 4개의 4입력 룩업 테이블은 64개의 PSCA 데이터 셀에 대하여 16개의 PSCA 데이터 셀마다 그룹으로 묶고, 4개의 그룹으로 지정하여 사용할 수 있다. 8개의 3입력 룩업 테이블은 64개의 PSCA 데이터 셀에 대하여 8개의 PSCA 데이터 셀마다 그룹으로 묶고, 8개의 그룹으로 지정하여 사용할 수 있다. 16개의 2입력 룩업 테이블은 64개의 PSCA 데이터 셀에 대하여 4개의 PSCA 데이터 셀마다 그룹으로 묶고, 16개의 그룹으로 지정하여 사용할 수 있다.
적절한 최하위 입력 룩업 테이블과 최상위 입력 룩업 테이블을 설정하여 원하는 입력 범위와 다출력 간에 대응하도록 설계가 가능하다.
도 3 및 도 4는 본 발명의 실시예들에 따른 룩업 테이블 회로를 예시한 블록도이다.
도 3에 도시한 바와 같이, 룩업 테이블 회로(300)는 저장부(310), 멀티플렉서(320), 및 출력 선택부(330)를 포함한다. 룩업 테이블 회로(300)는 도 3에서 예시적으로 도시한 다양한 구성요소들 중에서 일부 구성요소를 생략하거나 다른 구성요소를 추가로 포함할 수 있다. 예컨대, 도 4를 참조하면, 룩업 테이블 회로(400)는 전원 제어부(440)를 추가로 포함할 수 있다.
룩업 테이블은 각 레코드에 대해 특정 값을 대응시키는 키와 그에 관한 정보를 갖고 있는 테이블이다. 테이블은 정적인 저장소에 미리 계산되어 저장하거나, 배열, 포인터 함수, 또는 오프셋 등을 이용하여 프로그램 초기화 과정에서 계산될 수도 있다. 룩업 테이블 회로(300, 400)는 복수의 입력 비트로 동작하며, 입력 비트에 일치하는 항목 값들을 처리한다. 여기서, 입력 비트는 룩업 테이블의 데이터에 관한 비트이다. 예를 들어, N 입력 비트이면 룩업 테이블은 2N개의 데이터를 처리할 수 있다.
룩업 테이블 회로(300, 400)는 선택 신호를 통하여 출력 선택부(330, 430) 및/또는 전원 제어부(440)를 제어한다. 룩업 테이블 회로(300, 400)는 출력 선택부(330, 430) 및/또는 전원 제어부(440)로 선택 신호를 전송하여 룩업 테이블의 입출력을 가변하고, 소자의 전원을 제어한다.
저장부(310, 410)는 입력 비트의 일부 비트에 대응하여, 비휘발성 소자에 데이터를 저장한다. 룩업 테이블 회로(400)에서 저장부(310, 410)는 복수로 구현될 수 있다.
멀티플렉서(320, 420)는 입력 비트의 나머지 비트에 대응하여, 복수의 저장부 중에서 일부를 선택한다. 룩업 테이블 회로(400)에서 멀티플렉서(320, 420)는 하나 이상으로 구현될 수 있다.
출력 선택부(330, 430)는 복수의 저장부(310, 410) 및 하나 이상의 멀티플렉서(320, 420)에 각각 연결되어 데이터를 출력한다. 룩업 테이블 회로(400)에서 출력 선택부(330, 430)는 하나 또는 복수의 모듈로 구현될 수 있다. 예컨대, 출력 선택부(330, 430)는 복수의 모듈이 분산 연결되어 각각 처리하는 방식 또는 하나의 모듈이 통합적으로 지시하여 처리하는 방식으로 구현될 수 있다.
전원 제어부(440)는 복수의 저장부(310, 410), 하나 이상의 멀티플렉서(320, 420), 및 출력 선택부(330, 430)에 각각 연결되어 복수의 저장부(310, 410), 하나 이상의 멀티플렉서(320, 420), 및 출력 선택부(330, 430) 중에서 일부의 전원을 턴온 또는 턴오프할 수 있다. 룩업 테이블 회로(400)에서 전원 제어부(440)는 하나 또는 복수의 모듈로 구현될 수 있다. 예컨대, 전원 제어부(440)는 복수의 모듈이 분산 연결되어 각각 처리하는 방식 또는 하나의 모듈이 통합적으로 지시하여 처리하는 방식으로 구현될 수 있다.
룩업 테이블 회로(400)는 복수의 저장부(410) 및 하나 이상의 멀티플렉서(420) 중에서 두 개 이상을 조합하여 복수의 저장 블록을 형성하여 동작할 수 있다. 전원 제어부(440)는 복수의 저장 블록을 형성하지 않은 저장부 및/또는 멀티플렉서의 전원을 턴오프한다.
룩업 테이블 회로(400)는 복수의 저장부(410) 및 복수의 저장부에 연결된 출력 선택부(430)에 대하여 복수의 저장 블록을 형성하여 동작할 수 있다. 전원 제어부(440)는 복수의 저장 블록을 형성하지 않은 멀티플렉서의 전원 및 멀티플렉서에 연결된 출력 선택부의 전원을 턴오프한다.
전원 제어부(440)는 멀티플렉서에 관한 입력 비트의 나머지 비트 값에 기반하여, 비트 값에 해당하는 저장부의 전원 및 비트 값에 해당하는 저장부에 연결된 출력 선택부의 전원을 턴온한다. 전원 제어부(440)는 멀티플렉서에 관한 입력 비트의 나머지 비트 값에 기반하여, 비트 값에 해당하지 않는 저장부의 전원 및 비트 값에 해당하지 않는 저장부에 연결된 출력 선택부의 전원을 턴오프한다.
룩업 테이블 회로(400)에서 멀티플렉서(420)의 개수는 복수일 수 있으며, 입력 비트의 나머지 비트를 기반으로 복수의 멀티플렉서를 연결하여 조합하고, 조합된 복수의 멀티플렉서는 룩업 테이블 회로(400)에 배치된다. 조합된 복수의 멀티플렉서는 나머지 비트의 상위 비트 및 하위 비트를 기준으로 복수의 저장부 중에서 일부를 선택한다.
전원 제어부(440)는 조합된 복수의 멀티플렉서에 관한 나머지 비트의 상위 비트 값 및 하위 비트 값에 기반하여, 상위 비트 값에 해당하지 않는 멀티플렉서의 전원 및 상기 상위 비트 값에 해당하지 않는 멀티플렉서에 연결된 출력 선택부의 전원을 턴오프할 수 있다. 전원 제어부(440)는 조합된 복수의 멀티플렉서에 관한 나머지 비트의 상위 비트 값 및 하위 비트 값에 기반하여, 하위 비트 값에 해당하지 않는 저장부의 전원 및 하위 비트 값에 해당하지 않는 저장부에 연결된 출력 선택부의 전원을 턴오프할 수 있다.
도 5a 내지 도 5c는 2개의 저장부와 1개의 멀티플렉서를 포함하는 가변 입출력 구조의 룩업 테이블 회로를 예시한 회로도이다.
도 5a를 참조하면, 룩업 테이블 회로에서 복수의 저장부는 제1 저장부(5011a) 및 제2 저장부(5012a)를 포함하고, 멀티플렉서는 제1 멀티플렉서(5021a)를 포함한다.
출력 선택부(5031a, 5032a, 5033a)는 제1 저장부(5011a), 제2 저장부(5012a), 제1 멀티플렉서(5021a)에 각각 연결되어 데이터를 출력한다. 도 5a에서는 출력 선택부(5031a, 5032a, 5033a)가 복수의 모듈이 분산 연결되어 각각 처리하는 방식으로 도시되어 있으나 하나의 모듈이 통합적으로 지시하여 처리하는 방식으로 구현될 수 있다.
전원 제어부(5041a, 5042a, 5043a, 5044a, 5045a, 5046a)는 제1 저장부(5011a), 제2 저장부(5012a), 제1 멀티플렉서(5021a), 및 출력 선택부(5031a, 5032a, 5033a)에 각각 연결되어 제1 저장부(5011a), 제2 저장부(5012a), 제1 멀티플렉서(5021a), 및 출력 선택부(5031a, 5032a, 5033a) 중에서 일부의 전원을 턴온 또는 턴오프할 수 있다. 도 5a에서는 전원 제어부(5041a, 5042a, 5043a, 5044a, 5045a, 5046a)가 복수의 모듈이 분산 연결되어 각각 처리하는 방식으로 도시되어 있으나 하나의 모듈이 통합적으로 지시하여 처리하는 방식으로 구현될 수 있다.
도 5b를 참조하면, 룩업 테이블 회로는 2개의 저장 블록(501b, 502b)으로 동작할 수 있다. 즉, 제1 저장부(5011b) 및 제2 저장부(5012b)는 개별적으로 동작할 수 있다. 2개의 저장 블록(501b, 502b)으로 동작하는 룩업 테이블 회로에서 제1 멀티플렉서(5021b)에 연결된 전원 제어부(5043b)는 제1 멀티플렉서(5021b)의 전원을 턴오프한다. 출력 선택부(5033b)에 연결된 전원 제어부(5046b)는 제1 멀티플렉서(5021b)에 연결된 출력 선택부(5033b)의 전원을 턴오프한다. 2개의 저장 블록(501b, 502b)과 관련된 소자들(5011b, 5012b, 5031b, 5032b)의 전원은 필요에 따라 전원 제어부(5041a, 5042a, 5044a, 5045a)에 의해 턴온 또는 턴오프된다.
도 5c를 참조하면, 룩업 테이블 회로는 1개의 저장 블록(501c)으로 동작할 수 있다. 제1 저장부(5011c) 및 제2 저장부(5012c)에 N-1 비트가 동시에 입력될 수 있다. 1개의 저장 블록(501c)과 관련된 소자들(5011c, 5012c, 5021c, 5031c, 5032c, 5033c)의 전원은 필요에 따라 전원 제어부(5041c, 5042c, 5043c 5044c, 5045c, 5046c)에 의해 턴온 또는 턴오프된다.
전원 제어부(5041c, 5042c, 5043c, 5044c, 5045c, 5046c)는 제1 멀티플렉서(5021c)에 관한 입력 비트의 나머지 비트 값에 기반하여, 제1 저장부(5011c) 및 제2 저장부(5012c) 중에서 (i) 비트 값에 해당하는 저장부의 전원을 턴온하고, (ii) 비트 값에 해당하지 않는 저장부의 전원을 턴오프한다.
도 6a 내지 도 6c은 4개의 저장부와 1개의 멀티플렉서를 포함하는 가변 입출력 구조의 룩업 테이블 회로를 예시한 회로도이다.
도 6a를 참조하면, 룩업 테이블 회로에서 복수의 저장부는 제1 저장부(6011a), 제2 저장부(6012a), 제3 저장부(6013a), 및 제4 저장부(6014a)를 포함하고, 멀티플렉서는 제1 멀티플렉서(6021a)를 포함한다.
출력 선택부(6031a, 6032a, 6033a, 6034a, 6035a)는 제1 저장부(6011a), 제2 저장부(6012a), 제3 저장부(6013a), 제4 저장부(6014a), 및 제1 멀티플렉서(6021a)에 각각 연결되어 데이터를 출력한다. 도 6a에서는 출력 선택부(6031a, 6032a, 6033a, 6034a, 6035a)가 복수의 모듈이 분산 연결되어 각각 처리하는 방식으로 도시되어 있으나 하나의 모듈이 통합적으로 지시하여 처리하는 방식으로 구현될 수 있다.
전원 제어부(6041a, 6042a, 6043a, 6044a, 6045a, 6051a, 6052a, 6053a, 6054a, 6055a)는 제1 저장부(6011a), 제2 저장부(6012a), 제3 저장부(6013a), 제4 저장부(6014a), 제1 멀티플렉서(6021a), 및 출력 선택부(6031a, 6032a, 6033a, 6034a, 6035a)에 각각 연결되어 제1 저장부(6011a), 제2 저장부(6012a), 제3 저장부(6013a), 제4 저장부(6014a), 제1 멀티플렉서(6021a), 및 출력 선택부(6031a, 6032a, 6033a, 6034a, 6035a) 중에서 일부의 전원을 턴온 또는 턴오프할 수 있다. 도 6a에서는 전원 제어부(6041a, 6042a, 6043a, 6044a, 5045a, 6051a, 6052a, 6053a, 6054a, 6055a)가 복수의 모듈이 분산 연결되어 각각 처리하는 방식으로 도시되어 있으나 하나의 모듈이 통합적으로 지시하여 처리하는 방식으로 구현될 수 있다.
도 6b를 참조하면, 룩업 테이블 회로는 4개의 저장 블록(601b, 602b, 603b, 604b)으로 동작할 수 있다. 즉, 제1 저장부(6011b), 제2 저장부(6012b), 제3 저장부(6013b), 및 제4 저장부(6014b)는 개별적으로 동작할 수 있다. 4개의 저장 블록(601b, 602b, 603b, 604b)으로 동작하는 룩업 테이블 회로에서 제1 멀티플렉서(6021b)에 연결된 전원 제어부(6045b)는 제1 멀티플렉서(6021b)의 전원을 턴오프한다. 출력 선택부(6035b)에 연결된 전원 제어부(6055b)는 제1 멀티플렉서(6021b)에 연결된 출력 선택부(6035b)의 전원을 턴오프한다. 4개의 저장 블록(601b, 602b, 603b, 604b)과 관련된 소자들(6011b, 6012b, 6013b, 6014b, 6031b, 6032b, 6033b, 6034b)의 전원은 필요에 따라 전원 제어부(6041b, 6042b, 6043b, 6044b, 6051b, 6052b, 6053b, 6054b)에 의해 턴온 또는 턴오프된다.
도 6c를 참조하면, 룩업 테이블 회로는 1개의 저장 블록(601c)으로 동작할 수 있다. 제1 저장부(6011c), 제2 저장부(6012c), 제3 저장부(6013c), 및 제4 저장부(6014c)에 N-1 비트가 동시에 입력될 수 있다. 1개의 저장 블록(601c)과 관련된 소자들(6011c, 6012c, 6013c, 6014c, 6021c, 6031c, 6031c, 6032c, 6033c, 6034c, 6035c)의 전원은 필요에 따라 전원 제어부(6041c, 6042c, 6043c, 6044c, 6045c, 6051c, 6052c, 6053c, 6054c, 6055c)에 의해 턴온 또는 턴오프된다.
전원 제어부(6041c, 6042c, 6043c, 6044c, 6045c, 6051c, 6052c, 6053c, 6054c, 6055c)는 제1 멀티플렉서(6021c)에 관한 입력 비트의 나머지 비트 값에 기반하여, 제1 저장부(6011c), 제2 저장부(6012c), 제3 저장부(6013c), 및 제4 저장부(6014c) 중에서 (i) 비트 값에 해당하는 저장부의 전원을 턴온하고, (ii) 비트 값에 해당하지 않는 저장부의 전원을 턴오프한다.
도 7a 내지 도 7d는 4개의 저장부와 3개의 멀티플렉서를 포함하는 가변 입출력 구조의 룩업 테이블 회로를 예시한 회로도이다.
도 7a를 참조하면, 룩업 테이블 회로에서 복수의 저장부는 제1 저장부(7011a), 제2 저장부(7012a), 제3 저장부(7013a), 및 제4 저장부(7014a)를 포함하고, 멀티플렉서는 제1 멀티플렉서(7021a), 제2 멀티플렉서(7022a), 및 제3 멀티플렉서(7023a)를 포함한다. 제1 멀티플렉서(7021a)는 제1 저장부(7011a) 및 제2 저장부(7012a)에 연결되고, 제2 멀티플렉서(7022a)는 제3 저장부(7013a) 및 제4 저장부(7014a)에 연결되고, 제3 멀티플렉서(7023a)는 제1 멀티플렉서(7021a) 및 제2 멀티플렉서(7022a)에 연결된다.
출력 선택부(7031a, 7032a, 7033a, 7034a, 7035a, 7036a, 7037a)는 제1 저장부(7011a), 제2 저장부(7012a), 제3 저장부(7013a), 제4 저장부(7014a), 제1 멀티플렉서(7021a), 제2 멀티플렉서(7022a), 및 제3 멀티플렉서(7023a)에 각각 연결되어 데이터를 출력한다. 도 7a에서는 출력 선택부(7031a, 7032a, 7033a, 7034a, 7035a, 7036a, 7037a)는 복수의 모듈이 분산 연결되어 각각 처리하는 방식으로 도시되어 있으나 하나의 모듈이 통합적으로 지시하여 처리하는 방식으로 구현될 수 있다.
전원 제어부(7041a, 7042a, 7043a, 7044a, 7045a, 7046a, 7047a, 7051a, 7052a, 7053a, 7054a, 7055a, 7056a, 7057a)는 제1 저장부(7011a), 제2 저장부(7012a), 제3 저장부(7013a), 제4 저장부(7014a), 제1 멀티플렉서(7021a), 제2 멀티플렉서(7022a), 제3 멀티플렉서(7023a), 및 출력 선택부(7031a, 7032a, 7033a, 7034a, 7035a, 7036a, 7037a)에 각각 연결되어 제1 저장부(7011a), 제2 저장부(7012a), 제3 저장부(7013a), 제4 저장부(7014a), 제1 멀티플렉서(7021a), 제2 멀티플렉서(7022a), 제3 멀티플렉서(7023a), 및 출력 선택부(7031a, 7032a, 7033a, 7034a, 7035a, 7036a, 7037a) 중에서 일부의 전원을 턴온 또는 턴오프할 수 있다. 도 7a에서는 전원 제어부(7041a, 7042a, 7043a, 7044a, 7045a, 7046a, 7047a, 7051a, 7052a, 7053a, 7054a, 7055a, 7056a, 7057a)가 복수의 모듈이 분산 연결되어 각각 처리하는 방식으로 도시되어 있으나 하나의 모듈이 통합적으로 지시하여 처리하는 방식으로 구현될 수 있다.
도 7b를 참조하면, 룩업 테이블 회로는 4개의 저장 블록(701b, 702b, 703b, 704b)으로 동작할 수 있다. 즉, 제1 저장부(7011b), 제2 저장부(7012b), 제3 저장부(7013b), 및 제4 저장부(7014a)는 개별적으로 동작할 수 있다.
4개의 저장 블록(701b, 702b, 703b, 704b)으로 동작하는 룩업 테이블 회로에서 제1 멀티플렉서(7021b)에 연결된 전원 제어부(7045b)는 제1 멀티플렉서(7021b)의 전원을 턴오프한다. 출력 선택부(7035b)에 연결된 전원 제어부(7055b)는 제1 멀티플렉서(7021b)에 연결된 출력 선택부(7035b)의 전원을 턴오프한다.
제2 멀티플렉서(7022b)에 연결된 전원 제어부(7046b)는 제2 멀티플렉서(7022b)의 전원을 턴오프한다. 출력 선택부(7036b)에 연결된 전원 제어부(7056b)는 제2 멀티플렉서(7022b)에 연결된 출력 선택부(7036b)의 전원을 턴오프한다.
제3 멀티플렉서(7023b)에 연결된 전원 제어부(7047b)는 제3 멀티플렉서(7023b)의 전원을 턴오프한다. 출력 선택부(7037b)에 연결된 전원 제어부(7057b)는 제3 멀티플렉서(7023b)에 연결된 출력 선택부(7037b)의 전원을 턴오프한다.
4개의 저장 블록(701b, 702b, 703b, 704b)과 관련된 소자들(7011b, 7012b, 7013b, 7014b, 7031b, 7032b, 7033b, 7034b)의 전원은 필요에 따라 전원 제어부(7041b, 7042b, 7043b, 7044b, 7051b, 7052b, 7053b, 7054b)에 의해 턴온 또는 턴오프된다.
도 7c를 참조하면, 룩업 테이블 회로는 2개의 저장 블록(701c, 702c)으로 동작할 수 있다. 제3 멀티플렉서(7023c)에 연결된 전원 제어부(7047c)는 제3 멀티플렉서(7023c)의 전원을 턴오프한다. 출력 선택부(7037c)에 연결된 전원 제어부(7057c)는 제3 멀티플렉서(7023c)에 연결된 출력 선택부(7037c)의 전원을 턴오프한다.
제1 저장 블록(701c)에서 제1 저장부(7011c) 및 제2 저장부(7012c)에 N-2 비트가 동시에 입력될 수 있다. 제1 저장 블록(701c)과 관련된 소자들(7011c, 7012c, 7021c, 7031c, 7032c, 7035c)의 전원은 필요에 따라 전원 제어부(7041c, 7042c, 7045c, 7051c, 7052c, 7055c)에 의해 턴온 또는 턴오프된다.
전원 제어부(7041c, 7042c, 7045c, 7051c, 7052c, 7055c)는 제1 멀티플렉서(7021c)에 관한 입력 비트의 나머지 비트 값에 기반하여, 제1 저장부(7011c) 및 제2 저장부(7012c) 중에서 (i) 비트 값에 해당하는 저장부의 전원을 턴온하고, (ii) 비트 값에 해당하지 않는 저장부의 전원을 턴오프한다.
제2 저장 블록(702c)에서 제3 저장부(7013c) 및 제4 저장부(7014c)에 N-2 비트가 동시에 입력될 수 있다. 제2 저장 블록(702c)과 관련된 소자들(7013c, 7014c, 7022c, 7033c, 7034c, 7036c)의 전원은 필요에 따라 전원 제어부(7043c, 7044c, 7046c, 7053c, 7054c, 7056c)에 의해 턴온 또는 턴오프된다.
전원 제어부(7043c, 7044c, 7046c, 7053c, 7054c, 7056c)는 제2 멀티플렉서(7022c)에 관한 입력 비트의 나머지 비트 값에 기반하여, 제3 저장부(7013c) 및 제4 저장부(7014c) 중에서 (i) 비트 값에 해당하는 저장부의 전원을 턴온하고, (ii) 비트 값에 해당하지 않는 저장부의 전원을 턴오프한다.
도 7d를 참조하면, 제1 멀티플렉서(7021d)는 제1 저장부(7011d) 및 제2 저장부(7012d)에 연결되고, 제2 멀티플렉서(7022d)는 제3 저장부(7013d) 및 제4 저장부(7014d)에 연결되고, 제3 멀티플렉서(7023d)는 제1 멀티플렉서(7021d) 및 제2 멀티플렉서(7022d)에 연결된다.
제3 멀티플렉서(7023d)는 나머지 비트의 상위 비트(N)에 대응하고, 제1 멀티플렉서(7021d) 및 제2 멀티플렉서(7021d)는 나머지 비트의 하위 비트(N-1)에 대응한다.
룩업 테이블 회로는 1개의 저장 블록(701d)으로 동작할 수 있다. 제1 저장부(7011d), 제2 저장부(7012d), 제3 저장부(7013d), 및 제4 저장부(7014d)에 N-2 비트가 동시에 입력될 수 있다. 1개의 저장 블록(701d)과 관련된 소자들(7011d, 7012d, 7013d, 7014d, 7021d, 7022d, 7023d, 7031d, 7032d, 7033d, 7034d, 7035d, 7036d, 7037d)의 전원은 필요에 따라 전원 제어부(7041d, 7042d, 7043d, 7044d, 7045d, 7046d, 7047d, 7051d, 7052d, 7053d, 7054d, 7055d, 7056d, 7057d)에 의해 턴온 또는 턴오프된다.
전원 제어부(7051d, 7052d, 7053d, 7054d, 7055d, 7056d, 7057d)는 제3 멀티플렉서(7023d)에 관한 나머지 비트의 상위 비트 값(N)에 기반하여, 제1 멀티플렉서(7021d) 및 제2 멀티플렉서(7022d) 중에서 상위 비트 값에 해당하지 않는 멀티플렉서의 전원을 턴오프한다. 전원 제어부(7051d, 7052d, 7053d, 7054d, 7055d, 7056d, 7057d)는 제1 멀티플렉서(7021d) 및 제2 멀티플렉서(7022d)에 관한 나머지 비트의 하위 비트 값(N-1)에 기반하여, 제1 저장부(7011d), 제2 저장부(7012d), 제3 저장부(7013d), 및 제4 저장부(7014d) 중에서 하위 비트 값에 해당하지 않는 저장부의 전원을 턴오프한다.
도 8은 가변 입출력 구조를 갖는 룩업 테이블 회로를 예시한 회로도이다. 최상위 입력의 크기를 N이라 하고 최하위 입력의 크기를 N-2이라 하면, (i) 1개의 N 입력 LUT, (ii) 2개의 N-1 입력 LUT, (iii) 4개의 N-2 입력 LUT로 사용 가능하다.
4개의 N-2 입력 LUT로 사용할 경우에, LUT 입력은 4쌍의 N-2 입력(N-2 bit Data01 ~ Data16)이고, LUT 출력은 N-2 입력 LUT의 4쌍 출력(Out1 ~ Out4)이다. 해당하는 출력 선택기만 온상태이고, 나머지 회로는 오프상태이다. 즉, 4개의 일반적인 N-2 LUT가 따로 동작하는 것과 같다.
2개 N-1 입력 LUT로 사용할 경우에, LUT 입력은 TG(Transmission Gate)에 의한 2쌍의 입력이며, 각 입력은 1쌍의 N-2 입력 및 1개의 N-1 입력(N-1 bit data1 또는 data 2)이다. LUT 출력은 N-1 입력 LUT의 2쌍 출력(Out1 ~ Out2)이다. 해당하는 출력 선택기만 온상태이고, 나머지는 오프상태이다. 예컨대, 4개의 N-2 입력 LUT 중에서 N-1 입력에 의해 선택된 2개의 LUT와 2개의 멀티플렉서가 동작하고, 나머지 회로(예컨대, 선택되지 않은 최하위 입력 LUT)는 오프될 수 있다.
1개 N 입력 LUT로 사용할 경우에, LUT 입력은 TG(Transmission Gate)에 의한 1쌍의 입력이며, 각 입력은 1쌍의 N-2 입력, 1개의 N-1 입력, 및 1개의 N 입력이다. LUT 출력은 N 입력 LUT OUT의 출력이다. 해당하는 출력 선택기만 온상태이다. 예컨대, 4개의 N-2 입력 LUT 중에서 N-1 입력에 의해 선택된 LUT와 3개의 멀티플렉서가 동작하고, 나머지 회로(예컨대, 선택되지 않은 최하위 입력 LUT)는 오프될 수 있다.
본 실시예에 의하면, 최하위 입력의 LUT, 멀티플렉서, 출력 선택기 모두에 대한 전원 제어가 가능하여 룩업 테이블 회로에서 사용하는 입출력에 해당하는 회로들만 동작시킬 수 있는 효과가 있다.
룩업 테이블 회로에 포함된 구성요소들이 도 3 내지 도 8에서는 분리되어 도시되어 있으나, 복수의 구성요소들은 상호 결합되어 적어도 하나의 모듈로 구현될 수 있다. 구성요소들은 장치 내부의 소프트웨어적인 모듈 또는 하드웨어적인 모듈을 연결하는 통신 경로에 연결되어 상호 간에 유기적으로 동작한다. 이러한 구성요소들은 하나 이상의 통신 버스 또는 신호선을 이용하여 통신한다.
룩업 테이블 회로는 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합에 의해 로직회로 내에서 구현될 수 있고, 범용 또는 특정 목적 컴퓨터를 이용하여 구현될 수도 있다. 장치는 고정배선형(Hardwired) 기기, 필드 프로그램 가능한 게이트 어레이(Field Programmable Gate Array, FPGA), 주문형 반도체(Application Specific Integrated Circuit, ASIC) 등을 이용하여 구현될 수 있다. 또한, 장치는 하나 이상의 프로세서 및 컨트롤러를 포함한 시스템온칩(System on Chip, SoC)으로 구현될 수 있다.
룩업 테이블 회로는 하드웨어적 요소가 마련된 컴퓨팅 디바이스에 소프트웨어, 하드웨어, 또는 이들의 조합하는 형태로 탑재될 수 있다. 컴퓨팅 디바이스는 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신장치, 프로그램을 실행하기 위한 데이터를 저장하는 메모리, 프로그램을 실행하여 연산 및 명령하기 위한 마이크로프로세서 등을 전부 또는 일부 포함한 다양한 장치를 의미할 수 있다.
도 9는 본 발명의 다른 실시예에 따른 룩업 테이블 회로의 동작 방법을 예시한 흐름도이다. 룩업 테이블 회로는 복수의 저장부, 하나 이상의 멀티플렉서, 출력 선택부, 및 전원 제어부를 포함한다.
단계 S910에서, 룩업 테이블 회로에서 복수의 저장부는 입력 비트의 일부 비트에 대응하여, 비휘발성 소자에 데이터를 저장한다.
단계 S920에서, 룩업 테이블 회로에서 하나 이상의 멀티플렉서는 입력 비트의 나머지 비트에 대응하여, 복수의 비휘발성 소자 중에서 일부를 선택한다.
단계 S930에서, 룩업 테이블 회로에서 전원 제어부는 복수의 저장부, 하나 이상의 멀티플렉서, 및 출력 선택부 중에서 일부의 전원을 턴온 또는 턴오프한다.
단계 S940에서, 룩업 테이블 회로는 데이터를 출력한다.
룩업 테이블 회로는 복수의 저장부 및 하나 이상의 멀티플렉서 중에서 두 개 이상을 조합하여 복수의 저장 블록을 형성하여 동작한다. 전원 제어부는 복수의 저장 블록을 형성하지 않은 저장부 및/또는 멀티플렉서의 전원을 턴오프할 수 있다.
전원 제어부는 멀티플렉서에 관한 입력 비트의 나머지 비트 값에 기반하여, 비트 값에 해당하지 않는 저장부 및/또는 멀티플렉서의 전원을 턴오프할 수 있다.
도 10은 본 발명의 실시예들에 따라 MRAM LUT와 비교하여 수행된 모의실험 결과를 도시한 것이다.
NMOS/PMOS는 NCSU_freePDK45 공정 VTG 모델을 사용하고, MTJ는 H-SPICE simulation을 위한 macro-model을 사용하고, R, IC0, τ 등을 이용해 transient simulation, MTJ compact modeling을 수행하였다. VDD(V)는 1.2(V), TMR(%)는 200%(RP 12K - RAP 36K)로 설정하였다. Static power(uW)는 LUT 입력 변경이 없을 때, Output으로 HIGH 출력 시의 소모 전력을 사용하였다. LUT DATA 주파수(LUT 입력 변경 주파수)는 100MHz(10ns)로 설정하였다. Read power(uW)는 LUT 입력 변경에 따라 Output이 계속 LOW-HIGH로 Toggle하게 했을 때, Read 1cycle 동안의 소모 에너지/1cycle 시간이다. Area(Um2)는 INVERTER, NAND Gate 등 각 필요 Block별로 TR 면적을 Layout 기반으로 계산하여 필요한 개수만큼 곱하여 추산하였다.
도 10을 참조하면, 최상위 입력을 6입력, 최하위 입력을 4입력/5입력으로 하여 설계 후 비교한 결과 read time, read power, static power 모두 개선됨을 알 수 있다. PCSA data cell에 의한 면적이 대부분이므로 입출력 가변 구조의 비휘발성 LUT로 변경시 큰 사이즈 증가분은 없었지만, 사이즈 증가분이 있다 해도 4입력을 기존 6입력 LUT 4개로 대응할 것을 해당 LUT 1개를 4입력 LUT 4개로 사용하여 대응시, 사용되는 LUT의 개수를 1/4로 줄일 수 있어 전체 면적을 개선할 수 있다.
도 11a, 도 11b, 및 도 11c는 본 발명의 실시예들에 따라 SRAM LUT와 비교하여 수행된 모의실험 결과를 도시한 것이다.
도 11a 내지 도 11c를 참조하면, read power(읽기전력)은 데이터가 변할 때 LUT에서 소모하는 전력이고, static power(정적전력)은 데이터가 변하지 않고 유지될 때 LUT에서 소모하는 전력이다. 즉, 일반적으로 output의 변화율이 15%라 하면, read power * 0.15 + static power * 0.85로 전체 소비전력을 산출할 수 있다. 도 11c에서 bench 1~15는 4~6 input LUT를 랜덤으로 사용하는 특정 어플리케이션을 나타낸다. 도 11c는 bench 1~15 각 케이스 별로 output 변화율에 따라 전력을 절약(Save)할 수 있는 전체 전력 소모량을 구한 데이터이고 output 변화율이 클수록 절약되는 전력소모량이 크다. SRAM의 static power가 워낙 작기 때문에 기존 MRAM과 마찬가지로 output의 변화율이 클수록 더 큰 비율로 전력 세이빙이 가능하다. 일반적인 output의 변화율이 10~15%라고 할 때, SRAM 대비 15개 bench 평균 38.5%~43.7%로 전력을 절약할 수 있음을 확인하였다(최소: 15.2% ~ 23.6%, 최대: 44.9%~49.9%).
도 9에서는 각각의 과정을 순차적으로 실행하는 것으로 기재하고 있으나 이는 예시적으로 설명한 것에 불과하고, 이 분야의 기술자라면 본 발명의 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 9에 기재된 순서를 변경하여 실행하거나 또는 하나 이상의 과정을 병렬적으로 실행하거나 다른 과정을 추가하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이다.
본 실시예들에 따른 동작은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능한 매체에 기록될 수 있다. 컴퓨터 판독 가능한 매체는 실행을 위해 프로세서에 명령어를 제공하는 데 참여한 임의의 매체를 나타낸다. 컴퓨터 판독 가능한 매체는 프로그램 명령, 데이터 파일, 데이터 구조 또는 이들의 조합을 포함할 수 있다. 예를 들면, 자기 매체, 광기록 매체, 메모리 등이 있을 수 있다. 컴퓨터 프로그램은 네트워크로 연결된 컴퓨터 시스템 상에 분산되어 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드, 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.
본 실시예들은 본 실시예의 기술 사상을 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
300, 400: 룩업 테이블 회로 310, 410: 저장부
320, 420: 멀티플렉서 330, 430: 출력 선택부
440: 전원 제어부

Claims (20)

  1. 복수의 입력 비트로 동작하는 룩업 테이블 회로에 있어서,
    상기 입력 비트의 일부 비트에 대응하여, 비휘발성 소자에 데이터를 저장하는 복수의 저장부;
    상기 입력 비트의 나머지 비트에 대응하여, 상기 복수의 저장부 중에서 일부를 선택하는 하나 이상의 멀티플렉서;
    상기 복수의 저장부 및 상기 하나 이상의 멀티플렉서에 각각 연결되어 상기 데이터를 출력하는 출력 선택부; 및
    상기 복수의 저장부, 상기 하나 이상의 멀티플렉서, 및 상기 출력 선택부에 각각 연결되어, 상기 복수의 저장부, 상기 하나 이상의 멀티플렉서, 및 상기 출력 선택부 중에서 일부의 전원을 턴온 또는 턴오프하는 전원 제어부
    를 포함하는 룩업 테이블 회로.
  2. 삭제
  3. 제1항에 있어서,
    상기 복수의 저장부 및 상기 하나 이상의 멀티플렉서 중에서 두 개 이상을 조합하여 복수의 저장 블록을 형성하여 동작하고, 상기 전원 제어부는 상기 복수의 저장 블록을 형성하지 않은 저장부 및/또는 멀티플렉서의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로.
  4. 제3항에 있어서,
    상기 복수의 저장부 및 상기 복수의 저장부에 연결된 출력 선택부는 복수의 저장 블록을 형성하여 동작하고, 상기 전원 제어부는 상기 복수의 저장 블록을 형성하지 않은 멀티플렉서의 전원 및 상기 멀티플렉서에 연결된 출력 선택부의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로.
  5. 제3항에 있어서,
    상기 전원 제어부는 상기 멀티플렉서에 관한 상기 입력 비트의 나머지 비트 값에 기반하여, (i) 상기 비트 값에 해당하는 저장부의 전원 및 상기 비트 값에 해당하는 저장부에 연결된 출력 선택부의 전원을 턴온하고, (ii) 상기 비트 값에 해당하지 않는 저장부의 전원 및 상기 비트 값에 해당하지 않는 저장부에 연결된 출력 선택부의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로.
  6. 제3항에 있어서,
    상기 멀티플렉서의 개수는 복수이며, 상기 입력 비트의 나머지 비트를 기반으로 상기 복수의 멀티플렉서를 연결하여 조합하고, 상기 조합된 복수의 멀티플렉서는 상기 나머지 비트의 상위 비트 및 하위 비트를 기준으로 상기 복수의 저장부 중에서 일부를 선택하는 것을 특징으로 하는 룩업 테이블 회로.
  7. 제6항에 있어서,
    상기 전원 제어부는 상기 조합된 복수의 멀티플렉서에 관한 상기 나머지 비트의 상위 비트 값 및 하위 비트 값에 기반하여, (i) 상기 상위 비트 값에 해당하지 않는 멀티플렉서의 전원 및 상기 상위 비트 값에 해당하지 않는 멀티플렉서에 연결된 출력 선택부의 전원을 턴오프하고, (ii) 상기 하위 비트 값에 해당하지 않는 저장부의 전원 및 상기 하위 비트 값에 해당하지 않는 저장부에 연결된 출력 선택부의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로.
  8. 제1항에 있어서,
    상기 복수의 저장부는 제1 저장부 및 제2 저장부를 포함하고, 상기 하나 이상의 멀티플렉서는 제1 멀티플렉서를 포함하는 것을 특징으로 하는 룩업 테이블 회로.
  9. 제8항에 있어서,
    상기 제1 저장부 및 상기 제2 저장부는 개별적으로 동작하며, 상기 전원 제어부는 상기 제1 멀티플렉서의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로.
  10. 제8항에 있어서,
    상기 전원 제어부는 상기 제1 멀티플렉서에 관한 상기 입력 비트의 나머지 비트 값에 기반하여, 상기 제1 저장부 및 상기 제2 저장부 중에서 (i) 상기 비트 값에 해당하는 저장부의 전원을 턴온하고, (ii) 상기 비트 값에 해당하지 않는 저장부의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로.
  11. 제1항에 있어서,
    상기 복수의 저장부는 제1 저장부, 제2 저장부, 제3 저장부, 및 제4 저장부를 포함하고, 상기 하나 이상의 멀티플렉서는 제1 멀티플렉서를 포함하는 것을 특징으로 하는 룩업 테이블 회로.
  12. 제11항에 있어서,
    상기 제1 저장부, 상기 제2 저장부, 상기 제3 저장부, 및 상기 제4 저장부는 개별적으로 동작하며, 상기 전원 제어부는 상기 제1 멀티플렉서의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로.
  13. 제11항에 있어서,
    상기 전원 제어부는 상기 제1 멀티플렉서에 관한 상기 입력 비트의 나머지 비트 값에 기반하여, 상기 제1 저장부, 상기 제2 저장부, 상기 제3 저장부, 및 상기 제4 저장부 중에서 (i) 상기 비트 값에 해당하는 저장부의 전원을 턴온하고, (ii) 상기 비트 값에 해당하지 않는 저장부의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로.
  14. 제1항에 있어서,
    상기 복수의 저장부는 제1 저장부, 제2 저장부, 제3 저장부, 및 제4 저장부를 포함하고, 상기 하나 이상의 멀티플렉서는 제1 멀티플렉서, 제2 멀티플렉서, 및 제3 멀티플렉서를 포함하는 것을 특징으로 하는 룩업 테이블 회로.
  15. 제14항에 있어서,
    상기 제1 저장부, 상기 제2 저장부, 상기 제3 저장부, 및 상기 제4 저장부는 개별적으로 동작하며, 상기 전원 제어부는 상기 제1 멀티플렉서, 상기 제2 멀티플렉서, 및 상기 제3 멀티플렉서의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로.
  16. 제14항에 있어서,
    상기 제1 멀티플렉서는 상기 제1 저장부 및 상기 제2 저장부에 연결되고, 상기 제2 멀티플렉서는 상기 제3 저장부 및 상기 제4 저장부에 연결되고, 상기 제3 멀티플렉서는 상기 제1 멀티플렉서 및 상기 제2 멀티플렉서에 연결되며,
    상기 제3 멀티플렉서는 상기 나머지 비트의 상위 비트에 대응하고, 상기 제1 멀티플렉서 및 상기 제2 멀티플렉서는 상기 나머지 비트의 하위 비트에 대응하는 것을 특징으로 하는 룩업 테이블 회로.
  17. 제14항에 있어서,
    상기 전원 제어부는 (i) 상기 제3 멀티플렉서에 관한 상기 나머지 비트의 상위 비트 값에 기반하여, 상기 제1 멀티플렉서 및 상기 제2 멀티플렉서 중에서 상기 상위 비트 값에 해당하지 않는 멀티플렉서의 전원을 턴오프하고, (ii) 상기 제1 멀티플렉서 및 상기 제2 멀티플렉서에 관한 상기 나머지 비트의 하위 비트 값에 기반하여, 상기 제1 저장부, 상기 제2 저장부, 상기 제3 저장부, 및 상기 제4 저장부 중에서 상기 하위 비트 값에 해당하지 않는 저장부의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로.
  18. 복수의 저장부, 하나 이상의 멀티플렉서, 출력 선택부, 및 전원 제어부를 포함하며 복수의 입력 비트로 동작하는 룩업 테이블 회로의 동작 방법에 있어서,
    상기 복수의 저장부가 상기 입력 비트의 일부 비트에 대응하여, 비휘발성 소자에 데이터를 저장하는 단계;
    상기 하나 이상의 멀티플렉서가 상기 입력 비트의 나머지 비트에 대응하여, 상기 복수의 비휘발성 소자 중에서 일부를 선택하는 단계;
    상기 전원 제어부가 상기 복수의 저장부, 상기 하나 이상의 멀티플렉서, 및 상기 출력 선택부 중에서 일부의 전원을 턴온 또는 턴오프하는 단계; 및
    상기 출력 선택부가 상기 데이터를 출력하는 단계를 포함하며,
    상기 복수의 저장부 및 상기 하나 이상의 멀티플렉서 중에서 두 개 이상을 조합하여 복수의 저장 블록을 형성하여 동작하고, 상기 전원 제어부는 상기 복수의 저장 블록을 형성하지 않은 저장부 및/또는 멀티플렉서의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로의 동작 방법.
  19. 삭제
  20. 제18항에 있어서,
    상기 전원 제어부는 상기 멀티플렉서에 관한 상기 입력 비트의 나머지 비트 값에 기반하여, 상기 비트 값에 해당하지 않는 저장부 및/또는 멀티플렉서의 전원을 턴오프하는 것을 특징으로 하는 룩업 테이블 회로의 동작 방법.
KR1020180000936A 2018-01-03 2018-01-03 비휘발성 메모리 소자를 이용한 가변 입출력 구조의 룩업 테이블 회로 KR101986206B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180000936A KR101986206B1 (ko) 2018-01-03 2018-01-03 비휘발성 메모리 소자를 이용한 가변 입출력 구조의 룩업 테이블 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180000936A KR101986206B1 (ko) 2018-01-03 2018-01-03 비휘발성 메모리 소자를 이용한 가변 입출력 구조의 룩업 테이블 회로

Publications (1)

Publication Number Publication Date
KR101986206B1 true KR101986206B1 (ko) 2019-06-05

Family

ID=66845114

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180000936A KR101986206B1 (ko) 2018-01-03 2018-01-03 비휘발성 메모리 소자를 이용한 가변 입출력 구조의 룩업 테이블 회로

Country Status (1)

Country Link
KR (1) KR101986206B1 (ko)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050106014A (ko) * 2003-02-19 2005-11-08 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 프로그래밍 가능한 논리 셀 어레이를 갖는 전자 회로
KR20100111007A (ko) * 2009-04-06 2010-10-14 주식회사 하이닉스반도체 글리치 방지 장치
JP2013187779A (ja) * 2012-03-08 2013-09-19 Toshiba Corp ルックアップテーブル回路
KR20130122915A (ko) * 2012-05-01 2013-11-11 가부시키가이샤 한도오따이 에네루기 켄큐쇼 룩업 테이블, 및 룩업 테이블을 구비한 프로그래머블 로직 디바이스
JP2014032723A (ja) * 2012-08-03 2014-02-20 Toshiba Corp プログラマブル一致判定機能を備えた回路、それを備えたlut回路、それを備えたmux回路、それを備えたfpga装置、およびデータ書込方法
KR20140138228A (ko) * 2012-03-06 2014-12-03 소이텍 멀티플렉서, 룩-업 테이블 및 fpga
KR20150119862A (ko) * 2013-02-13 2015-10-26 가부시키가이샤 한도오따이 에네루기 켄큐쇼 프로그래머블 로직 디바이스 및 반도체 장치
WO2017044812A1 (en) * 2015-09-11 2017-03-16 Xilinx, Inc. Cascaded lookup-table (lut) carry logic circuit

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050106014A (ko) * 2003-02-19 2005-11-08 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 프로그래밍 가능한 논리 셀 어레이를 갖는 전자 회로
KR20100111007A (ko) * 2009-04-06 2010-10-14 주식회사 하이닉스반도체 글리치 방지 장치
KR20140138228A (ko) * 2012-03-06 2014-12-03 소이텍 멀티플렉서, 룩-업 테이블 및 fpga
JP2013187779A (ja) * 2012-03-08 2013-09-19 Toshiba Corp ルックアップテーブル回路
KR20130122915A (ko) * 2012-05-01 2013-11-11 가부시키가이샤 한도오따이 에네루기 켄큐쇼 룩업 테이블, 및 룩업 테이블을 구비한 프로그래머블 로직 디바이스
JP2014032723A (ja) * 2012-08-03 2014-02-20 Toshiba Corp プログラマブル一致判定機能を備えた回路、それを備えたlut回路、それを備えたmux回路、それを備えたfpga装置、およびデータ書込方法
KR20150119862A (ko) * 2013-02-13 2015-10-26 가부시키가이샤 한도오따이 에네루기 켄큐쇼 프로그래머블 로직 디바이스 및 반도체 장치
WO2017044812A1 (en) * 2015-09-11 2017-03-16 Xilinx, Inc. Cascaded lookup-table (lut) carry logic circuit

Similar Documents

Publication Publication Date Title
JP3471088B2 (ja) 改良されたプログラマブル論理セルアレイアーキテクチャ
US8797061B2 (en) Partial reconfiguration circuitry
US20020105833A1 (en) Function reconfigurable semiconductor device and integrated circuit configuring the semiconductor device
JP2018537871A (ja) Fpgaのテストおよび構成のためのシステムおよび方法
JP6517626B2 (ja) 再構成可能な半導体装置
CN105164921B (zh) Fpga互连中的细粒度功率门控
US20130002287A1 (en) Apparatus for improving reliability of electronic circuitry and associated methods
US11600313B2 (en) Memory circuit device including a selection circuit unit shared by a write circuit unit and a read circuit unit
US20150280717A1 (en) Reconfigurable semiconductor device
JP2011514065A (ja) プログラマブル論理ファブリック
US20050174144A1 (en) Look-up table
US20130139013A1 (en) Low leakage current operation of integrated circuit using scan chain
KR101986206B1 (ko) 비휘발성 메모리 소자를 이용한 가변 입출력 구조의 룩업 테이블 회로
JP2016035796A (ja) 低消費電力のメモリ装置
CN105741872B (zh) 适用于宇航用fpga的加固配置存储器阵列及配置方法
JP2018538704A (ja) プログラマブルゲートアレイの論理ブロックアーキテクチャ
US10236043B2 (en) Emulated multiport memory element circuitry with exclusive-OR based control circuitry
US10924117B2 (en) Method for designing an FPGA
JP5607093B2 (ja) ルックアップテーブル回路
US11979152B2 (en) Integrated circuits having memory with flexible input-output circuits
US20150058664A1 (en) Dynamic memory cell replacement using column redundancy
US7288960B2 (en) Sharing a static random-access memory (SRAM) table between two or more lookup tables (LUTs) that are equivalent to each other
JP5530207B2 (ja) プログラマブルロジックデバイスおよびそれを用いた電子機器
JP2007226944A (ja) 半導体メモリ及び半導体集積回路
US10177751B2 (en) Delay line with short recovery time

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant