Inflearn brand logo image
Inflearn brand logo image

Inflearn Community Q&A

info0780's profile image

asked

Design Self-study Taste's Practical Verilog HDL Season 2 (AMBA AXI4 Complete Conquest)

[HDL Chapter 36] AXI4 Interface - Theory Advance - Part 1

SPI, I2C, UART, Ethernet 인터페이스 사용법

Written on

·

60

·

Edited

1

안녕하세요 맛비님! 통신 모뎀 회사에 재직중입니다. 블록 디자인 작업(이건 노력, 시간 투자로 실력이 늘거라고 생각하는 중입니다..), AXI 버스, SPI, I2C, Ethernet, UART 를 사용해야 하는 상황이어서 verilog 시즌1, FPGA 시즌1 에 이어서 verilog 시즌2를 듣고 있습니다!

해당 강의 이후에는 fpga 강의에서 추천해주신 워크숍 내용을 공부할 예정입니다.

 

맛비님 강의에서는 AXI 버스를 사용하는 방법을 배우고 있고 추가로 SPI, I2C, UART, Ethernet 을 사용할 줄 아는 능력을 갖추기 위해서 Xilinx 사 워크숍 내용으로 커버가 될지 궁금합니다! 추가로 추천하시는 공부방법이 있는지 알려주시면 감사하겠습니다 ㅎ

verilog-hdlfpga임베디드amba

Answer 2

1

sgdh님의 프로필 이미지
sgdh
Instructor

안녕하세요 🙂

AXI 버스 사용법은 제가 Verilog 시즌2와 FPGA 시즌1 강의에서 다룬 내용을 통해 기본적인 개념과 실습까지 익히셨을 거고, 말씀하신 SPI, I2C, UART, Ethernet 쪽은 Xilinx 워크숍 커리큘럼으로도 충분히 커버가 가능합니다. 특히 Xilinx의 Peripheral IP(예: AXI UARTLite, AXI IIC, AXI SPI Controller, AXI EthernetLite) 를 실습하는 과정이 준비되어 있어서, IP 사용 방법과 AXI 인터페이스 연결 방법을 자연스럽게 익히실 수 있을 거예요.

다만, 워크숍은 주로 IP를 블록 디자인에 끌어다 쓰는 수준이기 때문에,
만약 "내가 직접 SPI, I2C, UART 같은 통신 프로토콜을 Verilog로 짜보고 싶다"는 목표도 있으시다면,
추가적으로 '프로토콜을 직접 설계해보는 작은 프로젝트' 를 개인적으로 진행해보는 걸 추천드립니다!

예를 들면..

  • 간단한 SPI Slave 만들어 보기

  • I2C Master 직접 만들어 보기

  • UART 송수신기 직접 코딩해 보기

직접 설계해보는 방법이 가장 좋을 것 같아요.

즐공하세요!!

info0780님의 프로필 이미지
info0780
Questioner

와 강의 외 내용인데도 이렇게 친절히 알려주셔서 너무 감사드립니다 ㅎㅎ

0

communityai8509님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. info님께서 질문하신 SPI, I2C, UART, Ethernet 인터페이스 사용에 대한 학습 방법에 대해 답변 드리겠습니다.

1. Xilinx 사의 워크숍 활용

Xilinx에서 제공하는 워크숍 자료는 실습과 이론이 잘 조화되어 초보자들과 중급자 모두에게 큰 도움이 됩니다. 특히, 각 인터페이스에 대한 실전 예제들이 포함되어 있어 이해와 구현에 큰 도움이 될 것입니다. 많은 엔지니어들이 실제로 Xilinx의 자료를 활용하여 인터페이스 설계를 배우고 있습니다.

2. 추가적인 공부 방법

  1. 데이터시트 및 매뉴얼: 각 인터페이스에 대한 상세한 동작 원리와 설정법은 관련 데이터시트나 매뉴얼을 통해 깊이 있게 이해할 수 있습니다. 특히, 프로토콜의 타이밍, 신호 정의 등을 이해하는 데 유용합니다.

  2. 오픈소스 프로젝트 참여: GitHub와 같은 플랫폼에서 관련된 오픈소스 프로젝트를 찾아 참여해보세요. 코드 리뷰를 통해 실무에서 사용하는 다양한 방법들을 빨리 습득할 수 있습니다.

  3. 전문 서적 및 자료: 각 인터페이스에 특화된 서적을 읽는 것도 추천합니다. 예를 들어, “Embedded Systems with ARM Cortex-M Microcontrollers in Assembly Language and C”는 UART 등 여러 인터페이스와 관련된 실습 예제가 풍부합니다.

  4. 실습과 프로젝트: 실무 예제를 직접 구현해보거나, 관련 프로젝트를 수행해보는 것이 중요합니다. 예제를 따라하는 것뿐만 아니라, 새로운 기능을 추가하는 식으로 응용해보세요.

관련 질문 및 학습 자료

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.