설계

    [순차회로] 교통 신호 제어기 설계하기

    [순차회로] 교통 신호 제어기 설계하기

    사거리인 주요도로와 간선도로의 교차로에서 교통을 위한 제어기를 설계해보기로 한다. 순차회로에 대하여 알고 싶다면 다음 글을 참고하길 바란다!👇 순차회로와 FSM 순차 회로(Sequential logic Circuit)를 설계하기 전에 순차 회로에 대하여 간단히 알아보도록 하겠다. 순차 논리 회로란? - 순서(상태)를 가지고 있는 회로 - FSM으로 순서를 만들고 그에 따라 출력하는 s00m.tistory.com 교통 신호 제어기 다음과 같은 명제를 고려해야 한다. 주요도로(Main Highway)는 차가 끊임없이 다니기 때문에 주요도로의 신호등은 가장 높은 우선순위를 가진다. 그러므로 주요도로의 신호는 기본적으로 녹색이다. 간선도로(Counrty Road)에서는 때때로 차가 교차로를 지나간다. 이때 간선..

    [조합회로] 4비트 전가산기 설계하기

    [조합회로] 4비트 전가산기 설계하기

    4비트 전가산기란? Full Adder(FA): 덧셈을 수행하는 데 있어서 캐리(자리 올림수) 입력을 가진 가산기 4-bit의 입력 2개를 더하는 것 외에 c_in이라는 자리 올림수도 같이 더해야 한다. ※ 덧셈 연산이 느려지는 원인 자릿수마다 자리올림수가 계산되어야지만 다음 자릿수 덧셈을 할 수 있기 때문 즉, 자리올림수를 미리 알 수 있다면 덧셈의 계산속도 빠르게 할 수 있다. 자리올림수 예측 가산기란? Carry Look-ahead Adder(CLA): 자리올림을 위해 이전 결괏값을 기다리지 않음 자리올림을 예측하기 위해 Propagation와 Generation 함수 사용 $P\left ( A,B \right )= A\oplus B$ (XOR 연산) -> 이전의 결괏값과 상관없이 자리올림이 발생하..

    [조합회로] 4:1 멀티플렉서 설계하기

    [조합회로] 4:1 멀티플렉서 설계하기

    4:1 멀티플렉서란? Multiplexer(Mux): 제어 입력 신호(Sel)에 의해서 입력 신호 중 하나를 선택하여 출력과 연결 4:1 MUX를 설계하는 방법으로 크게 2가지가 있다. - 데이터플로우(디자인) 및 구조적(테스트벤치) 기술방법 설계 - 알고리즘 레벨(디자인) 및 구조적(테스트벤치) 기술방법 설계 테스트벤치 파일은 동일하며, 디자인 파일의 기술 방법만 다르게 하여 설계한다. - 입력: i0, i1, i2, i3(데이터 입력), s1, s0(제어 입력) - 출력: out (데이터 출력) ※ 참고 reg: always () 구문 / initial 구문(testbench에서만) wire: assign 구문 (단, 구조적 기술 시에 다른 모듈의 출력과 연결했다면 assign을 사용한 것과 같은 취..

    [ModelSim] Verilog 조합회로 설계 방법

    논리회로에는 조합회로와 순차회로가 있다. 조합회로와 순차회로의 차이를 간단하게 설명하면 다음과 같다. 조합회로 순차회로 출력 = 입력의 조합 출력 = {입력의 조합(조합회로), 상태의 조합(기억소자)} ModelSim을 활용하여 조합회로를 설계해보겠다. 1. 디자인 파일 설계 방법 조합회로는 2가지 방식으로 디자인 파일(RTL 파일)을 설계한다. 1) wire로 선언하여 조합회로를 만드는 방법 wire 신호선 이름; assign 신호선이름 = 입력/신호의 조합; 2) reg로 선언하여 조합회로를 만드는 방법 reg 신호선 이름; always ( sensitivity list 신호이름s ) begin 신호선이름 = 입력/신호의 조합; end 2. 기술 설계 방법 - 구조적 기술방법 설계(Gate level..