altera Nios V Embedded Processor

Thông số kỹ thuật

  • Tên sản phẩm: Bộ xử lý Nios V
  • Software Compatibility: Quartus Prime Software and Platform Designer
  • Loại bộ xử lý: Altera FPGA
  • Hệ thống bộ nhớ: Bộ nhớ dễ bay hơi và không dễ bay hơi
  • Giao diện truyền thông: UART Agent

Nios V Processor Hardware System Design

To design the Nios V Processor hardware system, follow these steps:

  1. Create Nios V Processor system design using Platform Designer.
  2. Tích hợp hệ thống vào dự án Quartus Prime.
  3. Design memory system including volatile and non-volatile memory.
  4. Triển khai đồng hồ và thiết lập lại các phương pháp hay nhất.
  5. Chỉ định tác nhân mặc định và UART để hoạt động hiệu quả.

Nios V Processor Software System Design

Để thiết kế hệ thống phần mềm cho Bộ xử lý Nios V:

  1. Theo dõi quy trình phát triển phần mềm cho Bộ xử lý Nios V.
  2. Create Board Support Package Project and Application Project.

Nios V Processor Configuration and Booting Solutions

Để cấu hình và khởi động Bộ xử lý Nios V:

  1. Understand the introduction to configuration and booting solutions.
  2. Liên kết các ứng dụng để hoạt động liền mạch.

About the Nios® V Embedded Processor
1.1. Altera® FPGA và Bộ xử lý nhúngview
Các thiết bị FPGA của Altera có thể triển khai logic hoạt động như một bộ vi xử lý hoàn chỉnh đồng thời cung cấp nhiều tùy chọn.
Một điểm khác biệt quan trọng giữa vi xử lý rời rạc và FPGA Altera là cấu trúc FPGA Altera không chứa logic khi khởi động. Bộ xử lý Nios® V là bộ xử lý sở hữu trí tuệ mềm (IP) dựa trên đặc tả RISC-V. Trước khi chạy phần mềm trên hệ thống sử dụng bộ xử lý Nios V, bạn phải cấu hình thiết bị FPGA Altera với thiết kế phần cứng chứa bộ xử lý Nios V. Bạn có thể đặt bộ xử lý Nios V ở bất kỳ đâu trên FPGA Altera, tùy thuộc vào yêu cầu thiết kế.


Để cho phép hệ thống nhúng dựa trên IP FPGA Altera® của bạn hoạt động như một hệ thống dựa trên bộ vi xử lý rời rạc, hệ thống của bạn phải bao gồm những điều sau: · AJTAG giao diện hỗ trợ cấu hình FPGA, phần cứng và phần mềm của Altera
gỡ lỗi · Cơ chế cấu hình FPGA của Altera
Nếu hệ thống của bạn có những khả năng này, bạn có thể bắt đầu tinh chỉnh thiết kế từ một thiết kế phần cứng đã được kiểm tra trước và tải vào FPGA của Altera. Sử dụng FPGA của Altera cũng cho phép bạn nhanh chóng sửa đổi thiết kế để giải quyết vấn đề hoặc bổ sung chức năng mới. Bạn có thể dễ dàng kiểm tra các thiết kế phần cứng mới này bằng cách cấu hình lại FPGA của Altera bằng J của hệ thống.TAG giao diện.
Chữ JTAG Giao diện hỗ trợ phát triển phần cứng và phần mềm. Bạn có thể thực hiện các tác vụ sau bằng cách sử dụng JTAG giao diện: · Cấu hình FPGA Altera · Tải xuống và gỡ lỗi phần mềm · Giao tiếp với FPGA Altera thông qua giao diện giống UART (JTAG UART
thiết bị đầu cuối) · Gỡ lỗi phần cứng (với bộ phân tích logic nhúng Signal Tap) · Lập trình bộ nhớ flash
Sau khi bạn cấu hình FPGA Altera với thiết kế dựa trên bộ xử lý Nios V, quy trình phát triển phần mềm sẽ tương tự như quy trình thiết kế vi điều khiển rời rạc.


Thông tin liên quan · AN 985: Hướng dẫn sử dụng bộ xử lý Nios V
Hướng dẫn nhanh về cách tạo hệ thống xử lý Nios V đơn giản và chạy ứng dụng Hello World.
© Tập đoàn Altera. Altera, logo Altera, logo `a' và các nhãn hiệu Altera khác là thương hiệu của Tập đoàn Altera. Altera bảo lưu quyền thay đổi bất kỳ sản phẩm và dịch vụ nào bất cứ lúc nào mà không cần thông báo trước. Altera không chịu bất kỳ trách nhiệm hoặc nghĩa vụ pháp lý nào phát sinh từ việc áp dụng hoặc sử dụng bất kỳ thông tin, sản phẩm hoặc dịch vụ nào được mô tả ở đây, trừ khi có sự đồng ý rõ ràng bằng văn bản của Altera. Khách hàng của Altera được khuyến nghị nên tìm hiểu phiên bản mới nhất của thông số kỹ thuật thiết bị trước khi dựa vào bất kỳ thông tin nào đã công bố và trước khi đặt hàng sản phẩm hoặc dịch vụ. *Các tên và thương hiệu khác có thể được coi là tài sản của người khác.

1. Giới thiệu về Bộ xử lý nhúng Nios® V 726952 | 2025.07.16/XNUMX/XNUMX
· Sổ tay tham khảo bộ xử lý Nios V Cung cấp thông tin về điểm chuẩn hiệu suất bộ xử lý Nios V, kiến ​​trúc bộ xử lý, mô hình lập trình và triển khai cốt lõi.
· Hướng dẫn sử dụng IP cho thiết bị ngoại vi nhúng · Sổ tay dành cho nhà phát triển phần mềm bộ xử lý Nios V


Mô tả môi trường phát triển phần mềm bộ xử lý Nios V, các công cụ có sẵn và quy trình xây dựng phần mềm chạy trên bộ xử lý Nios V. · Hướng dẫn sử dụng Môi trường phát triển tích hợp (IDE) Ashling* RiscFree* cho FPGA Altera Mô tả môi trường phát triển tích hợp (IDE) RiscFree* cho FPGA Altera HPS dựa trên ARM* và bộ xử lý lõi Nios V. · Ghi chú phát hành IP FPGA Altera cho bộ xử lý Nios V
1.2. Hỗ trợ phần mềm Quartus® Prime
Quy trình xây dựng bộ xử lý Nios V khác nhau đối với phần mềm Quartus® Prime Pro Edition và phần mềm Quartus Prime Standard Edition. Tham khảo AN 980: Hỗ trợ phần mềm Quartus Prime cho bộ xử lý Nios V để biết thêm thông tin về sự khác biệt.
Thông tin liên quan AN 980: Bộ xử lý Nios V Hỗ trợ phần mềm Quartus Prime
1.3. Cấp phép bộ xử lý Nios V
Mỗi phiên bản bộ xử lý Nios V đều có khóa cấp phép riêng. Sau khi có khóa cấp phép, bạn có thể sử dụng cùng một khóa cấp phép cho tất cả các dự án bộ xử lý Nios V cho đến ngày hết hạn. Bạn có thể mua giấy phép IP FPGA Altera của Bộ xử lý Nios V mà không mất phí.
Danh sách khóa cấp phép bộ xử lý Nios V có sẵn trong Trung tâm Cấp phép Tự phục vụ FPGA của Altera. Nhấp vào tab Đăng ký Đánh giá hoặc Giấy phép Miễn phí và chọn các tùy chọn tương ứng để thực hiện yêu cầu.
Hình 1. Trung tâm cấp phép tự phục vụ FPGA của Altera

Với khóa cấp phép, bạn có thể:
Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 7

1. Giới thiệu về Bộ xử lý nhúng Nios® V 726952 | 2025.07.16/XNUMX/XNUMX
· Triển khai bộ xử lý Nios V trong hệ thống của bạn. · Mô phỏng hành vi của hệ thống bộ xử lý Nios V. · Xác minh chức năng của thiết kế, chẳng hạn như kích thước và tốc độ. · Tạo chương trình lập trình thiết bị files. · Lập trình thiết bị và kiểm tra thiết kế trong phần cứng.
Bạn không cần giấy phép để phát triển phần mềm trong Ashling* RiscFree* IDE cho FPGA Altera.
Thông tin liên quan · Trung tâm cấp phép tự phục vụ FPGA của Altera
Để biết thêm thông tin về cách lấy khóa cấp phép IP FPGA Altera cho Bộ xử lý Nios V. · Cài đặt và cấp phép phần mềm FPGA Altera Để biết thêm thông tin về cách cấp phép phần mềm FPGA Altera và thiết lập máy chủ cấp phép cố định và cấp phép mạng.
1.4. Thiết kế hệ thống nhúng
Hình sau minh họa quy trình thiết kế hệ thống dựa trên bộ xử lý Nios V đơn giản hóa, bao gồm cả phát triển phần cứng và phần mềm.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 8

Gửi phản hồi

1. Giới thiệu về Bộ xử lý nhúng Nios® V 726952 | 2025.07.16/XNUMX/XNUMX

Hình 2.

Luồng thiết kế hệ thống bộ xử lý Nios V
Khái niệm hệ thống

Phân tích yêu cầu hệ thống

Nios® V
Lõi bộ xử lý và các thành phần tiêu chuẩn

Xác định và tạo hệ thống trong
Nhà thiết kế nền tảng

Luồng phần cứng: Tích hợp và biên dịch dự án Intel Quartus Prime

Luồng phần mềm: Phát triển và xây dựng phần mềm đề xuất Nios V

Luồng phần cứng: Tải xuống thiết kế FPGA
đến Hội đồng mục tiêu

Luồng phần mềm: Kiểm tra và gỡ lỗi phần mềm bộ xử lý Nios V

Phần mềm không đáp ứng được thông số kỹ thuật?
Đúng
Phần cứng Không đáp ứng thông số kỹ thuật? Có
Hệ thống hoàn chỉnh

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 9

726952 | 2025.07.16 Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng

Hình 3.

Sơ đồ sau minh họa thiết kế phần cứng bộ xử lý Nios V điển hình. Luồng thiết kế phần cứng hệ thống bộ xử lý Nios V

Bắt đầu

Lõi Nios V và các thành phần tiêu chuẩn

Sử dụng Platform Designer để thiết kế hệ thống dựa trên Nios V
Tạo thiết kế nền tảng thiết kế

Tích hợp Hệ thống Thiết kế Nền tảng với Dự án Intel Quartus Prime
Chỉ định vị trí ghim, yêu cầu thời gian và các ràng buộc thiết kế khác
Biên dịch phần cứng cho thiết bị mục tiêu trong Intel Quartus Prime

Sẵn sàng để tải xuống
2.1. Tạo thiết kế hệ thống bộ xử lý Nios V bằng Platform Designer
Phần mềm Quartus Prime bao gồm công cụ tích hợp hệ thống Platform Designer, giúp đơn giản hóa việc xác định và tích hợp lõi IP của bộ xử lý Nios V và các IP khác vào thiết kế hệ thống FPGA của Altera. Platform Designer tự động tạo logic kết nối từ kết nối cấp cao được chỉ định. Tính năng tự động hóa kết nối giúp loại bỏ nhiệm vụ tốn thời gian là chỉ định các kết nối HDL cấp hệ thống.
© Tập đoàn Altera. Altera, logo Altera, logo `a' và các nhãn hiệu Altera khác là thương hiệu của Tập đoàn Altera. Altera bảo lưu quyền thay đổi bất kỳ sản phẩm và dịch vụ nào bất cứ lúc nào mà không cần thông báo trước. Altera không chịu bất kỳ trách nhiệm hoặc nghĩa vụ pháp lý nào phát sinh từ việc áp dụng hoặc sử dụng bất kỳ thông tin, sản phẩm hoặc dịch vụ nào được mô tả ở đây, trừ khi có sự đồng ý rõ ràng bằng văn bản của Altera. Khách hàng của Altera được khuyến nghị nên tìm hiểu phiên bản mới nhất của thông số kỹ thuật thiết bị trước khi dựa vào bất kỳ thông tin nào đã công bố và trước khi đặt hàng sản phẩm hoặc dịch vụ. *Các tên và thương hiệu khác có thể được coi là tài sản của người khác.

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Sau khi phân tích các yêu cầu phần cứng hệ thống, bạn sử dụng Quartus Prime để xác định lõi xử lý Nios V, bộ nhớ và các thành phần khác mà hệ thống của bạn yêu cầu. Trình Thiết kế Nền tảng sẽ tự động tạo logic kết nối để tích hợp các thành phần vào hệ thống phần cứng.

2.1.1. Khởi tạo IP FPGA của Bộ xử lý Nios V Altera

You can instantiate any of the processor IP cores in Platform Designer IP Catalog Processors and Peripherals Embedded Processors.

Lõi IP của mỗi bộ xử lý hỗ trợ các tùy chọn cấu hình khác nhau dựa trên kiến ​​trúc riêng biệt của nó. Bạn có thể xác định các cấu hình này để phù hợp hơn với nhu cầu thiết kế của mình.

Bảng 1.

Tùy chọn cấu hình trên các biến thể lõi

Tùy chọn cấu hình

Bộ xử lý Nios V/c

Bộ xử lý Nios V/m

Gỡ lỗi Sử dụng Đặt lại Yêu cầu

Bẫy, Ngoại lệ và Ngắt

Kiến trúc CPU

ECC

Bộ nhớ đệm, Vùng ngoại vi và TCM

Hướng dẫn tùy chỉnh

Khóa bước

Bộ xử lý Nios V/g

2.1.1.1. Khởi tạo Nios V/c Compact Microcontroller Altera FPGA IP Hình 4. Nios V/c Compact Microcontroller Altera FPGA IP

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 11

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

2.1.1.1.1. Tab Kiến trúc CPU

Bảng 2.

Tab Kiến trúc CPU

Tính năng

Sự miêu tả

Bật Giao diện Avalon®. Bật Giao diện Avalon cho trình quản lý lệnh và trình quản lý dữ liệu. Nếu tắt, hệ thống sẽ sử dụng giao diện AXI4-Lite.

giá trị CSR của mhartid

· Tùy chọn IP không hợp lệ. · Không sử dụng giá trị CSR mhartid trong bộ xử lý Nios V/c.

2.1.1.1.2. Sử dụng tab Yêu cầu đặt lại

Bảng 3.

Sử dụng tham số tab yêu cầu đặt lại

Sử dụng tab Yêu cầu đặt lại

Sự miêu tả

Thêm giao diện yêu cầu đặt lại

· Bật tùy chọn này để hiển thị các cổng đặt lại cục bộ nơi máy chủ cục bộ có thể sử dụng để kích hoạt bộ xử lý Nios V đặt lại mà không ảnh hưởng đến các thành phần khác trong hệ thống bộ xử lý Nios V.
· Giao diện thiết lập lại bao gồm tín hiệu resetreq đầu vào và tín hiệu ack đầu ra.
· Bạn có thể yêu cầu thiết lập lại lõi bộ xử lý Nios V bằng cách xác nhận tín hiệu resetreq.
· Tín hiệu resetreq phải được duy trì ở trạng thái xác nhận cho đến khi bộ xử lý xác nhận tín hiệu xác nhận. Việc tín hiệu không được duy trì ở trạng thái xác nhận có thể khiến bộ xử lý ở trạng thái không xác định.
· Bộ xử lý Nios V phản hồi rằng việc thiết lập lại thành công bằng cách xác nhận tín hiệu xác nhận.
· Sau khi bộ xử lý được thiết lập lại thành công, việc khẳng định tín hiệu xác nhận có thể xảy ra nhiều lần theo định kỳ cho đến khi tín hiệu resetreq bị hủy bỏ.

2.1.1.1.3. Tab Bẫy, Ngoại lệ và Ngắt

Bảng 4.

Tham số tab Bẫy, Ngoại lệ và Ngắt

Bẫy, Ngoại lệ và Ngắt

Sự miêu tả

Đặt lại tác nhân

· Bộ nhớ lưu trữ vectơ đặt lại (địa chỉ đặt lại bộ xử lý Nios V) nơi lưu trữ mã đặt lại.
· Bạn có thể chọn bất kỳ mô-đun bộ nhớ nào được kết nối với bộ xử lý lệnh Nios V và được hỗ trợ bởi luồng khởi động bộ xử lý Nios V làm tác nhân đặt lại.

Đặt lại bù đắp

· Chỉ định độ lệch của vectơ đặt lại so với địa chỉ cơ sở của tác nhân đặt lại đã chọn. · Platform Designer tự động cung cấp giá trị mặc định cho độ lệch đặt lại.

Ghi chú:

Platform Designer cung cấp tùy chọn Tuyệt đối, cho phép bạn chỉ định địa chỉ tuyệt đối trong Reset Offset. Sử dụng tùy chọn này khi bộ nhớ lưu trữ vector reset nằm ngoài hệ thống bộ xử lý và các hệ thống con.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 12

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

2.1.1.1.4. Thẻ ECC

Bảng 5.

Thẻ ECC

ECC

Bật tính năng phát hiện lỗi và báo cáo trạng thái

Sự miêu tả
· Bật tùy chọn này để áp dụng tính năng ECC cho các khối RAM bên trong bộ xử lý Nios V. · Tính năng ECC phát hiện lỗi lên đến 2 bit và phản ứng dựa trên hành vi sau:
— Nếu lỗi có thể sửa được 1 bit, bộ xử lý sẽ tiếp tục hoạt động sau khi sửa lỗi trong đường ống xử lý. Tuy nhiên, lỗi sửa lỗi không được phản ánh trong bộ nhớ nguồn.
— Nếu lỗi không thể sửa được, bộ xử lý sẽ tiếp tục hoạt động mà không sửa lỗi trong đường ống xử lý và bộ nhớ nguồn, điều này có thể khiến bộ xử lý chuyển sang trạng thái không xác định.

2.1.1.2. Khởi tạo Nios V/m Vi điều khiển Altera FPGA IP Hình 5. Nios V/m Vi điều khiển Altera FPGA IP

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 13

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

2.1.1.2.1. Tab gỡ lỗi

Bảng 6.

Tham số tab gỡ lỗi

Tab gỡ lỗi

Sự miêu tả

Bật gỡ lỗi
Bật Đặt lại từ Mô-đun Gỡ lỗi

· Bật tùy chọn này để thêm JTAG mô-đun kết nối mục tiêu tới bộ xử lý Nios V. · JTAG mô-đun kết nối mục tiêu cho phép kết nối với bộ xử lý Nios V thông qua
JTAG chân giao diện của FPGA. · Kết nối cung cấp các khả năng cơ bản sau:
— Khởi động và dừng bộ xử lý Nios V — Kiểm tra và chỉnh sửa các thanh ghi và bộ nhớ. — Tải xuống ứng dụng Nios V .elf file vào bộ nhớ bộ xử lý khi chạy qua
niosv-download. — Gỡ lỗi ứng dụng đang chạy trên bộ xử lý Nios V · Kết nối cổng dm_agent với bus lệnh và dữ liệu của bộ xử lý. Đảm bảo địa chỉ cơ sở giữa hai bus là giống nhau.
· Bật tùy chọn này để hiển thị các cổng dbg_reset_out và ndm_reset_in. · JTAG lệnh debugger hoặc niosv-download -r kích hoạt dbg_reset_out,
cho phép bộ xử lý Nios V thiết lập lại các thiết bị ngoại vi hệ thống kết nối với cổng này. · Bạn phải kết nối giao diện dbg_reset_out với ndm_reset_in thay vì thiết lập lại
Giao diện để kích hoạt việc thiết lập lại lõi bộ xử lý và mô-đun hẹn giờ. Bạn không được kết nối giao diện dbg_reset_out với giao diện thiết lập lại để tránh hành vi không xác định.

2.1.1.2.2. Sử dụng tab Yêu cầu đặt lại

Bảng 7.

Sử dụng tham số tab yêu cầu đặt lại

Sử dụng tab Yêu cầu đặt lại

Sự miêu tả

Thêm giao diện yêu cầu đặt lại

· Bật tùy chọn này để hiển thị các cổng đặt lại cục bộ nơi máy chủ cục bộ có thể sử dụng để kích hoạt bộ xử lý Nios V đặt lại mà không ảnh hưởng đến các thành phần khác trong hệ thống bộ xử lý Nios V.
· Giao diện thiết lập lại bao gồm tín hiệu resetreq đầu vào và tín hiệu ack đầu ra.
· Bạn có thể yêu cầu thiết lập lại lõi bộ xử lý Nios V bằng cách xác nhận tín hiệu resetreq.
· Tín hiệu resetreq phải được duy trì ở trạng thái xác nhận cho đến khi bộ xử lý xác nhận tín hiệu xác nhận. Việc tín hiệu không được duy trì ở trạng thái xác nhận có thể khiến bộ xử lý ở trạng thái không xác định.
· Việc khẳng định tín hiệu resetreq ở chế độ gỡ lỗi không ảnh hưởng đến trạng thái của bộ xử lý.
· Bộ xử lý Nios V phản hồi rằng việc thiết lập lại thành công bằng cách xác nhận tín hiệu xác nhận.
· Sau khi bộ xử lý được thiết lập lại thành công, việc khẳng định tín hiệu xác nhận có thể xảy ra nhiều lần theo định kỳ cho đến khi tín hiệu resetreq bị hủy bỏ.

2.1.1.2.3. Tab Bẫy, Ngoại lệ và Ngắt

Bảng 8.

Tab Bẫy, Ngoại lệ và Ngắt

Tab Bẫy, Ngoại lệ và Ngắt

Sự miêu tả

Đặt lại tác nhân

· Bộ nhớ lưu trữ vectơ đặt lại (địa chỉ đặt lại bộ xử lý Nios V) nơi lưu trữ mã đặt lại.
· Bạn có thể chọn bất kỳ mô-đun bộ nhớ nào được kết nối với bộ xử lý lệnh Nios V và được hỗ trợ bởi luồng khởi động bộ xử lý Nios V làm tác nhân đặt lại.

Chế độ ngắt bù đặt lại

· Chỉ định độ lệch của vectơ đặt lại so với địa chỉ cơ sở của tác nhân đặt lại đã chọn. · Platform Designer tự động cung cấp giá trị mặc định cho độ lệch đặt lại.
Chỉ định loại bộ điều khiển ngắt Trực tiếp hoặc Ngắt vectơ. Lưu ý: Bộ xử lý Nios V/m không có đường ống không hỗ trợ ngắt Ngắt vectơ.
Do đó, tránh sử dụng chế độ ngắt Vectored khi bộ xử lý đang ở chế độ không có đường ống.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 14

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Ghi chú:

Platform Designer cung cấp tùy chọn Tuyệt đối, cho phép bạn chỉ định địa chỉ tuyệt đối trong Reset Offset. Sử dụng tùy chọn này khi bộ nhớ lưu trữ vector reset nằm ngoài hệ thống bộ xử lý và các hệ thống con.

2.1.1.2.4. Kiến trúc CPU

Bảng 9.

Tham số tab Kiến trúc CPU

Kiến trúc CPU

Sự miêu tả

Kích hoạt Pipelining trong CPU

· Bật tùy chọn này để khởi tạo bộ xử lý Nios V/m theo đường ống. — IPC cao hơn nhưng phải đánh đổi bằng diện tích logic cao hơn và tần số Fmax thấp hơn.
· Vô hiệu hóa tùy chọn này để khởi tạo bộ xử lý Nios V/m không có đường ống. — Có hiệu suất lõi tương tự như bộ xử lý Nios V/c. — Hỗ trợ khả năng gỡ lỗi và ngắt — Diện tích logic thấp hơn và tần số Fmax cao hơn với chi phí là IPC thấp hơn.

Kích hoạt giao diện Avalon

Bật Giao diện Avalon cho trình quản lý lệnh và trình quản lý dữ liệu. Nếu tắt, hệ thống sẽ sử dụng giao diện AXI4-Lite.

giá trị CSR của mhartid

· Giá trị thanh ghi Hart ID (mhartid) mặc định là 0. · Gán giá trị từ 0 đến 4094. · Tương thích với Altera FPGA Avalon Mutex Core HAL API.

Thông tin liên quan Hướng dẫn sử dụng IP ngoại vi nhúng – Intel FPGA Avalon® Mutex Core

2.1.1.2.5. Thẻ ECC
Bảng 10. Tab ECC
ECC Bật Phát hiện Lỗi và Báo cáo Trạng thái

Sự miêu tả
· Bật tùy chọn này để áp dụng tính năng ECC cho các khối RAM bên trong bộ xử lý Nios V. · Tính năng ECC phát hiện lỗi lên đến 2 bit và phản ứng dựa trên hành vi sau:
— Nếu lỗi có thể sửa được 1 bit, bộ xử lý sẽ tiếp tục hoạt động sau khi sửa lỗi trong đường ống xử lý. Tuy nhiên, lỗi sửa lỗi không được phản ánh trong bộ nhớ nguồn.
— Nếu lỗi không thể sửa được, bộ xử lý sẽ tiếp tục hoạt động mà không sửa lỗi trong đường ống xử lý và bộ nhớ nguồn, điều này có thể khiến bộ xử lý chuyển sang trạng thái không xác định.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 15

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16
2.1.1.3. Khởi tạo Bộ xử lý đa năng Nios V/g Altera FPGA IP
Hình 6. Bộ xử lý đa năng Nios V/g Altera FPGA IP – Phần 1

Hình 7.

Bộ xử lý đa năng Nios V/g Altera FPGA IP – Phần 2 (Tắt Bật Bộ điều khiển ngắt cấp lõi)

Sổ tay thiết kế bộ xử lý nhúng Nios® V 16

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Hình 8.

Bộ xử lý đa năng Nios V/g Altera FPGA IP – Phần 2 (Bật tùy chọn Bật bộ điều khiển ngắt cấp lõi)

Hình 9. Bộ xử lý đa năng Nios V/g Altera FPGA IP – Phần 3

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 17

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16
Hình 10. Bộ xử lý đa năng Nios V/g Altera FPGA IP – Phần 4

2.1.1.3.1. Kiến trúc CPU

Bảng 11. Các thông số kiến ​​trúc CPU

Tab Kiến trúc CPU Kích hoạt Đơn vị Dấu phẩy động

Mô tả Bật tùy chọn này để thêm đơn vị dấu phẩy động (phần mở rộng “F”) vào lõi bộ xử lý.

Bật dự đoán nhánh

Bật dự đoán nhánh tĩnh (Đã thực hiện ngược và Đã thực hiện tiến không thực hiện) cho các lệnh nhánh.

giá trị CSR của mhartid

· Giá trị thanh ghi Hart ID (mhartid) mặc định là 0. · Gán giá trị từ 0 đến 4094. · Tương thích với Altera FPGA Avalon Mutex Core HAL API.

Vô hiệu hóa hướng dẫn FSQRT & FDIV cho FPU

· Loại bỏ các phép toán căn bậc hai dấu phẩy động (FSQRT) và phép chia dấu phẩy động (FDIV) trong FPU.
· Áp dụng phần mềm mô phỏng cho cả hai lệnh trong thời gian chạy.

Thông tin liên quan Hướng dẫn sử dụng IP ngoại vi nhúng – Intel FPGA Avalon® Mutex Core

Sổ tay thiết kế bộ xử lý nhúng Nios® V 18

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

2.1.1.3.2. Tab gỡ lỗi

Bảng 12. Tham số tab gỡ lỗi

Tab gỡ lỗi

Sự miêu tả

Bật gỡ lỗi
Bật Đặt lại từ Mô-đun Gỡ lỗi

· Bật tùy chọn này để thêm JTAG mô-đun kết nối mục tiêu tới bộ xử lý Nios V. · JTAG mô-đun kết nối mục tiêu cho phép kết nối với bộ xử lý Nios V thông qua
JTAG chân giao diện của FPGA. · Kết nối cung cấp các khả năng cơ bản sau:
— Khởi động và dừng bộ xử lý Nios V — Kiểm tra và chỉnh sửa các thanh ghi và bộ nhớ. — Tải xuống ứng dụng Nios V .elf file vào bộ nhớ bộ xử lý khi chạy qua
niosv-download. — Gỡ lỗi ứng dụng đang chạy trên bộ xử lý Nios V · Kết nối cổng dm_agent với bus lệnh và dữ liệu của bộ xử lý. Đảm bảo địa chỉ cơ sở giữa hai bus là giống nhau.
· Bật tùy chọn này để hiển thị các cổng dbg_reset_out và ndm_reset_in. · JTAG lệnh debugger hoặc niosv-download -r kích hoạt dbg_reset_out,
cho phép bộ xử lý Nios V thiết lập lại các thiết bị ngoại vi hệ thống kết nối với cổng này. · Bạn phải kết nối giao diện dbg_reset_out với ndm_reset_in thay vì thiết lập lại
Giao diện để kích hoạt việc thiết lập lại lõi bộ xử lý và mô-đun hẹn giờ. Bạn không được kết nối giao diện dbg_reset_out với giao diện thiết lập lại để tránh hành vi không xác định.

2.1.1.3.3. Tab khóa Bảng 13. Tab khóa
Tham số Kích hoạt Khóa thời gian chờ mặc định Kích hoạt Giao diện đặt lại mở rộng

Mô tả · Kích hoạt hệ thống Lockstep lõi kép. · Giá trị mặc định của thời gian chờ có thể lập trình khi thoát khỏi quá trình thiết lập lại (từ 0 đến 255). · Kích hoạt Giao diện Thiết lập lại Mở rộng tùy chọn cho Điều khiển Thiết lập lại Mở rộng. · Khi tắt, fRSmartComp sẽ triển khai Điều khiển Thiết lập lại Cơ bản.

2.1.1.3.4. Sử dụng tab Yêu cầu đặt lại

Bảng 14. Sử dụng tham số tab yêu cầu đặt lại

Sử dụng tab Yêu cầu đặt lại

Sự miêu tả

Thêm giao diện yêu cầu đặt lại

· Bật tùy chọn này để hiển thị các cổng đặt lại cục bộ nơi máy chủ cục bộ có thể sử dụng để kích hoạt bộ xử lý Nios V đặt lại mà không ảnh hưởng đến các thành phần khác trong hệ thống bộ xử lý Nios V.
· Giao diện thiết lập lại bao gồm tín hiệu resetreq đầu vào và tín hiệu ack đầu ra.
· Bạn có thể yêu cầu thiết lập lại lõi bộ xử lý Nios V bằng cách xác nhận tín hiệu resetreq.
· Tín hiệu resetreq phải được duy trì ở trạng thái xác nhận cho đến khi bộ xử lý xác nhận tín hiệu xác nhận. Việc tín hiệu không được duy trì ở trạng thái xác nhận có thể khiến bộ xử lý ở trạng thái không xác định.
· Việc khẳng định tín hiệu resetreq ở chế độ gỡ lỗi không ảnh hưởng đến trạng thái của bộ xử lý.
· Bộ xử lý Nios V phản hồi rằng việc thiết lập lại thành công bằng cách xác nhận tín hiệu xác nhận.
· Sau khi bộ xử lý được thiết lập lại thành công, việc khẳng định tín hiệu xác nhận có thể xảy ra nhiều lần theo định kỳ cho đến khi tín hiệu resetreq bị hủy bỏ.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 19

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

2.1.1.3.5. Tab Bẫy, Ngoại lệ và Ngắt

Bảng 15.

Tab Bẫy, Ngoại lệ và Ngắt khi Bật Bộ điều khiển Ngắt Cấp Lõi bị Tắt

Tab Bẫy, Ngoại lệ và Ngắt
Đặt lại tác nhân

Sự miêu tả
· Bộ nhớ lưu trữ vectơ đặt lại (địa chỉ đặt lại bộ xử lý Nios V) nơi lưu trữ mã đặt lại.
· Bạn có thể chọn bất kỳ mô-đun bộ nhớ nào được kết nối với bộ xử lý lệnh Nios V và được hỗ trợ bởi luồng khởi động bộ xử lý Nios V làm tác nhân đặt lại.

Đặt lại bù đắp

· Chỉ định độ lệch của vectơ đặt lại so với địa chỉ cơ sở của tác nhân đặt lại đã chọn. · Platform Designer tự động cung cấp giá trị mặc định cho độ lệch đặt lại.

Kích hoạt Bộ điều khiển ngắt cấp lõi (CLIC)

· Cho phép CLIC hỗ trợ ngắt ưu tiên và điều kiện kích hoạt ngắt có thể cấu hình.
· Khi được bật, bạn có thể cấu hình số lượng ngắt nền tảng, đặt điều kiện kích hoạt và chỉ định một số ngắt là ngắt ưu tiên.

Thanh ghi bóng chế độ ngắt Files

Chỉ định các loại ngắt là Trực tiếp hoặc Theo vectơ. Kích hoạt thanh ghi bóng để giảm việc chuyển đổi ngữ cảnh khi ngắt.

Bảng 16.

Bẫy, Ngoại lệ và Ngắt khi Bật Bộ điều khiển Ngắt Cấp Lõi

Bẫy, Ngoại lệ và Ngắt

Mô tả

Đặt lại tác nhân
Đặt lại bù đắp
Kích hoạt Bộ điều khiển ngắt cấp lõi (CLIC)

· Bộ nhớ lưu trữ vectơ đặt lại (địa chỉ đặt lại bộ xử lý Nios V) nơi lưu trữ mã đặt lại.
· Bạn có thể chọn bất kỳ mô-đun bộ nhớ nào được kết nối với bộ xử lý lệnh Nios V và được hỗ trợ bởi luồng khởi động bộ xử lý Nios V làm tác nhân đặt lại.
· Chỉ định độ lệch của vectơ đặt lại so với địa chỉ cơ sở của tác nhân đặt lại đã chọn. · Platform Designer tự động cung cấp giá trị mặc định cho độ lệch đặt lại.
· Cho phép CLIC hỗ trợ ngắt ưu tiên và điều kiện kích hoạt ngắt có thể cấu hình. · Khi được bật, bạn có thể cấu hình số lượng ngắt nền tảng, đặt điều kiện kích hoạt,
và chỉ định một số ngắt là ngắt ưu tiên.

Chế độ ngắt

· Chỉ định các loại ngắt là Trực tiếp, Theo vectơ hoặc CLIC.

Sổ đăng ký bóng tối Files

· Kích hoạt thanh ghi bóng để giảm việc chuyển đổi ngữ cảnh khi ngắt.
· Cung cấp hai cách tiếp cận:
— Số lượng mức ngắt CLIC
— Số lượng mức ngắt CLIC – 1: Tùy chọn này hữu ích khi bạn muốn số lượng thanh ghi file bản sao để phù hợp với số lượng chính xác các khối M20K hoặc M9K.
· Cho phép bộ xử lý Nios V sử dụng thanh ghi bóng filegiúp giảm thiểu chi phí chuyển đổi ngữ cảnh khi bị ngắt.
Để biết thêm thông tin về sổ đăng ký bóng tối files, hãy tham khảo Sổ tay tham khảo bộ xử lý Nios V.

Số lượng nguồn ngắt nền tảng

· Chỉ định số lượng ngắt nền tảng từ 16 đến 2048.
Lưu ý: CLIC hỗ trợ tối đa 2064 đầu vào ngắt và 16 đầu vào ngắt đầu tiên cũng được kết nối với bộ điều khiển ngắt cơ bản.

Căn chỉnh bảng vectơ CLIC

· Tự động xác định dựa trên số lượng nguồn ngắt nền tảng. · Nếu bạn sử dụng căn chỉnh thấp hơn giá trị khuyến nghị, CLIC sẽ tăng logic
độ phức tạp bằng cách thêm một bộ cộng bổ sung để thực hiện các phép tính vectơ. · Nếu bạn sử dụng một phép căn chỉnh thấp hơn giá trị được khuyến nghị, điều này sẽ dẫn đến tăng
độ phức tạp của logic trong CLIC.
tiếp tục…

Sổ tay thiết kế bộ xử lý nhúng Nios® V 20

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Bẫy, Ngoại lệ và Ngắt
Số lượng mức ngắt
Số lượng ưu tiên ngắt trên mỗi cấp độ
Cực tính ngắt có thể cấu hình Hỗ trợ ngắt kích hoạt cạnh

Mô tả
· Chỉ định số lượng mức ngắt với mức 0 bổ sung cho mã ứng dụng. Ngắt ở mức cao hơn có thể ngắt (chiếm quyền trước) trình xử lý đang chạy để thực hiện ngắt ở mức thấp hơn.
· Với các mức ngắt khác 0 là tùy chọn duy nhất cho ngắt, mã ứng dụng luôn ở mức thấp nhất là 8. Lưu ý: Cấu hình mức ngắt và mức ưu tiên của ngắt khi chạy được thực hiện trong một thanh ghi 256 bit duy nhất. Nếu số mức ngắt là 256, không thể cấu hình mức ưu tiên ngắt khi chạy. Nếu không, số mức ưu tiên tối đa có thể cấu hình là 1 / (số mức ngắt - XNUMX).
· Chỉ định số lượng mức độ ưu tiên ngắt, mà CLIC sử dụng để xác định thứ tự gọi các trình xử lý ngắt không chiếm quyền trước. Lưu ý: Việc nối các giá trị nhị phân của mức độ ngắt đã chọn và mức độ ưu tiên ngắt đã chọn phải nhỏ hơn 8 bit.
· Cho phép bạn cấu hình cực tính ngắt trong thời gian chạy. · Cực tính mặc định là cực tính dương.
· Cho phép bạn cấu hình điều kiện kích hoạt ngắt trong thời gian chạy, tức là kích hoạt ở mức cao hoặc kích hoạt ở cạnh dương (khi cực ngắt là dương trong cực ngắt có thể cấu hình).
· Điều kiện kích hoạt mặc định là ngắt kích hoạt mức.

Ghi chú:

Platform Designer cung cấp tùy chọn Tuyệt đối, cho phép bạn chỉ định địa chỉ tuyệt đối trong Reset Offset. Sử dụng tùy chọn này khi bộ nhớ lưu trữ vector reset nằm ngoài hệ thống bộ xử lý và các hệ thống con.

Thông tin liên quan Sổ tay tham khảo bộ xử lý Nios® V

2.1.1.3.6. Tab Cấu hình bộ nhớ

Bảng 17. Tham số tab Cấu hình bộ nhớ

Loại

Tab Cấu hình bộ nhớ

Sự miêu tả

Bộ nhớ đệm

Kích thước bộ đệm dữ liệu

· Chỉ định kích thước của bộ đệm dữ liệu. · Kích thước hợp lệ là từ 0 kilobyte (KB) đến 16 KB. · Tắt bộ đệm dữ liệu khi kích thước là 0 KB.

Kích thước bộ nhớ đệm hướng dẫn

· Chỉ định kích thước của bộ đệm lệnh. · Kích thước hợp lệ là từ 0 KB đến 16 KB. · Tắt bộ đệm lệnh khi kích thước là 0 KB.

Vùng ngoại vi A và B

Kích cỡ

· Chỉ định kích thước của vùng ngoại vi.
· Kích thước hợp lệ là từ 64 KB đến 2 gigabyte (GB) hoặc Không có. Chọn Không có sẽ vô hiệu hóa vùng ngoại vi.

Địa chỉ cơ sở

· Chỉ định địa chỉ cơ sở của vùng ngoại vi sau khi bạn chọn kích thước.
· Tất cả các địa chỉ trong vùng ngoại vi đều tạo ra các truy cập dữ liệu không thể lưu vào bộ nhớ đệm.
· Địa chỉ cơ sở của vùng ngoại vi phải phù hợp với kích thước của vùng ngoại vi.

Ký ức gắn kết chặt chẽ

Kích cỡ

· Chỉ định kích thước của bộ nhớ được liên kết chặt chẽ. — Kích thước hợp lệ là từ 0 MB đến 512 MB.

Khởi tạo địa chỉ cơ sở File

· Chỉ định địa chỉ cơ sở của bộ nhớ được liên kết chặt chẽ. · Chỉ định khởi tạo file cho bộ nhớ gắn kết chặt chẽ.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 21

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Ghi chú:

Trong hệ thống bộ xử lý Nios V có bật bộ nhớ đệm, bạn phải đặt các thiết bị ngoại vi hệ thống trong một vùng ngoại vi. Bạn có thể sử dụng vùng ngoại vi để xác định một giao dịch không thể lưu vào bộ nhớ đệm cho các thiết bị ngoại vi như UART, PIO, DMA, v.v.

2.1.1.3.7. Thẻ ECC

Bảng 18. Tab ECC
ECC Bật Phát hiện Lỗi và Báo cáo Trạng thái
Kích hoạt sửa lỗi bit đơn

Sự miêu tả
· Bật tùy chọn này để áp dụng tính năng ECC cho các khối RAM bên trong bộ xử lý Nios V. · Tính năng ECC phát hiện lỗi lên đến 2 bit và phản ứng dựa trên hành vi sau:
— Nếu đó là lỗi bit đơn có thể sửa được và tùy chọn Bật Sửa Bit Đơn bị tắt, bộ xử lý vẫn tiếp tục hoạt động sau khi sửa lỗi trong đường truyền của bộ xử lý. Tuy nhiên, việc sửa lỗi sẽ không được phản ánh trong bộ nhớ nguồn.
— Nếu là lỗi bit đơn có thể sửa được và Bật sửa bit đơn được bật, bộ xử lý sẽ tiếp tục hoạt động sau khi sửa lỗi trong đường ống xử lý và bộ nhớ nguồn.
— Nếu đó là lỗi không thể sửa được, bộ xử lý sẽ dừng hoạt động.
Cho phép sửa lỗi bit đơn trên các khối bộ nhớ nhúng trong lõi.

2.1.1.3.8. Tab Hướng dẫn Tùy chỉnh

Ghi chú:

Tab này chỉ khả dụng cho lõi bộ xử lý Nios V/g.

Bảng giao diện phần cứng hướng dẫn tùy chỉnh Nios V
Bảng Macro phần mềm hướng dẫn tùy chỉnh Nios V

Sự miêu tả
· Bộ xử lý Nios V sử dụng bảng này để xác định giao diện quản lý lệnh tùy chỉnh của nó.
· Giao diện quản lý lệnh tùy chỉnh được xác định được mã hóa duy nhất bằng Opcode (CUSTOM0-3) và 3 bit của funct7[6:4].
· Bạn có thể xác định tối đa 32 giao diện quản lý hướng dẫn tùy chỉnh riêng lẻ.
· Bộ xử lý Nios V sử dụng bảng này để xác định mã hóa phần mềm hướng dẫn tùy chỉnh cho các giao diện quản lý hướng dẫn tùy chỉnh đã xác định.
· Đối với mỗi mã hóa phần mềm hướng dẫn tùy chỉnh được xác định, Opcode (CUSTOM0-3) và 3 bit của mã hóa funct7[6:4] phải tương quan với mã hóa giao diện trình quản lý hướng dẫn tùy chỉnh được xác định trong Bảng giao diện phần cứng hướng dẫn tùy chỉnh.
· Bạn có thể sử dụng funct7[6:4], funct7[3:0] và funct3[2:0] để xác định mã hóa bổ sung cho một lệnh tùy chỉnh nhất định hoặc được chỉ định là X để truyền vào dưới dạng đối số lệnh bổ sung.
· Bộ xử lý Nios V cung cấp mã hóa phần mềm hướng dẫn tùy chỉnh được xác định dưới dạng macro C được tạo trong system.h và tuân theo định dạng hướng dẫn RISC-V loại R.
· Có thể sử dụng thuật ngữ gợi nhớ để xác định tên tùy chỉnh cho: — Các C-Macro được tạo trong system.h.
— Mã ghi nhớ gỡ lỗi GDB được tạo trong custom_instruction_debug.xml.

Thông tin liên quan
AN 977: Hướng dẫn tùy chỉnh bộ xử lý Nios® V Để biết thêm thông tin về hướng dẫn tùy chỉnh cho phép bạn tùy chỉnh bộ xử lý Nios® V để đáp ứng nhu cầu của một ứng dụng cụ thể.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 22

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và nhà thiết kế nền tảng 726952 | 2025.07.16/XNUMX/XNUMX
2.1.2. Xác định thiết kế thành phần hệ thống
Sử dụng Trình thiết kế nền tảng để xác định các đặc điểm phần cứng của hệ thống bộ xử lý Nios V và thêm vào các thành phần mong muốn. Sơ đồ sau đây minh họa thiết kế hệ thống bộ xử lý Nios V cơ bản với các thành phần sau: · Lõi bộ xử lý Nios V · Bộ nhớ trên chip · JTAG UART · Bộ đếm thời gian (tùy chọn)(1)
Khi một bộ nhớ On-Chip mới được thêm vào hệ thống Platform Designer, hãy thực hiện Đồng bộ Thông tin Hệ thống để phản ánh các thành phần bộ nhớ đã thêm vào khi đặt lại. Ngoài ra, bạn có thể bật Tự động Đồng bộ trong Platform Designer để tự động phản ánh những thay đổi thành phần mới nhất.
Hình 11. Ví dụampKết nối bộ xử lý Nios V với các thiết bị ngoại vi khác trong Platform Designer

(1) Bạn có tùy chọn sử dụng các tính năng Bộ hẹn giờ nội bộ Nios V để thay thế Bộ hẹn giờ khoảng thời gian bên ngoài trong Platform Designer.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 23

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16
Bạn cũng phải xác định các chân hoạt động để xuất dưới dạng ống dẫn trong hệ thống Platform Designer của mình. Ví dụ:ample, danh sách chân hoạt động của hệ thống FPGA thích hợp được định nghĩa như sau nhưng không giới hạn ở:
· Cái đồng hồ
· Cài lại
· Tín hiệu I/O
2.1.3. Chỉ định Địa chỉ Cơ sở và Ưu tiên Yêu cầu Ngắt
Để chỉ định cách các thành phần được thêm vào trong thiết kế tương tác để tạo thành một hệ thống, bạn cần chỉ định địa chỉ cơ sở cho từng thành phần tác nhân và chỉ định mức độ ưu tiên yêu cầu ngắt (IRQ) cho JTAG UART và bộ đếm thời gian. Trình Thiết kế Nền tảng cung cấp lệnh – Gán Địa chỉ Cơ sở – tự động gán địa chỉ cơ sở phù hợp cho tất cả các thành phần trong hệ thống. Tuy nhiên, bạn có thể điều chỉnh địa chỉ cơ sở dựa trên nhu cầu của mình.
Sau đây là một số hướng dẫn để chỉ định địa chỉ cơ sở:
· Lõi bộ xử lý Nios V có dải địa chỉ 32 bit. Để truy cập các thành phần tác nhân, địa chỉ cơ sở của chúng phải nằm trong khoảng từ 0x00000000 đến 0xFFFFFFFF.
· Các chương trình Nios V sử dụng hằng số ký hiệu để tham chiếu đến địa chỉ. Bạn không cần phải chọn các giá trị địa chỉ dễ nhớ.
· Các giá trị địa chỉ phân biệt các thành phần chỉ với một bit địa chỉ khác nhau sẽ tạo ra phần cứng hiệu quả hơn. Bạn không cần phải nén tất cả các địa chỉ cơ sở thành dải địa chỉ nhỏ nhất có thể vì việc nén có thể tạo ra phần cứng kém hiệu quả hơn.
· Platform Designer không cố gắng sắp xếp các thành phần bộ nhớ riêng biệt trong một phạm vi bộ nhớ liền kề. Ví dụample, nếu bạn muốn nhiều thành phần Bộ nhớ trên chip có thể được định địa chỉ như một phạm vi bộ nhớ liền kề, bạn phải chỉ định rõ ràng các địa chỉ cơ sở.
Platform Designer cũng cung cấp lệnh tự động hóa - Assign Interrupt Numbers (Gán Số Ngắt), cho phép kết nối các tín hiệu IRQ để tạo ra kết quả phần cứng hợp lệ. Tuy nhiên, việc gán IRQ hiệu quả đòi hỏi sự hiểu biết về hành vi phản hồi tổng thể của hệ thống. Platform Designer không thể đưa ra dự đoán chính xác về việc gán IRQ tốt nhất.
Giá trị IRQ thấp nhất có mức ưu tiên cao nhất. Trong một hệ thống lý tưởng, Altera khuyến nghị thành phần bộ đếm thời gian nên có IRQ ưu tiên cao nhất, tức là giá trị thấp nhất, để duy trì độ chính xác của nhịp đồng hồ hệ thống.
Trong một số trường hợp, bạn có thể gán mức độ ưu tiên cao hơn cho các thiết bị ngoại vi thời gian thực (như bộ điều khiển video), đòi hỏi tốc độ ngắt cao hơn so với các thành phần hẹn giờ.
Thông tin liên quan
Hướng dẫn sử dụng Quartus Prime Pro Edition: Thông tin thêm về cách tạo Hệ thống bằng Platform Designer.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 24

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và nhà thiết kế nền tảng 726952 | 2025.07.16/XNUMX/XNUMX
2.2. Tích hợp Hệ thống thiết kế nền tảng vào Dự án Quartus Prime
Sau khi tạo thiết kế hệ thống Nios V trong Platform Designer, hãy thực hiện các tác vụ sau để tích hợp mô-đun hệ thống Nios V vào dự án thiết kế FPGA Quartus Prime. · Khởi tạo mô-đun hệ thống Nios V trong dự án Quartus Prime · Kết nối tín hiệu từ mô-đun hệ thống Nios V với các tín hiệu khác trong logic FPGA · Chỉ định vị trí chân vật lý · Hạn chế thiết kế FPGA
2.2.1. Khởi tạo Mô-đun Hệ thống Bộ xử lý Nios V trong Dự án Quartus Prime
Trình Thiết kế Nền tảng tạo ra một thực thể thiết kế mô-đun hệ thống mà bạn có thể khởi tạo trong Quartus Prime. Cách bạn khởi tạo mô-đun hệ thống phụ thuộc vào phương thức nhập thiết kế cho toàn bộ dự án Quartus Prime. Ví dụ:ampNếu bạn đang sử dụng Verilog HDL để nhập thiết kế, hãy khởi tạo mô-đun hệ thống dựa trên Verilog. Nếu bạn muốn sử dụng phương pháp sơ đồ khối để nhập thiết kế, hãy khởi tạo ký hiệu mô-đun hệ thống .bdf file.
2.2.2. Kết nối tín hiệu và chỉ định vị trí chân vật lý
Để kết nối thiết kế FPGA Altera của bạn với thiết kế cấp bo mạch, hãy thực hiện các tác vụ sau: · Xác định cấp cao nhất file cho thiết kế và tín hiệu của bạn để kết nối với Altera bên ngoài
Các chân thiết bị FPGA. · Hiểu các chân nào cần kết nối thông qua hướng dẫn sử dụng thiết kế cấp bo mạch của bạn hoặc
sơ đồ. · Gán tín hiệu trong thiết kế cấp cao nhất cho các cổng trên thiết bị FPGA Altera của bạn bằng chân
công cụ giao bài tập.
Hệ thống Platform Designer của bạn có thể là thiết kế cấp cao nhất. Tuy nhiên, Altera FPGA cũng có thể bao gồm logic bổ sung dựa trên nhu cầu của bạn và do đó giới thiệu một thiết kế cấp cao tùy chỉnh. file. Cấp cao nhất file kết nối các tín hiệu mô-đun hệ thống xử lý Nios V với logic thiết kế FPGA Altera khác.
Thông tin liên quan Hướng dẫn sử dụng Quartus Prime Pro Edition: Ràng buộc thiết kế
2.2.3. Hạn chế thiết kế FPGA của Altera
Thiết kế hệ thống FPGA Altera đúng cách bao gồm các ràng buộc thiết kế để đảm bảo thiết kế đáp ứng các yêu cầu về đóng thời gian và các ràng buộc logic khác. Bạn phải ràng buộc thiết kế FPGA Altera của mình để đáp ứng các yêu cầu này một cách rõ ràng bằng cách sử dụng các công cụ được cung cấp trong phần mềm Quartus Prime hoặc các nhà cung cấp EDA bên thứ ba. Phần mềm Quartus Prime sử dụng các ràng buộc được cung cấp trong giai đoạn biên dịch để có được kết quả sắp xếp tối ưu.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 25

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16
Thông tin liên quan · Hướng dẫn sử dụng Quartus Prime Pro Edition: Ràng buộc thiết kế · Đối tác EDA bên thứ ba · Hướng dẫn sử dụng Quartus Prime Pro Edition: Trình phân tích thời gian
2.3. Thiết kế hệ thống bộ nhớ xử lý Nios V
Phần này mô tả các phương pháp hay nhất để lựa chọn thiết bị bộ nhớ trong hệ thống nhúng Platform Designer với bộ xử lý Nios V và đạt được hiệu suất tối ưu. Thiết bị bộ nhớ đóng vai trò quan trọng trong việc cải thiện hiệu suất tổng thể của hệ thống nhúng. Bộ nhớ hệ thống nhúng lưu trữ các lệnh chương trình và dữ liệu.
2.3.1. Bộ nhớ dễ bay hơi
Điểm khác biệt chính giữa các loại bộ nhớ là tính dễ bay hơi. Bộ nhớ dễ bay hơi chỉ lưu giữ nội dung của nó khi bạn cấp nguồn cho thiết bị nhớ. Ngay khi bạn ngắt nguồn, bộ nhớ sẽ mất nội dung.
ExampCác thành phần của bộ nhớ dễ bay hơi là RAM, bộ nhớ đệm và thanh ghi. Đây là những loại bộ nhớ nhanh giúp tăng hiệu suất hoạt động. Altera khuyến nghị bạn tải và thực thi các lệnh xử lý Nios V trong RAM và ghép nối lõi IP Nios V với IP Bộ nhớ Trên Chip hoặc IP Giao diện Bộ nhớ Ngoài để có hiệu suất tối ưu.
Để cải thiện hiệu suất, bạn có thể loại bỏ các thành phần điều chỉnh Platform Designer bổ sung bằng cách khớp loại giao diện hoặc chiều rộng của trình quản lý dữ liệu bộ xử lý Nios V với RAM khởi động. Ví dụ:ample, bạn có thể cấu hình On-Chip Memory II với giao diện AXI-32 4-bit, phù hợp với giao diện quản lý dữ liệu Nios V.
Thông tin liên quan · Giao diện bộ nhớ ngoài Trung tâm hỗ trợ IP · Bộ nhớ trên chip (RAM hoặc ROM) IP FPGA của Altera · Bộ nhớ trên chip II (RAM hoặc ROM) IP FPGA của Altera · Ứng dụng bộ xử lý Nios V được thực thi tại chỗ từ OCRAM trên trang 54
2.3.1.1. Cấu hình bộ nhớ trên chip RAM hoặc ROM
Bạn có thể cấu hình IP bộ nhớ trên chip FPGA của Altera thành RAM hoặc ROM. · RAM cung cấp khả năng đọc và ghi và có tính chất dễ bay hơi. Nếu bạn
Khi khởi động bộ xử lý Nios V từ RAM trên chip, bạn phải đảm bảo nội dung khởi động được lưu giữ và không bị hỏng trong trường hợp đặt lại trong thời gian chạy. · Nếu bộ xử lý Nios V khởi động từ ROM, bất kỳ lỗi phần mềm nào trên bộ xử lý Nios V đều không thể ghi đè nhầm lên nội dung của Bộ nhớ trên chip. Nhờ đó, giảm thiểu nguy cơ hỏng phần mềm khởi động.
Thông tin liên quan · Bộ nhớ trên chip (RAM hoặc ROM) Altera FPGA IP · Bộ nhớ trên chip II (RAM hoặc ROM) Altera FPGA IP · Ứng dụng bộ xử lý Nios V được thực thi tại chỗ từ OCRAM trên trang 54

Sổ tay thiết kế bộ xử lý nhúng Nios® V 26

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và nhà thiết kế nền tảng 726952 | 2025.07.16/XNUMX/XNUMX
2.3.1.2. Bộ nhớ đệm
Bộ nhớ trên chip thường được sử dụng để triển khai chức năng bộ nhớ đệm do độ trễ thấp. Bộ xử lý Nios V sử dụng bộ nhớ trên chip cho bộ nhớ đệm lệnh và dữ liệu. Dung lượng hạn chế của bộ nhớ trên chip thường không phải là vấn đề đối với bộ nhớ đệm vì chúng thường có kích thước nhỏ.
Bộ nhớ đệm thường được sử dụng trong các điều kiện sau:
· Bộ nhớ thông thường nằm ngoài chip và có thời gian truy cập lâu hơn bộ nhớ trên chip.
· Các phần quan trọng về hiệu suất của mã phần mềm có thể nằm trong bộ nhớ đệm lệnh, giúp cải thiện hiệu suất hệ thống.
· Phần dữ liệu quan trọng về hiệu suất và được sử dụng thường xuyên nhất có thể nằm trong bộ đệm dữ liệu, giúp cải thiện hiệu suất hệ thống.
Việc kích hoạt bộ nhớ đệm trong bộ xử lý Nios V sẽ tạo ra một hệ thống phân cấp bộ nhớ, giúp giảm thiểu thời gian truy cập bộ nhớ.
2.3.1.2.1. Vùng ngoại vi
Bất kỳ IP ngoại vi nhúng nào, chẳng hạn như UART, I2C và SPI, đều không được lưu vào bộ nhớ đệm. Bộ nhớ đệm được khuyến nghị sử dụng cho các bộ nhớ ngoài bị ảnh hưởng bởi thời gian truy cập dài, trong khi bộ nhớ trong trên chip có thể bị loại trừ do thời gian truy cập ngắn. Bạn không được lưu vào bộ nhớ đệm bất kỳ IP ngoại vi nhúng nào, chẳng hạn như UART, I2C và SPI, ngoại trừ các bộ nhớ. Điều này rất quan trọng vì các sự kiện từ các thiết bị ngoài, chẳng hạn như các thiết bị tác nhân cập nhật IP mềm, sẽ không được bộ nhớ đệm của bộ xử lý ghi lại, do đó bộ xử lý cũng không nhận được. Do đó, các sự kiện này có thể không được chú ý cho đến khi bạn xóa bộ nhớ đệm, điều này có thể dẫn đến hành vi không mong muốn trong hệ thống của bạn. Tóm lại, vùng ánh xạ bộ nhớ của các IP ngoại vi nhúng là không thể lưu vào bộ nhớ đệm và phải nằm trong các vùng ngoại vi của bộ xử lý.
Để thiết lập vùng ngoại vi, hãy làm theo các bước sau:
1. Mở Bản đồ địa chỉ của hệ thống trong Trình thiết kế nền tảng.
2. Điều hướng đến bản đồ địa chỉ của Trình quản lý lệnh và Trình quản lý dữ liệu của bộ xử lý.
3. Xác định các thiết bị ngoại vi và bộ nhớ trong hệ thống của bạn.
Hình 12. Ví dụample của Bản đồ Địa chỉ

Lưu ý: Các mũi tên màu xanh chỉ vào bộ nhớ. 4. Nhóm các thiết bị ngoại vi:
a. Bộ nhớ có thể lưu trữ đệm b. Thiết bị ngoại vi không thể lưu trữ đệm

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 27

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Bảng 19. Vùng có thể lưu vào bộ nhớ đệm và không thể lưu vào bộ nhớ đệm

Phụ thuộc

Bản đồ địa chỉ

Trạng thái

Vùng ngoại vi

Kích cỡ

Địa chỉ cơ sở

user_application_mem.s1

0x0 ~ 0x3ffff

Có thể lưu vào bộ nhớ đệm

Không có

Không có

cpu.dm_agent bootcopier_rom.s1

0x40000 ~ 0x4ffff 0x50000 ~ 0x517ff

Không thể lưu vào bộ nhớ đệm Có thể lưu vào bộ nhớ đệm

65536 byte Không áp dụng

0x40000 Không áp dụng

bootcopier_ram.s1 cpu.timer_sw_agent mailbox.avmm

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

Có thể lưu trữ bộ nhớ đệm Không thể lưu trữ bộ nhớ đệm Không thể lưu trữ bộ nhớ đệm

144 byte (kích thước tối thiểu là 65536 byte)

0x54000

sysid_qsys_0.control_slave

0x54080 ~ 0x54087

Không thể lưu vào bộ nhớ đệm

uart.avalon_jtag_nô lệ

0x54088 ~ 0x5408f

Không thể lưu vào bộ nhớ đệm

5. Căn chỉnh các vùng ngoại vi theo kích thước cụ thể của chúng:
· Đối với người yêu cũample, nếu kích thước là 65536 byte, nó tương ứng với 0x10000 byte. Do đó, địa chỉ cơ sở được phép phải là bội số của 0x10000.
· CPU.dm_agent sử dụng địa chỉ cơ sở là 0x40000, là bội số của 0x10000. Do đó, Vùng Ngoại vi A, với kích thước 65536 byte và địa chỉ cơ sở là 0x40000, đáp ứng các yêu cầu.
· Địa chỉ cơ sở của tập hợp các vùng không thể lưu trữ đệm tại 0x54000 không phải là bội số của 0x10000. Bạn phải gán lại chúng thành 0x60000 hoặc bội số khác của 0x10000. Do đó, Vùng Ngoại Vi B, có kích thước 65536 byte và địa chỉ cơ sở là 0x60000, đáp ứng các tiêu chí.

Bảng 20. Vùng có thể lưu trữ đệm và không thể lưu trữ đệm với việc chỉ định lại

Phụ thuộc

Bản đồ địa chỉ

Trạng thái

Vùng ngoại vi

Kích cỡ

Địa chỉ cơ sở

user_application_mem.s1

0x0 ~ 0x3ffff

Có thể lưu vào bộ nhớ đệm

Không có

Không có

cpu.dm_agent

0x40000 ~ 0x4ffff

Không thể lưu vào bộ nhớ đệm 65536 byte

0x40000

bootcopier_rom.s1

0x50000 ~ 0x517ff

Có thể lưu vào bộ nhớ đệm

Không có

Không có

bootcopier_ram.s1 cpu.timer_sw_agent mailbox.avmm sysid_qsys_0.control_slave

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

Có thể lưu trữ Không thể lưu trữ Không thể lưu trữ Không thể lưu trữ

144 byte (kích thước tối thiểu là 65536 byte)

0x60000

uart.avalon_jtag_nô lệ

0x60088 ~ 0x6008f

Không thể lưu vào bộ nhớ đệm

2.3.1.3. Bộ nhớ liên kết chặt chẽ
Bộ nhớ ghép nối chặt chẽ (TCM) được triển khai bằng bộ nhớ trên chip vì độ trễ thấp của chúng rất phù hợp với tác vụ này. TCM là bộ nhớ được ánh xạ trong không gian địa chỉ thông thường nhưng có giao diện chuyên dụng với bộ vi xử lý và sở hữu các đặc tính hiệu suất cao, độ trễ thấp của bộ nhớ đệm. TCM cũng cung cấp một giao diện phụ cho máy chủ bên ngoài. Bộ xử lý và máy chủ bên ngoài có cùng cấp quyền để xử lý TCM.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 28

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Ghi chú:

Khi cổng phụ TCM được kết nối với máy chủ bên ngoài, địa chỉ cơ sở của nó có thể khác với địa chỉ cơ sở được gán trong lõi bộ xử lý. Altera khuyến nghị nên căn chỉnh cả hai địa chỉ về cùng một giá trị.

2.3.1.4. Giao diện bộ nhớ ngoài (EMIF)
EMIF (Giao diện Bộ nhớ Ngoài) hoạt động tương tự như SRAM (Bộ nhớ Truy cập Ngẫu nhiên Tĩnh), nhưng nó là bộ nhớ động và cần được làm mới định kỳ để duy trì nội dung. Các ô nhớ động trong EMIF nhỏ hơn nhiều so với các ô nhớ tĩnh trong SRAM, giúp tăng dung lượng bộ nhớ và giảm chi phí.
Ngoài yêu cầu làm mới, EMIF còn có các yêu cầu giao diện cụ thể, thường đòi hỏi phần cứng điều khiển chuyên dụng. Không giống như SRAM, vốn có một tập hợp các đường địa chỉ cố định, EMIF tổ chức không gian bộ nhớ thành các bank, hàng và cột. Việc chuyển đổi giữa các bank và hàng sẽ gây ra một số chi phí, vì vậy bạn phải sắp xếp thứ tự truy cập bộ nhớ cẩn thận để sử dụng EMIF hiệu quả. EMIF cũng ghép kênh địa chỉ hàng và cột trên cùng một đường địa chỉ, giúp giảm số lượng chân cần thiết cho một kích thước EMIF nhất định.
Các phiên bản EMIF tốc độ cao hơn, chẳng hạn như DDR, DDR2, DDR3, DDR4 và DDR5, áp dụng các yêu cầu nghiêm ngặt về tính toàn vẹn tín hiệu mà các nhà thiết kế PCB phải cân nhắc.
Thiết bị EMIF được xếp hạng là một trong những loại RAM hiệu quả về chi phí và dung lượng cao nhất hiện có, khiến chúng trở thành một lựa chọn phổ biến. Một thành phần quan trọng của giao diện EMIF là EMIF IP, quản lý các tác vụ liên quan đến ghép kênh địa chỉ, làm mới và chuyển đổi giữa các hàng và ngân hàng. Thiết kế này cho phép phần còn lại của hệ thống truy cập EMIF mà không cần phải hiểu kiến ​​trúc bên trong của nó.

Thông tin liên quan Giao diện bộ nhớ ngoài Trung tâm hỗ trợ IP

2.3.1.4.1. Bộ mở rộng khoảng địa chỉ IP
Bộ mở rộng khoảng địa chỉ FPGA Altera cho phép các giao diện máy chủ được ánh xạ bộ nhớ truy cập bản đồ địa chỉ lớn hơn hoặc nhỏ hơn độ rộng tín hiệu địa chỉ của chúng cho phép. Bộ mở rộng khoảng địa chỉ IP chia không gian địa chỉ thành nhiều cửa sổ riêng biệt để máy chủ có thể truy cập phần bộ nhớ thích hợp thông qua cửa sổ đó.
Address Span Extender không giới hạn độ rộng máy chủ và tác nhân ở cấu hình 32 bit và 64 bit. Bạn có thể sử dụng Address Span Extender với các cửa sổ địa chỉ từ 1-64 bit.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 29

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Hình 13. Bộ mở rộng khoảng địa chỉ Altera FPGA IP
Địa chỉ từ đại lý

Bộ mở rộng khoảng địa chỉ

A

Bảng lập bản đồ
Cổng điều khiển A

Thanh ghi điều khiển 0 Thanh ghi điều khiển Z-1

Địa chỉ máy chủ mở rộng H

Thông tin liên quan
Hướng dẫn sử dụng Quartus® Prime Pro Edition: Platform Designer Tham khảo chủ đề Address Span Extender Intel® FPGA IP để biết thêm thông tin.

2.3.1.4.2. Sử dụng Address Span Extender IP với Bộ xử lý Nios V
Bộ xử lý Nios V 32-bit có thể xử lý tối đa 4 GB dải địa chỉ. Nếu EMIF chứa hơn 4 GB bộ nhớ, nó sẽ vượt quá dải địa chỉ tối đa được hỗ trợ, khiến hệ thống Platform Designer bị lỗi. Cần có IP Address Span Extender để giải quyết vấn đề này bằng cách chia một không gian địa chỉ EMIF thành nhiều cửa sổ nhỏ hơn.
Altera khuyên bạn nên cân nhắc các thông số sau.

Bảng 21. Các tham số mở rộng khoảng địa chỉ

Tham số

Cài đặt được đề xuất

Chiều rộng đường dẫn dữ liệu
Chiều rộng địa chỉ Byte chính mở rộng

Chọn 32 bit, tương ứng với bộ xử lý 32 bit. Tùy thuộc vào dung lượng bộ nhớ EMIF.

Chiều rộng địa chỉ từ Slave Chiều rộng số lượng cụm

Chọn 2 GB hoặc ít hơn. Khoảng địa chỉ còn lại của bộ xử lý Nios V được dành riêng cho các IP mềm nhúng khác.
Bắt đầu với 1 và tăng dần giá trị này để cải thiện hiệu suất.

Số lượng cửa sổ phụ

Chọn 1 cửa sổ phụ nếu bạn đang kết nối EMIF với bộ xử lý Nios V làm bộ nhớ lệnh và dữ liệu, hoặc cả hai. Việc chuyển đổi giữa nhiều cửa sổ phụ trong khi bộ xử lý Nios V đang thực thi từ EMIF là rất nguy hiểm.

Kích hoạt cổng điều khiển Slave

Tắt cổng điều khiển phụ nếu bạn đang kết nối EMIF với bộ xử lý Nios V làm bộ nhớ lệnh và/hoặc dữ liệu. Tương tự như Số lượng cửa sổ phụ.

Số lần đọc đang chờ tối đa

Bắt đầu với 1 và tăng dần giá trị này để cải thiện hiệu suất.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 30

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và nhà thiết kế nền tảng 726952 | 2025.07.16/XNUMX/XNUMX
Hình 14. Kết nối Trình quản lý dữ liệu và hướng dẫn với Bộ mở rộng khoảng địa chỉ

Hình 15. Ánh xạ địa chỉ

Lưu ý rằng Address Span Extender có thể truy cập toàn bộ không gian bộ nhớ 8GB của EMIF. Tuy nhiên, thông qua Address Span Extender, bộ xử lý Nios V chỉ có thể truy cập không gian bộ nhớ 1GB đầu tiên của EMIF.

Hình 16. Sơ đồ khối đơn giản hóa

Hệ thống thiết kế nền tảng

Còn lại 3 GB

Địa chỉ bộ xử lý Nios V

span là dành cho nhúng

NNioios sVV PProrocecsesor r
M

IP mềm trong cùng một hệ thống.
Cửa sổ 1 GB

Khoảng địa chỉ

S

Bộ mở rộng

M

Chỉ 1 GB đầu tiên

của bộ nhớ EMIF được kết nối với Nios V

EMIF

bộ xử lý.

8GB
S

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 31

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16
2.3.1.4.3. Định nghĩa Thiết bị Bộ nhớ Liên kết Bộ Mở rộng Khoảng Địa chỉ 1. Định nghĩa Bộ Mở rộng Khoảng Địa chỉ (EMIF) làm vectơ reset. Ngoài ra, bạn có thể gán vectơ reset bộ xử lý Nios V cho các bộ nhớ khác, chẳng hạn như OCRAM hoặc thiết bị flash.
Hình 17. Nhiều tùy chọn làm vectơ đặt lại
Tuy nhiên, Trình soạn thảo Gói Hỗ trợ Bo mạch (BSP) không thể tự động đăng ký Bộ Mở rộng Khoảng Địa chỉ (EMIF) làm bộ nhớ hợp lệ. Tùy thuộc vào lựa chọn bạn đã thực hiện, bạn sẽ thấy hai tình huống khác nhau như minh họa trong các hình sau. Hình 18. Lỗi BSP khi Định nghĩa Bộ Mở rộng Khoảng Địa chỉ (EMIF) là Vector Đặt lại

Sổ tay thiết kế bộ xử lý nhúng Nios® V 32

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và nhà thiết kế nền tảng 726952 | 2025.07.16/XNUMX/XNUMX
Hình 19. Thiếu EMIF khi xác định các bộ nhớ khác là vectơ đặt lại

2. Bạn phải thêm Bộ mở rộng khoảng địa chỉ (EMIF) theo cách thủ công bằng cách sử dụng Thêm thiết bị bộ nhớ, Thêm vùng bộ nhớ liên kết và Thêm ánh xạ phần liên kết trong tab Tập lệnh liên kết BSP.
3. Thực hiện theo các bước sau:
a. Xác định khoảng địa chỉ của Bộ mở rộng khoảng địa chỉ bằng cách sử dụng Bản đồ bộ nhớ (Ví dụample trong hình sau sử dụng Address Span Extender có phạm vi từ 0x0 đến 0x3fff_ffff).
Hình 20. Bản đồ bộ nhớ

b. Nhấp vào Thêm Thiết bị Bộ nhớ và điền thông tin dựa trên Bản đồ Bộ nhớ của thiết kế: i. Tên Thiết bị: emif_ddr4. Lưu ý: Đảm bảo bạn sao chép cùng tên từ Bản đồ Bộ nhớ. ii. Địa chỉ Cơ sở: 0x0 iii. Kích thước: 0x40000000
c. Nhấp vào Thêm để thêm vùng bộ nhớ liên kết mới:

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 33

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Bảng 22. Thêm vùng bộ nhớ liên kết

Các bước

Đặt lại Vector

emif_ddr4

Những kỷ niệm khác

1

Thêm một Vùng Bộ nhớ Liên kết mới có tên là reset. Thêm một Vùng Bộ nhớ Liên kết mới cho

· Tên vùng: đặt lại

emif_ddr4.

· Kích thước vùng: 0x20

· Tên vùng: emif_ddr4

· Thiết bị bộ nhớ: emif_ddr4

· Kích thước vùng: 0x40000000

· Độ lệch bộ nhớ: 0x0

· Thiết bị bộ nhớ: emif_ddr4

· Độ lệch bộ nhớ: 0x0

2

Thêm một Vùng bộ nhớ liên kết mới cho

còn lại emif_ddr4.

· Tên vùng: emif_ddr4

· Kích thước vùng: 0x3fffffe0

· Thiết bị bộ nhớ: emif_ddr4

· Độ lệch bộ nhớ: 0x20

Hình 21. Vùng liên kết khi xác định Bộ mở rộng khoảng địa chỉ (EMIF) làm vectơ đặt lại

Hình 22. Vùng liên kết khi xác định các bộ nhớ khác dưới dạng vectơ đặt lại
d. Sau khi emif_ddr4 được thêm vào BSP, bạn có thể chọn nó cho bất kỳ Phần liên kết nào.
Hình 23. Đã thêm Bộ mở rộng khoảng địa chỉ (EMIF) thành công

e. Bỏ qua cảnh báo về Thiết bị bộ nhớ emif_ddr4 không hiển thị trong thiết kế SOPC.
f. Tiến hành tạo BSP.
Thông tin liên quan Giới thiệu về Phương pháp khởi động bộ xử lý Nios V trên trang 51

Sổ tay thiết kế bộ xử lý nhúng Nios® V 34

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và nhà thiết kế nền tảng 726952 | 2025.07.16/XNUMX/XNUMX
2.3.2. Bộ nhớ không bay hơi
Bộ nhớ không bay hơi vẫn giữ nguyên nội dung khi tắt nguồn, khiến nó trở thành lựa chọn tốt để lưu trữ thông tin mà hệ thống phải truy xuất sau mỗi chu kỳ bật nguồn. Bộ nhớ không bay hơi thường lưu trữ mã khởi động bộ xử lý, cài đặt ứng dụng cố định và dữ liệu cấu hình FPGA của Altera. Mặc dù bộ nhớ không bay hơi có ưu điểmtagDo dữ liệu vẫn được lưu giữ khi mất điện, bộ nhớ này chậm hơn nhiều so với bộ nhớ dễ bay hơi và thường có quy trình ghi và xóa phức tạp hơn. Bộ nhớ không dễ bay hơi cũng thường chỉ được đảm bảo xóa được một số lần nhất định, sau đó có thể bị lỗi.
ExampBộ nhớ không bay hơi bao gồm tất cả các loại flash, EPROM và EEPROM. Altera khuyến nghị bạn nên lưu trữ luồng bit FPGA của Altera và hình ảnh chương trình Nios V trong bộ nhớ không bay hơi, và sử dụng flash tuần tự làm thiết bị khởi động cho bộ xử lý Nios V.
Thông tin liên quan
· Giao diện Flash nối tiếp chung Hướng dẫn sử dụng IP FPGA Altera
· Hướng dẫn sử dụng Mailbox Client Altera FPGA IP · Hướng dẫn sử dụng bộ nhớ Flash MAX® 10: Lõi IP FPGA Altera Flash trên chip
2.4. Thực hành tốt nhất về Đồng hồ và Đặt lại
Việc hiểu cách miền xung nhịp và miền reset của bộ xử lý Nios V tương tác với mọi thiết bị ngoại vi mà nó kết nối là rất quan trọng. Một hệ thống bộ xử lý Nios V đơn giản bắt đầu với một miền xung nhịp duy nhất, và nó có thể trở nên phức tạp với hệ thống miền đa xung nhịp khi một miền xung nhịp nhanh xung đột với một miền xung nhịp chậm. Bạn cần lưu ý và hiểu cách các miền khác nhau này tuần tự khởi động lại và đảm bảo không có bất kỳ vấn đề tinh vi nào.
Để thực hành tốt nhất, Altera khuyến nghị đặt bộ xử lý Nios V và bộ nhớ khởi động trong cùng một miền xung nhịp. Không giải phóng bộ xử lý Nios V khỏi trạng thái đặt lại trong miền xung nhịp nhanh khi nó khởi động từ bộ nhớ nằm trong miền xung nhịp rất chậm, điều này có thể gây ra lỗi tìm nạp lệnh. Bạn có thể cần một số trình tự thủ công ngoài những gì Platform Designer cung cấp theo mặc định, và hãy lập kế hoạch cấu trúc giải phóng khởi động lại cho phù hợp dựa trên trường hợp sử dụng của bạn. Nếu bạn muốn đặt lại hệ thống sau khi khởi động và chạy được một thời gian, hãy áp dụng các cân nhắc tương tự cho trình tự đặt lại hệ thống và yêu cầu khởi tạo sau khi đặt lại.
2.4.1. Hệ thống JTAG Cái đồng hồ
Việc xác định các ràng buộc xung nhịp trong mỗi hệ thống bộ xử lý Nios V là một cân nhắc quan trọng trong thiết kế hệ thống và là cần thiết để đảm bảo tính chính xác và hành vi xác định. Quartus Prime Timing Analyzer thực hiện phân tích thời gian tĩnh để xác thực hiệu suất thời gian của tất cả logic trong thiết kế của bạn bằng phương pháp ràng buộc, phân tích và báo cáo theo tiêu chuẩn công nghiệp.
Example 1. Đồng hồ cơ bản 100 MHz với chu kỳ hoạt động 50/50 và 16 MHz JTAG Cái đồng hồ
#****************************************************************** # Tạo Đồng hồ 100MHz #*************************************************************** create_clock -name {clk} -period 10 [get_ports {clk}] #************************ Tạo J 16MHzTAG Cái đồng hồ #************************

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 35

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
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}] Thông tin liên quan Sách hướng dẫn phân tích thời gian Quartus Prime
2.4.2. Giao diện yêu cầu đặt lại
Bộ xử lý Nios V bao gồm một tiện ích yêu cầu reset tùy chọn. Tiện ích yêu cầu reset bao gồm các tín hiệu reset_req và reset_req_ack.
Để bật yêu cầu đặt lại trong Platform Designer: 1. Khởi chạy Trình chỉnh sửa tham số IP của bộ xử lý Nios V. 2. Trong cài đặt Sử dụng yêu cầu đặt lại, hãy bật Giao diện yêu cầu đặt lại.
lựa chọn.
Hình 24. Bật yêu cầu đặt lại bộ xử lý Nios V
Tín hiệu reset_req hoạt động như một lệnh ngắt. Khi bạn xác nhận lệnh reset_req, bạn đang yêu cầu thiết lập lại lõi. Lõi chờ bất kỳ giao dịch bus nào đang chờ hoàn tất hoạt động của nó. Ví dụ:ampNếu có giao dịch truy cập bộ nhớ đang chờ xử lý, lõi sẽ chờ phản hồi đầy đủ. Tương tự, lõi chấp nhận bất kỳ phản hồi lệnh nào đang chờ xử lý nhưng không đưa ra yêu cầu lệnh sau khi nhận được tín hiệu reset_req.
Thao tác reset bao gồm các bước sau: 1. Hoàn tất tất cả các thao tác đang chờ xử lý 2. Xả luồng dữ liệu nội bộ 3. Đặt Bộ đếm Chương trình về vector reset 4. Reset lõi. Toàn bộ thao tác reset mất vài chu kỳ xung nhịp. Reset_req phải được xác nhận cho đến khi reset_req_ack được xác nhận, cho biết thao tác reset lõi đã hoàn tất thành công. Nếu không, trạng thái của lõi sẽ không xác định.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 36

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và nhà thiết kế nền tảng 726952 | 2025.07.16/XNUMX/XNUMX
2.4.2.1. Các trường hợp sử dụng điển hình
· Bạn có thể xác nhận tín hiệu reset_req từ khi bật nguồn để ngăn lõi bộ xử lý Nios V bắt đầu thực thi chương trình từ vector reset của nó cho đến khi các máy chủ FPGA khác trong hệ thống khởi tạo bộ nhớ khởi động bộ xử lý Nios V. Trong trường hợp này, toàn bộ hệ thống con có thể trải nghiệm việc khởi tạo lại phần cứng sạch. Bộ xử lý Nios V được giữ vô thời hạn ở trạng thái yêu cầu reset cho đến khi các máy chủ FPGA khác khởi tạo bộ nhớ khởi động bộ xử lý.
· Trong hệ thống mà bạn phải thiết lập lại lõi bộ xử lý Nios V mà không làm gián đoạn phần còn lại của hệ thống, bạn có thể xác nhận tín hiệu reset_req để dừng hoàn toàn hoạt động hiện tại của lõi và khởi động lại bộ xử lý từ vectơ thiết lập lại sau khi hệ thống giải phóng tín hiệu reset_req_ack.
· Máy chủ bên ngoài có thể sử dụng giao diện yêu cầu đặt lại để dễ dàng thực hiện các tác vụ sau:
— Dừng chương trình xử lý Nios V hiện tại.
— Tải chương trình mới vào bộ nhớ khởi động của bộ xử lý Nios V.
— Cho phép bộ xử lý bắt đầu thực thi chương trình mới.
Altera khuyến nghị bạn nên triển khai cơ chế timeout để theo dõi trạng thái của tín hiệu reset_req_ack. Nếu lõi bộ xử lý Nios V rơi vào trạng thái chờ vô hạn và bị dừng lại vì lý do chưa xác định, reset_req_ack không thể xác nhận vô thời hạn. Cơ chế timeout cho phép bạn:
· Xác định thời gian chờ phục hồi và thực hiện phục hồi hệ thống bằng cách thiết lập lại cấp hệ thống.
· Thực hiện thiết lập lại mức phần cứng.
2.4.3. Đặt lại bản phát hành IP
Các thiết bị dựa trên SDM của Altera sử dụng kiến ​​trúc song song, phân bổ logic nền tảng lõi trên nhiều sector. Altera khuyến nghị bạn sử dụng IP FPGA Altera Reset Release làm một trong những đầu vào ban đầu cho mạch reset. Các thiết bị dựa trên SDM của Intel® bao gồm các thiết bị Stratix® 10 và Agilex™. Các thiết bị dựa trên khối điều khiển không bị ảnh hưởng bởi yêu cầu này.
Thông tin liên quan
AN 891: Sử dụng IP FPGA Altera để phát hành lại
2.5. Chỉ định một đại lý mặc định
Platform Designer cho phép bạn chỉ định một tác nhân mặc định đóng vai trò là tác nhân mặc định phản hồi lỗi. Tác nhân mặc định bạn chỉ định sẽ cung cấp dịch vụ phản hồi lỗi cho các máy chủ cố gắng truy cập không được giải mã vào bản đồ địa chỉ.
Các tình huống sau đây kích hoạt sự kiện không được giải mã:
· Vi phạm trạng thái bảo mật giao dịch xe buýt
· Truy cập giao dịch vào vùng bộ nhớ không xác định
· Sự kiện ngoại lệ, v.v.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 37

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Nên chỉ định một tác nhân mặc định để xử lý các sự kiện như vậy, trong đó giao dịch chưa xác định được chuyển hướng đến tác nhân mặc định và sau đó phản hồi bộ xử lý Nios V bằng phản hồi lỗi.
Thông tin liên quan
· Hướng dẫn sử dụng Quartus Prime Pro Edition: Trình thiết kế nền tảng. Chỉ định tác nhân mặc định
· Hướng dẫn sử dụng Quartus Prime Pro Edition: Thiết kế nền tảng. Phản hồi lỗi FPGA Altera Slave
· Github – Các thành phần thiết lập lại bổ sung cho Qsys

2.6. Chỉ định tác nhân UART để in
Việc in ấn rất hữu ích cho việc gỡ lỗi ứng dụng phần mềm, cũng như theo dõi trạng thái hệ thống. Altera khuyến nghị in các thông tin cơ bản như thông báo khởi động, thông báo lỗi và tiến trình thực thi của ứng dụng phần mềm.
Tránh sử dụng hàm thư viện printf() trong các trường hợp sau: · Thư viện printf() khiến ứng dụng bị dừng nếu không có máy chủ nào đọc đầu ra.
Điều này áp dụng cho JTAG Chỉ dành cho UART. · Thư viện printf() sử dụng nhiều bộ nhớ chương trình.

2.6.1. Ngăn ngừa tình trạng chết máy bằng JTAG UART

Bảng 23. Sự khác biệt giữa UART truyền thống và JTAG UART

Loại UART UART truyền thống

Sự miêu tả
Truyền dữ liệu nối tiếp bất kể máy chủ bên ngoài có đang lắng nghe hay không. Nếu không có máy chủ nào đọc dữ liệu nối tiếp, dữ liệu sẽ bị mất.

JTAG UART

Ghi dữ liệu được truyền vào bộ đệm đầu ra và dựa vào máy chủ bên ngoài để đọc từ bộ đệm để làm trống bộ đệm.

Chữ JTAG Trình điều khiển UART chờ khi bộ đệm đầu ra đầy. JTAG Trình điều khiển UART chờ máy chủ bên ngoài đọc từ bộ đệm đầu ra trước khi ghi thêm dữ liệu truyền. Quá trình này ngăn ngừa mất dữ liệu truyền.
Tuy nhiên, khi không cần gỡ lỗi hệ thống, chẳng hạn như trong quá trình sản xuất, các hệ thống nhúng được triển khai mà không cần máy tính chủ được kết nối với JTAG UART. Nếu hệ thống đã chọn JTAG UART là tác nhân UART, nó có thể khiến hệ thống bị đình trệ vì không có máy chủ bên ngoài nào được kết nối.
Để ngăn chặn sự đình trệ của JTAG UART, áp dụng một trong các tùy chọn sau:

Sổ tay thiết kế bộ xử lý nhúng Nios® V 38

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16

Bảng 24. Phòng ngừa chết máy bằng JTAG UART

Tùy chọn
Không có giao diện UART và trình điều khiển nào hiện có
Sử dụng giao diện UART và trình điều khiển khác
Bảo tồn JTAG Giao diện UART (không có trình điều khiển)

Trong quá trình phát triển phần cứng (trong Platform Designer)

Trong quá trình phát triển phần mềm (trong Trình chỉnh sửa gói hỗ trợ bảng)

Xóa JTAG UART từ hệ thống

Cấu hình hal.stdin, hal.stdout và hal.stderr thành None.

Thay thế JTAG UART với các phần mềm khác Cấu hình hal.stdin, hal.stdout và hal.stderr

Giao thức UART

với IP UART mềm khác.

Bảo tồn JTAG UART trong hệ thống

· Cấu hình hal.stdin, hal.stdout và hal.stderr thành None trong Trình chỉnh sửa gói hỗ trợ bo mạch.
· Vô hiệu hóa JTAG Trình điều khiển UART trong tab Trình điều khiển BSP.

2.7.JTAG Tín hiệu
Mô-đun gỡ lỗi bộ xử lý Nios V sử dụng JTAG Giao diện tải xuống phần mềm ELF và gỡ lỗi phần mềm. Khi bạn gỡ lỗi thiết kế của mình bằng JTAG giao diện, JTAG Các tín hiệu TCK, TMS, TDI và TDO được triển khai như một phần của thiết kế. Chỉ định JTAG các ràng buộc tín hiệu trong mọi hệ thống bộ xử lý Nios V là một cân nhắc quan trọng trong thiết kế hệ thống và là cần thiết để đảm bảo tính chính xác và hành vi xác định.
Altera khuyến nghị rằng tần số xung nhịp hệ thống của bất kỳ thiết kế nào cũng phải ít nhất gấp bốn lần JTAG tần số xung nhịp để đảm bảo lõi đo lường trên chip (OCI) hoạt động bình thường.
Thông tin liên quan · Sách hướng dẫn sử dụng máy phân tích thời gian chính Quartus®: JTAG Tín hiệu
Để biết thêm thông tin về JTAG hướng dẫn về ràng buộc thời gian. · KDB: Tại sao niosv-download lại không thành công với bộ xử lý Nios® V/m không có đường ống tại
JTAG tần số 24MHz hay 16MHz?
2.8. Tối ưu hóa hiệu suất hệ thống thiết kế nền tảng
Platform Designer cung cấp các công cụ để tối ưu hóa hiệu suất kết nối hệ thống cho các thiết kế FPGA của Altera.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 39

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và công cụ thiết kế nền tảng
726952 | 2025.07.16
Hình 25. Tối ưu hóa Examptập

Người cũampHình minh họa cho các bước sau:
1. Thêm Pipeline Bridge để giảm thiểu các đường dẫn quan trọng bằng cách đặt nó: a. Giữa Instruction Manager và các tác nhân của nó b. Giữa Data Manager và các tác nhân của nó
2. Áp dụng RAM trên chip cổng kép thực sự, với mỗi cổng được dành riêng cho Trình quản lý lệnh và Trình quản lý dữ liệu tương ứng

Sổ tay thiết kế bộ xử lý nhúng Nios® V 40

Gửi phản hồi

2. Thiết kế hệ thống phần cứng bộ xử lý Nios V với phần mềm Quartus Prime và nhà thiết kế nền tảng 726952 | 2025.07.16/XNUMX/XNUMX
Tham khảo các liên kết liên quan bên dưới để biết các kỹ thuật tận dụng các công cụ có sẵn và những đánh đổi của từng cách triển khai.
Thông tin liên quan · Hướng dẫn sử dụng Quartus® Prime Pro Edition: Trình thiết kế nền tảng
Tham khảo chủ đề Tối ưu hóa hiệu suất hệ thống của Platform Designer để biết thêm thông tin. · Hướng dẫn sử dụng Quartus® Prime Standard Edition: Platform Designer Tham khảo chủ đề Tối ưu hóa hiệu suất hệ thống của Platform Designer để biết thêm thông tin.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 41

726952 | 2025.07.16 Gửi phản hồi

3. Thiết kế hệ thống phần mềm bộ xử lý Nios V
Chương này mô tả quy trình phát triển phần mềm bộ xử lý Nios V và các công cụ phần mềm mà bạn có thể sử dụng để phát triển hệ thống thiết kế nhúng của mình. Nội dung đóng vai trò như một phần mở rộng.view trước khi phát triển hệ thống phần mềm xử lý Nios V.
Hình 26. Luồng thiết kế phần mềm
Bắt đầu

Tạo BSP trong Trình thiết kế nền tảng bằng Trình chỉnh sửa BSP

Tạo BSP bằng cách sử dụng Nios V Command Shell
Tạo ứng dụng CMake Build File Sử dụng Nios V Command Shell

Ghi chú:

Nhập BSP và Ứng dụng CMake Build File
Xây dựng ứng dụng bộ xử lý Nios V bằng cách sử dụng
IDE RiscFree dành cho Intel FPGA

Xây dựng ứng dụng Bộ xử lý Nios V bằng bất kỳ
trình soạn thảo mã nguồn dòng lệnh, CMake và Make
lệnh
Kết thúc

Altera khuyến nghị bạn nên sử dụng bộ phát triển FPGA của Altera hoặc bo mạch nguyên mẫu tùy chỉnh để phát triển và gỡ lỗi phần mềm. Nhiều thiết bị ngoại vi và tính năng cấp hệ thống chỉ khả dụng khi phần mềm của bạn chạy trên một bo mạch thực tế.

© Tập đoàn Altera. Altera, logo Altera, logo `a' và các nhãn hiệu Altera khác là thương hiệu của Tập đoàn Altera. Altera bảo lưu quyền thay đổi bất kỳ sản phẩm và dịch vụ nào bất cứ lúc nào mà không cần thông báo trước. Altera không chịu bất kỳ trách nhiệm hoặc nghĩa vụ pháp lý nào phát sinh từ việc áp dụng hoặc sử dụng bất kỳ thông tin, sản phẩm hoặc dịch vụ nào được mô tả ở đây, trừ khi có sự đồng ý rõ ràng bằng văn bản của Altera. Khách hàng của Altera được khuyến nghị nên tìm hiểu phiên bản mới nhất của thông số kỹ thuật thiết bị trước khi dựa vào bất kỳ thông tin nào đã công bố và trước khi đặt hàng sản phẩm hoặc dịch vụ. *Các tên và thương hiệu khác có thể được coi là tài sản của người khác.

3. Thiết kế hệ thống phần mềm bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX
3.1. Luồng phát triển phần mềm bộ xử lý Nios V
3.1.1. Dự án Gói hỗ trợ Hội đồng quản trị
Dự án Gói Hỗ trợ Bo mạch Nios V (BSP) là một thư viện chuyên biệt chứa mã hỗ trợ dành riêng cho hệ thống. BSP cung cấp môi trường chạy phần mềm được tùy chỉnh cho một bộ xử lý trong hệ thống phần cứng bộ xử lý Nios V.
Phần mềm Quartus Prime cung cấp Nios V Board Support Package Editor và các công cụ tiện ích niosv-bsp để sửa đổi các thiết lập kiểm soát hành vi của BSP.
BSP chứa các thành phần sau: · Lớp trừu tượng phần cứng · Trình điều khiển thiết bị · Gói phần mềm tùy chọn · Hệ điều hành thời gian thực tùy chọn
3.1.2. Dự án ứng dụng
Một dự án ứng dụng Nios VC/C++ có các tính năng sau: · Bao gồm một bộ sưu tập mã nguồn và một tệp CMakeLists.txt.
— CMakeLists.txt biên dịch mã nguồn và liên kết nó với BSP và một hoặc nhiều thư viện tùy chọn để tạo ra một .elf file
· Một trong những nguồn files chứa hàm main(). · Bao gồm mã gọi các hàm trong thư viện và BSP.
Altera cung cấp công cụ tiện ích niosv-app trong các công cụ tiện ích phần mềm Quartus Prime để tạo Ứng dụng CMakeLists.txt và RiscFree IDE cho FPGA Altera để sửa đổi mã nguồn trong môi trường dựa trên Eclipse.
3.2. Công cụ phát triển nhúng FPGA của Altera
Bộ xử lý Nios V hỗ trợ các công cụ sau để phát triển phần mềm: · Giao diện người dùng đồ họa (GUI) – Các công cụ phát triển đồ họa có sẵn trong
cả Hệ điều hành (HĐH) Windows* và Linux*. — Trình soạn thảo Gói Hỗ trợ Bo mạch Nios V (Trình soạn thảo Nios V BSP) — Ashling RiscFree IDE cho FPGA Altera · Công cụ Dòng lệnh (CLI) – Các công cụ phát triển được khởi tạo từ Nios V Command Shell. Mỗi công cụ đều có tài liệu hướng dẫn riêng dưới dạng trợ giúp có thể truy cập từ dòng lệnh. Mở Nios V Command Shell và nhập lệnh sau: –giúp đỡ view menu Trợ giúp. — Công cụ Tiện ích Nios V — File Công cụ chuyển đổi định dạng — Các công cụ tiện ích khác

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 43

3. Thiết kế hệ thống phần mềm bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Bảng 25. Tóm tắt nhiệm vụ của công cụ GUI và công cụ dòng lệnh

Nhiệm vụ

Công cụ GUI

Công cụ dòng lệnh

Tạo BSP

Trình soạn thảo Nios V BSP

· Trong phần mềm Quartus Prime Pro Edition: niosv-bsp -c -s=<.qsys file> -t= [TÙY CHỌN] cài đặt.bsp
· Trong phần mềm Quartus Prime Standard Edition: niosv-bsp -c -s=<.sopcinfo file> -t= [TÙY CHỌN] cài đặt.bsp

Tạo BSP bằng cách sử dụng .bsp hiện có file
Cập nhật BSP

Trình soạn thảo Nios V BSP Trình soạn thảo Nios V BSP

niosv-bsp -g [TÙY CHỌN] settings.bsp niosv-bsp -u [TÙY CHỌN] settings.bsp

Kiểm tra BSP

Trình soạn thảo Nios V BSP

niosv-bsp -q -E= [TÙY CHỌN] cài đặt.bsp

Tạo ứng dụng

ứng dụng niosv -a= -b= -s= filethư mục s> [TÙY CHỌN]

Tạo thư viện người dùng

ứng dụng niosv -l= -s= filethư mục s> -p= [TÙY CHỌN]

Sửa đổi ứng dụng Sửa đổi thư viện người dùng Xây dựng ứng dụng

IDE RiscFree dành cho FPGA của Altera
IDE RiscFree dành cho FPGA của Altera
IDE RiscFree dành cho FPGA của Altera

Bất kỳ trình soạn thảo nguồn dòng lệnh nào
Bất kỳ trình soạn thảo nguồn dòng lệnh nào
· làm · làm

Xây dựng thư viện người dùng

IDE RiscFree dành cho FPGA của Altera

· làm · làm

Tải xuống ứng dụng ELF
Chuyển đổi .elf file

IDE RiscFree dành cho FPGA của Altera

niosv-tải xuống
· elf2flash · elf2hex

Thông tin liên quan
Hướng dẫn sử dụng Môi trường phát triển tích hợp (IDE) Ashling RiscFree cho FPGA của Altera

3.2.1. Trình chỉnh sửa gói hỗ trợ bo mạch xử lý Nios V
Bạn có thể sử dụng Trình soạn thảo BSP của bộ xử lý Nios V để thực hiện các tác vụ sau: · Tạo hoặc sửa đổi dự án BSP của bộ xử lý Nios V · Chỉnh sửa cài đặt, vùng liên kết và ánh xạ phần · Chọn gói phần mềm và trình điều khiển thiết bị.
Khả năng của BSP Editor bao gồm khả năng của tiện ích niosv-bsp. Bất kỳ dự án nào được tạo trong BSP Editor cũng có thể được tạo bằng các tiện ích dòng lệnh.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 44

Gửi phản hồi

3. Thiết kế hệ thống phần mềm bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Ghi chú:

Đối với phần mềm Quartus Prime Standard Edition, hãy tham khảo AN 980: Hỗ trợ phần mềm Quartus Prime cho bộ xử lý Nios V để biết các bước gọi Giao diện người dùng đồ họa (GUI) của Trình chỉnh sửa BSP.

Để khởi chạy Trình soạn thảo BSP, hãy làm theo các bước sau: 1. Mở Trình thiết kế nền tảng và điều hướng đến File thực đơn.
a. Để mở một thiết lập BSP hiện có file, nhấp vào Mở… b. Để tạo BSP mới, nhấp vào BSP mới… 2. Chọn tab Trình chỉnh sửa BSP và cung cấp thông tin chi tiết phù hợp.

Hình 27. Khởi chạy Trình soạn thảo BSP

Thông tin liên quan AN 980: Bộ xử lý Nios V Hỗ trợ phần mềm Quartus Prime
3.2.2. IDE RiscFree dành cho FPGA của Altera
IDE RiscFree cho FPGA của Altera là một IDE dựa trên Eclipse dành cho bộ xử lý Nios V. Altera khuyến nghị bạn nên phát triển phần mềm bộ xử lý Nios V trong IDE này vì những lý do sau: · Các tính năng được phát triển và xác minh là tương thích với Nios V.
quy trình xây dựng bộ xử lý. · Được trang bị tất cả các chuỗi công cụ cần thiết và các công cụ hỗ trợ cho phép bạn
để dễ dàng bắt đầu phát triển bộ xử lý Nios V.
Thông tin liên quan Ashling RiscFree Integrated Development Environment (IDE) dành cho Altera FPGAs Hướng dẫn sử dụng
3.2.3. Công cụ tiện ích Nios V
Bạn có thể tạo, chỉnh sửa và xây dựng các chương trình Nios V bằng các lệnh được nhập trên dòng lệnh hoặc được nhúng trong tập lệnh. Các công cụ dòng lệnh Nios V được mô tả trong phần này nằm trong Thư mục /niosv/bin.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 45

3. Thiết kế hệ thống phần mềm bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Bảng 26. Công cụ tiện ích Nios V

Công cụ dòng lệnh

Bản tóm tắt

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

Để tạo và cấu hình một dự án ứng dụng.
Để tạo hoặc cập nhật cài đặt BSP file và tạo BSP files. Để tải xuống ELF file đến bộ xử lý Nios® V.
Để mở Nios V Command Shell. Để thông báo cho bạn về không gian bộ nhớ còn lại có sẵn cho ứng dụng của bạn .elf để sử dụng ngăn xếp hoặc đống.

3.2.4. File Công cụ chuyển đổi định dạng

File đôi khi cần phải chuyển đổi định dạng khi truyền dữ liệu từ tiện ích này sang tiện ích khác. file các công cụ chuyển đổi định dạng đang ở trong
thư mục cài đặt phần mềm>/niosv/bin.

Bảng 27. File Công cụ chuyển đổi định dạng

Công cụ dòng lệnh elf2flash elf2hex

Tóm tắt Để dịch .elf file sang định dạng .srec để lập trình bộ nhớ flash. Để dịch .elf file sang định dạng .hex để khởi tạo bộ nhớ.

3.2.5. Các công cụ tiện ích khác

Bạn có thể cần các công cụ dòng lệnh sau khi xây dựng hệ thống dựa trên bộ xử lý Nios V. Các công cụ dòng lệnh này được Intel cung cấp trong /quartus/bin hoặc được lấy từ
công cụ nguồn mở.

Bảng 28. Các công cụ dòng lệnh khác

Công cụ dòng lệnh

Kiểu

Bản tóm tắt

juart-terminal

do Intel cung cấp

Để theo dõi stdout và stderr, và cung cấp đầu vào cho bộ xử lý Nios® V
hệ thống con thông qua stdin. Công cụ này chỉ áp dụng cho JTAG UART IP khi được kết nối với bộ xử lý Nios® V.

openocd

Được Intel cung cấp để thực thi OpenOCD.

openocd-cfg-gen

Được Intel cung cấp · Để tạo cấu hình OpenOCD file. · Để hiển thị JTAG chỉ số thiết bị chuỗi.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 46

Gửi phản hồi

726952 | 2025.07.16 Gửi phản hồi
4. Giải pháp khởi động và cấu hình bộ xử lý Nios V
Bạn có thể cấu hình bộ xử lý Nios V để khởi động và thực thi phần mềm từ nhiều vị trí bộ nhớ khác nhau. Bộ nhớ khởi động là bộ nhớ flash Quad Serial Peripheral Interface (QSPI), bộ nhớ On-Chip (OCRAM) hoặc bộ nhớ Tightly Coupled Memory (TCM).
Thông tin liên quan · Điều kiện kích hoạt Power-Up trên trang 193 · Kích hoạt Power-Up
Để biết thêm thông tin về các yếu tố kích hoạt sức mạnh.
4.1. Giới thiệu
Bộ xử lý Nios V hỗ trợ hai loại quy trình khởi động: · Thực thi tại chỗ (XIP) sử dụng hàm alt_load() · Chương trình được sao chép vào RAM bằng bộ sao chép khởi động. Việc phát triển chương trình nhúng Nios V dựa trên lớp trừu tượng phần cứng (HAL). HAL cung cấp một chương trình nạp khởi động nhỏ (còn được gọi là bộ sao chép khởi động) sao chép các phần liên kết liên quan từ bộ nhớ khởi động đến vị trí thời gian chạy của chúng khi khởi động. Bạn có thể chỉ định vị trí thời gian chạy của bộ nhớ chương trình và dữ liệu bằng cách thao tác các thiết lập của Trình soạn thảo Gói Hỗ trợ Bo mạch (BSP). Phần này mô tả: · Bộ sao chép khởi động bộ xử lý Nios V khởi động hệ thống bộ xử lý Nios V của bạn theo
lựa chọn bộ nhớ khởi động · Các tùy chọn khởi động bộ xử lý Nios V và luồng chung · Các giải pháp lập trình Nios V cho bộ nhớ khởi động đã chọn
4.2. Liên kết ứng dụng
Khi bạn tạo dự án bộ xử lý Nios V, Trình soạn thảo BSP sẽ tạo ra hai liên kết liên quan files: · linker.x: Lệnh liên kết file rằng ứng dụng được tạo rafile sử dụng
để tạo nhị phân .elf file. · linker.h: Chứa thông tin về bố cục bộ nhớ của trình liên kết. Mọi thay đổi cài đặt trình liên kết bạn thực hiện đối với dự án BSP đều ảnh hưởng đến nội dung của hai trình liên kết này. files. Mỗi ứng dụng bộ xử lý Nios V đều chứa các phần liên kết sau:
© Tập đoàn Altera. Altera, logo Altera, logo `a' và các nhãn hiệu Altera khác là thương hiệu của Tập đoàn Altera. Altera bảo lưu quyền thay đổi bất kỳ sản phẩm và dịch vụ nào bất cứ lúc nào mà không cần thông báo trước. Altera không chịu bất kỳ trách nhiệm hoặc nghĩa vụ pháp lý nào phát sinh từ việc áp dụng hoặc sử dụng bất kỳ thông tin, sản phẩm hoặc dịch vụ nào được mô tả ở đây, trừ khi có sự đồng ý rõ ràng bằng văn bản của Altera. Khách hàng của Altera được khuyến nghị nên tìm hiểu phiên bản mới nhất của thông số kỹ thuật thiết bị trước khi dựa vào bất kỳ thông tin nào đã công bố và trước khi đặt hàng sản phẩm hoặc dịch vụ. *Các tên và thương hiệu khác có thể được coi là tài sản của người khác.

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Bảng 29. Các phần liên kết

.chữ

Các phần liên kết

.rodata

.rwdata

.bss

.đống

.stack

Mô tả Mã thực thi. Bất kỳ dữ liệu chỉ đọc nào được sử dụng trong quá trình thực thi chương trình. Lưu trữ dữ liệu đọc-ghi được sử dụng trong quá trình thực thi chương trình. Chứa dữ liệu tĩnh chưa được khởi tạo. Chứa bộ nhớ được cấp phát động. Lưu trữ các tham số gọi hàm và dữ liệu tạm thời khác.

Bạn có thể thêm các phần liên kết bổ sung vào .elf file để lưu trữ mã và dữ liệu tùy chỉnh. Các phần liên kết này được đặt trong các vùng bộ nhớ được đặt tên, được xác định để tương ứng với các thiết bị bộ nhớ vật lý và địa chỉ. Theo mặc định, BSP Editor sẽ tự động tạo các phần liên kết này. Tuy nhiên, bạn có thể kiểm soát các phần liên kết cho một ứng dụng cụ thể.

4.2.1. Hành vi liên kết
Phần này mô tả hành vi liên kết mặc định của BSP Editor và cách kiểm soát hành vi liên kết.

4.2.1.1. Liên kết BSP mặc định
Trong quá trình cấu hình BSP, các công cụ sẽ tự động thực hiện các bước sau:
1. Gán tên vùng bộ nhớ: Gán tên cho từng thiết bị bộ nhớ hệ thống và thêm từng tên vào trình liên kết file như một vùng nhớ.
2. Tìm bộ nhớ lớn nhất: Xác định vùng bộ nhớ đọc và ghi lớn nhất trong trình liên kết file.
3. Gán các phần liên kết: Đặt các phần liên kết mặc định (.text, .rodata, .rwdata, .bss, .heap và .stack) vào vùng bộ nhớ được xác định ở bước trước.
4. Viết files: Viết linker.x và linker.h files.
Thông thường, sơ đồ phân bổ phần liên kết hoạt động trong quá trình phát triển phần mềm vì ứng dụng được đảm bảo hoạt động nếu bộ nhớ đủ lớn.
Các quy tắc cho hành vi liên kết mặc định được chứa trong các tập lệnh Tcl do Altera tạo ra bsp-set-defaults.tcl và bsp-linker-utils.tcl được tìm thấy trong Thư mục /niosv/scripts/bsp-defaults. Lệnh niosv-bsp sẽ gọi các tập lệnh này. Không sửa đổi trực tiếp các tập lệnh này.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 48

Gửi phản hồi

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

4.2.1.2. Liên kết BSP có thể cấu hình
Bạn có thể quản lý hành vi liên kết mặc định trong tab Tập lệnh Liên kết của Trình soạn thảo BSP. Thao tác tập lệnh liên kết bằng các phương pháp sau: · Thêm vùng bộ nhớ: Ánh xạ tên vùng bộ nhớ vào thiết bị bộ nhớ vật lý. · Thêm ánh xạ phần: Ánh xạ tên phần vào vùng bộ nhớ. BSP
Trình biên tập cho phép bạn view bản đồ bộ nhớ trước và sau khi thực hiện thay đổi.

4.3. Phương pháp khởi động bộ xử lý Nios V

Có một số phương pháp để khởi động bộ xử lý Nios V trong các thiết bị FPGA của Altera. Phương pháp khởi động bộ xử lý Nios V khác nhau tùy thuộc vào lựa chọn bộ nhớ flash và họ thiết bị.

Bảng 30. Bộ nhớ Flash được hỗ trợ với các tùy chọn khởi động tương ứng

Bộ nhớ khởi động được hỗ trợ

Thiết bị

On-Chip Flash (cho cấu hình bên trong)

Chỉ tối đa 10 thiết bị (với On-Chip Flash IP)

Bộ nhớ Flash QSPI mục đích chung (chỉ dành cho dữ liệu người dùng)

Tất cả các thiết bị FPGA được hỗ trợ (với Giao diện Flash nối tiếp chung FPGA IP)

Cấu hình QSPI Flash (cho cấu hình Active Serial)

Kiểm soát dựa trên khối
thiết bị (với Generic
Giao diện Flash nối tiếp Intel FPGA IP)(2)

Phương pháp khởi động bộ xử lý Nios V

Vị trí thời gian chạy ứng dụng

khởi động máy photocopy

Ứng dụng bộ xử lý Nios V được thực thi tại chỗ từ On-Chip Flash

On-Chip Flash (XIP) + OCRAM/ RAM ngoài (cho các phần dữ liệu có thể ghi)

hàm alt_load()

Ứng dụng bộ xử lý Nios V được sao chép từ On-Chip Flash sang RAM bằng cách sử dụng máy sao chép khởi động

OCRAM/RAM ngoài

Tái sử dụng Bootloader thông qua GSFI

Ứng dụng bộ xử lý Nios V được thực thi tại chỗ từ bộ nhớ flash QSPI mục đích chung

Bộ nhớ flash QSPI mục đích chung (XIP) + OCRAM/ RAM ngoài (dành cho các phần dữ liệu có thể ghi)

hàm alt_load()

Ứng dụng bộ xử lý Nios V được sao chép từ bộ nhớ flash QSPI mục đích chung sang RAM bằng trình sao chép khởi động

OCRAM/RAM ngoài

Bộ nạp khởi động thông qua GSFI

Ứng dụng bộ xử lý Nios V thực thi tại chỗ từ cấu hình QSPI flash

Cấu hình QSPI flash (XIP) + OCRAM/ RAM ngoài (cho các phần dữ liệu có thể ghi)

hàm alt_load()

Ứng dụng bộ xử lý Nios V được sao chép từ cấu hình QSPI flash sang RAM bằng cách sử dụng máy sao chép khởi động

OCRAM/Bộ nạp khởi động RAM ngoài thông qua GSFI tiếp tục…

(2) Tham khảo AN 980: Hỗ trợ phần mềm Nios V Processor Quartus Prime để biết danh sách thiết bị.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 49

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Bộ nhớ khởi động được hỗ trợ
Bộ nhớ trên chip (OCRAM) Bộ nhớ kết nối chặt chẽ (TCM)

Thiết bị
Thiết bị dựa trên SDM (với IP FPGA Intel Mailbox Client). (2)
Tất cả các thiết bị FPGA Altera được hỗ trợ (2)
Tất cả các thiết bị FPGA Altera được hỗ trợ(2)

Phương pháp khởi động bộ xử lý Nios V
Ứng dụng bộ xử lý Nios V được sao chép từ cấu hình QSPI flash sang RAM bằng cách sử dụng máy sao chép khởi động
Ứng dụng bộ xử lý Nios V thực thi tại chỗ từ OCRAM
Ứng dụng bộ xử lý Nios V thực thi tại chỗ từ TCM

Vị trí thời gian chạy ứng dụng

khởi động máy photocopy

OCRAM/Bộ nạp khởi động RAM ngoài thông qua SDM

OCRAM

hàm alt_load()

Hướng dẫn TCM (XIP) Không có + TCM dữ liệu (cho các phần dữ liệu có thể ghi)

Hình 28. Luồng khởi động bộ xử lý Nios V

Cài lại

Bộ xử lý nhảy đến vector thiết lập lại (bắt đầu mã khởi động)

Mã ứng dụng có thể được sao chép vào một vị trí bộ nhớ khác (tùy thuộc vào tùy chọn khởi động)
Mã khởi động khởi tạo bộ xử lý

Tùy thuộc vào tùy chọn khởi động, mã khởi động có thể sao chép các giá trị ban đầu cho dữ liệu/mã sang không gian bộ nhớ khác (alt_load)
Mã khởi động khởi tạo mã ứng dụng và không gian bộ nhớ dữ liệu
Mã khởi động khởi tạo tất cả các thiết bị ngoại vi hệ thống bằng trình điều khiển HAL (alt_main)
Lối vào chính
Thông tin liên quan · Giao diện Flash nối tiếp chung Hướng dẫn sử dụng IP FPGA của Altera
Sổ tay thiết kế bộ xử lý nhúng Nios® V 50

Gửi phản hồi

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX
· Hướng dẫn sử dụng Mailbox Client Altera FPGA IP · AN 980: Bộ xử lý Nios V Hỗ trợ phần mềm Quartus Prime
4.4. Giới thiệu về các phương pháp khởi động bộ xử lý Nios V
Hệ thống xử lý Nios V yêu cầu hình ảnh phần mềm phải được cấu hình trong bộ nhớ hệ thống trước khi bộ xử lý có thể bắt đầu thực thi chương trình ứng dụng. Tham khảo Mục Liên kết để biết các mục liên kết mặc định.
Trình soạn thảo BSP tạo ra một tập lệnh liên kết thực hiện các chức năng sau: · Đảm bảo rằng phần mềm bộ xử lý được liên kết theo các cài đặt liên kết
của trình soạn thảo BSP và xác định vị trí phần mềm nằm trong bộ nhớ. · Định vị vùng mã của bộ xử lý trong thành phần bộ nhớ theo
các thành phần bộ nhớ được chỉ định.
Phần sau đây mô tả ngắn gọn các phương pháp khởi động bộ xử lý Nios V có sẵn.
4.4.1. Ứng dụng bộ xử lý Nios V thực thi tại chỗ từ Boot Flash
Altera đã thiết kế bộ điều khiển flash sao cho bộ xử lý Nios V có thể truy cập ngay lập tức không gian địa chỉ flash khởi động khi hệ thống được đặt lại, mà không cần khởi tạo bộ điều khiển bộ nhớ hoặc thiết bị bộ nhớ. Điều này cho phép bộ xử lý Nios V thực thi mã ứng dụng được lưu trữ trên thiết bị khởi động trực tiếp mà không cần sử dụng bộ sao chép khởi động để sao chép mã sang loại bộ nhớ khác. Các bộ điều khiển flash bao gồm: · Flash trên chip với IP Flash trên chip (chỉ có trong thiết bị MAX® 10) · Flash QSPI đa năng với IP Giao diện Flash Nối tiếp Chung · Flash QSPI cấu hình với IP Giao diện Flash Nối tiếp Chung (ngoại trừ MAX 10)
thiết bị)
Khi ứng dụng bộ xử lý Nios V thực thi tại chỗ từ bộ nhớ flash khởi động, Trình soạn thảo BSP thực hiện các chức năng sau: · Đặt các phần liên kết .text vào vùng bộ nhớ flash khởi động. · Đặt các phần liên kết .bss, .rodata, .rwdata, .stack và .heap vào RAM
Vùng nhớ. Bạn phải bật hàm alt_load() trong Cài đặt BSP để sao chép các phần dữ liệu (.rodata, .rwdata, .exceptions) vào RAM khi hệ thống được đặt lại. Phần mã (.text) vẫn nằm trong vùng bộ nhớ flash khởi động.
Thông tin liên quan · Giao diện Flash nối tiếp chung Hướng dẫn sử dụng IP FPGA của Altera · Hướng dẫn sử dụng bộ nhớ Flash dành cho người dùng Altera MAX 10
4.4.1.1. alt_load()
Bạn có thể kích hoạt hàm alt_load() trong mã HAL bằng cách sử dụng Trình soạn thảo BSP.
Khi được sử dụng trong luồng khởi động thực thi tại chỗ, hàm alt_load() thực hiện các tác vụ sau:

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 51

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

· Hoạt động như một máy sao chép khởi động nhỏ sao chép các phần bộ nhớ vào RAM dựa trên cài đặt BSP.
· Sao chép các phần dữ liệu (.rodata, .rwdata, .exceptions) vào RAM nhưng không sao chép các phần mã (.text). Phần mã (.text) là phần chỉ đọc và nằm trong vùng bộ nhớ flash khởi động. Việc phân vùng này giúp giảm thiểu việc sử dụng RAM nhưng có thể hạn chế hiệu suất thực thi mã vì truy cập vào bộ nhớ flash chậm hơn truy cập vào RAM trên chip.

Bảng sau đây liệt kê các cài đặt và chức năng của BSP Editor:

Bảng 31. Cài đặt trình soạn thảo BSP
Cài đặt trình soạn thảo 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

Chức năng Kích hoạt chức năng alt_load(). alt_load() sao chép phần .rodata vào RAM. alt_load() sao chép phần .rwdata vào RAM. alt_load() sao chép phần .exceptions vào RAM.

4.4.2. Ứng dụng bộ xử lý Nios V được sao chép từ Flash khởi động sang RAM bằng Boot Copier
Bộ xử lý Nios V và HAL bao gồm một trình sao chép khởi động cung cấp đủ chức năng cho hầu hết các ứng dụng của bộ xử lý Nios V và thuận tiện để triển khai với quy trình phát triển phần mềm Nios V.
Khi ứng dụng sử dụng trình sao chép khởi động, nó sẽ đặt tất cả các phần liên kết (.text, .heap, .rwdata, .rodata, .bss, .stack) vào RAM nội bộ hoặc RAM ngoài. Việc sử dụng trình sao chép khởi động để sao chép ứng dụng bộ xử lý Nios V từ bộ nhớ flash khởi động sang RAM nội bộ hoặc RAM ngoài để thực thi giúp cải thiện hiệu suất thực thi.
Với tùy chọn khởi động này, bộ xử lý Nios V sẽ bắt đầu thực thi phần mềm sao chép khởi động khi hệ thống được đặt lại. Phần mềm sẽ sao chép ứng dụng từ bộ nhớ flash khởi động sang RAM bên trong hoặc bên ngoài. Sau khi quá trình hoàn tất, bộ xử lý Nios V sẽ chuyển quyền điều khiển chương trình sang ứng dụng.

Ghi chú:

Nếu trình sao chép khởi động nằm trong flash, thì không cần phải gọi hàm alt_load() vì cả hai đều có cùng mục đích.

4.4.2.1. Bộ nạp khởi động bộ xử lý Nios V thông qua giao diện Flash nối tiếp chung
Bộ nạp khởi động thông qua GSFI là bộ sao chép khởi động bộ xử lý Nios V hỗ trợ bộ nhớ flash QSPI trong các thiết bị dựa trên khối điều khiển. Bộ nạp khởi động thông qua GSFI bao gồm các tính năng sau:
· Xác định vị trí ứng dụng phần mềm trong bộ nhớ không bay hơi.
· Giải nén và sao chép hình ảnh ứng dụng phần mềm vào RAM.
· Tự động chuyển đổi thực thi bộ xử lý sang mã ứng dụng trong RAM sau khi quá trình sao chép hoàn tất.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 52

Gửi phản hồi

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Ảnh khởi động nằm ngay sau bộ sao chép khởi động. Bạn cần đảm bảo điểm đặt lại offset của bộ xử lý Nios V trỏ đến điểm bắt đầu của bộ sao chép khởi động. Hình: Bản đồ bộ nhớ cho QSPI Flash với Bộ nạp khởi động thông qua GSFI Bản đồ bộ nhớ cho QSPI Flash với Bộ nạp khởi động thông qua GSFI hiển thị bản đồ bộ nhớ flash cho QSPI flash khi sử dụng bộ sao chép khởi động. Bản đồ bộ nhớ này giả định bộ nhớ flash lưu trữ ảnh FPGA và phần mềm ứng dụng.

Bảng 32. Bộ nạp khởi động thông qua GSFI cho lõi bộ xử lý Nios V

Lõi bộ xử lý Nios V
Bộ xử lý Nios V/m

Bộ nạp khởi động thông qua GSFI File Vị trí
/niosv/components/bootloader/ niosv_m_bootloader.srec

Bộ xử lý Nios V/g

/niosv/components/bootloader/ niosv_g_bootloader.srec

Hình 29. Bản đồ bộ nhớ cho QSPI Flash với Bootloader thông qua GSFI

Dữ liệu khách hàng (*.hex)

Mã ứng dụng

Ghi chú:

Đặt lại độ lệch vectơ

khởi động máy photocopy

0x01E00000

Hình ảnh FPGA (*.sof)

0x00000000

1. Ở đầu bản đồ bộ nhớ là hình ảnh FPGA theo sau là dữ liệu của bạn, bao gồm trình sao chép khởi động và mã ứng dụng.
2. Bạn phải thiết lập độ lệch đặt lại bộ xử lý Nios V trong Platform Designer và trỏ nó đến điểm bắt đầu của trình sao chép khởi động.
3. Kích thước của ảnh FPGA chưa được xác định. Bạn chỉ có thể biết kích thước chính xác sau khi biên dịch dự án Quartus Prime. Bạn phải xác định giới hạn trên cho kích thước của ảnh FPGA Altera. Ví dụ:ample, nếu kích thước của ảnh FPGA được ước tính nhỏ hơn 0x01E00000, hãy đặt Bù đặt lại thành 0x01E00000 trong Platform Designer, đây cũng là điểm bắt đầu của trình sao chép khởi động.
4. Một phương pháp thiết kế tốt bao gồm việc thiết lập độ lệch vectơ đặt lại tại ranh giới khu vực flash để đảm bảo không xảy ra hiện tượng xóa một phần hình ảnh FPGA trong trường hợp ứng dụng phần mềm được cập nhật.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 53

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

4.4.2.2. Bộ nạp khởi động bộ xử lý Nios V thông qua Trình quản lý thiết bị an toàn
Bootloader thông qua Secure Device Manager (SDM) là một mã ứng dụng HAL sử dụng trình điều khiển Mailbox Client FPGA IP HAL của Altera để khởi động bộ xử lý. Altera khuyến nghị ứng dụng bootloader này khi sử dụng flash QSPI cấu hình trong các thiết bị dựa trên SDM để khởi động bộ xử lý Nios V.
Khi hệ thống được thiết lập lại, bộ xử lý Nios V sẽ khởi động Bootloader thông qua SDM từ một bộ nhớ nhỏ trên chip và thực thi Bootloader thông qua SDM để giao tiếp với flash QSPI cấu hình bằng IP của Mailbox Client.
Bộ nạp khởi động thông qua SDM thực hiện các tác vụ sau: · Định vị phần mềm Nios V trong bộ nhớ flash QSPI cấu hình. · Sao chép phần mềm Nios V vào RAM trên chip hoặc RAM ngoài. · Chuyển đổi thực thi bộ xử lý sang phần mềm Nios V trong RAM trên chip hoặc
RAM ngoài.
Sau khi quá trình hoàn tất, Bootloader thông qua SDM sẽ chuyển quyền điều khiển chương trình sang ứng dụng người dùng. Altera khuyến nghị tổ chức bộ nhớ như được nêu trong phần Tổ chức Bộ nhớ cho Bootloader thông qua SDM.
Hình 30. Bộ nạp khởi động thông qua quy trình SDM

Cấu hình

Đèn nháy

2

Phần mềm Nios V

SDM

Thiết bị FPGA dựa trên SDM

Địa chỉ IP của máy khách hộp thư

FPGA Logic Nios V

4 RAM ngoài
Phần mềm Nios V

Trên Chip 4

EMIF

ĐẬP

Bộ nhớ trên chip

IP

Nios V

1

Phần mềm

Bộ nạp khởi động qua SDM

3

3

1. Bộ xử lý Nios V chạy Bootloader thông qua SDM từ bộ nhớ trên chip.
2. Bộ nạp khởi động thông qua SDM giao tiếp với bộ nhớ flash cấu hình và định vị phần mềm Nios V.
3. Bộ nạp khởi động thông qua SDM sao chép phần mềm Nios V từ bộ nhớ Flash cấu hình vào RAM trên chip / RAM ngoài.
4. Bộ nạp khởi động thông qua SDM chuyển đổi quá trình thực thi bộ xử lý Nios V sang phần mềm Nios V trong RAM trên chip / RAM ngoài.

4.4.3. Ứng dụng bộ xử lý Nios V được thực thi tại chỗ từ OCRAM
Trong phương pháp này, địa chỉ đặt lại bộ xử lý Nios V được đặt thành địa chỉ cơ sở của bộ nhớ trên chip (OCRAM). Tệp nhị phân ứng dụng (.hex) file được tải vào OCRAM khi FPGA được cấu hình, sau khi thiết kế phần cứng được biên dịch trong phần mềm Quartus Prime. Khi bộ xử lý Nios V được thiết lập lại, ứng dụng bắt đầu thực thi và chuyển sang điểm nhập.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 54

Gửi phản hồi

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Ghi chú:

· Thực thi tại chỗ từ OCRAM không yêu cầu trình sao chép khởi động vì ứng dụng bộ xử lý Nios V đã có sẵn khi thiết lập lại hệ thống.
· Altera khuyến nghị bật alt_load() cho phương pháp khởi động này để phần mềm nhúng hoạt động giống hệt nhau khi đặt lại mà không cần cấu hình lại hình ảnh thiết bị FPGA.
· Bạn phải bật hàm alt_load() trong Cài đặt BSP để sao chép phần .rwdata khi hệ thống được đặt lại. Trong phương pháp này, các giá trị ban đầu cho các biến đã khởi tạo được lưu trữ riêng biệt với các biến tương ứng để tránh ghi đè khi thực thi chương trình.

4.4.4. Ứng dụng bộ xử lý Nios V được thực thi tại chỗ từ TCM
Phương pháp thực thi tại chỗ đặt địa chỉ đặt lại bộ xử lý Nios V thành địa chỉ cơ sở của bộ nhớ liên kết chặt chẽ (TCM). Tệp nhị phân ứng dụng (.hex) file được tải vào TCM khi bạn cấu hình FPGA sau khi biên dịch thiết kế phần cứng trong phần mềm Quartus Prime. Khi bộ xử lý Nios V được đặt lại, ứng dụng sẽ bắt đầu thực thi và chuyển sang điểm nhập.

Ghi chú:

Execute-In-Place từ TCM không yêu cầu máy sao chép khởi động vì ứng dụng bộ xử lý Nios V đã có sẵn khi thiết lập lại hệ thống.

4.5. Bộ xử lý Nios V khởi động từ bộ nhớ Flash trên chip (UFM)

Bộ xử lý Nios V có thể khởi động và thực thi phần mềm từ bộ nhớ flash trên chip (UFM) trong các thiết bị FPGA MAX 10. Bộ xử lý Nios V hỗ trợ hai tùy chọn khởi động sau bằng bộ nhớ flash trên chip ở chế độ Cấu hình Nội bộ:
· Ứng dụng bộ xử lý Nios V được thực thi tại chỗ từ On-Chip Flash.
· Ứng dụng bộ xử lý Nios V được sao chép từ On-Chip Flash sang RAM bằng trình sao chép khởi động.

Bảng 33. Bộ nhớ Flash được hỗ trợ với các tùy chọn khởi động tương ứng

Bộ nhớ khởi động được hỗ trợ

Phương pháp khởi động Nios V

Vị trí thời gian chạy ứng dụng

khởi động máy photocopy

Chỉ tối đa 10 thiết bị (với OnChip Flash IP)

Ứng dụng bộ xử lý Nios V được thực thi tại chỗ từ On-Chip Flash
Ứng dụng bộ xử lý Nios V được sao chép từ On-Chip Flash sang RAM bằng cách sử dụng máy sao chép khởi động

On-Chip Flash (XIP) + OCRAM/ RAM ngoài (cho các phần dữ liệu có thể ghi)

hàm alt_load()

OCRAM/RAM ngoài

Tái sử dụng Bootloader thông qua GSFI

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 55

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Hình 31.

Thiết kế, Cấu hình và Luồng khởi động
Thiết kế · Tạo dự án dựa trên Bộ xử lý Nios V của bạn bằng Platform Designer. · Đảm bảo có RAM ngoài hoặc RAM trên chip trong thiết kế hệ thống.

Cấu hình và biên dịch FPGA
· Thiết lập cùng chế độ cấu hình nội bộ trong On-chip Flash IP trong phần mềm Platform Designer và Quartus Prime. · Đặt tác nhân đặt lại bộ xử lý Nios V thành On-chip Flash. · Chọn phương pháp khởi tạo UFM ưa thích của bạn. · Tạo thiết kế của bạn trong Platform Designer. · Biên dịch dự án của bạn trong phần mềm Quartus Prime.

Dự án BSP ứng dụng người dùng · Tạo bộ xử lý Nios V HAL BSP dựa trên .sopcinfo file được tạo bởi Platform Designer. · Chỉnh sửa cài đặt BSP của bộ xử lý Nios V và Linker Script trong BSP Editor. · Tạo dự án BSP.
Dự án Ứng dụng Người dùng APP · Phát triển mã ứng dụng bộ xử lý Nios V. · Biên dịch ứng dụng bộ xử lý Nios V và tạo ứng dụng bộ xử lý Nios V (.hex) file. · Biên dịch lại dự án của bạn trong phần mềm Quartus Prime nếu bạn chọn tùy chọn Khởi tạo nội dung bộ nhớ trong Intel FPGA On-Chip Flash IP.

Lập trình FileChuyển đổi, Tải xuống và Chạy · Tạo Flash trên chip .pof file sử dụng Convert Programming Filetính năng trong phần mềm Quartus Prime.
· Lập trình .pof file vào thiết bị MAX 10 của bạn. · Tắt và bật lại phần cứng.
4.5.1. Mô tả về MAX 10 FPGA On-Chip Flash
Tối đa 10 thiết bị FPGA chứa bộ nhớ flash trên chip được chia thành hai phần: · Bộ nhớ flash cấu hình (CFM) — lưu trữ dữ liệu cấu hình phần cứng cho
TỐI ĐA 10 FPGA. · Bộ nhớ flash của người dùng (UFM) — lưu trữ dữ liệu người dùng hoặc ứng dụng phần mềm.
Kiến trúc UFM của thiết bị MAX 10 là sự kết hợp giữa IP mềm và IP cứng. Bạn chỉ có thể truy cập UFM bằng Lõi IP Flash On-Chip trong phần mềm Quartus Prime.
Lõi IP Flash trên chip hỗ trợ các tính năng sau: · Truy cập đọc hoặc ghi vào các sector UFM và CFM (nếu được bật trong Platform Designer)
sử dụng giao diện dữ liệu và điều khiển Avalon MM. · Hỗ trợ xóa trang, xóa sector và ghi sector. · Mô hình mô phỏng cho truy cập đọc/ghi UFM bằng nhiều công cụ mô phỏng EDA khác nhau.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 56

Gửi phản hồi

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Bảng 34. Vùng Flash trên chip trong thiết bị FPGA MAX 10

Vùng Flash

Chức năng

Cấu hình bộ nhớ Flash (các sector CFM0-2)

Cấu hình FPGA file kho

Bộ nhớ Flash của người dùng (các sector UFM0-1)

Ứng dụng bộ xử lý Nios V và dữ liệu người dùng

Thiết bị MAX 10 FPGA hỗ trợ nhiều chế độ cấu hình và một số chế độ này cho phép sử dụng CFM1 và CFM2 làm vùng UFM bổ sung. Bảng sau đây hiển thị vị trí lưu trữ ảnh cấu hình FPGA dựa trên các chế độ cấu hình của MAX 10 FPGA.

Bảng 35. Vị trí lưu trữ hình ảnh cấu hình FPGA

Chế độ cấu hình Hình ảnh nén kép

Hình ảnh nén CFM2 2

CFM1

Hình ảnh nén CFM0 1

Hình ảnh đơn không nén

UFM ảo

Hình ảnh chưa nén

Hình ảnh đơn không nén với Khởi tạo bộ nhớ

Hình ảnh không nén (có nội dung bộ nhớ trên chip được khởi tạo trước)

Hình ảnh nén đơn với Khởi tạo bộ nhớ Hình ảnh nén (với nội dung bộ nhớ trên chip được khởi tạo trước)

Hình ảnh nén đơn

UFM ảo

Hình ảnh nén

Bạn phải sử dụng lõi IP Flash trên chip để truy cập bộ nhớ flash trong TỐI ĐA 10 FPGA. Bạn có thể khởi tạo và kết nối IP Flash trên chip với phần mềm Quartus Prime. Bộ xử lý lõi mềm Nios V sử dụng các kết nối Platform Designer để giao tiếp với IP Flash trên chip.
Hình 32. Kết nối giữa On-chip Flash IP và Bộ xử lý Nios V

Ghi chú:

Đảm bảo cổng csr Flash trên chip được kết nối với data_manager của bộ xử lý Nios V để cho phép bộ xử lý kiểm soát các hoạt động ghi và xóa.
Lõi IP Flash trên chip có thể cung cấp quyền truy cập vào năm sector flash – UFM0, UFM1, CFM0, CFM1 và CFM2.
Thông tin quan trọng về các sector UFM và CFM.: · Các sector CFM dùng để lưu trữ dữ liệu cấu hình (luồng bit) (*.pof).
· Dữ liệu người dùng có thể được lưu trữ trong các phân vùng UFM và có thể được ẩn nếu chọn đúng cài đặt trong công cụ Platform Designer.
· Một số thiết bị không có sector UFM1. Bạn có thể tham khảo bảng: Kích thước sector UFM và CFM để biết số sector khả dụng trong mỗi thiết bị FPGA MAX 10.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 57

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

· Bạn có thể cấu hình CFM2 như một UFM ảo bằng cách chọn chế độ cấu hình Ảnh không nén đơn.
· Bạn có thể cấu hình CFM2 và CFM1 thành UFM ảo bằng cách chọn chế độ cấu hình Ảnh không nén đơn.
· Kích thước của mỗi sector thay đổi tùy theo số lượng thiết bị FPGA MAX 10 được chọn.

Bảng 36.

Quy mô ngành UFM và CFM
Bảng này liệt kê các kích thước của mảng UFM và CFM.

Thiết bị

Số trang theo ngành

UFM1 UFM0 CFM2 CFM1 CFM0

Kích thước trang (Kbit)

Người dùng tối đa
Kích thước bộ nhớ Flash (Kbit) (3)

Tổng kích thước bộ nhớ cấu hình (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

Kích thước OCRAM (Kbit)
108 189 378 549 675 1260 1638

Thông tin liên quan · Hướng dẫn sử dụng cấu hình FPGA MAX 10 · Hướng dẫn sử dụng bộ nhớ flash Altera MAX 10

4.5.2. Ứng dụng bộ xử lý Nios V được thực thi tại chỗ từ UFM

Giải pháp Execute-In-Place từ UFM phù hợp với các ứng dụng bộ xử lý Nios V yêu cầu sử dụng bộ nhớ trên chip hạn chế. Hàm alt_load() hoạt động như một trình sao chép khởi động mini, sao chép các phần dữ liệu (.rodata, .rwdata hoặc .exceptions) từ bộ nhớ khởi động sang RAM dựa trên cài đặt BSP. Phần mã (.text),
là một vùng chỉ đọc, nằm trong vùng bộ nhớ Flash trên chip MAX 10. Thiết lập này giảm thiểu việc sử dụng RAM nhưng có thể hạn chế hiệu suất thực thi mã vì tốc độ truy cập bộ nhớ flash chậm hơn RAM trên chip.

Ứng dụng bộ xử lý Nios V được lập trình vào sector UFM. Vectơ reset của bộ xử lý Nios V trỏ đến địa chỉ cơ sở UFM để thực thi mã từ UFM sau khi hệ thống được reset.

Nếu bạn đang sử dụng trình gỡ lỗi cấp nguồn để gỡ lỗi ứng dụng, bạn phải sử dụng điểm dừng phần cứng. Điều này là do UFM không hỗ trợ truy cập bộ nhớ ngẫu nhiên, điều cần thiết cho việc gỡ lỗi điểm dừng mềm.

Ghi chú:

Bạn không thể xóa hoặc ghi UFM khi thực hiện lệnh thực thi tại chỗ trong MAX 10. Hãy chuyển sang phương pháp khởi động máy sao chép nếu bạn cần xóa hoặc ghi UFM.

(3) Giá trị lớn nhất có thể, phụ thuộc vào chế độ cấu hình bạn chọn.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 58

Gửi phản hồi

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Hình 33. Ứng dụng bộ xử lý Nios V XIP từ UFM

Tối đa 10 thiết bị

.POF
Phần cứng Nios V .SOF
Phần mềm Nios V .HEX

Lập trình viên Quartus

Flash trên chip

CFM

Phần cứng Nios V

UFM

Phần mềm Nios V

Cấu hình bên trong

IP Flash trên chip

Logic FPGA
Bộ xử lý Nios V

RAM trên chip

Bên ngoài

ĐẬP

EMIF

IP

4.5.2.1. Luồng thiết kế phần cứng
Phần sau đây mô tả phương pháp từng bước để xây dựng hệ thống có khả năng khởi động cho ứng dụng bộ xử lý Nios V từ On-Chip Flash. Ví dụampbên dưới được xây dựng bằng thiết bị MAX 10.
Cài đặt thành phần IP
1. Tạo dự án bộ xử lý Nios V của bạn bằng Quartus Prime và Platform Designer. 2. Đảm bảo RAM ngoài hoặc Bộ nhớ trên chip (OCRAM) đã được thêm vào Nền tảng của bạn.
Hệ thống thiết kế.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 59

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX
Hình 34. Ví dụampKết nối IP trong Platform Designer để khởi động Nios V từ OnChip Flash (UFM)

3. Trong trình chỉnh sửa tham số IP Flash trên chip, hãy đặt Chế độ cấu hình thành một trong các chế độ sau, tùy theo sở thích thiết kế của bạn: · Ảnh đơn không nén · Ảnh đơn nén · Ảnh đơn không nén với Khởi tạo bộ nhớ · Ảnh đơn nén với Khởi tạo bộ nhớ
Để biết thêm thông tin về Ảnh nén kép, hãy tham khảo Hướng dẫn sử dụng cấu hình FPGA MAX 10 – Nâng cấp hệ thống từ xa.

Ghi chú:

Bạn phải chỉ định Quyền truy cập ẩn cho mọi vùng CFM trong IP Flash trên chip.

Hình 35. Lựa chọn chế độ cấu hình trong Trình chỉnh sửa tham số Flash trên chip

Cài đặt IP Flash trên chip – Khởi tạo UFM Bạn có thể chọn một trong các phương pháp sau tùy theo sở thích của mình:

Sổ tay thiết kế bộ xử lý nhúng Nios® V 60

Gửi phản hồi

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Ghi chú:

Các bước trong các tiểu chương tiếp theo (Quy trình thiết kế phần mềm và lập trình) phụ thuộc vào lựa chọn bạn thực hiện ở đây.

· Phương pháp 1: Khởi tạo dữ liệu UFM trong SOF trong quá trình biên dịch
Quartus Prime bao gồm dữ liệu khởi tạo UFM trong SOF trong quá trình biên dịch. Việc biên dịch lại SOF là cần thiết nếu có thay đổi trong dữ liệu UFM.
1. Kiểm tra Khởi tạo nội dung flash và Bật khởi tạo không mặc định file.

Hình 36. Khởi tạo Nội dung Flash và Kích hoạt Khởi tạo Không mặc định File

2. Chỉ định đường dẫn của tệp .hex được tạo file (từ lệnh elf2hex) trong hex hoặc mif do Người dùng tạo file.
Hình 37. Thêm .hex File Con đường

· Phương pháp 2: Kết hợp dữ liệu UFM với SOF đã biên dịch trong quá trình tạo POF
Dữ liệu UFM được kết hợp với SOF đã biên dịch khi chuyển đổi lập trình files. Bạn không cần phải biên dịch lại SOF, ngay cả khi dữ liệu UFM thay đổi. Trong quá trình phát triển, bạn không cần phải biên dịch lại SOF. files để thay đổi ứng dụng. Alterare khuyến nghị phương pháp này cho các nhà phát triển ứng dụng.
1. Bỏ chọn Khởi tạo nội dung flash.
Hình 38. Khởi tạo nội dung Flash với khởi tạo không mặc định File

Thiết lập lại cài đặt tác nhân cho bộ xử lý Nios V bằng phương pháp thực thi tại chỗ
1. Trong trình chỉnh sửa tham số bộ xử lý Nios V, hãy đặt Reset Agent thành On-Chip Flash.
Hình 39. Cài đặt trình chỉnh sửa tham số bộ xử lý Nios V với tác nhân đặt lại được đặt thành Flash trên chip

2. Nhấp vào Tạo HDL khi hộp thoại Tạo xuất hiện. 3. Chỉ định đầu ra file tùy chọn tạo và nhấp vào Tạo.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 61

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX
Quartus Prime Software Settings 1. In the Quartus Prime software, click Assignments Device Device and Pin
Options Configuration. Set the Configuration mode according to the setting in On-Chip Flash IP. Figure 40. Configuration Mode Selection in Quartus Prime Software

2. Nhấp vào OK để thoát khỏi cửa sổ Tùy chọn thiết bị và mã PIN,
3. Nhấp vào OK để thoát khỏi cửa sổ Thiết bị.
4. Click Processing Start Compilation to compile your project and generate the .sof file.

Ghi chú:

Nếu cài đặt chế độ cấu hình trong phần mềm Quartus Prime và trình chỉnh sửa tham số Platform Designer khác nhau, dự án Quartus Prime sẽ không thành công và hiển thị thông báo lỗi sau.

Hình 41.

Thông báo lỗi do cài đặt chế độ cấu hình khác nhau Lỗi (14740): Chế độ cấu hình trên atom “q_sys:q_sys_inst| altera_onchip_flash:onchip_flash_1|altera_onchip_flash_block: altera_onchip_flash_block|ufm_block” không khớp với cài đặt dự án. Cập nhật và tạo lại hệ thống Qsys để khớp với cài đặt dự án.

Thông tin liên quan Hướng dẫn sử dụng cấu hình FPGA MAX 10

4.5.2.2. Luồng thiết kế phần mềm
Phần này cung cấp quy trình thiết kế để tạo và xây dựng dự án phần mềm bộ xử lý Nios V. Để đảm bảo quy trình xây dựng được hợp lý hóa, bạn nên tạo một cây thư mục tương tự trong dự án thiết kế của mình. Quy trình thiết kế phần mềm sau đây dựa trên cây thư mục này.
Để tạo cây thư mục dự án phần mềm, hãy làm theo các bước sau: 1. Trong thư mục dự án thiết kế của bạn, hãy tạo một thư mục có tên là software. 2. Trong thư mục software, hãy tạo hai thư mục có tên là hal_app và hal_bsp.
Hình 42. Cây thư mục dự án phần mềm

Sổ tay thiết kế bộ xử lý nhúng Nios® V 62

Gửi phản hồi

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX
Tạo dự án ứng dụng BSP
Để khởi chạy Trình soạn thảo BSP, hãy làm theo các bước sau: 1. Vào Nios V Command Shell. 2. Gọi Trình soạn thảo BSP bằng lệnh niosv-bsp-editor. 3. Trong Trình soạn thảo BSP, nhấp vào File BSP mới để bắt đầu dự án BSP của bạn. 4. Cấu hình các cài đặt sau:
· Thông tin SOPC File tên: Cung cấp SOPCINFO file (.sopcinfo). · Tên CPU: Chọn bộ xử lý Nios V. · Hệ điều hành: Chọn hệ điều hành của bộ xử lý Nios V. · Phiên bản: Giữ nguyên mặc định. · Thư mục đích BSP: Chọn đường dẫn thư mục của dự án BSP. Bạn có thể
đặt trước nó ở /software/hal_bsp bằng cách bật Sử dụng vị trí mặc định. · Cài đặt BSP File tên: Nhập tên của Cài đặt BSP File. · Additional Tcl scripts: Provide a BSP Tcl script by enabling Enable Additional Tcl script. 5. Click OK.
Figure 43. Configure New BSP

Configuring the BSP Editor and Generating the BSP Project
You can define the processor’s exception vector either in On-Chip Memory (OCRAM) or On-Chip Flash based on your design preference. Setting the exception vector memory to OCRAM/External RAM is recommended to make the interrupt processing faster. 1. Go to Main Settings Advanced hal.linker. 2. If you select On-Chip Flash as exception vector,
a. Enable the following settings:

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 63

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX
· allow_code_at_reset · enable_alt_load · enable_alt_load_copy_rodata · enable_alt_load_copy_rwdata Figure 44. Advanced.hal.linker Settings

b. Click on the Linker Script tab in the BSP Editor. c. Set the .exceptions and .text regions in the Linker Section Name to
On-Chip Flash. d. Set the rest of the regions in the Linker Section Name list to the On-Chip
Memory (OCRAM) or external RAM.
Figure 45. Linker Region Settings (Exception Vector Memory: On-Chip Flash)

3. If you select OCRAM/External RAM as exception vector, a. Enable the following settings: · allow_code_at_reset · enable_alt_load · enable_alt_load_copy_rodata · enable_alt_load_copy_rwdata · enable_alt_load_copy_exception
Figure 46. Linker Region Settings (Exception Vector Memory: OCRAM/External RAM)

b. Click on the Linker Script tab in the BSP Editor.
c. Set the.text regions in the Linker Section Name to On-Chip Flash.
d. Set the rest of the regions in the Linker Section Name list to the On-Chip Memory (OCRAM) or external RAM.

Sổ tay thiết kế bộ xử lý nhúng Nios® V 64

Gửi phản hồi

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX
Figure 47. Linker Region Settings (Exception Vector Memory: OCRAM)
4. Click Generate to generate the BSP project. Generating the User Application Project File 1. Navigate to the software/hal_app folder and create your application source
code. 2. Launch the Nios V Command Shell. 3. Execute the command below to generate the application CMakeLists.txt.
niosv-app –app-dir=software/hal_app –bsp-dir=software/hal_bsp –srcs=software/hal_app/<user application>
Building the User Application Project You can choose to build the user application project using Ashling RiscFree IDE for Altera FPGAs or through the command line interface (CLI). If you prefer using CLI, you can build the user application using the following command: cmake -G “Unix Makefiles” -B software/hal_app/build -S software/hal_app make -C software/hal_app/build
The application (.elf) file is created in software/hal_app/build folder. Generating the HEX File You must generate a .hex file from your application .elf file, so you can create a .pof file suitable for programming the devices. 1. Launch the Nios V Command Shell. 2. For Nios V processor application boot from On-Chip Flash, use the following
command line to convert the ELF to HEX for your application. This command creates the user application (onchip_flash.hex) file. elf2hex software/hal_app/build/<user_application>.elf -o onchip_flash.hex
-b <base address of On-Chip Flash UFM region> -w 8 -e <end address of On-Chip Flash UFM region> 3. Recompile the hardware design if you check Initialize memory content option in On-Chip Flash IP (Method 1). This is to include the software data (.HEX) in the SOF file.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 65

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX
4.5.2.3. Programming 1. In Quartus Prime, click File Chuyển đổi lập trình Files. 2. Under Output programming file, choose Programmer Object File (.pof) as Programming file type. 3. Set Mode to Internal Configuration.
Figure 48. Convert Programming File Cài đặt
4. Click Options/Boot info…, the MAX 10 Device Options window appears. 5. Based on the Initialize flash content settings in the On-chip Flash IP, perform
one of the following steps: · If Initialize flash content is checked (Method 1), the UFM initialization data
was included in the SOF duringQuartus Prime compilation. — Select Page_0 for UFM source: option. Click OK and proceed to the
next. Figure 49. Setting Page_0 for UFM Source if Initialize Flash Content is Checked

Sổ tay thiết kế bộ xử lý nhúng Nios® V 66

Gửi phản hồi

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX
· If Initialize flash content is not checked (Method 2), choose Load memory file for the UFM source option. Browse to the generated On-chip Flash HEX file (onchip_flash.hex) in the File path: and click OK. This step adds UFM data separately to the SOF file during the programming file chuyển đổi.
Figure 50. Setting Load Memory File for UFM Source if Initialize Flash Content is Not Checked

6. In the Convert Programming File dialog box, at the Input files to convert section, click Add File… and point to the generated Quartus Prime .sof file.
Figure 51. Input Files to Convert in Convert Programming Files for Single Image Mode

7. Click Generate to create the .pof file. 8. Program the .pof file into your MAX 10 device. 9. Power cycle your hardware.

4.5.3. Nios V Processor Application Copied from UFM to RAM using Boot Copier

Altera recommends this solution for MAX 10 FPGA Nios V processor system designs where multiple iterations of application software development and high system performance are required. The boot copier is located within the UFM at an offset that is the same address as the reset vector. The Nios V application is located next to the boot copier.

For this boot option, the Nios V processor starts executing the boot copier upon system reset to copy the application from the UFM sector to the OCRAM or external RAM. Once copying is complete, the Nios V processor transfers the program control over to the application.

Ghi chú:

The applied boot copier is the same as the Bootloader via GSFI.

Gửi phản hồi

Sổ tay thiết kế bộ xử lý nhúng Nios® V 67

4. Giải pháp khởi động và cấu hình bộ xử lý Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Figure 52. Nios V Application Copied from UFM to RAM using Boot Copier

Tối đa 10 thiết bị

.POF
Phần cứng Nios V .SOF
Phần mềm Nios V .HEX
Bootloader .SREC

Lập trình viên Quartus

RAM ngoài
Phần mềm Nios V

Flash trên chip

CFM

Nios V Hardwa

Tài liệu / Tài nguyên

altera Nios V Embedded Processor [tập tin pdf] Hướng dẫn sử dụng
Nios V, Nios V-m, Nios V-g, Nios V-c, Nios V Embedded Processor, Nios V, Embedded Processor, Processor

Tài liệu tham khảo

Để lại bình luận

Địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *