5월, 2018의 게시물 표시

How to use IDELAY cascading & How to use IDELAY cascading in the UltraScale & UltraScale+

이미지
How to use IDELAY cascading, How to use ODELAY cascading in the UltraScale and UltraScale+ Device에 대하여 설명하려고 합니다. 앞으로 설명하는 모든 자료는 UG571 (ver1.8) - UltraScale Architecture SelectIO Resources User Guide 에 있는 내용들입니다. (UG571 문서가 Update되었을 경우 페이지 위치가 달라질 수 있습니다. 하지만 아래 내용에 언급된 "Figure 00-00"으로 검색하시면 캡처한 그림이 위치한 페이지를 찾을 수 있습니다.) UltraScale의 경우 Delay value가 1.25 ns 이상 필요할 경우 IDELAY or ODELAY를 cascading하여 사용할 수 있습니다. 하지만 delay value는 fixed value이어야만 합니다. UltraScale+의 경우 Delay value가 1.10 ns 이상 필요할 경우 IDELAY or ODELAY를 cascading하여 사용할 수 있습니다. 하지만 delay value는 fixed value이어야만 합니다. 1. How to use IDELAY Cascading UG571 (ver1.8) - UltraScale Architecture SelectIO Resources User Guide 의 173페이지 Figure 2-18를 보면 아래의 캡처화면을 확인할 수 있습니다. 아래의 링크를 클릭(크롬 브라우저를 사용하세요)하면 위 Figure 2-18과 같이 구현된 Vivado 2018.1 project file을 확인할 수 있습니다. Example Design for IDELAY Cascading 2. How to use ODELAY Cascading UG571 (ver1.8) - UltraScale Architecture S...

Clock Mux (BUFGMUX) library의 사용방법과 Timing constraints 적용방법은 ???

이미지
Clock Mux (BUFGMUX) library의 사용방법과 Timing constraints 적용방법에 대하여 설명하려고 합니다. 앞으로 설명하는 모든 자료는 UG572 (v1.7) -  UltraScale Architecture Clocking Resources  와 UG974 (v2018.1) - UltraScale Architecture Libraries Guide  에 있는 내용들입니다. (UG572, UG974 문서가 Update되었을 경우 페이지 위치가 달라질 수 있습니다. 하지만 아래 내용에 언급된 "Figure 00-00"으로 검색하시면 캡처한 그림이 위치한 페이지를 찾을 수 있습니다.) 1. BUFGMUX 두 개의 클럭입력을 받아서 하나의 클럭만을 선택하여 사용할 경우에 아래의 그림과 같이 BUFGMUX를 사용합니다. UG572 (v1.7) -  UltraScale Architecture Clocking Resources  의 21페이지 Figure 2-9를 보면 위의 캡처화면을 확인할 수 있습니다. 위 library는 아래와 같은 timng으로 동작이 됩니다. UG572 (v1.7) -  UltraScale Architecture Clocking Resources  의 22페이지 Figure 2-10를 보면 위의 캡처화면을 확인할 수 있습니다. 위 Library를 사용할 경우에 아래의 HDL code를 사용하면 됩니다. VHDL의 경우는 아래와 같습니다. BUFGMUX_inst : BUFGMUX generic map ( CLK_SEL_TYPE => "SYNC" -- ASYNC, SYNC ) port map ( O => O, -- 1-bit output: Clock output I0 => I0, -- 1...

UltraScale & UltraScale+ Device의 DCI는 어떤 용도인가?

이미지
UltraScale & UltraScale+ Device의 DCI에 대하여 설명하려고 합니다. 앞으로 설명하는 모든 자료는 UG571 (v1.8) -  UltraScale Architecture SelectIO Resources  에 있는 내용들입니다. (UG571 문서가 Update되었을 경우 페이지 위치가 달라질 수 있습니다. 하지만 아래 내용에 언급된 "Figure 00-00"으로 검색하시면 캡처한 그림이 위치한 페이지를 찾을 수 있습니다.) 1 . Termination Register for SSTL 일반적으로 DDR2, DDR3 memory와 FPGA 사이의 Interface 경우에 Statndard IO로 SSTL을 많이 사용합니다. 이 경우 External termination register를 아래의 그림과 같이 사용하여야 합니다. UG571 (v1.8) -  UltraScale Architecture SelectIO Resources  의 31페이지 Figure 1-10를 보시면 위의 캡처화면을 확인할 수 있습니다. DDR memory와 FPGA 사이의 모든 IO에 Termination register를 구성하려면 Board size 혹은 PCB 구성 시 어려움이 발생할 수 있습니다. 이러한 이유로 DCI를 사용하게 됩니다. DCI를 사용하게 되면 아래의 그림과 같이 FPGA 내부에 Termination register가 구성됩니다. 2 . VRP pin and VREF pin for DCI VRP pin, VREF pin은 각 Bank 마다 있습니다. Staandard IO로 SSTL을 사용할 경우에 DCI를 사용하기 위해서는 VRP pin에 240Ω 의 serial register를 거쳐 GND로 연결합니다. 그리고, VREF pin은 bank voltage의 ...

PROGRAM_B pin의 용도는 무엇인가?

이미지
PROGRAM_B pin의 용도는 무엇인가? PROGRAM_B의 용도로 Xilinx 문서에 언급된 내용은 다음과 같습니다. Active-Low reset to configuration logic. When PROGRAM_B is pulsed Low, the FPGA configuration is cleared and a new configuration sequence is initiated. Configuration reset initiated upon falling edge, and configuration (i.e. programming) sequence begins upon the following rising edge. Connect PROGRAM_B to an external ≤ 4.7 kΩ pull-up resistor to VCCO_0 to ensure a stable High input, and recommend push-button to GND to enable manual configuration reset. 일반적으로 board의 전원을 on하였을 때에 PROM의 mcs file이 FPGA로 download 됩니다. 그리고 Board의 on/off를 이용하지 않고 PROGRAM_B pin을 이용하여 대신할 수 있습니다. 그래서 PROGRAM_B pin에 일반적으로 Push button을 연결하여 구성합니다. 이를 이용하여 전원 on/off가 아닌 Push button을 이용하여 PROM의 mcs file을 FPGA로 download 합니다. Xilinx에서 제공하는 모든 development board는 아래의 그림과 같이 PROGRAM_B pin에 Push button을 연결한 구성을 가집니다. 여러분의 FPGA 설계에 도움이 되었길 바랍니다. 그럼, 오늘도 좋은 하루 되세요. 이 글은 Evernote에서 작성되었습니다. Everno...

UltraScale & UltraScale+ Device의 Configuration을 위한 PROM과의 Interface Guide

이미지
UltraScale and UltraScale+ Device의 Configuration을 위한 PROM과의 Interface에 대하여 설명하려고 합니다. 보통 일반적으로 아래의 2가지 방법 중 한가지 방법을 주로 선택하여 사용합니다. Master SPI Quad(x4) Interface mode Master BPI Synchronous Read Interface mode 두 가지 mode 중 BPI mode가 SPI mode 보다 Configuration 완료 시간이 더 빠릅니다. 하지만 BPI mode는 SPI mode보다 더 많은 IO pin이 필요합니다. 앞으로 설명하는 모든 자료는 UG570 - UltraScale Configuration User Guide 에 있는 내용들입니다. (UG570 문서가 Update되었을 경우 페이지 위치가 달라질 수 있습니다. 하지만 아래 내용에 언급된 "Figure 00-00"으로 검색하시면 그림들이 위치한 페이지를 찾을 수 있습니다.) 아래의 내용은 위 두 가지 mode의 연결에 대한 부분을 설명하고 있습니다. 1 . Master SPI Quad(x4) Interface mode의 연결은 다음과 같습니다. UG570 - UltraScale Configuration User Guide 의 48페이지 Figure 2-4를 보시면 아래의 캡처화면을 확인할 수 있습니다. SPI PROM과 FPGA와의 연결은 아래의 캡처화면과 같이 연결하면 됩니다. 여기서 중요한 부분은 PROM과 FPGA 사이의 IO level (Voltage level)이 반드시 동일하여야 합니다. 2 . Master BPI Synchronous Read Interface mode의 연결은 다음과 같습니다. UG570 - UltraScale Configuration User Guide 의 62 페...

PCB Schematic 을 위한 Xilinx ALL FPGAs 의 Pin-out files 을 어디서 구하나요?

PCB 설계를 위한  Xilinx ALL FPGAs 의 Pin-out files 을 어디서 구하나요? PCB Schematic 을 위한 FPGA 의 Pin-out files 을 Xilinx website 의 어디서 download 받을 수 있는지 문의하는 개발자 분들이 많습니다. 그냥 찾으려면,,,,, 너~~~~무나도 꼭!꼭! 숨어 있어요....^^;; ##1 아래의 링크를 보면 Xilinx All FPGAs 의 Package Pins을 확인할 수 있습니다. Xilinx All FPGAs Package Files Portal ##2 Xilinx 는 모든 FPGAs 의 PCB Symbol Library 를 제공하지 않아요... PCB Symbol Library 가 필요한 경우, 아래 Link 를 보면 도움이 될 것입니다. snapeda.com www.schematicsymbol.com 여러분의 FPGA 설계에 도움이 되었길 바랍니다. 그럼, 오늘도 좋은 하루 되세요.

UltraScale & UltraScale+ 의 GTY 를 사용하지 않을 경우, GTY 관련 Pin 들은 어떻게 처리하여야 하나요?

이미지
UltraScale and UltraScale+ 의 GTY 를 사용하지 않을 경우에 GTY 관련 Pin 들은 어떻게 처리하여야 하나요? "UltraScale and UltraScale+ FPGAs 를 사용할 경우 GTY 를 사용하지 않을 경우에 GTY 관련 Pin 들을 어떻게 하여야 하나요?" 라는 개발자분들이 문의를 많이 받습니다. ##1 먼저 UltraScale and UltraScale+ FPGAs 의 GTY 관련 Guide 문서를 보아야 합니다.. 아래 링크는 UltraScale and UltraScale+ FPGAs GTY User Guide 문서랍니다. UG578 (v1.3) - UltraScale Architecture GTY Transceivers 위 문서의 337 페이지의 Table 5-5: GTY Transceiver PCB Design Checklist 를 자~알 살펴보면 사용하지 않을 경우에 어떻게 하는지에 대한 각 Pin 별 설명이 있어요. Table 5-5: GTY Transceiver PCB Design Checklist ##2 Table 5-9: GTY Transceiver PCB Design Checklist 에서 GTY 를 사용하지 않을 경우에 어떻게 하는지에 대한 설명을 정리하면 다음과 같아요. MGTREFCLK0P If reference pins are not used, leave the associated pin pair unconnected. MGTREFCLK0N If reference pins are not used, leave the associated pin pair unconnected. MGTREFCLK1P If reference pins are not used, leave the associated pin pair unconnected. MGTREFCLK1N If reference pins are not use...

사용하는 User IO 의 internal pull-up resister, internal pull-down resister 의 값을 어떻게 계산할까요?

사용하는 User IO 의 internal pull-up resister, internal pull-down resister 의 값을 어떻게 계산할까요? Xilinx FPGA Device 에서..... 사용하는 User IO 의 내부 pull-up resister 혹은 내부 pull-down resister 를 option 으로 사용하는 경우가 있지요..... 이러한 경우 internal pull-up resister, internal pull-down resister 의 값을 어떻게 계산할까요? 이 경우, 다음과 같은 공식으로 구할 수 있습니다. Value of pull-up resister : Rpu = Vcco / Irpu Value of pull-down resister : Rpd = Vcco / Irpd ##1 공식에 있는 Vcco 는 Bank Voltage 랍니다. User IO 의 Standard IO 가 LVCOMS33 일 경우, Vcco = 3.3V 가 됩니다. User IO 의 Standard IO 가 LVCOMS25 일 경우, Vcco = 2.5V 가 됩니다. User IO 의 Standard IO 가 LVCOMS18 일 경우, Vcco = 1.8V 가 됩니다. ##2 아래는 각 Device 의 DC and AC Switching Characteristics 문서입니다. DS893 - Virtex UltraScale : DC and AC Switching Characteristics DS892 - Kintex UltraScale : DC and AC Switching Characteristics DS183 - Virtex-7 : DC and AC Switching Characteristics DS182 - Kintex-7 : DC and AC Switching Characteristics DS181 - Artix-7 : DC and AC Switching Characteristics ...

UltraScale & UltraScale+ 의 GTH 를 사용하지 않을 경우에 GTH 관련 Pin 들은 어떻게 처리하여야 하나요?

이미지
UltraScale and UltraScale+ 의 GTH 를 사용하지 않을 경우에 GTH 관련 Pin 들은 어떻게 처리하여야 하나요? "UltraScale and UltraScale+ FPGAs 를 사용할 경우 GTH 를 사용하지 않을 경우에 GTH 관련 Pin 들을 어떻게 하여야 하나요?" 라는 개발자분들이 문의를 많이 받습니다. ##1 먼저 UltraScale and UltraScale+ FPGAs 의 GTH 관련 Guide 문서를 보아야 합니다.. 아래 링크는 UltraScale and UltraScale+ FPGAs GTH User Guide 문서랍니다. UG576 (v1.5) - UltraScale Architecture GTH Transceivers 위 문서의 331 페이지의 Table 5-9: GTX/GTH Transceiver PCB Design Checklist 를 자~알 살펴보면 사용하지 않을 경우에 어떻게 하는지에 대한 각 Pin 별 설명이 있어요. Table 5-9: GTH Transceiver PCB Design Checklist ##2 Table 5-9: GTH Transceiver PCB Design Checklist 에서 GTH 를 사용하지 않을 경우에 어떻게 하는지에 대한 설명을 정리하면 다음과 같아요. MGTREFCLK0P If reference pins are not used, leave the associated pin pair unconnected. MGTREFCLK0N If reference pins are not used, leave the associated pin pair unconnected. MGTREFCLK1P If reference pins are not used, leave the associated pin pair unconnected. MGTREFCLK1N If reference pins are not u...

7 Series FPGAs 의 GTX/GTH 를 사용하지 않을 경우, GTX/GTH 관련 Pin 들은 어떻게 처리하여야 하나요?

이미지
7 Series FPGAs 의 GTX/GTH 를 사용하지 않을 경우, GTX/GTH 관련 Pin 들은 어떻게 처리하여야 하나요? "7 Series FPGAs 를 사용할 경우  GTX/GTH  를 사용하지 않을 경우에  GTX/GTH  관련 Pin 들을 어떻게 하여야 하나요?" 라는 개발자분들이 문의를 많이 받습니다. ##1 먼저 7 Series FPGAs 의  GTX/GTH  관련 Guide 문서를 보아야 해요. 아래 링크는 7 Series FPGAs  GTX/GTH  User Guide 문서랍니다. UG476 (v1.12) - 7 Series FPGAs GTX/GTH Transceivers User Guide 위 문서의 316 페이지의 Table 5-7:  GTX/GTH  PCB Design Checklist 를 자~알 살펴보면 사용하지 않을 경우에 어떻게 하는지에 대한 각 Pin 별 설명이 있어요. Table 7-5: GTX/GTH PCB Design Checklist ##2 Table 7-5:  GTH  PCB Design Checklist 에서  GTX/GTH  를 사용하지 않을 경우에 어떻게 하는지에 대한 설명을 정리하면 다음과 같아요. MGTREFCLK0P, MGTREFCLK0N If reference clock input is not used, leave the associated pin pair unconnected. MGTREFCLK1P, MGTREFCLK1N If reference clock input is not used, leave the associated pin pair unconnected. MGTRXP0/MGTRXN0 If a receiver is not used and not biased, connect the associated pin p...

7 Series FPGAs 의 GTP 를 사용하지 않을 경우, GTP 관련 Pin 들은 어떻게 처리하여야 하나요?

이미지
7 Series FPGAs 의 GTP 를 사용하지 않을 경우, GTP 관련 Pin 들은 어떻게 처리하여야 하나요? "7 Series FPGAs 를 사용할 경우 GTP 를 사용하지 않을 경우에 GTP 관련 Pin 들을 어떻게 하여야 하나요?" 라는 개발자분들이 문의를 많이 받아요. ##1 먼저 7 Series FPGAs 의 GTP 관련 Guide 문서를 보아야 해요. 아래 링크는 7 Series FPGAs GTP User Guide 문서랍니다. UG482 (v1.9) - 7 Series FPGAs GTP Transceivers User Guide 위 문서의 235 페이지의 Table 5-14: GTP PCB Design Checklist 를 자~알 살펴보면 사용하지 않을 경우에 어떻게 하는지에 대한 각 Pin 별 설명이 있어요. Table 5-14: GTP PCB Design Checklist ##2 Table 5-14: GTP PCB Design Checklist 에서 GTP 를 사용하지 않을 경우에 어떻게 하는지에 대한 설명을 정리하면 다음과 같아요. MGTREFCLK0P, MGTREFCLK0N If reference clock input is not used, leave the associated pin pair unconnected. MGTREFCLK1P, MGTREFCLK1N If reference clock input is not used, leave the associated pin pair unconnected. MGTRXP0/MGTRXN0 If a receiver is not used, connect the associated pin pair to ground. MGTRXP1/MGTRXN1 If a receiver is not used, connect the associated pin pair to ground. MGTRXP2/MGTRXN2 If a r...

Xilinx System Monitor(XADC) 를 사용하지 않을 경우, XADC 의 각 pin 들은 어떻게 처리하여야 하나요?

Xilinx System Monitor(XADC) 를 사용하지 않을 경우, XADC 의 각 pin 들은 어떻게 처리하여야 하나요? 오늘은 Xilinx System Monitor(XADC) 기능을 사용하지 않는 경우에 XADC 의 각 Pin 들을 어떻게 처리하여야 하나요? 라는 개발자 분들의 문의를 많이 받아요. 오늘은 이 부분을 설명하려고 합니다. (Xilinx System Monitor 는 여러가지 이름으로 표현되고 있어요. XADC 라고도 불리며, SYSMON 이라고도 불리웁니다.) 제일 먼저 Xilinx System Monitor 의 User Guide 문서를 보아야 해요. Xilinx 의 각 Device Family 별로 Xilinx System Monitor(XADC) User Guide 문서가 각각 존재해요. (Xilinx는 문서도 많고.... 어느 문서를 보아야 할지.... 찾기도 힘들고... 참.... 그래요...) ##1 Artix-7, Kintex-7, Virtex-7 에서 XADC 를 사용하지 않는 경우는 아래의 내용을 보세요. 아래의 링크는 7-Series and Zynq XADC User Guide 문서랍니다. 7 Series FPGAs and Zynq-7000 / UG480 (v1.10) - XADC User Guide 위 UG480 문서의 페이지 16~17의 Table 1-1 을 보면 각 Pin 별 사용하지 않을 경우에 대한 처리 내용을 확인할 수 있어요. 정리를 하면 아래와 같아요. VCCADC_0 The pin should be tied to VCCAUX even when the SYSMON is not being used. GNDADC_0 This pin should always be tied to GND even if the XADC is not being used. VREFP_0 This pin should always be connected to GNDA...

XC6SLX75-3FGG676 과 XC6SLX100-3FGG676 은 서로 Pin to pin (Pin compatible) 이 가능한가요?

이미지
XC6SLX75-3FGG676 과 XC6SLX100-3FGG676 은 서로 Pin to pin (Pin compatible) 이 가능한가요? 현재 PCB 는 XC6SLX75-3FGG676 을 기준으로 되어 있어요. 그런데 디자인한 로직 사이즈가 많아져서 로직 사이즈가 더 큰 XC6SLX100-3FGG676 을 사용하려고 해요, 이 때 PCB 수정없이 사용이 가능한가요?  에 대한...이런 비슷한 상황의 개발자 분들의 문의가 참 많아요. 이 부분에 대하여 가능한지를 확인하는 방법을 설명하려고 합니다. ##1 Xilinx Site에서 DS160으로 검색을 하면 아래의 링크 문서를 확인할 수 있어요. Xilinx DS160 Spartan-6 Family Overview 위 문서의 3페이지를 보면 아래의 표를 확인할 수 있어요. 위의 표를 살펴보게 되면, XC6SLX 75 -3FGG 676 의 User IO는 408개이지만, XC6SLX 100 -3FGG 676 의 User IO는 480개가 되네요. 따라서 위의 표를 보면 두 Device간에 User IO의 갯수가 서로 다름을 확인할 수 있어요. 480 - 408 = 72 총 72개의 User IO가 차이가 납니다.. ##2 지금부터, 차이나는 72개의 User IO가 무엇인지의 확인을 진행합니다. 아래의 링크를 클릭하면, Spartan-6 FPGA의 모든 Pin file을 download 받을 수 있는 사이트를 확인할 수 있어요. Spartan-6 FPGA Package Device Pinout Files 아래는 위 링크 사이트에서 발췌한 두 디바이스의 Pin File Download 링크랍니다. 각각 text file로 되어 있어요. XC6SLX75-FGG676  Pinout File XC6SLX100-FGG676  Pinout File 이 두 개의 File을 비교하여 차이나는 72개의 User IO를 살펴보아요....