• 제목/요약/키워드: Instruction code

검색결과 145건 처리시간 0.024초

이중 포트 메모리를 위한 효율적인 프로그램 가능한 메모리 BIST (An Efficient Programmable Memory BIST for Dual-Port Memories)

  • 박영규;한태우;강성호
    • 대한전자공학회논문지SD
    • /
    • 제49권8호
    • /
    • pp.55-62
    • /
    • 2012
  • 메모리 설계 기술과 공정 기술의 발달은 고집적 메모리의 생산을 가능하게 하였다. 전체 Systems-On-Chips(SoC)에서 내장 메모리가 차지하는 비중은 점점 증가하여 전체 트랜지스터 수의 80%~90%를 차지하고 있어, SoC에서 내장된 이중 포트 메모리에 대한 테스트 중요성이 점점 증가하고 있다. 본 논문에서는 이중 포트 메모리를 위한 다양한 테스트 알고리즘을 지원하는 새로운 micro-code 기반의 programmable memory Built-In Self-Test(PMBIST) 구조를 제안한다. 또한 제안하는 알고리즘 명령어 구조는 March 기반 알고리즘과 이중 포트 메모리 테스트 알고리즘 등의 다양한 알고리즘을 효과적으로 구현한다. PMBIST는 테스트 알고리즘을 최적화된 알고리즘 명령어를 사용하여 최소의 bit으로 구현할 수 있어 최적의 하드웨어 오버헤드를 가진다.

경량 동적 코드 변환을 이용한 커널 수준 소프트웨어 계측에 관한 연구 (Kernel-level Software instrumentation via Light-weight Dynamic Binary Translation)

  • 이동우;김지홍;엄영익
    • 인터넷정보학회논문지
    • /
    • 제12권5호
    • /
    • pp.63-72
    • /
    • 2011
  • 코드변환 기법은 특정 명령어 집합 구조에서 작성된 프로그램 코드를 다른 구조에서 실행할 수 있도록 변환하는 일종의 에뮬레이션 기법이다. 이 기법은 주로 구형 시스템에서 동작하는 응용프로그램을 새로운 시스템에서 동작시키기 위해 사용되었다. 코드를 변환하는 과정에서 동적으로 코드를 삽입하는 것이 가능하기 때문에 소스코드의 수정 없이 기존 응용프로그램을 계측할 수 있다. 이미 응용프로그램 분야에서는 동적코드분석과 가상머신에서 이러한 기법이 널리 활용되고 있다. 반면에 운영체제의 커널은 일반적인 유저 수준의 응용프로그램과는 다른 특성을 지니기 때문에 커널 수준에서 이러한 코드변환 기법을 사용하려면 시스템 성능, 메모리 관리, 특권 명령어 처리 및 동기화와 관련된 문제가 다루어져야 한다. 본 논문에서는 커널 수준의 동적코드변환 기법을 설계하고 코드삽입을 통한 소프트웨어 계측을 제안한다. 제안기법을 리눅스 커널에 적용하여 실험을 수행하고 그 결과를 통해 본 제안기법이 커널수준에서 소프트웨어 계측에 적은 성능 부하만을 야기함을 확인하였다.

Proposition and Evaluation of Parallelism-Independent Scheduling Algorithms for DAGs of Tasks with Non-Uniform Execution Time

  • Kirilka Nikolova;Atusi Maeda;Sowa, Masa-Hiro
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2000년도 ITC-CSCC -1
    • /
    • pp.289-293
    • /
    • 2000
  • We propose two new algorithms for parallelism-independent scheduling. The machine code generated from the compiler using these algorithms in its scheduling phase is parallelism-independent code, executable in minimum time regardless of the number of the processors in the parallel computer. Our new algorithms have the following phases: finding the minimum number of processors on which the program can be executed in minimal time, scheduling by an heuristic algorithm for this predefined number of processors, and serialization of the parallel schedule according to the earliest start time of the tasks. At run time tasks are taken from the serialized schedule and assigned to the processor which allows the earliest start time of the task. The order of the tasks decided at compile time is not changed at run time regardless of the number of the available processors which means there is no out-of-order issue and execution. The scheduling is done predominantly at compile time and dynamic scheduling is minimized and diminished to allocation of the tasks to the processors. We evaluate the proposed algorithms by comparing them in terms of schedule length to the CP/MISF algorithm. For performance evaluation we use both randomly generated DAGs (directed acyclic graphs) and DACs representing real applications. From practical point of view, the algorithms we propose can be successfully used for scheduling programs for in-order superscalar processors and shared memory multiprocessor systems. Superscalar processors with any number of functional units can execute the parallelism-independent code in minimum time without necessity for dynamic scheduling and out-of-order issue hardware. This means that the use of our algorithms will lead to reducing the complexity of the hardware of the processors and the run-time overhead related to the dynamic scheduling.

  • PDF

24Bit BMP 이미지를 이용한 쉘코드 은닉 기법 (Hiding Shellcode in the 24Bit BMP Image)

  • 금영준;최화재;김휘강
    • 정보보호학회논문지
    • /
    • 제22권3호
    • /
    • pp.691-705
    • /
    • 2012
  • 1990년도 중반에 처음 개념이 소개된 이래, 현재까지도 가장 빈번하게 사용되고 매우 심각한 피해를 초래하는 공격기법으로 버퍼 오버플로우(buffer overflow) 취약점을 이용한 공격을 들 수 있다. 쉘코드(shellcode)는 이러한 버퍼 오버플로우 공격에 사용되는 기계어 코드(machine code)로서, 공격자는 자신이 의도한 바대로 수행되는 쉘코드를 작성하고 이를 공격 대상 호스트의 메모리에 삽입, EIP를 조작하여 시스템의 제어 흐름을 가로챌 수 있다. 따라서 버퍼오버플로우를 일으킨 후 쉘코드를 적재하려는 것을 탐지하기 위한 많은 연구들이 수행되어 왔으며, 공격자들은 이런 탐지기법들을 우회하는 기법을 끊임없이 개발해 왔다. 본 논문에서는 이러한 쉘코드 공격 기법 및 방어 기법들에 대해서 살펴보고, 24Bit BMP 이미지에 쉘코드를 은닉시킬 수 있는 새로운 기법을 제안하고자 한다. 이 기법을 통하여 쉘코드를 손쉽게 은닉할 수 있으며, 현재의 다양한 탐지 기법들을 쉽게 우회할 수 있음을 확인할 수 있었다.

병렬화된 에러 보정 코드 모듈 기반 프로세서 속도 및 신뢰도 향상 (High Speed and Robust Processor based on Parallelized Error Correcting Code Module)

  • 강명진;박대진
    • 한국정보통신학회논문지
    • /
    • 제24권9호
    • /
    • pp.1180-1186
    • /
    • 2020
  • 임베디드 시스템 중 하나인 TPU (Tiny Processing Unit)를 사용하는 데에는 많은 제약들이 따른다. 외부 충격에 의해 데이터 통신 중 잡음이 발생하거나, 충분한 전력이 공급되지 않아 문턱전압을 넘지 못해 올바른 값 전달이 이루어지지 않는 경우가 있다. 이러한 문제점들을 해결하기 위해 많은 임베디드 시스템에서는 ECC (Error Correcting Code)를 사용하는데, ECC를 추가하게 되면서 메모리에서 데이터를 읽어오는 시간이 더 오래 걸리게 되는 문제점이 발생한다. 따라서 우리는 ECC 처리된 코드를 읽어오는 과정을 병렬처리하여 병목현상을 완화하고 TPU의 속도 및 데이터 안정성을 높이는 모델을 제안한다. 제안된 구조는 기존 구조에 비해 메모리를 조금 더 사용하여 안정성과 더 빠른 속도를 보여준다. 실험은 행렬의 연산을 사용하여 진행되었으며, 제안된 구조는 이전의 구조보다 7% 빠른 속도를 보여준다.

32bit EISC MCU 기반 임베디드 VoIP Phone의 설계 및 검증 (Implementation and Verification of Embedded VoIP Phone based on 32bit EISC MCU)

  • 강진아;진군선;임재윤;황영주
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2004년도 하계종합학술대회 논문집(1)
    • /
    • pp.35-38
    • /
    • 2004
  • In this paper, we aim to implement the embedded VoIP Phone based on EISC core Microcontroller. EISC is recently new microprocessor architecture, which contains both advantage of RISC and CISC. This advantages are desirably resulted in high code density, high performance and 16/32/64bit scalable instruction length. Also, we select the embedded system which can be guaranteed performance and economical efficiency for implementation that system. As the step of this research, we first study basic system for implementation of target system. Next, we construct the structure of embedded VoIP Phone based on 32bit EISC MCU efficiently. And then we realize that constructed system and verify the performance of that realized system by the test of voice communication in field.

  • PDF

전산모델에 의한 응축기내에서의 기체유동현상의 예측 (Prediction of Flow Pattern inside a Power Condenser by Computer Modelling)

  • 설광원;이상용
    • 대한설비공학회지:설비저널
    • /
    • 제17권3호
    • /
    • pp.238-248
    • /
    • 1988
  • The flow pattern inside the power condenser is generally known to be very complicated due to the phase change and turbulence effects as well as the effect of condenser geometry. In the present study, the flow pattern inside the power condenser was numerically simulated with a personal computer. The widely known CHAMPION 2/E/FIX(Concentration, Heat and Momentum Program Instruction Outfit, 2D/Elliptic/Fixed grid) computer code was modified for this purpose. The flow was asssumed to be two-dimensional and steady-state, and the tube bank was considered to be homogeneous porous medium. Simple turbulent diffusion coefficients based on the appropriate experiments were obtained for the computation. Through this analytical approach, the flow pattern could be predicted fairly well. The computational results also show that the location of the air vent plays an important key role in determining the efficiency of the condenser.

  • PDF

복수 로드/스토어 명령어 생성 개선을 위한 변수 복사 기법 (A variable replication technique for improving multiple load/store code generation)

  • 조두산;김찬혁;백윤흥
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2011년도 한국컴퓨터종합학술대회논문집 Vol.38 No.1(B)
    • /
    • pp.338-341
    • /
    • 2011
  • 프로그램 코드 사이즈는 내장형시스템 구성에 있어서 고려해야 할 핵심 요소중의 하나이다. 프로그램 사이즈는 해당 시스템의 메모리 크기, 전력소모, 성능, 가격 등에 영향을 미치기 때문이다. 프로그램 코드 사이즈를 최적화하기 위하여 활용할 수 있는 시스템 자원 중에서 효과적인 것 중 하나가 복수 로드/스토어 명령어(Multiple Load/Store Instruction, MLS)이다. MLS 명령어는 하나의 명령어로 하나이상의 메모리 값을 레지스터로 블록 전송 (block transfer)하는 것이 가능하기 때문이다. 본 연구에서는 MLS명령어를 기존보다 효과적으로 생성함으로써 코드 크기를 감소시키는 최적화 기법에 대해 논의한다. 실험을 통하여 Mediabench와 DSPStone 벤치마크에서 본 연구에서 제안하는 기법을 통하여 평균 메모리 접근 코드사이즈가 10.3% 감소하였다.

웹 기반 학습을 위한 Chiron-2 아키텍처기반의 성적처리 시스템 (Chiron-2 Architecture Based Score Processing System for Web-Based Education)

  • 정화영
    • 인터넷정보학회논문지
    • /
    • 제6권4호
    • /
    • pp.1-7
    • /
    • 2005
  • 웹 기반 학습시스템은 CGI를 기반으로 하는 절차지향에 따라 구현되었다. 그러나 이러한 방법은 시스템 개발의 경우 프로그램 코드의 중복에 의한 비효율성을 가질 수 있으며, 개발이후에도 운영 및 관리에 어려움을 준다. 따라서 웹 기반 학습시스템에서도 컴포넌트 기반 개발방법의 도입이 필요하다. 본 연구에서는 컴포넌트 합성에 의한 웹 기반 성적처리 시스템을 구현하였다. 적용된 컴포넌트는 Java Beans로 구현하였으며, 합성 방법은 Chiron-2 아키텍처를 이용하였다. 이러한 방법에 의하여 본 연구는 구조적인 장점들뿐만 아니라 유지보수를 측정하는 사이크로매틱 복잡도에서도 낮은 수치를 나타냄으로서 보다 좋은 효율성을 가짐을 알 수 있다.

  • PDF

마이크로프로그래밍을 위한 구조적 마이크로어셈블러 설계 (A design of structured microassembler for microprogramming)

  • 신봉희;김성종;이준모;신인철
    • 전자공학회논문지B
    • /
    • 제32B권1호
    • /
    • pp.21-29
    • /
    • 1995
  • In this paper, a independent and structured microassembler was designed for easily changing the system design, and for designing various microarchitecture. When the designer's hardware and microprogramming process were made concurrently, it is needed to easily change or improve the instruction set and executable code format. But this type of developed environment requires a high const and a large software system. A proposed microassembler was designed so the designer directly defines the microinstruction set and format to be executed. And we implemented a module from each part of the software, so it is now possible to use practically and upgrade the function of each part, First, the symbol was separated from the assembler. And then microinstruction was copied into it. The microinstruction format was designed using the defined language that was designed for free microinstruction. This was implemented in an IBM-PC by using the C-language, FLEX,and BISON.

  • PDF