1. behavioral design을 하는 이유.
machine point of view
your point of view
1.1 가끔은 concurrent statement를 직접, 바로 짤 수 있다.
그러나, 추상화 단계가 높아질 수록 concurrent를 다루기 어렵다.
1.2 그래서 sequential한 동작을 묘사할 방법이 필요하다.
=> Sequential = 우리의 뇌가 동작하는 방식이므로,
=> process문이 있다. process문은 sequential 구문의 모음이다.
2. behavioral 동작 표현방법 = Process 문.
2.1. process는 변수'만' 선언한다(signal 아님)
- 변수는 process 구문 안에서만 유지된다.
- 변수는 구문 밖에서 보이지 않느다.
2.2 변수선언 방법
variable variable-names : variable-type ;
- 값 할당 연산자 := (C++ 처럼 <= 아님)
2.3. process 문의 동작방식
; 프로세스는 동작중이면서, 정지(suspended)중이다.
- 처음엔 정지상태이다.
- sensitivity list의 signal의 값이 변하면, process문은 처음부터 끝까지 다시 실행한다.
3. process문 예시
3.1 The prime-number detector example
; 소수(;약수과 1과 자기자신)판별기
4. process문의 begin~ end
= Sequential 구문들 [Sequential statements]
4.1 if-then-else statement
if-then-else statement 문법
if-then-else statement 사용예시
4.2 case statement
case문 문법
case문 예시
4.3 loop, for, while statements
loop, for, while 문법
loop, for, while 예시
[1.1 Sometimes, it is possible to directly describe a logic behavior using a concurrent statement Level of abstraction becomes higher ]
[1.2. We need to have a good way to describe the sequential behavior . because your brain works that way!
process statement is a collection of sequential statements]
[2.1 A process may not declare signals, only variables
Variable keeps track of the state within a process and is not visible outside.
2.2 variable variable-names : variable-type;
Assignment operator “:=“, not “<=“]
[2.3 A process is always either running or suspended
Initially, it is suspended;
Any signal in the sensitivity list changes value, the process resumes execution from the start to the end.]
출처
1. Digital Design: Principles and Practices, Fourth Edition, John F. Wakerly
2. KOCW. 디지털시스템설계. 아주대학교. 양회석. http://www.kocw.net/home/search/kemView.do?kemId=1145013
'전공지식정리 > 디지털시스템설계' 카테고리의 다른 글
VHDL 코드 개념, 구조 (0) | 2020.12.08 |
---|---|
4. Timing과 Simulation (0) | 2020.12.08 |
디자인스타일2. Dataflow Design (0) | 2020.12.08 |
디자인 스타일 1. Structural design (0) | 2020.12.08 |
1.HDLs (0) | 2020.12.07 |