Quality control (2)/Digital System Design

Digital System Design _ intro(1)

빈그레 2023. 3. 8. 22:21

 

 


 

What will you learn?

 

 

 

Course Contents

 

Understanding, designing, and optimizing digital systems using Verilog HDL and FPGA design

 

 

 

CAD tools

 

Xilinx VIVADO tools

 

 

디지털 시스템 설계의 필요성

 

1. 기술 발전 이해

: 컴퓨터와 전자 기술의 발전 과정 이해

 

2. 제품 개발 능력 향상

: 실제 디지털 제품 개발 능력 향상, 이를 통해 창의적 디지털 제품 개발 및 기존 제품 개선

 

3. 문제 해결 능력 향상

: 복잡한 문제를 해결하고 디지털 시스템의 설계, 구현, 테스트 등의 다양한 단계에서 발생하는 문제를 해결

 

4. 산업에서의 경쟁력 강화

: 컴퓨터 전자,통신 분야에서 일할 수 있는 기회 높일 수 있음

 

 

 

 

디지털 시스템을 설계하기 위해 필요한 능력

 

1. 논리적 사고 능력

: 디지털 시스템은 논리회로로 구성된다. 설계 전에 시스템의 목적과 요구사항을 분석하고 이를 바탕으로 회로를 구성한다.

 

2. 프로그래밍 능력

: 디지털 시스템을 제어하기 위하여 프로그래밍 능력이 필요하다.

 대게 microcontroller나 FPGA 와 같이 프로그래밍이 가능한 장치를 사용한다.

 

3. 전자 회로 이해 

: 디지털 시스템은 전자회로로 구성된다. 다양한 전자 부품들의 특성을 이해하고, 이를 바탕으로 전자회로를 구성한다.

 

4. 시스템 설계 경험

: 이전에 설계한 시스템에서 발생한 문제들을 경험하고, 이를 해결하며 설계 경험을 쌓아야한다.

 

5. 협업 능력

: HW 산업은 비용이 많이 들기 때문에 개인플레이가 불가능하다. 팀원들과 의견을 공유하고 역할을 분담한다.

 

 

 

알고리즘과 시스템 구현의 차이

 

알고리즘
: 추상적인 개념이며, 특정 문제를 해결하기 위한 일련의 절차를 설명하는 것이다.

시스템 구현
: 알고리즘을 기반으로 하되, 하드웨어와 소프트웨어의 상호작용으로 구성된 구체적 시스템이다.

 

 

-하드웨어의 한계

: 알고리즘은 추상적인 개념이기 때문에 하드웨어의 한계와 제한을 고려하지 않고 설계된다. 하지만 실제로 시스템을 구현할 때는 하드웨어의 성능, 메모리 용량 등의 제한을 고려하여 최적화된 코드를 작성해야 한다.

 

-시간 복잡도 

: 알고리즘은 일반적으로 입력 크기에 따른 시간 복잡도를 고려하여 설계된다. 그러나 설계 시스템에서는 입력 크기 뿐만 아니라 입력 데이터의 속도, 외부 환경 요소 등을 고려하여 실시간 처리와 성능 최적화를  고려해야 한다.

 

-에러 처리 

: 알고리즘은 일반적으로 정확한 입력에 대해서만 동작하도록 설계된다. 그러나 실제 시스템에서는 입력 데이터의 불완전성, 잘못된 데이터, 외부 환경 요소 등에 의한 에러를 처리할 수 있는 방법을 고려해야 한다.

 

-구현 복잡도

: 알고리즘은 단순한 수식이나 규칙으로 표현될 수 있지만, 실제 시스템에서는 여러 하드웨어와 소프트웨어 요소들이 상호작용하며 복잡한 로직을 수행해야 한다. 

 

따라서 실제 시스템을 구현할 때는 알고리즘을 기반으로 하면서도 하드웨어의 한계와 성능, 에러 처리 등을 고려하여 최적화된 코드를 작성해야한다.

 

 

 

 

(y축 scale : log )

 

Battery Capacity 는 크기와 열 등의 고려사항이 많기 때문에 알고리즘 만큼 빠르게 성장하지 못하였다.

 

 

 

 

 

이렇게 한 번 만들어보쟈!~!~!ㅎㅎ