본문 바로가기

verilog

Verilog : UDP (user-defined primitve) 이 포스팅은 제 개인적인 공부를 저장 및 복습하기 위해서 올리는 글입니다. 개인적인 정리기 때문에 저의 잘못된 이해가 섞여있을수도 있는 점 알려드립니다. 너무 맹신하지는 말아 주시기 바랍니다. UDP 란 내가 만들고 싶은 게이트를 만들어내는 것! UDP 포트의 규칙 UDP 포트 출력신호는 단 하나이고 입력은 최대 10개까지 만들 수 있다. 첫 번째 신호가 항상 출력이고 그 다음의 나머지 신호들의 입력이다. 스칼라 신호만 허용되고 벡터 신호는 허용되지 않는다. UDP는 양방향(inout) 신호를 허용하지 않는다. 순차적 UDP는 출력 포트에 대한 reg 자료형 선언을 추가로 해야한다. UDP에서 사용하는 특수 기호 상승 예지, don’t-care 조건 등 특수한 기호를 사용 할 수 없다.기호해석주석00 상.. 더보기
Verilog : 게이트 이 포스팅은 제 개인적인 공부를 저장 및 복습하기 위해서 올리는 글입니다. 개인적인 정리기 때문에 저의 잘못된 이해가 섞여있을수도 있는 점 알려드립니다. 너무 맹신하지는 말아 주시기 바랍니다. 게이트 기본 요소 (primitive) 게이트 기본 요소 (gate primitive)는 버퍼 (buffer)와 인버터 (invertor)를 제외하고 여러 입력과 한 개의 출력을 갖는다. 그에 반하여 버퍼와 인버터는 여러 개의 출력과 한 개의 입력을 갖는다. 인수의 순서는 출력이 먼저 나오고 그 다음 입력이 나온다. 게이트설명사용 예orN입력 ORor(out, in1, in2, ..., inN)norN입력 NORnor(out, in1, in2, ..., inN)andN입력 ANDand(out, in1, in2, ... 더보기
Verilog : 연산자 이 포스팅은 제 개인적인 공부를 저장 및 복습하기 위해서 올리는 글입니다. 개인적인 정리기 때문에 저의 잘못된 이해가 섞여있을수도 있는 점 알려드립니다. 너무 맹신하지는 말아 주시기 바랍니다. 연산자 (operator)비트에 관한 연산자 (Bitwise Operator) 각 비트에 대해서 각각 연산이 가해지지 때문에 비트에 관한 연산자 (bitwise operator)라고 한다. 각각의 논리 기능을 하는 게이트로 합성된다. 함수연산자NOT~AND&OR|XOR^XNOR~^ 혹은 ^~ wire [3:0] a, b, c;wire [3:0] d_and, e_and, d_or, e_or, d_xor, e_xor;assign a = 4’b1010;assign b = 4’b1100;assign c = 4’bxzxz;.. 더보기
Verilog : 모듈가져오기 이 포스팅은 제 개인적인 공부를 저장 및 복습하기 위해서 올리는 글입니다. 개인적인 정리기 때문에 저의 잘못된 이해가 섞여있을수도 있는 점 알려드립니다. 너무 맹신하지는 말아 주시기 바랍니다. 모듈 가져오기(instantiation) 이제 반가산기를 기본 요소로 모듈 가져오기 (instantiation)를 해서 전가산기(full adder)를 선계하는 구조적 설계의 예를 보인다. 이미 설계된 모듈을 가져오는 (instantiate) 방법은 다음과 같이 위치에 의한 연결(positional association)를 하는 내연적 (implicit) 방법과 이름에 의한 연결 (named association)을 사용하는 외연적(explicit) 방법이 있다. 내연적 방법 (포트 순서 즉 의치에 의해서 연결) .. 더보기
Veriliog : 상수 선언, 모듈, 포트 이 포스팅은 제 개인적인 공부를 저장 및 복습하기 위해서 올리는 글입니다. 개인적인 정리기 때문에 저의 잘못된 이해가 섞여있을수도 있는 점 알려드립니다. 너무 맹신하지는 말아 주시기 바랍니다. 상수 (Constant) 선언하기 [파라미터(parameter)] 모듈 내에서 상수(constant)를 정의하는 수단이다. 회로의 비트 크기 또는 지연 값 등과 같이 자주 사용하는 상수 (constant)를 정의하기 위해 pararmeter을 사용해서 정의한다. C언어의 #define ABC 10 과 비슷한 표현이다. 변수로는 사용할 수 없으며, 파라미터의 값들은 컴파일할 때 자동적으로 매칭시켜준다. 파라미터를 사용하면 값 편집이 용이해진다. 자료형과 범위지정을 가질 수 있는데 범위가 지정되지 않으면 상수값에 적합.. 더보기
Verilog의 기본 : 숫자표현, 자료형, 벡터, 배열, 문자열 이 포스팅은 제 개인적인 공부를 저장 및 복습하기 위해서 올리는 글입니다. 개인적인 정리기 때문에 저의 잘못된 이해가 섞여있을수도 있는 점 알려드립니다. 너무 맹신하지는 말아 주시기 바랍니다. 숫자 표현 기본적으로 로 표현한다.에는 10진수 숫자로만 써야하며, 숫자의 크기를 말한다.에는 b,B 로 2진수를, o, O로 8진수, d, D로 10진수를, h, H로 16진수를 표현한다.예를 들면 다음과 같다. 7'b1111001 7비트 2진수 1111001 11'd2047 11비트 10진수 2047 17'h12a1 17비트 16진수 12a1 를 표현하지 않을 수 도 있는데그럴 경우 일반적으로 32비트 숫자가 된다. 예를들면 2011147 32비트 10진수 2011147'h113a 32비트 16진수 113a (.. 더보기