본문 바로가기

전체 글

(16)
VIVADO Tool Input Timing constraint VIVADO 에서 input timing constraint를 주려고 보면 예전 ISE등을 사용하던 사람한테는 좀 낯설다. 이것에 대해서 아래의 그림을 참고하여 XDC에 적용하여 넣어 주자. 먼저 System Sync.다 System Sync.는 외부 Clock을 기준으로 Data를 입력 받는 경우를 말한다. 즉, 타이밍적으로는 같은 Clock인데, Clock 을 입력받는 곳과 Data를 입력 받는 곳이 다른 경우 이다. 1. System Sync. SDR Rising Edge 를 기준으로 줄 경우 처음 이 그림을 보면 뭔가 예를 잘못 들은 것 같은 느낌 일 것이다. 이 그림에서 의미하는 타이밍은 위의 노란색 F/F 이 아니라 위의 F/F 으로 데이터를 보내는 전단의 F/F의 Clock to Q를 Del..
Kintex UltraScale IODELAY Kintex UltraScale 제품의 경우 이전의 Virtex5 제품과 다르게 Time mode라는 것을 지원한다. 자기가 주변의 온도등을 고려해서 목표 값을 10ps 정도의 resolution을 유지한다는 것 인데, 이런 기능 때문인지 IODELAY Reference Clock이 Virtex5 제품과 다르다. 아래의 사양을 참고하자. Virtex 5에선 Fref. 에 값을 DLL로 걸어서 IODELAY의 resolution이 결정 되었지만, IODELAY resolution이 Kintex UltraScale에선 Fref.와 관계가 없음에 유의하자. 이것을 Time mode가 아닌 CNT_VAL 모드를 사용하더라도 마찬가지 이다. 표의 아래에 resolution이 2.5ps ~ 15ps 인 점을 항상 ..
Kintex UltraScale 에서 SERDES 사용시 고려사항 Virex 시리즈에선 Timing Meet을 위해 IO단에 ODDR 과 IDDR 을 주로 사용해 왔다. Kintex UltraScale 에서도 Virtex 의 ODDR과 IDDR같은 비슷한 것을 제공하긴 하는데 실은 OSERDES와 ISERDES 의 privitive를 약간 변형해서 사용자가 이전 primitive와 친숙 하도록 지원해준 것이다. 자세히 보면 이름이 다르다. ODDRE1 (Out Double Data Rate) IDDRE1 (Input Double Data Rate) 그런데 이름이 비슷하다고 Virtex 처럼 사용해도 될 것 같지만 이건 기능적으로 그렇단 이야기 이고, 사용 주파수가 200Mhz (400Mbps) 이상 이라면 얘기가 달라진다. ※ UltraScale 에서지원하는 ODDR ..