ONLINE CLASS

System Verilog

COURSE FOCUS

이 강의에서 배우는 핵심 실무

System Verilog로 클록에 맞춰 동작하는 RTL을 설계하고 테스트벤치의 기대값과 실제값을 비교하는 과정입니다. 비트 폭·부호 연산과 조합·순차 블록을 정리한 뒤 FSM, UART·SPI·I²C, FIFO, 메모리 맵 레지스터와 CDC를 순서대로 다룹니다. 이동평균 필터와 Yosys 합성에서는 연산 범위와 자원 리포트를 확인합니다. 이어 VCD 파형·assertion·scoreboard로 오류 시점과 데이터 순서를 추적하고, 경계조건·무작위 테스트·cocotb와 회귀검증으로 RTL의 동작을 점검합니다. 설계 코드와 실행 로그·파형을 함께 정리하며 재현 가능한 검증 결과를 만드는 것이 학습 목표입니다.

?

수강 전 꼭 확인하세요

수강 전 자주 묻는 내용을 간단히 안내드립니다.

Q초보자도 교재 없이 수강 가능한가요? 프로그램 정보는?
A

네, 영상과 실습자료로 쉽게 학습할 수 있습니다. 알지오는 원격평생교육원으로 프로그램 관련 정보는 제공하지 않습니다.

◆
기업이 선택한 신뢰 강의

검증된 커리큘럼과 전문 강사진으로 높은 만족도를 제공합니다.

자세히 보기  >
♥
수강료 일부는 사회환원에 사용됩니다.

작은 나눔이 더 나은 내일을 만듭니다.

자세히 보기  >
REAL REVIEW

수강생 리얼후기!

실제 수강생의 학습 경험을 확인해 보세요.

수강후기를 불러오는 중입니다.

RECENT Q&A

최근 수강질문

최근 등록된 수강질문을 작성순서대로 확인해 보세요.

ALZIO DEEP GUIDE

System Verilog 공개 목차 학습 가이드

공개 목차의 RTL 비트 폭과 부호 연산 설계 · always_comb·always_ff와 래치 방지 · Reset과 Clock Enable 설계 · 명령 처리 FSM과 오류 복구 · UART 송신기와 8N1 프레임에서 검증·복습으로 이어지는 학습 흐름을 확인하세요.

공식 기술정보 확인30강 커리큘럼 연결2026 현재 기술정보

System Verilog · 30강 · 10시간 2분

01

공개 목차 구성과 선수 지식

디지털 논리와 Verilog의 모듈·클록·레지스터 개념을 익힌 학습자를 위한 과정입니다. 현재 공개 목차는 기본 RTL 설계에서 테스트 계획·파형·자동 비교·assertion·scoreboard·커버리지와 회귀검증으로 이어집니다.

프로그램·시뮬레이터의 고정 버전은 공개 목차에 명시되어 있지 않습니다. 17강에 Yosys가 명시되며, 특정 FPGA 보드나 전체 센서 허브 통합 완성이 제공된다고 단정하지 않습니다.

02

1~4강: 비트 폭·조합과 순차 회로·상태 제어

1강은 8·16비트 signed/unsigned와 연산 확장, 캐리·부호 오버플로를 기대값표·파형으로 비교합니다. 2강은 always_comb·always_ff, blocking·nonblocking 대입과 기본 대입·분기 누락의 래치를 다룹니다.

3강은 리셋 극성과 우선순위, 동기·비동기 리셋과 Clock Enable로 카운터 정지·재개를 연습합니다. 4강은 enum으로 IDLE·RECV·EXEC·ERR 상태를 정의하고 정상 명령·잘못된 명령·timeout의 복귀 경로를 확인합니다.

03

5~7강: UART 송수신과 오류 프레임

5강은 8N1, baud tick, LSB 우선 순서와 송신 FSM을 구성합니다. 6강은 입력 동기화·중앙 샘플링으로 바이트를 복원하고 정지비트와 framing error를 검사합니다.

7강은 TX·RX 루프백과 연속 바이트를 비교하고, 8E1 짝수 패리티로 확장해 오류를 주입합니다. 연습 결과는 정상·패리티 오류·정지비트 오류 프레임의 파형과 수신값으로 비교할 수 있습니다.

04

8~10강: SPI 모드와 I²C 주소·응답

8강은 CS·SCLK·MOSI·MISO와 SPI Master Mode 0의 데이터 시프트·응답 연결을 다룹니다. 9강은 CPOL·CPHA, Mode 0·3과 CS 유지 연속 전송을 비교합니다.

10강은 I²C의 SDA low·release, START·STOP, 7비트 주소와 R/W, ACK·NACK 및 무응답 종료를 연습합니다. 이 회차의 범위는 주소 전송과 응답 처리이며 완전한 I²C 장치 드라이버 전체로 확대해 해석하지 않습니다.

05

11~12강: FIFO 순서 보존과 경계조건

11강은 8×8 동기식 FIFO의 count·포인터·empty·full·wraparound를 연결합니다. 12강은 동시 읽기·쓰기와 full·empty 경계 요청의 처리 정책을 비교합니다.

저장공간을 설계한 뒤 점유량과 데이터 순서를 대조하고 overflow·underflow 회귀 조건을 정리하는 것이 이 구간의 학습 목표입니다.

06

13~15강: 레지스터·파이프라인·클록 경계

13강은 CTRL·STATUS·DATA·ID 메모리 맵에서 읽기 전용·쓰기 가능 필드, 잘못된 주소와 리셋 readback을 다룹니다. 14강은 valid·ready, 2단 파이프라인과 backpressure에서 data·valid 유지 및 순서 보존을 연습합니다.

15강은 2FF 레벨 동기화와 요청·응답 handshake로 짧은 펄스를 전달합니다. 다중 비트 전송과 검증 한계도 목차에 포함되므로 단일 비트 동기화와 다중 비트 CDC를 같은 방식으로 이해하지 않도록 복습하세요.

07

16강: 이동평균 필터와 누산기 범위

8비트 센서값 4샘플을 평균내는 명세에서 10비트 누산기와 최대합을 계산합니다. 초기 샘플 valid, 정수 나눗셈의 절삭·반올림, 최댓값·급변·리셋 입력을 검사합니다.

센서 데이터 전처리에 필요한 연산 범위와 초기화 조건을 읽고, 입력값에 대한 평균 결과를 비교하는 연습으로 활용할 수 있습니다.

08

17~18강: 합성 리포트와 공용 타입

17강은 Yosys에서 counter·FIFO를 대상으로 read·hierarchy·proc·opt·stat를 실행하고 셀·메모리·래치 경고를 읽습니다. 합성과 기능 시뮬레이션을 구분하고 실행 명령·도구 버전·리포트를 보관합니다.

18강은 typedef·enum·packed struct·package와 컴파일 순서, 포트 폭·형식 및 리팩터링 전후 기능 비교를 다룹니다. 이 과정의 적용 분야는 통신 제어, 버퍼링, 센서 데이터 처리용 RTL의 구현과 검토입니다.

09

공통 검증 1~3강: 재현 가능한 테스트와 자동 비교

공통 검증 1강은 DUT·테스트벤치·입력·기대값과 요구사항별 테스트 ID를 정하고 정상·경계·오류 조건을 나눕니다. 기능 시뮬레이션, 합성, 실물 확인을 구분하며 미실행·실패·통과를 따로 기록합니다.

2강은 소스·실행·결과 폴더, 도구와 Python 의존성 버전, 상대경로와 실행 인자를 정리합니다. 3강은 독립 참조 모델과 Expected·Actual 비교기를 만들고 의도적인 버그로 오류 검출 여부를 확인합니다.

학습 결과는 입력·기대값·관측값·실패 시점·파형·실행 명령을 묶어 설명하는 것입니다. 공개 목차만으로 제조사 도구에서 실행한 화면인지 독자 시뮬레이션 화면인지 확정할 수 없으며, 보드 구현이나 타이밍 클로저 완료를 보장하지 않습니다.

10

수강 전 확인할 질문

어떤 결과를 연습하나요? UART 송수신·루프백, SPI 전송, I²C 주소 응답, FIFO, 제어 레지스터, 파이프라인과 이동평균 필터를 목차별로 연습합니다. 하나의 완성된 제품 제공 여부와는 구분합니다.

특정 버전이나 보드가 필요한가요? 공개 목차에 고정 버전·보드명이 없으므로 임의의 제품을 필수환경으로 지정하지 않습니다. Yosys의 SystemVerilog 지원 범위는 사용하는 frontend와 버전에 따라 공식 문서를 확인하세요.

UVM이나 클래스 기반 검증도 포함되나요? 기본 RTL 18강 목차에는 해당 주제가 명시되어 있지 않습니다. 이 강좌는 RTL 통신·센서 처리 범위로 안내합니다.

11

학과·전문허브와 다음 학습

디지털 시스템설계 학과와 HDL 전문허브에서 Verilog·VHDL·Vivado 과정의 차이를 비교하세요. 언어·RTL 기초를 복습하려면 기존 Verilog Vivado 과정의 목차를 함께 확인할 수 있습니다.

기존 Verilog·VHDL Vivado 및 ISE 과정은 도구 환경과 기본 회로 프로젝트의 목차를 비교하는 출발점입니다. 이 과정은 SystemVerilog 비트 폭·통신·버퍼·CDC 조건에 집중하며 UVM·클래스 검증 전체 과정으로 소개하지 않습니다.

디지털 시스템설계 학과

HDL·계측 분야의 학습 경로를 비교합니다.

자료 보기 →

HDL 전문허브

Verilog·VHDL·System Verilog 학습 순서를 확인합니다.

자료 보기 →

Verilog Vivado 기초+실무

Verilog 문법과 Vivado의 기존 공개 목차를 확인합니다.

자료 보기 →

VHDL 스마트 제어·통신 설계

GHDL·SPI Slave·PWM·watchdog와 교차로 통합 목적을 비교합니다.

자료 보기 →
12

현재 공개 목차에서 확인할 학습 순서

RTL 비트 폭과 부호 연산 설계 · always_comb·always_ff와 래치 방지 · Reset과 Clock Enable 설계 · 명령 처리 FSM과 오류 복구 · UART 송신기와 8N1 프레임 · UART 수신기와 중앙 샘플링 · UART 루프백과 패리티 오류 검출 · SPI Master Mode 0 설계 · SPI Mode 0·3과 연속 전송 · I²C 주소 전송과 ACK·NACK 처리 · 동기식 FIFO와 포인터 설계 · FIFO 동시 읽기·쓰기와 경계조건 · 메모리 맵 레지스터 제어 · valid·ready와 데이터 파이프라인 · CDC 동기화와 펄스 전달 · 이동평균 필터와 연산 범위 보호 · Yosys 합성과 자원 리포트 읽기 · typedef·enum·구조체로 RTL 정리 · RTL 검증 계획과 증거 설계 · 재현 가능한 검증 프로젝트 · Expected·Actual 자동 비교 · VCD 파형과 첫 오류 시점 추적 · Assertion과 프로토콜 규칙 검사 · Seed를 고정한 무작위 테스트 · Scoreboard와 데이터 순서 검증 · 경계조건과 커버리지 매트릭스 · cocotb로 UART 검증 자동화 · 합성 경고와 자원 변화 분석 · 회귀검증 실행과 실패 로그 수집 · RTL 검증 포트폴리오 완성

개별 주제의 실행 환경과 결과 확인 방식은 각 회차의 실제 설명을 확인하세요. 공개 목차를 넘어선 제공 파일이나 결과물을 임의로 가정하지 않습니다.

실제 공개 강좌소개·목차와 공통 공개목록을 근거로 안내합니다. 정규 동영상 회차와 회원용 CBT 문항 수는 별도로 집계하며, 프로그램 실행 결과나 수강 결과를 보장하지 않습니다.

공식 기술정보 확인일: 2026-10-06 · 강좌 업데이트일을 의미하지 않습니다.

System Verilog System Verilog
  • System Verilog

  • 강의구성
  • (30강) 전체 : 10시간 2분|평균 : 20분3초
  • 이용기간/강사
  • 2개월
    알지오 R&D [IT]
  • 증빙가능
  • 수료증, 수강증, 학습진도
  • 수강료
  • 330,000원할인165,000원
?

수강 전 꼭 확인하세요

수강 전 자주 묻는 내용을 간단히 안내드립니다.

Q 초보자도 교재 없이 수강 가능한가요? 프로그램 정보는?
A

네, 영상과 실습자료로 쉽게 학습할 수 있습니다. 알지오는 원격평생교육원으로 프로그램 관련 정보는 제공하지 않습니다.

  • 01.25분 RTL 비트 폭과 부호 연산 설계
    같은 비트가 다른 숫자가 되는 이유와 오버플로 처리
    8·16비트와 signed/unsigned 비교, 캐리와 부호 오버플로 구분, 피연산자 확장 후 덧셈하기, 최댓값·최솟값·-1 경계값 확인, 기대값표와 파형 대조
  • 02.26분 always_comb·always_ff와 래치 방지
    조합회로와 순차회로를 분리해 의도한 하드웨어 만들기
    조합·순차 블록의 역할 나누기, blocking·nonblocking 대입 비교, else 누락으로 래치 재현하기, 기본 대입과 분기 보완하기, Lint 경고와 수정 파형 비교
  • 03.24분 Reset과 Clock Enable 설계
    클록을 유지하면서 회로를 초기화하고 동작 멈추기
    리셋 극성과 우선순위 정하기, 동기·비동기 리셋 시점 비교, enable로 카운터 정지·재개, 비동기 리셋 해제 동기화 원리, 리셋·정지·최댓값 복귀 확인
  • 04.24분 명령 처리 FSM과 오류 복구
    수신·실행·시간초과를 상태 전이로 제어하기
    명령 처리 요구사항과 상태표, enum으로 IDLE·RECV·EXEC·ERR 정의, 정상 명령 수신과 실행, 잘못된 명령·timeout 처리, 리셋과 오류 복귀 경로 확인
  • 05.25분 UART 송신기와 8N1 프레임
    한 바이트를 시작비트·데이터·정지비트로 전송하기
    8N1과 baud tick 계산, 0xA5의 LSB 우선 비트 순서, START·DATA·STOP 송신 FSM, busy·done과 연속 요청 처리, 프레임 길이와 송신 파형 확인
  • 06.23분 UART 수신기와 중앙 샘플링
    시작비트를 찾고 직렬 데이터를 바이트로 복원하기
    RX 입력 동기화와 시작 검출, 16배 tick과 비트 중앙 찾기, 데이터 8비트 순서대로 조립, 정지비트와 framing error 검사, 위상차·짧은 잡음 입력 비교
  • 07.24분 UART 루프백과 패리티 오류 검출
    8N1 통합에서 8E1 확장까지 정상·오류 프레임 비교
    8N1 TX·RX 루프백 연결, 바이트 연속 전송과 수신 비교, 8E1 짝수 패리티 생성·검사 확장, 패리티·정지비트 오류 주입, 오류 프레임 폐기와 재수신 확인
  • 08.24분 SPI Master Mode 0 설계
    네 개 신호로 데이터를 동시에 보내고 받기
    CS·SCLK·MOSI·MISO 역할, Mode 0의 idle과 샘플 에지, 첫 데이터 준비와 8비트 시프트, 가상 slave의 응답 연결, CS 구간·송수신 순서 확인
  • 09.25분 SPI Mode 0·3과 연속 전송
    클록 극성·위상을 바꾸고 CS 유지 전송 구현하기
    CPOL·CPHA와 두 모드 비교, Mode 0·3의 첫 비트 준비, 모드별 샘플·시프트 에지 선택, CS 유지 상태에서 바이트 이어 보내기, 동일 데이터의 모드별 결과 비교
  • 10.25분 I²C 주소 전송과 ACK·NACK 처리
    SDA를 놓아 주는 동작으로 공유 버스 이해하기
    오픈드레인과 SDA low·release, SCL high에서 START·STOP 만들기, 7비트 주소와 R/W 전송, 9번째 클록의 ACK·NACK 읽기, 무응답 종료와 버스 해제 확인
  • 11.24분 동기식 FIFO와 포인터 설계
    8칸 버퍼에 데이터를 저장하고 순서대로 꺼내기
    8×8 저장공간과 count 정의, 쓰기·읽기 포인터 이동, empty·full 판정과 허용 조건, 포인터 wraparound 확인, 입출력 순서와 점유량 대조
  • 12.25분 FIFO 동시 읽기·쓰기와 경계조건
    가득 찼을 때와 비었을 때 데이터 손실 막기
    empty에서 읽기 요청 처리, full에서 쓰기 요청 처리, 중간 점유량의 동시 read·write, full·empty 경계의 동시 요청 정책, 순서보존·overflow·underflow 회귀
  • 13.25분 메모리 맵 레지스터 제어
    주소로 설정을 쓰고 상태를 읽는 제어창 만들기
    주소·데이터·읽기·쓰기 규칙, CTRL·STATUS·DATA·ID 맵 정의, 읽기 전용과 쓰기 가능한 필드, 잘못된 주소·동시 요청 처리, 리셋 기본값과 readback 확인
  • 14.24분 valid·ready와 데이터 파이프라인
    받을 준비가 안 된 구간에서도 데이터를 보존하기
    valid와 ready의 전송 성립 조건, 2단 파이프라인과 저장 레지스터, backpressure로 흐름 멈추기, stall 중 data·valid 유지, 지연·처리량·순서보존 비교
  • 15.24분 CDC 동기화와 펄스 전달
    서로 다른 클록 사이에서 신호를 전달하는 원리
    두 클록의 주기·위상 차이, 단일 비트 레벨의 2FF 동기화, 짧은 펄스가 사라지는 조건, 요청·응답 handshake로 펄스 전달, 다중 비트 전송과 검증 한계
  • 16.24분 이동평균 필터와 연산 범위 보호
    네 개 센서값을 평균내고 누산기 넘침 방지하기
    8비트 4샘플 평균의 명세, 10비트 누산기와 최대합 계산, 초기 4샘플 전의 valid 처리, 정수 나눗셈의 절삭·반올림 비교, 최댓값·급변·리셋 입력 검사
  • 17.24분 Yosys 합성과 자원 리포트 읽기
    RTL이 논리셀로 바뀌는 과정과 결과 수치 해석하기
    합성과 기능 시뮬레이션 구분, 합성 가능한 counter·FIFO 소스 준비, read·hierarchy·proc·opt·stat 실행, 셀·메모리·래치 경고 해석, 명령·도구 버전·리포트 보관
  • 18.24분 typedef·enum·구조체로 RTL 정리
    명령과 상태 신호를 공용 타입으로 묶어 재사용하기
    V04의 enum을 공용 타입으로 옮기기, packed struct로 명령·상태 묶기, package와 파일 컴파일 순서, 모듈 포트의 폭·형식 맞추기, 리팩터링 전후 기능 비교
  • RTL 시뮬레이션·자동검증·디버깅
  • 01.15분 RTL 검증 계획과 증거 설계
    무엇을 확인했는지 설명할 수 있는 테스트 계획 만들기
    DUT·TB·입력·기대값 정의, 기능 시뮬레이션·합성·실물 구분, 요구사항별 테스트 ID 부여, 정상·경계·오류 조건 나누기, 미실행·실패·통과 상태 정의
  • 02.15분 재현 가능한 검증 프로젝트
    버전·명령·입력값을 고정해 같은 실험 반복하기
    소스·TB·실행·결과 폴더 구성, 도구·Python·의존성 버전 기록, 상대경로·실행 인자 정리, 작업 사본과 결과 폴더 분리, 깨끗한 경로에서 재실행 점검
  • 03.13분 Expected·Actual 자동 비교
    설계와 독립 모델을 나란히 계산해 오류 찾기
    작은 DUT의 요구사항 정하기, 독립 참조 모델 작성, 자극 적용과 안정 후 샘플링, 의도적 버그로 비교기 점검, SV·VHDL 테스트를 각각 실행
  • 04.14분 VCD 파형과 첫 오류 시점 추적
    시간축을 확대해 잘못된 비트와 원인 신호 찾기
    VCD 시간 단위·계층 읽기, 클록 에지와 샘플링 단계 확인, UART·SPI 트랜잭션 구간 표시, 첫 불일치에서 원인 신호 추적, 주석 시간과 원본 파형 대조
  • 05.13분 Assertion과 프로토콜 규칙 검사
    위반이 발생한 클록에서 실패를 드러내기
    조건·가정·기대 동작 구분, FIFO full·empty 동작 검사, stall 중 data·valid 안정 검사, 리셋·미정의 초기 상태 처리, 정상·의도적 위반 양쪽 확인
  • 06.14분 Seed를 고정한 무작위 테스트
    다양한 입력을 만들고 실패한 순서를 다시 재현하기
    Python 난수 생성과 seed 기록, 유효 입력·오류 입력 제약 구분, burst·idle·backpressure 생성, 실패 seed와 입력 시퀀스 저장, 동일 환경에서 실패 재현
  • 07.11분 Scoreboard와 데이터 순서 검증
    누락·중복·순서 뒤바뀜을 자동으로 검출하기
    트랜잭션 ID와 기대 큐, 수용된 입력만 scoreboard에 등록, 출력 수신과 기대값 비교, 누락·중복·순서 오류 주입, 지연 변동·flush 정책 처리
  • 08.14분 경계조건과 커버리지 매트릭스
    테스트를 많이 돌리는 것과 필요한 조건을 채우는 것 구분
    요구사항별 시나리오 행 만들기, full·empty·wrap·동시 접근 분류, 리셋 중 전송·timeout 경계 추가, 정의·실행·통과 건수 분리, 미실행 조건을 추가 테스트로 연결
  • 09.12분 cocotb로 UART 검증 자동화
    Python 드라이버·모니터로 직렬 프레임 확인하기
    지원 시뮬레이터·고정 버전 조합, cocotb 클록·트리거·샘플링, 8N1 TX 비트 모니터 작성, RX 자극과 framing error 검사, 8E1 확장 모듈의 parity 확인
  • 10.13분 합성 경고와 자원 변화 분석
    코드 수정이 회로 구조와 기능에 주는 영향 분리하기
    Verilog DUT와 합성 스크립트, 래치·폭·미사용 신호 경고, 같은 조건에서 수정 전후 stat 비교, 기능 회귀검증 별도 수행, 도구·frontend·옵션·로그 기록
  • 11.14분 회귀검증 실행과 실패 로그 수집
    한 번의 명령으로 테스트를 돌리고 실패를 놓치지 않기
    테스트 목록과 실행 순서, PowerShell·Python 실행기 연결, 빌드 실패·timeout·assert 실패 처리, 개별 로그·seed·파형 경로 수집, 전체 실패 종료와 요약 보고
  • 12.15분 RTL 검증 포트폴리오 완성
    센서 허브·교차로 사례를 재현 가능한 증거로 묶기
    작은 DUT에서 통합 프로젝트로 확장, 센서 허브·교차로 독립 실행, 요구사항·로그·파형 연결, 실패·수정·재검증 이력 정리, 배포 파일과 재실행 안내 최종 점검

강의목록 다운로드                        1:1 강의 질문&답변






도움이 필요하신가요?
💬
알지오 학습·수강 도우미
운영진이 확인한 안내를 자세히 보고, 필요하면 바로 상담하세요.
상담 상태 확인 중