• 제목/요약/키워드: 마이크로 레지스터

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

다수의 레지스터를 확보하기 위한 ARM Thumb 레지스터 뱅크의 제안 (Banked Register File for ARM Thumb to Secure More Registers)

  • 이제형;박진표;문수묵
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2005년도 한국컴퓨터종합학술대회 논문집 Vol.32 No.1 (A)
    • /
    • pp.781-783
    • /
    • 2005
  • ARM 프로세서는 내장형 시스템에서 가장 널리 사용되는 32비트 마이크로 프로세서 중 하나이며, Thumb 명령어 세트는 보다 작은 코드 크기를 위해 제공하는 16비트 확장 명령어 세트이다. Thumb의 약점중의 하나는 줄어든 명령어 길이 때문에 이용할 수 있는 레지스터의 개수가 반으로 줄어든다는 것인데 결과적으로 가용 레지스터의 부족으로 인해 spill 코드가 빈번하게 발생할 수 있다. 우리는 약간의 하드웨어 및 명령어 수정을 통해 뱅크(bank)로 이루어진 레지스터 파일을 제공하고자 한다. 이로 인해 컴파일러는 보다 여유 있는 레지스터를 확보하게 되어 spill 코드가 줄어들게 되므로 보다 작은 크기의 코드를 얻어낼 수 있다. 이 변화된 형태의 레지스터 파일을 운용하기 위한 효율적인 레지스터 할당기법이 요구되며, 제안하는 영역기반 레지스터 할당기법을 통해 이이 최적화된 Thumb 코드 대비 약 $5.1\%$의 코드 크기 감소효과를 볼 수 있었다.

  • PDF

시분할 FPGA 합성에서 마이크로 레지스터 개수에 대한 하한 추정 기법 (A Lower Bound Estimation on the Number of Micro-Registers in Time-Multiplexed FPGA Synthesis)

  • 엄성용
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제30권9호
    • /
    • pp.512-522
    • /
    • 2003
  • 시분할 FPGA는 회로가 동작하는 중 회로의 기능을 재구성할 수 있는 동적 재구성 기능을 갖춘 FPGA 칩이다. 따라서 이러한 칩을 위한 회로 합성 기법에서는 주어진 논리 회로를 각각 다른 시간대에 수행할 여러 개의 부분회로로 분할한 후, 동일한 하드웨어 회로를 시간차를 두고 공유하도록 해야 한다. 기존의 연구에서는, 칩의 제한된 용량 문제를 해결하기 위해, 동일 시간대에 필요한 자원으로서 각 세부 함수를 수행하는 LUT(Look-Up Table)의 개수와 LUT의 출력 결과를 다른 시간대에 사용하기 위해 그 결과를 임시 저장하는데 필요한 마이크로 레지스터(micro register)의 개수를 최소화하는 데 중점을 두고 있다. 본 논문에서는 시분할 FPGA 합성용 도구 중의 하나로서 회로 구현에 필요한 메모리 원소, 즉 마이크로 레지스터의 개수에 대한 하한(lower bound)을 추정하는 기법에 대해 설명한다. 이 방법에서는 입력되는 논리 회로를 직접 합성하지 않고서도 그 회로가 필요로 하는 전체 마이크로 레지스터 개수에 대한 하한을 각각 추정함으로써 특정한 합성 기법에 관계없이 회로 구현에 필요한 최소한의 마이크로 레지스터의 개수에 대한 정보를 추출한다. 만일, 기존의 합성 결과가 본 연구에서 추정된 하한과 일치할 경우, 그 결과는 최적의 결과를 의미한다. 반면에, 하한과의 차이가 있는 경우에는 기존의 연구 결과에 비해 더 좋은 합성 결과가 존재하거나, 또는 본 연구에서 추정한 하한보다 더 좋은(큰, 정확한) 하한이 실제 존재함을 의미한다. 따라서 이러한 비교 분석을 통해, 기존 연구는 물론, 향후에 개발할 새로운 합성 방법의 결과가 최적인지, 또는 개선의 여지가 있는지를 판단하는 좋은 지표를 얻을 수 있다. 실험 결과, 추정된 하한은 기존 연구의 합성 결과와 다소 차이가 있었다. 이러한 차이는 우선, 기존의 합성 결과는 LUT 개수를 적절히 유지하는 가운데 마이크로 레지스터를 최소화한 결과인 반면, 본 하한 추정에서는 합성 가능한 모든 결과 중, LUT 개수와는 전혀 무관하게, 마이크로 레지스터 개수를 최대한 작게 사용할 합성 예를 추정하기 때문이라고 판단된다. 또 한편으로는 마이크로 레지스터 개수에 대한 하한 추정 문제 자체가 갖는 거대한 변동성과 복잡성으로 인해 제안한 추정 기법이 정밀도에 한계를 가지는 것으로 해석할 수 있으며, 다른 한편으로는 기존 연구 결과보다 더 좋은 합성 결과가 존재할 가능성이 높음을 의미하는 것으로 해석될 수 있다.

온도 인지 마이크로프로세서를 위한 듀얼 레지스터 파일 구조 (A Dual Integer Register File Structure for Temperature - Aware Microprocessors)

  • 최진항;공준호;정의영;정성우
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제35권12호
    • /
    • pp.540-551
    • /
    • 2008
  • 오늘날 마이크로프로세서의 설계는 전력 소모 문제만이 아닌 온도 문제에서도 자유롭지 않다. 제조 공정의 미세화와 고밀도 회로 집적화가 칩의 전력 밀도를 높이게 되어 열성 현상을 발생시키기 때문이다. 이를 해결하기 위해 제안된 동적 온도 제어 기술은 냉각 비용을 줄이는 동시에 칩의 온도 신뢰성을 높인다는 장점을 가지지만, 냉각을 위해 프로세서의 성능을 희생해야 하는 문제점을 가지고 있다. 본 논문에서는 프로세서의 성능 저하를 최소화하면서 온도를 제어하기 위해 듀얼 레지스터 파일 구조를 제시한다. 온도 제어를 고려하였을 때 가장 관심을 끄는 것은 레지스터 파일 유닛이다. 특히 정수형 레지스터 파일 유닛은 그 빈번한 사용으로 인하여 프로세서 내부에서 가장 높은 온도를 가진다. 듀얼 레지스터 파일 구조는 정수형 레지스터 파일에 대한 읽기 접근을 두 개의 레지스터 파일에 대한 접근으로 분할하는데, 이는 기존 레지스터 파일이 소모하는 동적 전력을 감소시켜 열성 현상을 제거하는 효과를 가져온다. 그 결과 동적 온도 제어 기법에 의한 프로세서 성능 감소를 완화시키는데, 평균 13.35% (최대 18%)의 성능 향상을 확인할 수 있었다.

ILP 프로세서를 위한 개선된 레지스터 할당 기법 (An Improved Register Allocation Technique for ILP Processors)

  • 신화정;이기호
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제28권2호
    • /
    • pp.201-209
    • /
    • 2001
  • 고성능 마이크로 프로세서들은 성능 향상을 위해 ILP를 지원한다. 병렬성을 극대화시키기 위해서는 많은 성능 저해 요인들을 제거해야 한다. 최근에는 컴파일러의 역할을 증대시켜 이러한 요인들을 줄이기 위한 노력들이 활발히 진행되고 있다. 본 논문에서는 성능 저해 요인인 조건 분기 처리를 위하여 조건 실행과 레지스터 할당을 결합함으로써 메모리로의 대피를 최소화하고 병렬성을 향상시킬 수 있는 개선된 레지스터 할당 알고리즘을 제안한다. 제안한 방법을 적용하여 실험한 결과 간섭 그래프의 에지수가 4.47% 감소되었고 그 결과 요구되는 대피 변수의 수도 21.35% 감소되었다. 그리고 기존의 방법에 비해 19.38%의 성능 향상 결과를 얻었다. 결국 본 레지스터 할당 기법은 조건 실행을 통해 조건 분기 명령을 제거하여 기본 블록 내의 명령어 수를 증가시켜 병렬처리의 기회를 증진시키고 조건 분석을 통해 간섭 그래프의 불필요한 에너지를 제거시켜 보다 효율적인 레지스터 할당을 실현함으로써 제안한 방법의 타당성을 검증하였다.

  • PDF

임베디드 프로세서를 이용한 원격센서 정보수립 및 제어 연구 (A study on the remote control and gathering of system information using Embedded processor)

  • 김기백;이양원
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2002년도 추계종합학술대회
    • /
    • pp.719-722
    • /
    • 2002
  • 임베디드 시스템을 이용하여 TCP/IP 상의 인터넷 제어시스템을 구현하였다. AT90S8535 마이크로 컨트롤러 구조 및 각종명령 레지스터 동작 원리, avr-gcc 하드웨어 프로그래밍 및 명령 레지스터의 구현원리, JAVA 애플릿 프로그래밍, 전반적인 하드웨어 기초 이론을 바탕으로 Mellow Device 1300 임베디드 시스템과 AVR90S853S 마이크로 컨트롤러 상호간의 시리얼 통신을 이용하여 원격지의 온/습도 검침 및 각종 하드웨어 디바이스의 on/off를 구현하도록 설계하였고 실시간으로 검출된 온/습도 데이터를 JAVA 애플릿을 이용하여 그래픽 챠트로 보기 쉽게 표현하였으며 A/D 변환된 온도 및 습도 데이터와 각종 H/W 디바이스 on/off 상태 데이터를 RS232 인터페이스를 이용하여 Mellow Device 1300로 송/수신하도록 구현하였다.

  • PDF

레지스터 리네이밍 방법을 사용하는 조건부 실행 비순차적 명령어 이슈 마이크로프로세서에 관한 연구 (Research on Conditional Execution Out-of-order Instruction Issue Microprocessor Using Register Renaming Method)

  • 최규백;김문경;홍인표;이용석
    • 한국통신학회논문지
    • /
    • 제28권9A호
    • /
    • pp.763-773
    • /
    • 2003
  • 본 논문에서는 조건부 실행 비순차적 명령어 이슈 컴퓨터 시스템에서의 레지스터 리네이밍 방법을 제안한다. 레지스터 리네이밍은 읽기 후 쓰기 그리고 쓰기 후 쓰기 의존성을 제거하는 기술이다. 레지스터 리네이밍 방법을 사용하는 조건부 실행 비순차적 명령어 이슈 컴퓨터 시스템을 구현하기 위해서, 우리는 순차적 상태 물리적 레지스터와 미리보기 상태 물리적 레지스터들 양자를 모든 논리적 레지스터들이 공유할 수 있도록 포함하고 있는 레지스터 파일을 사용한다. 또한 본 논문에서 제안된 구조를 구현하기 위해서 순차적 상태 지시기, 리네이밍 상태 지시기, 물리적 레지스터 할당 지시기, 조건 예측 버퍼, 리오더 버퍼들을 구현한다. 이러한 모든 하드웨어를 이용해서, 레지스터 리네이밍 방법을 사용하는 조건부 실행 비순차적 명령어 이슈 컴퓨팅 시스템의 레지스터 리네이밍 및 순차적 상태의 추적을 가능하게 한다. 본 논문에서는 위의 하드웨어를 사용하여 기존 레지스터 리네이밍 방법에 비해서 적은 하드웨어 비용으로 내용 검색(associative lookup)을 제거하고 짧은 복구 시간을 제공하는 개량된 레지스터 리네이밍 방법을 제안한다.

16 비트 EISC 마이크로 프로세서에 관한 연구 (A Study on 16 bit EISC Microprocessor)

  • 조경연
    • 한국멀티미디어학회논문지
    • /
    • 제3권2호
    • /
    • pp.192-200
    • /
    • 2000
  • 8비트와 16비트 마이크로 프로세서는 소규모 제어기기에 많이 사용되고 있다. 이러한 실장 제어용 마이크로 프로세서는 CP와 메모리 및 입출력 회로가 하나의 반도체에 집적되어야 하므로 회로가 간단하고, 코드 밀도가 높은 것이 요구되고 있다. 본 논문에서는 코드 밀도가 높은 EISC(Extendable Instruction Set Computer)구조를 가지는 16비트 마이크로 프로세서인 SE1608을 제안한다. SE1608은 8개의 범용 레지스터를 가지며, 16비트 고정 길이 명령어, 짧은 오프셋 인덱스 어드레싱과 짧은 상수 오퍼랜드 명령어를 가지며, 확장 레지스터와 확장 프래그를 사용하여 오프셋 및 상수 오퍼랜드를 확장할 수 있다. SE1608은 FPGA로 구현하여 약 12,000 게이트가 소요되었으며, 8MHz에서 모든 기능이 정상적으로 동작하는 것을 확인하였고, 크로스 어셈블러와 크로스C /C++컴파일러 및 명령어 시뮬레이터를 설계하고 동작을 검증하였다. SE1608의 코드 밀도는 16비트 마이크로 프로세서인 H-8300의 140%, NM10200의 115%로 현격하게 높은 장점을 가진다. 따라서 하드웨어가 간단하고, 프로그램 메모리 크기가 작아지므로 실장 제어용 마이크로 프로세서에 적합하여 폭 넓은 활용이 기대된다.

  • PDF

IP활용에 적합한 저전력 MCU CORE 설계 (Design of a Low Power MictoController Core for Intellectual Property applications)

  • 이광엽;이동엽
    • 한국정보처리학회논문지
    • /
    • 제7권2호
    • /
    • pp.470-476
    • /
    • 2000
  • 본 논문은 소자 수준의 설계방법 보다아키텍쳐와 같은사위수준의 설계방법을 적용하여 IP(Intellectual Property)에 활용하기 적합한 저전력 마이크로콘트롤러 코어 설계를 다루었다. 스위칭 캐패시턴스를 줄이기 위하여 자주 사용되는 레지스터 전달 마이크로 오퍼레이션에 레지스터간의 직접적인 전달 구조를 적용하였다. 입력데이터의 상승예지 시간을 줄이기 위하여 분산 버퍼구조를 제안하였다. 또한 성능저하 없이 소비전력을 줄이기 위하여 파이프라인 구조에 적용된다. 본 논문에서는 CISC 명령어를 처리하기에 적합한 파이프라인이 설계되었다. 설계된마이크로콘트롤러는 전력소모를 20%정도 감소시켰다. 전력소모를 측정하기 위해서는 SYNOPSYS의 EPIC powermill과 현대 0.6um CMOS 파라메터를 적용하였다.

  • PDF

16비트 명령어 기반 프로세서를 위한 페어 레지스터 할당 알고리즘 (Pair Register Allocation Algorithm for 16-bit Instruction Set Architecture (ISA) Processor)

  • 이호균;김선욱;한영선
    • 정보처리학회논문지A
    • /
    • 제18A권6호
    • /
    • pp.265-270
    • /
    • 2011
  • 다양한 영역에서32비트 명령어 기반 마이크로프로세서의 사용이 일반화되고 있지만, 임베디드 시스템 환경에서는 여전히 16비트 명령어 기반 프로세서가 널리 사용되고 있다. 인텔 8086, 80286 및 모토로라 68000, 그리고 에이디칩스의 AE32000과 같은 프로세서들이 그 대표적인 예이다. 그러나, 16비트 명령어들은 32비트 명령어보다 그 크기로 인해 상대적으로 낮은 표현력을 가지고 있어 동일한 기능을 구현하는데 32비트 명령어 기반 프로세서에 비해 많은 명령어를 수행해야 한다는 문제점을 가지고 있다. 실행 명령어 수는 프로세서의 실행 성능과 밀접한 관련을 가지므로 16비트 명령어셋의 표현력을 향상시켜 성능 저하 문제를 해결할 필요성이 있다. 본 논문에서는 기존의 그래프 컬러링 기반 레지스터 할당(Graph-coloring based Register Allocation) 알고리즘을 보완한 페어 레지스터 할당(Pair Register Allocation) 알고리즘을 제안하고, 이를 통한 성능 분석 결과 및 추후 연구 방향을 제시하고자 한다.