KR20190020411A - 의사 듀얼 포트 메모리를 위한 아비트러리 회로 - Google Patents

의사 듀얼 포트 메모리를 위한 아비트러리 회로 Download PDF

Info

Publication number
KR20190020411A
KR20190020411A KR1020170105335A KR20170105335A KR20190020411A KR 20190020411 A KR20190020411 A KR 20190020411A KR 1020170105335 A KR1020170105335 A KR 1020170105335A KR 20170105335 A KR20170105335 A KR 20170105335A KR 20190020411 A KR20190020411 A KR 20190020411A
Authority
KR
South Korea
Prior art keywords
state
circuit
clock signal
signal
flag
Prior art date
Application number
KR1020170105335A
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 KR1020170105335A priority Critical patent/KR20190020411A/ko
Publication of KR20190020411A publication Critical patent/KR20190020411A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/10Decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1018Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1075Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for multiport memories each having random access ports and serial ports, e.g. video RAM
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Multimedia (AREA)
  • Dram (AREA)
  • Static Random-Access Memory (AREA)

Abstract

본 발명은 메모리 비트 셀을 싱글 포트로 구성하고 외부로부터 듀얼 포트 제어신호인 제1클럭신호 및 제2클럭신호를 입력받아 의사 듀얼 포트 메모리의 내부 동작에 필요한 싱글 포트 제어신호인 내부클럭신호를 생성하여 공급함으로써 최종적으로는 듀얼 포트 동작을 구현할 수 있도록 한 의사 듀얼 포트 메모리를 위한 아비트러리 회로에 관한 것이다.
본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로에 의하면 의사 듀얼 포트 메모리를 사용하는 디스플레이 드라이버 집적회로(Display Driver IC:DDI)와 같은 제품에서 고속으로 동작할 수 있으며 오동작이나 타이밍 데드 존 없이 안정적인 동작을 확보할 수 있는 효과가 있다.

Description

의사 듀얼 포트 메모리를 위한 아비트러리 회로{ARBITRARY CIRCUIT FOR PSEUDO DUAL PORT MEMORY}
본 발명은 의사 듀얼 포트 메모리를 위한 아비트러리 회로에 관한 것으로, 더욱 상세하게는, 메모리 비트 셀을 싱글 포트로 구성하고 외부로부터 듀얼 포트 제어신호인 제1클럭신호 및 제2클럭신호를 입력받아 의사 듀얼 포트 메모리의 내부 동작에 필요한 싱글 포트 제어신호를 생성하여 공급함으로써 최종적으로는 듀얼 포트 동작을 구현할 수 있도록 한, 의사 듀얼 포트 메모리를 위한 아비트러리 회로에 관한 것이다.
일반적으로 메모리는 데이터 입력과 데이터 출력이 한 그룹씩 존재하는 싱글포트 기능을 갖는다.
도 1은 종래의 싱글포트 메모리 셀의 회로도이고 도 2는 종래의 싱글포트 메모리의 타이밍도이다.
도 1 과 도 2 에 도시된 바와 같이 종래의 싱글 포트 메모리의 메모리 셀들은 전형적으로 단지 6개의 트랜지스터들을 포함한다. 종래의 싱글 포트 메모리의 메모리 셀들은 단지 6개의 트랜지스터 만을 포함하므로 회로 전체에서 차지하는 면적이 매우 작은 장점이 있다.
그러나 종래의 싱글 포트 메모리의 경우 비트라인 쌍이 선택되어 입출력동작이 수행중인 경우에는, 동일한 포트를 통하여 다른 데이터를 입출력할 수 없으며, 동일한 데이터를 병렬적으로 처리하는 것도 불가능하다. 따라서 싱글 포트 메모리의 경우 스피드를 향상시키는데 한계가 있으며 데이터의 병렬처리시스템에는 적용하기가 용이하지 않다.
이에 따라 마이크로 제어부(Micro Control Unit:MCU) 내부의 피포(First In First Out:FIFO) 메모리에서와 같이 메모리 셀 어레이는 하나이면서 데이터 입력포트와 데이터 출력포트는 두 쌍인 듀얼포트 메모리의 사용이 요구되는 경우가 있다.
도 3은 종래의 듀얼포트 메모리 셀의 회로도이다.
도 3에 도시된 바와 같이 듀얼 포트 메모리들은 전형적으로 두 개의 포트들 및 메모리 셀들의 어레이를 갖는다. 상기 메모리는, 하나의 포트로부터 액세스되는 메모리 셀이 다른 포트로부터 액세스되는 메모리 셀과 정확히 일치하지 않는 한, 제공되는 포트들 모두로부터 동시에 액세스될 수 있다. 그러한 듀얼 포트 메모리들에서 사용되는 메모리 셀의 공통적인 타입은 8개의 전계 효과 트랜지스터(FET)들을 포함한다.
도 1의 싱글 포트 메모리 셀과 도 3의 듀얼 포트 메모리 셀이 동일한 프로세스를 이용하여 제조될 때, 6개의 트랜지스터를 사용하는 싱글 포트 메모리 셀은 전형적으로 8개의 트랜지스터를 사용하는 듀얼 포트 메모리 셀에 비해 집적회로에서 차지하는 면적이 절반에 불과하지만 단일 클록 사이클 내에서 리드 및 라이트 동작 모두를 처리할 수 없는 단점이 있다.
그러나 최근 들어 많은 어플리케이션들이 작은 면적을 차지하면서도 단일클록 사이클 내에 리드 및 라이트 동작 모두를 처리할 수 있는 듀얼 포트 메모리의 기능을 요구하고 있으며 이러한 요구를 충족시키기 위해 의사-듀얼 포트 메모리로 불리는 메모리들이 개발되어 왔다.
도 4는 종래의 의사-듀얼 포트 메모리의 블록도이고, 도 5는 종래의 의사-듀얼 포트 메모리의 타이밍도이다.
의사-듀얼 포트 메모리(300)는 셀 어레이(311), 로우 디코더(312), 컬럼 디코더(313) 및 데이터 입출력 회로(314)를 포함하는 메모리부(310)와, 컨트롤러(320) 및 아비트러리 회로(330)를 포함한다.
셀 어레이(311)는 라이트(write)와 리드(read)가 가능한 싱글 포트형 메모리 비트 셀의 어레이이다. 로우 디코더(312)는 셀 어레이(311)의 로우 방향 억세스가 가능하도록 메모리 어드레스(ADDRa, ADDRb)를 디코딩하는 회로이고, 컬럼 디코더(313)는 셀 어레이(311)의 컬럼 방향 억세스가 가능하도록 어드레스를 디코딩하는 회로이다.
데이터 입출력 회로(314)는 제1포트(PORTa)를 통해 제1 입력데이터(DINa[n-1]:0)를 입력받고 제1 출력데이터(DOUTa[n-1]:0)를 출력하며, 제2포트(PORTb)를 통해 제2 입력데이터(DINb[n-1]:0)를 입력받고 제2 출력데이터(DOUTb[n-1]:0)를 출력한다.
아비트러리 회로(330)는 상기 외부로부터 제1클럭신호(CLKa) 및 제2클럭신호(CLKb)를 공급받고, 이를 근거로 상기 메모리부(310)에 대한 듀얼포트 리드 동작이 정상적으로 이루어지도록 하기 위해 타이밍 쉐어링 방법을 사용해서 상기 메모리부(310)의 싱글 입력포트에 내부클럭신호(ACLKi, BCLKi, CLKi)를 공급하는 역할을 한다. 상기 제1클럭신호(CLKa)와 제2클럭신호(CLKb)의 주기와 입력 타이밍은 서로 상이할 수 있다.
컨트롤러(320)는 아비트러리 회로로부터 전달받은 내부클럭신호(ACLKi, BCLKi, CLKi)를 이용해서 싱글포트로 동작하는 메모리(310)를 대상으로 듀얼포트 방식의 라이트 억세스(read access) 혹은 리드 억세스(read access) 동작이 가능하도록 내부신호들(WENA, RENa, WENb, RENb, PEN)을 생성한다.
이러한 종래의 아비트러리 회로(330)는 이벤트(event)와 딜레이(delay)를 사용하여 내부 타이밍을 조정했기 때문에 구조적으로 오작동(malfunction)의 위험이 있었고 이벤트(event)와 이벤트(event) 사이에 타이밍 데드 존(timing dead zone)이 존재할 가능성이 높았다. 특히, 각 포트의 제어 클락(control clock)이 랜덤하게 들어오는 조건에서는 오동작의 위험이 더욱 높았다.
또한 종래의 이벤트(event)와 딜레이(delay)를 사용하는 기술은 이벤트마다 딜레이를 충분히 줘야하기 때문에 누적된 딜레이로 인해 속도가 느려지는 단점도 있었다.
본 발명이 해결하고자 하는 기술적 과제는 메모리 비트 셀을 싱글 포트로 구성하고 외부로부터 듀얼 포트 제어신호인 제1클럭신호 및 제2클럭신호를 입력받아 의사 듀얼 포트 메모리의 내부 동작에 필요한 싱글 포트 제어신호를 생성하여, 공급함으로써 최종적으로는 듀얼 포트 동작을 구현함에 있어, 고속으로 동작하는 디스플레이 드라이버 집적회로와 같은 제품에서 오동작이나 타이밍 데드 존 없이 안정적인 동작을 확보할 수 있는 의사 듀얼 포트 메모리를 위한 아비트러리 회로를 제공하는데 있다.
상기 기술적 과제를 이루기 위한 본 발명의 실시 예에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로는 메모리부와 컨트롤러를 포함하는 의사 듀얼포트 메모리의 내부 동작에 필요한 신호를 공급하는 아비트러리 회로에 있어서, 상기 아비트러리 회로는, 메모리 외부로부터 듀얼포트 제어신호인 제1클럭신호(CLKa) 및 제2클럭신호(CLKb)를 입력받아 상기 의사 듀얼포트 메모리의 내부 동작에 필요한 싱글포트 제어신호를 공급하는 것을 특징으로 한다.
이때 상기 아비트러리 회로는, 상기 제1클럭신호(CLKa) 및 상기 제2클럭신호(CLKb)를 입력받아 상기 내부클럭신호(ACLKi, BCLKi, CLKi)를 생성할 때, 제1상태, 제2상태, 대기상태 및 뉴트럴 상태 간의 상태 전환을 통해 상기 내부클럭신호(ACLKi, BCLKi, CLKi)를 생성하는 것을 특징으로 한다.
상기 아비터 회로는, 상기 제1클럭신호(CLKa)를 입력받아 제1플래그신호(Aflag)를 생성하는 제1 플래그 회로; 상기 제2클럭신호(CLKb)를 입력받아 제2플래그신호(Bflag)를 생성하는 제2 플래그 회로; 상태신호(Aflag, Bflag, Bstart, Idle, Nstart, RESET)를 입력받아 상태신호(Astart, Aend) 및 제1내부클럭신호(ACLKi)를 출력하는 제1상태 회로; 상태신호(Aflag, Bflag, Astate, Idle, Nstart, RESET)를 입력받아 상태신호(Bstart, Bend) 및 제2내부클럭신호(BCLKi)를 출력하는 제2상태 회로; 상태신호(Aflag, Astart, Aend, Bflag, Bstart 및Bend)를 입력받아 상태신호(Nstart)를 출력하는 뉴트럴 상태 회로; 상태신호(Aflag, Astart, Aend, Bflag, Bstart 및Bend)를 입력받아 상태신호(Idle)를 출력하는 대기상태 회로; 상기 제1내부클럭신호(ACLKi)의 글리치를 제거하는 제1 글리치 제거회로; 상기 제2내부클럭신호(BCLKi)의 글리치를 제거하는 제2 글리치 제거회로; 및 상기 제1 글리치 제거회로의 출력신호 및 상기 제2 글리치 제거회로의 출력신호를 합성하여 상기 내부클럭신호(CLKi)를 생성하는 클럭합성기;를 포함하는 것을 특징으로 한다.
상기 제1 플래그 회로는 상기 제1클럭신호(CLKa)의 라이징 에지(rising edge)를 인식하여 제1플래그신호(Aflag)를 생성하고, 상기 제2 플래그 회로는 상기 제2클럭신호(CLKb)의 라이징 에지(rising edge)를 인식하여 제2플래그신호(Bflag)를 생성하는 것을 특징으로 한다.
여기서, 상기 제1상태는 상기 제1클럭신호(ACLKi)를 생성하는 상태이고, 상기 제2상태는 상기 제2클럭신호(BCLKi)를 생성하는 상태이고, 상기 뉴트럴 상태는 상기 제1상태와 상기 제2상태를 오가는 중간 상태이며, 상기 대기상태는 모든 동작을 종료하고 대기에 들어간 상태이다.
한편, 상기 아비트러리 회로는, 상기 제1상태와 상기 제2상태가 동시에 발생한 경우 어느 한쪽에 우선권을 주어 충돌을 방지하는 것을 특징으로 한다.
본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로에 의하면 의사 듀얼 포트 메모리를 사용하는 디스플레이 드라이버 집적회로(Display Driver IC:DDI)와 같은 제품에서 고속으로 동작할 수 있으며 오동작이나 타이밍 데드 존 없이 안정적인 동작을 확보할 수 있는 효과가 있다.
또한, 싱글포트 메모리 셀로 듀얼 포트 동작을 구현할 수 있으므로 고용량의 메모리를 사용하는 분야나 사물인터넷 등과 같이 칩 면적의 소형화가 요구되는 분야에 유용하게 적용할 수 있는 장점이 있다.
도 1은 종래의 싱글포트 메모리 셀의 회로도이다.
도 2는 종래의 싱글포트 메모리의 타이밍도이다.
도 3은 종래의 듀얼포트 메모리 셀의 회로도이다.
도 4는 종래의 의사-듀얼 포트 메모리의 블록도이다.
도 5는 종래의 의사-듀얼 포트 메모리의 타이밍도이다.
도 6은 본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로가 포함된 의사 듀얼 포트 메모리의 블록도이다.
도 7은 종래의 의사 듀얼 포트 메모리를 위한 아비트러리 회로의 상태전환도이다.
도 8은 본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로의 상태전환도이다.
도 9는 본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로의 블록도이다.
도 10 내지 도 14는 본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로의 타이밍도의 실시예이다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 상세히 설명하면 다음과 같다.
도 6은 본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로가 포함된 의사 듀얼 포트 메모리의 블록도이다.
도 6에 도시한 바와 같이, 본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로가 포함된 의사 듀얼 포트 메모리(600)는 콘트롤러(610), 아비트러리 회로(620) 및 메모리부(630)를 포함한다.
아비트러리 회로(620)는 외부로부터 듀얼포트 신호들이 들어오면, 상기 메모리부(630)에서 오동작(malfunction)이 발생되지 않고 정상적인 쓰기와 읽기가 이루어지도록 내부 클럭신호들(ACLKi, BCLKi, CLKi)을 만들어서 콘트롤러(610)로 보내주는 역할을 한다.
콘트롤러(610)는 상기 아비트러리 회로로부터 신호들(ACLKi, BCLKi, CLKi)을 받아 상기 메모리부(630)를 듀얼포트 방식으로 동작시키기 위한 신호들을 만드는데, 제1포트에 대해서는 제1 리드인에이블신호(RENa), 제1 라이트인에이블신호(WENa)들을 만들어주고, 제2포트에 대해서는 제2 리드인에이블신호(RENb), 제2 라이트인에이블신호(WENb) 들을 만들어준다.
메모리부(630)의 동작은 의사 듀얼 포트 메모리의 일반적인 동작으로 상세한 설명은 생략하기로 한다.
도 7은 기존에 사용하던 아비트러리 회로의 상태전환도이다.
기존의 아비트러리 회로는 3개의 상태 즉 제1상태(A State), 제2상태(B State), 대기상태(Idle State) 로만 구성되었다.
이 경우 제1상태(A State)와 제2상태(B State)사이에서 3 가지 상태 변환이 일어날 수 있다.
(1) 현재 상태가 제1상태(A State)이면서 제1포트 종료신호가(Aend)가 인에이블되고, 제2플래그(Bflag)가 인에이블 되면 현재 상태가 제1상태(A State)에서 제2상태(B State)로 전환된다.
(2) 현재 상태가 제2상태(B State)이면서 제2포트 종료신호가(Bend)가 인에이되고, 제1플래그(Aflag)가 인에이블 되면 현재 상태가 제2상태(B State)에서 제1상태(A State)로 전환된다.
(3) 현재 상태가 제1상태(A State) 및 제2상태(B State)이어서 제1포트시작신호(Astart)와 제2포트시작신호(Bstart)가 모두 인에이블되면, 제2상태에서는 빠져나오고 제1상태(A State)는 유지한다.
3 가지 경우를 모두 고려하고자 할 때 충돌이나 오동작을 방지하기 위해 내부 딜레이(delay)를 많이 사용하게 되어 고속 동작에 취약한 약점을 가지게 되며, 자칫 타이밍 데드 존(Timing Dead-Zone)이 발생할 위험성이 높아지게 된다.
도 8은 본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로의 상태전환도이다.
도 8과 같은 상태 전환도를 바탕으로 상기 아비트러리 회로(620)의 구동레벨을 트랜지스터 레벨로 설계함으로써, 상기 아비트러리 회로(620)의 설치 공간을 줄이고, 고속 동작을 가능하게 하며, 타이밍 데드존이 없는(Timing Dead-zone free) 형태로 구현할 수 있다. 도 8을 참조하여 본 발명에 따른 아비트러리 회로(620)의 상태 전환 동작에 대하여 설명하면 다음과 같다.
아비트러리 회로(620)는 4개의 상태 즉, 제1상태(A State), 제2상태(B State), 대기상태(Idle State) 및 뉴트럴 (Neutral) 상태(N State)를 가지며, 각각의 상태는 화살표 방향의 신호들의 조건에 따라 다른 상태로 전환된다.
상기 제1상태는 상기 제1클럭신호(CLKa)를 생성하는 상태이고, 상기 제2상태는 상기 제2클럭신호(CLKb)를 생성하는 상태이고, 상기 뉴트럴 상태는 상기 제1상태와 상기 제2상태를 오가는 중간 상태이며, 상기 대기상태는 모든 동작을 종료하고 대기에 들어간 상태이다.
아비트러리 회로(620)는 상기 대기상태(Idle State) 또는 뉴트럴 상태(N State)에서 상기 제1상태(A State) 또는 제2상태(B State)로 전환될 때 상기 메모리부(630)에 해당 상태에 대응되는 내부클럭신호(ACLKi, BCLKi, CLKi)를 생성하여 메모리부(630)에 공급하고, 이에 따라 읽기/쓰기 동작이 이루어진다.
도 8의 화살표에 도시된 신호들에 대하여 살펴보면, 'Aflag'는 제1플래그신호, 'Bflag'는 제2플래그신호, 'Astart'는 상기 메모리부(630) 에 대한 제1포트 시작신호, 'Bstart'는 상기 메모리부(630) 에 대한 제2포트 시작신호, 'Aend'는 제1포트 종료신호, 'Bend'는 제2포트 종료신호를 의미한다. 그리고 'Idle State'는 대기상태, 'A State'는 제1상태, 'B State'는 제2상태, 'N State'는 뉴트럴 상태를 의미한다. 제1포트 종료신호인 'Aend' 및 제2포트 종료신호인 'Bend'는 메모리부(630)로부터 동작이 종료된 후 공급받는 종료신호(MEMORY_END)이다. 제1플래그신호(Aflag)는 제1포트를 통해 제1클럭신호(CLKa)가 공급될 때 인에이블되고, 상기 메모리부(630)로부터 제1포트 종료신호(Aend)가 공급될 때 디스에이블된다. 제2플래그신호(Bflag)는 제2포트를 통해 제2클럭신호(CLKb)가 공급될 때 인에이블되고, 상기 메모리부(630)로부터 제2포트 종료신호(Bend)가 공급될 때 디스에이블된다.
도 8의 화살표에 도시된 신호들에 의해 상기 아비트러리 회로(620)의 상태가 제1상태(A State) 또는 제2상태(B State)로 전환되면, 상기 전환된 상태에 대응하 발생되는 내부클럭신호(ACLKi, BCLKi, CLKi)에 의해 상기 메모리부(630)가 동작하기 시작하고 동작이 끝나는 시점에서 다음 상태로 전환되며, 이 때 다른 포트의 Flag 신호가 인에이블 되었으면, 뉴트럴 상태(N State)를 거쳐 해당 포트의 내부신호를 발생시켜 메모리를 동작시키고, 다른 포트의 Flag 신호가 인에이블 되지 않았을 경우에는 대기상태(Idle State)로 전환되어 동작을 멈추게 된다.
또한, 제1포트종료신호(Aend), 제2포트종료신호(Bend), 제1상태(A State) 및 제2상태(B State)가 모두 인에이블되는 인터럽트 케이스(Interrupt Case)가 발생되는 경우, 제2상태(B State)는 종료되고 제1상태(A State)로 전환되도록 하여 내부에서 양포트의 신호가 충돌하는 것을 방지했다.
상기와 같은 인터럽트 케이스는 디지털 회로에서 각 조건의 입력을 조합할 때 입력 신호의 상태에 따라 필연적으로 발생하는 문제이다. 또한, 상기 아비트러리 회로(620)의 제조 공정, 전압, 온도 변화(variation) 및 레이아웃(Layout)에 따라 더 많은 영향을 받을 수 있다.
따라서, 본 발명에 따른 아비트러리 회로(620)에 대한 실시 예에서는 도 8에서와 같이 상기 인터럽트 케이스를 고려한 상태 전환도를 설계하여 데드존 프리(Dead-zone free) 형태로 동작하도록 하였다.
또한, 상기 인터럽트 케이스에서 상태 전환 동작이 정상적으로 이루어지도록 하기 위하여, 뉴트럴 상태(N State)를 추가하였다. 이에 따라, 제1상태(A State)에서 제2상태(B State)로 전환되거나 그 반대로 전환될 때 반드시 상기 뉴트럴 상태(N State)를 통해서 전환되게 하여 기존의 회로에서와 같은 위험성을 제거하였다.
도 8을 참조하여 아비트러리 회로(620)에서 각각의 상태 전환 동작에 대하여 설명하면 다음과 같다.
(1) 현재 상태가 대기상태(Idle State)에 있으면서, 제1플래그신호(Aflag)가 인에이블 되고, 제2플래그신호(Bflag)가 디스에이블 되면 현재의 대기상태(Idle State)는 제1상태(A State)로 전환된다. 또는 현재 상태가 뉴트럴 상태(N State)이고, 제1플래그신호(Aflag)가 인에이블 되고, 제2포트종료신호(Bend)가 인에이블 된 경우에도 제1상태(A State)로 전환된다.
(2) 현재 상태가 대기상태(Idle State)에 있으면서, 제1플래그신호(Aflag)가 디스에이블 되고, 제2플래그신호(Bflag)가 인에이블 되면 현재의 대기상태(Idle State)는 제2상태(B State)로 전환된다. 또는 현재 상태가 뉴트럴 상태(N State)이고, 제2플래그신호(Bflag)가 인에이블 되고, 제1포트종료신호(Aend)가 인에이블 된 경우에도 제2상태(B State)로 전환된다.
(3) 현재 상태가 제1상태(A State)이면서 제1포트 종료신호(Aend)가 인에이블 되고, 제2플래그신호(Bflag)가 디스에이블 되면, 현재 상태가 제1상태(A State)에서 대기상태(Idle State)로 전환된다.
(4) 현재 상태가 제2상태(B State)이면서 제2포트 종료신호(Bend)가 인에이블 되고, 제1플래그신호(Aflag)가 디스에이블 되면, 현재 상태가 제2상태(B State)에서 대기상태(Idle State)로 전환된다.
(5) 현재 상태가 제1상태(A State)이면서 제1포트 종료신호가(Aend)가 인에이되고, 제2플래그(Bflag)가 인에이블 되면 현재 상태가 제1상태(A State)에서 뉴트럴 상태(N State)로 전환된다.
(6) 현재 상태가 뉴트럴 상태(N state)이면서 제1플래그신호(Aflag)가 디스에이블 되고, 제2플래그신호(Bflag)가 인에이블 되면 현재 상태가 뉴트럴 상태(N State)에서 제2상태(B State)로 전환된다.
(7) 현재 상태가 제2상태(B State)이면서 제2포트 종료신호가(Bend)가 인에이블되고, 제1플래그(Aflag)가 인에이블 되면 현재 상태가 제2상태(B State)에서 뉴트럴 상태(N State)로 전환된다.
(8) 현재 상태가 뉴트럴 상태(N state)이면서어서 제1플래그신호(Aflag)가 인에이블 되고, 제2플래그신호(Bflag)가 디스에이블 되면 현재 상태가 뉴트럴 상태(N State)에서 제1상태(A State)로 전환된다.
(9) 현재 상태가 제1상태(A State) 및 제2상태(B State)이어서 제1포트시작신호(Astart)와 제2포트시작신호(Bstart)가 모두 인에이블되면, 제2상태에서는 빠져나오고 제1상태(A State)는 유지한다.
도 9는 본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로의 블록도이다.
도 9에 도시된 바와 같이, 본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로(620)는 제1 플래그 회로(621), 제2 플래그 회로(622), 제1상태 회로(623), 제2 상태 회로(624), 뉴트럴상태 회로(625), 대기상태 회로(626), 제1 글리치 제거회로(627), 제2 글리치 제거회로(628) 및 클락 합성기(629)를 포함한다.
제1 플래그 회로(621)는 제1클럭신호(CLKa)를 입력받아 제1플래그신호(Aflag)를 생성하고, 제2 플래그 회로(622)는 제2클럭신호(CLKb)를 입력받아 제2플래그신호(Bflag)를 생성한다. 상기 제1 플래그 회로(621)는 상기 제1클럭신호(CLKa)의 라이징 에지(rising edge)를 인식하여 제1플래그신호(Aflag)를 생성하고, 상기 제2 플래그 회로(622)는 상기 제2클럭신호(CLKb)의 라이징 에지(rising edge)를 인식하여 제2플래그신호(Bflag)를 생성한다.
제1상태 회로(623)는 상태신호(Aflag, Bflag, Bstart, Idle, Nstart, RESET)를 입력받아 상태신호(Astart, Aend) 및 제1내부클럭신호(ACLKi)를 출력한다.
제2상태 회로(624)는 상태신호(Aflag, Bflag, Astart, Idle, Nstart, RESET)를 입력받아 상태신호(Bstart, Bend) 및 제2내부클럭신호(BCLKi)를 출력한다.
뉴트럴 상태 회로(625)는 상태신호(Aflag, Astart, Aend, Bend, Bstart 및Bend)를 입력받아 상태신호(Nstart)를 출력한다.
대기상태 회로(626)는 상태신호(Aflag, Astart, Aend, Bflag, Bstart 및Bend)를 입력받아 상태신호(Idle)를 출력한다.
제1내부클럭신호(ACLKi) 및 제2내부클럭신호(BCLKi)는 제1 글리치 제거회로(627) 및 제2 글리치 제거회로(628)를 통해 글리치가 제거되고 클락합성기(629)에서 합성되어 내부클럭신호(CLKi)로 출력된다.
도 10 내지 도 14는 본 발명에 따른 의사 듀얼 포트 메모리를 위한 아비트러리 회로의 타이밍도의 일 실시 예이다.
도 10는 도 8의 상태 전환도에 따른 상태가 대기상태(Idle state)에서 제1상태(A state), 대기상태(Idle state) 및 제2상태(B state)를 거쳐 대기상태(Idle state)로 전환될 때의 타이밍도이다.
도 11은 도 8의 상태 전환도에 따른 상태가 대기상태(Idle state)에서 제1상태(A state), 뉴트럴 상태(N state) 및 제2상태(B state)를 거쳐 대기상태(Idle state)로 전환될 때의 타이밍도이다.
도 12는 도 8의 상태 전환도에 따른 상태가 대기상태(Idle state)에서 인터럽트된 제2상태(B state), 제1상태(A state), 뉴트럴 상태(N state) 및 제2상태(B state)를 거쳐 대기상태(Idle state)로 전환될 때의 타이밍도이다.
도 13은 도 8의 상태 전환도에 따른 상태가 대기상태(Idle state)에서 제2상태(B state), 뉴트럴 상태(N state) 및 제1상태(A state)를 거쳐 대기상태(Idle state)로 전환될 때의 타이밍도이다.
도 14은 도 8의 상태 전환도에 따른 상태가 대기상태(Idle state)에서 제2태(B state), 대기상태(Idle state) 및 제1상태(A state)를 거쳐 대기상태(Idle state)로 전환될 때의 타이밍도이다.
이상에서 본 발명의 바람직한 실시 예에 대하여 상세히 설명하였지만, 본 발명의 권리범위가 이에 한정되는 것이 아니라 다음의 청구범위에서 정의하는 본 발명의 기본 개념을 바탕으로 보다 다양한 실시예로 구현될 수 있으며, 이러한 실시예들 또한 본 발명의 권리범위에 속하는 것이다.
600 : 의사 듀얼 포트 메모리 610 : 콘트롤러
620 : 아비터 회로 630 : 메모리부
621 : 제1 플래그 회로 622 : 제2 플래그 회로
623 : 제1 상태 회로 624 : 제2 상태 회로
625 : 뉴트럴 상태 회로 626 : 대기상태 회로
627 : 제1 글리치 제거회로 628 : 제2 글리치 제거회로
629 : 클락합성기

Claims (8)

  1. 메모리부와 컨트롤러를 포함하는 의사 듀얼포트 메모리의 내부 동작에 필요한 신호를 공급하는 아비트러리 회로에 있어서,
    상기 아비트러리 회로는
    외부로부터 제1클럭신호(CLKa) 및 제2클럭신호(CLKb)를 입력받아 상기 의사 듀얼포트 메모리의 내부 동작에 필요한 싱글포트 제어신호인 내부클럭신호(ACLK,BCLKi,CLKi)를 공급하는 것을 특징으로 하는 의사 듀얼포트 메모리를 위한 아비트러리 회로.
  2. 제 1항에 있어서, 상기 아비트러리 회로는,
    상기 제1클럭신호(CLKa) 및 상기 제2클럭신호(CLKb)를 입력받아 상기 내부클럭신호(ACLKi, BCLKi, CLKi)를 생성할 때, 제1상태, 제2상태, 대기상태 및 뉴트럴 상태 간의 상태 전환을 통해 상기 내부클럭신호(ACLKi, BCLKi, CLKi)를 생성하는 것을 특징으로 하는 의사 듀얼포트 메모리를 위한 아비트러리 회로.
  3. 제 2항에 있어서, 상기 아비트러리 회로는,
    상기 제1클럭신호(CLKa)를 입력받아 제1플래그신호(Aflag)를 생성하는 제1 플래그 회로;
    상기 제2클럭신호(CLKb)를 입력받아 제2플래그신호(Bflag)를 생성하는 제2 플래그 회로;
    상태신호(Aflag, Bflag, Bstart, Idle, Nstart, RESET)를 입력받아 상태신호(Astart, Aend) 및 제1내부클럭신호(ACLKi)를 출력하는 제1상태 회로;
    상태신호(Aflag, Bflag, Astart, Idle, Nstart, RESET)를 입력받아 상태신호(Bstart, Bend) 및 제2내부클럭신호(BCLKi)를 출력하는 제2상태 회로;
    상태신호(Aflag, Astart, Aend, Bflag, Bstart, 및Bend)를 입력받아 상태신호(Nstart)를 출력하는 뉴트럴상태 회로;
    상태신호(Aflag, Astart, Aend, Bflag, Bstart, 및 Bend)를 입력받아 상태신호(Idle)를 출력하는 대기상태 회로;
    상기 제1내부클럭신호(ACLKi)의 글리치를 제거하는 제1 글리치 제거회로;
    상기 제2내부클럭신호(BCLKi)의 글리치를 제거하는 제2 글리치 제거회로; 및
    상기 제1 글리치 제거회로의 출력신호 및 상기 제2 글리치 제거회로의 출력신호를 합성하여 상기 내부클럭신호(CLKi)를 생성하는 클럭합성기;를 포함하는 것을 특징으로 하는 의사 듀얼포트 메모리를 위한 아비트러리터 회로.
  4. 제 3항에 있어서,
    상기 제1 플래그 회로는 상기 제1클럭신호(CLKa)의 라이징 에지(rising edge)를 인식하여 제1플래그신호(Aflag)를 생성하고
    상기 제2 플래그 회로는 상기 제2클럭신호(CLKb)의 라이징 에지(rising edge)를 인식하여 제2플래그신호(Bflag)를 생성하는 것을 특징으로 하는 의사 듀얼포트 메모리를 위한 아비트러리 회로.
  5. 제 2항에 있어서,
    상기 제1상태는 상기 제1클럭신호(ACLKi)를 생성하는 상태이고,
    상기 제2상태는 상기 제2클럭신호(BCLKi)를 생성하는 상태이고,
    상기 뉴트럴 상태는 상기 제1상태와 상기 제2상태를 오가는 중간 상태이며,
    상기 대기상태는 모든 동작을 종료하고 대기에 들어간 상태인 것을 특징으로 하는 의사 듀얼포트 메모리를 위한 아비트러리 회로.
  6. 제 2항에 있어서, 상기 아비트러리 회로는,
    상기 제1상태와 상기 제2상태가 동시에 발생한 경우 어느 한쪽에 우선권을 주어 충돌을 방지하는 것을 특징으로 하는 의사 듀얼포트 메모리를 위한 아비트러리 회로.
  7. 제 3항에 있어서,
    상기 제1상태 회로, 상기 제2상태 회로, 상기 뉴트럴상태 회로 및 상기 대기상태 회로는, 내부에 이벤트를 해석하는 디코더와 에스알래치(SR latch)를 각각 구비하는 것을 특징으로 하는 의사 듀얼포트 메모리를 위한 아비트러리 회로.
  8. 제 3항에 있어서,
    상기 제1 글리치 제거회로 및 상기 제2 글리치 제거회로는
    상기 제1상태와 상기 제2상태의 인터럽트 및 타이밍의 미스매치로 인해 발생하는 상기 제1내부클럭신호(ACLKi) 및 상기 제2내부클럭신호(BCLKi)의 글리치를 각각 제거하는 것을 특징으로 하는 의사 듀얼포트 메모리를 위한 아비트러리 회로.
KR1020170105335A 2017-08-21 2017-08-21 의사 듀얼 포트 메모리를 위한 아비트러리 회로 KR20190020411A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170105335A KR20190020411A (ko) 2017-08-21 2017-08-21 의사 듀얼 포트 메모리를 위한 아비트러리 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170105335A KR20190020411A (ko) 2017-08-21 2017-08-21 의사 듀얼 포트 메모리를 위한 아비트러리 회로

Publications (1)

Publication Number Publication Date
KR20190020411A true KR20190020411A (ko) 2019-03-04

Family

ID=65760073

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170105335A KR20190020411A (ko) 2017-08-21 2017-08-21 의사 듀얼 포트 메모리를 위한 아비트러리 회로

Country Status (1)

Country Link
KR (1) KR20190020411A (ko)

Similar Documents

Publication Publication Date Title
KR950014904B1 (ko) 반도체 집적회로
US9443575B2 (en) Semiconductor memory
US6029252A (en) Method and apparatus for generating multi-phase clock signals, and circuitry, memory devices, and computer systems using same
US7349285B2 (en) Dual port memory unit using a single port memory core
US7533222B2 (en) Dual-port SRAM memory using single-port memory cell
JP3579461B2 (ja) データ処理システム及びデータ処理装置
US6301322B1 (en) Balanced dual-edge triggered data bit shifting circuit and method
US10254782B2 (en) Apparatuses for reducing clock path power consumption in low power dynamic random access memory
US8230152B2 (en) Crossbar circuitry and method of operation of such crossbar circuitry
US20050278490A1 (en) Memory access control apparatus and method of controlling memory access
US6600693B2 (en) Method and circuit for driving quad data rate synchronous semiconductor memory device
US9196350B2 (en) Active control device, semiconductor device and system including the same
US6023430A (en) Semiconductor memory device asynchronously communicable with external device and asynchronous access controller for data access
US6175894B1 (en) Memory device command buffer apparatus and method and memory devices and computer systems using same
JP2008004218A (ja) 半導体集積回路装置
US10297293B2 (en) Semiconductor apparatus and method of operating the same
KR20190020411A (ko) 의사 듀얼 포트 메모리를 위한 아비트러리 회로
US9934170B2 (en) Circuit for controlling access to memory using arbiter
US10545822B2 (en) Semiconductor device
US5870349A (en) Data processing system and method for generating memory control signals with clock skew tolerance
US9013948B2 (en) Memory architecture for display device and control method thereof
JPH02137189A (ja) メモリ回路およびディジタル装置
KR19980068130A (ko) 공유메모리를 이용한 데이터 액세스 제어장치
KR100813133B1 (ko) 듀얼 포트 메모리 장치, 이를 가지는 메모리 시스템 및듀얼 포트 메모리 장치의 공유 메모리 영역의 적응적사용방법
JP2001344977A (ja) 半導体記憶装置

Legal Events

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