FPGA Introduction Course Training #03 – Verilog Introduction

YouTube-Channel-Art-Template.png


fpga introduction course training #3 - 1.PNG
– Verilog는 hardware description language이다. 회로를 설계하는 언어라는 점에 유의해야 한다.
– Verilog에서 한 개의 bit가 가질 수 있는 값은 1, 0, X, Z이다.
– Verilog에서 비트열을 표현하려면 3’b001과 같이 표현한다. 3개의 bit를 표현할 때 사용 가능. 16H를 앞에 붙이면 16진수 표현을 나타낸다.
– Verilog는 simulation을 위한 부분과 synthesis을 위한 부분으로 나뉜다. Synthesis 가능한 언어가 simulation 가능한 언어의 subset이다.
– wire는 모듈간 연결을 위해 사용됨. reg는 always block에서 사용되는 변수이다.

fpga introduction course training #3 - 2.PNG
– Verilog에서 한 개의 module을 module과 endmodule 사이에 정의한다.
– 모듈 이름 뒤에 입출력 포트를 선언하고, begin과 end 사이에 동작을 정의한다.

fpga introduction course training #3 - 3.PNG
– 위와 같은 방식으로 1bit adder를 정의할 수 있다.

fpga introduction course training #3 - 4.PNG
– 또는 위와 같은 방식으로 1bit adder를 정의할 수 있다.

fpga introduction course training #3 - 5.PNG
– 위와 같은 방식으로 MUX를 정의할 수 있다. 중요한 것은, combinational circuit을 구성할 때 모든 경우를 생각해야 한다는 것이다. 기본적으로 할당할 값을 정해주지 않으면 합성할 때 flip-flop이나 latch가 발생한다 (이전의 값을 유지해주기 위해).

fpga introduction course training #3 - 6.PNG
– 또는 위와 같은 방식으로 MUX를 정의할 수 있다.

fpga introduction course training #3 - 7.PNG
– 이 강좌에서는 ALU를 설계하는 실습을 함. Parameter를 사용해, bit vector의 크기를 쉽게 조절할 수 있도록 한다.

Advertisements
Tagged with: , , , , , , , , , , , , , , , , , , , , , , , , ,
Posted in FPGA

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

누적 방문자 수
  • 93,229 hits
%d bloggers like this: