Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Metro: Add the capability for the sequencer FPGA to override the Versal boot mode

Đang mở
#441 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
45/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Lĩnh vực
embedded-iot

Hướng nghiên cứu

Bắt đầu bằng việc xác định logic FPGA của bộ sequencer Metro cho FPGA1 và trình tự của các rail A0HP, sau đó lần theo năm tín hiệu có tên MODE và buffer-enable. Sử dụng bình luận được liên kết trong hardware-metro issue #45 để biết các chi tiết triển khai. Được xem là hoàn thành khi FPGA có thể bật các buffer và đặt MODE[3:0] trước trình tự A0HP, đồng thời để các buffer ở trạng thái tristate theo mặc định.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

metro sequencer

In Metro, strapping resistors on the Versal's MODE[3:0] pins configure the boot mode. Metro's strapping resistors are configured to select the QSPI32 (4-byte addressing) boot mode by default, which is required for Flash parts larger than 128Mib.

We also want Metro's sequencer FPGA to be able to override the boot mode strapping resistors in case we want to change the boot mode for bringup or debugging. To enable this, we wired the MODE bits to four sequencer FPGA pins through a pair of two-channel tristate buffers (U156 and U160). The sequencer FPGA also controls the buffers' active-low output enable signals, which is strapped high by default to disable the buffers. In normal operation, the buffer outputs are tristated, and the Versal strapping resistors select the boot mode, but if we want to override the strapping resistors, the sequencer FPGA can enable the buffers and assert a new MODE value before sequencing A0HP rails.

There are five signals involved in setting the boot mode:

FPGA1_TO_VERSAL_MODE_BUFFER_EN_L is the active-low buffer enable signal. A high level on FPGA1_TO_VERSAL_MODE_BUFFER_EN_L tristates the buffer outputs. A low level on FPGA1_TO_VERSAL_MODE_BUFFER_EN_L enables the buffers and allows the sequencer FPGA to set the boot mode.

  • FPGA1_TO_VERSAL_MODE_BUFFER_EN_L is wired to FPGA1 ball J16 in bank 15.

FPGA1_TO_VERSAL_MODE_[3:0] are the four MODE bits. They are wired to four pins in FPGA1 Bank 36.

  • MODE_3 is wired to ball B7 in Bank 36
  • MODE_2 is wired to ball F6 in Bank 36
  • MODE_1 is wired to ball E3 in Bank 36
  • MODE_0 is wired to ball D2 in Bank 36

This comment in hardware-metro issue #48 describes the specific hardware implementation.

Ngôn ngữ chính
VHDL
Star
24
Fork
2
Merge trung bình
41 phút
Pull request đã merge (30 ngày)
6

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của oxidecomputer/quartz

Tất cả issue của oxidecomputer/quartz

Issue tương tự

Thêm issue về Embedded & IoT

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.