프로그래머블 프로그래머블 IC IC 설계적합성 설계적합성 확인에 확인에 대한 대한 규제방향 규제방향 박건용 한국원자력안전기술원 2009.04.06 제14회 원자력안전기술정보회의
프로그래머블프로그래머블 IC IC 설계적합성설계적합성확인에확인에 대한대한 규제방향규제방향
박 건 용
한국원자력안전기술원
2009.04.06제14회 원자력안전기술정보회의
Nuclear Safety Information Conference 2009 Slide -2-
목목 차차
개요개요
프로그래머블프로그래머블ICIC에에 대한대한 고려사항고려사항
프로그래머블프로그래머블IC IC 개발단계개발단계
프로그래머블프로그래머블IC IC 개발고려사항개발고려사항
프로그래머블프로그래머블IC V&VIC V&V
프로그래머블프로그래머블IC IC 안전성평가안전성평가
결론결론
Nuclear Safety Information Conference 2009 Slide -3-
프로그래머블IC 설계적합성 평가 목표 : 면적 H의 최대화
프로그래머블IC 설계적합성 평가 활동 :
면적(A∪E)에 대한 안전성요구사항 만족성
면적(F∪C)에 따른 안전성요구사항 영향성
개개 요요
Nuclear Safety Information Conference 2009 Slide -4-
개개 요요
울진 5호기의 시운전 기간 중 발전소제어계통의 CPLD로 인해 원자로 정지
발생
신규발전소 인허가 및 특정기술주제보고서 심사 중 프로그래머블IC 설계 확
인이 주요한 현안사항으로 대두
여기서는,
소프트웨어 개발과 프로그래머블 IC 개발과의 비교
프로그래머블 IC 개발에 필수적인 고려사항 제시
프로그래머블 IC 개발 산출물 제시
프로그래머블 IC 개발 = 하드웨어적인 요소 + 소프트웨어적인 요소
Nuclear Safety Information Conference 2009 Slide -5-
프로그래머블프로그래머블 ICIC에에 대한대한 고려사항고려사항(1/3)(1/3)
프로그래머블 IC의 특성
소프트웨어적 특성 : 요구되는 기능을 프로그래밍 언어를 통해 구현
하드웨어적 특성 : 기능 이외에 신호의 timing, 하드웨어 구현가능성 등이 중요한 설계 요소임
소프트웨어 생명주기 공정에 따라 프로그래머블 IC 개발을 수행할 경우, 아
래와 같은 하드웨어적인 고려사항이 반영되기 어려움
신호의 glitch, cross-talk 및 timing (예, Critical Path) 등에 대한 고려
입력 신호 및 내부 신호 사이의 timing 불일치로 인한 metastability1) 가능성
하드웨어 구현가능성 - HDL 구문 중 RTL2) subset으로만 기능이 구현되어야 함
개발도구를 통하여 설계결과물의 기능/성능 확인 (예, Static Timing Analysis)
논리합성도구에 의한 논리합성결과 관련 고려사항
기본적으론 소프트웨어 생명주기 공정을 따르며, 각 개발단계별 프로그래머
블 IC 개발에 필요한 고려사항을 제시
1) metastability : 어떤 하나의 상태로 확정되지 못한 상태
2) RTL : Register Transfer Level
Nuclear Safety Information Conference 2009 Slide -6-
소프트웨어 수명주기에서의 문서화 흐름(BTP 7-14의 그림 7-A-1)
프로그래머블프로그래머블 ICIC에에 대한대한 고려사항고려사항(2/3)(2/3)
PlanningActivities
RequirementActivities
DesignActivities
ImplementationActivities
IntegrationActivities
ValidationActivities
InstallationActivities
Operation &Maintainance
Activities
RequirementSpecification
Requirement Safety Analysis
V&V Requirement
Analysis Report
CM Requirement Report
Design Specification
Hardware & Software
Architecture
Design Safety Analysis
V&V Design Analysis Report
CM Design Report
Code Listings
Code Safety Analysis
V&V Implementation Analysis Report
CM Implementation
Report
Software Management Plan
Software Development Plan
Software QA Plan
Integration Plan
Installation Plan
Maintenance Plan
Training Plan
Operations Plan
Software Safety Plan
Software V&V Plan
Software CM Plan
System BuildDocuments
Integration Safety Analysis
V&V Integration Analysis Report
CM Integration Report
Validation Safety Analysis
V&V Validation Analysis & Test
Report
CM Validation Report
Operations Manuals
Installation Configuration
Tables
Maintenance Manuals
Training Manuals
Installation Safety Analysis
V&V Installation Analysis & Test
Report
CM Installation Report
Change Safety Analysis
V&V Change Report
CM Change Report
Nuclear Safety Information Conference 2009 Slide -7-
BTP 7-14(KINS/G-001)에 따른 프로그래머블 IC 설계문서 요구사항
프로그래머블프로그래머블 ICIC에에 대한대한 고려사항고려사항(3/3)(3/3)
PlanningActivities
RequirementActivities
DesignActivities
ImplementationActivities
IntegrationActivities
ValidationActivities
InstallationActivities
Operation &Maintainance
Activities
RequirementSpecification
Programmable ICRequirement
Safety Analysis
V&V Requirement
Analysis Report
CM Requirement Report
Design Specification
ArchitecturalDescription
Programmable ICDesign Safety
Analysis
V&V Design Analysis Report
CM Design Report
Code List
Programmable ICCode Safety
Analysis
V&V Implementation Analysis Report
CM Implementation
Report
Software Management Plan
Software Development Plan
Software QA Plan
Integration Plan
Installation Plan
Maintenance Plan
Training Plan
Operations Plan
Software Safety Plan
Software V&V Plan
Software CM Plan
STA, P&R Result Report
Programmable ICIntegration
Safety Analysis
V&V Integration Analysis Report
CM Integration Report
TestBench List & Simulation
Result
Programmable ICValidation
Safety Analysis
V&V Validation Analysis & Test
Report
CM Validation Report
Operations Manuals
Installation Configuration
Tables
Maintenance Manuals
Training Manuals
Installation Safety Analysis
V&V Installation Analysis & Test
Report
CM Installation Report
Change Safety Analysis
V&V Change Report
CM Change Report
Nuclear Safety Information Conference 2009 Slide -8-
프로그래머블프로그래머블 IC IC 개발개발 단계단계
Nuclear Safety Information Conference 2009 Slide -9-
프로그래머블IC 계획
목표 : 프로그래머블IC 설계수명주기 관리
활동
• 프로그래머블IC 설계계획
- 개발 및 V&V, 안전성평가 단계에서의 활동 및 상호관계 정의
- 개발단계별 진행 가능성 판단을 위한 transition criteria 정의
• 프로그래머블IC 확인 및 검증계획
- 개발단계별 수행되어야 할 V&V활동을 정의(test coverage criteria 등을 수립)
• 프로그래머블IC 설계절차에 대한 품질보증계획
- 설계절차에 관한 품질보증 전략 및 활동 정의
• 형상관리계획
프로그래머블프로그래머블 IC IC 개발개발단계단계 고려사항고려사항(1/7)(1/7)
Nuclear Safety Information Conference 2009 Slide -10-
프로그래머블IC 요구사항
목표
• 시스템요구사항 및 프로그래머블IC 안전성평가에 따라 프로그래머블IC 요구사항 정립
• 요구사항은 프로그래머블IC 의 결정론적 특성을 중심으로 기술
- 기능 요구사항 : 기능에 대한 정보(알고리즘, 자가진단, 상태 및 상태천이 등)
- 성능 요구사항 : 비기능적인 요소에 대한 정보(지연시간, 최대 클럭 주파수)
활동
• 시스템요구사항에서 도출된 프로그래머블IC 요구사항 정립 및 문서화
(예, 기능/성능에 대한 요구사항, BIT, 시험 및 유지보수사항 등)
• 프로그래머블IC 안전성평가에 따라 도출된 요구사항 문서화
(예, 등급별 기능독립성 유지, RESET 상태, 노이즈 및 cross-talk, 신호 glitch 등)
• 요구사항에서 도출된 요구사항은 시스템요구사항과의 상충여부 분석
프로그래머블프로그래머블 IC IC 개발개발단계단계 고려사항고려사항(2/7)(2/7)
Nuclear Safety Information Conference 2009 Slide -11-
프로그래머블IC 설계
목표
• 최종 설계결과물이 프로그래머블IC 요구사항을 만족할 수 있는지에 대한 가능 성 평가를
위한 상위수준의 설계
• 설계결과물에 적용될 PDC 및 Target device를 선택 및 평가
활동
• 프로그래머블IC 결과물에 대한 상위 수준의 설계에 대해 기술
- 신뢰성, 유지보수 및 시험기능을 고려하여 주요한 설계 사항들 확립
- 개념설계에 포함되는 PDC(Pre-Developed Component ; library, IP Core 등)도출
- 고장검출, 자가진단 및 다중화 등과 같은 아키텍쳐 고려사항을 포함
• 프로그래머블IC 요구사항 및 설계 특성에 따라 target device 선정 및 적합성 평가
• PDC 사용에 대한 PDC 설계 적합성 확인
- PDC설계문서 및 운전이력 등에 대한 분석
- PDC에 대한 시험.
- PDC의 기능을 프로그래머블IC의 다른 기능들과 격리
• 설계환경은 형상관리되어야 하며, 적절한 오류기능 보유
- 예) process 구문의 sensitivity list의 완벽성 확인, FSM의 dead state 검출
프로그래머블프로그래머블 IC IC 개발개발단계단계 고려사항고려사항(3/7)(3/7)
Nuclear Safety Information Conference 2009 Slide -12-
프로그래머블IC 구현
목표
• 프로그래머블 IC 요구사항 및 설계 결과물에 따라 상세설계 데이터를 생성
활동
• 프로그래머블IC의 기능은 자가진단 및 주기시험을 통해 점검가능
• 구현은 프로그래머블 IC 요구사항 및 설계 결과물에 따라 수행
• 설계 고려사항
- 동기식 설계 (모듈화 및 glitch에 의한 비정상 작동 가능성 최소화)
- 비동기 신호 등에 따른 glitch, metastability에 따른 출력신호에 대한 영향성 분석
- RTL 합성가능한 subset만 사용하고, signal, variable문의 초기화는 명확하게 기술
- 각 gate 및 배선경로의 특성값에 따른 모든 신호경로의 신호지연 분석
- 시험/디버깅/프로그램을 위한 특수 핀은 명확하게 문서화하여 구분
- 시뮬레이션과 다른 합성결과를 유발할 수 있는 구문은 사용할 수 없음
(예, 비교구분에서의 don't care 사용, 조합논리/순차논리가 혼재된 process 구문)
프로그래머블프로그래머블 IC IC 개발개발단계단계 고려사항고려사항(4/7)(4/7)
Nuclear Safety Information Conference 2009 Slide -13-
프로그래머블IC 통합
목표
• 구현 결과물에 따라 하드웨어 결과물을 생산
활동 (1/2)
• RTL 설계로부터 GATE수준 논리구현(netlist)를 합성
• 정확한 시뮬레이션을 위하여 RTL 설계에 대한 시간정보 생성하여 시뮬레이션에 적용
• 아래 사항에 대해 GATE수준의 분석 수행
- 설계와의 일치성
- metastability 유발 방지
- HC timing 요구사항에 대한 post-route 설계 적합성
- RTL 설계에 대한 post-synthesis/post-route설계의 일치성
- 불만족 사항에 의한 outgoing constraint에 대한 영향
- Testability
• STA (Static Timing Analysis) : 설계마진 계산을 위해 worst/best case에 대한 STA를
수행하고 그 결과를 문서화함
프로그래머블프로그래머블 IC IC 개발개발단계단계 고려사항고려사항(5/7)(5/7)
Nuclear Safety Information Conference 2009 Slide -14-
활동 (2/2)
• 논리합성도구 사용에 대한 고려사항
- 논리합성도구는 설계제약사항에 따라 상세설계결과물(RTL 설계)와 다르게 구현될
수 있음
- 그림 1 처럼 복사된 GATE 들 간의 다른 출력을 가질 수 있으며, 이로 인해
asynchrony, metastability, random fault 등의 문제를 야기할 수 있음
- 그림 2와 같이 합성 및 P&R 도구의 논리최적화 기능을 통해, 고장검출 등을 위한
설계자의 의도적인 이중화 로직이 제거되지 않음을 보장
그림그림2. 2. 의도적인의도적인 다중화다중화 설계설계
a
b
a&b
a&b
프로그래머블프로그래머블 IC IC 개발개발단계단계 고려사항고려사항(6/7)(6/7)
Nuclear Safety Information Conference 2009 Slide -15-
시험
목표
• 기능 및 성능 요구사항에 대한 통합 결과물의 적합성 확인
• 프로그래머블IC 안전성평가에 대한 기능 시험
(구현된 기능의 적합성 + 예상된 고장에 대한 고장완화 가능성 확인)
활동
• UNIT 기능시험 : UNIT (또는 Function Block) 별 구현결과물 기능 확인
• 프로그래머블 IC 기능 및 성능시험 : 프로그래머블IC 기능 및 성능요구사항에 대한 구현
결과물 적합성 확인
• UNIT 기능시험부터 프로그래머블 IC 통합 기능 및 성능시험까지 단일화된 테스트벤치
(unified testbench)를 사용
프로그래머블프로그래머블 IC IC 개발개발단계단계 고려사항고려사항(7/7)(7/7)
Nuclear Safety Information Conference 2009 Slide -16-
프로그래머블IC V&V
검증절차 : 시스템요구사항에 대한 프로그래머블IC 요구사항의 적합성/완벽성 확인
확인절차 : 프로그래머블IC 요구사항에 대한 설계상세의 일관성 및 완벽성 확인
• 확인을 위한 시뮬레이션, 테스트벤치 및 test coverage 등을 수립하고, 이를 문서화
V&V 방법
• 시험
- 시험대상 요구사항 도출
- Built-In Test 및 테스트벤치를 통한 시험결과와 예상결과와의 일치성 확인
• 분석
- 설계절차 결과물, 운전이력 등을 바탕으로 성능 요구사항 만족여부 확인
(기능, 성능, 추적성, 안전기능 및 타기기와의 인터페이스에 대한 상세검토 포함)
• 검토
- 요구사항 검토 : 요구사항의 적합성, 명확성, 검증가능성 등을 검토
- 설계검토 : 요구사항에 대한 설계구현물의 만족성 여부를 확인
프로그래머블프로그래머블IC V&VIC V&V
Nuclear Safety Information Conference 2009 Slide -17-
프로그래머블IC 안전성평가
목표
• 정성적/정량적 평가방법을 통해 프로그래머블IC 안전성요구사항 도출 및 확인
활동
• FFPA (Functional Failure Path Analysis)를 통하여 설계결과물에 대한 고장 또는 오류요
소 확인
- POWER-ON RESET 등을 포함한 다양한 RESET 상태
- 정상 및 비정상 상태에서 신호의 타이밍 관계 또는 전기적 조건
- 신호 노이즈 및 cross-talk, 비동기 논리회로에서의 신호 glitch 등
• 개발절차 전체에 걸쳐 안전성요구사항에 대한 설계결과물의 적합성 평가
• 상위등급의 기능과 하위등급의 기능 사이의 기능독립성 확보
- 다중 회로, 이종(dissimilarity) 회로 및 부품 사용, 모니터링
프로그래머블프로그래머블IC IC 안전성평가안전성평가
Nuclear Safety Information Conference 2009 Slide -18-
결결 론론
수립된 프로그래머블 IC 계획에 따라 프로그래머블 IC 개발 수행
개발단계의 설계결과물에 대한 V&V 활동 수행
→ 프로그래머블 IC 계획과 개발절차와의 일치성 여부 확인
→ 프로그래머블 IC 요구사항에 대한 설계결과물 적합성 확인
프로그래머블 IC 안전성평가를 통해 설계결과물에 대한 오류요소 확인
소프트웨어 생명주기 공정에 따른 프로그래머블 IC 개발절차는 프로그래머
블 IC의 하드웨어적인 설계요소를 충분히 고려하여야 함
→ 프로그래머블 IC 설계내용을 확인할 수 있는 설계문서 및 설계결과물 검
토를 통해 프로그래머블 IC 설계적합성 확인
(예, 프로그래머블 IC 설계단계에서의 구현가능성 확인, 논리합성도구 사용에 대한 고려사항 등)
'09년 하반기 관계기관 의견수렴을 거쳐 기술지침(안) 도출