산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial Internet of Things >> 임베디드

FPGA를 사용한 임베디드 디자인:구현

보다 강력한 FPGA와 보다 효과적인 프로그래밍 환경의 가용성으로 인해 FPGA 구현이 가능해졌습니다. 광범위하게 액세스할 수 있지만 FPGA를 사용하는 것은 어려울 수 있습니다.

편집자 주:스마트 제품 설계를 위한 고급 알고리즘이 계속 등장함에 따라 개발자는 종종 이러한 알고리즘의 관련 처리 요구를 충족할 수 있는 임베디드 시스템을 구현하는 데 어려움을 겪고 있습니다. FPGA는 필요한 성능을 제공할 수 있지만 FPGA를 사용한 설계는 오랫동안 FPGA 프로그래밍 전문가의 범위에 국한된 것으로 여겨져 왔습니다. 그러나 오늘날에는 더욱 강력한 FPGA와 보다 효과적인 개발 환경을 이용할 수 있게 되면서 FPGA 개발에 폭넓게 접근할 수 있게 되었습니다. Architecting High-Performance Embedded Systems 책의 4장에서 발췌한 내용에서 저자는 FPGA 디바이스, 구현 언어, FPGA 개발 프로세스에 대한 포괄적인 검토와 FPGA 구현을 시작하는 방법에 대한 자세한 설명을 제공합니다. 설계. 전체 발췌 내용은 다음 시리즈로 제공됩니다.
1:하드웨어 리소스
2:구현 언어
3:개발 프로세스
4:프로젝트 구축
5:구현(이 문서)

Jim Ledin의 Architecting High-Performance Embedded Systems에서 각색


논리 동작 테스트

FPGA에서 실행하기 전에 시뮬레이션을 사용하여 로직의 동작을 테스트하는 것이 중요합니다. 이는 FPGA 내부에서 실행되는 로직보다 시뮬레이션 환경에서 문제를 감지하고 수정하는 것이 훨씬 쉽기 때문입니다. Vivado 시뮬레이션 도구는 회로 동작을 매우 잘 나타냅니다.

<올>
  • 소스 하위 창에서 시뮬레이션 소스 를 마우스 오른쪽 버튼으로 클릭합니다. 소스 추가…를 선택합니다. :

  • 그림 4.18 – 소스 추가… 시뮬레이션 소스에 대한 메뉴 선택

    1. 소스 추가 대화 상자에서 시뮬레이션 소스 추가 또는 생성 선택한 후 다음을 클릭합니다. .
    2. 시뮬레이션 소스 추가 또는 생성 대화상자에서 파일 만들기를 클릭합니다. .
    3. 파일 이름 입력 vhdl 확인을 클릭합니다. .
    4. 마침을 클릭합니다. 시뮬레이션 소스 추가 또는 만들기 닫기 대화 상자를 클릭한 다음 확인 을 클릭하십시오. 모듈 정의 대화 상자를 열고 를 클릭하십시오. 사용할 것인지 묻는 질문에
    5. Adder4 TestBench(동작)(Adder4TestBench.vhdl) 두 번 클릭 시뮬레이션 소스 아래 . vhdl 의 자동으로 채워진 콘텐츠 삭제 편집기 창에서 Adder4TestBench.vhdl 에 다음 코드를 입력하십시오. 편집자:
    <사전>라이브러리 IEEE; IEEE.STD_LOGIC_1164.ALL을 사용하십시오. IEEE.NUMERIC_STD.ALL 사용 0), C_OUT4 :std_logic ); 최종 구성 요소; 신호 a :std_logic_vector(3에서 0까지); 신호 b :std_logic_vector(3에서 0으로); 신호 s :std_logic_vector(3에서 0까지); 신호 c_out :std_logic; 신호 expected_sum5:unsigned(4에서 0으로); 신호 expected_sum4:unsigned(3에서 0까지); 신호 예상_c :std_logic; 신호 오류:std_logic, TESTED_DEVICE 시작:ADDER4 포트 맵( A4 => a, B4 => b, SUM4 => s, C_OUT4 => c_out ); 테스트:프로세스 시작 -- 0에서 15까지 루프에서 b_val에 대한 0에서 15 루프의 a_val에 대한 2개의 4비트 추가(총 테스트 256개)의 모든 조합 테스트 -- ADDER4 구성 요소에 대한 입력 설정 a <=std_logic_vector(to_unsigned( a_val, a'길이)); b <=std_logic_vector(to_unsigned(b_val, b'length)); 1ns를 기다립니다. -- 두 개의 4비트 값의 5비트 합을 계산합니다. expected_sum5 <=unsigned('0' &a) + unsigned('0' &b); 1ns를 기다립니다. -- 합계를 4비트 출력과 캐리 비트로 나눕니다. expected_sum4 <=expected_sum5(3 downto 0); 예상_c <=예상_합5(4); 1ns를 기다립니다. -- '오류' 신호는 오류가 발생한 경우에만 1이 됩니다. ((unsigned(s) =unsigned(expected_sum4)) and (c_out =expected_c)) then error <='0'; 그렇지 않으면 오류 <='1'; 종료 -- 내부 루프를 통과할 때마다 7ns 동안 10ns가 소요됩니다. 끝 루프; 끝 루프; 기다리다; 최종 프로세스 TEST, 아키텍처 BEHAVIORAL 종료,

    이 코드는 각 A4에 4비트 숫자의 모든 조합을 제시하여 4비트 가산기 기능을 실행합니다. 및 B4 Adder4에 대한 입력 요소. SUM4를 비교합니다. 및 C_OUT4 Adder4의 출력 구성 요소를 동일한 입력에 대해 독립적으로 계산된 값으로 변환합니다. 각 추가 작업 후에 오류 Adder4인 경우 신호가 0으로 설정됩니다. 출력이 예상 값과 일치하거나 1로 설정됨 불일치가 있는 경우.

    Adder4TestBench.vhdl의 코드 중첩 for 루프를 사용하여 모든 테스트 입력 조합을 Adder4에 적용한다는 점에서 기존 소프트웨어 코드와 유사합니다. 테스트 중인 구성 요소. 시뮬레이션 모드에서 테스트를 실행하는 코드는 합성할 수 없습니다. 즉, 순수하게 하드웨어 논리 회로를 나타내지 않으며 for<의 반복 실행과 같은 기존 소프트웨어와 유사한 작업이 가능합니다. /글꼴> 루프.

    그러나 물리적 회로에서와 같이 <=연산자를 사용하여 테스트 벤치 코드에서 값이 할당된 신호는 후속 표현식에서 동일한 순간에 사용할 수 없습니다. 이는 시뮬레이션 환경이 전파 지연의 실제 효과를 나타내기 때문이며, 이는 매우 작은 FPGA 장치 내에서도 중요합니다. 세 개의 1ns 기다림; 테스트 벤치 코드의 문은 전파 지연을 허용하기 위해 회로 작업을 일시 중지합니다. 이러한 1ns 지연은 대기 직전에 계산된 신호 값에 대한 시간을 제공합니다. 다음 문에서 사용할 수 있도록 문을 전파합니다. 마지막 7ns 기다림; 내부 루프의 문은 신호 추적 디스플레이에서 시뮬레이션 루프의 각 반복 결과를 명확하게 볼 수 있도록 하는 일시 중지입니다.

    <올 시작="7">
  • Adder4 TestBench(동작)(Adder4TestBench.vhdl)를 마우스 오른쪽 버튼으로 클릭 시뮬레이션 소스 아래 자동 업데이트 및 컴파일 순서를 선택합니다. . 이것은 ADDER4_TESTBENCH를 설정합니다. 시뮬레이션 실행을 위한 최상위 개체로:

  • 그림 4.19 – 자동 업데이트 및 컴파일 순서를 설정하기 위한 메뉴 선택

    1. 시뮬레이션 실행을 클릭합니다. , 행동 시뮬레이션 실행 흐름 탐색기 에서 시뮬레이션 모드로 들어가는 창입니다. 아직 편집기 파일을 저장하지 않았다면 저장하라는 메시지가 표시됩니다. 저장을 클릭합니다. . 그러면 시뮬레이션이 실행됩니다.


    그림 4.20 – 행동 시뮬레이션 실행 메뉴 선택

    1. 시뮬레이션 창이 열리면 제목 없음 1이라는 제목의 시뮬레이션 출력 창에서 최대화 버튼을 클릭합니다. :


    그림 4.21 – 시뮬레이션 결과 창

    내부 루프를 통과하는 각 패스의 총 시뮬레이션 시간은 10ns입니다. Adder4TestBench.vhdl 루프를 통과하는 256개의 패스가 있기 때문에 , 시뮬레이션 실행 시간은 2560ns입니다.

    1. 상단 도구 모음에서 시뮬레이션 실행 시간을 2560ns로 설정합니다(1단계 다음 그림에서) 왼쪽을 가리키는 다시 시작 버튼을 누릅니다(2단계). ), 오른쪽 방향 버튼을 눌러 2560ns 동안 시뮬레이션을 실행합니다(3단계). ), 마지막으로 확대/축소 를 누릅니다. 버튼(4단계 ) 창에 맞게 시뮬레이션 출력 데이터 범위를 조정합니다.


    그림 4.22 – 실행의 시작부터 끝까지의 시뮬레이션 결과

    돋보기 아이콘을 사용하여 추적의 모든 지점을 확대하고 테스트 중에 수행된 각 추가 작업의 결과를 관찰할 수 있습니다. 예를 들어, 다음 그림은 캐리가 0인 결과 8을 생성하기 위해 십진수 값 6과 2가 추가되었음을 보여줍니다. 이 값은 예상 값과 일치하여 오류가 발생했습니다. 0으로 설정합니다. 오류 신호는 256개의 모든 테스트 사례에 대해 0이며, 이는 논리 회로가 모든 테스트를 통과했음을 나타냅니다.


    그림 4.23 – 시뮬레이션 결과 확대 보기

    1. X 를 클릭하여 시뮬레이션 모드를 닫습니다. 파란색 시뮬레이션 데이터 추적 위의 막대 확인 클릭 시뮬레이션을 닫을 것인지 묻는 메시지가 표시됩니다.

    행동 테스트를 통과하면 디자인에 사용되는 I/O 신호를 정의합니다.

    I/O 신호 정의

    다음 단계는 회로의 입력과 출력을 Arty 보드의 하드웨어 장치에 연결하는 것입니다. 입력은 보드 스위치와 푸시버튼이 되고 출력은 LED가 됩니다.

    다음 단계는 FPGA 장치에서 사용할 I/O 핀과 Arty 보드의 해당 핀에 연결된 기능을 설명하는 제약 파일을 생성합니다. 제약 파일에는 xdc 확장자가 있습니다.

    <올>
  • 소스 하위 창에서 제약 조건 을 마우스 오른쪽 버튼으로 클릭 소스 추가…를 선택합니다. .
  • 소스 추가 대화상자에서 제약조건 추가 또는 생성 확인 선택한 후 다음을 클릭합니다. .
  • 제약조건 추가 또는 생성 대화상자에서 파일 만들기를 클릭합니다. .
  • 파일 이름 입력 Arty-A7-100.xdc (또는 Arty-A7-35.xdc 기기에 적합한 경우) 확인을 클릭합니다. .
  • 마침을 클릭합니다. 제약조건 추가 또는 생성 해제
  • 제약조건 확장 소스 트리를 클릭하고 Arty-A7-35.xdc를 두 번 클릭합니다. .
  • Digilent는 Arty A7 보드에 대해 미리 채워진 제약 파일을 제공합니다. https://raw.githubusercontent.com/Digilent/digilent-xdc/master/Arty-A7-35-Master를 방문하세요. .xdc 브라우저 창의 전체 내용을 Vivado의 Arty-A7-35.xdc 편집기 창으로 복사합니다. 기기에 적합한 경우 https://raw.githubusercontent.com/Digilent/digilent-xdc/master/Arty-A7-100-Master.xdc에 있는 파일을 사용하세요. 대신.
  • 모든 I/O 핀은 각 줄의 시작 부분에서 # 문자를 제거하여 파일의 해당 줄을 주석 해제함으로써 제약 파일에서 주석 처리됩니다. Arty-의 다음 섹션에 나열된 핀을 사용할 것입니다. A7-100.xdc 파일:스위치 , RGB LED (그러나 led0_g만 , 첫 번째 녹색 LED), LED버튼 . 다음 그림은 주석이 제거된 후의 행을 보여줍니다.

  • 그림 4.24 – Constraints 편집기 창

    다음 섹션에서는 가산기 코드를 I/O 장치와 인터페이스하는 최상위 VHDL 파일을 생성합니다.

    최상위 VHDL 파일 만들기

    다음으로 4비트 가산기 구성요소를 해당 보드 I/O 신호에 연결하는 최상위 VHDL 파일을 생성합니다.

    <올>
  • 출처 하위 창에서 디자인 소스 를 마우스 오른쪽 버튼으로 클릭 소스 추가…를 선택합니다. .
  • 소스 추가 대화 상자에서 디자인 소스 추가 또는 생성 확인 선택한 후 다음을 클릭합니다. .
  • 디자인 소스 추가 또는 만들기 대화상자에서 파일 만들기를 클릭합니다. .
  • 파일 이름 입력 vhdl 확인을 클릭합니다. .
  • 마침을 클릭합니다. 디자인 소스 추가 또는 만들기 닫기 대화 상자를 클릭한 다음 확인 을 클릭하십시오. 모듈 정의 대화 상자를 열고 를 클릭하십시오. 사용할 것인지 묻는 질문에
  • vhdl 두 번 클릭 디자인 소스 아래 . 자동으로 채워진 ArtyAdder.vhdl 콘텐츠 삭제 편집기 창에서 다음 코드를 ArtyAdder.vhdl 에 입력하십시오. 편집자:
  • -- IEEE 표준 라이브러리 라이브러리를 로드합니다. IEEE.STD_LOGIC_1164.ALL 사용, 엔터티 ARTY_ADDER는 포트입니다( sw:STD_LOGIC_VECTOR에서 3(3에서 0으로), btn:에서 STD_LOGIC_VECTOR에서(3에서 0으로), led:아웃 STD_LOGIC_VECTOR(3에서 0으로), led0_g:아웃에서 ARTY_ADDER;아키텍처 BEHAVIORAL of ARTY_ADDER -- 4비트 가산기 구성 요소의 이전 정의 참조 ADDER4는 포트입니다( A4:in std_logic_vector(3 downto 0); B4:in std_logic_vector(3 downto 0); SUM4 :out std_logic 아래로 0); C_OUT4 :std_logic 밖으로 ); 끝 구성 요소, 시작 ADDER :ADDER4 포트 맵 ( A4 => sw, B4 => btn, SUM4 => led, C_OUT4 => led0_g ), 아키텍처 종료 BEHAVIORAL;

    이 코드는 Arty-A7-100.xdc에 명명된 I/O 장치의 신호 이름을 매핑합니다. sw로 (스위치 4개), btn (푸시버튼 4개), led (단색 LED 4개) 및 led0_g (첫 번째 다중 색상 LED의 녹색 채널) ADDER4 입력 및 출력.

    VHDL은 대소문자를 구분하지 않지만 xdc 처리 Vivado의 제약 파일은 대소문자를 구분합니다. xdc에 정의된 I/O 장치 이름에 사용된 대소문자 파일은 VHDL 파일에서 참조할 때 동일해야 합니다. 특히, VHDL의 I/O 신호 이름은 제약 파일에서 소문자이기 때문에 이 파일에서 소문자여야 합니다.

    이제 Arty 보드용 디자인을 합성, 구현 및 프로그래밍할 준비가 되었습니다.

    FPGA 비트스트림 합성 및 구현

    또는 비트스트림 생성 을 선택할 수 있습니다. Vivado는 추가 사용자 개입 없이 합성, 구현 및 비트스트림 생성을 포함하여 필요한 모든 단계를 수행합니다. 치명적인 오류가 발생하면 프로세스가 중지되고 오류 메시지가 표시됩니다. 비트스트림을 생성하려면 다음 단계를 수행하십시오.

    <올>
  • 비트스트림 생성 을 클릭합니다. 빌드를 시작하려면 텍스트 편집기를 저장할 것인지 묻는 메시지가 나타날 수 있습니다. 저장을 클릭합니다. . 사용 가능한 구현 결과가 없다는 알림과 합성 및 구현을 시작해도 되는지 묻는 메시지가 표시될 수 있습니다. 를 클릭합니다. :

  • 그림 4.25 – Bitstream 메뉴 선택 생성

    1. 출시 실행 그러면 작업 수 값을 선택할 수 있습니다. 컴퓨터의 프로세서 코어 수까지. 더 많은 코어를 사용하면 프로세스가 더 빨라지지만 긴 빌드 프로세스 중에 계속 사용하려는 경우 시스템이 느려질 수 있습니다. 확인 을 클릭하십시오. 빌드 시작:


    그림 4.26 – 실행 실행 대화 상자 시작

    1. 빌드 프로세스 동안 Vivado는 메인 창의 오른쪽 상단 모서리에 상태를 표시합니다. 필요한 경우 취소 를 클릭하여 빌드 프로세스를 취소할 수 있습니다. 상태 표시 옆:


    그림 4.27 – 컴파일 상태 표시

    1. 빌드 프로세스가 완료되면 치명적인 오류가 없다고 가정하고 Bitstream Generation Completed 다른 옵션이 제공되지만 Arty 보드에 비트스트림을 직접 다운로드하는 과정을 진행합니다. 하드웨어 관리자 열기 를 선택하십시오. 확인을 클릭합니다. :


    그림 4.28 – 비트스트림 생성 완료 대화 상자

    다음으로 비트스트림을 FPGA로 다운로드합니다.

    보드에 비트스트림 다운로드

    Arty A7 보드에 비트스트림을 다운로드하려면 다음 단계를 수행하십시오.

    <올>
  • 하드웨어 관리자 대화상자가 나타나고 열린 하드웨어 대상이 없습니다. .
  • Arty A7-35 또는 A7-100 보드를 USB로 컴퓨터에 연결 보드가 인식될 때까지 몇 초간 기다린 다음 대상 열기를 클릭합니다. , 자동 연결 :

  • 그림 4.29 – 대상 열기 및 자동 연결 선택

    1. 몇 초 후 Vivado는 보드가 연결되었음을 표시해야 합니다. 프로그램 기기 를 클릭하십시오. FPGA 비트스트림을 Arty로 다운로드하려면 비트스트림 파일을 선택하라는 메시지가 표시됩니다. 이 예와 동일한 디렉토리 구조를 사용한 경우 파일은 C:/Projects/ArtyAdder/에 있습니다. ArtyAdder.runs/impl_1/ARTY_ADDER.bit :


    그림 4.30 – 프로그램 장치 대화 상자

    1. 프로그램 을 클릭하십시오. FPGA 장치에 프로그램을 다운로드하고 시작하려면
    2. 이제 Arty I/O로 프로그램 작동을 테스트할 수 있습니다. 4개의 스위치를 모두 꺼짐 위치(스위치를 인접한 보드 가장자리 쪽으로 이동)하고 4개의 푸시 버튼 중 어느 것도 누르지 마십시오. 4개의 녹색 LED가 모두 꺼져 있어야 합니다.
    3. 개별 스위치를 켜거나 하나의 푸시버튼을 누르면 해당하는 녹색 LED가 켜집니다. 여러 개의 푸시 버튼을 누른 상태에서 스위치 조합을 켜면 해당 4비트 숫자가 추가되고 캐리가 있는 경우 LED가 켜집니다(예:SW3 켜기 BTN3 을 누르십시오. 동시에) 녹색 캐리 LED가 켜집니다.

    여기에서 수행된 프로그래밍 프로세스는 프로그램을 FPGA RAM에 저장했습니다. FPGA 보드의 전원을 껐다 켜면 프로그램을 다시 로드하기 위해 프로그래밍 프로세스를 반복해야 합니다. 또는 다음 섹션에 설명된 대로 FPGA 구성 파일을 온보드 플래시 메모리에 저장할 수 있습니다.

    온보드 플래시 메모리를 위한 비트스트림 프로그래밍

    Arty 보드에 전원이 공급될 때마다 FPGA를 구성하려면 FPGA 구성 파일을 보드의 플래시 메모리에 저장해야 합니다. MODE 점퍼가 설치된 경우 FPGA는 전원을 켤 때 온보드 플래시 메모리에서 구성 파일 다운로드를 시도합니다. 이 메모리는 Artix-7 FPGA에 인접한 별도의 칩에 있습니다. 구성 파일을 플래시 메모리에 프로그래밍하려면 다음 단계를 따르십시오.

    <올>
  • 모드 설치 Arty 보드에 아직 없는 경우 점퍼
  • 비트스트림 생성 을 마우스 오른쪽 버튼으로 클릭 비트스트림 설정...을 선택합니다. .
  • 설정 대화 상자에서 -bin_file 옆의 확인란을 선택하십시오. 확인을 클릭합니다. :

  • 그림 4.31 – 비트스트림 설정 대화상자

    1. 기본 Vivado 대화 상자에서 비트스트림 생성 을 클릭합니다. 비트스트림 생성 프로세스를 반복합니다. 취소 를 클릭하십시오. 비트스트림 생성이 완료될 때 대화
    1. 하드웨어 대화 상자에서 FPGA 부품 번호(xc7a100t_0 ) 구성 메모리 장치 추가...를 선택합니다. :


    그림 4.32 – 구성 메모리 장치 추가… 메뉴 선택

    1. s25fl127 입력 검색 에 그러면 하나의 일치하는 부품 번호가 나타납니다. 부품을 선택하고 확인을 클릭합니다. :


    그림 4.33 – 구성 메모리 장치 추가 대화 상자

    <올 시작="7">
  • 구성 메모리 장치를 지금 프로그래밍하시겠습니까?라는 대화 상자가 표시됩니다. 확인을 클릭합니다. .
  • 이렇게 하면 프로그램 구성 메모리 장치 가 나타납니다. 구성 파일 이름을 요청하는 대화 상자. 클릭 구성 파일 오른쪽에 있는 버튼 C:/Projects/ArtyAdder/ArtyAdder.runs/impl_1/ARTY_ADDER.bin을 선택합니다. 확인을 클릭합니다. :

  • 그림 4.34 – 프로그램 구성 메모리 장치 대화 상자

    1. 프로그래밍 프로세스는 파일이 보드 플래시 메모리에 프로그래밍된 후 성공을 나타내는 메시지를 수신해야 하는 데 몇 초가 걸립니다.


    그림 4.35 – 프로그램 플래시 완료 대화 상자

    그 후, 보드 전원을 껐다 켤 때마다 4비트 가산기 프로그램이 로드되고 실행됩니다. 구성 파일 로드에 사용한 설정으로 프로그램을 로드하는 데 오랜 시간이 걸립니다. FPGA가 프로그램을 로드할 때까지 기다리지 않으려면 다음 단계를 수행하여 구성 파일 로드 속도를 향상시킬 수 있습니다.

    <올>
  • 합성 디자인 열기 선택 Flow Navigator에서 .
  • Vivado 기본 메뉴에서 도구/장치 속성 편집…을 선택합니다. .
  • 일반 탭에서 비트스트림 압축 사용 을 설정합니다. 으로 .
  • 구성 탭에서 구성 속도(MHz) 를 설정합니다. 33으로 변경한 다음 확인을 클릭합니다. .
  • 비트스트림을 다시 생성하고 설명된 대로 플래시 메모리를 프로그래밍합니다. 재프로그래밍 옵션을 표시하려면 구성 메모리 장치를 제거하고 다시 추가해야 합니다.
  • 하드웨어 닫기 관리자 .
  • Arty 보드 USB 케이블을 뽑았다가 꽂습니다. 프로그램은 전원을 켤 때 거의 즉시 실행되기 시작합니다.
  • 이 섹션에서는 FPGA I/O 핀의 신호와 상호 작용하는 간단한 조합 논리의 예를 제시했습니다. 여기서 의도는 귀하가 Vivado에 익숙해지도록 하는 것이었습니다.

    도구 모음 및 도구가 전체 FPGA 개발 주기를 수행하는 데 사용되는 방법을 보여줍니다.

    요약

    이 장은 리얼타임 임베디드 시스템 아키텍처에서 FPGA의 효과적인 사용에 대한 논의로 시작하여 표준 FPGA 디바이스와 여기에 포함된 로우 레벨 컴포넌트에 대한 설명으로 계속되었습니다. HDL, 블록 다이어그램 방법 및 C/C++와 같은 인기 있는 소프트웨어 프로그래밍 언어를 포함한 다양한 FPGA 설계 언어가 도입되었습니다. FPGA 개발 프로세스의 개요가 제시되었습니다. 이 장은 요구 사항 설명으로 시작하여 저비용 FPGA 개발 보드에 구현된 기능 시스템으로 끝나는 FPGA 개발 주기의 전체 예제로 마무리되었습니다.

    이 장을 마치면 FPGA가 실시간 임베디드 시스템 아키텍처에 효과적으로 적용될 수 있는 방법과 FPGA 집적 회로 내부의 구성 요소를 이해해야 합니다. FPGA 알고리즘 설계에 사용되는 프로그래밍 언어, FPGA 개발 주기의 단계, FPGA 개발 프로세스의 단계 순서를 이해했습니다.

    다음 장에서는 FPGA 개발 프로세스를 확장하여 FPGA를 포함하는 실시간 임베디드 시스템을 설계하는 완전한 접근 방식을 제공합니다. 또한 다음 장에서 예제로 사용할 디지털 오실로스코프인 프로토타입 고성능 임베디드 시스템의 개발을 시작할 것입니다.

    Packt Publishing의 허가를 받아 재인쇄했습니다. 저작권 © 2021 팩트 퍼블리싱


    짐 레딘 Ledin Engineering, Inc.의 CEO입니다. Jim은 임베디드 소프트웨어 및 하드웨어 설계, 개발 및 테스트 전문가입니다. 그는 또한 임베디드 시스템 사이버 보안 평가 및 침투 테스트를 수행합니다. 그는 학사 학위가 있습니다. Iowa State University에서 항공우주 공학 학위 및 M.S. Georgia Institute of Technology에서 전기 및 컴퓨터 공학 학위를 취득했습니다. Jim은 캘리포니아에 등록된 전문 전기 엔지니어이자 CISSP(공인 정보 시스템 보안 전문가), CEH(공인 윤리 해커) 및 CPT(공인 침투 테스터)입니다.

    관련 콘텐츠:

    • FPGA를 사용한 임베디드 디자인:하드웨어 리소스
    • FPGA를 사용한 임베디드 디자인:구현 언어
    • FPGA를 사용한 임베디드 디자인:개발 프로세스
    • 오픈 소스 도구로 FPGA 프로그래밍 간소화
    • FPGA 또는 ASIC에서 부동 소수점 알고리즘 구현
    • 딥 러닝을 위한 FPGA 활용
    • AI 애플리케이션을 위해 GPU 코드를 FPGA로 마이그레이션하는 소프트웨어 도구

    더 많은 Embedded를 보려면 Embedded의 주간 이메일 뉴스레터를 구독하세요.


    임베디드

    1. 임베디드 시스템 디자인이란:디자인 프로세스의 단계
    2. 3D 인쇄된 부품을 크레용으로 마무리...?
    3. 전문가 인터뷰:시뮬레이션을 통한 금속 3D 프린팅 성공에 대한 ANSYS의 수석 기술자
    4. 내장된 AI로 빅 데이터를 스마트 데이터로 전환
    5. USB Type-C 포트 구현 과제 및 설계 솔루션
    6. 주요 산업 동향이 임베디드 디자인을 형성하고 있습니다
    7. 개방형 소스 플랫폼은 임베디드 Linux로 IoT를 대상으로 합니다.
    8. Clientron:프린터가 통합된 다기능 POS 단말기
    9. 광학 센서로 혈압을 측정하는 디자인 키트
    10. 첨가제 결합