보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 ·...

16
보안 회로 설계 상태도 및 설계실습 Dong Kyue Kim Hanyang University [email protected]

Upload: others

Post on 01-Jan-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

보안 회로 설계

상태도 및 설계실습

Dong Kyue Kim

Hanyang University

[email protected]

Page 2: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

Finite State Machine (FSM)

• Finite State Machine (FSM)

– FSM은 일반적으로 디지털 회로를 꾸밀 때 사용하는 기법

– 제한된 상태들의 변화를 순차적으로 나타내는 장치

– FSM은 sequential logic으로 이루어 짐

• 과거의 입력이 출력에 계속해서 영향을 미치는 logic

• combinational logic에 memory가 합쳐진 것을 의미

– Memory를 무한 개로 만들 수 없기 때문에 finite한 state만 가능

2

Page 3: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

• Moore machine vs. Mealy machine

– Moore machine : {FF의 현재 상태} → 회로의 출력

– Mealy machine : {FF의 현재 상태 + 현재 입력} → 회로의 출력

FSM – Moore / Mealy machine

3

Moore machine Mealy machine

Page 4: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

Moore machine

4

• State Diagram(상태도)과 Timing Diagram

– 입력: x = 0, 1

– 상태: 𝑞1𝑞2= S0(00), S1(01), S2(10)

– 출력: 𝑧1𝑧2= 00, 01, 10, 11

Page 5: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

• State Diagram(상태도)과 Timing Diagram

– 입력: x = 0, 1

– 상태: 𝑞1𝑞2= S0(00), S1(01), S2(11)

– 출력: z = 0, 1

Mealy machine

5

Page 6: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

FSM 예시

6

Page 7: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

실습 Ex - Stopwatch

Page 8: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

• Output 에 따른 상태도

START 버튼RESET 버튼

Stopwatch FSM

18

RECORDTIME

00:00:0

RUNNING

STOPRECORD 기록RESET

지금 시간을RECORD 저장

Page 9: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

19

Flip-Flop

clk

reset

4n_state

n_data1

n_data2

n_data3

c_state

c_data1

c_data2

c_data3

MUX

L O G I CC I R C U I T

Verilog Coding 회로 개념도

PART A

load

4

PART B

PART C

Page 10: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

Stopwatch 모듈

20

PART A Filp Flop 생성

PART B 특별한 조건이 없으면 그냥 연결

Page 11: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

Stopwatch 모듈

21

PART C논리 회로구성

Page 12: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

Testbench 모듈

23

Page 13: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

Testbench 모듈

24

Page 14: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

26

Simulation 결과 – Monitor/ display

• Simulation 결과

Page 15: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

27

Simulation 결과 - Wave

• Simulation 결과

Page 16: 보안회로설계esslab.hanyang.ac.kr/uploads/security_circuit_design... · 2019-04-17 · 보안회로설계 상태도및설계실습 Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr

12

실습1

• 실습1 – Stopwatch

– 앞의 stopwatch 예시를 참조

– 1 clock = 1ms 가정 (1s = 1000ms)

– input

• clock

• system_reset

• time_reset

• time_start

– 기능

• stopwatch 예시의 기능을 모두 포함

• 기록을 4개 저장 가능 (Record time 상태에서 start 누르면 기록이 넘어감)

• 기록 삭제 가능(기록이 보이는 상태에서 reset 누르면 해당 기록 삭제)

• 기록 확인할 때 시간순으로 확인됨.