• 제목/요약/키워드: 마이크로코드

검색결과 125건 처리시간 0.025초

다수논리 결정자를 이용한 리드뮬러코드의 시스템 설계 (Design of an Encoding-Decoding System using Majority-Logic Decodable Circuits of Reed-Muller Code)

  • 김영곤;강창언
    • 한국통신학회논문지
    • /
    • 제10권5호
    • /
    • pp.209-217
    • /
    • 1985
  • 본 논문은 리드-뮬러 코드의 인코더 및 디코더의 설계에 관하여 체계화 시켰으며, 이러한 코드는 [J/2]개 이하의 에러를 정정할 수 있다. 리드-뮬러 코드의 해석을 이용하여, (15, 11) 리드-뮬러 코드에 대하여 순환 성질을 이용하여 인코더를 설계하고, 다수 논리 결정자 방법에 의해 디코더를 설계하였다. 또, 이러한 코드에 대해 Weight 분포 및 Performance를 구하였다. 마이크로 컴퓨터의 CPU와 Memory를 이용하기 위해 8255를 이용한 인터페이스 회로와 인코더 및 디코더를 설계, 제작하여 직접 인터페이스 시켜 실험을 하였다. 실험한 결과 한개의 에러를 완벽히 정정하였고, 한개의 정보를 수행하는데 소요되는 시간은 약 70u sec임을 알 수 있었다. 특히 (15, 11), (15, 5) 리드-뮬러 코드는 채널 에러가 $10^{-6}$~$10^{-4}$ 인 곳에 적합함을 보였다.

  • PDF

기업용 마이크로블로그의 사용행태에 대한 사례연구: 지식경영전략을 중심으로 (Case Study on the Enterprise Microblog Usage: Focusing on Knowledge Management Strategy)

  • 강민수;박아름;이경전
    • 지능정보연구
    • /
    • 제21권1호
    • /
    • pp.47-63
    • /
    • 2015
  • 지식경영전략은 코드화(Codification) 전략과 대인화(Personalization) 전략으로 대별할 수 있으며(Hansen et al., 1999), 성공적인 지식경영의 도입과 활용을 위한 두 전략의 운영 방안에 대한 연구가 계속되어 왔다. 그리고 지식경영 시스템에 대한 기존 연구는 주로 대기업의 일부 조직에서 활용한 사례를 대상으로 하고 있어, 중소 규모의 기업 전체를 대상으로 하는 연구는 미비한 실정이다. 본 논문은 중소 규모의 기업에 적합한 지식경영 시스템으로 기업용 마이크로블로그를 특정하고, 기업용 마이크로블로그를 활용한 중소기업의 지식경영전략을 코드화 전략과 대인화 전략의 관점에서 검토한다. 지식경영전략과 기업용 마이크로블로그에 대한 선행연구를 통하여 "기업의 성장에 따라 기업용 마이크로블로그의 활용은 코드화 전략에서 대인화 전략 중심으로 변화한다"는 가설을 설정하였다. 이 가설을 확인하기 위하여 창업 초기부터 현재까지 '야머'(Yammer)라는 기업용 마이크로블로그를 사용하고 있는 소규모 기업을 대상으로 사례연구를 진행하였다. 사례연구는 기업용 마이크로블로그의 사용 기간을 창업 '초기', 현재의 조직 형태를 갖추게 된 '중기', 그리고 연구가 진행된 '현재' 등 세 시점으로 나누고 콘텐츠를 분석하는 종단 분석을 실시하였다. 그리고 각 시점별 야머에 등록된 콘텐츠의 커뮤니케이션 유형을 분석하여 사례기업의 기업용 마이크로블로그 사용행태를 분석하고, 지식경영전략의 변화를 확인하는 방법을 사용하였다. 연구의 결과로 소규모 기업에서 지식경영전략의 운영과 그에 적합한 지식경영 시스템의 활용에 대한 실질적인 시사점을 제시하고자 한다.

uC/OS-II 실시간 커널의 가상화를 위한 하이퍼바이저 구현 (Implementation of Hypervisor for Virtualizing uC/OS-II Real Time Kernel)

  • 신동하;김지연
    • 한국컴퓨터정보학회논문지
    • /
    • 제12권5호
    • /
    • pp.103-112
    • /
    • 2007
  • 본 논문은 uC/OS-II 실시간 커널이 관리하는 주 자원인 마이크로프로세서와 메모리를 가상화하여 하나의 마이크로프로세서 상에서 다수의 uC/OS-II 실시간 커널을 수행시키는 하이퍼바이저를 구현하였다. 마이크로프로세서는 uC/OS-II 실시간 커널이 처리하는 인터럽트들을 제어하는 알고리즘을 적용하여 가상화하고 메모리는 물리적 메모리를 파티션하는 방식을 사용하여 가상화한다. 개발된 하이퍼바이저 프로그램은 타이머 인터럽트와 소프트웨어 인터럽트를 가상화하는 인터럽트 제어 루틴들, 하이퍼바이저와 각 커널을 정상 수행 상태까지 유도하는 코드, 그리고 가상화된 두 커널 사이에 데이터 전달을 제공하는 API로 구성되어 있다. 기존의 uC/OS-II 실시간 커널은 개발한 하이퍼바이저 상에서 수행되기 위하여 소스 코드 레벨에서 수정이 필요하다. 구현된 하이퍼바이저는 Jupiter 32비트 EISC 마이크로프로세서 상에서 실시간 동작 시험 및 독립 수행 환경 시험을 거친 결과 가상화 커널이 정상적으로 수행되는 것을 확인하였다. 본 연구 결과는 다수의 내장형 마이크로프로세서가 요구되는 응용 분야에 활용될 경우 하드웨어 가격 절감효과를 얻을 수 있으며 내장형 시스템의 부피, 무게 및 전력 소비량을 줄이는 효과가 있음을 확인하였다.

  • PDF

비주얼 C++소스 코드를 위한 obfuscator 구현 (Implementation of an Obfuscator for Visual C++ Source Code)

  • 장혜영;조성제
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제35권2호
    • /
    • pp.59-69
    • /
    • 2008
  • 자동화된 obfuscation은 보안 목적으로 코드를 이해하기 어렵게 만들어 역공학 공격을 방어하는데 가장 효과적인 방식이라고 알려져 있다. 본 논문에서는 역공학 공격과 같은 소프트웨어 지적재산권의 침해로부터 마이크로소프트사의 비주얼 C++ 소스 프로그램을 보호하기 위한 obfuscation 기법을 제안하고 구현하였다. 즉, 원본 비주얼 C++ 소스 프로그램을 기능은 동일하지만 이해하기에는 훨씬 힘든 또 다른 프로그램으로 변환시켜 주는 도구인 코드 obfuscator를 구현하였다. 비주얼 C++ 소스를 다루기 위해 ANTLR이라는 파서 생성기를 도입하여, '주석 제거', '식별자 스크램블', '변수 분할', '배열 중첩', '클래스 삽입', '루프 조건 확장'. '부가 피연산자 삽입', '무의미 코드 삽입' 등의 변환 방식들을 구현하였다. 또한, 복잡도, 복원력, 비용 등의 측면에서 본 obfuscator의 성능과 유효성을 평가하였다. 원본 소스 코드와 비교하여 실험한 결과, 변환된 소스 코드가 실행시간 오버헤드를 일부 유발시키긴 하지만 프로그램 보호에는 효과적임을 알 수 있었다.

확장 명령어 32비트 마이크로 프로세서에 관한 연구 (A Study on Extendable Instruction Set Computer 32 bit Microprocessor)

  • 조건영
    • 전자공학회논문지D
    • /
    • 제36D권5호
    • /
    • pp.11-20
    • /
    • 1999
  • 마이크로 프로세서의 동작 속도가 빨라지면서 메모리의 데이터 전송 폭이 시스템 성능을 제한하는 중요 인자가 되고 있다. 또한 CPU와 메모리 및 입출력회로가 하나의 반도체에 집적되는 실장 제어용 마이크로 프로세서의 가격을 낮추기 위해서 메모리 크기를 줄이는 것이 중요하다. 본 논문에서는 코드 밀도가 높은 32 비트 마이크로 프로세서 구조로 가칭 확장 명령어 세트 컴퓨터(Extendable Instruction Set Computer: EISC)를 제안한다. 32 비트 EISC는 16개의 범용 레지스타를 가지며, 16 비트 고정 길이 명령어, 짧은 오프셋 인덱스 어드래싱과 짧은 상수 오퍼랜드 명령어를 가지며, 확장 레지스타와 확장 프래그를 사용하여 오프셋 및 상수 오퍼랜드를 확장할 수 있다. 32비트 EISC는 FPGA로 구현하여 1.8432MHz에서 모든 기능이 정상적으로 동작하는 것을 확이하였고, 크로스 어셈블러와 크로스 C/C++ 컴파일러 및 명령어 시뮬레이터를 설계하고 동작을 검증하였다. 제안한 EISC의 코드 밀도는 기존 RISC의 140-220%, 기존 CISC의 120-140%로 현격하게 높은 장점을 가진다. 따라서 데이터 전송 폭을 적게 요구하므로 차세대 컴퓨터 구조로 적합하고, 프로그램 메모리 크기가 작아지므로 실장 제어용 마이크로 프로세서에 적합하기 때문에 폭 넓은 활용이 기대된다.

  • PDF

Itanium상의 자바 적시 컴파일러를 위한 가벼운 루프 불변 코드 이동 (Lightweight Loop Invariant Code Motion for Java Just-In-Time Compiler on Itanium)

  • 유준민;최형규;문수묵
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제32권3호
    • /
    • pp.215-226
    • /
    • 2005
  • 루프 불변 코드 이동(loop invariant code motion, LICM) 컴파일러 최적화는 비교적 많은 분석 작업을 필요로 하기 때문에 컴파일 시간이 수행 시간의 일부가 되는 자바 적시(Just-In-Time) 컴파일러에는 사용하기 쉽지 않다. "전통적인" LICM 기법에서는 보통 코드를 분석하여 레지스터의 정의-사용체인과 사용-정의 체인을 미리 만든 뒤 이를 바탕으로 코드 이동을 수행하는 데, 본 논문은 자바 가상 머신(Java virtual machine)이 스택 머신 (stack machine)이라서 좀 더 단순한 코드 형태를 생성한다는 특징을 이용하여 정의-사용 체인을 루프 불변 코드에 대해서만 만들고 사용-정의 체인 없이도 정확히 동작하는 알고리즘을 제시한다. 또한 기존의 방식보다 더 많은 루프 불변 코드 이동을 하게 하는 두 가지 방법을 제시한다. 우선, 간단하기 때문에 루프에 경로가 하나인 경우만 LICM을 적용하는 기존의 기법과 달리, 경로가 여러 개인 루프에서도 부분적으로 중복되는 코드에 대해서도 LICM을 안전하게 적용한다. 또한 부분적으로 중복되는 루프 불변 널(null) 포인터 체크 코드도 Itanium의 조건 수행(predication)을 이용하여 이동시키다. 제안된 기법은 Itanium 마이크로프로세서를 위한 인텔의 ORP(Open Runtime Platform) 자바 가상 머신 위의 적시 컴파일러에 구현하였다. SPECjvm98 벤치마크에 대해 실험을 수행한 결과 전체 적시 컴파일 시간을 1.3% 정도만을 증가시켰지만 전체 수행 시간을 기하 평균으로 2.2% 향상 시켰다.

64비트 4-way 수퍼스칼라 마이크로프로세서의 효율적인 분기 예측을 수행하는 프리페치 구조 (A Prefetch Architecture with Efficient Branch Prediction for a 64-bit 4-way Superscalar Microprocessor)

  • 문상국;문병인;이용환;이용석
    • 한국통신학회논문지
    • /
    • 제25권11B호
    • /
    • pp.1939-1947
    • /
    • 2000
  • 본 논문에서는 명령어의 효율적인 페치를 위해 분기 타겟 주소 전체를 사용하지 않고 캐쉬 메모리(cache memory) 내의 적은 비트 수로 인덱싱 하여 한 클럭 사이클 안에 최대 4개의 명령어를 다음 파이프라인으로 보내줄 수 있는 방법을 제시한다. 본 프리페치 유닛은 크게 나누어 3개의 영역으로 나눌 수 있는데, 분기에 관련하여 미리 부분적으로 명령어를 디코드 하는 프리디코드(predecode) 블록, 타겟 주소(NTA : Next Target Address) 테이블 영역을 추가시킨 명령어 캐쉬(instruction cache) 블록, 전체 유닛을 제어하고 가상 주소를 관리하는 프리페치(prefetch) 블록으로 나누어진다. 사용된 명령어들은 SPARC(Scalable Processor ARChitecture) V9에 기준 하였고 구현은 Verilog-HDL(Hardwave Description Language)을 사용하여 기능 수준으로 기술되고 검증되었다. 구현된 프리페치 유닛은 명령어 흐름에 분기가 존재하더라도 단일 사이클 안에 4개까지의 명령어들을 정확한 예측 하에 다음 파이프라인으로 보내줄 수 있다. 또한 NTA를 사용한 방법은 같은 수의 레지스터 비트를 사용하였을 때 BTB(Branch Target Buffer)를 사용하는 방법과 비교하여 2배정도 많은 개수의 분기 명령 주소를 저장할 수 있는 장점이 있다.

  • PDF

${\mu}$C/OS-II 운영체제의 부시스템별 CPU 전력 소비 분석 (Energy Consumption Analysis of ${\mu}$C/OS-II Subsystems)

  • 강경태;심호준;박상수;성민영;신현식;장래혁
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2001년도 가을 학술발표논문집 Vol.28 No.2 (3)
    • /
    • pp.94-96
    • /
    • 2001
  • 저전력 시스템에 대한 연구는 회로 수준에서부터 응용 소프트웨어 수준에 이르기까지 다양한 각도에서 이루어지고 있다. 본 연구에서 는 특히 운영 체제 수준, 즉 $\mu$C/OS-II(MicroC/OS-II) 커널 코드의 다양한 함수들에 대한 에너지 소비값을 추출하며 이 결과를 바탕으로 운영체재의 각 모듈별 에너지 소비를 분석한다. 이를 위하여 ARM7TDMI 마이크로 콘트롤러를 이용하여 제작된 시스템에 $\mu$C/OS-IIl 운영체제를 이식하고 SES(SNU Energy Scanner)툴을 이용하여 수행된 운영체제 코드의 각 모듈 즉 태스크 관리, 인터럽트 처리, IPC등에 대한 에너지 소비를 얻고 이 결과를 분석한다.

  • PDF

NBDP시스템의 한글코드 및 처리 알고리즘 연구 (A Study of the Hangul Codes and Algorithm for the NBDP System)

  • 유형열;조형래;김기문
    • 한국정보통신학회논문지
    • /
    • 제1권1호
    • /
    • pp.113-121
    • /
    • 1997
  • 해상 이동 통신은 무선전신과 무선전화에 의한 기존의 통신 체계에서 GMDSS협약의 발효로 인해 무선텔렉스 및 디지털 선택호출과 위성통신을 위주로 하는 새로운 통신 체계로 변화되고 있다. ITA No.2코드를 사용하는 선박용 통신시스템은 해상 이동 통신의 중요한 통신 수단으로 이용되고 있다. 이들 시스템은 IMO 영어 및 숫자, 기호를 사용하여 Telex용어에 의해 운용되므로 제한된 통신 기능만이 가능하므로 한글에 의한 통신 운용을 구현함으로써 무선전신을 대체하고, 증대되는 통신수요 및 효율적인 통신수단을 제공할 수 있을 것이다. 따라서 본 연구에서는 NBDP시스템의 데이터통신을 위한 한글코드의 제안과 운용 소프트웨어의 한글처리를 위한 알고리즘을 설계하고 마이크로프로세서 보드를 이용하여 이를 구현하였다.

  • PDF

확산코드 상태 감지 기법에 의한 통합 음성/데이터 서비스 MAC 프로토콜 (MAC Protocol based on Spreading Code Status-Sensing Scheme for Integrated Voice/Data Services)

  • 임인택
    • 한국정보통신학회논문지
    • /
    • 제5권5호
    • /
    • pp.916-922
    • /
    • 2001
  • 본 논문에서는 기지국과 단말기간의 전파지연이 비교적 짧은 마이크로셀 환경의 패킷 CDMA망에서 음성과 데이터를 통합 서비스하기 위한 MAC 프로토콜을 제안한다. 제안한 프로토콜을 위한 시스템의 상향링크 채널은 프레임들 구성하는 타임 슬롯과 각 슬롯별 확산코드에 의하여 제공된다. 지연에 민감한 음성 트래픽에 더 높은 우선순위를 부여하여, 음성 트래픽인 경우에는 발음구간 동안 임의의 확산코드를 예약하여 서비스된다. 반면, 데이터 트래픽은 매 패킷이 발생할 때마다 기지국으로부터 수신한 현재 슬롯의 예약 상태 정보를 기반으로 서비스된다. 성능분석의 결과, 본 논문에서 제안한 기법은 음성과 데이터 패킷간의 충돌이 전혀 발생하지 않으므로 주어진 패킷 누락률 범위 내에서 수용 가능한 최대 음성 단말기 수를 증가시킬 수 있었다.

  • PDF