반응형

FPGA - 프로세서 그리고 데이터의 이동/JESD204 11

4. JESD204 데이터 전송 수행 과정

본 내용과 그림은 TI 사의 JESD204B 설명자료를 참고하였습니다 JESD 204B의 데이터 전송과정이 어떻게 진행되는지를 다음 그림에서 확인할 수 있다. JESD204 TX 모듈과 RX 모듈, 클럭 제너레이터로 구성되어 있다. TX 모듈과 RX 모듈 모두 Transport layer, Link layer, Physical layer로 구성되어 있다는 점은 같으며, 통과하는 layer의 순서가 다르다. JESD204를 지원하는 ADC가 JESD204 TX 모듈을 가지고 있으며 ADC가 보낸 데이터를 수신해야하는 FPGA가 JESD204 RX 모듈을 가지고 있다. JESD204 부분을 구현하면서 알아야할 부분이 Physical layer, Link layer, Transport layer이다. 이 글에..

1. JESD204B의 시작

JESD204 통신의 필요성 JESD204는 ADC가 출력한 데이터 또는 DAC에 입력할 데이터를 FPGA가 손실없이 받거나 또는 보낼 때 이용하는 통신 방식이다. JESD204는 JEDEC이 Data converter(ADC or DAC ...)를 위해서 만든 serial interface이다. jesd204b를 접하게 된 계기는 회사에서 2채널 ADC를 FPGA에 연결한는 업무를 받았을 때였다. 기존의 ADC 칩(~250MHz Sampling rate)과 FPGA는 LVDS라인으로 연결되어 있었다. 또한 비트마다 LVDS lane 1개를 FPGA에 연결했어야 했다. 그림 1처럼.. ADC가 14비트 data converter라면, ADC와 FPGA는 LVDS lane이 14개가 연결되어 있다. 즉 비..

JESD204B - Deterministic latency의 측정

본 문서에서는 Deterministic latency 측정 과정에 대해 나열하였다. 다음과 같은 JESD204B 통신이 구성된 상태에서 Deterministic Latency를 측정하려 한다. Deterministic Latency의 측정 세팅은 다음과 같다. 위 그림에 잘못된 부분이 있는데 Frame cycle = 10 * 2 / 7372.8 Mbps가 맞다. 보드 기판내에서 신호(전파)가 이동하는데 소요시간에 대해서 잠깐 정리해보았다. 자유공간에서 2.5cm(1인치)를 빛이 이동하는데 걸리는 시간은 83ps이다. 그런데 FR4 기판에서 2.5cm를 움직인다면 소요시간은 어떻게 될까? FR4의 유전률은 대략 4.4이다. 그래서 FR4에서 빛의 이동속도 = 자유공간 빛 이동속도 / root(유전율)이다...

JESD204B - Total Link Latency(=Deterministic Latency)의 계산

본 글은 TI사의 JESD204B 문서를 참고하여 작성하였습니다. 용어 정의 TX : JESD204B 송신모듈, ADC 내부 JESD204 모듈 RX : JESD204B 수신모듈, FPGA 내부 JESD204 모듈 본글에서는 ADC와 FPGA간에 JESD204B 통신을 구성하였을 때의 예를 가지고, Total Link Delay Latency를 계산하는 과정에 대해 정리하였다. TX, RX의 LMFC 신호의 정렬 시각 Device clock과 SYSREF 신호가 ADC와 FPGA에 다음과 같이 도착하였다. ADC, FPGA에 도착한 Device clock의 주기, 도착 시각은 각각 다르며, SYSREF 신호도 다른 시각에 도착한다. 그래서 ADC와 FPGA 내부의 LMFC 신호의 정렬 시각은 다르게 된다..

JESD204B - Deterministic latency를 조정할 수 있는 수단

JESD204B 통신을 구성하였을 때 Deterministic latency를 조정할수 있는 수단이 무엇이 있을까? 우선 예시를 들도록 하겠다. TX : JESD204B 송신모듈 RX : JESD204B 수신모듈 1. Link Delay가 작은 경우 LMFC의 주기가 50ns이다. 그리고 RX Lane 각각에 데이터 도착 소요시간이 100ns 이내였다면, RX는 각 lane의 데이터를 buffer에 담고 있다가 LMFC의 주기에 맞추어 ILA(Initial Line Alignment) 이후 다음 단계로 내보낸다. 이 경우에는 total latency가 100ns이다. 2. Link Delay가 큰 경우 LMFC의 주기가 50ns이다. 그리고 RX Lane 각각에 데이터 도착 소요시간을 보았더니, 제일 빨..

JESD204B - SYSREF의 주파수 설정

SYSREF 신호의 주파수를 어떻게 정해야 할까? SYSREF 신호에는 continuous , gapped-periodic , single pulse 모양의 SYSREF signal이 있다. 이번 주제는 single pulse는 제외하고 continuous , gapped-periodic 모양의 sysref signal의 주파수에 대한 내용이다. sysref신호는 LMFC 주파수를 정수로 나눈 주파수 신호이어야 한다. 이것을 다음 수식처럼 정의할 수 있다. f_bitrate는 JESD204B lane의 데이터 전송 속도이다. F는 frame당 octet의 개수이다. K는 multiframe에 들어있는 frame의 개수이다. n은 positive 정수이다. f_sysref의 최대가능 주파수는 f_bitra..

JESD204B - Deterministic latency

본 문서는 Analog Device사의 문서를 보고 작성하였습니다. JESD 204B에서 언급되는 Deterministic latency는 위의 그림에서 Framer to De-framer까지의 소요시간이다. 참고로 ADC가 아날로그 신호를 디지털로 변환하는 시간은 Deterministic latency에 포함되지 않는다. JESD204B의 subclass 1을 지원하는 칩 내부에 frame clock과 multiframe clock이 있다. 이 칩이 SYSREF 신호를 인식하면 SYSREF 신호를 기준으로 frame clock과 multiframe clock을 정렬하여 frame clock과 multiframe clock의 위상이 일치한다. ADC가 샘플링한 데이터들이 ADC 내부 JESD204B송신모..

3.1 JESD204 구현에 필요한 하드웨어

JESD204를 지원하는 ADC를 FPGA와 연결하기 위해 필요한 회로구성은 다음과 같으며, JESD204B Class1을 기준으로 정리하였다. - JESD204를 지원하는 ADC 칩 - JESD204에 필요한 클럭, Sysref 신호를 출력하는 clock generator - JESD 204 RX 모듈이 구현된 FPGA - Transceiver (트랜시버) FPGA의 JESD204 RX 모듈에 트랜시버라는 것이 있다. 트랜시버는 ADC에서 고속으로 넘어오는 신호를 수신할 수 있는 하드웨어다. FPGA에서는 트랜시버가 고속의 신호를 물리적으로 수신한 다음, link layer, transport layer를 거치고, ADC 샘플링 데이터로 변환된다. - JESD204 데이터 전송 내부 프로토콜 JESD2..

2. JESD204 데이터 전송 속도

JESD204를 지원하는 ADC의 데이터시트를 읽으면서 든 의문점은 내가 이 ADC를 사용한다면 출력 데이터 속도는 얼마인가? 였다. JESD204B의 속도의 지원범위는 315Mb/s~ 12.5Gb/s지만 제조사마다 최고 지원속도가 달랐다. AD9250은 2채널 16 비트 ADC로 샘플링속도가 최대 250MHz이며 JESD204B class1을 지원하는 ADC 칩이다. AD9250의 lane당 데이터 속도는 얼마일까? 위 그림은 AD9250의 ADC 1채널에 대해서만 그린 것이다. ADC 내부에는 16비트 ADC와 JESD204 TX 모듈이 있다. - ADC가 250MHz로 샘플링을 수행하면 초당 250MHz X 16 비트의 데이터가 발생 - 발생한 데이터는 8b/10b 인코딩 과정을 수행하는 JESD2..

3.2 JESD204 구현에 필요한 하드웨어 - SYSREF, SYNC

본 문서에서 축약한 단어는 다음과 같다 RX = JESD204B 수신부 TX = JESD204B 송신부 과거의 ADC 칩들이 LVDS신호의 형태로 데이터를 그냥 FPGA에 전달했다. JESD204B가 나온 이후 상황이 달라졌다. JESD204B 통신이 적용된 ADC 칩의 경우 ADC의 출력데이터가 JESD204B 통신 layer TX에 들어간다. 그리고 외부 선로를 지나 FPGA JESD204B 통신 layer RX에 전달이 된다. 즉 과거의 칩들과는 다르게 ADC의 데이터가 거쳐 가는 부분이 많이 생겼다. 이로 인해 ADC의 출력데이터가 FPGA가 인식하는데 소요하는 시간이 들쑥 날쑥할 수 있다. 따라서 이 소요시간을 일정하게 하기 위해서 JESD204B 통신규격은 SYSREF신호를 이용한다. 이 소요..

반응형