오늘은 맑음

Timing analysis 본문

Digital logic

Timing analysis

자전거 타는 구구 2019. 11. 30. 23:42
반응형

어떠한 로직을 설계한 후 타이밍을 분석

negative slack이 발생하여 타이밍에서 문제가 되는 경우 이를 해결하는 방법

 일반적으로 setup time안에 데이터가 들어오지 않거나 hold time동안 데이터를 유지시키지 못할 때 발생하며 다양하게 문제를 일으킬 수 있음. 보통 longest path(두 개의 F/F사이에 많은 combinational logic이 존재하는 path)에서 발생하지만 문제가 되지 않을 수도 있음

다양하게 문제를 일으키는 만큼 다양한 해결방법이 있음

ex) 

 worst negative slack을 해결하는 방법과 전체적인 negative slack을 해결하는 방법

 flip/flop과 flip/flop사이에 존재하는 longest path에서 slack이 발생하는 경우 combinational logic을 sequential logic에 붙이거나 pipeline을 통해서 negative slack을 해결

fan out이 많아 negative slack이 발생하는 경우 모듈을 잘게 쪼개 fan out의 개수를 줄임

flip flop 사이에 conbinational logic이 있는 경우 해결할 수 있는 방법(앞의 F/F를 A, 뒤의 F/F를 B라고 하겠다)

-여러개의 조합회로(combinational logic)이 있는 경우 뒤에 영향을 끼치지 않는 logic을 A의 앞에서 연산하게 해 조합 딜레이를 낮춘다.

-또는 조합 회로를 B에 붙여 조합딜레이를 없앤다.

 

 

미리 고려해서 설계하자

반응형

'Digital logic' 카테고리의 다른 글

module 사이의 데이터 전달 방법  (0) 2019.11.30
verilog hdl 설계시 주의할 점(1)  (0) 2019.11.30
full adder/전가산기  (0) 2019.03.15
half adder/반 가산기  (0) 2019.03.15
verilog를 이용한 D_FF 구현  (0) 2019.03.15
Comments