Tag: RTL
All the articles with the tag "RTL".
- FPGA/ASICUpdated:
SystemVerilog에서 rising edge를 한 clock pulse로 만들기
동기화된 level 신호의 이전 값을 저장해 rising edge에 한 cycle 동안 유지되는 pulse를 만드는 방법입니다.
- FPGA/ASICUpdated:
AXI4 burst에서 AxSIZE와 AxLEN 계산하기
AxSIZE는 beat당 byte 수의 log2, AxLEN은 beat 수 minus one이며 bus width와 4KB boundary 제약도 확인해야 합니다.
- FPGA/ASICUpdated:
SystemVerilog 배열을 flat bus로 묶고 byte slice 선택하기
배열 원소를 고정 폭 flat bus에 매핑하고 indexed part-select의 +: 문법으로 byte 단위 slice를 선택합니다.
- FPGA/ASICUpdated:
SystemVerilog package를 공유할 때 compile order 확인하기
SystemVerilog package에 공통 type과 상수를 정의하고, scoped import와 compile order를 관리하는 기본 예제입니다.
- FPGA/ASICUpdated:
Verilog case 문에서 default와 latch를 함께 확인하는 방법
Verilog case와 if-else의 선택 기준, 조합 블록의 기본 할당, default branch로 latch를 피하는 방법을 정리합니다.
- FPGA/ASICUpdated:
Verilog 숫자 literal과 signed vector의 폭 확인하기
Sized literal, signed 선언, 부호 확장과 잘림을 확인해 Verilog 산술에서 의도한 값과 폭을 유지하는 방법입니다.
- FPGA/ASICUpdated:
Verilog parameter는 named override로 지정하고 defparam은 피하기
재사용 모듈의 폭과 설정값은 parameter로 노출하고, 인스턴스에서는 이름이 있는 parameter override를 사용하는 기준입니다.
- FPGA/ASICUpdated:
Verilog blocking과 non-blocking은 언제 나눠 써야 하나
Verilog 조합회로에는 blocking 할당을, clock 기반 순차회로에는 non-blocking 할당을 사용하는 이유와 주의점을 정리합니다.