COTS SW DEDICATION Introduction Jsjj0728@konkuk.ac.kr
내용 1.0 Commercial-Grade Item Dedication... 2 1.1 소개... 2 2.0 용어정리및약어... 3 2.1 용어정리... 3 2.2 약어... 6 3.0 NP-5652/TR-106439 개요... 7 3.1 NP-5652의인증방법... 8 4.0 NUREG/CR-6421 개요... 9 5.0 TR-1025243... 11 5.1 Functional Safety Classification... 12 5.2 Considering Failure Modes and Effects... 13 5.3 Considering Impact Categorization... 15 5.4 Acceptance Process... 17 6.0 An Extended COTS SW Dedication Process... 17 7.0 IP Core Library 사용이 dedication에미치는영향... 19 7.1 Synplify Pro의IP Core library 사용여부확인결과... 20 8.0 Reference... 21 Dependable Software Laboratory Rev. 0 Page 1of 22
1.0 Commercial-Grade Item Dedication 1.1 소개 CGI (Commercial-Grade Item) dedication 은원자력발전소에상용기성제품들을사용하기위한 applicable acceptance process 이다.CGI dedication 은 1970 년대이후새원전건설중단 (US) 으로인해부품제공업체들의 NQA (Nuclear Quality Assurance) 인증및 Q 등급제품유지포기, 그리고 10CFR Part 50 Appendix B [2] 에소개된 Quality assurance requirements 하에개발된제품들의감소로인해안전성이확보된제품수급이어려워짐으로인해대두되었다. Figure 1 CGI dedication 표준발행순서 [1] <Figure 1> 은 CGI dedication 을위해발행된 technical report 및표준, regulatory 등의발행순서를간략하게표시한그림이다.1988 년 EPRINP- 5652 [3] 를시작으로하여여러 technicalreport 및표준들이발행되었 다.NP-5652 는 Plant Engineering: Guideline for the Acceptance of Commercial-Grade Items in Nuclear Safety-Related Applications 으로, 원자력발전소에직접사용되는하드웨어및기계 / 전기적장비들에대한표준으로 2014 년개정되었다.TR-102260 [4] 은 NP-5652 를보충설명하는가이드라인으로 2014 년개정판이발행되며 NP-5652 에포함되었다. 그외에 1996 년디지털장비들이원자력발전소에많이사용되며디지털장비들에 Dependable Software Laboratory Rev. 0 Page 2of 22
대해 dedication 을위한 TR-106439[5] 가제정되었고,Sampling guideline (TR-017218) [6] 등이있다. 이외에도 NP-6406 [7], TR-1008256[8] 은 NP-5652 의 process 중앞부분인 technical evaluation 을설명하기위한표준들이다. 또한원자력발전소에혹은개발에소프트웨어들이사용되며나온 NUREG/CR-6421 [9] 과같은가이드라인과 TR-1025243[10] 과같은리포트들이있다. 특히최근에원자력발전소에 FPGA 를이용하는연구가활발히진행되며 FPGA 개발에사용되는 소프트웨어들의 dedication 에대한이슈가발생되었다. 국내에서는 CGI dedication 에대해 KINS/RG-N17.12: 안전성관련품목대체사용을위한일 반규격품의품질검증 을통해 NP-5652 와 TR-106439 를채택하여사용하고 있다. 2.0 용어정리및약어 2.1 용어정리 공학적안전설비작동계통 (ESFAS : Engineered Safety Features Actuation System) 원자력발전소가정상적인운전상태에서벗어날때, 발전소를안전한상태로유지시키고비정상상황을빨리종결시키기위해설치되는설비 안전성 (Safety) 사망, 재해, 질병, 시설또는재산의손해나파손, 또는환경파괴를일으킬 수있는상황이발생하지않는정도 완전성 (Completeness) 소프트웨어가요구하는모든기능을제공하는가에대한소프트웨어설계 결과물의특성. 요구하는소프트웨어의기능은일반기능요건과전체계통 Dependable Software Laboratory Rev. 0 Page 3of 22
설계상에서소프트웨어에할당되는기능요건에의해도출됨 일관성 (Consistency) 소프트웨어시스템의문서나구성요소사이에모순이없는가에대한정도. 내부일관성은하나의구성요소내의서로다른부분사이에모순이없는정도. 외부일관성은구성요소와구성요소사이에모순이없는정도 필수특성 (Critical Characteristics) 일반규격품목이안전기능을수행하기위해필수적으로보유해야하는특 성 일반규격품 (Commercial Grade Item) 기본기기로설계및제작되지않았지만, 안전기능에영향을끼치는구조 물, 계통, 기기또는그부품 정확성 (Correctness) 시스템이나기기가그명세서, 설계및구현에있어서결함이없는정도혹은소프트웨어, 설계문서또는다른항목들이규정된요구사항을만족하는정도이다 기본기기 (Basic Component) 10CFR50 Appendix B를만족하는품질보증프로그램을준수하여설계, 제작된품목또는 dedication 과정을성공적으로완료한일반규격품목 (10CFR21) 품질검증 (Dedication) 기본기기로사용을위해일반규격품목을기술평가및적합성확인과정을 통하여안전성관련품목으로사용할수있도록확인하는과정 Dependable Software Laboratory Rev. 0 Page 4of 22
안전기능 (Safety Function) IEC-61508 표준에따라안전기능은원자력발전소에서발생할수있는 위험한상황들로부터발전소를보호하기위한기능들을의미 안전필수설계 (Safety-Critical Design) DO-254, ISO 26262, IEC 61508 등기능안전관련표준을만족하고 performance, safety, security 부분에서설계목적을위해타협없이제작된설계 RTL Design Hardware register 와논리계산 circuit 간의신호흐름을연결하여모델로 디자인한 digital circuit design Gate-Level Design (Netlist) RTL Design 의 Synthesis 결과를의미하며, 하드웨어에사용될수있도록 연결관계를표현한디자인 EDIF (Electronic Design Interface Format) EDIF 는 Electronic Design Interface Format 의약자로각회사별로사용되 는 Gate-Level Design(netlist) 의형식이다. BLIF-MV 비결정적 hierarchical sequential system 을디자인하기위한언어로 VIS 에 서이용된다 PLC (Programmable Logic Controller) 여러로직의기능을마이크로프로세서를이용한프로그램으로제어될수있게통합시킨장치. 프로그램가능한메모리를사용하고프로세서를제어하는디지털전자장치이다. Dependable Software Laboratory Rev. 0 Page 5of 22
FBD (Function Block Diagram) FBD 는 IEC 61131 표준 Part 3 에정의된언어로함수블록들의연결을통 해표현한그래픽언어이다. 상용소프트웨어 (COTS Software) 일반규격품들중에서소프트웨어를칭한다. 테스트벤치 (Test Bench) 디자인또는모델의 correctness, soundness 를증명하기위해사용되는가 상의환경 합성 (Synthesis) 상위수준의하드웨어기술언어를보다낮은수준으로변환하는과정 2.2 약어 CGI COTS EDIF EPRI FBD FPGA HDL IEC IEEE NRC PLC RTL RTM Commercial Grade Item Commercial-Off-the-Shelf Electronic Design Interface Format Electric Power Research Institute Function Block Diagram Field Programmable Gate Array Hardware Description Language International Electrotechnical Commission Institute of Electrical and Electronics Engineers Nuclear Regulatory Commission Programmable Logic Controller Register-Translator-Level Requirement Traceability Matrix Dependable Software Laboratory Rev. 0 Page 6of 22
SRE SRS SQA TA V&V Software Requirement Evaluation Software Requirements Specification Software Quality Assurance Traceability Analysis Verification and Validation 3.0 NP-5652/TR-106439 개요 NP-5622, EPRI TR-106439는 EPRI에서제안한표준으로원전에사용되는일반규격품 (CGI : Commercial-Grade Item) 의dedication 에대한내용을포함하고있다. EPRI NP-5652는주로기계적 / 전기적하드웨어에관련된일반규격품을대상으로하고, EPRI TR-106439는하드웨어뿐만아니라하드웨어에직접사용되는소프트웨어까지대상으로한다. Figure 2. Commercial-grade item(computer program) dedication 개요 [1] <Figure 2> 은 TR-1025243 및 NP-5652 의 commercial-item dedication 에대한개요이다. Commercialitem(SW) 는 Technical Evaluation 과 Acceptance Process 로구성된두가지과정을거쳐 dedication 되며최종적으로 dedication 된결과물은원자력발전소의 quality 요구사항인 10CFR50 App. B requirements 를만족하도록제작된기본기기 (basic component) 와동등한자격을가진다. Dependable Software Laboratory Rev. 0 Page 7of 22
3.1 NP-5652 의인증방법 NP-5652 의 dedication 과정은일반규격품이안전기능을수행하기위해가져야하는필수특성식별과, 필수특성에따른인증방법선택및진행과정으로구성되어있다.<Figure 3> 는 NP-5652 의 dedication process 로, 인증과정을크게 Technical Evaluation 과 Acceptance 2 부분으로나누고있다. Figure 3 NP-5652 의 dedication process Technical Evaluation 은일반규격품의특성확인및인증방법을선택하는전반부를 구성하며 Acceptance 는인증방법을선택하고인증을진행하는후반부를구성하고 있다. NP-5652 의 dedication 과정은사용하려는제품확인부터시작한다. 일반규격품의 안전기능수행여부확인과, 이미인증된기본기기의여부를확인하는작업을거 Dependable Software Laboratory Rev. 0 Page 8of 22
친다. 사용하려는일반규격품이원자력발전소의안전기능을수행하지않는다면비안전성등급으로별도의인증과정없이사용한다. 또한사용하려는품목이이미 dedication 과정을거친품목이거나, 원자력발전소에사용을위한여러 certification 을받은기본기기의경우 dedication 과정을거치지않고사용한다.NP-5652 의 dedication 은안전기능을수행하지만인증되지않은일반규격품만을대상으로한다. 사용하려는일반규격품이 dedication 의대상이라면다음과정으로는품목의필수특성을확인한다. 필수특성은일반규격품이안전기능을수행하기위해반드시포함해야하는특성을포함한제품의특성이다. 필수특성에는물리적특성 (Physical Characteristics), 성능특성 (Performance Characteristics) 과 TR-106439 에서제안한 Dependability Characteristics 이있다. 물리적특성은제품의물리적, 장치적특징에대한특성이고, 성능특성은제품의기능적인부분에대한특성이다. Dependability characteristic 은장비내부의소프트웨어가가지는특성들에대한내용으로소프트웨어의 built-in quality, configuration control 등소프트웨어의개발프로세스및품질보증체계까지확인하는내용이포함된다. 4.0 NUREG/CR-6421 개요 NUREG/CR-6421은 NRC(Nuclear Regulatory Commission) 에서제안한표준으로서상용소프트웨어 (COTS SW) 인증과정에대해설명하고있다.NUREG/CR-6421은원자력발전소의소프트웨어품질관련표준및 Regulatory Guide를기반으로작성되었다. NUREG/CR-6421은 COTS 소프트웨어가수행하는안전기능을바탕으로소프트웨어의안전카테고리를분류하고, 분류한카테고리별로적용되어야하는인증과정및수준에대해설명하고있다. 안전기능을바탕으로한소프트웨어의안전카테고리는 IEC 61226 표준에따라 A, B, C, unclassified로분류되며 A 카테고리가안전등급이가장중요한카테고리이다. Dependable Software Laboratory Rev. 0 Page 9of 22
Figure 4 NUREG/CR-6421 인증프로세스개요 <Figure 4> 는 NUREG/CR-6421에서제안하고있는상용소프트웨어인증과정을보여준다. EPRI NP-5652와마찬가지로소프트웨어와관련된안전기능을식별해야하며, 카테고리별인증과정은 A, B, C로각각구분되어있다. NUREG/CR-6421의인증과정중시스템위험성분석및안전기능식별은원자력발전소의전체시스템분석을통해소프트웨어가수행하는안전기능을식별하는과정이다. 식별한안전기능은안전카테고리결정에사용된다. 상용소프트웨어의안전카테고리는소프트웨어가수행하는안전기능과소프트웨어의사용방식에따라달라진다. 소프트웨어의안전기능에따라 IEC 61226의안전카테고리가정해지고, 상용소프트웨어의사용방식에따라이안전카테고리가그대로적용되기도하고, 변화되어적용되기도한다. 인증과정에서카테고리결정에사용되는상용소프트웨어의사용방식은다음의 <Table 1> 과같다. COTS 소프트웨어사용방식은직접사용, 간접사용, 지원용도, 미연관이있다. COTS 소프트웨어의안전카테고리는사용카테고리에따라적용내용이달라진다. 직접사용 (Direct) 소프트웨어는안전기능을직접적으로담당하는소프트웨어들이해당되며대상이되는시스템, 모듈, 안전기능의 IEC 61226 카테고리에따라안전카테고리가정해진다. 간접사용 (Indirect) 카테고리는대상시스템, 모듈을생성하는소프트웨어들이해당되며경우에따라같은수준의카테고리혹은한단계낮은카테고리로적용된다. Dependable Software Laboratory Rev. 0 Page 10of 22
Table 1NUREG/CR-6421 COTS software 사용카테고리 COTS 사용 카테고리 상세설명 IEC 61226 카테고리 직접사용 (Direct) A, B, C 안전카테고리의안전기능에직접적으로사용 A, B, C 간접사용 (Indirect) 지원용도 (Support) 미연관 (Unrelated) A, B, C 카테고리의모듈을생성 ( 예, 컴파일러, 링커등 ) 지원시스템, 간접사용이아닌다른방식으로 A, B, C 카테고리시스템개발을지원 A, B, C 카테고리에영향을미치지않음 A, B, C, unclassified unclassified unclassified 최종적인적용은분류한안전카테고리에따라각기다른기준이적용된다. A 카테고리의경우 8 단계의과정으로구성되며그내용에는가장높은수준의 V&V 및소프트웨어품질보증체계인증이요구되고, 같은버전의소프트웨어사용경험에대한증명도필요하다. B, C 카테고리의경우각각 A 카테고리보다낮은수준의기준을가지고있으며 6 단계의과정으로구성된다. 5.0 TR-1025243 <Figure 1> 은 TR-1025243 및 NP-5652 의 commercial-item dedication 에대한개요이다. Commercial item(sw) 는 Technical Evaluation 과 Acceptance Process 로구성된두가지과정을거쳐 dedication 되며최종적으로 dedication 된결과물은원자력발전소의 quality 요구사항인 10CFR50 App. B requirements 를만족하도록제작된기본기기 (basic component) 와동등한자격을가진다. TR-1025243 은이를위해 NP-5652/TR-106439 의 dedication process 를이용하고있다. Dependable Software Laboratory Rev. 0 Page 11of 22
Figure 5 NP-5652/TR-106439 의 dedication process <Figure 5> 는 TR-1025243 에서기본으로하고있는 NP-5652/TR-106439 의 dedication process 의그림이다. Technical Evaluation 은 process 의전반부를, Acceptance process 는 process 의후반부에해당하며 TR-1025243 은 commercialcomputer program 의 dedication 을위해 Technical evaluation 과정중 <Figure 2> 에표시된부분에 computer program 을대상으로 functional safety classification 을적용하고있다. 표시된부분은사용하려는대상 commercial computer program 이 safety function 을수행하는지확인하는부분으로기존의프로세스에서는직접적으로 safety function 을수행하는 item 들만이대상이되었지만 TR-1025243 은이부분에서 functional safety classification 수행을통해경우에따라구분하고있다. 본보고서에서는 functional safety classification 에대해중점적으로설명한다. 5.1 Functional Safety Classification Functional safety classification 은 TR-1025243 에서 commercial computer program 의 dedication 수행여부및범위를결정하기위해수행하는과정으로 computer program 의 usage, impact, failure 를고려한분류를하고있다. Functional safety classification 에서사용하는분류방법으로는 2 가지방법을소개하고있다. - Considering Failure Modes and Effects Dependable Software Laboratory Rev. 0 Page 12of 22
- Considering Impact Categorization Functional safety classification 은위와같은 2 가지방법으로하고있으며, classification 수행결과에따라대상 computer program 의 dedication 수행여부가 결정된다. 5.2 Considering Failure Modes and Effects Failure modes and effects 를고려한방법은 computer program 의 failure 를상정하고 failure 가대상 safety-related SSC (System, Structure, Component) 에미치는영향에따라분류하는방법을기본으로적절한 process 로구성되어있다. <Figure 6 Functional Safety Classification Process[10]Figure 6> 은 Failure Modes and Effects 를고려한 functional safety classification 과정이다. 분류는 computer program 의사용용도와 failure 의영향, verification 여부등을이용하여분류한다. 분류과정을자세히살펴보면다음과같다. 우선대상 computer program 이 safety-related SSC 에필수적인지확인한다 (5.4.1.1). 이부분은 safety-related SSC 에직접사용되는, 즉 SSC 기능을수행하는소프트웨어들을확인하기위한부분으로여기에해당되는소프트웨어들은 TR- 106439 에따라 dedication 을수행하게된다. 이범위에해당하는소프트웨어들은 TR-1025243 의대상인 computer program 이아닌 direct COTS SW 에해당한다. 다음으로는컴퓨터프로그램이 safety-related SSC 에영향을미치는지확인한다 (5.4.1.2). Safety-related SSC 에영향을미칠수있는용도의컴퓨터프로그램은디자인, 분석, 모니터링의용도로사용되는소프트웨어들이다. 이소프트웨어들은결과나동작이 SSC 의동작이나기능, 능력등에미치는영향이존재한다. 예를들어컴파일러와같이디자인프로세스에서사용되는소프트웨어는 safety-related SSC 의 application 에직접적인영향을미칠수있다. Safety-related SSC 에영향을미치지않는 computer program 은 SSC 의 quality program 관리등을지원하는용도로사용되는지확인하고 (5.4.1.3), 지원용도로사 용된다면 non-safety related/augmented quality 로분류하고, 지원용도로도사용 Dependable Software Laboratory Rev. 0 Page 13of 22
되지않는경우에는 non-safety related 로분류한다. 다음과정은컴퓨터프로그램이디자인, 분석, 모니터링용도로사용되어 safetyrelated SSC 에미치는영향이있는것으로분류된소프트웨어가 SSC 의 safetyfunction 과연관이있는지확인한다 (5.4.1.4). 이는컴퓨터프로그램의용도및대상과관련된부분으로, safety-related SSC 의디자인이나분석에사용되더라도 safety function 에영향을미치지않는다면 non-safety-related/augmented quality 로분류한다. SSC 의 safety function 에영향을미치는컴퓨터프로그램으로분류된소프트웨어에대해다음으로는 independently verified 여부를확인한다 (5.4.1.5). Independently verified 의의미는컴퓨터프로그램으로부터도출된결과가다른방법을통해검증될수있는가를확인하는것이다. 다른방법은 manual 한검사, 인증된같은기능의프로그램을이용하여도출된결과와비교, 추가검증방법을통한검증이포함된다. 예를들어디자인도구의경우 independently verification 방법은 simulation, unit testing 등을포함한다른방법의검증혹은디자인결과물의 manual 한확인등이있다. 이경우 independently verified 가가능한컴퓨터프로그램의경우는 nonsafety-related/augmented quality 로분류된다. Safety function 에영향을미치면서 independently verified 방법도없는컴퓨터프로그램은발생가능한 failure 를상정하고, failure 가 SSC 의 safety function 수행에미치는영향에대해확인한다 (5.4.1.6 ~ 5.4.1.8). 컴퓨터프로그램에서발생할수있는 failure 는 interface 문제, arithmetic error 등이있으며이러한 failure 의결과로는 inaccurate results, malfunction 등이발생한다. 이와같은 failure 로인한결과가 safety-related SSC 이 safety function 수행에반대의영향을미친다면이는 safetyrelated 로분류되고 dedication 을수행해야한다. Dependable Software Laboratory Rev. 0 Page 14of 22
Figure 6 Functional Safety Classification Process[10] 5.3 Considering Impact Categorization Impact categorization 방법은 computer program 이 SSC 에미치는 impact 에따라카테고리를분류하여 dedication 여부를결정하는방법이다. Impact category 는 4 가지로분류하고있다. Dependable Software Laboratory Rev. 0 Page 15of 22
IMPACT CATEGORY HIGH IMPACT MEDIUM IMPACT LOW IMPACT OTHER DESCRIPTION SSC 의 safety function 수행능력에직접적으로영향을미치는소프트웨어 SSC 의 safety function 수행능력을평가하거나 monitoring 하는데사용되는소프트웨어직접적이영향없이지원행동을하는소프트웨어위분류에포함되지않는소프트웨어 소프트웨어를 4 가지카테고리로분류하며, high impact category 의소프트웨어들 은 safety-related 로, medium impact 의경우 non-safety-related/augmented quality 로그외의분류는 non-safety-related 로분류하고있다. Figure 7 TR-1025243 의 impact categorization 을통한 classification 그림 [12] <Figure 7> 은 impact categorization 을이용한 safety classification 에대한그림이다. Impact categorization 을통한 safety classification 은첫번째방법인 failure mode and effects 를이용한분류와유사하게분류하고있다. 즉, SSC 의 safety function 수행에영향을미치지만 independently verified 되지않는소프트웨어들이 Dependable Software Laboratory Rev. 0 Page 16of 22
safety-related 로분류되고, 영향을미치지만독립적검증이가능한소프트웨어들은 non-safety related/augmented quality 로분류되는점에서그내용과과정이동일 하다. 5.4 Acceptance Process Functional safety classification 이후의 dedication process 는 NP-5652/TR-106439 의수행과정과동일하다. 대상 computer program 의 critical characteristics 를확인및선정하고, acceptance methods 선정후에인증을진행한다. Critical characteristics 는 physical, performance, dependability 가있으며 physical characteristics 는컴퓨터프로그램의특성상 critical characteristics 에서제외할수있다. 위두가지특성을인증하기위한인증방법으로는 4 가지방법이있으며각각 Method 1. 특별시험, Method 2. 공급자조사, Method 3. 소스검증, Method 4. 사용이력조사이다. 특히공급자조사를통해소프트웨어의개발과정이나단계, safety lifecycle requirements, QA assurance, SCM, V&V 등의내용을확인하는것이필요하고, 소스 검증은 commercial 소프트웨어의한계로거의적용이불가능하다. 6.0 An Extended COTS SW Dedication Process 국내에서는법령 KINS/RG-N17.12 안전성관련품목대체사용을위한일반규격품의품질검증 에서 EPRI NP-5652와 EPRI TR-106439를사용한다고정의되어있다. 하지만두표준은그대상이직접사용되는하드웨어및소프트웨어기반장비이기때문에컴파일러나합성도구같은개발을지원하는간접소프트웨어에직접적용하기에는무리가있다. 또한합성도구의인증은컴파일러의역할을수행함으로써매우중요하지만 TR-1025243에따라인증대상으로분류되지않는다. 위표준들은수행되는방법에대해서도 NUREG/CR-6421과같은정량적인기준 ( 부록A) 도없는상황이다. 따라서, 효과적인간접사용상용소프트웨어의인증을위해 NUREG/CR-6421표준을정량적인기준으로삼고, 간접사용소프트웨어에이를적용하려고한다. Dependable Software Laboratory Rev. 0 Page 17of 22
Figure 8 통합인증프로세스 <Figure 8> 은본문서에서두표준을이용해인증을진행하는통합인증프로세스를표현한것이다. 기본적인인증방법은 EPRI NP-5652, TR-106439를통해결정하나, 간접사용되는도구들에대한내용이추가되고, 또한각각의인증방법을적용함에있어정량적인기준및수준을 NUREG/CR-6421을통해간접사용카테고리에맞도록결정한다. Dependable Software Laboratory Rev. 0 Page 18of 22
7.0 IP Core Library 사용이 dedication 에미치는영향 IP(Intellectual Property) Core library 는복잡한시스템의설계를간단히하기위해미리정의한기능과회로의라이브러리이다. 일반적으로 vendor 에서제공하거나 3 rd party library 를이용할수있다. 상용합성도구에서이러한 IP Core library 를합성과정에이용하게되는경우합성도구의 dedication 과정에서이에따른고려가필요하다. 상용합성도구에서 IP Core library 를사용하여합성을수행할수있는경우의수를 2 가지로분류하면다음과같다. 1) 디자인단계에서사용한 IP Core library 사용 2) 합성도구임의로 IP Core library 를사용하여합성 디자인단계에서사용한 IP Core library 를사용하여합성하는경우는일반적으로 RTL design 지원도구를통해사용하는경우이다. Libero SoC 11.5 의경우 Smart Design 을이용가능하다. 또한 Mentor Graphics 의 HDL Designer, Xilinx 의 ISE, Altera 의 Quartus 2 등이있다. Figure 9 Smart Design 을이용한라이브러리사용화면 1), 2) 번각각의경우에따라 IP Core library 의사용이상용합성도구의 dedication Dependable Software Laboratory Rev. 0 Page 19of 22
에미치는영향을살펴보면다음과같다. 1) 번과같이디자인단계에서사용된 IP Core library 의경우해당라이브러리는디자인에의존적이고, 디자인대상의 verification 범위에포함된다고할수있다. 그이유는디자인에사용되어야만 IP Core library 를사용하기때문이다. 따라서 1) 에해당되는 IP Core library 사용은합성도구의 COTS SW dedication 수행시미치는영향이없다고할수있다. 반대로 2) 번과같은사용은합성도구의기능, 능력과연관된다고할수있다. 디자인과관계없이합성도구의기능으로사용하는것이기때문이다. 이경우상용합성도구의 COTS SW dedication 과정에서 IP Core 사용에대한고려및분석이필요하다. 고려해야할점은합성과정에서사용되는 IP Core library 의종류및기능과대상 IP Core 들에대해 V&V 수행여부및결과확인또는사용되는 IP Core 들에대해특별시험을통한확인등이다. 7.1 Synplify Pro 의 IP Core library 사용여부확인결과 라이브러리를사용한디자인과라이브러리를사용하지않지만같은기능을하는 Verilog 디자인을각각합성하여그결과를확인하는방식으로 Synplify Pro 의 IP Core library 사용여부에대해확인하였다. 실험을위해 Synplify Pro 사용을지원하는통합개발환경인 Libero SoC 의 Smart Design 을통해라이브러리를사용한디자인을생성하고, 같은기능의라이브러리를사용하지않은디자인을작성하였다. 실험은 Libero SoC 의에서사용가능한디자인도구의라이브러리중 basic block 에해당하는사칙연산블록 (adder, subtractor, counter, incrementer), 비교블록 (Comparator) 과 multiplexer 를대상으로하였다. Figure 10. 3to1 Multiplexer 라이브러리사용디자인 ( 좌 ) HDL 로직접작성한디 자인 ( 우 ) 그림 <Figure 10> 은첫번째실험결과중 3to1 multiplexer 에대해라이브러리를사 용한디자인과 ( 좌 ), 직접 HDL 을작성하여라이브러리를사용하지않은디자인 ( 우 ) Dependable Software Laboratory Rev. 0 Page 20of 22
의합성결과에대해각각나타낸그림이다. <Figure 10> 결과 Smart Design 의라이브러리를사용한코드는기본게이트인 MX2 2 개를사용한반면 Verilog 로작성된디자인은 NOR, OR 등의게이트를이용하여합성되었다. 비교를통해 Synplify Pro 는 3to1 multiplexer 에대해서합성과정에서 Smart Design 의라이브러리를사용하지않음을알수있다. 다른라이브러리에대해서도같은실험을수행하였다. Table 2 실험결과비교 Logic Smart Design( 사용 ) Verilog( 미사용 ) 3to1 Mux 2 개 (2to1 mux 2) 9 개 (NOT 5, NOR3 1, NOR2 2, OR3 1) Decoder 6 개 (NOT 2, AND 3, NOR 1) 8 개 (NOT 4, NOR 4) 4 bit Adder 11 개 (AND 7, XOR3 3, XOR2 1) 6 개 (AND3 1, AND 1, XOR 3, Incrementer NOT 1) 15 개 (AND 6, OR 2, XOR3 3, XOR2 1, NOT 2, NOR 1) 9 개 (AND3 1, XOR 3, NOT 3, NOR 2) <Table 2> 는실험결과에대해비교예제의일부로 3to1 mux 와 adder, decoder, incrementer 라이브러리에대해비교한예제이다. 각각의모듈들에대해비교해본결과사용하는게이트의종류와개수가다름을확인할수있었다. 다른모듈들도 4 개의로직과마찬가지로사용하는게이트들의차이점이존재함을확인하였다. 결과적으로 Synplify Pro 에대해서는 IP Core library 를합성과정에서임의로사용하지않는것을확인할수있다. 8.0 Reference [1] KEPCO E&C, 건설원전 CGI Dedication, 제 18 회원자력안전정보기술회의, 2015 [2] 10CFR50 B [3] Electric Power Research Institute, Plant Engineering : Guideline for the Acceptance of Commercial-Grade Items in Nuclear Safety-Related Applications(NP- 5652) [4] TR-102260 [5]Electric Power Research Institute, Guideline on Evaluation and Acceptance of Commercial Grade Digital Equipment for Nuclear Safety Applications(TR-106439) [6] Electric Power Research Institute, "Guideline for Sampling in the Commercial- Grade Item Acceptance Process", 1999 Dependable Software Laboratory Rev. 0 Page 21of 22
[7] Electric Power Research Institute, "Guidelines for the Technical Evaluation of Replacement Items in Nuclear Power Plants", 1989 [8] Electric Power Research Institute, "Plant Support Engineering : Guidelines for the Technical Evaluation of Replacement Items in Nuclear Power Plants, Rev1", 2006 [9] NUREG/CR-6421, A Proposed Acceptance Process for Commercial Off-the- Shelf(COTS) Software in Reactor Applications. [10] Electric Power Research Institute, "Plant Engineering : Guideline for the Acceptance of Commercial-Grade Design and Analysis Computer Programs Used in Nuclear Safety-Related Application", 2013 [11] KINS/RG-N17.12, 안전성관련품목대체사용을위한일반규격품의품질검증 [13] Jong Gyun Choi, Dong Young Lee, Development of RPS trip logic based on PLD technology, Nuclear Engineering and Technology, Vol. 44, Num 6. Pp 697-708, 2012 [14] 이동아, 유준범, 최종균, 원자력발전소의 FPGA 기반계측제어시스템을위한통합소프트웨어개발환경, 정보과학회지제 32 권제 12 호, p36-43, 2014. [3] FPGA 기반 DIGITAL I&C [15] Jaeyeob Kim, Eui-Sub Kim, Junbeom Yoo, Young Jun Lee, Jong-Gyun Choi, "An Integrated Software Testing Framework for FPGA-based Controllers in Nuclear Power Plants", Nuclear Engineering and Technology (Submitted) [16] Eui-Sub Kim, Junbeom Yoo, Jangyeol Kim, "A VIS-based Correctness Verification Technique for Commercial FPGA Logic Synthesis," Software Testing, Verification and Reliability. (Submitted) [17] Microsemi Libero SoC, http://www.microsemi.com/products/fpga-soc/designresources/design-software/libero-soc [18] Electric Power Research Institute, Plant Engineering : Guideline for the Acceptance of Commercial-Grade Items in Nuclear Safety-Related Applications, 2013. Dependable Software Laboratory Rev. 0 Page 22of 22