![[VerilogHDL] System Verilog, 4bit Adder FND 출력](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbpRigX%2FbtsHp32iq76%2FekHf18H6oq2HZElY9OjyTk%2Fimg.png)
1. System Verilog 문법 사용하여 Verification 4bit Adder Simulation콘솔창에 출력하기 더보기4bit Adder Desing source`timescale 1ns / 1psmodule Adder ( input [3:0] a, input [3:0] b, input cin, output [3:0] sum, output co); wire [2:0] w_carry; fullAdder U_FA0 ( .a(a[0]), .b(b[0]), .cin(cin), // 1bit 이진수 0 .sum(sum[0]), .cout(w_carry[0]) ); fullAdder U..
![[VerilogHDL] HalfAdder, FullAdder, 4bit Adder](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4bG43%2FbtsHgDiRNvy%2FkKVghAr98ONRN3kiFtyGo1%2Fimg.png)
1. Half Adder S = A’B + AB’ (XOR Gate)C = AB (AND Gate)module HalfAdder( // Port list input a, input b, output Sum, output Carry ); // Design Circuit assign Sum = a ^ b; assign Carry = a & b;endmodule Simualtionmodule tb_HalfAdder(); reg a; reg b; wire Sum; wire Carry; HalfAdder test_HA( .a(a), .b(b), .Sum(Sum), ...
![[VerilogHDL] 반도체 칩 설계과정, Vivado 시작하기, 시뮬레이션, Logic Gates](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblsNK0%2FbtsHkkuXN0w%2FhBXxnbJZ5tQdfW1BvKVdlk%2Fimg.png)
1. 반도체 칩 설계 과정 2. Basys3 FPGA Board 가운데 칩이 FPGA Chip(ARTIX-7 (XC7A35T-CPG236C)) 파일 만들기 3. 로직 게이트 설계하기 위와 같이 Datasheet에 각 핀에 연결된 HW가 표기되어 있다.SW0 : V17, SW1 : V16LED0 : U16, LED1 : E19, … 설계 과정1. Design Source 작성2. RTL Schematic 확인 & IO Port 설정 IO 포트 설정을 위와같이 코드로 작성할 수 있음 3. Synthesis → Implementation → Program And Debug 순서로 실행Synthesis(합성) : Verilog code(논리) → HW(물리)로 바꾸는 과정이 과정에서 Ha..
![[ARM] STM32_Systick 사용 버튼 LED 동작](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9ovvS%2FbtsHiHdneB6%2F5DpzTBXma3YipySnIrir01%2Fimg.png)
내부 클럭(HSI) : 불안정 → Clock 주기가 외부의 영향으로 변할 수 있음외부 클럭(HSE) : 안정적 → 정확한 시간을 재야할 때 사용 전체 코드https://github.com/k1minseok/STM32_ButtonLED_0423 GitHub - k1minseok/STM32_ButtonPush_LEDON_0423Contribute to k1minseok/STM32_ButtonPush_LEDON_0423 development by creating an account on GitHub.github.com→ delay 함수를 사용하지 않음(non-blocking 방식 / delay 사용 : blocking 동작 방식) static uint32_t prevTime = 0; uint32_t cur..
![[ARM] STM32_버튼 이용 LED 조작](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBjf5v%2FbtsHf9PZf1F%2FrNsDMuOU92COvqkcA3epT1%2Fimg.png)
더보기typedef struct{ volatile unsigned int MODER; volatile unsigned int OTYPER; volatile unsigned int OSPEEDR; volatile unsigned int PUPDR; volatile unsigned int IDR; volatile unsigned int ODR; volatile unsigned int BSRR; volatile unsigned int LCKR; volatile unsigned int AFRL; volatile unsigned int AFRH;}GPIO_TypeDef;#define AHB1_BASE 0x40020000#define RCC_BASE (AHB1_BASE + 0x3800)#define ..
![[ARM] Project : Autonomous Vehicle PPT & PDF](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcwdWJX%2FbtsHgmO24Hp%2FD5njSXtgBSNMKXqYOWo7b0%2Fimg.jpg)
Project : Autonomous Vehicle ⦁ 개요 : STM32 ARM Cortex M4를 이용한 자율주행 이동체 개발 ⦁ 기능 1. Auto 모드, Manual 모드 1) Auto 모드 : 초음파 센서로 측정한 거리를 통해 자율 주행 a) 원거리에서는 가장 넓은 공간으로 부드럽게 주행 b) 근거리에서는 동체 제자리 회전 2) Manual 모드 : Bluetooth를 이용한 스마트폰 원격 제어 2. CLCD를 통해 현재 머신의 모드 표시 ⦁ 구현 방법 1. FSM, SW Stack, Object Diagram, Sequence Diagram, Class Diagram 제작 ..