Tag: FPGA
All the articles with the tag "FPGA".
- FPGA/ASICUpdated:
Tcl 명령을 여러 줄로 나눠 작성하는 방법
Tcl에서 백슬래시 줄 연결과 중괄호로 묶은 script body의 차이를 구분해 여러 줄 명령을 작성합니다.
- FPGA/ASICUpdated:
Tcl 리스트에서 여러 값을 안전하게 제외하는 방법
제외할 값 목록을 순회하며 원본 Tcl 리스트의 일치 항목을 빼고 나머지 순서와 중복을 유지합니다.
- FPGA/ASICUpdated:
비동기 reset은 왜 해제할 때 동기화해야 할까
비동기 reset은 즉시 assert하고 각 clock domain에서 deassert를 동기화해 reset recovery/removal 문제를 줄입니다.
- FPGA/ASICUpdated:
AXI4 burst에서 AxSIZE와 AxLEN 계산하기
AxSIZE는 beat당 byte 수의 log2, AxLEN은 beat 수 minus one이며 bus width와 4KB boundary 제약도 확인해야 합니다.
- FPGA/ASICUpdated:
WaveDrom으로 clock과 bus timing diagram 그리기
WaveDrom Editor에서 WaveJSON으로 clock, control, bus 값을 표현하고 diagram을 확인하는 짧은 예제입니다.
- FPGA/ASICUpdated:
SystemVerilog 배열을 flat bus로 묶고 byte slice 선택하기
배열 원소를 고정 폭 flat bus에 매핑하고 indexed part-select의 +: 문법으로 byte 단위 slice를 선택합니다.
- FPGA/ASICUpdated:
Verilog 곱셈 연산자 *는 FPGA에서 어떻게 합성될까
Verilog의 * 연산자는 합성 가능하지만 DSP 사용 여부와 결과 폭은 operand, FPGA 자원과 synthesis 설정을 확인해야 합니다.
- FPGA/ASICUpdated:
Vivado FPGA 내부 RAM 구성과 COE 초기화 방법
Vivado에서 추론형 RAM, XPM_MEMORY_SPRAM, Block Memory Generator의 역할을 구분하고 COE 초기값을 적용하는 방법입니다.
- FPGA/ASICUpdated:
Vivado FIFO Generator에서 8-bit, 1024-depth FIFO 설정하기
Vivado FIFO Generator에서 데이터 폭과 깊이, reset, status 옵션을 확인하고 8-bit × 1024-entry FIFO를 구성하는 기준입니다.
-
Vivado에서 MCS 파일을 SPIx4로 만드는 방법
Vivado 7 Series 설계에서 CONFIG_MODE, SPI_BUSWIDTH, CONFIGRATE를 설정하고 write_cfgmem으로 SPIx4 MCS 파일을 만드는 방법입니다.