entity와 entity의 architecture를 delcare하고,


arch문에서 Process (clk) 문을 선언하였다

if 문으로 rising edge clock 조건을 주었고


그 안에는


b <= a

c <= b


와 같이 작성하였다


이때, a=0, b=X, c=X and rising edge가 되면


처음 생각대로라면 a=0, b=0, c=0이어야 하는데


a=0, b=0, c=X였다


아직 이해가 되지않아서, 프로세스문의 이해가 더 필요한 것 같다


어쨌든 a와 c까지 sync가 되게 하고 싶다고 하자,


이것은 process문을 별도로 작성하여도 해결되지 않는다


하지만 아래와 같이 작성하면 해결된다


process(b)

if rising edge

c <= b


하지만 이것은 time per clock을 증가시키는 요인이 된다 (latch?)


그러므로 high clock cycle을 위해서는, 1 clock이 delay되어 a 값이 c에 들어가야 한다


'etc' 카테고리의 다른 글

[Android] 저장공간 부족 해결방법  (0) 2018.04.08
SDHC?: High storage SD  (0) 2018.04.06
[elasticsearch5] Text vs String (and Keyword)  (0) 2018.04.04
세종대 블랙보드 로그인 해보즈아  (1) 2018.04.01
ModelSim Simulation  (0) 2018.04.01

WRITTEN BY
hojongs
블로그 옮겼습니다 https://hojongs.github.io/