KR100564361B1 - 시스템 메모리의 결함 억제회로 - Google Patents

시스템 메모리의 결함 억제회로 Download PDF

Info

Publication number
KR100564361B1
KR100564361B1 KR1020030071485A KR20030071485A KR100564361B1 KR 100564361 B1 KR100564361 B1 KR 100564361B1 KR 1020030071485 A KR1020030071485 A KR 1020030071485A KR 20030071485 A KR20030071485 A KR 20030071485A KR 100564361 B1 KR100564361 B1 KR 100564361B1
Authority
KR
South Korea
Prior art keywords
data
memories
voting
memory
storing
Prior art date
Application number
KR1020030071485A
Other languages
English (en)
Other versions
KR20050036030A (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 한국철도기술연구원
Priority to KR1020030071485A priority Critical patent/KR100564361B1/ko
Publication of KR20050036030A publication Critical patent/KR20050036030A/ko
Application granted granted Critical
Publication of KR100564361B1 publication Critical patent/KR100564361B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Hardware Redundancy (AREA)

Abstract

본 발명은 시스템 메모리의 결함 억제회로에 관한 것으로, 데이터를 입력받아 저장한 후, 쓰기 제어신호를 받아 상기 데이터를 제1, 제2 및 제3 메모리(12, 13,14)에 저장하는 쓰기버퍼(11)와; 상기 쓰기 버퍼(11)로부터 데이터를 입력받아 저장하는 제1, 제2 및 제3 메모리(12,13,14)와; 상기 제1, 제2 및 제3 메모리(12, 13,14)로부터 데이터를 읽어들여 3개의 데이터를 보팅하여 출력하는 다수보팅부(15)와; 상기 다수보팅부(15)에서 출력되는 보팅된 데이터를 저장하고 인에이블 신호에 의해 상기 저장된 데이터를 출력하는 읽기버퍼(16)와; 상기 각부를 제어하는 마이크로프로세서(10)로 구성되어 시스템의 정상동작을 보장하고, 오류가 발생한 데이터를 연산에 사용하기 전에 읽기과정에서 실시간으로 다수보팅하여 완전한 값으로 활용할 수 있다.
결함억제, 시스템 메모리, 마이크로프로세서, 다수 보팅

Description

시스템 메모리의 결함 억제회로{Error preventing circuit for storing data in system memory}
도 1은 마이크로프로세서를 사용한 시스템에서 마이크로프로세서와 인터페이스하는 일반적인 메모리의 구조,
도 2는 일반적인 메모리에 데이터를 읽기/쓰기하는 과정을 나타내는 설명도,
도 3은 본 발명에 의한 본 발명에 의한 시스템 메모리의 결함 억제회로의 구성을 나타내는 블록도,
도 4는 본 발명에 의한 시스템 메모리의 결함억제회로에서 메모리에 데이터를 읽기/쓰기하는 과정을 나타내는 설명도,
도 5는 본 발명에 의한 메모리 결함 억제 회로가 메모리에 데이터를 쓰기하는 과정을 나타내는 타이밍도,
도 6은 본 발명에 의한 메모리 결함 억제 회로가 메모리에 데이터를 읽기하는 과정을 나타내는 타이밍도이다.
< 도면의 주요 부분에 대한 부호의 설명 >
11:쓰기 버퍼 12:제1메모리 13:제2메모리
14:제3메모리 15:다수보팅부 16:읽기 버퍼
17:제어버스 18:데이터 버스 19:어드레스 버스
본 발명은 시스템 메모리의 결함 억제회로에 관한 것으로, 특히 메모리에서 발생되는 결함을 실시간으로 검사하여 메모리의 정보가 손상되어 시스템 데이터의 오류로 이어지지 않도록 결함을 억제할 수 있는 시스템 메모리의 결함 억제회로에 관한 것이다.
철도신호제어분야에서 내장형(Embedded) 컴퓨터 기술은 높은 신뢰성 및 안전성을 요구하는 분야에 사용되고 있으며, 대표적인 예로는 전자연동장치, 자동 열차제어장치, 정시간 전자건널목 등의 제어에 활용되고 있다.
도1은 마이크로프로세서를 사용한 시스템에서 마이크로프로세서와 인터페이스하는 일반적인 메모리의 구조이다.
메모리(2)는 마이크로프로세서(1)로부터 데이터를 수신하여 저장하거나 마이크로프로세서의 요구에 의해 데이터를 송신하는 장치로서 어드레스 버스(Address Bus), 데이터 버스(Data Bus) 및 제어버스(Control Bus)를 사용하여 마이크로프로세서(1)와 인터페이스한다.
도2는 일반적인 메모리에 데이터를 읽기/쓰기하는 과정을 나타낸 것이다.
16 비트로 표현된 메모리 맵(Memory Map)에서 0x0000A0 번지부터 0x0000A4 번지까지 중에서 0x0000A2 번지에 데이터를 0xFFFF을 쓰기 위해서는 도1의 구조에서 마이크로프로세서(1)로부터 어드레스 버스에 0x0000A4 신호가 가해지고, 제어버스의 칩 선택(Chip Select) 신호와 읽기/쓰기(Read/Write)신호가 쓰기로 설정된 후 데이터 버스에 0xFFFF가 인가되면 메모리(2)에 기록된다.
메모리(2)에서 데이터를 읽기 위해서 어드레스 버스에 데이터의 위치인 0x0000A2를 인가한 후 제어버스의 칩 선택 신호와 읽기/쓰기 신호에 읽기 신호를 인가하면 데이터버스에 0x0000A2 번지의 데이터인 0xFFFF가 실어진다.
이러한 종래의 메모리는 데이터를 저장하는 과정에서의 전기적인 외란이나 타이밍의 불일치에 의한 저장데이터의 변질 또는 메모리의 하드웨어적인 결함발생으로 인한 데이터의 오염을 검출하기 위해 소프트웨어적으로 복수의 영역에 데이터를 저장하여 비교하거나, 패리티와 같은 정보여분을 사용하여 결함의 발생을 감시하였다.
이러한 구조는 마이크로프로세서를 사용하는 컴퓨터시스템에서 발생된 결함을 실시간으로 검출하지 못하고, 소프트웨어적인 결함의 검출을 위해 많은 양의 부하를 마이크로프로세서에 부과하였다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로, 본 발명의 목적은 마이크로프로세서를 사용하는 상용제어보드 또는 제어보드 제작시에 실시간으로 결함을 억제하는 시스템 메모리의 결함 억제회로를 제공하는 것이다.
본 발명의 다른 목적은 시스템의 메모리에서 발생되는 결함을 실시간으로 검사하여 메모리의 정보가 손상되어 시스템 데이터의 오류로 이어지지 않도록 결함을 억제하는 시스템 메모리의 결함 억제회로를 제공하는 것이다.
본 발명의 또다른 목적은 마이크로프로세서를 사용하는 제어보드에서 시스템 메모리에 데이터 저장시에 외부의 노이즈에 의한 결함이나 소자의 손상으로부터 기인하는 결함을 제거하여 시스템 메모리의 정상동작을 보장하기 위한 시스템 메모리의 결함 억제회로를 제공하는 것이다.
상기 목적을 달성하기 위하여 본 발명에 의한 시스템 메모리 결함 억제회로는 데이터를 입력받아 저장한 후, 쓰기 제어신호를 받아 상기 데이터를 제1, 제2 및 제3 메모리에 저장하는 쓰기버퍼와; 상기 쓰기 버퍼로부터 데이터를 입력받아 저장하는 제1, 제2 및 제3 메모리와; 상기 제1, 제2 및 제3 메모리로부터 데이터를 읽어들여 3개의 데이터를 보팅하여 출력하는 다수보팅부와; 상기 다수보팅부에서 출력되는 보팅된 데이터를 저장하고 인에이블 신호에 의해 상기 저장된 데이터를 출력하는 읽기버퍼와; 상기 각부를 제어하는 마이크로프로세서로 구성된다.
제1, 제2 및 제3 메모리는 물리적으로 병렬 연결되어서 제1, 제2 및 제3 메모리의 동일한 물리번지는 동일한 어드레스를 가져서 읽기/쓰기 제어 신호에 의해 동시에 접근이 가능하여 데이터를 동시에 읽거나 쓰기를 할 수 있는 것을 특징으로 한다.
상기와 같이 구성된 본 발명을 실시예를 들어 첨부된 도면에 의거 상세히 설명한다.
도3에 본 발명에 의한 시스템 메모리의 결함 억제회로의 구성을 나타내는 블록도가 도시된다.
본 발명에 의한 시스템 메모리의 결함 억제회로는 데이터를 입력받아 저장한 후, 쓰기 제어신호를 받아 상기 데이터를 제1, 제2 및 제3 메모리(12,13,14)에 저장하는 쓰기버퍼(11)와; 상기 쓰기 버퍼(11)로부터 데이터를 입력받아 저장하는 제1, 제2 및 제3 메모리(12,13,14)와; 상기 제1, 제2 및 제3 메모리(12,13,14)로부터 데이터를 읽어들여 3개의 데이터를 보팅하여 출력하는 다수보팅부(15)와; 상기 다수보팅부(15)에서 출력되는 보팅된 데이터를 저장하고 인에이블 신호에 의해 상기 저장된 데이터를 출력하는 읽기버퍼(16)와; 상기 각부를 제어하는 마이크로프로세서(10)로 구성된다.
상기와 같이 구성된 본 발명에 의한 메모리 결함 억제 회로가 메모리(12,13, 14)에 데이터를 쓰기하는 과정을 설명하기 위하여, 메모리 맵을 나타내는 도4와 타이밍 차트 도5를 참조하여 설명한다.
상기 제1, 제2 및 제3 메모리(12,13,14)는 물리적으로 병렬 연결되어서 상기 제1, 제2 및 제3 메모리(12,13,14)의 동일한 물리번지는 동일한 읽기/쓰기 제어 신호에 의해 동시에 접근이 가능하여 데이터를 동시에 읽거나 쓰기를 할 수 있다.
마이크로프로세서(10)는 메모리(12,13,14)에 데이터를 저장하기 위하여 먼저 어드레스 버스(19)를 통해 저장할 어드레스를 지정한다. 예를 들면, 메모리(12,13, 14)의 "0x0000A4" 번지에 데이터를 저장하기 위하여 도5의 (e)에 도시된 바와 같이 어드레스 버스(19)에 "0x0000A4" 신호를 가한다.
어드레스 버스(19)에 "0x0000A4" 신호가 가해지면 도4의 메모리 맵에 도시된 바와 같이 메모리(12,13,14)의 "0x0000A4" 번지가 지정된다.
메모리(12,13,14)의 어드레스를 "0x0000A4"로 지정한 후, 도5의 (a)에 도시된 바와 같이 제어버스(17)를 통해 쓰기 버퍼(11)에 "버퍼 인에이블" 신호를 "1"로 출력하여 쓰기 상태로 한 후, 마이크로프로세서(10)는 도5의 (c)에 도시된 바와 같이 데이터 버스(18)에 데이터 "0xFFFF"를 인가하여 쓰기 버퍼(11)에 저장한다.
쓰기 버퍼(11)에 데이터 "0xFFFF"를 저장한 후, 도5의 (b)에 도시된 바와 같이 메모리(12,13,14)에 칩 선택신호 "0"을 출력하여 메모리(12,13,14)를 인에이블 상태로 놓고, 상기 칩 선택신호 "0"은 쓰기 버퍼(11)에 저장된 "0xFFFF"를 출력하게 하여 도5의 (d)에 도시된 바와 같이 쓰기 버퍼(11)에서 데이터 "0xFFFF"가 출력되어 메모리(12,13,14)에 "0xFFFF"가 저장된다.
이렇게 쓰기 버퍼(11) 하나로 3개의 메모리(12,13,14)에 데이터를 저장함으로써, 각 메모리(12,13,14)에 쓰기 버퍼(11)를 할당하여 저장하는 것에 비해 디지털 소자의 평균지연시간을 단축할 수 있다.
즉, 각 메모리(12,13,14)에 쓰기 버퍼(11)를 할당하여 쓰기 동작을 하는 경우 지연시간오차가 15㎱ 되지만, 하나의 쓰기 버퍼(11)를 공통으로 사용하는 경우 5㎱로 단축할 수 있다.
마찬가지 방식으로 메모리(12,13,14)의 다른 어드레스에도 데이터가 저장되고, 이렇게 데이터가 저장된 상태에서 본 발명에 의한 메모리 결함 억제 회로가 메모리(12,13,14)에서 데이터를 읽어들이는 과정을 설명하기 위하여, 메모리 맵을 나타내는 도4와 타이밍 차트 도6을 참조하여 설명한다.
마이크로프로세서(10)는 도6의 (f)에 도시된 바와 같이 어드레스 버스(19)에 "0x0000A4" 신호를 가하여 메모리(12,13,14)의 어드레스를 지정하고, 제어버스(17)를 통해 읽기 버퍼(16)에 버퍼 인에이블 신호를 입력하여 읽기 버퍼(16)를 인에이블 상태로 놓는다.
메모리(12,13,14)의 어드레스를 "0x0000A4"로 지정한 후, 메모리(12,13,14)에 칩 선택신호를 출력하여 인에이블 상태로 놓아(도6(b) 참조) 다수보팅부(15)와 메모리(12,13,14) 사이에서 데이터 전송이 일어난다.
즉, 메모리(12,13,14)의 어드레스 "0x0000A4"에 저장된 "0xFFFF"가 다수보팅부(15)로 출력되고 보팅된 후, 읽기 버퍼(16)로 출력된다.
따라서, 데이터를 저장하는 과정에서의 전기적인 외란이나 타이밍의 불일치에 의한 저장데이터의 변질 또는 메모리의 하드웨어적인 결함발생으로 인한 데이터의 오염을 방지할 수 있다.
읽기 버퍼(16)는 다수보팅부(15)에서 입력받은 "0xFFFF" 데이터를 데이터 버스(18)를 통해 마이크로프로세서(10)에 입력함으로써 읽기과정이 완료된다.
이상 설명한 바와 같이 본 발명에 의하면 쓰기 버퍼, 다수보팅회로, 3개의 메모리 및 읽기버퍼를 사용하여 외부의 노이즈에 의한 결함이나 메모리의 물리적 손상으로 인한 데이터의 오류를 하드웨어적으로 억제함으로써 시스템의 정상동작을 보장하고, 오류가 발생한 데이터를 연산에 사용하기 전에 읽기과정에서 실시간으로 다수보팅하여 완전한 값으로 활용할 수 있다.

Claims (2)

  1. 데이터를 입력받아 저장한 후, 쓰기 제어신호를 받아 상기 데이터를 제1, 제2 및 제3 메모리(12,13,14)에 저장하는 쓰기버퍼(11)와;
    상기 쓰기 버퍼(11)로부터 데이터를 입력받아 저장하는 제1, 제2 및 제3 메모리(12,13,14)와;
    상기 제1, 제2 및 제3 메모리(12,13,14)로부터 데이터를 읽어들여 3개의 데이터를 보팅하여 출력하는 다수보팅부(15)와;
    상기 다수보팅부(15)에서 출력되는 보팅된 데이터를 저장하고 인에이블 신호에 의해 상기 저장된 데이터를 출력하는 읽기버퍼(16)와; 상기 각부를 제어하는 마이크로프로세서(10)로 구성되는 것을 특징으로 하는 시스템 메모리 결함 억제회로.
  2. 제1항에 있어서, 상기 제1, 제2 및 제3 메모리(12,13,14)를 물리적으로 병렬 연결하여 상기 제1, 제2 및 제3 메모리(12,13,14)의 동일한 물리번지는 동일한 물리 어드레스를 가져서 데이터를 동시에 읽거나 쓰기를 하여 데이터의 충돌이 없는 것을 특징으로 하는 시스템 메모리 결함 억제회로.
KR1020030071485A 2003-10-14 2003-10-14 시스템 메모리의 결함 억제회로 KR100564361B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030071485A KR100564361B1 (ko) 2003-10-14 2003-10-14 시스템 메모리의 결함 억제회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030071485A KR100564361B1 (ko) 2003-10-14 2003-10-14 시스템 메모리의 결함 억제회로

Publications (2)

Publication Number Publication Date
KR20050036030A KR20050036030A (ko) 2005-04-20
KR100564361B1 true KR100564361B1 (ko) 2006-03-27

Family

ID=37239316

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030071485A KR100564361B1 (ko) 2003-10-14 2003-10-14 시스템 메모리의 결함 억제회로

Country Status (1)

Country Link
KR (1) KR100564361B1 (ko)

Also Published As

Publication number Publication date
KR20050036030A (ko) 2005-04-20

Similar Documents

Publication Publication Date Title
CN112331253B (zh) 一种芯片的测试方法、终端和存储介质
JP3650411B2 (ja) 自動メモリー・テスタのための冗長性アナライザ
US20120131382A1 (en) Memory controller and information processing system
US20070022333A1 (en) Testing of interconnects associated with memory cards
JP2009181425A (ja) メモリモジュール
JP2001167005A (ja) メモリ診断方法とメモリ診断回路および半導体記憶装置
KR100564361B1 (ko) 시스템 메모리의 결함 억제회로
KR100538486B1 (ko) 시스템 메모리의 결함 검출회로
JPH05216778A (ja) メモリサブシステム
JP2870001B2 (ja) 論理回路パッケージ
JPH079636B2 (ja) バス診断装置
JPH09293020A (ja) インターフェース回路
US7428671B2 (en) Memory module with test structure
JPH04369711A (ja) 電子ディスクサブシステム
JPH06110721A (ja) メモリ制御装置
JP3303673B2 (ja) 論理回路の試験装置及び論理回路の試験方法
JPH11161558A (ja) メモリ管理装置及び情報処理装置
JP5465164B2 (ja) 列車情報管理装置および多数決処理方法
JPH0555336A (ja) 論理回路パツケージ
JP2006227674A (ja) 信号検出装置
JPH06139154A (ja) メモリカード装置
JPH08161235A (ja) メモリモジュール回路
JPH0218647A (ja) キャシュメモリテスト方法
JPS6223336B2 (ko)
JP2001307498A (ja) メモリチェック装置及びメモリチェック方法並びに記憶媒体

Legal Events

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

Payment date: 20130304

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140304

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150302

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170303

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee