DBPIA-NURIMEDIA

Similar documents
DBPIA-NURIMEDIA

DBPIA-NURIMEDIA

DBPIA-NURIMEDIA

DBPIA-NURIMEDIA

Microsoft PowerPoint - 30.ppt [호환 모드]

À±½Â¿í Ãâ·Â

DBPIA-NURIMEDIA

Ⅱ. Embedded GPU 모바일 프로세서의 발전방향은 저전력 고성능 컴퓨팅이다. 이 러한 목표를 달성하기 위해서 모바일 프로세서 기술은 멀티코 어 형태로 발전해 가고 있다. 예를 들어 NVIDIA의 최신 응용프 로세서인 Tegra3의 경우 쿼드코어 ARM Corte

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

09권오설_ok.hwp

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. vol. 29, no. 10, Oct ,,. 0.5 %.., cm mm FR4 (ε r =4.4)

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Nov.; 26(11),

°í¼®ÁÖ Ãâ·Â

untitled

2 : (JEM) QTBT (Yong-Uk Yoon et al.: A Fast Decision Method of Quadtree plus Binary Tree (QTBT) Depth in JEM) (Special Paper) 22 5, (JBE Vol. 2

목 차

DBPIA-NURIMEDIA

10 이지훈KICS hwp

DBPIA-NURIMEDIA

지능정보연구제 16 권제 1 호 2010 년 3 월 (pp.71~92),.,.,., Support Vector Machines,,., KOSPI200.,. * 지능정보연구제 16 권제 1 호 2010 년 3 월

(JBE Vol. 20, No. 6, November 2015) (Regular Paper) 20 6, (JBE Vol. 20, No. 6, November 2015) ISSN

High Resolution Disparity Map Generation Using TOF Depth Camera In this paper, we propose a high-resolution disparity map generation method using a lo

28 저전력복합스위칭기반의 0.16mm 2 12b 30MS/s 0.18um CMOS SAR ADC 신희욱외 Ⅰ. 서론 Ⅱ. 제안하는 SAR ADC 구조및회로설계 1. 제안하는 SAR ADC의전체구조

¼º¿øÁø Ãâ·Â-1

<35335FBCDBC7D1C1A42DB8E2B8AEBDBAC5CDC0C720C0FCB1E2C0FB20C6AFBCBA20BAD0BCAE2E687770>

2017 년 6 월한국소프트웨어감정평가학회논문지제 13 권제 1 호 Abstract

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Jan.; 26(1),

박선영무선충전-내지

The Third NTCIR Workshop, Sep

. 서론,, [1]., PLL.,., SiGe, CMOS SiGe CMOS [2],[3].,,. CMOS,.. 동적주파수분할기동작조건분석 3, Miller injection-locked, static. injection-locked static [4]., 1/n 그림

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. vol. 29, no. 6, Jun Rate). STAP(Space-Time Adaptive Processing)., -

À¯Çõ Ãâ·Â

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Jun.; 27(6),

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Nov.; 26(11),

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

인문사회과학기술융합학회

<313920C0CCB1E2BFF82E687770>

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Sep.; 26(10),

<3031B0ADB9CEB1B82E687770>

ȲÀμº Ãâ·Â

12È«±â¼±¿Ü339~370

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Dec.; 27(12),

歯3일_.PDF

DBPIA-NURIMEDIA

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Feb.; 29(2), IS

±èÇö¿í Ãâ·Â

6.24-9년 6월

RRH Class-J 5G [2].,. LTE 3G [3]. RRH, W-CDMA(Wideband Code Division Multiple Access), 3G, LTE. RRH RF, RF. 1 RRH, CPRI(Common Public Radio Interface)

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. vol. 26, no. 3, Mar (NFC: non-foster Circuit).,. (non-foster match

Microsoft PowerPoint - chap01-C언어개요.pptx

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Jun.; 27(6),

책임연구기관

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. vol. 26, no. 9, Sep GHz 10 W Doherty. [4]. Doherty. Doherty, C

<353420B1C7B9CCB6F52DC1F5B0ADC7F6BDC7C0BB20C0CCBFEBC7D120BEC6B5BFB1B3C0B0C7C1B7CEB1D7B7A52E687770>

14.531~539(08-037).fm

09È«¼®¿µ 5~152s

DE1-SoC Board

05 김성진-1.hwp

3 : OpenCL Embedded GPU (Seung Heon Kang et al. : Parallelization of Feature Detection and Panorama Image Generation using OpenCL and Embedded GPU). e

05( ) CPLV12-04.hwp

DBPIA-NURIMEDIA

Microsoft Word - IO_2009_메모리반도체.doc

Microsoft Word - retail_ doc

2 247, Dec.07, 2007

< C6AFC1FD28C3E0B1B8292E687770>

PowerPoint 프레젠테이션

<333820B1E8C8AFBFEB2D5A B8A620C0CCBFEBC7D120BDC7BFDC20C0A7C4A1C3DFC1A42E687770>

DBPIA-NURIMEDIA

APOGEE Insight_KR_Base_3P11

07변성우_ok.hwp

김경재 안현철 지능정보연구제 17 권제 4 호 2011 년 12 월


THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Mar.; 28(3),

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Nov.; 25(11),

BY-FDP-4-70.hwp


DBPIA-NURIMEDIA

45-51 ¹Ú¼ø¸¸

DBPIA-NURIMEDIA

±è¼ºÃ¶ Ãâ·Â-1

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Sep.; 30(9),

04 최진규.hwp

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Mar.; 30(3),

11 함범철.hwp

3 : ATSC 3.0 (Jeongchang Kim et al.: Study on Synchronization Using Bootstrap Signals for ATSC 3.0 Systems) (Special Paper) 21 6, (JBE Vol. 21

<30362E20C6EDC1FD2DB0EDBFB5B4EBB4D420BCF6C1A42E687770>

강의10

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE May; 27(5),

김기남_ATDC2016_160620_[키노트].key

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Mar.; 29(3),

<91E6308FCD5F96DA8E9F2E706466>

BSC Discussion 1

, Analyst, , Figure 1 통신사가입자추이 ( 명, 000) 60,000 LG U+ KT SKT 50,000 40,000 30,000 20,000 10,000 0 자료 : MSIP. 미래에셋증권리서치센터

04 김영규.hwp

(JBE Vol. 21, No. 1, January 2016) (Regular Paper) 21 1, (JBE Vol. 21, No. 1, January 2016) ISSN 228

04-다시_고속철도61~80p

2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지

서강대학교 기초과학연구소대학중점연구소 심포지엄기초과학연구소

DBPIA-NURIMEDIA


Transcription:

논문 13-38B-01-02 한국통신학회논문지 '13-01 Vol.38B No.01 http://dx.doi.org/10.7840/kics.2013.38b.1.10 동적분기예측을지원하는임베디드코어자동생성시스템의설계와구현 이현철, 황선영 Design and Implementation of an Automatic Embedded Core Generation System Using Advanced Dynamic Branch Prediction Hyun-cheol Lee, Sun-young Hwang 요 약 본논문은분기예측을지원하는임베디드코어자동생성시스템을제안한다. 제안된시스템은동적분기예측모듈에히스토리 / 분기방향 flag가추가된 BTAC(Branch Target Address Cache) 를포함하여타겟어플리케이션의수행속도를향상시킬수있도록하였다. 시뮬레이션으로부터해당어플리케이션의분기정보를추출하고이를토대로 BHT(Branch History Table) 와 BTAC의 entry를결정한다. 제안된분기예측의효율성을검증하기위해서동적분기예측모듈을포함하는 ARM9TDMI 코어를 SMDL로기술하고코어를생성하였다. 실험결과는 entry의수에따라면적은 60% 까지증가하였고어플리케이션의수행사이클과 BTAC의 miss rate는평균 1.7%, 9.6% 씩감소하였다. Key Words : ASIP, MDL, Branch Prediction, BHT, BTAC ABSTRACT This thesis proposes an automatic embedded core generator system that supports branch prediction. The proposed system includes a dynamic branch prediction module that enhances execution speed of target applications by inserting history/direction flags into BTAC(Branch Target Address Cache). Entries of BHT(Branch History Table) and BTAC are determined based on branch informations extracted by simulation. To verify the effectiveness of the proposed branch prediction module, ARM9TDMI core including a dynamic branch predictor was described in SMDL and generated. Experimental results show that as the number of entry rises, area increase up to 60% while application execution cycle and BTAC miss rate drop by an average of 1.7% and 9.6%, respectively. Ⅰ. 서론최근반도체기술이빠르게발전됨에따라 VLSI 설계방법은단순히회로설계수준을넘어서하나의시스템을설계하는수준으로그범위가확장되었다. 이에따라하나의칩에시스템을집적한다는 의미를지닌 System on Chip(SoC) 이라는용어가학계뿐만이아니라업계에서도많이사용되고있다. 임베디드시스템에사용되는 SoC는제한된자원으로최고의성능을요구하기때문에이들의 trade-off 를고려하면서 Time-To-Market 요구를만족시키는것은상당히어려운문제이다. 이러한문제점을해 본연구는교육과학기술부의재원으로한국연구재단의지원 (#2012-0002586) 에의해수행되었으며, IDEC 에서제공한 CAD tool 을이용해 simulation 을수행하였습니다. 주저자 : 서강대학교전자공학과 CAD & ES 연구실, hclee@sogang.ac.kr, 준회원 교신저자 : 서강대학교전자공학과 CAD & ES 연구실, hwang@sogang.ac.kr, 종신회원논문번호 :KICS2012-11-551, 접수일자 :2012 년 11 월 26 일, 최종논문접수일자 :2012 년 12 월 14 일 10

논문 / 동적분기예측을지원하는임베디드코어자동생성시스템의설계와구현 결하기위해최근에는고정된범용프로세서를사용하는대신설계물의유연성과재사용률을높이고어플리케이션에최적화할수있는 Application Specific Instruction-set Processors (ASIP) 의사용이증가하고있다 [1,2]. 최근까지 Machine Description Language(MDL) 기반의 ASIP 설계자동화시스템에관한연구가활발히진행되어왔다. 기존에개발된 MDL은 Technical University of Berlin의 nml [3], Aachen University of Technology의 LISA [4], UCI의 EXPRESSION [5], 오사카대학의 Micro Operation Description [6], MIT의 ISDL [7] 등을대표적인예로들수있다. nml은언어자체에서파이프라인을지원하지않고, 이를활용하여간단한컨트롤러만생성할수있다. 그렇기때문에파이프라인기능이있는프로세서생성에는어려움이있다. LISA는 nml의단점을개선하여파이프라인기술이가능하며, DSP 계열프로세서에대한기술이가능하다. 그러나코어생성측면에서데이터패스와디코딩정보만을추출하여고정된파이프라인컨트롤러에맵핑하는방식을취하고있기때문에다양한머신구조를생성하는데에는한계가있다. 또한, 설계자가해저드검출및처리에대한정보를자세히기술하도록하여프로세서개발초기부터타겟프로세서에대해구체적이고정확한기술이요구된다. EXPRESSION은 MDL을근간으로코어를생성하는기존의 ASIP 설계자동화시스템과는용도와구조가다른시스템이다. 기존에존재하는범용프로세서 IP 정보를이용하여프로세서라이브러리를구축하고이라이브러리에있는프로세서를 EXPRESSION으로기술하여시뮬레이터와컴파일러등의툴셋을자동생성하는방식을취하고있다. 이러한특이한시스템구조때문에 EXPRESSION 시스템은새로운프로세서를모델링하여자동생성하기보다는이미존재하는코어를이용하여타겟시스템을설계하는것에적합하다는특징이있다. Micro Operation Description은기술의추상화수준이낮은 RTL 수준의기술이필요하므로, 타겟프로세서의컴파일러개발에제약이있고, 블록데이터전송을위한멀티사이클인스트럭션, 파이프라인해저드처리가고려되지않았다. 지금까지개발된 MDL 기반의 ASIP 설계자동화시스템은대부분분기예측을지원을하지않았다. MIT에서개발한 ISDL의경우도하드웨어의지원이필요한동적분기예측이아닌런타임이전에 컴파일러를통한정적분기예측만을지원한다. 본연구에서는설계자가 MDL 기반의설계방식인 SMDL (Sogang Machine Description Language) 로타겟프로세서를기술하여코어를생성하는과정에서어플리케이션의수행속도를향상시킬수있도록면적대비높은정확도를가지는동적분기예측모듈을자동으로생성하는과정을추가하였다. 논문의구성은다음과같다. 2절에서는연구의배경이되는분기예측과구현 Platform에대해설명하고, 3절에서는성능과면적을동시에고려한동적분기예측모듈생성과정을제시한다. 4절에서는제안된시스템의검증을위해기존의 BTAC로구현된동적분기예측모듈을사용하여생성된코어와제안된 BTAC로구현된동적분기예측모듈을사용하여생성된코어의어플리케이션수행속도와 Cache Miss Rate를비교하였다. 5절에서는결론및추후과제를제시한다. Ⅱ. 연구배경본절에서는기존의분기예측에관한관련연구를소개하고제안된동적분기예측기가구현될 SMDL 시스템에대해전체적인구성요소들과 ASIP 에적합한설계도구생성과정에대해간략하게기술한다. 2.1. Branch Prediction 연구분기예측은크게정적분기예측과동적분기예측두가지방법으로나뉜다. 정적분기예측이란런타임이전에컴파일러를통해분기를예측하는방법으로서일반적으로모든분기에대해 Taken 혹은 Not Taken으로일관되게분기를예측한다. 정적분기예측방법은특정한하드웨어의추가없이구현이가능하고추가적인하드웨어나전력소모에대한고려가필요없다. 하지만분기예측에대한정확도가다른분기예측방법에비해낮다는단점이있다. 동적분기예측은어플리케이션을수행하는과정에서입력된 Branch 인스트럭션에대해이전까지의분기결과를바탕으로현재의분기를 Taken할것인지혹은 Not Taken할것인지를결정하는방법이다. 대표적인동적분기예측방법에는 Bimodal Predictor, Gshare Predictor, Combined Bimodal Predictor, Tournament Predictor가있다 [8]. 동적분기예측기는기존의분기예측결과를프로세서내부에서사용하기때문에빠른속도와큰면 11

한국통신학회논문지 '13-01 Vol.38B No.01 적을가지는캐쉬와같은전용메모리가필수적이다. 그러나 BHT와 BTAC같은테이블의증가는테이블의인덱싱시간을증가시킴과더불어전체적인타겟프로세서의면적을증가시킨다 [9]. 이러한이유때문에동적분기예측기의하드웨어적구현은성능과면적의 Trade-off를신중하게고려해야한다. 지금까지의임베디드코어는면적과전력소모의제한때문에주로정적분기예측방법을이용하였다. 하지만임베디드코어성능이향상되고파이프라인의 Stage가증가함에따라분기예측실패에따른페널티가증가되면서임베디드코어에서도정확성높은동적분기예측의필요성이강조되고있다 [10,11]. 2.2. 구현 Platform SMDL 시스템은 MDL을이용한 ASIP 설계자동화시스템으로서, 합성가능한타겟프로세서를자동생성하는 ECGen(Embedded Core Generator), 생성된프로세서에서수행가능한최적화된어셈블리코드를생성하는컴파일러를생성해주는 SRCC(Sogang Retargetable C Compiler), 그리고타겟프로세서의인스트럭션셋시뮬레이터를자동생성하는 RISGen (Retargetalbe Instruction-set Simulator Generator) 로구성된다. 타겟프로세서의 SMDL 기술은파싱을통해각하위기능블록들에적합한중간형태로변환된다. 생성된중간형태는 SMDL Description에기술한내부 / 외부구조정보및인스트럭션에대한정보를그대로유지하며하위기능블록인 SRCC, RISGen, ECGen의입력으로이용된다. SRCC를통해생성되는 C 컴파일러에 C 언어로기술된어플리케이션을입력하여어플리케이션의바이너리코드를얻는다. 변환된바이너리코드는 RISGen을통해생성되는인스트럭션셋시뮬레이터를통해검증되며, ECGen을통해생성되는임베디드코어모델은시뮬레이션결과와함께 HDL 코드생성기에입력으로이용된다. 생성기들을통해생성된 HDL 모델과시뮬레이터를이용하여타겟 ASIP 및어플리케이션에대한검증을수행한다 [12,13]. 제안된시스템의평가를위해상용화된임베디드코어중 ARM9TDMI를 SMDL로기술하고구축된시스템을통해프로세서모델을생성한뒤, 각각의모델을실제프로세서의동작과비교하여생성된프로세서모델의정확성을검증하였으며어플리케이션을실행하여동적분기예측모듈을추가하지않은 SMDL 생성프로세서모델과수행 속도및면적을비교하였다. Ⅲ. 성능과면적을동시에고려한동적분기예측모듈생성과정제안된동적분기예측모듈생성과정은어플리케이션에대한분석과정, BTAC(Branch Target Address Cache) 생성과정, 생성된 BTAC를이용한동적분기예측모듈생성과정으로나뉘어진다. 어플리케이션에대한분석과정을통해어플리케이션의분기명령어의수, 분기명령어의종류에대한정보를추출한다. BTAC 생성과정은칩의면적과분기예측을통한수행속도향상을고려하여 BTAC 모듈을생성하고생성된 BTAC 모듈과선택된 BHT(Branch History Table) 를이용해동적분기예측모듈을구성한다. 생성된분기예측모듈은타겟프로세서에포함되어 ARM9TDMI 코어로구현된다. 3.1. 어플리케이션분석과정 ASIP 설계에서가장중요한부분은프로세서생성이전에어플리케이션에대해분석하고코어설계이전에성능향상을고려해야한다는점이다. 생성된 ASIP에서수행될어플리케이션의분기명령어수, 분기명령어의종류에대한정보를시뮬레이션을통해추출한다. 그림 1은 Profile을생성하고분기정보를추출하는일련의과정을나타낸다. C언어로기술된어플리케이션을 SRCC로생성된 Retargetable 컴파일러를이용해컴파일하고생성된바이너리코드를 RISGen을통해생성된 Retargetable 시뮬레이터에입력하여 Profile을얻는다. 생성된 Profile 중에서분기예측모듈생성과정에필요한정보를임베디드코어생성기에입력하는과정을확인할수있다. 3.2. 동적분기예측모듈생성과정기존의 SMDL 시스템의코어생성과정은 SMDL 기술만을이용하여코어를생성하기때문에 BTAC 모듈생성과정이포함되어있지않다. 본논문에서는생성된 ASIP의수행속도향상과분기예측모듈의면적을감소시키기위한분기예측모듈생성과정을추가하였다. 그림 2는이러한분기예측모듈생성부분을추가한코어생성기의개관을보인다. 동적분기예측모듈은분기를정확하게예측하기위하여캐쉬와같은빠른메모리를코어 12

논문 / 동적분기예측을지원하는임베디드코어자동생성시스템의설계와구현 그림 1. Profiling 을통한어플리케이션정보추출과정 Fig. 1. Process of extracting application information through profiling 내부에추가한다. 캐쉬는빠른속도로데이터를처리한다는이점을가지고있지만, 상대적으로많은공간을차지하기때문에동적분기예측의정확도를높이기위해서단순히큰테이블을사용할수는없다. 제안하는동적분기예측모듈은 BHT에비해상대적으로많은공간을차지하는 BTAC의면적을줄이면서도어플리케이션의수행속도를향상을시킬수있는방법을제시한다. 3.2.1. BTAC 의생성과정 대부분의동적분기예측기는 BHT와 BTAC의 entry를적절히조율하여분기예측기의정확도를높인다. General Purpose Computer의경우에는면적에대한제약이크지않기때문에테이블의크기를증가시켜 BTAC를사용함으로써공간의제한으로부터임베디드코어보다자유롭다는이점이있다. 하지만임베디드코어는면적과전력소모의증가에상당히민감한특성을가지고있기때문에적절한 Trade-off 지점을찾기가쉽지않다. 이러한문제를해결하기위해서분기명령어를다음과같이세분화된종류로분류한다. 분기명령어는크게분기명령어의 80% 정도를차지하는조건분기와나머지 20% 를차지하는무조건분기가있다. 조건분기는다시 Forward Branch와 Backward Branch로나뉘는데 Forward Branch는조건분기명령어의 70% 를차지하지만, Not taken되는경우가대부분이고실질적으로는 30% 정도만이 Taken된다. Backward Branch의경우는조건분기명령어의 30% 를차지하지만, 대부분의분기가 Taken되는특징을가지고있다 [14]. 이러한분기명령어들의특징들을이용해기존보다적은 entry로높은캐쉬히트 그림 2. 동적분기예측기를포함한코어생성기시스템의개관 Fig. 2. Overview of core generation system including dynamic branch prediction module 율을보이는 BTAC를구성하면그림 3과같다. 제안된 BTAC는기본적으로 4 way set-associative 형태의 Cache를사용한다. 하지만기존의 BTAC와는다르게분기명령어의 Type을지정하는 T bit와해당 entry가참조된횟수를나타내는 Reference Count(RC) bit가존재한다. T bit는각각 entry에저장된분기명령어가 Backward Branch이면 1, Forward Branch이면 0을저장하고 RC bit는각각의 entry에저장된 Tag가인덱싱되어 Target Address가참조될때마다 1씩증가한다. 이러한 T, RC bit는평상시엔단순히 Flag의역할을한다. 하지만모든 entry에데이터가저장되어기존의 Address Tag를지우고새로운 Tag를추가하는과정에서는 T, RC bit는 priority를나타내는용도로사용된다. 이러한방법을사용함으로써한정적인 entry의활용도를높이고 Target Address의연산시간을줄일수있다. Backward Branch이면서 7번이상참조된 entry의경우는 1111로가장높은 priority로지정되고 Backward Branch이면서한번 도참조되지못한 entry의경우는 1000, Forward Branch이면서 7번이상참조된 entry의경우는 0111, Forward Branch이면서한번도참조되지못한 entry의경우엔 0000 priority를가지게된다. 각 entry의우선순위를참조하여가장낮은우선순위의 entry에 Address Tag, T Flag와 Target Address를저장함으로써자주사용되지않는 entry를삭제하고 BTAC의활용도를높일수있다. 위와같은 priority 기반의 entry 교체방법은분기명령어가많은어플리케이션에대해서모든 entry의 priority 13

한국통신학회논문지 '13-01 Vol.38B No.01 가 1111이되는경우가발생할수있다. 이러한경우엔모든 entry를비우거나 RC bit를더욱확장하여 priority를늘리는방법으로문제를해결할수있지만, 앞에서언급한방법들은전체프로세서의면적이나소모전력의증가로이어지기때문에제안된 BTAC에서는모든 entry의 RC bit를 000으로리셋시키는 Not Recently Used(NRU) 알고리즘을적용하였다 [15]. NRU 알고리즘을적용함으로써모든 entry의 priority를낮춤으로써모든 T, RC bit가 1111이되는경우의문제를해결할수있었다. 제안된방법은임베디드코어환경에서별도의하드웨어를추가하지않고도문제를해결할수있다는이점을가지고있다. 그림 4. 동적분기예측모듈을포함한 ARM9TDMI 의블록다이어그램 Fig. 4. Block diagram of ARM9TDMI including dynamic branch prediction module 그림 3. 제안된 BTAC 의개관 Fig. 3. Overview of proposed BTAC 3.2.2. 생성된 BTAC를이용한동적분기예측모듈생성과정 BTAC와더불어동적분기예측모듈을구성하기위해서는 BHT가필요하다. 분기예측기의특성에따라분기예측정확도가다르기때문에동적분기예측모듈에사용될 BHT의선택을진행한다. BHT를선택하는과정은크게두가지단계로나뉜다. BHT의종류를선택하고, 본인이선택한 BHT 를이용해원하는정확도를맞추기위해 entry의수를선택하는두가지단계를수행한다. entry 수의증가는분기예측의정확도를높여주는대신전력소모와면적도함께증가시키는특성이있다. 그중에서도면적은참조되는분기주소가 1bit가추가될때마다현재 entry 수의 2배로증가하는특징이있기때문에어떤 BHT를선택하더라도대부분의경우 13bit 즉 8192 entry 이상을선택하는경우는매 우드물다. 본연구는 BHT로인한성능향상이주목적이아니므로기존에사용되던 Gshare Predictor 를동적분기예측모듈에적용한다. Gshare Predictor는 64개의 entry를가지는 6bit의경우에도 90% 이상의분기예측정확도를보증하기때문에 BHT entry의최솟값을 64로설정하고분기예측의정확도가더는크게증가하지않는 8192의 entry를가지는 13bit를 BHT entry의최댓값으로설정한다. 그림 4는 ARM9TDMI 코어에동적분기예측모듈을포함한블록다이어그램을보인다. Ⅳ. 실험결과제안된시스템에서동적분기예측모듈을포함한타겟프로세서의생성을검증하기위해상용화된임베디드코어인 ARM9TDMI [16][17] 를타겟프로세서로정하고, 이를 SMDL 언어를사용하여기술하였다. 기술된 SMDL을제안된코어자동생성기에입력하여해당코어를생성하였다. 생성된타겟코어의성능을측정하기위해임베디드코어용벤치마크인 MIBENCH를이용하였고, 면적의감소 14

논문 / 동적분기예측을지원하는임베디드코어자동생성시스템의설계와구현 표 1. ARM9TDMI 에서의벤치마크실행결과 Table 1. Results from executing benchmarks on ARM9TDMI 그림 5. Entry 에따른기존 BTAC 와제안된 BTAC 의 Cache Miss rate 비교 Fig. 5. Comparison of cache miss rate between original BTAC and proposed BTAC by entry alteration 와수행속도향상을측정하기위해 BTAC를이용한동적분기예측모듈을추가하여결과를비교하였다. 또한, 각각의벤치마크는 Retargetable 컴파일러를사용해코드를변환하여사용하였다. 제안된시스템은 SUN-Sparc 워크스테이션에서수행되었으며, Synopsys사의 Design Vision을이용해합성하였다. D-Cache와 I-Cache는오프칩메모리를사용한다고가정하였고소모전력과면적을측정하기위해 TSMC 90nm를라이브러리를사용하였으며, 동작주파수는 70MHz, 동작온도는 25, 동작전압은 3.3V로세팅하였다. ARM9TDMI 모델을생성하는실험에서는실제코어와마찬가지로 5단파이프라인으로구성되고, 클럭은 2-phase non-overlapping 클럭을사용하였다. 기존의타겟프로세서는 31,260게이트로구성되며, BHT와 BTAC의구성에따라 10% 에서 60% 까지게이트가증가한다. 그림 5는 4 way set-associative BTAC의 entry 수에따른기존의 BTAC와제안된 BTAC의 Cache Miss rate를나타낸다. 실험은 BTAC의 entry가 1부터 1024까지의결과를나타냈으며각 entry의 Cache Miss rate는수행된테스트벤치의평균값을나타낸다. 제안된 BTAC는기존의 BTAC에비해평균 9.6% 정도 Cache Miss rate가감소한것을확인할수있다. 표 1은 ARM9TDMI 코어에 12bit entry GShare BHT와 128 entry, 4 way set-associative BTAC로분기예측모듈을구성하였을때, T, RC bit가없는기존의 BTAC와 T, RC bit가추가된제안된 BTAC에대한각각의벤치마크수행사이클을나타낸다. 제안된 BTAC는 entry의 priority를참조함으로써다시참조될확률이높은 Address Tag와 Target Address를중심으로 entry를구성함으로써 branch ratio Previous BTAC (# of Cycle) Proposed BTAC (# of Cycle) Reduction of Cycle tiff2rgba 3.3% 55,820,480 55,506,544 0.6% tiffmedian 4.7% 214,125,877 212,444,706 0.8% blowfish 12.3% 72,990,635 71,500,398 2.0% bitcount 10.3% 76,161,313 74,853,020 1.7% ADPCM enc 3.3% 56,943,133 56,622,882 0.6% CRC32 15.3% 81,871,923 79,806,734 2.5% FFT 13.0% 81,144,500 79,400,669 2.1% IFFT 12.3% 101,111,578 99,047,200 2.0% ADPCM dec 5.0% 45,724,941 45,340,569 0.8% GSM enc 4.3% 83,815,384 83,203,894 0.7% GSM dec 9.7% 36,546,411 35,958,298 1.6% stringsearch 19.3% 247,857 240,039 3.2% ispell 17.7% 13,045,477 12,668,166 2.9% 평균 10.1% 70,734,578 69,737,932 1.7% BTAC의 cache miss rate를줄일수있으며결과적으로 cache miss가발생하였을때 Target Address 를다시연산하는데걸리는시간을단축시킬수있다. 생성된코어에서벤치마크를수행함으로써수행사이클이감소되는결과를확인하였으며, 각벤치마크의분기명령어수가많을수록수행사이클감소량이크다는점또한확인하였다. Ⅴ. 결론및추후과제 본논문은 SMDL을이용하여임베디드코어를자동생성하는과정에서어플리케이션의시뮬레이션정보를토대로동적분기예측모듈을생성함으로써 BTAC의 Cache Miss rate를감소시킬수있는코어생성방법을제안하였다. 제안된시스템은기존의코어생성과정에어플리케이션의분석과정, BTAC 생성과정, 생성된 BTAC를이용한동적분기예측모듈생성과정을추가하여타겟프로세서의코어를생성한다. 제안된시스템으로부터생성된 ARM9TDMI 프로세서에 SMDL 시스템의 Retargetable 컴파일러에의해변환된어플리케이션을실행했을때기존의 BTAC를사용한프로세서보다제안된 BTAC를사용한프로세서의인스트럭션수행사이클이 0.6에서 3.2% 까지감소하는결과를확인할수있었다. 분기예측의특성상프로세서의파이프라인 Stage가증가할수록미스페널티는 15

한국통신학회논문지 '13-01 Vol.38B No.01 커지지만, 분기예측으로인한이득또한커진다는특징을가지기때문에파이프라인 Stage가증가한프로세서에서제안된분기예측모듈을적용한다면더욱향상된결과를확인할수있을것으로예측된다. 추후과제로는매사이클마다동작해야하는동적분기예측기의소모전력을줄이고분기예측의정확도를높일수있는분기예측기의연구및개발이필요하다. References [1] N. Dutt and K. Choi, Configurable processor for embedded computing," IEEE Comp., vol. 36, no. 1, pp. 120-123, Jan. 2003. [2] K. Choi and Y. Cho, Recent trends in the SoC design methodology," Mag. of the Institute of Electronics Engineers of Korea (IEEK), vol. 30, no. 9, pp. 17-27, Sep. 2003. [3] A. Fauth, M. Fredericks, and A. Knoll, Generation of hardware machine models from instruction set descriptions, in Proc. IEEE Workshop VLSI Signal Proces., Veldhoven, Netherlands, Oct. 1993. [4] A. Hoffmann, T. Kogel, A. Nohl, G. Braun, O. Schliebusch, O. Wahlen, A. Wieferink, and H. Meyr, A novel methodology for the design of application-specific instruction- set processors (ASIPs) using a machine description language," IEEE Trans. CAD of Int. Circuits and Systems, vol. 20, no. 11, pp. 1338-1354, Nov. 2001. [5] P. Mishra, A. Kejariwal, and N. Dutt, Rapid exploration of pipelined processors through automatic generation of synthesizable RTL model," in Proc. IEEE Int. Workshop on Rapid Syst. Prototyping, pp. 226-232, San Diego, CA, Jun. 2003. [6] M. Itoh, Y, TAKEUCHI, M. IMAI, and A. SHIOMI, Synthesizable HDL generation for pipelined processors from a micro-operation description, IEICE Trans., vol. E83-A, no. 3, pp. 394-400, Mar. 2000. [7] G. Hadjiyiannis, S. Hanono, and S. Devadas, ISDL: an instruction set description language for retargetability, in Proc. Design Automation Conf. pp. 299-302, Anaheim, CA, Jun. 1997. [8] J. Hennessy and D. Patterson, Computer Architecture : A Quantitative Approach, Morgan Kaufmann Publishers Inc, 1990. [9] L. Nadav and W. Shlomo, Low power branch prediction for embedded application processors, in Proc. Low Power Electronics and Design, pp. 67-72, Austin, Texas, Aug. 2010. [10] T. Juan, S. Sanjeevan, and J. Navarro, Dynamic history-length fitting: a third level of adaptivity for branch prediction, in Proc. Computer Architecture, pp. 155-166, Barcelona, Spain, Jul. 1998. [11] J. Lee and A. Smith, Branch prediction strategies and branch target buffer design, Computer, vol. 17, no. 1, pp. 6-22, Jan. 1984. [12] H. Lee and S. Hwang, Design of a high-level synthesis system for automatic generation of pipelined datapath, J. of The Institute of Electronics Engineers of Korea (IEEK), vol. 31-A, no. 4, pp. 53-67, Mar. 1994. [13] J. Cho, Y. Yoo, and S. Hwang, Construction of an automatic generation system of embedded processor cores, J. KICS, vol. 30, no. 6A, pp. 526-534, Jun. 2005. [14] J. Dongarra, High Performance Computing: Technology, Methods and Applications, North-Holland, 1995. [15] K. Kedzierski, M. Moreto, F. Cazorla, and M. Valero, Adapting cache partitioning algorithms to pseudo-lru replacement policies, in Proc. Parallel & Distributed Processing, pp. 1-12, Atlanta, GA, Apr. 2010. [16] ARM, ARM922T Technical Reference Manual (rev 0), 2001. [17] ARM, ARM Architecture Reference Manual (rev 0), 2005. 16

논문 / 동적분기예측을지원하는임베디드코어자동생성시스템의설계와구현 이현철 (Hyun-cheol Lee) 2011년 2월서울산업대학교전자정보공학과학사 2011년~현재서강대학교전자공학과 CAD & ES 연구실석사과정 < 관심분야 > Embedded System 설계, ASIP 설계 황선영 (Sun-young Hwang) 1976년 2월서울대학교전자공학과학사 1978년 2월한국과학원전기및전자공학과공학석사 1986년 10월미국 Stanford 대학전자공학박사 1976~1981년삼성반도체 ( 주 ) 연구원, 팀장 1986~1989년 Stanford 대학 Center for Intergrated System 연구소책임연구원및 Fairchild Semiconductor Palo Alto Research Center 기술자문 1989~1992년삼성전자 ( 주 ) 반도체기술자문 1989년 3월~현재서강대학교전자공학과교수 < 관심분야 > SoC 설계및 framework 구성, CAD 시스템, Embedded System 설계, Computer Architecture 및 DSP System Design 등 17