Modelsim

    [ModelSim] 프로그램 내의 필요한 창이 없어졌을 때 해결법

    [ModelSim] 프로그램 내의 필요한 창이 없어졌을 때 해결법

    프로그램을 사용하다 보면 프로그램 내에서 필요하지 않은 창이 여러 개 띄워져 있어 해당 창을 지울 때가 있다. 물론, 무심코 해당 창의 X 표시를 누를 때도 있다.. 이때 해당 창이 필요하거나, 다시 보고 싶을 때 어떻게 불러와야 하는지 막막할 때가 있다. 이럴 때! 창을 다시 불러오는 방법을 설명하겠다. [View] [View]를 들어가면 여러 가지 이름들이 나와있다. Library, Project, Structure, Transcript, Wave, Objects, ... (체크 설정 기본값) 이름 옆에 체크되어있는 것은 현재 모델심 프로그램 화면에서 보일 창들의 이름이다. 체크가 해제되어 있다면 화면에서 보이지 않는다. 그러므로, 체크(✔)가 해제되어 있는 것들을 체크 설정하면 된다. 체크 설정을 ..

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

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

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

    [조합회로] 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] 컴파일 및 시뮬레이션 자동화 방법

    [ModelSim] 컴파일 및 시뮬레이션 자동화 방법

    [ModelSim] 프로젝트 생성 및 실행 방법 Verilog 파일을 실행하기 위해서는 모델심(ModelSim) 프로그램을 이용한다. 모델심 프로그램을 실행하면 위와 같은 창이 화면에 뜬다. 그렇다면 모델심이 열리고 있다는 뜻이다. 모델심 초기화면 모 s00m.tistory.com 👆 위의 글에서는 프로젝트에 있는 파일을 컴파일한 후 시뮬레이션하여 파형을 보는 방법에 대하여 알아보았다. 이번 글에서는 모델심의 컴파일 및 시뮬레이션 \진행 과정을 매크로와 같이 자동화하는 방법에 대하여 알아보겠다. 진행 과정을 자동화하기 위해서 tcl(티클)이라는 스크립트를 사용하였다. 자동화하는 이유? 모델심은 컴파일, 시뮬레이션까지의 과정을 코드를 수정할 때마다 해야 한다. (불필요한 반복 작업 증가) 반면에 자동화 파..