알테라 Nios V 임베디드 프로세서

명세서

  • 제품명: Nios V 프로세서
  • 소프트웨어 호환성: Quartus Prime 소프트웨어 및 플랫폼 디자이너
  • 프로세서 유형: Altera FPGA
  • 메모리 시스템: 휘발성 메모리와 비휘발성 메모리
  • 통신 인터페이스: UART 에이전트

Nios V 프로세서 하드웨어 시스템 설계

Nios V 프로세서 하드웨어 시스템을 설계하려면 다음 단계를 따르세요.

  1. Platform Designer를 사용하여 Nios V 프로세서 시스템 설계를 만듭니다.
  2. 시스템을 Quartus Prime 프로젝트에 통합합니다.
  3. 휘발성 및 비휘발성 메모리를 포함한 메모리 시스템을 설계합니다.
  4. 시계와 재설정 모범 사례를 구현합니다.
  5. 효율적인 운영을 위해 기본 에이전트와 UART 에이전트를 할당합니다.

Nios V 프로세서 소프트웨어 시스템 설계

Nios V 프로세서용 소프트웨어 시스템을 설계하려면:

  1. Nios V 프로세서의 소프트웨어 개발 흐름을 따르세요.
  2. 보드 지원 패키지 프로젝트와 애플리케이션 프로젝트를 만듭니다.

Nios V 프로세서 구성 및 부팅 솔루션

Nios V 프로세서를 구성하고 부팅하려면 다음을 수행하세요.

  1. 구성 및 부팅 솔루션에 대한 소개를 이해합니다.
  2. 원활한 작동을 위해 애플리케이션을 연결합니다.

Nios® V 임베디드 프로세서에 대하여
1.1. Altera® FPGA 및 임베디드 프로세서view
Altera FPGA 장치는 다양한 옵션을 제공하는 동시에 완전한 마이크로프로세서로 기능하는 로직을 구현할 수 있습니다.
개별 마이크로프로세서와 Altera FPGA의 중요한 차이점은 Altera FPGA 패브릭이 전원 공급 시 로직을 포함하지 않는다는 것입니다. Nios® V 프로세서는 RISC-V 사양을 기반으로 하는 소프트 지적 재산(IP) 프로세서입니다. Nios V 프로세서 기반 시스템에서 소프트웨어를 실행하기 전에 Nios V 프로세서가 포함된 하드웨어 설계로 Altera FPGA 장치를 구성해야 합니다. 설계 요구 사항에 따라 Nios V 프로세서를 Altera FPGA의 어느 위치에나 배치할 수 있습니다.


Altera® FPGA IP 기반 임베디드 시스템이 개별 마이크로프로세서 기반 시스템으로 동작하도록 하려면 시스템에 다음이 포함되어야 합니다. · AJTAG Altera FPGA 구성, 하드웨어 및 소프트웨어를 지원하는 인터페이스
디버깅 · Altera FPGA 구성 메커니즘의 전원 켜기
시스템에 이러한 기능이 있다면, Altera FPGA에 로드된 사전 테스트된 하드웨어 설계를 기반으로 설계를 개선할 수 있습니다. Altera FPGA를 사용하면 문제를 해결하거나 새로운 기능을 추가하기 위해 설계를 신속하게 수정할 수 있습니다. 시스템의 J를 사용하여 Altera FPGA를 재구성하면 이러한 새로운 하드웨어 설계를 쉽게 테스트할 수 있습니다.TAG 인터페이스.
JTAG 인터페이스는 하드웨어 및 소프트웨어 개발을 지원합니다. J를 사용하여 다음 작업을 수행할 수 있습니다.TAG 인터페이스: · Altera FPGA 구성 · 소프트웨어 다운로드 및 디버깅 · UART와 유사한 인터페이스를 통해 Altera FPGA와 통신(JTAG 유아트
터미널) · 하드웨어 디버깅(Signal Tap 내장 로직 분석기 사용) · 플래시 메모리 프로그래밍
Nios V 프로세서 기반 설계로 Altera FPGA를 구성한 후 소프트웨어 개발 흐름은 개별 마이크로컨트롤러 설계 흐름과 유사합니다.


관련 정보 · AN 985: Nios V 프로세서 튜토리얼
간단한 Nios V 프로세서 시스템을 만들고 Hello World 애플리케이션을 실행하는 방법에 대한 빠른 시작 가이드입니다.
© Altera Corporation. Altera, Altera 로고, `a' 로고 및 기타 Altera 마크는 Altera Corporation의 상표입니다. Altera는 사전 통지 없이 언제든지 제품 및 서비스를 변경할 권리가 있습니다. Altera는 Altera가 서면으로 명시적으로 동의한 경우를 제외하고 본 문서에 설명된 정보, 제품 또는 서비스의 적용 또는 사용으로 인해 발생하는 모든 책임이나 의무를 지지 않습니다. Altera 고객은 게시된 정보를 신뢰하거나 제품 또는 서비스를 주문하기 전에 최신 버전의 장치 사양을 확인하는 것이 좋습니다. *다른 이름 및 브랜드는 다른 사람의 자산으로 주장될 수 있습니다.

1. Nios® V 임베디드 프로세서 726952 소개 | 2025.07.16
· Nios V 프로세서 참조 매뉴얼은 Nios V 프로세서 성능 벤치마크, 프로세서 아키텍처, 프로그래밍 모델 및 핵심 구현에 대한 정보를 제공합니다.
· 임베디드 주변 장치 IP 사용자 가이드 · Nios V 프로세서 소프트웨어 개발자 핸드북


Nios V 프로세서 소프트웨어 개발 환경, 사용 가능한 도구, 그리고 Nios V 프로세서에서 실행되는 소프트웨어를 빌드하는 프로세스를 설명합니다. · Ashling* RiscFree* Altera FPGA용 통합 개발 환경(IDE) 사용자 가이드: Altera FPGA Arm* 기반 HPS 및 Nios V 코어 프로세서용 RiscFree* 통합 개발 환경(IDE)에 대해 설명합니다. · Nios V 프로세서 Altera FPGA IP 릴리스 노트
1.2. Quartus® Prime 소프트웨어 지원
Nios V 프로세서 빌드 흐름은 Quartus® Prime Pro Edition 소프트웨어와 Quartus Prime Standard Edition 소프트웨어에서 서로 다릅니다. 차이점에 대한 자세한 내용은 AN 980: Nios V 프로세서 Quartus Prime 소프트웨어 지원을 참조하십시오.
관련 정보 AN 980: Nios V 프로세서 Quartus Prime 소프트웨어 지원
1.3. Nios V 프로세서 라이선싱
각 Nios V 프로세서 버전에는 고유한 라이선스 키가 있습니다. 라이선스 키를 취득하면 만료일까지 모든 Nios V 프로세서 프로젝트에 동일한 라이선스 키를 사용할 수 있습니다. Nios V 프로세서 Altera FPGA IP 라이선스는 무료로 취득할 수 있습니다.
Nios V 프로세서 라이선스 키 목록은 Altera FPGA 셀프 서비스 라이선스 센터에서 확인할 수 있습니다. "평가판 또는 무료 라이선스 신청" 탭을 클릭하고 해당 옵션을 선택하여 신청하세요.
그림 1. Altera FPGA 셀프 서비스 라이선싱 센터

라이선스 키를 사용하면 다음을 수행할 수 있습니다.
피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 7

1. Nios® V 임베디드 프로세서 726952 소개 | 2025.07.16
· 시스템 내에 Nios V 프로세서를 구현합니다. · Nios V 프로세서 시스템의 동작을 시뮬레이션합니다. · 크기 및 속도와 같은 설계 기능을 검증합니다. · 장치 프로그래밍을 생성합니다. files. · 장치를 프로그래밍하고 하드웨어에서 설계를 검증합니다.
Altera FPGA용 Ashling* RiscFree* IDE에서 소프트웨어를 개발하는 데 라이선스가 필요하지 않습니다.
관련 정보 · Altera FPGA 셀프 서비스 라이선싱 센터
Nios V 프로세서 Altera FPGA IP 라이선스 키를 얻는 방법에 대한 자세한 내용은 Altera FPGA 소프트웨어 설치 및 라이선스를 참조하세요. Altera FPGA 소프트웨어 라이선스와 고정 라이선스 및 네트워크 라이선스 서버 설정에 대한 자세한 내용은 Altera FPGA 소프트웨어 설치 및 라이선스를 참조하세요.
1.4. 임베디드 시스템 설계
다음 그림은 하드웨어와 소프트웨어 개발을 포함한 Nios V 프로세서 기반 시스템 설계 흐름을 단순화하여 보여줍니다.

Nios® V 임베디드 프로세서 설계 핸드북 8

피드백 보내기

1. Nios® V 임베디드 프로세서 726952 소개 | 2025.07.16

그림 2.

Nios V 프로세서 시스템 설계 흐름
시스템 개념

시스템 요구 사항 분석

니오스® V
프로세서 코어 및 표준 구성 요소

시스템 정의 및 생성
플랫폼 디자이너

하드웨어 흐름: Intel Quartus Prime 프로젝트 통합 및 컴파일

소프트웨어 흐름: Nios V 제안 소프트웨어 개발 및 구축

하드웨어 흐름: FPGA 설계 다운로드
타겟 보드로

소프트웨어 흐름: Nios V 프로세서 소프트웨어 테스트 및 디버깅

소프트웨어가 사양을 충족하지 못합니까?

하드웨어 사양 충족 여부? 예
시스템 완료

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 9

726952 | 2025.07.16 피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계

그림 3.

다음 다이어그램은 일반적인 Nios V 프로세서 하드웨어 설계를 보여줍니다. Nios V 프로세서 시스템 하드웨어 설계 흐름

시작

Nios V 코어 및 표준 구성 요소

Platform Designer를 사용하여 Nios V 기반 시스템 설계
플랫폼 디자이너 디자인 생성

Intel Quartus Prime Project와 Platform Designer 시스템 통합
핀 위치, 타이밍 요구 사항 및 기타 설계 제약 조건 지정
Intel Quartus Prime에서 대상 장치에 대한 하드웨어 컴파일

다운로드 준비 완료
2.1. Platform Designer를 사용하여 Nios V 프로세서 시스템 설계 생성
Quartus Prime 소프트웨어에는 Nios V 프로세서 IP 코어 및 기타 IP를 Altera FPGA 시스템 설계에 정의하고 통합하는 작업을 간소화하는 Platform Designer 시스템 통합 도구가 포함되어 있습니다. Platform Designer는 지정된 상위 레벨 연결 정보를 기반으로 상호 연결 로직을 자동으로 생성합니다. 이러한 상호 연결 자동화를 통해 시스템 레벨 HDL 연결을 지정하는 데 소요되는 시간 소모적인 작업을 없앨 수 있습니다.
© Altera Corporation. Altera, Altera 로고, `a' 로고 및 기타 Altera 마크는 Altera Corporation의 상표입니다. Altera는 사전 통지 없이 언제든지 제품 및 서비스를 변경할 권리가 있습니다. Altera는 Altera가 서면으로 명시적으로 동의한 경우를 제외하고 본 문서에 설명된 정보, 제품 또는 서비스의 적용 또는 사용으로 인해 발생하는 모든 책임이나 의무를 지지 않습니다. Altera 고객은 게시된 정보를 신뢰하거나 제품 또는 서비스를 주문하기 전에 최신 버전의 장치 사양을 확인하는 것이 좋습니다. *다른 이름 및 브랜드는 다른 사람의 자산으로 주장될 수 있습니다.

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

시스템 하드웨어 요구 사항을 분석한 후, Quartus Prime을 사용하여 시스템에 필요한 Nios V 프로세서 코어, 메모리 및 기타 구성 요소를 지정합니다. Platform Designer는 하드웨어 시스템에 구성 요소를 통합하기 위한 상호 연결 로직을 자동으로 생성합니다.

2.1.1. Nios V 프로세서 Altera FPGA IP 인스턴스화

Platform Designer IP 카탈로그 프로세서 및 주변 장치 내장 프로세서에서 모든 프로세서 IP 코어를 인스턴스화할 수 있습니다.

각 프로세서의 IP 코어는 고유한 아키텍처를 기반으로 다양한 구성 옵션을 지원합니다. 설계 요구 사항에 맞게 이러한 구성을 정의할 수 있습니다.

표 1.

핵심 변형에 따른 구성 옵션

구성 옵션

Nios V/c 프로세서

Nios V/m 프로세서

디버그 사용 재설정 요청

트랩, 예외 및 인터럽트

CPU 아키텍처

전자통신

캐시, 주변 장치 영역 및 TCM

사용자 정의 지침

록스텝

Nios V/g 프로세서

2.1.1.1. Nios V/c 컴팩트 마이크로컨트롤러 Altera FPGA IP 인스턴스화 그림 4. Nios V/c 컴팩트 마이크로컨트롤러 Altera FPGA IP

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 11

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

2.1.1.1.1. CPU 아키텍처 탭

표 2.

CPU 아키텍처 탭

특징

설명

Avalon® 인터페이스 활성화: 명령어 관리자와 데이터 관리자를 위한 Avalon 인터페이스를 활성화합니다. 비활성화하면 시스템은 AXI4-Lite 인터페이스를 사용합니다.

마하르티드 CSR 가치

· 잘못된 IP 옵션입니다. · Nios V/c 프로세서에서 mhartid CSR 값을 사용하지 마세요.

2.1.1.1.2. 재설정 요청 탭 사용

표 3.

재설정 요청 탭 매개변수 사용

재설정 요청 탭 사용

설명

재설정 요청 인터페이스 추가

· 이 옵션을 활성화하면 로컬 마스터가 Nios V 프로세서 시스템의 다른 구성 요소에 영향을 주지 않고 Nios V 프로세서를 재설정하도록 트리거할 수 있는 로컬 재설정 포트를 노출합니다.
· 리셋 인터페이스는 입력 resetreq 신호와 출력 ack 신호로 구성됩니다.
· resetreq 신호를 보내면 Nios V 프로세서 코어에 대한 재설정을 요청할 수 있습니다.
· resetreq 신호는 프로세서가 ack 신호를 어서트할 때까지 어서트 상태를 유지해야 합니다. 어서트 상태가 유지되지 않으면 프로세서가 비결정적 상태에 빠질 수 있습니다.
· Nios V 프로세서는 ack 신호를 보내 재설정이 성공했음을 응답합니다.
· 프로세서가 성공적으로 재설정된 후, resetreq 신호가 해제될 때까지 ack 신호의 어서션은 주기적으로 여러 번 발생할 수 있습니다.

2.1.1.1.3. 트랩, 예외 및 인터럽트 탭

표 4.

트랩, 예외 및 인터럽트 탭 매개변수

트랩, 예외 및 인터럽트

설명

리셋 에이전트

· 리셋 벡터(Nios V 프로세서 리셋 주소)를 호스팅하는 메모리. 리셋 코드가 있는 곳입니다.
· Nios V 프로세서 명령어 마스터에 연결되어 있고 Nios V 프로세서 부팅 흐름에 의해 지원되는 모든 메모리 모듈을 리셋 에이전트로 선택할 수 있습니다.

오프셋 재설정

· 선택한 리셋 에이전트의 기준 주소를 기준으로 리셋 벡터의 오프셋을 지정합니다. · Platform Designer는 리셋 오프셋에 대한 기본값을 자동으로 제공합니다.

메모:

Platform Designer는 리셋 오프셋에 절대 주소를 지정할 수 있는 절대(Absolute) 옵션을 제공합니다. 리셋 벡터를 저장하는 메모리가 프로세서 시스템 및 하위 시스템 외부에 있는 경우 이 옵션을 사용하십시오.

Nios® V 임베디드 프로세서 설계 핸드북 12

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

2.1.1.1.4. ECC 탭

표 5.

ECC 탭

전자통신

오류 감지 및 상태 보고 활성화

설명
· Nios V 프로세서 내부 RAM 블록에 ECC 기능을 적용하려면 이 옵션을 활성화합니다. · ECC 기능은 최대 2비트 오류를 ​​감지하고 다음 동작에 따라 대응합니다.
— 수정 가능한 1비트 오류인 경우, 프로세서는 프로세서 파이프라인에서 오류를 수정한 후에도 계속 작동합니다. 그러나 수정된 ​​내용은 소스 메모리에 반영되지 않습니다.
— 오류가 수정 불가능한 경우 프로세서는 프로세서 파이프라인과 소스 메모리에서 오류를 수정하지 않고 계속 작동하여 프로세서가 비결정적 상태로 전환될 수 있습니다.

2.1.1.2. Nios V/m 마이크로컨트롤러 Altera FPGA IP 인스턴스화 그림 5. Nios V/m 마이크로컨트롤러 Altera FPGA IP

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 13

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

2.1.1.2.1. 디버그 탭

표 6.

디버그 탭 매개변수

디버그 탭

설명

디버그 활성화
디버그 모듈에서 재설정 활성화

· 이 옵션을 활성화하면 J를 추가할 수 있습니다.TAG Nios V 프로세서에 대한 대상 연결 모듈입니다. · JTAG 타겟 연결 모듈을 사용하면 Nios V 프로세서에 연결할 수 있습니다.
JTAG FPGA의 인터페이스 핀. · 이 연결은 다음과 같은 기본 기능을 제공합니다.
— Nios V 프로세서를 시작 및 중지합니다. — 레지스터와 메모리를 검사하고 편집합니다. — Nios V 애플리케이션 .elf를 다운로드합니다. file 런타임에 프로세서 메모리로
niosv-download. — Nios V 프로세서에서 실행되는 애플리케이션 디버깅 · dm_agent 포트를 프로세서 명령어 및 데이터 버스에 연결합니다. 두 버스의 기본 주소가 동일한지 확인합니다.
· dbg_reset_out 및 ndm_reset_in 포트를 노출하려면 이 옵션을 활성화하세요. · JTAG 디버거 또는 niosv-download -r 명령은 dbg_reset_out을 트리거합니다.
Nios V 프로세서가 이 포트에 연결된 시스템 주변 장치를 재설정할 수 있도록 합니다. · reset 대신 dbg_reset_out 인터페이스를 ndm_reset_in에 연결해야 합니다.
프로세서 코어와 타이머 모듈의 리셋을 트리거하는 인터페이스입니다. 불확실한 동작을 방지하기 위해 dbg_reset_out 인터페이스를 리셋 인터페이스에 연결해서는 안 됩니다.

2.1.1.2.2. 재설정 요청 탭 사용

표 7.

재설정 요청 탭 매개변수 사용

재설정 요청 탭 사용

설명

재설정 요청 인터페이스 추가

· 이 옵션을 활성화하면 로컬 마스터가 Nios V 프로세서 시스템의 다른 구성 요소에 영향을 주지 않고 Nios V 프로세서를 재설정하도록 트리거할 수 있는 로컬 재설정 포트를 노출합니다.
· 리셋 인터페이스는 입력 resetreq 신호와 출력 ack 신호로 구성됩니다.
· resetreq 신호를 보내면 Nios V 프로세서 코어에 대한 재설정을 요청할 수 있습니다.
· resetreq 신호는 프로세서가 ack 신호를 어서트할 때까지 어서트 상태를 유지해야 합니다. 어서트 상태가 유지되지 않으면 프로세서가 비결정적 상태에 빠질 수 있습니다.
· 디버그 모드에서 resetreq 신호를 주장해도 프로세서 상태에는 영향을 미치지 않습니다.
· Nios V 프로세서는 ack 신호를 보내 재설정이 성공했음을 응답합니다.
· 프로세서가 성공적으로 재설정된 후, resetreq 신호가 해제될 때까지 ack 신호의 어서션은 주기적으로 여러 번 발생할 수 있습니다.

2.1.1.2.3. 트랩, 예외 및 인터럽트 탭

표 8.

트랩, 예외 및 인터럽트 탭

트랩, 예외 및 인터럽트 탭

설명

리셋 에이전트

· 리셋 벡터(Nios V 프로세서 리셋 주소)를 호스팅하는 메모리. 리셋 코드가 있는 곳입니다.
· Nios V 프로세서 명령어 마스터에 연결되어 있고 Nios V 프로세서 부팅 흐름에 의해 지원되는 모든 메모리 모듈을 리셋 에이전트로 선택할 수 있습니다.

오프셋 인터럽트 모드 재설정

· 선택한 리셋 에이전트의 기준 주소를 기준으로 리셋 벡터의 오프셋을 지정합니다. · Platform Designer는 리셋 오프셋에 대한 기본값을 자동으로 제공합니다.
인터럽트 컨트롤러의 유형을 직접 또는 벡터형으로 지정합니다. 참고: Nios V/m 비파이프라인 프로세서는 벡터형 인터럽트를 지원하지 않습니다.
따라서 프로세서가 비파이프라인 모드에 있을 때는 벡터 인터럽트 모드를 사용하지 마십시오.

Nios® V 임베디드 프로세서 설계 핸드북 14

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

메모:

Platform Designer는 리셋 오프셋에 절대 주소를 지정할 수 있는 절대(Absolute) 옵션을 제공합니다. 리셋 벡터를 저장하는 메모리가 프로세서 시스템 및 하위 시스템 외부에 있는 경우 이 옵션을 사용하십시오.

2.1.1.2.4. CPU 아키텍처

표 9.

CPU 아키텍처 탭 매개변수

CPU 아키텍처

설명

CPU에서 파이프라인 활성화

· 파이프라인 Nios V/m 프로세서를 인스턴스화하려면 이 옵션을 활성화합니다. — 더 높은 논리 영역과 더 낮은 Fmax 주파수를 희생하여 IPC가 더 높습니다.
· 파이프라인이 없는 Nios V/m 프로세서를 인스턴스화하려면 이 옵션을 비활성화합니다. — Nios V/c 프로세서와 유사한 핵심 성능을 제공합니다. — 디버깅 및 인터럽트 기능을 지원합니다. — IPC는 낮지만 로직 영역은 더 작고 Fmax 주파수는 더 높습니다.

Avalon 인터페이스 활성화

명령어 관리자와 데이터 관리자를 위한 Avalon 인터페이스를 활성화합니다. 비활성화하면 시스템은 AXI4-Lite 인터페이스를 사용합니다.

마하르티드 CSR 가치

· Hart ID 레지스터(mhartid) 값은 기본적으로 0입니다. · 0~4094 사이의 값을 할당합니다. · Altera FPGA Avalon Mutex Core HAL API와 호환됩니다.

관련 정보 임베디드 주변 장치 IP 사용자 가이드 – Intel FPGA Avalon® Mutex Core

2.1.1.2.5. ECC 탭
표 10. ECC 탭
ECC는 오류 감지 및 상태 보고를 활성화합니다.

설명
· Nios V 프로세서 내부 RAM 블록에 ECC 기능을 적용하려면 이 옵션을 활성화합니다. · ECC 기능은 최대 2비트 오류를 ​​감지하고 다음 동작에 따라 대응합니다.
— 수정 가능한 1비트 오류인 경우, 프로세서는 프로세서 파이프라인에서 오류를 수정한 후에도 계속 작동합니다. 그러나 수정된 ​​내용은 소스 메모리에 반영되지 않습니다.
— 오류가 수정 불가능한 경우 프로세서는 프로세서 파이프라인과 소스 메모리에서 오류를 수정하지 않고 계속 작동하여 프로세서가 비결정적 상태로 전환될 수 있습니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 15

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16
2.1.1.3. Nios V/g 범용 프로세서 Altera FPGA IP 인스턴스화
그림 6. Nios V/g 범용 프로세서 Altera FPGA IP – 1부

그림 7.

Nios V/g 범용 프로세서 Altera FPGA IP – 2부(코어 레벨 인터럽트 컨트롤러 활성화 끄기)

Nios® V 임베디드 프로세서 설계 핸드북 16

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

그림 8.

Nios V/g 범용 프로세서 Altera FPGA IP – 2부(코어 레벨 인터럽트 컨트롤러 활성화 켜기)

그림 9. Nios V/g 범용 프로세서 Altera FPGA IP – 3부

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 17

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16
그림 10. Nios V/g 범용 프로세서 Altera FPGA IP – 4부

2.1.1.3.1. CPU 아키텍처

표 11. CPU 아키텍처 매개변수

CPU 아키텍처 탭 부동 소수점 단위 활성화

설명 프로세서 코어에 부동 소수점 단위("F" 확장)를 추가하려면 이 옵션을 활성화합니다.

지점 예측 활성화

분기 명령어에 대해 정적 분기 예측(뒤로 실행 및 앞으로 실행 안 함)을 활성화합니다.

마하르티드 CSR 가치

· Hart ID 레지스터(mhartid) 값은 기본적으로 0입니다. · 0~4094 사이의 값을 할당합니다. · Altera FPGA Avalon Mutex Core HAL API와 호환됩니다.

FPU에 대한 FSQRT 및 FDIV 명령어 비활성화

· FPU에서 부동 소수점 제곱근(FSQRT) 및 부동 소수점 나눗셈(FDIV) 연산을 제거합니다.
· 런타임 동안 두 명령어 모두에 소프트웨어 에뮬레이션을 적용합니다.

관련 정보 임베디드 주변 장치 IP 사용자 가이드 – Intel FPGA Avalon® Mutex Core

Nios® V 임베디드 프로세서 설계 핸드북 18

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

2.1.1.3.2. 디버그 탭

표 12. 디버그 탭 매개변수

디버그 탭

설명

디버그 활성화
디버그 모듈에서 재설정 활성화

· 이 옵션을 활성화하면 J를 추가할 수 있습니다.TAG Nios V 프로세서에 대한 대상 연결 모듈입니다. · JTAG 타겟 연결 모듈을 사용하면 Nios V 프로세서에 연결할 수 있습니다.
JTAG FPGA의 인터페이스 핀. · 이 연결은 다음과 같은 기본 기능을 제공합니다.
— Nios V 프로세서를 시작 및 중지합니다. — 레지스터와 메모리를 검사하고 편집합니다. — Nios V 애플리케이션 .elf를 다운로드합니다. file 런타임에 프로세서 메모리로
niosv-download. — Nios V 프로세서에서 실행되는 애플리케이션 디버깅 · dm_agent 포트를 프로세서 명령어 및 데이터 버스에 연결합니다. 두 버스의 기본 주소가 동일한지 확인합니다.
· dbg_reset_out 및 ndm_reset_in 포트를 노출하려면 이 옵션을 활성화하세요. · JTAG 디버거 또는 niosv-download -r 명령은 dbg_reset_out을 트리거합니다.
Nios V 프로세서가 이 포트에 연결된 시스템 주변 장치를 재설정할 수 있도록 합니다. · reset 대신 dbg_reset_out 인터페이스를 ndm_reset_in에 연결해야 합니다.
프로세서 코어와 타이머 모듈의 리셋을 트리거하는 인터페이스입니다. 불확실한 동작을 방지하기 위해 dbg_reset_out 인터페이스를 리셋 인터페이스에 연결해서는 안 됩니다.

2.1.1.3.3. Lockstep 탭 표 13. Lockstep 탭
매개변수 잠금 단계 기본 시간 초과 기간 활성화 확장 재설정 인터페이스 활성화

설명 · 듀얼 코어 Lockstep 시스템을 활성화합니다. · 리셋 종료 시 프로그래밍 가능한 타임아웃의 기본값(0~255)을 설정합니다. · 확장 리셋 제어를 위한 확장 리셋 인터페이스(선택 사항)를 활성화합니다. · 비활성화 시 fRSmartComp는 기본 리셋 제어를 구현합니다.

2.1.1.3.4. 재설정 요청 탭 사용

표 14. 재설정 요청 탭 매개변수 사용

재설정 요청 탭 사용

설명

재설정 요청 인터페이스 추가

· 이 옵션을 활성화하면 로컬 마스터가 Nios V 프로세서 시스템의 다른 구성 요소에 영향을 주지 않고 Nios V 프로세서를 재설정하도록 트리거할 수 있는 로컬 재설정 포트를 노출합니다.
· 리셋 인터페이스는 입력 resetreq 신호와 출력 ack 신호로 구성됩니다.
· resetreq 신호를 보내면 Nios V 프로세서 코어에 대한 재설정을 요청할 수 있습니다.
· resetreq 신호는 프로세서가 ack 신호를 어서트할 때까지 어서트 상태를 유지해야 합니다. 어서트 상태가 유지되지 않으면 프로세서가 비결정적 상태에 빠질 수 있습니다.
· 디버그 모드에서 resetreq 신호를 주장해도 프로세서 상태에는 영향을 미치지 않습니다.
· Nios V 프로세서는 ack 신호를 보내 재설정이 성공했음을 응답합니다.
· 프로세서가 성공적으로 재설정된 후, resetreq 신호가 해제될 때까지 ack 신호의 어서션은 주기적으로 여러 번 발생할 수 있습니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 19

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

2.1.1.3.5. 트랩, 예외 및 인터럽트 탭

표 15.

코어 레벨 인터럽트 컨트롤러 활성화가 꺼진 경우 트랩, 예외 및 인터럽트 탭

트랩, 예외 및 인터럽트 탭
리셋 에이전트

설명
· 리셋 벡터(Nios V 프로세서 리셋 주소)를 호스팅하는 메모리. 리셋 코드가 있는 곳입니다.
· Nios V 프로세서 명령어 마스터에 연결되어 있고 Nios V 프로세서 부팅 흐름에 의해 지원되는 모든 메모리 모듈을 리셋 에이전트로 선택할 수 있습니다.

오프셋 재설정

· 선택한 리셋 에이전트의 기준 주소를 기준으로 리셋 벡터의 오프셋을 지정합니다. · Platform Designer는 리셋 오프셋에 대한 기본값을 자동으로 제공합니다.

코어 레벨 인터럽트 컨트롤러(CLIC) 활성화

· CLIC이 선제적 인터럽트와 구성 가능한 인터럽트 트리거 조건을 지원하도록 합니다.
· 이 기능을 활성화하면 플랫폼 인터럽트 수를 구성하고, 트리거 조건을 설정하고, 일부 인터럽트를 선제적으로 지정할 수 있습니다.

인터럽트 모드 섀도 레지스터 Files

인터럽트 유형을 직접 또는 벡터로 지정하여 인터럽트 발생 시 컨텍스트 전환을 줄이도록 섀도우 레지스터를 활성화합니다.

표 16.

코어 레벨 인터럽트 컨트롤러 활성화 시 트랩, 예외 및 인터럽트 발생

트랩, 예외 및 인터럽트

설명

리셋 에이전트
오프셋 재설정
코어 레벨 인터럽트 컨트롤러(CLIC) 활성화

· 리셋 벡터(Nios V 프로세서 리셋 주소)를 호스팅하는 메모리. 리셋 코드가 있는 곳입니다.
· Nios V 프로세서 명령어 마스터에 연결되어 있고 Nios V 프로세서 부팅 흐름에 의해 지원되는 모든 메모리 모듈을 리셋 에이전트로 선택할 수 있습니다.
· 선택한 리셋 에이전트의 기준 주소를 기준으로 리셋 벡터의 오프셋을 지정합니다. · Platform Designer는 리셋 오프셋에 대한 기본값을 자동으로 제공합니다.
· CLIC을 활성화하여 선제적 인터럽트 및 구성 가능한 인터럽트 트리거 조건을 지원합니다. · 활성화하면 플랫폼 인터럽트 수를 구성하고 트리거 조건을 설정할 수 있습니다.
일부 인터럽트를 선제적 인터럽트로 지정합니다.

인터럽트 모드

· 인터럽트 유형을 직접, 벡터 또는 CLIC으로 지정합니다.

섀도우 레지스터 Files

· 인터럽트 시 컨텍스트 전환을 줄이기 위해 섀도우 레지스터를 활성화합니다.
· 두 가지 접근 방식을 제공합니다.
— CLIC 인터럽트 레벨 수
— CLIC 인터럽트 레벨 수 – 1: 이 옵션은 레지스터 수를 원할 때 유용합니다. file 정확한 수의 M20K 또는 M9K 블록에 맞게 사본을 만듭니다.
· Nios V 프로세서가 섀도 레지스터를 사용하도록 설정 file인터럽트 발생 시 컨텍스트 전환 오버헤드를 줄여줍니다.
섀도우 레지스터에 대한 자세한 내용은 file자세한 내용은 Nios V 프로세서 참조 설명서를 참조하세요.

플랫폼 인터럽트 소스 수

· 16~2048 사이의 플랫폼 인터럽트 수를 지정합니다.
참고: CLIC은 최대 2064개의 인터럽트 입력을 지원하며, 처음 16개의 인터럽트 입력도 기본 인터럽트 컨트롤러에 연결됩니다.

CLIC 벡터 테이블 정렬

· 플랫폼 인터럽트 소스 수에 따라 자동으로 결정됩니다. · 권장 값보다 낮은 정렬을 사용하는 경우 CLIC가 로직을 증가시킵니다.
벡터링 계산을 수행하기 위해 추가 가산기를 추가하여 복잡성을 줄입니다. · 권장 값보다 낮은 정렬을 사용하면 복잡성이 증가합니다.
CLIC의 논리적 복잡성.
계속되는…

Nios® V 임베디드 프로세서 설계 핸드북 20

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

트랩, 예외 및 인터럽트
인터럽트 레벨 수
레벨당 인터럽트 우선 순위 수
구성 가능한 인터럽트 극성 지원 에지 트리거 인터럽트

설명
· 애플리케이션 코드에 대한 인터럽트 레벨 0을 추가하여 인터럽트 레벨 수를 지정합니다. 상위 레벨의 인터럽트는 하위 레벨 인터럽트에 대해 실행 중인 핸들러를 인터럽트(선점)할 수 있습니다.
· 인터럽트에 대한 유일한 옵션이 0이 아닌 인터럽트 레벨인 경우, 애플리케이션 코드는 항상 최하위 레벨인 8에 위치합니다. 참고: 인터럽트 레벨과 우선순위의 런타임 구성은 단일 256비트 레지스터에서 이루어집니다. 인터럽트 레벨의 개수가 256개이면 런타임에 인터럽트 우선순위를 구성할 수 없습니다. 그렇지 않은 경우, 구성 가능한 우선순위의 최대 개수는 1 / (인터럽트 레벨 개수 - XNUMX)입니다.
· CLIC이 비선점형 인터럽트 핸들러의 호출 순서를 결정하는 데 사용하는 인터럽트 우선순위 개수를 지정합니다. 참고: 선택한 인터럽트 레벨과 선택한 인터럽트 우선순위의 이진 값을 합한 값은 8비트 미만이어야 합니다.
· 런타임 중에 인터럽트 극성을 구성할 수 있습니다. · 기본 극성은 양의 극성입니다.
· 런타임 중에 인터럽트 트리거 조건을 구성할 수 있습니다. 즉, 고수준 트리거 또는 양의 에지 트리거(구성 가능한 인터럽트 극성에서 인터럽트 극성이 양의 값인 경우)입니다.
· 기본 트리거 조건은 레벨 트리거 인터럽트입니다.

메모:

Platform Designer는 리셋 오프셋에 절대 주소를 지정할 수 있는 절대(Absolute) 옵션을 제공합니다. 리셋 벡터를 저장하는 메모리가 프로세서 시스템 및 하위 시스템 외부에 있는 경우 이 옵션을 사용하십시오.

관련 정보 Nios® V 프로세서 참조 매뉴얼

2.1.1.3.6. 메모리 구성 탭

표 17. 메모리 구성 탭 매개변수

범주

메모리 구성 탭

설명

캐시

데이터 캐시 크기

· 데이터 캐시 크기를 지정합니다. · 유효한 크기는 0KB에서 16KB까지입니다. · 크기가 0KB이면 데이터 캐시를 끕니다.

명령어 캐시 크기

· 명령어 캐시의 크기를 지정합니다. · 유효한 크기는 0KB에서 16KB까지입니다. · 크기가 0KB이면 명령어 캐시를 끕니다.

주변 지역 A 및 B

크기

· 주변 영역의 크기를 지정합니다.
· 유효한 크기는 64KB에서 2GB까지이며, '없음'을 선택하면 주변 장치 영역이 비활성화됩니다.

기본 주소

· 크기를 선택한 후 주변 영역의 기준 주소를 지정합니다.
· 주변 지역의 모든 주소는 캐시할 수 없는 데이터 액세스를 생성합니다.
· 주변 장치 영역 기준 주소는 주변 장치 영역 크기에 맞춰야 합니다.

단단히 결합된 기억

크기

· 밀접하게 결합된 메모리의 크기를 지정합니다. — 유효한 크기는 0MB에서 512MB까지입니다.

기본 주소 초기화 File

· 밀접하게 결합된 메모리의 기본 주소를 지정합니다. · 초기화를 지정합니다. file 밀접하게 결합된 메모리의 경우.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 21

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

메모:

캐시가 활성화된 Nios V 프로세서 시스템에서는 시스템 주변 장치를 주변 장치 영역 내에 배치해야 합니다. 주변 장치 영역을 사용하여 UART, PIO, DMA 등과 같은 주변 장치에 대한 캐시 불가능한 트랜잭션을 정의할 수 있습니다.

2.1.1.3.7. ECC 탭

표 18. ECC 탭
ECC는 오류 감지 및 상태 보고를 활성화합니다.
단일 비트 수정 활성화

설명
· Nios V 프로세서 내부 RAM 블록에 ECC 기능을 적용하려면 이 옵션을 활성화합니다. · ECC 기능은 최대 2비트 오류를 ​​감지하고 다음 동작에 따라 대응합니다.
— 수정 가능한 단일 비트 오류이고 단일 비트 수정 활성화가 꺼져 있는 경우, 프로세서는 프로세서 파이프라인에서 오류를 수정한 후에도 계속 작동합니다. 그러나 수정된 ​​내용은 소스 메모리에 반영되지 않습니다.
— 수정 가능한 단일 비트 오류이고 단일 비트 수정 활성화가 켜져 있는 경우, 프로세서는 프로세서 파이프라인과 소스 메모리의 오류를 수정한 후에도 계속 작동합니다.
— 수정 불가능한 오류인 경우 프로세서는 작업을 중단합니다.
코어의 내장 메모리 블록에서 단일 비트 수정을 활성화합니다.

2.1.1.3.8. 사용자 지정 지침 탭

메모:

이 탭은 Nios V/g 프로세서 코어에서만 사용할 수 있습니다.

사용자 정의 지침 Nios V 사용자 정의 지침 하드웨어 인터페이스 테이블
Nios V 사용자 정의 명령 소프트웨어 매크로 테이블

설명
· Nios V 프로세서는 이 테이블을 사용하여 사용자 정의 명령어 관리자 인터페이스를 정의합니다.
· 정의된 사용자 정의 명령어 관리자 인터페이스는 Opcode(CUSTOM0-3)와 3비트의 funct7[6:4]로 고유하게 인코딩됩니다.
· 최대 32개의 개별 사용자 정의 지침 관리자 인터페이스를 정의할 수 있습니다.
· Nios V 프로세서는 이 테이블을 사용하여 정의된 사용자 정의 명령어 관리자 인터페이스에 대한 사용자 정의 명령어 소프트웨어 인코딩을 정의합니다.
· 정의된 각 사용자 정의 명령어 소프트웨어 인코딩의 경우 Opcode(CUSTOM0-3)와 funct3[7:6] 인코딩의 4비트는 사용자 정의 명령어 하드웨어 인터페이스 테이블의 정의된 사용자 정의 명령어 관리자 인터페이스 인코딩과 상관 관계가 있어야 합니다.
· funct7[6:4], funct7[3:0] 및 funct3[2:0]을 사용하여 지정된 사용자 정의 명령어에 대한 추가 인코딩을 정의하거나 추가 명령어 인수로 전달될 X로 지정할 수 있습니다.
· Nios V 프로세서는 system.h에 생성된 C 매크로로 정의된 사용자 정의 명령어 소프트웨어 인코딩을 제공하고 R 유형 RISC-V 명령어 형식을 따릅니다.
· 니모닉은 다음에 대한 사용자 정의 이름을 정의하는 데 사용할 수 있습니다. — system.h에 생성된 C-매크로.
— custom_instruction_debug.xml에 생성된 GDB 디버그 니모닉.

관련 정보
AN 977: Nios V 프로세서 사용자 정의 지침 특정 애플리케이션의 요구 사항을 충족하도록 Nios® V 프로세서를 사용자 정의할 수 있는 사용자 정의 지침에 대한 자세한 정보입니다.

Nios® V 임베디드 프로세서 설계 핸드북 22

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 활용한 Nios V 프로세서 하드웨어 시스템 설계 726952 | 2025.07.16
2.1.2. 시스템 구성 요소 설계 정의
플랫폼 디자이너를 사용하여 Nios V 프로세서 시스템의 하드웨어 특성을 정의하고 원하는 구성 요소를 추가하십시오. 다음 다이어그램은 다음 구성 요소를 포함하는 기본적인 Nios V 프로세서 시스템 설계를 보여줍니다. · Nios V 프로세서 코어 · 온칩 메모리 · JTAG UART · 간격 타이머(선택 사항)(1)
Platform Designer 시스템에 새로운 온칩 메모리가 추가되면 시스템 정보 동기화를 수행하여 추가된 메모리 구성 요소를 재설정에 반영합니다. 또는 Platform Designer에서 자동 동기화를 활성화하여 최신 구성 요소 변경 사항을 자동으로 반영할 수 있습니다.
그림 11. 예ampPlatform Designer에서 Nios V 프로세서와 다른 주변 장치 연결

(1) Platform Designer에서 외부 간격 타이머를 대체하기 위해 Nios V 내부 타이머 기능을 사용할 수 있습니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 23

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16
Platform Designer 시스템에서 도관으로 내보낼 작업 핀도 정의해야 합니다. 예를 들어amp적절한 FPGA 시스템 작동 핀 목록은 아래와 같이 정의되지만 이에 국한되지는 않습니다.
· 시계
· 초기화
· I/O 신호
2.1.3. 기본 주소 및 인터럽트 요청 우선순위 지정
설계에 추가된 구성요소가 시스템을 형성하기 위해 상호 작용하는 방식을 지정하려면 각 에이전트 구성요소에 대한 기본 주소를 지정하고 J에 대한 인터럽트 요청(IRQ) 우선순위를 지정해야 합니다.TAG UART와 간격 타이머. Platform Designer는 시스템의 모든 구성 요소에 적절한 기본 주소를 자동으로 할당하는 "기본 주소 할당" 명령을 제공합니다. 하지만 필요에 따라 기본 주소를 조정할 수 있습니다.
기본 주소를 할당하기 위한 몇 가지 지침은 다음과 같습니다.
· Nios V 프로세서 코어는 32비트 주소 범위를 갖습니다. 에이전트 구성 요소에 액세스하려면 해당 구성 요소의 기본 주소가 0x00000000에서 0xFFFFFFFF 사이여야 합니다.
· Nios V 프로그램은 주소를 참조하기 위해 기호 상수를 사용합니다. 기억하기 쉬운 주소 값을 선택할 필요는 없습니다.
· 주소 값이 1비트만 차이가 나는 구성 요소를 구분하는 주소 값을 사용하면 하드웨어 효율성이 향상됩니다. 모든 기본 주소를 가능한 가장 작은 주소 범위로 압축할 필요는 없습니다. 압축하면 하드웨어 효율성이 떨어질 수 있기 때문입니다.
· Platform Designer는 인접한 메모리 범위에 있는 개별 메모리 구성 요소를 정렬하려고 시도하지 않습니다. 예를 들어amp여러 개의 온칩 메모리 구성 요소를 하나의 연속된 메모리 범위로 주소 지정할 수 있도록 하려면 기본 주소를 명시적으로 지정해야 합니다.
Platform Designer는 IRQ 신호를 연결하여 유효한 하드웨어 결과를 생성하는 자동화 명령인 '인터럽트 번호 할당'도 제공합니다. 하지만 IRQ를 효과적으로 할당하려면 전반적인 시스템 응답 동작을 이해해야 합니다. Platform Designer는 최적의 IRQ 할당을 예측할 수 없습니다.
가장 낮은 IRQ 값이 가장 높은 우선순위를 갖습니다. 이상적인 시스템에서 Altera는 시스템 클록 틱의 정확성을 유지하기 위해 타이머 구성 요소의 IRQ가 가장 높은 우선순위, 즉 가장 낮은 값을 갖도록 권장합니다.
어떤 경우에는 타이머 구성 요소보다 더 높은 인터럽트 속도가 필요한 실시간 주변 장치(예: 비디오 컨트롤러)에 더 높은 우선순위를 할당할 수 있습니다.
관련 정보
Quartus Prime Pro Edition 사용자 가이드: Platform Designer를 사용하여 시스템을 만드는 방법에 대한 자세한 정보입니다.

Nios® V 임베디드 프로세서 설계 핸드북 24

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 활용한 Nios V 프로세서 하드웨어 시스템 설계 726952 | 2025.07.16
2.2. Quartus Prime 프로젝트에 Platform Designer 시스템 통합
Platform Designer에서 Nios V 시스템 설계를 생성한 후 다음 작업을 수행하여 Nios V 시스템 모듈을 Quartus Prime FPGA 설계 프로젝트에 통합합니다. · Quartus Prime 프로젝트에서 Nios V 시스템 모듈 인스턴스화 · Nios V 시스템 모듈의 신호를 FPGA 로직의 다른 신호에 연결 · 물리적 핀 위치 지정 · FPGA 설계 제한
2.2.1. Quartus Prime 프로젝트에서 Nios V 프로세서 시스템 모듈 인스턴스화
Platform Designer는 Quartus Prime에서 인스턴스화할 수 있는 시스템 모듈 설계 엔티티를 생성합니다. 시스템 모듈을 인스턴스화하는 방법은 전체 Quartus Prime 프로젝트의 설계 입력 방법에 따라 달라집니다. 예를 들어amp설계 입력에 Verilog HDL을 사용했다면 Verilog 기반 시스템 모듈을 인스턴스화하세요. 블록 다이어그램 방식을 사용하여 설계 입력을 원한다면 시스템 모듈 심볼(.bdf)을 인스턴스화하세요. file.
2.2.2. 신호 연결 및 물리적 핀 위치 지정
Altera FPGA 설계를 보드 수준 설계에 연결하려면 다음 작업을 수행하십시오. · 최상위 수준 식별 file 귀하의 디자인과 신호를 외부 Altera에 연결하기 위해
FPGA 장치 핀. · 보드 수준 설계 사용자 가이드를 통해 연결할 핀을 이해하거나
회로도. · 핀이 있는 Altera FPGA 장치의 포트에 최상위 설계의 신호를 할당합니다.
과제 도구.
플랫폼 디자이너 시스템은 최상위 설계가 될 수 있습니다. 하지만 Altera FPGA는 필요에 따라 추가 로직을 포함할 수 있으므로 맞춤형 최상위 설계를 구현할 수 있습니다. file. 최상위 레벨 file Nios V 프로세서 시스템 모듈 신호를 다른 Altera FPGA 설계 로직에 연결합니다.
관련 정보 Quartus Prime Pro Edition 사용자 가이드: 설계 제약 조건
2.2.3. Altera FPGA 설계 제약
적절한 Altera FPGA 시스템 설계에는 타이밍 클로저 및 기타 로직 제약 조건 요건을 충족하기 위한 설계 제약 조건이 포함됩니다. Quartus Prime 소프트웨어에서 제공하는 도구나 타사 EDA 공급업체를 사용하여 Altera FPGA 설계가 이러한 요건을 명시적으로 충족하도록 제약 조건을 적용해야 합니다. Quartus Prime 소프트웨어는 컴파일 단계에서 제공된 제약 조건을 사용하여 최적의 배치 결과를 얻습니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 25

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16
관련 정보 · Quartus Prime Pro Edition 사용자 가이드: 설계 제약 조건 · 타사 EDA 파트너 · Quartus Prime Pro Edition 사용자 가이드: 타이밍 분석기
2.3. Nios V 프로세서 메모리 시스템 설계
이 섹션에서는 Nios V 프로세서를 탑재한 Platform Designer 임베디드 시스템에서 메모리 장치를 선택하고 최적의 성능을 달성하기 위한 모범 사례를 설명합니다. 메모리 장치는 임베디드 시스템의 전반적인 성능 향상에 중요한 역할을 합니다. 임베디드 시스템 메모리는 프로그램 명령어와 데이터를 저장합니다.
2.3.1. 휘발성 메모리
메모리 유형의 주요 차이점은 휘발성입니다. 휘발성 메모리는 메모리 장치에 전원이 공급되는 동안만 내용을 유지합니다. 전원이 꺼지면 메모리의 내용이 사라집니다.
Examp휘발성 메모리의 종류로는 RAM, 캐시, 레지스터가 있습니다. 이러한 메모리는 실행 성능을 향상시키는 고속 메모리 유형입니다. Altera는 최적의 성능을 위해 Nios V 프로세서 명령어를 RAM에 로드하고 실행하며, Nios V IP 코어를 온칩 메모리 IP 또는 외부 메모리 인터페이스 IP와 페어링할 것을 권장합니다.
성능을 향상시키려면 Nios V 프로세서 데이터 관리자 인터페이스 유형 또는 너비를 부팅 RAM과 일치시켜 추가적인 Platform Designer 적응 구성 요소를 제거할 수 있습니다. 예를 들어amp32비트 AXI-4 인터페이스로 On-Chip Memory II를 구성할 수 있으며, 이는 Nios V 데이터 관리자 인터페이스와 일치합니다.
관련 정보 · 외부 메모리 인터페이스 IP 지원 센터 · 온칩 메모리(RAM 또는 ROM) Altera FPGA IP · 온칩 메모리 II(RAM 또는 ROM) Altera FPGA IP · Nios V 프로세서 애플리케이션 54페이지의 OCRAM에서 실행 가능
2.3.1.1. 온칩 메모리 구성 RAM 또는 ROM
Altera FPGA 온칩 메모리 IP를 RAM 또는 ROM으로 구성할 수 있습니다. · RAM은 읽기 및 쓰기 기능을 제공하며 휘발성 특성을 가지고 있습니다.
온칩 RAM에서 Nios V 프로세서를 부팅하는 경우, 런타임 중 리셋이 발생하더라도 부팅 내용이 보존되고 손상되지 않도록 해야 합니다. · Nios V 프로세서가 ROM에서 부팅되는 경우, Nios V 프로세서의 소프트웨어 버그가 온칩 메모리의 내용을 실수로 덮어쓸 수 없습니다. 따라서 부팅 소프트웨어 손상 위험을 줄일 수 있습니다.
관련 정보 · 온칩 메모리(RAM 또는 ROM) Altera FPGA IP · 온칩 메모리 II(RAM 또는 ROM) Altera FPGA IP · Nios V 프로세서 애플리케이션 54페이지의 OCRAM에서 실행 가능

Nios® V 임베디드 프로세서 설계 핸드북 26

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 활용한 Nios V 프로세서 하드웨어 시스템 설계 726952 | 2025.07.16
2.3.1.2. 캐시
온칩 메모리는 지연 시간이 짧기 때문에 캐시 기능을 구현하는 데 일반적으로 사용됩니다. Nios V 프로세서는 명령어 및 데이터 캐시에 온칩 메모리를 사용합니다. 온칩 메모리의 제한된 용량은 캐시의 경우 일반적으로 크기가 작기 때문에 문제가 되지 않습니다.
캐시는 일반적으로 다음과 같은 조건에서 사용됩니다.
· 일반 메모리는 칩 외부에 위치하므로 칩 내부 메모리보다 접근 시간이 깁니다.
· 소프트웨어 코드 중 성능이 중요한 부분을 명령어 캐시에 넣어 시스템 성능을 향상시킬 수 있습니다.
· 성능에 중요하고 가장 자주 사용되는 데이터 섹션을 데이터 캐시에 넣어 시스템 성능을 향상시킵니다.
Nios V 프로세서에서 캐시를 활성화하면 메모리 계층 구조가 만들어져 메모리 액세스 시간이 최소화됩니다.
2.3.1.2.1. 주변 영역
UART, I2C, SPI와 같은 내장 주변 장치 IP는 캐시해서는 안 됩니다. 액세스 시간이 긴 외부 메모리에는 캐시를 사용하는 것이 좋지만, 액세스 시간이 짧은 내장 메모리는 제외될 수 있습니다. 메모리를 제외한 UART, I2C, SPI와 같은 내장 주변 장치 IP는 캐시해서는 안 됩니다. 이는 에이전트 장치가 소프트 IP를 업데이트하는 등 외부 장치의 이벤트가 프로세서 캐시에 포착되지 않아 프로세서가 이를 수신하지 못하기 때문에 중요합니다. 따라서 캐시를 플러시할 때까지 이러한 이벤트가 감지되지 않을 수 있으며, 이로 인해 시스템에서 의도치 않은 동작이 발생할 수 있습니다. 요약하자면, 내장 주변 장치 IP의 메모리 매핑 영역은 캐시할 수 없으며 프로세서의 주변 장치 영역 내에 있어야 합니다.
주변 지역을 설정하려면 다음 단계를 따르세요.
1. 플랫폼 디자이너에서 시스템의 주소 맵을 엽니다.
2. 프로세서의 명령어 관리자와 데이터 관리자의 주소 맵으로 이동합니다.
3. 시스템의 주변 장치와 메모리를 식별합니다.
그림 12. 예amp주소 맵의 le

참고: 파란색 화살표는 메모리를 가리킵니다. 4. 주변 장치를 그룹화하세요.
a. 캐시 가능한 메모리 b. 캐시 불가능한 주변 장치

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 27

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

표 19. 캐시 가능 및 캐시 불가 영역

부하

주소 맵

상태

주변 지역

크기

기본 주소

user_application_mem.s1

0x0 ~ 0x3ffff

캐시 가능

없음

없음

cpu.dm_agent 부트코피어_롬.s1

0x40000 ~ 0x4ffff 0x50000 ~ 0x517ff

캐시 불가능 캐시 가능

65536바이트 N/A

0x40000 해당 없음

bootcopier_ram.s1 cpu.timer_sw_agent 사서함.avmm

0x52000 ~ 0x537ff 0x54000 ~ 0x5403f 0x54040 ~ 0x5407f

캐시 가능 캐시 불가능 캐시 불가능

144바이트(최소 크기는 65536바이트)

0x54000

sysid_qsys_0.control_slave

0x54080 ~ 0x54087

캐시할 수 없음

uart.avalon_jtag_노예

0x54088 ~ 0x5408f

캐시할 수 없음

5. 주변 영역을 특정 크기에 맞춰 정렬합니다.
· 예를 들어amp크기가 65536바이트이면 0x10000바이트에 해당합니다. 따라서 허용되는 기본 주소는 0x10000의 배수여야 합니다.
· CPU.dm_agent는 0x40000의 배수인 0x10000의 기준 주소를 사용합니다. 따라서 크기가 65536바이트이고 기준 주소가 0x40000인 주변 장치 영역 A가 요구 사항을 충족합니다.
· 0x54000에 있는 캐시 불가능한 영역들의 기준 주소가 0x10000의 배수가 아닙니다. 이 영역들을 0x60000 또는 0x10000의 다른 배수로 재할당해야 합니다. 따라서 크기가 65536바이트이고 기준 주소가 0x60000인 주변 장치 영역 B는 이 기준을 충족합니다.

표 20. 재할당을 사용한 캐시 가능 및 캐시 불가능 영역

부하

주소 맵

상태

주변 지역

크기

기본 주소

user_application_mem.s1

0x0 ~ 0x3ffff

캐시 가능

없음

없음

cpu.dm_agent

0x40000 ~ 0x4ffff

캐시할 수 없는 65536바이트

0x40000

부트코피어_롬.s1

0x50000 ~ 0x517ff

캐시 가능

없음

없음

bootcopier_ram.s1 cpu.timer_sw_agent 사서함.avmm sysid_qsys_0.control_slave

0x52000 ~ 0x537ff 0x60000 ~ 0x6003f 0x60040 ~ 0x6007f 0x60080 ~ 0x60087

캐시 가능 캐시 불가능 캐시 불가능 캐시 불가능

144바이트(최소 크기는 65536바이트)

0x60000

uart.avalon_jtag_노예

0x60088 ~ 0x6008f

캐시할 수 없음

2.3.1.3. 밀접하게 결합된 메모리
단단하게 결합된 메모리(TCM)는 낮은 지연 시간으로 인해 해당 작업에 적합하기 때문에 온칩 메모리를 사용하여 구현됩니다. TCM은 일반적인 주소 공간에 매핑되지만, 마이크로프로세서에 대한 전용 인터페이스를 가지고 있으며 캐시 메모리의 고성능, 저지연 특성을 가지고 있습니다. TCM은 또한 외부 호스트에 대한 종속 인터페이스를 제공합니다. 프로세서와 외부 호스트는 TCM을 처리할 수 있는 동일한 권한 수준을 갖습니다.

Nios® V 임베디드 프로세서 설계 핸드북 28

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

메모:

TCM 하위 포트가 외부 호스트에 연결된 경우, 프로세서 코어에 할당된 기준 주소와 다른 기준 주소로 표시될 수 있습니다. Altera는 두 주소를 동일한 값으로 정렬할 것을 권장합니다.

2.3.1.4. 외부 메모리 인터페이스(EMIF)
EMIF(외부 메모리 인터페이스)는 SRAM(정적 랜덤 액세스 메모리)과 유사한 기능을 하지만, 동적 메모리이며 내용을 유지하기 위해 주기적인 리프레시가 필요합니다. EMIF의 동적 메모리 셀은 SRAM의 정적 메모리 셀보다 훨씬 작아서 더 높은 용량과 더 저렴한 메모리 장치를 구현할 수 있습니다.
EMIF는 리프레시 요구 사항 외에도 특정 인터페이스 요구 사항을 가지고 있으며, 이로 인해 종종 특수 컨트롤러 하드웨어가 필요합니다. 고정된 주소 라인을 사용하는 SRAM과 달리, EMIF는 메모리 공간을 뱅크, 행, 열로 구성합니다. 뱅크와 행을 전환하면 약간의 오버헤드가 발생하므로 EMIF를 효율적으로 사용하려면 메모리 액세스 순서를 신중하게 지정해야 합니다. 또한 EMIF는 동일한 주소 라인에 행과 열 주소를 다중화하여 주어진 EMIF 크기에 필요한 핀 수를 줄입니다.
DDR, DDR2, DDR3, DDR4, DDR5와 같은 고속 EMIF 버전은 PCB 설계자가 고려해야 할 엄격한 신호 무결성 요구 사항을 부과합니다.
EMIF 장치는 시중의 RAM 유형 중 가장 비용 효율적이고 대용량이어서 널리 사용되는 옵션입니다. EMIF 인터페이스의 핵심 구성 요소는 주소 다중화, 새로 고침, 행과 뱅크 간 전환과 관련된 작업을 관리하는 EMIF IP입니다. 이러한 설계 덕분에 시스템의 나머지 부분에서는 내부 아키텍처를 이해하지 않고도 EMIF에 액세스할 수 있습니다.

관련 정보 외부 메모리 인터페이스 IP 지원 센터

2.3.1.4.1. 주소 스팬 확장기 IP
주소 범위 확장기(Address Span Extender) Altera FPGA IP는 메모리 매핑된 호스트 인터페이스가 주소 신호 폭보다 크거나 작은 주소 맵에 접근할 수 있도록 합니다. 주소 범위 확장기 IP는 주소 지정 가능 공간을 여러 개의 개별 윈도우로 분할하여 호스트가 해당 윈도우를 통해 메모리의 적절한 부분에 접근할 수 있도록 합니다.
주소 스팬 확장기는 호스트 및 에이전트 폭을 32비트 및 64비트 구성으로 제한하지 않습니다. 주소 스팬 확장기는 1~64비트 주소 창으로 사용할 수 있습니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 29

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

그림 13. 주소 스팬 확장기 Altera FPGA IP
에이전트 워드 주소

주소 범위 확장기

A

매핑 테이블
제어 포트 A

제어 레지스터 0 제어 레지스터 Z-1

확장된 호스트 주소 H

관련 정보
Quartus® Prime Pro Edition 사용자 가이드: 플랫폼 디자이너 자세한 내용은 주소 범위 확장기 Intel® FPGA IP 항목을 참조하세요.

2.3.1.4.2. Nios V 프로세서와 함께 주소 스팬 확장기 IP 사용
32비트 Nios V 프로세서는 최대 4GB의 주소 범위를 처리할 수 있습니다. EMIF에 4GB 이상의 메모리가 포함된 경우, 지원되는 최대 주소 범위를 초과하여 Platform Designer 시스템에 오류가 발생합니다. 이 문제를 해결하려면 주소 범위 확장기 IP가 필요합니다. 이 IP는 단일 EMIF 주소 공간을 여러 개의 작은 창으로 나눕니다.
Altera에서는 다음 매개변수를 고려할 것을 권장합니다.

표 21. 주소 스팬 확장기 매개변수

매개변수

권장 설정

데이터 경로 폭
확장된 마스터 바이트 주소 너비

32비트 프로세서와 관련된 32비트를 선택하세요. EMIF 메모리 크기에 따라 달라집니다.

슬레이브 워드 주소 너비 버스트 카운트 너비

2GB 이하를 선택하세요. Nios V 프로세서의 남은 주소 범위는 다른 임베디드 소프트 IP용으로 예약되어 있습니다.
1부터 시작하여 성능을 개선할 때까지 점진적으로 이 값을 늘리세요.

하위 창의 수

EMIF를 Nios V 프로세서에 명령어 및 데이터 메모리로 연결하거나, 둘 다 연결하는 경우 하위 창 1개를 선택하십시오. Nios V 프로세서가 EMIF에서 실행되는 동안 여러 하위 창 사이를 전환하는 것은 위험합니다.

슬레이브 제어 포트 활성화

Nios V 프로세서에 EMIF를 명령어 및/또는 데이터 메모리로 연결하는 경우 슬레이브 제어 포트를 비활성화하십시오. 하위 창 개수와 동일한 고려 사항입니다.

보류 중인 최대 읽기 수

1부터 시작하여 성능을 개선할 때까지 점진적으로 이 값을 늘리세요.

Nios® V 임베디드 프로세서 설계 핸드북 30

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 활용한 Nios V 프로세서 하드웨어 시스템 설계 726952 | 2025.07.16
그림 14. 주소 스팬 확장기에 명령어 및 데이터 관리자 연결

그림 15. 주소 매핑

주소 스팬 확장기는 EMIF의 8GB 메모리 공간 전체에 접근할 수 있습니다. 그러나 주소 스팬 확장기를 통해 Nios V 프로세서는 EMIF의 처음 1GB 메모리 공간에만 접근할 수 있습니다.

그림 16. 단순화된 블록 다이어그램

플랫폼 디자이너 시스템

남은 3GB

Nios V 프로세서 주소

span은 내장형입니다

NNioios sVV PProrocecsosor r
M

동일한 시스템 내의 소프트 IP.
1GB 창

주소 범위

S

증량제

M

첫 번째 1GB만

EMIF 메모리는 Nios V에 연결됩니다.

EMIF

프로세서.

8GB (XNUMX기가바이트)
S

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 31

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16
2.3.1.4.3. 주소 스팬 확장기 링커 메모리 장치 정의 1. 주소 스팬 확장기(EMIF)를 리셋 벡터로 정의합니다. 또는 Nios V 프로세서 리셋 벡터를 OCRAM이나 플래시 장치와 같은 다른 메모리에 할당할 수 있습니다.
그림 17. 재설정 벡터로서의 다중 옵션
하지만 보드 지원 패키지(BSP) 편집기는 주소 스팬 확장기(EMIF)를 유효한 메모리로 자동 등록할 수 없습니다. 선택에 따라 다음 그림과 같이 두 가지 상황이 발생합니다. 그림 18. 주소 스팬 확장기(EMIF)를 리셋 벡터로 정의할 때 발생하는 BSP 오류

Nios® V 임베디드 프로세서 설계 핸드북 32

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 활용한 Nios V 프로세서 하드웨어 시스템 설계 726952 | 2025.07.16
그림 19. 다른 메모리를 재설정 벡터로 정의할 때 누락된 EMIF

2. BSP 링커 스크립트 탭에서 메모리 장치 추가, 링커 메모리 영역 추가, 링커 섹션 매핑 추가를 사용하여 주소 스팬 확장기(EMIF)를 수동으로 추가해야 합니다.
3. 다음 단계를 따르십시오.
a. 메모리 맵을 사용하여 주소 스팬 확장기의 주소 스팬을 결정합니다.amp다음 그림의 le는 0x0에서 0x3fff_ffff까지의 주소 범위 확장기를 사용합니다.
그림 20. 메모리 맵

b. "메모리 장치 추가"를 클릭하고 디자인의 메모리 맵 정보를 기반으로 다음 정보를 입력합니다. i. 장치 이름: emif_ddr4. 참고: 메모리 맵에서 동일한 이름을 복사해야 합니다. ii. 기준 주소: 0x0 iii. 크기: 0x40000000
c. '추가'를 클릭하여 새 링커 메모리 영역을 추가합니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 33

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

표 22. 링커 메모리 영역 추가

단계

벡터 재설정

emif_ddr4

다른 기억들

1

reset이라는 새 링커 메모리 영역을 추가합니다.

· 지역명 : 재설정

emif_ddr4.

· 지역 크기: 0x20

· 지역 이름: emif_ddr4

· 메모리 장치: emif_ddr4

· 지역 크기: 0x40000000

· 메모리 오프셋: 0x0

· 메모리 장치: emif_ddr4

· 메모리 오프셋: 0x0

2

새로운 링커 메모리 영역을 추가합니다.

남은 emif_ddr4.

· 지역 이름: emif_ddr4

· 지역 크기: 0x3fffffe0

· 메모리 장치: emif_ddr4

· 메모리 오프셋: 0x20

그림 21. 주소 스팬 확장기(EMIF)를 재설정 벡터로 정의할 때의 링커 영역

그림 22. 다른 메모리를 재설정 벡터로 정의할 때의 링커 영역
d. emif_ddr4가 BSP에 추가되면 모든 링커 섹션에서 선택할 수 있습니다.
그림 23. 주소 스팬 확장기(EMIF)가 성공적으로 추가되었습니다.

e. SOPC 설계에서는 메모리 장치 emif_ddr4가 표시되지 않는다는 경고를 무시하세요.
f. BSP 생성을 진행합니다.
관련 정보 51페이지의 Nios V 프로세서 부팅 방법 소개

Nios® V 임베디드 프로세서 설계 핸드북 34

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 활용한 Nios V 프로세서 하드웨어 시스템 설계 726952 | 2025.07.16
2.3.2. 비휘발성 메모리
비휘발성 메모리는 전원이 꺼져도 내용을 유지하므로 시스템 전원 사이클 후 시스템이 검색해야 하는 정보를 저장하는 데 적합합니다. 비휘발성 메모리는 일반적으로 프로세서 부팅 코드, 영구 애플리케이션 설정, 그리고 Altera FPGA 구성 데이터를 저장합니다. 비휘발성 메모리는 다음과 같은 장점이 있습니다.tag전원이 꺼져도 데이터가 유지되는 속도가 휘발성 메모리보다 훨씬 느리고, 쓰기 및 삭제 절차가 더 복잡한 경우가 많습니다. 또한 비휘발성 메모리는 일반적으로 정해진 횟수만큼만 삭제가 보장되며, 그 이후에는 고장날 수 있습니다.
Examp비휘발성 메모리에는 모든 유형의 플래시, EPROM, EEPROM이 포함됩니다. Altera는 Altera FPGA 비트스트림과 Nios V 프로그램 이미지를 비휘발성 메모리에 저장하고, Nios V 프로세서의 부팅 장치로 직렬 플래시를 사용할 것을 권장합니다.
관련 정보
· 일반 직렬 플래시 인터페이스 Altera FPGA IP 사용자 가이드
· 메일박스 클라이언트 Altera FPGA IP 사용자 가이드 · MAX® 10 사용자 플래시 메모리 사용자 가이드: 온칩 플래시 Altera FPGA IP 코어
2.4. 클록 및 재설정 모범 사례
Nios V 프로세서 클럭 및 리셋 도메인이 연결된 모든 주변 장치와 어떻게 상호 작용하는지 이해하는 것이 중요합니다. 간단한 Nios V 프로세서 시스템은 단일 클럭 도메인으로 시작하지만, 빠른 클럭 도메인과 느린 클럭 도메인이 충돌하는 다중 클럭 도메인 시스템에서는 상황이 복잡해질 수 있습니다. 이러한 여러 도메인이 리셋에서 어떻게 연결되는지 주의 깊게 관찰하고 이해해야 하며, 미묘한 문제가 없는지 확인해야 합니다.
모범 사례를 위해 Altera는 Nios V 프로세서와 부팅 메모리를 동일한 클록 도메인에 배치할 것을 권장합니다. 매우 느린 클록 도메인에 있는 메모리에서 부팅할 때 Nios V 프로세서를 빠른 클록 도메인에서 리셋 해제하지 마십시오. 명령어 페치 오류가 발생할 수 있습니다. Platform Designer에서 기본적으로 제공하는 것 이상의 수동 시퀀싱이 필요할 수 있으며, 사용 사례에 따라 리셋 해제 토폴로지를 계획하십시오. 시스템이 부팅되어 잠시 실행된 후 리셋하려면 시스템 리셋 시퀀싱 및 리셋 후 초기화 요구 사항에 동일한 고려 사항을 적용하십시오.
2.4.1. 시스템 JTAG 시계
모든 Nios V 프로세서 시스템에서 클록 제약 조건을 지정하는 것은 중요한 시스템 설계 고려 사항이며, 정확성과 결정론적 동작을 위해 필수적입니다. Quartus Prime Timing Analyzer는 업계 표준 제약 조건, 분석 및 보고 방법론을 사용하여 설계에 포함된 모든 로직의 타이밍 성능을 검증하기 위해 정적 타이밍 분석을 수행합니다.
Example 1. 100/50 듀티 사이클과 50MHz J를 갖춘 기본 16MHz 클록TAG 시계
#******************************************************************** # 100MHz 클럭 생성 #**************************************************************** create_clock -name {clk} -period 10 [get_ports {clk}] #************************ 16MHz J 생성TAG 시계 #************************

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 35

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16
create_clock -name {altera_reserved_tck} -period 62.500 [get_ports {altera_reserved_tck}] set_clock_groups -asynchronous -group [get_clocks {altera_reserved_tck}] 관련 정보 Quartus Prime Timing Analyzer Cookbook
2.4.2. 재설정 요청 인터페이스
Nios V 프로세서에는 선택적 리셋 요청 기능이 포함되어 있습니다. 리셋 요청 기능은 reset_req 및 reset_req_ack 신호로 구성됩니다.
Platform Designer에서 재설정 요청을 활성화하려면 다음을 수행합니다. 1. Nios V 프로세서 IP 매개변수 편집기를 시작합니다. 2. 재설정 요청 사용 설정에서 재설정 요청 인터페이스 추가를 켭니다.
옵션.
그림 24. Nios V 프로세서 재설정 요청 활성화
reset_req 신호는 인터럽트처럼 작동합니다. reset_req를 어서트하면 코어에 리셋을 요청하는 것입니다. 코어는 미처리된 버스 트랜잭션이 작업을 완료할 때까지 기다립니다. 예를 들어,amp보류 중인 메모리 접근 트랜잭션이 있는 경우, 코어는 완전한 응답을 기다립니다. 마찬가지로, 코어는 보류 중인 명령어 응답을 수락하지만 reset_req 신호를 수신한 후에는 명령어 요청을 실행하지 않습니다.
리셋 작업은 다음과 같은 흐름으로 구성됩니다. 1. 보류 중인 모든 작업 완료 2. 내부 파이프라인 플러시 3. 프로그램 카운터를 리셋 벡터로 설정 4. 코어 리셋 전체 리셋 작업에는 몇 클럭 사이클이 소요됩니다. reset_req는 reset_req_ack가 어서트되어 코어 리셋 작업이 성공적으로 완료되었음을 나타낼 때까지 어서트 상태를 유지해야 합니다. 그렇지 않으면 코어의 상태가 비결정적으로 됩니다.

Nios® V 임베디드 프로세서 설계 핸드북 36

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 활용한 Nios V 프로세서 하드웨어 시스템 설계 726952 | 2025.07.16
2.4.2.1. 일반적인 사용 사례
· 전원이 켜질 때 reset_req 신호를 어서트하면 시스템의 다른 FPGA 호스트가 Nios V 프로세서 부트 메모리를 초기화할 때까지 Nios V 프로세서 코어가 리셋 벡터에서 프로그램 실행을 시작하지 못하게 됩니다. 이 경우 전체 서브시스템이 하드웨어 리셋을 경험할 수 있습니다. Nios V 프로세서는 다른 FPGA 호스트가 프로세서 부트 메모리를 초기화할 때까지 리셋 요청 상태를 무기한 유지합니다.
· 나머지 시스템을 방해하지 않고 Nios V 프로세서 코어를 재설정해야 하는 시스템에서는 reset_req 신호를 어설션하여 코어의 현재 작업을 완전히 중단하고 시스템이 reset_req_ack 신호를 해제하면 재설정 벡터에서 프로세서를 다시 시작할 수 있습니다.
· 외부 호스트는 재설정 요청 인터페이스를 사용하여 다음 작업의 구현을 용이하게 할 수 있습니다.
— 현재 Nios V 프로세서 프로그램을 중단합니다.
— Nios V 프로세서 부트 메모리에 새 프로그램을 로드합니다.
— 프로세서가 새 프로그램 실행을 시작하도록 허용합니다.
Altera는 reset_req_ack 신호 상태를 모니터링하기 위한 타임아웃 메커니즘을 구현할 것을 권장합니다. Nios V 프로세서 코어가 무한 대기 상태에 빠지고 알 수 없는 이유로 정지하는 경우, reset_req_ack는 무한정으로 어서트될 수 없습니다. 타임아웃 메커니즘을 통해 다음을 수행할 수 있습니다.
· 복구 시간 초과 기간을 정의하고 시스템 수준을 재설정하여 시스템 복구를 수행합니다.
· 하드웨어 수준 재설정을 수행합니다.
2.4.3. 릴리스 IP 재설정
Altera SDM 기반 장치는 코어 패브릭 로직을 여러 섹터에 분산하는 병렬 섹터 기반 아키텍처를 사용합니다. Altera는 리셋 회로의 초기 입력 중 하나로 리셋 릴리스 Altera FPGA IP를 사용할 것을 권장합니다. Intel® SDM 기반 장치에는 Stratix® 10과 Agilex™ 장치가 포함됩니다. 제어 블록 기반 장치는 이 요구 사항의 영향을 받지 않습니다.
관련 정보
AN 891: 리셋 릴리스 Altera FPGA IP 사용
2.5. 기본 에이전트 지정
Platform Designer에서는 오류 응답 기본 에이전트 역할을 하는 기본 에이전트를 지정할 수 있습니다. 지정한 기본 에이전트는 주소 맵에 디코딩되지 않은 액세스를 시도하는 호스트에 오류 응답 서비스를 제공합니다.
다음 시나리오에서는 디코딩되지 않은 이벤트가 발생합니다.
· 버스 거래 보안 상태 위반
· 정의되지 않은 메모리 영역에 대한 트랜잭션 액세스
· 예외 이벤트 등

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 37

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

정의되지 않은 트랜잭션이 기본 에이전트로 다시 라우팅되고 이후 Nios V 프로세서에 오류 응답으로 응답하는 경우 이러한 이벤트를 처리하기 위해 기본 에이전트를 할당해야 합니다.
관련 정보
· Quartus Prime Pro Edition 사용자 가이드: 플랫폼 디자이너. 기본 에이전트 지정
· Quartus Prime Pro Edition 사용자 가이드: 플랫폼 디자이너. 오류 응답 슬레이브 Altera FPGA IP
· Github – Qsys용 보충 재설정 구성 요소

2.6. 인쇄를 위한 UART 에이전트 할당
인쇄는 소프트웨어 애플리케이션 디버깅과 시스템 상태 모니터링에 유용합니다. Altera는 소프트웨어 애플리케이션의 시작 메시지, 오류 메시지, 실행 진행률과 같은 기본 정보를 인쇄할 것을 권장합니다.
다음과 같은 상황에서는 printf() 라이브러리 함수를 사용하지 마십시오. · 호스트가 출력을 읽지 않으면 printf() 라이브러리가 애플리케이션을 중단시킵니다.
이는 J에 적용됩니다.TAG UART만 해당. · printf() 라이브러리는 많은 양의 프로그램 메모리를 소모합니다.

2.6.1. J에 의한 스톨 방지TAG 유아트

표 23. 기존 UART와 J의 차이점TAG 유아트

UART 유형 기존 UART

설명
외부 호스트의 수신 여부와 관계없이 직렬 데이터를 전송합니다. 직렬 데이터를 읽는 호스트가 없으면 데이터는 손실됩니다.

JTAG 유아트

전송된 데이터를 출력 버퍼에 쓰고 외부 호스트가 버퍼에서 데이터를 읽어 비우도록 합니다.

JTAG UART 드라이버는 출력 버퍼가 가득 찰 때까지 기다립니다. JTAG UART 드라이버는 외부 호스트가 출력 버퍼에서 데이터를 읽을 때까지 기다린 후 추가 전송 데이터를 씁니다. 이 과정을 통해 전송 데이터 손실을 방지할 수 있습니다.
그러나 생산 중과 같이 시스템 디버깅이 필요하지 않은 경우 호스트 PC를 J에 연결하지 않고 임베디드 시스템을 배포합니다.TAG UART. 시스템이 J를 선택한 경우TAG UART를 UART 에이전트로 사용하는 경우 외부 호스트가 연결되지 않아 시스템이 중단될 수 있습니다.
J의 지연을 방지하기 위해TAG UART, 다음 옵션을 적용하세요:

Nios® V 임베디드 프로세서 설계 핸드북 38

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16

표 24. J에 의한 실속 예방TAG 유아트

옵션
UART 인터페이스와 드라이버가 없습니다.
다른 UART 인터페이스와 드라이버를 사용하세요
J 보존TAG UART 인터페이스(드라이버 없음)

하드웨어 개발 중(Platform Designer에서)

소프트웨어 개발 중(보드 지원 패키지 편집기에서)

J 제거TAG 시스템의 UART

hal.stdin, hal.stdout 및 hal.stderr을 None으로 구성합니다.

J를 교체하세요TAG 다른 소프트웨어와 함께 UART를 구성하려면 hal.stdin, hal.stdout 및 hal.stderr을 구성하세요.

UART IP

다른 소프트 UART IP와 함께.

J 보존TAG 시스템의 UART

· 보드 지원 패키지 편집기에서 hal.stdin, hal.stdout 및 hal.stderr을 없음으로 구성합니다.
· J 비활성화TAG BSP 드라이버 탭의 UART 드라이버.

2.7.제TAG 신호
Nios V 프로세서 디버그 모듈은 J를 사용합니다.TAG 소프트웨어 ELF 다운로드 및 소프트웨어 디버깅을 위한 인터페이스입니다. J를 사용하여 디자인을 디버깅할 때TAG 인터페이스, JTAG TCK, TMS, TDI 및 TDO 신호는 설계의 일부로 구현됩니다. J 지정TAG 모든 Nios V 프로세서 시스템의 신호 제약은 중요한 시스템 설계 고려 사항이며 정확성과 결정론적 동작에 필요합니다.
Altera에서는 모든 설계의 시스템 클록 주파수가 J의 최소 4배 이상이어야 한다고 권장합니다.TAG 칩 내 계측(OCI) 코어가 제대로 작동하도록 보장하는 클록 주파수입니다.
관련 정보 · Quartus® Prime Timing Analyzer Cookbook: JTAG 신호
J에 대한 자세한 내용은TAG 타이밍 제약 조건 지침. · KDB: 파이프라인이 없는 Nios® V/m 프로세서에서 niosv-download가 실패하는 이유는 무엇입니까?
JTAG 주파수는 24MHz 또는 16Mhz?
2.8. Platform Designer 시스템 성능 최적화
Platform Designer는 Altera FPGA 설계를 위한 시스템 상호 연결의 성능을 최적화하기 위한 도구를 제공합니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 39

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 사용한 Nios V 프로세서 하드웨어 시스템 설계
726952 | 2025.07.16
그림 25. 최적화 예amp레

전직amp그림에 표시된 le는 다음 단계를 보여줍니다.
1. 중요 경로를 완화하기 위해 파이프라인 브리지를 추가합니다. a. 명령어 관리자와 해당 에이전트 사이 b. 데이터 관리자와 해당 에이전트 사이
2. 각 포트가 각각 명령어 관리자와 데이터 관리자에 전용되는 True Dual 포트 온칩 RAM을 적용합니다.

Nios® V 임베디드 프로세서 설계 핸드북 40

피드백 보내기

2. Quartus Prime 소프트웨어 및 플랫폼 디자이너를 활용한 Nios V 프로세서 하드웨어 시스템 설계 726952 | 2025.07.16
사용 가능한 도구를 활용하는 기술과 각 구현의 장단점을 제시하는 아래의 관련 링크를 참조하세요.
관련 정보 · Quartus® Prime Pro Edition 사용자 가이드: 플랫폼 디자이너
자세한 내용은 Platform Designer 시스템 성능 최적화 항목을 참조하세요. · Quartus® Prime Standard Edition 사용자 가이드: Platform Designer 자세한 내용은 Platform Designer 시스템 성능 최적화 항목을 참조하세요.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 41

726952 | 2025.07.16 피드백 보내기

3. Nios V 프로세서 소프트웨어 시스템 설계
이 장에서는 Nios V 프로세서 소프트웨어 개발 흐름과 임베디드 설계 시스템 개발에 사용할 수 있는 소프트웨어 도구에 대해 설명합니다. 본 내용은 다음 내용을 포함하는 것으로 이해하시기 바랍니다.view Nios V 프로세서 소프트웨어 시스템을 개발하기 전.
그림 26. 소프트웨어 설계 흐름
시작

BSP 편집기를 사용하여 Platform Designer에서 BSP 생성

Nios V 명령 셸을 사용하여 BSP 생성
애플리케이션 CMake 빌드 생성 File Nios V 명령 셸 사용

메모:

BSP 및 애플리케이션 CMake 빌드 가져오기 File
Nios V 프로세서 애플리케이션을 빌드합니다.
인텔 FPGA용 RiscFree IDE

Nios V 프로세서 애플리케이션을 사용하여 빌드합니다.
명령줄 소스 코드 편집기, CMake 및 Make
명령

Altera는 소프트웨어 개발 및 디버깅을 위해 Altera FPGA 개발 키트 또는 맞춤형 프로토타입 보드를 사용할 것을 권장합니다. 많은 주변 장치와 시스템 수준 기능은 소프트웨어가 실제 보드에서 실행될 때만 사용할 수 있습니다.

© Altera Corporation. Altera, Altera 로고, `a' 로고 및 기타 Altera 마크는 Altera Corporation의 상표입니다. Altera는 사전 통지 없이 언제든지 제품 및 서비스를 변경할 권리가 있습니다. Altera는 Altera가 서면으로 명시적으로 동의한 경우를 제외하고 본 문서에 설명된 정보, 제품 또는 서비스의 적용 또는 사용으로 인해 발생하는 모든 책임이나 의무를 지지 않습니다. Altera 고객은 게시된 정보를 신뢰하거나 제품 또는 서비스를 주문하기 전에 최신 버전의 장치 사양을 확인하는 것이 좋습니다. *다른 이름 및 브랜드는 다른 사람의 자산으로 주장될 수 있습니다.

3. Nios V 프로세서 소프트웨어 시스템 설계 726952 | 2025.07.16
3.1. Nios V 프로세서 소프트웨어 개발 흐름
3.1.1. 보드 지원 패키지 프로젝트
Nios V 보드 지원 패키지(BSP) 프로젝트는 시스템별 지원 코드를 포함하는 특수 라이브러리입니다. BSP는 Nios V 프로세서 하드웨어 시스템의 특정 프로세서에 맞게 맞춤화된 소프트웨어 런타임 환경을 제공합니다.
Quartus Prime 소프트웨어는 BSP의 동작을 제어하는 ​​설정을 수정하기 위한 Nios V 보드 지원 패키지 편집기와 niosv-bsp 유틸리티 도구를 제공합니다.
BSP에는 다음 요소가 포함됩니다. · 하드웨어 추상화 계층 · 장치 드라이버 · 선택적 소프트웨어 패키지 · 선택적 실시간 운영 체제
3.1.2. 응용 프로그램 프로젝트
Nios VC/C++ 애플리케이션 프로젝트에는 다음과 같은 특징이 있습니다. · 소스 코드 컬렉션과 CMakeLists.txt로 구성됩니다.
— CMakeLists.txt는 소스 코드를 컴파일하고 이를 BSP 및 하나 이상의 선택적 라이브러리와 연결하여 하나의 .elf를 생성합니다. file
· 소스 중 하나 files에는 main() 함수가 포함되어 있습니다. · 라이브러리와 BSP의 함수를 호출하는 코드가 포함되어 있습니다.
Altera는 Quartus Prime 소프트웨어 유틸리티 도구에서 niosv-app 유틸리티 도구를 제공하여 애플리케이션 CMakeLists.txt를 생성하고, Altera FPGA용 RiscFree IDE를 제공하여 Eclipse 기반 환경에서 소스 코드를 수정합니다.
3.2. Altera FPGA 임베디드 개발 도구
Nios V 프로세서는 소프트웨어 개발을 위해 다음 도구를 지원합니다. · 그래픽 사용자 인터페이스(GUI) - 다음에서 사용 가능한 그래픽 개발 도구
Windows* 및 Linux* 운영 체제(OS) 모두 지원. — Nios V 보드 지원 패키지 편집기(Nios V BSP 편집기) — Altera FPGA용 Ashling RiscFree IDE · 명령줄 도구(CLI) – Nios V 명령 셸에서 실행되는 개발 도구입니다. 각 도구는 명령줄에서 액세스할 수 있는 도움말 형식의 자체 설명서를 제공합니다. Nios V 명령 셸을 열고 다음 명령을 입력하세요. –도움이 되다 view 도움말 메뉴. — Nios V 유틸리티 도구 — File 형식 변환 도구 - 기타 유틸리티 도구

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 43

3. Nios V 프로세서 소프트웨어 시스템 설계 726952 | 2025.07.16

표 25. GUI 도구 및 명령줄 도구 작업 요약

GUI 도구

명령줄 도구

BSP 생성

Nios V BSP 편집기

· Quartus Prime Pro Edition 소프트웨어에서: niosv-bsp -c -s=<.qsys file> -t= [옵션] 설정.bsp
· Quartus Prime Standard Edition 소프트웨어에서: niosv-bsp -c -s=<.sopcinfo file> -t= [옵션] 설정.bsp

기존 .bsp를 사용하여 BSP 생성 file
BSP 업데이트

Nios V BSP 편집기 Nios V BSP 편집기

niosv-bsp -g [옵션] 설정.bsp niosv-bsp -u [옵션] 설정.bsp

BSP 검토

Nios V BSP 편집기

niosv-bsp -q -E= [옵션] 설정.bsp

애플리케이션 생성

niosv-app -a= -b= -s= files 디렉토리> [옵션]

사용자 라이브러리 생성

niosv-app -l= -s= files 디렉토리> -p= [옵션]

애플리케이션 수정 사용자 라이브러리 수정 애플리케이션 빌드

Altera FPGA용 RiscFree IDE
Altera FPGA용 RiscFree IDE
Altera FPGA용 RiscFree IDE

모든 명령줄 소스 편집기
모든 명령줄 소스 편집기
· 만들다 · cmake

사용자 라이브러리 구축

Altera FPGA용 RiscFree IDE

· 만들다 · cmake

ELF 애플리케이션 다운로드
.elf 변환 file

Altera FPGA용 RiscFree IDE

niosv-다운로드
· 엘프투플래시 · 엘프2헥스

관련 정보
Altera FPGA용 Ashling RiscFree 통합 개발 환경(IDE) 사용자 가이드

3.2.1. Nios V 프로세서 보드 지원 패키지 편집기
Nios V 프로세서 BSP 편집기를 사용하여 다음 작업을 수행할 수 있습니다. · Nios V 프로세서 BSP 프로젝트 만들기 또는 수정 · 설정, 링커 영역 및 섹션 매핑 편집 · 소프트웨어 패키지 및 장치 드라이버 선택.
BSP 편집기의 기능에는 niosv-bsp 유틸리티의 기능이 포함됩니다. BSP 편집기에서 생성된 모든 프로젝트는 명령줄 유틸리티를 사용하여 생성할 수도 있습니다.

Nios® V 임베디드 프로세서 설계 핸드북 44

피드백 보내기

3. Nios V 프로세서 소프트웨어 시스템 설계 726952 | 2025.07.16

메모:

Quartus Prime Standard Edition 소프트웨어의 경우 BSP 편집기 GUI를 호출하는 단계는 AN 980: Nios V 프로세서 Quartus Prime 소프트웨어 지원을 참조하세요.

BSP 편집기를 시작하려면 다음 단계를 따르세요. 1. Platform Designer를 열고 다음으로 이동합니다. File 메뉴.
a. 기존 BSP 설정을 열려면 file, 열기…를 클릭합니다. b. 새 BSP를 만들려면 새 BSP…를 클릭합니다. 2. BSP 편집기 탭을 선택하고 적절한 세부 정보를 제공합니다.

그림 27. BSP 편집기 실행

관련 정보 AN 980: Nios V 프로세서 Quartus Prime 소프트웨어 지원
3.2.2. Altera FPGA용 RiscFree IDE
Altera FPGA용 RiscFree IDE는 Nios V 프로세서용 Eclipse 기반 IDE입니다. Altera는 다음과 같은 이유로 이 IDE에서 Nios V 프로세서 소프트웨어를 개발할 것을 권장합니다. · 이 기능은 Nios V 프로세서와 호환되도록 개발 및 검증되었습니다.
프로세서 빌드 흐름. · 필요한 모든 툴체인과 지원 도구가 갖춰져 있어
쉽게 Nios V 프로세서 개발을 시작하세요.
관련 정보 Altera FPGA용 Ashling RiscFree 통합 개발 환경(IDE) 사용자 가이드
3.2.3. Nios V 유틸리티 도구
명령줄에 입력하거나 스크립트에 내장된 명령을 사용하여 Nios V 프로그램을 생성, 수정 및 빌드할 수 있습니다. 이 섹션에서 설명하는 Nios V 명령줄 도구는 /niosv/bin 디렉토리.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 45

3. Nios V 프로세서 소프트웨어 시스템 설계 726952 | 2025.07.16

표 26. Nios V 유틸리티 도구

명령줄 도구

요약

niosv-app niosv-bsp niosv-download niosv-shell niosv-stack-report

애플리케이션 프로젝트를 생성하고 구성합니다.
BSP 설정을 생성하거나 업데이트하려면 file 그리고 BSP를 생성합니다 files. ELF를 다운로드하려면 file Nios® V 프로세서에.
Nios V 명령 셸을 엽니다. 스택 또는 힙 사용을 위해 애플리케이션에서 사용 가능한 남은 메모리 공간을 알려줍니다.

3.2.4. File 형식 변환 도구

File 한 유틸리티에서 다른 유틸리티로 데이터를 전달할 때 형식 변환이 필요할 때가 있습니다. file 형식 변환 도구는 다음과 같습니다.
소프트웨어 설치 디렉토리>/niosv/bin 디렉토리.

표 27. File 형식 변환 도구

명령줄 도구 elf2flash elf2hex

요약 .elf를 번역하려면 file 플래시 메모리 프로그래밍을 위해 .srec 형식으로 변환합니다. .elf를 file 메모리 초기화를 위해 .hex 형식으로 변환합니다.

3.2.5. 기타 유틸리티 도구

Nios V 프로세서 기반 시스템을 구축할 때 다음 명령줄 도구가 필요할 수 있습니다. 이러한 명령줄 도구는 Intel에서 제공합니다. /quartus/bin 또는 다음에서 획득
오픈소스 도구.

표 28. 기타 명령줄 도구

명령줄 도구

유형

요약

주아트 터미널

인텔 제공

stdout 및 stderr을 모니터링하고 Nios® V 프로세서에 입력을 제공합니다.
stdin을 통한 하위 시스템입니다. 이 도구는 J에만 적용됩니다.TAG Nios® V 프로세서에 연결된 경우 UART IP입니다.

오픈오씨디

Intel이 제공하는 OpenOCD를 실행합니다.

openocd-cfg-gen

Intel 제공 · OpenOCD 구성을 생성하려면 file. · J를 표시하려면TAG 체인 장치 인덱스.

Nios® V 임베디드 프로세서 설계 핸드북 46

피드백 보내기

726952 | 2025.07.16 피드백 보내기
4. Nios V 프로세서 구성 및 부팅 솔루션
Nios V 프로세서를 구성하여 다양한 메모리 위치에서 소프트웨어를 부팅하고 실행할 수 있습니다. 부팅 메모리는 QSPI(Quad Serial Peripheral Interface) 플래시, OCRAM(On-Chip Memory) 또는 TCM(Tightly Coupled Memory)입니다.
관련 정보 · 193페이지의 전원 켜기 트리거 조건 · 전원 켜기 트리거
파워업 트리거에 대한 자세한 정보.
4.1. 서론
Nios V 프로세서는 두 가지 유형의 부팅 프로세스를 지원합니다. · alt_load() 함수를 사용한 XIP(Execute-in-Place) · 부트 복사기를 사용하여 RAM에 프로그램 복사. Nios V 임베디드 프로그램 개발은 하드웨어 추상화 계층(HAL)을 기반으로 합니다. HAL은 부팅 시 관련 링커 섹션을 부트 메모리에서 런타임 위치로 복사하는 작은 부트 로더 프로그램(부트 복사기라고도 함)을 제공합니다. 보드 지원 패키지(BSP) 편집기 설정을 조정하여 프로그램 및 데이터 메모리 런타임 위치를 지정할 수 있습니다. 이 섹션에서는 다음 사항에 대해 설명합니다. · Nios V 프로세서 시스템을 다음 명령에 따라 부팅하는 Nios V 프로세서 부트 복사기
부팅 메모리 선택 · Nios V 프로세서 부팅 옵션 및 일반 흐름 · 선택된 부팅 메모리에 대한 Nios V 프로그래밍 솔루션
4.2. 애플리케이션 연결
Nios V 프로세서 프로젝트를 생성하면 BSP 편집기는 두 개의 링커 관련 항목을 생성합니다. files: · linker.x: 링커 명령어 file 생성된 응용 프로그램의 제작file 사용하다
.elf 바이너리를 생성하려면 file· linker.h: 링커 메모리 레이아웃에 대한 정보를 포함합니다. BSP 프로젝트에 대한 모든 링커 설정 수정 사항은 이 두 링커의 내용에 영향을 미칩니다. files. 모든 Nios V 프로세서 애플리케이션에는 다음과 같은 링커 섹션이 포함되어 있습니다.
© Altera Corporation. Altera, Altera 로고, `a' 로고 및 기타 Altera 마크는 Altera Corporation의 상표입니다. Altera는 사전 통지 없이 언제든지 제품 및 서비스를 변경할 권리가 있습니다. Altera는 Altera가 서면으로 명시적으로 동의한 경우를 제외하고 본 문서에 설명된 정보, 제품 또는 서비스의 적용 또는 사용으로 인해 발생하는 모든 책임이나 의무를 지지 않습니다. Altera 고객은 게시된 정보를 신뢰하거나 제품 또는 서비스를 주문하기 전에 최신 버전의 장치 사양을 확인하는 것이 좋습니다. *다른 이름 및 브랜드는 다른 사람의 자산으로 주장될 수 있습니다.

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

표 29. 링커 섹션

.텍스트

링커 섹션

.로다타

.rwdata

.bss

.더미

.스택

설명 실행 가능 코드. 프로그램 실행에 사용되는 읽기 전용 데이터. 프로그램 실행에 사용되는 읽기-쓰기 데이터를 저장합니다. 초기화되지 않은 정적 데이터를 포함합니다. 동적으로 할당된 메모리를 포함합니다. 함수 호출 매개변수 및 기타 임시 데이터를 저장합니다.

.elf에 추가 링커 섹션을 추가할 수 있습니다. file 사용자 지정 코드와 데이터를 보관합니다. 이러한 링커 섹션은 물리적 메모리 장치 및 주소에 대응하도록 정의된 명명된 메모리 영역에 배치됩니다. 기본적으로 BSP 편집기는 이러한 링커 섹션을 자동으로 생성합니다. 하지만 특정 애플리케이션의 링커 섹션을 제어할 수 있습니다.

4.2.1. 연결 동작
이 섹션에서는 BSP 편집기 기본 링크 동작과 링크 동작을 제어하는 ​​방법을 설명합니다.

4.2.1.1. 기본 BSP 연결
BSP 구성 중에 도구는 다음 단계를 자동으로 수행합니다.
1. 메모리 영역 이름 지정: 각 시스템 메모리 장치에 이름을 지정하고 각 이름을 링커에 추가합니다. file 메모리 영역으로서.
2. 가장 큰 메모리 찾기: 링커에서 가장 큰 읽기 및 쓰기 메모리 영역을 식별합니다. file.
3. 링커 섹션 할당: 기본 링커 섹션(.text, .rodata, .rwdata, .bss, .heap 및 .stack)을 이전 단계에서 식별된 메모리 영역에 배치합니다.
4. 쓰기 files: linker.x와 linker.h를 작성하세요. files.
일반적으로 링커 섹션 할당 방식은 소프트웨어 개발 과정에서 작동합니다. 메모리가 충분히 큰 경우 애플리케이션이 작동하는 것이 보장되기 때문입니다.
기본 연결 동작에 대한 규칙은 Altera에서 생성한 Tcl 스크립트 bsp-set-defaults.tcl 및 bsp-linker-utils.tcl에 포함되어 있습니다. /niosv/scripts/bsp-defaults 디렉터리입니다. niosv-bsp 명령은 이 스크립트를 호출합니다. 이 스크립트를 직접 수정하지 마십시오.

Nios® V 임베디드 프로세서 설계 핸드북 48

피드백 보내기

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

4.2.1.2. 구성 가능한 BSP 연결
BSP 편집기의 링커 스크립트 탭에서 기본 링킹 동작을 관리할 수 있습니다. 다음 방법을 사용하여 링커 스크립트를 조작할 수 있습니다. · 메모리 영역 추가: 메모리 영역 이름을 물리적 메모리 장치에 매핑합니다. · 섹션 매핑 추가: 섹션 이름을 메모리 영역에 매핑합니다. BSP
편집기를 사용하면 다음을 수행할 수 있습니다. view 변경 전후의 메모리 맵.

4.3. Nios V 프로세서 부팅 방법

Altera FPGA 디바이스에서 Nios V 프로세서를 부팅하는 방법은 여러 가지가 있습니다. Nios V 프로세서 부팅 방법은 플래시 메모리 선택 및 디바이스 제품군에 따라 다릅니다.

표 30. 각 부팅 옵션에 따른 지원되는 플래시 메모리

지원되는 부팅 메모리

장치

온칩 플래시(내부 구성용)

최대 10개 장치만 가능(온칩 플래시 IP 포함)

일반 용도 QSPI 플래시(사용자 데이터 전용)

지원되는 모든 FPGA 장치(Generic Serial Flash Interface FPGA IP 포함)

QSPI 플래시 구성(활성 직렬 구성용)

제어 블록 기반
장치(일반 포함)
직렬 플래시 인터페이스 Intel FPGA IP)(2)

Nios V 프로세서 부팅 방법

애플리케이션 런타임 위치

부팅 복사기

Nios V 프로세서 애플리케이션은 On-Chip Flash에서 실행됩니다.

온칩 플래시(XIP) + OCRAM/외부 RAM(쓰기 가능한 데이터 섹션용)

alt_load() 함수

부트 복사기를 사용하여 On-Chip Flash에서 RAM으로 복사된 Nios V 프로세서 애플리케이션

OCRAM/외부 RAM

GSFI를 통한 부트로더 재사용

Nios V 프로세서 애플리케이션은 일반 용도 QSPI 플래시에서 실행됩니다.

일반 용도 QSPI 플래시(XIP) + OCRAM/외부 RAM(쓰기 가능한 데이터 섹션용)

alt_load() 함수

부트 복사기를 사용하여 일반 용도 QSPI 플래시에서 RAM으로 복사된 Nios V 프로세서 애플리케이션

OCRAM/외부 RAM

GSFI를 통한 부트로더

Nios V 프로세서 애플리케이션은 QSPI 플래시 구성에서 실행됩니다.

구성 QSPI 플래시(XIP) + OCRAM/외부 RAM(쓰기 가능한 데이터 섹션용)

alt_load() 함수

부트 복사기를 사용하여 구성 QSPI 플래시에서 RAM으로 복사된 Nios V 프로세서 애플리케이션

GSFI를 통한 OCRAM/외부 RAM 부트로더(계속)

(2) 장치 목록은 AN 980: Nios V 프로세서 Quartus Prime 소프트웨어 지원을 참조하세요.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 49

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

지원되는 부팅 메모리
온칩 메모리(OCRAM) 견고하게 결합된 메모리(TCM)

장치
SDM 기반 장치(Mailbox Client Intel FPGA IP 포함). (2)
지원되는 모든 Altera FPGA 장치(2)
지원되는 모든 Altera FPGA 장치(2)

Nios V 프로세서 부팅 방법
부트 복사기를 사용하여 구성 QSPI 플래시에서 RAM으로 복사된 Nios V 프로세서 애플리케이션
Nios V 프로세서 애플리케이션은 OCRAM에서 실행됩니다.
TCM에서 Nios V 프로세서 애플리케이션 실행

애플리케이션 런타임 위치

부팅 복사기

SDM을 통한 OCRAM/외부 RAM 부트로더

오크램

alt_load() 함수

명령어 TCM(XIP) 없음 + 데이터 TCM(쓰기 가능한 데이터 섹션용)

그림 28. Nios V 프로세서 부팅 흐름

다시 놓기

프로세서가 재설정 벡터(부트 코드 시작)로 점프합니다.

애플리케이션 코드는 다른 메모리 위치로 복사될 수 있습니다(부팅 옵션에 따라 다름)
부트 코드는 프로세서를 초기화합니다.

부팅 옵션에 따라 부팅 코드는 데이터/코드의 초기 값을 다른 메모리 공간(alt_load)으로 복사할 수 있습니다.
부트 코드는 애플리케이션 코드와 데이터 메모리 공간을 초기화합니다.
부팅 코드는 HAL 드라이버(alt_main)를 사용하여 모든 시스템 주변 장치를 초기화합니다.
메인 입구
관련 정보 · 일반 직렬 플래시 인터페이스 Altera FPGA IP 사용자 가이드
Nios® V 임베디드 프로세서 설계 핸드북 50

피드백 보내기

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16
· 메일박스 클라이언트 Altera FPGA IP 사용자 가이드 · AN 980: Nios V 프로세서 Quartus Prime 소프트웨어 지원
4.4. Nios V 프로세서 부팅 방법 소개
Nios V 프로세서 시스템은 프로세서가 애플리케이션 프로그램을 실행하기 전에 시스템 메모리에 소프트웨어 이미지를 구성해야 합니다. 기본 링커 섹션은 "링커 섹션"을 참조하십시오.
BSP 편집기는 다음 기능을 수행하는 링커 스크립트를 생성합니다. · 프로세서 소프트웨어가 링커 설정에 따라 연결되도록 합니다.
BSP 편집기의 위치를 ​​결정하고 소프트웨어가 메모리에 있는 위치를 결정합니다. · 프로세서의 코드 영역을 메모리 구성 요소에 배치합니다.
할당된 메모리 구성 요소.
다음 섹션에서는 사용 가능한 Nios V 프로세서 부팅 방법을 간략하게 설명합니다.
4.4.1. Nios V 프로세서 애플리케이션 부트 플래시에서 실행 가능
Altera는 시스템 재설정 시 Nios V 프로세서가 메모리 컨트롤러나 메모리 장치를 초기화하지 않고도 부트 플래시 주소 공간에 즉시 액세스할 수 있도록 플래시 컨트롤러를 설계했습니다. 이를 통해 Nios V 프로세서는 부트 복사기를 사용하여 코드를 다른 메모리 유형에 복사하지 않고도 부트 장치에 저장된 애플리케이션 코드를 직접 실행할 수 있습니다. 플래시 컨트롤러는 다음과 같습니다. · 온칩 플래시 IP(MAX® 10 장치만 해당) · 범용 QSPI 플래시(일반 직렬 플래시 인터페이스 IP) · 구성 QSPI 플래시(일반 직렬 플래시 인터페이스 IP)(MAX 10 제외)
장치)
Nios V 프로세서 애플리케이션이 부트 플래시에서 실행될 때 BSP 편집기는 다음 기능을 수행합니다. · .text 링커 섹션을 부트 플래시 메모리 영역으로 설정합니다. · .bss, .rodata, .rwdata, .stack 및 .heap 링커 섹션을 RAM으로 설정합니다.
메모리 영역입니다. 시스템 재설정 시 데이터 섹션(.rodata, .rwdata, .exceptions)을 RAM에 복사하려면 BSP 설정에서 alt_load() 함수를 활성화해야 합니다. 코드 섹션(.text)은 부트 플래시 메모리 영역에 남아 있습니다.
관련 정보 · 일반 직렬 플래시 인터페이스 Altera FPGA IP 사용자 가이드 · Altera MAX 10 사용자 플래시 메모리 사용자 가이드
4.4.1.1. alt_load()
BSP 편집기를 사용하여 HAL 코드에서 alt_load() 함수를 활성화할 수 있습니다.
alt_load() 함수는 실행 위치 부팅 흐름에서 사용될 경우 다음 작업을 수행합니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 51

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

· BSP 설정에 따라 메모리 섹션을 RAM에 복사하는 미니 부트 복사기 역할을 합니다.
· 데이터 섹션(.rodata, .rwdata, .exceptions)은 RAM에 복사하지만 코드 섹션(.text)은 복사하지 않습니다. 코드 섹션(.text)은 읽기 전용이며 부팅 플래시 메모리 영역에 남아 있습니다. 이러한 분할은 RAM 사용량을 최소화하는 데 도움이 되지만, 플래시 메모리 액세스 속도가 온칩 RAM 액세스 속도보다 느리기 때문에 코드 실행 성능이 제한될 수 있습니다.

다음 표에는 BSP 편집기 설정과 기능이 나열되어 있습니다.

표 31. BSP 편집기 설정
BSP 편집기 설정 hal.linker.enable_alt_load hal.linker.enable_alt_load_copy_rodata hal.linker.enable_alt_load_copy_rwdata hal.linker.enable_alt_load_copy_exceptions

함수 alt_load() 함수를 활성화합니다. alt_load()는 .rodata 섹션을 RAM에 복사합니다. alt_load()는 .rwdata 섹션을 RAM에 복사합니다. alt_load()는 .exceptions 섹션을 RAM에 복사합니다.

4.4.2. 부트 복사기를 사용하여 부트 플래시에서 RAM으로 복사된 Nios V 프로세서 애플리케이션
Nios V 프로세서와 HAL에는 대부분의 Nios V 프로세서 애플리케이션에 충분한 기능을 제공하는 부트 복사기가 포함되어 있으며 Nios V 소프트웨어 개발 흐름으로 구현하기 편리합니다.
애플리케이션이 부트 복사기를 사용하면 모든 링커 섹션(.text, .heap, .rwdata, .rodata, .bss, .stack)을 내부 또는 외부 RAM에 설정합니다. 부트 복사기를 사용하여 Nios V 프로세서 애플리케이션을 부트 플래시에서 내부 또는 외부 RAM으로 복사하여 실행하면 실행 성능을 향상시키는 데 도움이 됩니다.
이 부팅 옵션의 경우, Nios V 프로세서는 시스템 재설정 시 부트 복사기 소프트웨어를 실행합니다. 이 소프트웨어는 부트 플래시 메모리에서 내부 또는 외부 RAM으로 애플리케이션을 복사합니다. 이 과정이 완료되면 Nios V 프로세서는 프로그램 제어권을 애플리케이션으로 넘깁니다.

메모:

부트 복사기가 플래시에 있는 경우 alt_load() 함수를 호출할 필요가 없습니다. 둘 다 동일한 목적을 갖기 때문입니다.

4.4.2.1. 일반 직렬 플래시 인터페이스를 통한 Nios V 프로세서 부트로더
GSFI를 통한 부트로더는 제어 블록 기반 장치에서 QSPI 플래시 메모리를 지원하는 Nios V 프로세서 부트 복사기입니다. GSFI를 통한 부트로더는 다음과 같은 기능을 포함합니다.
· 비휘발성 메모리에서 소프트웨어 애플리케이션을 찾습니다.
· 소프트웨어 애플리케이션 이미지를 압축 해제하여 RAM에 복사합니다.
· 복사가 완료된 후 프로세서 실행을 자동으로 RAM에 있는 애플리케이션 코드로 전환합니다.

Nios® V 임베디드 프로세서 설계 핸드북 52

피드백 보내기

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

부트 이미지는 부트 카피어 바로 뒤에 있습니다. Nios V 프로세서 리셋 오프셋이 부트 카피어 시작 지점을 가리키도록 해야 합니다. 그림: GSFI를 통한 부트로더가 있는 QSPI 플래시 메모리 맵은 부트 카피어를 사용할 때 QSPI 플래시 메모리 맵을 보여줍니다. 이 메모리 맵은 플래시 메모리에 FPGA 이미지와 애플리케이션 소프트웨어가 저장되어 있다고 가정합니다.

표 32. Nios V 프로세서 코어를 위한 GSFI를 통한 부트로더

Nios V 프로세서 코어
Nios V/m 프로세서

GSFI를 통한 부트로더 File 위치
/niosv/components/bootloader/ niosv_m_bootloader.srec

Nios V/g 프로세서

/niosv/components/bootloader/ niosv_g_bootloader.srec

그림 29. GSFI를 통한 부트로더가 있는 QSPI 플래시의 메모리 맵

고객 데이터(*.hex)

애플리케이션 코드

메모:

벡터 오프셋 재설정

부팅 복사기

0x01E00000

FPGA 이미지(*.sof)

0x00000000

1. 메모리 맵의 시작 부분에는 FPGA 이미지가 있고 그 뒤에 부트 카피어와 애플리케이션 코드로 구성된 데이터가 있습니다.
2. Platform Designer에서 Nios V 프로세서 재설정 오프셋을 설정하고 부트 복사기 시작 부분을 가리키도록 해야 합니다.
3. FPGA 이미지의 크기를 알 수 없습니다. Quartus Prime 프로젝트를 컴파일한 후에야 정확한 크기를 알 수 있습니다. Altera FPGA 이미지 크기의 상한값을 정해야 합니다. 예를 들어amp예를 들어, FPGA 이미지의 크기가 0x01E00000보다 작을 것으로 추정되는 경우 Platform Designer에서 Reset Offset을 0x01E00000으로 설정합니다. 이는 부트 복사기의 시작이기도 합니다.
4. 좋은 설계 관행은 소프트웨어 애플리케이션이 업데이트되는 경우 FPGA 이미지의 부분적 삭제가 발생하지 않도록 플래시 섹터 경계에서 재설정 벡터 오프셋을 설정하는 것입니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 53

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

4.4.2.2. Secure Device Manager를 통한 Nios V 프로세서 부트로더
보안 장치 관리자(SDM)를 통한 부트로더는 프로세서 부팅을 위해 Mailbox Client Altera FPGA IP HAL 드라이버를 사용하는 HAL 애플리케이션 코드입니다. Altera는 SDM 기반 장치에서 구성 QSPI 플래시를 사용하여 Nios V 프로세서를 부팅할 때 이 부트로더 애플리케이션을 권장합니다.
시스템을 재설정하면 Nios V 프로세서는 먼저 칩 내부의 작은 메모리에서 SDM을 통해 부트로더를 부팅하고, Mailbox Client IP를 사용하여 구성 QSPI 플래시와 통신하기 위해 SDM을 통해 부트로더를 실행합니다.
SDM을 통한 부트로더는 다음 작업을 수행합니다. · 구성 QSPI 플래시에서 Nios V 소프트웨어를 찾습니다. · Nios V 소프트웨어를 온칩 RAM 또는 외부 RAM에 복사합니다. · 프로세서 실행을 온칩 RAM 내의 Nios V 소프트웨어로 전환합니다.
외부 RAM.
프로세스가 완료되면 부트로더는 SDM을 통해 프로그램 제어권을 사용자 애플리케이션으로 이전합니다. Altera는 "SDM을 통한 부트로더 메모리 구성"에 설명된 대로 메모리 구성을 권장합니다.
그림 30. SDM 프로세스 흐름을 통한 부트로더

구성

플래시

2

Nios V 소프트웨어

SDM

SDM 기반 FPGA 장치

사서함 클라이언트 IP

FPGA 로직 Nios V

4개의 외부 RAM
Nios V 소프트웨어

온칩 4

EMIF

숫양

온칩 메모리

IP

니오스 V

1

소프트웨어

SDM을 통한 부트로더

3

3

1. Nios V 프로세서는 칩 내부 메모리의 SDM을 통해 부트로더를 실행합니다.
2. 부트로더는 SDM을 통해 구성 플래시와 통신하고 Nios V 소프트웨어를 찾습니다.
3. 부트로더는 SDM을 통해 구성 플래시에서 칩 내부 RAM/외부 RAM으로 Nios V 소프트웨어를 복사합니다.
4. SDM을 통한 부트로더는 Nios V 프로세서 실행을 칩 내부 RAM/외부 RAM에 있는 Nios V 소프트웨어로 전환합니다.

4.4.3. Nios V 프로세서 애플리케이션 OCRAM에서 실행 가능
이 방법에서는 Nios V 프로세서 리셋 주소가 온칩 메모리(OCRAM)의 기본 주소로 설정됩니다. 애플리케이션 바이너리(.hex) file FPGA가 구성될 때, Quartus Prime 소프트웨어에서 하드웨어 설계가 컴파일된 후 OCRAM에 로드됩니다. Nios V 프로세서가 재설정되면 애플리케이션이 실행을 시작하고 진입점으로 분기됩니다.

Nios® V 임베디드 프로세서 설계 핸드북 54

피드백 보내기

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

메모:

· OCRAM에서 실행하면 부트 복사기가 필요하지 않습니다. Nios V 프로세서 애플리케이션은 시스템 재설정 시 이미 실행되기 때문입니다.
· Altera에서는 이 부팅 방법에 대해 alt_load()를 활성화하여 FPGA 장치 이미지를 재구성하지 않고도 임베디드 소프트웨어가 재설정 시 동일하게 동작하도록 할 것을 권장합니다.
· 시스템 재설정 시 .rwdata 섹션을 복사하려면 BSP 설정에서 alt_load() 함수를 활성화해야 합니다. 이 방법을 사용하면 초기화된 변수의 초기값이 해당 변수와 별도로 저장되어 프로그램 실행 시 덮어쓰기를 방지합니다.

4.4.4. TCM에서 Nios V 프로세서 애플리케이션 실행
실행 위치(execute-in-place) 방식은 Nios V 프로세서 리셋 주소를 TCM(Tightly Coupled Memory)의 기본 주소로 설정합니다. 애플리케이션 바이너리(.hex) file Quartus Prime 소프트웨어에서 하드웨어 설계를 컴파일한 후 FPGA를 구성할 때 TCM에 로드됩니다. Nios V 프로세서가 재설정되면 애플리케이션이 실행을 시작하고 진입점으로 분기됩니다.

메모:

TCM에서 Execute-In-Place를 실행하면 부트 복사기가 필요하지 않습니다. Nios V 프로세서 애플리케이션은 시스템 재설정 시 이미 실행되기 때문입니다.

4.5. 온칩 플래시(UFM)에서 Nios V 프로세서 부팅

MAX 10 FPGA 디바이스에서는 온칩 플래시(UFM)에서 Nios V 프로세서를 부팅하고 소프트웨어를 실행할 수 있습니다. Nios V 프로세서는 내부 구성 모드에서 온칩 플래시를 사용하여 다음 두 가지 부팅 옵션을 지원합니다.
· Nios V 프로세서 애플리케이션은 On-Chip Flash에서 바로 실행됩니다.
· Nios V 프로세서 애플리케이션은 부트 복사기를 사용하여 온칩 플래시에서 RAM으로 복사됩니다.

표 33. 각 부팅 옵션에 따른 지원되는 플래시 메모리

지원되는 부팅 메모리

Nios V 부팅 방법

애플리케이션 런타임 위치

부팅 복사기

최대 10개 장치만 가능(OnChip Flash IP 포함)

Nios V 프로세서 애플리케이션은 On-Chip Flash에서 실행됩니다.
부트 복사기를 사용하여 On-Chip Flash에서 RAM으로 복사된 Nios V 프로세서 애플리케이션

온칩 플래시(XIP) + OCRAM/외부 RAM(쓰기 가능한 데이터 섹션용)

alt_load() 함수

OCRAM/외부 RAM

GSFI를 통한 부트로더 재사용

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 55

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

그림 31.

설계, 구성 및 부팅 흐름
설계 · Platform Designer를 사용하여 Nios V 프로세서 기반 프로젝트를 만듭니다. · 시스템 설계에 외부 RAM이나 온칩 RAM이 있는지 확인합니다.

FPGA 구성 및 컴파일
· Platform Designer와 Quartus Prime 소프트웨어의 On-chip Flash IP에서 동일한 내부 구성 모드를 설정합니다. · Nios V 프로세서 리셋 에이전트를 On-chip Flash로 설정합니다. · 원하는 UFM 초기화 방법을 선택합니다. · Platform Designer에서 설계를 생성합니다. · Quartus Prime 소프트웨어에서 프로젝트를 컴파일합니다.

사용자 애플리케이션 BSP 프로젝트 · .sopcinfo 기반 Nios V 프로세서 HAL BSP 생성 file Platform Designer로 생성됨. · BSP 편집기에서 Nios V 프로세서 BSP 설정 및 링커 스크립트를 편집합니다. · BSP 프로젝트를 생성합니다.
사용자 애플리케이션 APP 프로젝트 · Nios V 프로세서 애플리케이션 코드를 개발합니다. · Nios V 프로세서 애플리케이션을 컴파일하고 Nios V 프로세서 애플리케이션(.hex)을 생성합니다. file· Intel FPGA On-Chip Flash IP에서 메모리 내용 초기화 옵션을 선택한 경우 Quartus Prime 소프트웨어에서 프로젝트를 다시 컴파일하세요.

프로그램 작성 Files 변환, 다운로드 및 실행 · 온칩 플래시 .pof 생성 file Convert Programming을 사용하여 FileQuartus Prime 소프트웨어의 기능입니다.
· .pof를 프로그래밍하세요 file MAX 10 장치에 설치합니다. · 하드웨어의 전원을 껐다가 다시 켭니다.
4.5.1. MAX 10 FPGA 온칩 플래시 설명
MAX 10 FPGA 장치에는 두 부분으로 분할된 온칩 플래시가 포함되어 있습니다. · 구성 플래시 메모리(CFM) - 하드웨어 구성 데이터를 저장합니다.
MAX 10 FPGA · 사용자 플래시 메모리(UFM) - 사용자 데이터나 소프트웨어 애플리케이션을 저장합니다.
MAX 10 장치의 UFM 아키텍처는 소프트 IP와 하드 IP의 조합으로 구성됩니다. Quartus Prime 소프트웨어의 온칩 플래시 IP 코어를 통해서만 UFM에 액세스할 수 있습니다.
온칩 플래시 IP 코어는 다음 기능을 지원합니다. · UFM 및 CFM(Platform Designer에서 활성화된 경우) 섹터에 대한 읽기 또는 쓰기 액세스
Avalon MM 데이터 및 제어 슬레이브 인터페이스를 사용합니다. · 페이지 삭제, 섹터 삭제 및 섹터 쓰기를 지원합니다. · 다양한 EDA 시뮬레이션 도구를 사용한 UFM 읽기/쓰기 액세스를 위한 시뮬레이션 모델입니다.

Nios® V 임베디드 프로세서 설계 핸드북 56

피드백 보내기

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

표 34. MAX 10 FPGA 디바이스의 온칩 플래시 영역

플래시 지역

기능성

구성 플래시 메모리(섹터 CFM0-2)

FPGA 구성 file 저장

사용자 플래시 메모리(섹터 UFM0-1)

Nios V 프로세서 애플리케이션 및 사용자 데이터

MAX 10 FPGA 장치는 여러 구성 모드를 지원하며, 일부 모드에서는 CFM1과 CFM2를 추가 UFM 영역으로 사용할 수 있습니다. 다음 표는 MAX 10 FPGA 구성 모드에 따른 FPGA 구성 이미지의 저장 위치를 ​​보여줍니다.

표 35. FPGA 구성 이미지의 저장 위치

구성 모드 이중 압축 이미지

CFM2 압축 이미지 2

CFM1

CFM0 압축 이미지 1

단일 비압축 이미지

가상 UFM

압축되지 않은 이미지

메모리 초기화를 통한 단일 비압축 이미지

압축되지 않은 이미지(사전 초기화된 온칩 메모리 콘텐츠 포함)

메모리 초기화가 포함된 단일 압축 이미지 압축 이미지(사전 초기화된 온칩 메모리 콘텐츠 포함)

단일 압축 이미지

가상 UFM

압축 이미지

MAX 10 FPGA의 플래시 메모리에 액세스하려면 온칩 플래시 IP 코어를 사용해야 합니다. 온칩 플래시 IP를 인스턴스화하고 Quartus Prime 소프트웨어에 연결할 수 있습니다. Nios V 소프트 코어 프로세서는 Platform Designer 인터커넥트를 사용하여 온칩 플래시 IP와 통신합니다.
그림 32. 온칩 플래시 IP와 Nios V 프로세서 간 연결

메모:

프로세서가 쓰기 및 지우기 작업을 제어할 수 있도록 온칩 플래시 csr 포트가 Nios V 프로세서 데이터 관리자에 연결되어 있는지 확인하세요.
온칩 플래시 IP 코어는 UFM0, UFM1, CFM0, CFM1, CFM2의 XNUMX개 플래시 섹터에 대한 액세스를 제공할 수 있습니다.
UFM 및 CFM 섹터에 대한 중요 정보: · CFM 섹터는 구성(비트스트림) 데이터(*.pof) 저장을 위해 설계되었습니다.
· 사용자 데이터는 UFM 섹터에 저장될 수 있으며, 플랫폼 디자이너 도구에서 올바른 설정을 선택한 경우 숨겨질 수 있습니다.
· 일부 장치에는 UFM1 섹터가 없습니다. 각 MAX 10 FPGA 장치에서 사용 가능한 섹터는 "UFM 및 CFM 섹터 크기" 표를 참조하십시오.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 57

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

· 단일 비압축 이미지 구성 모드를 선택하여 CFM2를 가상 UFM으로 구성할 수 있습니다.
· 단일 비압축 이미지 구성 모드를 선택하면 CFM2와 CFM1을 가상 UFM으로 구성할 수 있습니다.
· 각 섹터의 크기는 선택된 MAX 10 FPGA 장치에 따라 다릅니다.

표 36.

UFM 및 CFM 섹터 크기
이 표는 UFM 및 CFM 어레이의 크기를 나열한 것입니다.

장치

섹터당 페이지 수

UFM1 UFM0 CFM2 CFM1 CFM0

페이지 크기(Kbit)

최대 사용자
플래시 메모리 크기(Kbit) (3)

총 구성 메모리 크기(Kbit)

10M02 3

3

0

0

34 16

96

544

10M04 0

8

41 29 70 16

1248

2240

10M08 8

8

41 29 70 16

1376

2240

10M16 4

4

38 28 66 32

2368

4224

10M25 4

4

52 40 92 32

3200

5888

10M40 4

4

48 36 84 64

5888

10752

10M50 4

4

48 36 84 64

5888

10752

OCRAM 크기(Kbit)
108 189 378 549 675 1260 1638

관련 정보 · MAX 10 FPGA 구성 사용자 가이드 · Altera MAX 10 사용자 플래시 메모리 사용자 가이드

4.5.2. UFM에서 Nios V 프로세서 애플리케이션 실행

UFM 솔루션의 Execute-In-Place는 제한된 온칩 메모리 사용이 필요한 Nios V 프로세서 애플리케이션에 적합합니다. alt_load() 함수는 BSP 설정에 따라 부트 메모리에서 RAM으로 데이터 섹션(.rodata, .rwdata 또는 .exceptions)을 복사하는 미니 부트 복사기 역할을 합니다. 코드 섹션(.text)은
읽기 전용 섹션인 MAX 10 온칩 플래시 메모리 영역에 남아 있습니다. 이러한 설정은 RAM 사용량을 최소화하지만, 플래시 메모리에 대한 액세스 속도가 온칩 RAM보다 느리기 때문에 코드 실행 성능이 제한될 수 있습니다.

Nios V 프로세서 애플리케이션은 UFM 섹터에 프로그래밍됩니다. Nios V 프로세서의 리셋 벡터는 시스템 리셋 후 UFM의 코드를 실행하기 위해 UFM 기본 주소를 가리킵니다.

소스 수준 디버거를 사용하여 애플리케이션을 디버깅하는 경우 하드웨어 중단점을 사용해야 합니다. UFM은 소프트 중단점 디버깅에 필요한 임의 메모리 접근을 지원하지 않기 때문입니다.

메모:

MAX 10에서 실행 위치를 수행하는 동안에는 UFM을 지우거나 쓸 수 없습니다. UFM을 지우거나 써야 하는 경우 부팅 복사기 방식으로 전환하세요.

(3) 선택한 구성 모드에 따라 달라지는 가능한 최대 값입니다.

Nios® V 임베디드 프로세서 설계 핸드북 58

피드백 보내기

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

그림 33. UFM의 Nios V 프로세서 애플리케이션 XIP

최대 10개 기기

.POF
Nios V 하드웨어 .SOF
Nios V 소프트웨어 .HEX

Quartus 프로그래머

온칩 플래시

씨에프엠

Nios V 하드웨어

유에프엠

Nios V 소프트웨어

내부 구성

온칩 플래시 IP

FPGA 로직
Nios V 프로세서

온칩 RAM

외부

숫양

EMIF

IP

4.5.2.1. 하드웨어 설계 흐름
다음 섹션에서는 On-Chip Flash에서 Nios V 프로세서 애플리케이션용 부팅 가능 시스템을 구축하는 단계별 방법을 설명합니다.amp아래 le는 MAX 10 장치를 사용하여 빌드되었습니다.
IP 구성 요소 설정
1. Quartus Prime 및 Platform Designer를 사용하여 Nios V 프로세서 프로젝트를 만듭니다. 2. 외부 RAM 또는 온칩 메모리(OCRAM)가 플랫폼에 추가되었는지 확인합니다.
디자이너 시스템.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 59

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16
그림 34. 예ampOnChip Flash(UFM)에서 Nios V 부팅을 위한 Platform Designer의 IP 연결

3. On-Chip Flash IP 매개변수 편집기에서 설계 선호도에 따라 구성 모드를 다음 중 하나로 설정합니다. · 단일 비압축 이미지 · 단일 압축 이미지 · 메모리 초기화가 포함된 단일 비압축 이미지 · 메모리 초기화가 포함된 단일 압축 이미지
이중 압축 이미지에 대한 자세한 내용은 MAX 10 FPGA 구성 사용자 가이드 - 원격 시스템 업그레이드를 참조하세요.

메모:

On-Chip Flash IP의 모든 CFM 영역에 숨겨진 액세스를 할당해야 합니다.

그림 35. 온칩 플래시 매개변수 편집기의 구성 모드 선택

온칩 플래시 IP 설정 – UFM 초기화 다음 방법 중 하나를 선호도에 따라 선택할 수 있습니다.

Nios® V 임베디드 프로세서 설계 핸드북 60

피드백 보내기

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

메모:

이후 하위 챕터(소프트웨어 설계 흐름 및 프로그래밍)의 단계는 여기서 선택한 내용에 따라 달라집니다.

· 방법 1: 컴파일 중 SOF의 UFM 데이터 초기화
Quartus Prime은 컴파일 과정에서 UFM 초기화 데이터를 SOF에 포함합니다. UFM 데이터에 변경 사항이 있는 경우 SOF를 다시 컴파일해야 합니다.
1. 플래시 콘텐츠 초기화 및 기본이 아닌 초기화 활성화를 체크합니다. file.

그림 36. 플래시 콘텐츠 초기화 및 기본이 아닌 초기화 활성화 File

2. 생성된 .hex의 경로를 지정합니다. file (elf2hex 명령에서) 사용자가 생성한 hex 또는 mif file.
그림 37. .hex 추가 File 길

· 방법 2: POF 생성 중 컴파일된 SOF와 UFM 데이터 결합
프로그래밍을 변환할 때 UFM 데이터는 컴파일된 SOF와 결합됩니다. files. UFM 데이터가 변경되더라도 SOF를 다시 컴파일할 필요가 없습니다. 개발 중에는 SOF를 다시 컴파일할 필요가 없습니다. file애플리케이션 변경 사항에 대한 s입니다. 애플리케이션 개발자에게 이 방법을 권장합니다.
1. 플래시 콘텐츠 초기화를 선택 취소합니다.
그림 38. 기본이 아닌 초기화로 Flash 콘텐츠 초기화 File

Nios V 프로세서 실행 방식(Execute-In-Place)에 대한 에이전트 설정 재설정
1. Nios V 프로세서 매개변수 편집기에서 Reset Agent를 On-Chip Flash로 설정합니다.
그림 39. 리셋 에이전트가 온칩 플래시로 설정된 Nios V 프로세서 매개변수 편집기 설정

2. 생성 대화 상자가 나타나면 HDL 생성을 클릭합니다. 3. 출력을 지정합니다. file 생성 옵션을 선택하고 생성을 클릭합니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 61

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16
Quartus Prime 소프트웨어 설정 1. Quartus Prime 소프트웨어에서 할당 장치 장치 및 핀을 클릭합니다.
옵션 구성. On-Chip Flash IP 설정에 따라 구성 모드를 설정합니다. 그림 40. Quartus Prime 소프트웨어에서 구성 모드 선택

2. 확인을 클릭하여 장치 및 핀 옵션 창을 종료합니다.
3. 확인을 클릭하여 장치 창을 종료합니다.
4. 처리 시작 컴파일을 클릭하여 프로젝트를 컴파일하고 .sof 파일을 생성합니다. file.

메모:

Quartus Prime 소프트웨어와 Platform Designer 매개변수 편집기의 구성 모드 설정이 다르면 Quartus Prime 프로젝트가 다음 오류 메시지와 함께 실패합니다.

그림 41.

다른 구성 모드 설정 오류(14740): Atom "q_sys:q_sys_inst| altera_onchip_flash:onchip_flash_1| altera_onchip_flash_block: altera_onchip_flash_block|ufm_block"의 구성 모드가 프로젝트 설정과 일치하지 않습니다. 프로젝트 설정과 일치하도록 Qsys 시스템을 업데이트하고 재생성하십시오.

관련 정보 MAX 10 FPGA 구성 사용자 가이드

4.5.2.2. 소프트웨어 설계 흐름
이 섹션에서는 Nios V 프로세서 소프트웨어 프로젝트를 생성하고 빌드하는 설계 흐름을 제공합니다. 빌드 흐름을 간소화하려면 설계 프로젝트에도 유사한 디렉터리 트리를 생성하는 것이 좋습니다. 다음 소프트웨어 설계 흐름은 이 디렉터리 트리를 기반으로 합니다.
소프트웨어 프로젝트 디렉터리 트리를 만들려면 다음 단계를 따르세요. 1. 디자인 프로젝트 폴더에서 software라는 폴더를 만듭니다. 2. software 폴더에서 hal_app과 hal_bsp라는 두 개의 폴더를 만듭니다.
그림 42. 소프트웨어 프로젝트 디렉토리 트리

Nios® V 임베디드 프로세서 설계 핸드북 62

피드백 보내기

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16
애플리케이션 BSP 프로젝트 생성
BSP 편집기를 시작하려면 다음 단계를 따르세요.1. Nios V 명령 셸을 입력합니다.2. niosv-bsp-editor 명령으로 BSP 편집기를 호출합니다.3. BSP 편집기에서 다음을 클릭합니다. File BSP 프로젝트를 시작하려면 새 BSP를 선택하세요. 4. 다음 설정을 구성하세요.
· SOPC 정보 File 이름: SOPCINFO를 제공하세요 file (.sopcinfo). · CPU 이름: Nios V 프로세서를 선택합니다. · 운영 체제: Nios V 프로세서의 운영 체제를 선택합니다. · 버전: 기본값을 유지합니다. · BSP 대상 디렉터리: BSP 프로젝트의 디렉터리 경로를 선택합니다.
미리 설정해 두세요 /software/hal_bsp를 기본 위치 사용을 활성화하여 BSP 설정 File 이름: BSP 설정의 이름을 입력하세요 File. · 추가 Tcl 스크립트: 추가 Tcl 스크립트 사용을 활성화하여 BSP Tcl 스크립트를 제공합니다. 5. 확인을 클릭합니다.
그림 43. 새 BSP 구성

BSP 편집기 구성 및 BSP 프로젝트 생성
설계 환경에 따라 프로세서의 예외 벡터를 온칩 메모리(OCRAM) 또는 온칩 플래시에 정의할 수 있습니다. 인터럽트 처리 속도를 높이려면 예외 벡터 메모리를 OCRAM/외부 RAM으로 설정하는 것이 좋습니다. 1. 기본 설정 > 고급 > hal.linker로 이동합니다. 2. 예외 벡터로 온칩 플래시를 선택한 경우,
a. 다음 설정을 활성화하세요.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 63

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16
· allow_code_at_reset · enable_alt_load · enable_alt_load_copy_rodata · enable_alt_load_copy_rwdata 그림 44. Advanced.hal.linker 설정

b. BSP 편집기에서 링커 스크립트 탭을 클릭합니다. c. 링커 섹션 이름에서 .exceptions 및 .text 영역을 설정합니다.
온칩 플래시. d. 링커 섹션 이름 목록의 나머지 영역을 온칩으로 설정합니다.
메모리(OCRAM) 또는 외부 RAM.
그림 45. 링커 영역 설정(예외 벡터 메모리: 온칩 플래시)

3. 예외 벡터로 OCRAM/외부 RAM을 선택하는 경우, a. 다음 설정을 활성화합니다. · allow_code_at_reset · enable_alt_load · enable_alt_load_copy_rodata · enable_alt_load_copy_rwdata · enable_alt_load_copy_exception
그림 46. 링커 영역 설정(예외 벡터 메모리: OCRAM/외부 RAM)

b. BSP 편집기에서 링커 스크립트 탭을 클릭합니다.
c. 링커 섹션 이름의 .text 영역을 On-Chip Flash로 설정합니다.
d. 링커 섹션 이름 목록의 나머지 영역을 OCRAM(온칩 메모리) 또는 외부 RAM으로 설정합니다.

Nios® V 임베디드 프로세서 설계 핸드북 64

피드백 보내기

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16
그림 47. 링커 영역 설정(예외 벡터 메모리: OCRAM)
4. [생성]을 클릭하여 BSP 프로젝트를 생성합니다. 사용자 애플리케이션 프로젝트 생성 File 1. software/hal_app 폴더로 이동하여 애플리케이션 소스를 만듭니다.
코드. 2. Nios V 명령 셸을 실행합니다. 3. 아래 명령을 실행하여 애플리케이션 CMakeLists.txt를 생성합니다.
niosv-app –app-dir=소프트웨어/hal_app –bsp-dir=소프트웨어/hal_bsp –srcs=소프트웨어/hal_app/
사용자 애플리케이션 프로젝트 빌드하기 Altera FPGA용 Ashling RiscFree IDE 또는 명령줄 인터페이스(CLI)를 사용하여 사용자 애플리케이션 프로젝트를 빌드할 수 있습니다. CLI를 사용하는 경우 다음 명령을 사용하여 사용자 애플리케이션을 빌드할 수 있습니다. cmake -G "Unix Make"files” -B 소프트웨어/hal_app/빌드 -S 소프트웨어/hal_app make -C 소프트웨어/hal_app/빌드
애플리케이션(.elf) file software/hal_app/build 폴더에 생성됩니다. HEX 생성 File .hex를 생성해야 합니다. file 귀하의 응용 프로그램에서 .elf file, 그래서 .pof를 만들 수 있습니다 file 장치 프로그래밍에 적합합니다. 1. Nios V 명령 셸을 시작합니다. 2. On-Chip Flash에서 Nios V 프로세서 애플리케이션 부팅의 경우 다음을 사용합니다.
ELF 파일을 애플리케이션의 HEX 파일로 변환하는 명령줄입니다. 이 명령은 사용자 애플리케이션(onchip_flash.hex)을 생성합니다. file. elf2hex 소프트웨어/hal_app/build/ .elf -o onchip_flash.hex
-비 -w 8 -e 3. On-Chip Flash IP(방법 1)에서 "Initialize memory content" 옵션을 선택한 경우 하드웨어 설계를 다시 컴파일합니다. 이는 SOF에 소프트웨어 데이터(.HEX)를 포함하기 위한 것입니다. file.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 65

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16
4.5.2.3. 프로그래밍 1. Quartus Prime에서 다음을 클릭합니다. File 변환 프로그래밍 Files. 2. 출력 프로그래밍 file, 프로그래머 객체를 선택하세요 File (.pof) 프로그래밍으로 file 유형. 3. 모드를 내부 구성으로 설정합니다.
그림 48. 프로그래밍 변환 File 설정
4. 옵션/부팅 정보…를 클릭하면 MAX 10 장치 옵션 창이 나타납니다. 5. 온칩 플래시 IP의 플래시 콘텐츠 초기화 설정에 따라 다음을 수행합니다.
다음 단계 중 하나: · 플래시 콘텐츠 초기화가 선택된 경우(방법 1) UFM 초기화 데이터
Quartus Prime 컴파일 중에 SOF에 포함되었습니다. — UFM 소스에 대해 Page_0을 선택하세요: 옵션. 확인을 클릭하고 다음으로 진행합니다.
다음. 그림 49. 플래시 콘텐츠 초기화가 선택된 경우 UFM 소스에 대한 Page_0 설정

Nios® V 임베디드 프로세서 설계 핸드북 66

피드백 보내기

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16
· 플래시 콘텐츠 초기화가 체크되지 않은 경우(방법 2) 메모리 로드를 선택하세요. file UFM 소스 옵션의 경우 생성된 On-chip Flash HEX를 찾아보세요. file (onchip_flash.hex)에서 File 경로:를 클릭하고 확인을 클릭합니다. 이 단계에서는 UFM 데이터를 SOF에 별도로 추가합니다. file 프로그래밍 중 file 변환.
그림 50. 로드 메모리 설정 File UFM 소스의 경우 Flash 콘텐츠 초기화가 선택되지 않은 경우

6. 변환 프로그래밍에서 File 대화 상자, 입력에서 file섹션을 변환하려면 추가를 클릭하세요. File… 생성된 Quartus Prime .sof를 가리킵니다. file.
그림 51. 입력 FileConvert Programming에서 s를 Convert로 변환 File단일 이미지 모드를 위한 s

7. 생성을 클릭하여 .pof를 생성합니다. file. 8. .pof를 프로그래밍하세요 file MAX 10 장치에 넣습니다. 9. 하드웨어의 전원을 껐다가 켭니다.

4.5.3. 부트 복사기를 사용하여 UFM에서 RAM으로 복사된 Nios V 프로세서 애플리케이션

Altera는 애플리케이션 소프트웨어 개발을 여러 번 반복하고 높은 시스템 성능이 요구되는 MAX 10 FPGA Nios V 프로세서 시스템 설계에 이 솔루션을 권장합니다. 부트 카피어는 UFM 내에서 리셋 벡터와 동일한 주소의 오프셋에 위치합니다. Nios V 애플리케이션은 부트 카피어 옆에 위치합니다.

이 부팅 옵션의 경우, Nios V 프로세서는 시스템 재설정 시 부트 복사기를 실행하여 UFM 섹터에서 OCRAM 또는 외부 RAM으로 애플리케이션을 복사합니다. 복사가 완료되면 Nios V 프로세서는 프로그램 제어권을 애플리케이션으로 넘깁니다.

메모:

적용된 부트 복사기는 GSFI를 통한 부트로더와 동일합니다.

피드백 보내기

Nios® V 임베디드 프로세서 설계 핸드북 67

4. Nios V 프로세서 구성 및 부팅 솔루션 726952 | 2025.07.16

그림 52. 부트 복사기를 사용하여 UFM에서 RAM으로 복사된 Nios V 애플리케이션

최대 10개 기기

.POF
Nios V 하드웨어 .SOF
Nios V 소프트웨어 .HEX
부트로더 .SREC

Quartus 프로그래머

외부 램
Nios V 소프트웨어

온칩 플래시

씨에프엠

니오스 V 하르드와

문서 / 리소스

알테라 Nios V 임베디드 프로세서 [PDF 파일] 사용자 가이드
Nios V, Nios Vm, Nios Vg, Nios Vc, Nios V 임베디드 프로세서, Nios V, 임베디드 프로세서, 프로세서

참고문헌

댓글을 남겨주세요

이메일 주소는 공개되지 않습니다. 필수 항목은 표시되어 있습니다. *