仅对英特尔可见 — GUID: xtn1614202226235
Ixiasoft
2.4.5.1. ebfm_barwr处理过程
2.4.5.2. ebfm_barwr_imm处理过程
2.4.5.3. ebfm_barrd_wait处理过程
2.4.5.4. ebfm_barrd_nowt处理过程
2.4.5.5. ebfm_cfgwr_imm_wait处理过程
2.4.5.6. ebfm_cfgwr_imm_nowt处理过程
2.4.5.7. ebfm_cfgrd_wait处理过程
2.4.5.8. ebfm_cfgrd_nowt处理过程
2.4.5.9. BFM配置处理过程
2.4.5.10. BFM共享存储器访问过程
2.4.5.11. BFM日志和消息过程
2.4.5.12. Verilog HDL格式化函数
仅对英特尔可见 — GUID: xtn1614202226235
Ixiasoft
2.2. 生成设计实例
图 15. 过程
- 英特尔 Quartus Prime Pro Edition软件中,创建一个新工程(File > New Project Wizard)。
- 指定Directory, Name和Top-Level Entity。
- 对于Project Type,采用默认值Empty project。点击Next。
- 对于Add Files,请点击Next。
- 对于Family下的Family, Device & Board Settings,请选择 英特尔Agilex® 7 I-Series。
- 为您的设计选择Target Device。
- 点击Finish。
- 在IP Catalog中找到并添加Intel R-Tile Avalon® -ST Hard IP for PCI Express* 。
- 在New IP Variant对话框中,为您的IP指定一个名称。点击Create。
- 在Top-Level Settings和 PCIe* Settings选项卡中,为您的IP变体指定参数。
如果您需要生成SR-IOV设计实例,请执行如下步骤使能SR-IOV:
- 在Top-Level Settings选项卡下,请将PCIe Hard IP Mode参数设置为Gen5 1x16, interface - 1024 bit
- 在PCIe0 Settings选项卡下,浏览到PCIe0 PCI Express/PCI Capabilities > PCIe0 Device > PCIe0 Multifunction and SR-IOV System Settings并:
- 查看Enable Multiple Physical Functions参数。
- 将Total Physical Functions (PFs)参数设置为2。
- 查看Enable SR-IOV Support参数。
- 将Total Virtual Functions of Physical Function 0 (PF0 VFs)参数设置为16。
- 将Total Virtual Functions of Physical Function 1 (PF1 VFs)参数设置为16。
- 在PCIe0 Settings选项卡下,浏览到PCIe0 Base Address registers > PCIe0 PF0 BAR Configuration > PCIe0 PF0 BAR并:将
- BAR0 Type参数设置为64-bit prefetchable memory或64-bit non-prefetchable memory或32-bit non-prefetchable memory。
- 将BAR0 Size参数设置为N/A以外的任何值。
- 重复上述PCIe0 PF0 VF BAR小节中PCIe0 PF0 BAR的步骤i和ii。
- 在PCIe0 Settings选项卡下,浏览到PCIe0 Base Address Registers > PCIe0 PF1 BAR Configuration > PCIe0 PF1 BAR并:
- 将BAR0 Type参数设置为64-bit prefetchable memory或64-bit non-prefetchable memory或32-bit non-prefetchable memory。
- 将BAR0 Size参数设置为N/A以外的任何值。
- 重复上述PCIe0 PF1 VF BAR小节中PCIe0 PF1 BAR的步骤i和ii。
- 在PCIe0 Settings选项卡下,浏览到PCIe0 PCI Express/PCI Capabilities > PCIe0 MSI-X > PCIe0 PF MSI-X > PCIe0 PF0 MSI-X并查看Enable MSI-X参数。
- 在PCIe0 Settings选项卡下,浏览到PCIe0 PCI Express/PCI Capabilities > PCIe0 MSI-X > PCIe0 PF MSI-X > PCIe0 PF1 MSI-X并查看Enable MSI-X参数。
- 在PCIe0 Settings选项卡下,浏览到PCIe0 Device Identification Registers并针对PCIe0 PF0 ID和PCIe0 PF1 ID设置如下参数:
- Vendor ID: 0x00001172
- Device ID: 0x00000000
- Revision ID: 0x00000001
- Class Code: 0x00ff0000
- Subsystem Vendor ID: 0x00001172
- Subsystem Device ID: 0x00000000
- 在Example Designs选项卡中,作如下选择:
- 为Available Example Designs,选择PIO,SR-IOV或Performance设计实例。
- 对于Example Design Files,请开启Simulation和Synthesis选项。如果您不需要这些仿真或综合文件,请将相应选项保持为关闭,这样可以显著缩短生成设计实例的时间。
- 对于Generated HDL Format,当前版本中仅支持Verilog。
- 为Target Development Kit选择适当的开发套件。
注: 如果选择None,则生成的设计实例以您在步骤5中指定的器件作为目标器件。如果您打算在硬件中测试设计,就请在.qsf文件中进行正确的管脚分配。也可使用管脚规划器(pin planner)工具进行管脚约束。注: 如果您选择了开发套件,而英特尔 Quartus Prime工程中选择了不同的器件,则电路板上的器件会将其覆盖。注: 对于Currently Selected Example Design,请选择PIO/SRIOV或PERFORMANCE_DESIGN。
- 选择Generate Example Design以创建一个可仿真并可下载到硬件的设计实例。如果选择其中一个R-Tile开发板后,该板上的器件与之前英特尔 Quartus Prime工程中选择的器件不同,则该板上的器件会覆盖之前选择的器件。当提示要求为设计实例指定目录时,可接受默认目录,./intel_rtile_pcie_ast_0_example_design,或选择其他目录。
图 16. 生成设计实例时的IP参数编辑器屏幕显示
- 点击Finish。出现提示时可保存您的.ip文件,但并不要求是否能够使用该设计实例。
- 关闭当前已开启的工程。
- 打开设计实例工程。就是步骤12中在指定位置生成的新工程。
- 编译设计实例工程以生成完整设计实例的.sof文件。
- 关闭设计实例工程。
请注意,您不能更改英特尔 Quartus Prime工程中的PCIe管脚分配。但是,为了便于PCB布局布线,您可以利用此IP支持的通道位置翻转(lane reversal)和信号极性翻转(polarity inversion)功能。