C++ 4

Vivado : 4bit 가산기

이번에는 전가산기 4개를 이어 붙인 4bit 가산기를 구현해보려고 한다. 전가산기에 관한 내용은 아래 글을 참고하여 확인할 수 있다. 2024.06.13 - [Language/Verilog] - Vivado : 전가산기(Full-adder) 구현 Vivado : 전가산기(Full-adder) 구현가산기가산기란, 덧셈 연산을 수행하는 논리회로를 의미한다. 가산기는 디지털 회로, 조합 회로의 하나이며, 대부분의 가산기는 2진수의 합을 나타내는 특징을 가진다. 전가산기전가산기는 두jangdong.tistory.com4bit adder4비트 가산기를 구현하기 위해서는 두 개의 입력을 받을 a, b 입력단자와 올림수를 표현할 Cin(carry in) 입력 단자를 필요로 한다.  아래는 Structural 기법을 ..

Language/Verilog 2024.06.16

Vivado : 전가산기(Full-adder) 구현

가산기가산기란, 덧셈 연산을 수행하는 논리회로를 의미한다. 가산기는 디지털 회로, 조합 회로의 하나이며, 대부분의 가산기는 2진수의 합을 나타내는 특징을 가진다. 전가산기전가산기는 두 개의 반가산기와 하나의 OR 게이트로 이루어져 있다. 전가산기는 이진수의 합뿐만 아닌 캐리까지 포함하여 동작을 수행하는 특징을 지닌다. 전가산기의 진리표는 아래의 표와 같다.XYZSumCarry0000000110010100110110010101011100111111 이제 Vivado를 활용하여 전가산기를 구현해 보도록 하자. 구현 방법은 Verilog의 Modeling 기법을 활용하여 구현하려고 한다. Verilog의 모델링 기법은 대표적으로 Structural, Behavioral 그리고 Dataflow 기법이 존재한다...

Language/Verilog 2024.06.13

리눅스 BSP : 스위치 LED 제어

이번에는 스위치를 활용하여 3개의 LED를 순차적으로 점등시키는 동작을 구현해보려고 한다. 코드를 동작 시키면 LED는 순차적으로 점등된다. 하지만, 스위치를 작동시키면 LED는 방향을 바꾸어 점등을 진행한다. 스위치 관련 동작은 코드상에 맨 밑에 if문에서 동작되며, 스위치가 눌릴 때 마다 mode는 Toggle되어 변경된다. 구현된 코드는 아래와 같다.#include #include int ps[40]; // ps(pin state) : default 0, pin number : 40void Toggle(int pin){ ps[pin] = !ps[pin]; digitalWrite(pin,ps[pin]);}int main(){ wiringPiSetup(); // Pin number use case (w..

Language/Linux 2024.06.11

리눅스 BSP : LED 점등

이번에는 라즈베리파이를 활용하여 3개의 LED를 제어 해보려고 한다. 라즈베리파이의 핀을 제어하기 위해서는 핀의 위치와 역할을 제대로 알아야 한다.아래와 같이 터미널에 'gpio readall'을 명령하면 핀에 대한 정보를 얻을 수 있다.  3개의 LED를 제어하기 위해서 아래와 같이 LED를 제어하는 코드를 구성해보았다. #include #include main(){ wiringPiSetup(); // Pin number use case (wPi) pinMode(8, OUTPUT); // 8,9,7 : OUT 2 : IN pinMode(9, OUTPUT); pinMode(7, OUTPUT); pinMode(2, INPUT); for(int i = 0; i GPIO 핀을 제어하기 위해 'wiring..

Language/Linux 2024.06.11
728x90