Artikel-ID: 000097577 Inhaltstyp: Fehlerbehebung Letzte Überprüfung: 11.12.2023

Warum stimmt die CSR-Zugriffsdatenbreite des R-Tile Intel® FPGA IP für Compute Express Link* (CXL*) Designbeispiel nicht mit der Funktion im Softwaretreiber überein?

Umgebung

    Intel® Quartus® Prime Pro Edition

OS Independent family

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Beschreibung

Aufgrund eines Problems in Intel® Quartus® Prime Pro Edition Softwareversion 23.2 und höher wurde die Breite der CSR-Zugriffsdaten im R-Tile Intel® FPGA IP für Compute Express Link* (CXL*) Type2/3 Designbeispiel von 32 Bit auf 64 Bit geändert. Dies führt zu einer Diskrepanz zwischen der Softwaretreiberfunktion und dem Entwurf der CSR-Logik des Benutzers.

Lösung

Es ist nicht geplant, dieses Problem in zukünftigen Versionen der Intel® Quartus® Prime Edition-Software zu beheben.

Um dieses Problem zu umgehen, lesen Sie dasFollowing-Codebeispiel :

1. Öffnen Sie / hardware_test_design/common/ex_default_csr/ex_default_csr_avmm_slave.sv

2. Implementieren Sie die CSR mit einer Datenbreite von 64 Bit anstelle der standardmäßigen 32-Bit-Datenbreite.

64bit Datenbreite
immer @(posedge clk )
if (!reset_n) begin
ats_stu <= 5'b0;
ats_en <= 1'b0;
ptm_eg <= 8'b0;
ptm_rs <= 1'b0;
ptm_en <= 1'b0;
end else, if (write && config_access)begin
case(Adresse[20:0])
21'h00E00 : Beginn
ats_stu <= writedata[60:56];
ats_en <= writedata[63];
Ende
21'h00E18 : Beginn
ptm_eg <= writedata[15:8];
ptm_rs <= writedata[1];
ptm_en <= writedata[0];
Ende
Standard;
Endcase
Ende

Logik lesen
immer @(posedge clk )
if (!reset_n) begin
cfg_readdata <= 64'h0;
end else if(read&&config_access)begin
case(Adresse[20:0])
21'h00E00 : cfg_readdata <= {{ats_en,10'b0,ats_stu,16'h0020},EX_CAP_HEADER_ATS };
21'h00E04 : cfg_readdata <= {{ats_en,10'b0,ats_stu,16'h0020},32'b0} ;
21'h00E10 : cfg_readdata <= {EX_CAP_HEADER_PTM_CAP,EX_CAP_HEADER_PTM};
21'h00E14 : cfg_readdata <= {EX_CAP_HEADER_PTM_CAP,32'b0};
21'h00E18 : cfg_readdata <= {32'b0 ,{16'h0,ptm_eg,6'h0,1'b0,ptm_en}};
Standardwert: cfg_readdata <= {32'b0 ,32'hffff_ffff };
Endcase
Ende sonst beginnen
cfg_readdata <= 64'h0;
Ende

Zugehörige Produkte

Dieser Artikel bezieht sich auf 1 Produkte

Intel® Agilex™ FPGAs und SoC FPGAs der I-Reihe

1

Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.