• 제목/요약/키워드: operand

검색결과 51건 처리시간 0.026초

광프로세서를 위한 효율적인 제어회로 설계 및 검증 (A Design and Verification of an Efficient Control Unit for Optical Processor)

  • 이원주
    • 전자공학회논문지CI
    • /
    • 제43권4호
    • /
    • pp.23-30
    • /
    • 2006
  • 본 논문은 $LiNbO_3$ 광스위칭 소자를 이용한 광컴퓨터 시스템인 SPOC(Stored Program Optical Computer)의 제어 동작의 문제점을 개선한 회로를 설계하고 검증한다. SPOC의 메모리는 DLM(Delay Line Memory) 구조이고, 오퍼런드가 필요 없는 명령어도 메모리 접근 과정을 수행하기 때문에 메모리 접근에 많은 시간이 소요되는 문제점이 있다. 또한 원하는 연산만을 선택하여 수행할 수 없기 때문에 산술논리장치에서 불필요한 연산이 많이 수행된다. 따라서 본 논문에서는 오퍼런드를 찾기 전에 미리 명령어를 해독함으로써 오퍼런드가 필요 없는 명령어의 메모리 접근을 제거하도록 회로를 개선한다. 또한 산술논리장치내의 모든 연산회로에 오퍼런드를 보내지 않고 특정 연산회로에만 오퍼런드를 보냄으로써 불필요한 연산을 줄인다. 그리고 DIR(Dual Instruction Register) 구조를 제시하여 전체 프로그램의 실행시간을 최소화한다.

버스기반의 VLIW형 프로세서를 위한 최적화 컴파일러 구현 (Implementation of Optimizing Compiler for Bus-based VLIW Processors)

  • 홍승표;문수묵
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제27권4호
    • /
    • pp.401-407
    • /
    • 2000
  • 최근의 고성능 프로세서들은 명령어 수준의 병렬처리(Instruction Level Parallel Processing) 를 이용하여 성능향상을 꾀하고 있다. 특히 컴파일러의 도움을 받는 VLIW(Very Long Instruction Word) 방식의 프로세서는 고성능 DSP 및 그래픽 프로세싱 등 특수한 분야에서 사용이 증가하고 있다. 이러한 특수 목적의 프로세서 구조로서 버스 기반의 VLIW 구조가 제안되었으며[2], 이는 포워딩 하드웨어의 부담과 명령어 폭을 줄여주는 장점을 갖는다. 본 논문에서는 제안된 버스 기반의 VLIW 프로세서를 위해 개발된 최적화 스케쥴링 컴파일러를 소개한다. 우선 버스간 연결 및 자원사용을 모델링 하는 기법을 설명하고 이를 바탕으로 레지스터-버스 승진, 복사자 융합, 오퍼랜드 대체 등의 기계 의존적인 최적화 기법과 선택 스케쥴링, EPS(Enhanced Pipelining Scheduling) 기법 등 VLIW 스케쥴링 기법을 어떻게 구현했는지 설명한다. 이러한 최적화 기법들을 멀티미디어 응용 프로그램에 대하여 적용하여 보았고 약 20%의 성능향상을 보임을 확인하였다.

  • PDF

다중스레드 모델의 성능 향상을 위한 가용 레지스터 기반 캐슁 기법 (A Register-Based Caching Technique for the Advanced Performance of Multithreaded Models)

  • 고훈준;권영필;유원희
    • 정보처리학회논문지A
    • /
    • 제8A권2호
    • /
    • pp.107-116
    • /
    • 2001
  • A multithreaded model is a hybrid one which combines locality of execution of the von Neumann model with asynchronous data availability and implicit parallelism of the dataflow model. Much researches that have been made toward the advanced performance of multithreaded models are about the cache memory which have been proved to be efficient in the von Neumann model. To use an instruction cache or operand cache, the multithreaded models must have cache memories. If cache memories are added to the multithreaded model, they may have the disadvantage of high implementation cost in the mode. To solve these problems, we did not add cache memory but applied the method of executing the caching by using available registers of the multithreaded models. The available register-based caching method is one that use the registers which are not used on the execution of threads. It may accomplish the same effect as the cache memory. The multithreaded models can compute the number of available registers to be used during the process of the register optimization, and therefore this method can be easily applied on the models. By applying this method, we can also remove the access conflict and the bottleneck of frame memories. When we applied the proposed available register-based caching method, we found that there was an improved performance of the multithreaded model. Also, when the available-register-based caching method is compared with the cache based caching method, we found that there was the almost same execution overhead.

  • PDF

Radix-4 Booth Recoding과 RB 연산을 이용한 새로운 복소수 승산 알고리듬 및 10-bit CMAC코어 설계 (A New Complex-Number Multiplication Algorithm using Radix-4 Booth Recoding and RB Arithmetic, and a 10-bit CMAC Core Design)

  • 김호하;신경욱
    • 전자공학회논문지C
    • /
    • 제35C권9호
    • /
    • pp.11-20
    • /
    • 1998
  • 고속 복소수 연산장치는 채널등화, 동기신호 복원, 변조 및 복조 등 디지탈 통신 시스템의 기저대역 신호처리에 필수적인 기능블록이다. 본 논문에서는 redundant binary (RB) 연산과 radix-4 Booth recoding을 결합한 새로운 복소수 승산 알고리듬을 제안한다. 제안되는 복소수 승산 방법은 실수 승산기를 사용하는 기존의 방법과 비교하여 부분곱의 수를 반으로 감소시키며, 단순화된 병렬구조로 구현되므로 고속 동작 및 저전력 소모를 가능하게 한다. 제안된 알고리듬을 적용하여 10-bit operand를 갖는 prototype 복소수 승산-누적기(complex-number multiplier-accumulator ; CMAC) 코어를 0.8-㎛ N-Well CMOS 공정으로 설계, 제작하였다. 제작된 CMAC 칩은 18,000여개의 트랜지스터로 구성되며, 코어부분의 면적은 약 1.60 × 1.93 ㎟이다. 제작된 칩을 테스트 보드에 실장하여 특성을 평가한 결과, 전원전압 V/sub DD/=3.3-V에서 120-MHz의 속도로 동작함을 확인하였으며, 이때의 전력소모는 약 63-mW로 측정되었다.

  • PDF

고음질 오디오 알고리즘을 위한 효율적인 DSP 설계 (Efficient DSP Architecture For High- Quality Audio Algorithms)

  • 문종하;선우명훈
    • 대한전자공학회논문지SP
    • /
    • 제44권5호
    • /
    • pp.112-117
    • /
    • 2007
  • 이 논문은 MPEG-2/4 Advanced Audio Coding(AAC), 돌비 AC-3, MPEG-2 Backward Compatible(BC) 등 오디오 압축 알고리즘을 효율적으로 구현할 수 있는 전용의 하드웨어를 가진 DSP 구조를 제안하며 제안된 전용의 하드웨어를 구동하기 위한 DSP 전용 명령어들을 제공한다. 제안된 구조는 효율적인 MDCT/IMDCT(Inverse Modified Discrete Cosine Transform), 허프만 복호 연산을 지원한다. 제안된 하드웨어 구조는 TMS320C62x, ASDSP21060 등 상용 DSP프로세서와 비교하여 매우 우수한 MDCT/IMDCT 연산 성능을 보인다. 또한 제안된 전용 허프만 복호 가속기는 1 사이클에 복호화 및 오퍼랜드 준비를 병렬 수행하여 고속 연산에 적합하다. 제안된 DPU(Data Processing Unit)는 Samsung SEC $0.18{\mu}m$ 표준 셀 라이브러리를 사용하여 107,860 게이트를 나타내며 150 MIPS 를 나타낸다.

자바 클래스 파일에 대한 시각화 실행 분석기 (Visualized Execution Analyzer for the Java Class File)

  • 고광만
    • 정보처리학회논문지A
    • /
    • 제11A권5호
    • /
    • pp.319-324
    • /
    • 2004
  • 자바 언어는 빠른 속도로 인터넷 및 분산 응용 분야 등에서 활용되고 있으며 단순히 응용 소프트웨어를 개발할 수 있는 프로그래밍 언어이상으로 활용 범위가 확대되고 있다. 특히, 실행 환경인 자바 가상 기계에 연관되어 다양한 연구가 진행되고 있으며 자바 클래스 파일에 대한 분석 및 응용 분야에 적합한 형태로 정보를 활용할 수 있는 다양한 시도가 진행되고 있다. 자바 언어에 대한 클래스 파일은 소스 프로그램의 의미를 자바 가상 기계에서 실행 가능한 형식으로 변환된 형태이다. 이러한 클래스 파일의 구조 및 실질적인 실행 과정에 대한 분석은 디컴파일러 구성, 소스 프로그램의 디버깅 등에 편리성을 지원할 수 있다. 본 논문에서는 이러한 클래스 파일에 대한 분석을 비롯하여 실제로 실행되는 과정을 보다 시각적으로 표현하기 위한 실행 분석기 개발에 관한 연구이다 이를 위해 클래스 파일의 내용을 GUI 환경에서와 같이 접근 및 표현이 용이하도록 구현하였다. 클래스 파일이 포함하고 있는 정보들을 Constant_Pool 부분, Class_file 부분, Interface 부분, Field 부분, Method 부분, Attribute 부분으로 나뉘어서 나타내도록 해주었다. 또한 클래스 파일의 실행 과정에서 핵심 정보를 저장하고 있는 메소드 영역 정보, 오퍼란드 스택 정보, 지역 변수의 정보를 시각적으로 표현하였다.

16/32비트 길이 명령어를 갖는 32비트 마이크로 프로세서에 관한 연구 (A Study on 16/32 bit Bi-length Instruction Set Computer 32 bit Micro Processor)

  • 조경연
    • 한국정보처리학회논문지
    • /
    • 제7권2호
    • /
    • pp.520-528
    • /
    • 2000
  • 마이크로 프로세서의 동작 속도가 빨라지면서 메모리의 데이터 전송 폭이 시스템 성능을 제한하는 중요 인자로 대두되면서 코드 밀도가 높은 컴퓨터 구조에 대한 연구의 필요성이 증대되고 있다. 본 논문에서는 코드 밀도가 높은 32비트 마이크로 프로세서 구조로 16비트와 32비트 2종류 길이의 명령어를 가지는 가칭 2가지 길이 명령어 세트 컴퓨터(Bi-length Instruction Set Computer : BISC)를 제안한다. 32비트 BISC는 16개의 범용 레지스타를 가지며, 오프셋과 상수 오퍼랜드의 길이에 따라서 2종류의 명령어를 가진다. 제안한 32비트 BISC는 FPGA로 구현하여 1.8432MHz에서 모든 기능이 정상적으로 동작하는 것을 확인하였고, 크로스 어셈블러와 크로스 C/C++ 컴파일러 및 명령어 시뮬레이터를 설계하고 동작을 검증하였다. BISC의 코드 밀도는 기존 RISC의 130~220%, 기존 CISC의 130~140%로 높은 장점을 가진다. 따라서 데이터 전송 폭을 적게 요구하므로 차세대 컴퓨터 구조로 적합하고, 프로그램 메모리 크기가 작아지므로 실장 제어용 마이크로 프로세서에 적합하기 때문에 폭 넓은 활용이 기대된다.

  • PDF

목적 코드에서 유사도 검출과 그 도구의 설계 (Similarity Detection in Object Codes and Design of Its Tool)

  • 유장희
    • 한국소프트웨어감정평가학회 논문지
    • /
    • 제16권2호
    • /
    • pp.1-8
    • /
    • 2020
  • 컴퓨터 프로그램의 표절 또는 복제에 대한 유사도 검출은 구현에 사용된 프로그래밍 언어, 분석 대상 코드의 종류에 따라 각기 다른 감정 방법과 도구가 필요하다. 최근 들어 증가하고 있는 내장형 시스템의 목적 코드에 대한 유사도 감정은 원시 코드와 비교해 더욱 복잡한 과정 및 고도의 기술과 함께 상당한 자원을 요구하고 있다. 본 연구에서는 목적 코드를 대상으로 역 어셈블리 기법의 적용과 같은 역공학 방법을 이용하여, 목적 코드의 어셈블리어 변환을 통한 어셈블리어 레벨에서의 함수 단위 유사도 감정 방법에 관하여 연구하였다. 그리고, 어셈블리어 레벨에서의 유사도 비교를 위해 코드의 구문분석을 통한 명령어 및 오퍼랜드 테이블을 생성하고, 이를 대상으로 유사도를 검출할 수 있는 도구의 설계에 관하여 기술하였다.

Montgomery Multiplier with Very Regular Behavior

  • Yoo-Jin Baek
    • International Journal of Internet, Broadcasting and Communication
    • /
    • 제16권1호
    • /
    • pp.17-28
    • /
    • 2024
  • As listed as one of the most important requirements for Post-Quantum Cryptography standardization process by National Institute of Standards and Technology, the resistance to various side-channel attacks is considered very critical in deploying cryptosystems in practice. In fact, cryptosystems can easily be broken by side-channel attacks, even though they are considered to be secure in the mathematical point of view. The timing attack(TA) and the simple power analysis attack(SPA) are such side-channel attack methods which can reveal sensitive information by analyzing the timing behavior or the power consumption pattern of cryptographic operations. Thus, appropriate measures against such attacks must carefully be considered in the early stage of cryptosystem's implementation process. The Montgomery multiplier is a commonly used and classical gadget in implementing big-number-based cryptosystems including RSA and ECC. And, as recently proposed as an alternative of building blocks for implementing post quantum cryptography such as lattice-based cryptography, the big-number multiplier including the Montgomery multiplier still plays a role in modern cryptography. However, in spite of its effectiveness and wide-adoption, the multiplier is known to be vulnerable to TA and SPA. And this paper proposes a new countermeasure for the Montgomery multiplier against TA and SPA. Briefly speaking, the new measure first represents a multiplication operand without 0 digits, so the resulting multiplication operation behaves in a very regular manner. Also, the new algorithm removes the extra final reduction (which is intrinsic to the modular multiplication) to make the resulting multiplier more timing-independent. Consequently, the resulting multiplier operates in constant time so that it totally removes any TA and SPA vulnerabilities. Since the proposed method can process multi bits at a time, implementers can also trade-off the performance with the resource usage to get desirable implementation characteristics.

광역조건식에 의한 공유자원 접근오류 검색 (Detecting Shared Resource Usage Errors with Global Predicates)

  • 이은정;윤기중
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제26권12호
    • /
    • pp.1445-1454
    • /
    • 1999
  • 광역 조건식의 계산은 분산 프로그램의 수행을 테스트 또는 디버깅하기 위한 방법으로 활 발히 연구되고 있다. 이제까지 주로 연구된 광역조건식은 AND 또는 OR 광역 조건식 등이 있는데, 특히 AND 광역 조건식은 분산 프로그램의 동시적 조건을 표현하는데 유용하여 효율적인 검색 알고리즘이 활발히 연구되었다. 분산프로그램의 수행오류로서 공유자원의 배타적 접근조건은 가장 중요하고 일반적인 경우라 할 수 있다. 본 논문에서는 XOR 연산을 이용하여 공유자원 프로그램의 오류 검색을 위한 광역조건식을 기술하는 방식에 대해 제안하였다. XOR 연산을 이용한 광역 조건식은 연산자 중 많아야 하나의 지역조건식만이 참일 때 전체 조건식이 참이 되는데 이러한 성질은 여러 프로세스 중 한번에 하나만이 공유자원에 배타적으로 접근할 수 있는 조건을 표현하는데 매우 유용하다. n 개의 프로세스로 이루어진 분산프로그램에서 한개의 공유자원에 대한 배타적 접근 조건을 기술하기 위해서 AND로 연결된 광역조건식을 이용하면 O(n2)개의 광역 조건식이 필요한데 반해 XOR 연산으로는 하나의 조건식으로 나타낼 수 있다. 더구나 XOR 연산을 이용한 광역조건식은 최근 소개된 겹치는 구간의 개념을 활용하면 매우 간단하게 검색할 수 있다. 본 논문에서는 겹치는 구간을 찾는 검색 알고리즘을 소개하고 증명하였다.Abstract Detecting global predicates is an useful tool for debugging and testing a distributed program. Past research has considered several restricted forms of predicates, including conjunctive or disjunctive form of predicates. Especially, conjunctive predicates have attracted main attention not only because they are useful to describe simultaneous conditions in a distributed program, but also because it is possible to find algorithms to evaluate them within reasonable time bound. Detecting errors in accessing shared resources are the most popular and important constraints of distributed programs. In this paper, we introduced an exclusive OR predicates as a model of global predicates to describe shared resource conditions in distributed programs. An exclusive OR predicate holds only when at most one operand is true, which is useful to describe mutual exclusion conditions of distributed programs where only one process should be allowed to access the shared resource at a time. One exclusive OR predicate is enough to describe mutual exclusion condition of n processes with one shared resource, while it takes O(n2) conjunctive predicates. Moreover, exclusive OR condition is easily detectable using the concept of overlapping intervals introduced by Venkatesan and Dathan. An off-line algorithm for evaluating exclusive OR global predicates is presented with a correctness proof.