[Verilog프로그래밍]D래치, 플리플롭, shift register

1. [Verilog프로그래밍]D래치, 플리플롭, .hwp
2. [Verilog프로그래밍]D래치, 플리플롭, .pdf
[Verilog프로그래밍]D래치, 플리플롭, shift register
1. 목적
Verilog의 연속할당문을 사용한 래치 설계 방법과 always 문을 사용한 동작적 모델링 방
법의 래치, 플립플롭 설계 방법을 익히고 이를 간단한 회로의 설계에 적용한다.
2. 기초지식
- feedback이 있는 dataflow 모델링 방법
동작적 모델링에서 회로의 동작은 부울함수와 수식으로 기술 할 수도 있고 알고리즘과 같은 추상적인 표현을 사용하여 나타낼 수도 있다. 그 중에서 부울함수와 같은 수식으로 기술하는 모델링을 data flow modeling이라 한다. feedback 같은 반복적으로 수행하는 경우 always문을 사용할 수 있다.
- Verilog의 동작적 모델링 방법
프리미티브 게이트나 기존 설계된 모듈을 서로 연결하여 회로를 만드는 구조적 모델링과는 다르게 회로가 수행하는 기능을 기술한다. 회로의 입력과 출력나의 관계를 기술하고, 회로의 내부와 물리적 구현에 대한 상세한 사항을 기술하지 않는다. 동작적 모델링은 구조적 모델링과 함께 사용할 수 있다. 구조적 모델링 방법은 설께된 하위 모듈을 사용하여 모델링하는 상휘 수준의 모델링에 많이 사용 된다.
- always 문, event control 방법
always문은 반복조건이 만족할 때마다 문장을 반복하여 수행하며 사용 형식은
always 반복조건
문장;
always 반복조건 begin
문장;
문장;
...
end
과 같다. 실행되는 문장이 여러 개이면 begin과 end를 사용하여 블록으로 설정해야 하며 이 문장들은 순차적으로 실행된다.
- 조건문
순차처리문 내에서는 보통의 프로그래밍 언어에서처럼 조건문과 반복문을 사용할 수 있다. 조건문에는 if문과 case문 등이 있다.
- blocking 할당문과 nonblocking 할당문
순차처리문에서 사용하는 할당문(‘=’)은 순차적으로 실행되므로 순서에 영향을 받는다. 순차할당문은 앞에 있는 할당문의 수행이 완료되어야 다음 문장이 수행되므로 blocking할당문이라고 한다.
....