728x90

분류 전체보기 625

AXI4-Lite Interface에 대하여 (+ Template Code)

Vivado를 이용하여 AXI4-Lite Interface를 사용할 수 있다. https://insoobaik.tistory.com/689기본적은 AXI Interface에 대해서는 이전 글에서 다루어 보았다. 간단하게 요약하자면1. AXI Interface는 5개의 채널이 존재한다. (Write Address, Write Data, Response, Read Address, Read)2. 각 채널은 전부 Valid, Ready Signal에 의해 동작하게 된다. (Valid와 Ready가 전부 1이여야 동작하게 된다.) AXI4-Lite 생성위와 같이 Vivado에서 AXI4 Interface를 사용하는 IP를 생성할 수 있다. 위와 같이 AXI Interface IP에 대한 Data Width, Re..

Synthesis - Clock Gating (이론 및 Syn 후 Simulation 확인)

* 기본적인 Synthesis 과정을 알고 있다는 가정하에 글을 작성하였습니다.Clock Gating이란?Synthesis 과정에서 매우 중요한 최적화 작업 중 하나다. 특히 저전력 설계(Low Power Design)에서 필수적인 기법이다.특정 조건이 충족될 때만 클럭 신호가 해당 FF으로 전달되도록 하는 것을 의미한다.(* Enable 신호에 따라 Clock이 동작한다고 간단하게 생각하면 된다.)Clock Gating은 모바일 기기나 저전력 디자인에서 전력 관리와 배터리 수명을 개선하는 데 중요한 역할을 한다.위 그림의 (1) 첫번째와 같이 일반적으로 Clock이 계속해서 FF에 전달될 경우 0->1->0과 같이 상태 전환이 계속해서 일어나기 때문에 전력이 계속해서 소모되게 된다.(2) 두번째를 보게..

ROS2 - (5) Python을 이용한 Topic, Service 구현

ROS2는 python을 공식 지원하며 Jupyter를 이용하여 python으로 Topic에 접근해 볼 것이다.(Uubuntu Jupyter 설치의 경우 구글에 많이 나와있으니 찾아보길 바랍니다.)Python으로 Topic 접근 코드 예제 결과 특정 범위 안에서 거북이가 random하게 움직이는 시뮬레이션Topic Topic 구독 코드 작성 터미널에서 turtlesim_node를 실행하고, ROS2를 실행한 후 VS-Code를 실행한다.  jupyter notebook을 통해 아래 코드를 입력하고 실행 시킨다.import rclpy as rpfrom turtlesim.msg import Pose첫째 라인의 rclpy(ROS Client Library for Python)라는 ROS2를 Python에서 사..

Embedded/3. ROS 2024.09.24

ROS2 - (4) Action, Parameter 이론 및 실습

ActionAction은 Topic과 Service의 혼합Action 목표 및 Action 결과를 전달하는 방식은 Service와 동일하다.Action Feedback은 Topic과 같은 Message 전송 방식  기본적으로 Client와 Server가 통신을 하게된다.1. Client에서 Goal에대한 Service를 Reqeust를 Server에 전달하게 되면 Server에서 Response를 Client로 전달하게 된다. 1.1. Feedback은 Topic으로 동작하며 Action Server가 Action Client로 정보를 주기적으로 전달하는 역할을 한다.2. Goal에 대한 응답 이후 최종 결과를 Result Service를 통해 Request, Response를 주고 받는다.3. Clie..

Embedded/3. ROS 2024.09.23

ROS2 - (3) Topic, Service 이론 및 실습

Topic 노드 간 Publish & SubscribePublisher가 Message를 BroadCasting 방식으로 전달하면 Subscriber는 자기가 필요한 Message면 받아들인다. (Topic을 확인해서 가져온다.)  비동기 단방향 메시지 송수신 방식으로 msg 메시지 형태의 메시지를 발간하는 Publisher와 메시지를 구독하는 Subscriber 간의 통신이다.1:N, N:1, N:N 통신도 가능하며 ROS 메시지 통신에서 가장 널리 사용된다.Node A처럼 하나 이상의 Topic을 발행할 수 있을 뿐만이 아니라 Publisher, Subscriber 역할을 동시에 수행 가능하며, 자신 Topic을 셀프 구독할 수도 있다.통상적으로 70% 이상이 Topic 방식을 사용한다.(기본 특징으..

Embedded/3. ROS 2024.09.23

ROS2 - (2) Message, DDS 이론 및 실습

Message Communication - Node : ROS에서 최소 단위의 실행 가능한 프로세스- Package : 하나 이상의 Node 또는 Node 실행을 위한 정보 등을 묶어 놓은 것(ex) Turtlesim)- Meta Package : Package의 묶음 ROS에서는 최소한의 실행 단위로 프로그램을 나누어 프로그래밍, 노드는 각각 별개의 프로그램으로 보면 된다.수많은 노드들이 연동되는 ROS 시스템의 특성 상 노드와 노드 사이에 입력과 출력 데이터를 서로 주고 받도록 설계해야 한다. * 노드의 이해와 더불어 노드 간 데이터 교환 방법, 데이터 유형에 대한 이해가 필요하다.ROS2 Message CommunicationNode 간 주고 받는 데이터를  Message라 칭하며, 주고 받는 방식..

Embedded/3. ROS 2024.09.23

FPGA - IP 생성 및 Vitis를 이용한 Switch, LED 제어

목차IP 생성Block Design 생성 및 xsa 파일 생성 및 내보내기Vitis를 통한 하드웨어 실행- Switch 동작에 따라 점멸 속도가 각기 다른 LED를 조절하는 IP를 생성할 것이다.  IP란?Intellectual Property는 특정한 기능을 수행하는 사전 설계된 모듈이나 블록을 의미한다. IP는 재사용 가능한 설계 요소로, 설계자가 FPGA, ASIC, 또는 SoC와 같은 하드웨어 시스템을 설계할 때, 기존에 블록을 사용하여 설계 시간을 줄이고 개발의 효율성을 높일 수 있다.- Module, XDC file 생성 4개의 Switch와 LED의 FPGA Board의 Pin 번호에 맞게 설정한 xdc File과 Counter를 이용하여 출력 값을 지정한 Clock 속도에 맞게 Toggle..

AI에 관한 기본적인 지식

AI에 관한 기본적인 지식 약인공지능 : 특정분야에서 인간 수준의 판단을 할 수 있는 것 - ANI강인공지능 : 범용적인 분야 모두에 대해 지능적 판단을 내릴 수 있는 것 - AGI초인공지능 : 주관적인 판단이나 자의식을 가질 수 있는 것 - ASI머신러닝 : 데이터와 정답을 입력하면 스스로 그 안의 규칙을 찾아내어 정답을 도출 - 머신러닝이라는 학문은 기계가 명시적으로 코딩되지 않은 동작을 스스로 학습해 수행하는 것 / 수없이 다양한 강아지 사진을 학습하며 그 속에서 스스로 패턴을 찾아내어 나중에는 강아지 사진을 입력하면 고양이와 다른 점을 구분하여 고양이가 아닌 '강아지'라는 정답을 도출해 내는 것 머신러닝의 3가지 유형1. 지도 학습2. 비지도 학습3. 강화 학습 1. 지도 학습1.1. 회귀어떤 입..

Semiconductor/2. AI 2024.09.19

WaveDrom (Timing Diagram) 사용 법

https://wavedrom.com/ WaveDrom - Digital timing diagram everywhereWaveDrom Digital Timing Diagram everywhere WaveDrom draws your Timing Diagram or Waveform from simple textual description. It comes with description language, rendering engine and the editor. WaveDrom editor works in the browser or can be installed on yourwavedrom.com위 사이트에서 Timing Diagram을 편리하게 생성할 수 있다.처음 접속하여 Editor에 들어가면 아래와 같..

ROS2 - (1) 설치 및 기본 동작 (Topic, Service, Action)

* Ubuntu, WSL 등 환경 구성 설치 및 설정은 추후에 다루겠다.ROS2 설치 Ubuntu (deb packages) — ROS 2 Documentation: Humble documentation Ubuntu (deb packages) — ROS 2 Documentation: Humble documentationYou're reading the documentation for an older, but still supported, version of ROS 2. For information on the latest version, please have a look at Jazzy. Ubuntu (deb packages) Table of Contents Deb packages for ROS 2 Hu..

Embedded/3. ROS 2024.09.09
728x90