공부/Verilog (6) 썸네일형 리스트형 6. Sequential Logic_ Counter 논리회로 포스팅에서 Sequential logic을 다뤄서 해당 내용에 대해 베릴로그 코딩을 할 생각이 있는데 뭐를 먼저 할지 마땅히 생각이 안나서 gpt한테 물어보았다.따라서 이번 포스팅에서는 Counter 설계를 해볼까 한다. 앞으로 어떤 것들을 설계하던지간에 처음에 큰 틀을 잡아야한다.Counter를 어떻게 설계할 것인가? 매 clk cycle마다 count횟수가 1씩 높아지며, reset 신호를 주면 초기화시키고, input값으로 일정 값을 주면 해당 값까지 count횟수가 높아지다가 같아지면 stop 또는 초기화를 시켜주게끔 만들자. 처음에 input값을 넣어주고, 그다음 current state와 이 값을 비교하고 출력으로 up 또는 stop, next state update 이런 과정이 들.. 5. Binary multiplier https://ksh9-9.tistory.com/22 Logic_Circuit_5-Combination Logic(2)-Multiplier지난 시간에 감/가산기까지 내용을 정리해보았다.오늘은 여러가지 combination logic에 대해 더 알아보겠다. 1. Binary Multiplier110 X 101을 해보자.너무나도 쉽다.이거를 회로로 어떻게 표현해야할까? 처ksh9-9.tistory.com위에 포스팅한 내용을 베릴로그로 구현하는 시간을 갖도록 하겠다. 여기서 파악해야할 것은 input값은 A1A0, B1B0이고, output값은 O[3:0]이라는것이다. 큰 module의 port는 이것뿐이며,그 외 나머지 선들은 wire로 따로 선언해주고 이용해야한다.이 점을 명심해서 코딩을해주면, Top.. 4. Four bit ripple carry adder 지난시간에 Adder를 설계해보고 실제로 시뮬레이션까지 돌려보았다. https://ksh9-9.tistory.com/14 Logic circuit_4: Combination Logic(1)논리회로는 combination logic과 sequential logic 2개로 분류할 수 있다.input이 들어가면 바로 output이 나오는 combination logic에 대해 며칠에 거쳐 포스팅할 예정이다.또한, 해당 내용 포스팅이 끝나면 관련ksh9-9.tistory.com 오늘은 지난시간에 설계한 Adder를 인스턴스화시켜서 4bit ripple carry adder를 설계해보고 위에 첨부한 포스팅에서 설계한 Delay가 적은 4bit Adder까지 동일하게 설계한 후에 동일한 결과가 나오는지 확인까지 해.. 3. Design Full Adder 전 포스팅에서 gate하나를 vivado를 통해 simulation까지 해보았다. 이번 포스팅에서는 논리회로 시간에 combination logic부분을 다뤘었는데 해당 내용을 실제로 설계해보고 시뮬레이션까지 돌려보는것을 해보도록 하겠다. 전 포스팅에서 어떻게 만드는지를 설명안한것같아 step by step으로 한번 설명해보면, 1. Create Project -> 위치 설정후 생성 순서대로 따라가면 이런 화면이 나온다. 여기서 Create File을 눌러준 후설계할 이름을 적어준 뒤 ok 누르기 다 만들고나서 다시 Add source를 눌러 3번째꺼를 눌러준다. (test bench용도) 이렇게 만들어주고, source칸에 이렇게 보이면 성공이다. 이제 해당 부분 더블 클릭해서 Verilog .. 2. Verilog_ Simulation by using Vivado logic design unit을 module이라고 한다. unit에서 알 수 있듯이 HW의 기본단위를 module로 이해하면된다. module의 경우 위와같은 형식으로 코딩해주면되며, 예시로 and gate를 한 번 시뮬레이션 설계해보고 시뮬레이션까지 돌려보자. vivado에서 source file과 tb file을 위와같이 만든 후 simulation을 돌려보면, 다음과 같이 예상한대로 파형을 볼 수 있다. 이제 상세하게 한번 과정들을 알아보자.1. Port port는 module의 입/출력 신호이다. port_direction / port_type / port_name_list 이순서대로 베릴로그 코딩을 하며,위와같이 짜면 된다. 2. Data Types0 : Zero1 : onex : d.. 1. Verilog_Preview 원래는 논리회로 카테고리에 베릴로그 실습한거를 같이 올리려고했는데 그냥 새롭게 카테고리하나 만들어서 처음부터 차근차근 정리하는게 좋을 것 같아 이렇게 방향성을 정했다. Verilog HDL의 HDL은 Hardware Description Language로 말그대로 HW를 기술하는 언어이다. HW 설계 언어로는 크게 2가지가 있는데, Verilog와 VHDL이 존재한다.Verilog는 C와 유사한 문법을 사용하며 하드웨어 설계를 고수준 언어로 표현.VHDL은 하드웨어 동작을 기술할 때 더 세밀한 제어가 가능하다.주로 Verilog는 behavioral design에 집중하며, VHDL은 structural design에 집중하는데 필자는 Verilog밖에 사용해보지 않아서 사실 VHDL은 잘 모른다. Be.. 이전 1 다음